:root{--text:#ecedde;--muted:#b1c0ad;--accent:#d9f0a3;--line:#afc29a33;--surface:#18362b;--sans:'DM Sans','Segoe UI',sans-serif;--mono:'Space Mono',monospace}*{box-sizing:border-box}body{margin:0;background:#142b24;color:var(--text);font:14px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.login-layout{min-height:100svh;display:grid;grid-template-columns:1fr 1.1fr}.login-main{padding:34px clamp(25px,4.3vw,75px) 24px;display:flex;flex-direction:column;min-width:0;background:radial-gradient(ellipse at 20% 90%,#30513922,transparent 60%),#142b24}.login-main>header{display:flex;align-items:center;justify-content:space-between;gap:15px}.login-logo{display:flex;align-items:center;gap:7px}.login-logo svg{width:34px;height:34px;color:var(--accent)}.login-logo>span{font-size:29px;letter-spacing:-2px;font-weight:700;line-height:1}.login-logo small{font:7px/1.5 var(--mono);letter-spacing:.08em;margin-left:13px;padding-left:15px;border-left:1px solid var(--line);color:var(--muted)}.back-link{font-size:10px;color:#b9c7ad}.login-form-wrap{width:100%;max-width:390px;margin:auto; padding:70px 0 40px}.eyebrow{font:8px/1.8 var(--mono);color:var(--accent);letter-spacing:.05em;display:block}h1{font-size:clamp(51px,5vw,76px);line-height:1.02;font-weight:500;letter-spacing:-.065em;margin:22px 0 19px}h1 br{display:block}.lead{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 30px}label{font-size:11px;display:block;color:#d3dcc6;margin:19px 0 8px}input{display:block;width:100%;border:1px solid #6b85605c;padding:14px 15px;color:var(--text);background:#ffffff04;border-radius:3px;height:49px;font-size:13px;transition:border .2s,background .2s;color-scheme:dark}input::placeholder{color:#899d84}input:hover{border-color:#97b07a}input:focus{background:#ffffff08;border-color:var(--accent);outline:2px solid #d9f0a31f;outline-offset:2px}input[aria-invalid=true]{border-color:#f5ac96}.password-wrap{position:relative}.password-wrap input{padding-right:60px}.password-toggle{position:absolute;right:5px;top:5px;height:39px;min-width:45px;background:transparent;color:#bfcea9;border:0;font-size:10px;padding:6px}.password-toggle:hover{color:var(--accent)}.form-meta{margin:15px 0 25px;display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#a8b99a}.form-meta button{font:inherit;border:0;padding:0;color:#d8dfc9;background:none;text-decoration:underline;text-underline-offset:3px}.submit-button{border:1px solid var(--accent);background:var(--accent);color:#203b2a;padding:15px 19px;min-height:51px;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:13px;border-radius:2px;transition:background .2s}.submit-button:hover{background:#e8ffc0}.submit-button>span:last-child{font-size:20px}.auth-msg{font-size:12px;color:#bdcba7;min-height:20px;margin-top:12px;line-height:1.7}.auth-msg.bad{color:#ffbba3}.auth-msg.ok{color:#d9f0a3}.hint{font-size:10px;color:#9fb38e;line-height:1.7;margin-top:7px}.help-panel{font-size:12px;line-height:1.8;padding:14px;background:#d9f0a30a;border:1px solid var(--line);margin-bottom:18px;color:#c4d2b4}.setup-notice{display:flex;gap:12px;padding:14px;background:#d9f0a308;border:1px solid #b0c98a3b;font-size:10px;margin-bottom:26px}.notice-icon{font-size:22px;color:var(--accent);line-height:1.2}.setup-notice b{font-size:11px;font-weight:500}.setup-notice p{color:#b0c49b;margin:5px 0;font-size:10px}.setup-notice button{border:0;background:none;padding:5px 0 0;color:var(--accent);font-size:10px;text-align:left}.back-to-login{display:inline-block;background:none;border:0;color:var(--accent);padding:10px 0;font-size:11px}.login-form-footer{display:flex;gap:10px;align-items:center;font-size:9px;color:#9bae8b;border-top:1px solid var(--line);padding-top:22px;margin-top:24px}.login-form-footer i{height:4px;width:4px;background:#bbd78c;border-radius:50%;flex:none}.login-main>footer{display:flex;justify-content:space-between;gap:20px;font:7px var(--mono);color:#8ba27c;margin-top:30px}.login-main>footer a{color:#b1c39c}.login-art{min-width:0;position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 75% 27%,#a99e7166,transparent 50%),radial-gradient(ellipse at 0% 0%,#6b2b4366,transparent 70%),linear-gradient(135deg,#30372c,#1c3b2c);display:flex;flex-direction:column;justify-content:space-between;padding:44px}.login-art:after{content:'';position:absolute;inset:0;opacity:.1;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.art-grid{position:absolute;inset:0;z-index:-1;background:linear-gradient(#c0d5a609 1px,transparent 1px),linear-gradient(90deg,#c0d5a609 1px,transparent 1px);background-size:70px 70px;mask-image:radial-gradient(ellipse at center,#000,transparent 70%)}.art-top,.art-bottom{font:7px/1.5 var(--mono);display:flex;justify-content:space-between;gap:20px;color:#bfcca6;position:relative;z-index:1}.art-dot{height:5px;width:5px;background:var(--accent);border-radius:50%;box-shadow:0 0 20px #d9f0a3}.login-world{position:absolute;top:0;right:-12%;left:-15%;height:73%;pointer-events:none}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.energy-world{width:100%;height:100%}.world-svg{height:100%;width:100%;overflow:visible}.orbital-lines{color:#c2d69c;opacity:.2;transform-origin:54% 53%;animation:turn 90s linear infinite}.world-coordinate{fill:#c9d6ac;opacity:.6;font:8px var(--mono)}.turbine-rotor{transform-box:fill-box;transform-origin:center;animation:turn 27s linear infinite}.floating-island{animation:hovering 8s ease-in-out infinite}.power-line{animation:flow 3s linear infinite}.art-caption{position:absolute;left:44px;right:35px;bottom:12%}.art-caption .eyebrow{font-size:7px}.art-caption h2{font-size:clamp(38px,3.6vw,62px);line-height:1.06;letter-spacing:-.055em;font-weight:500;margin:20px 0}.art-caption h2 em{color:var(--accent);font-style:normal}.art-caption p{font-size:12px;line-height:1.9;color:#c2d0af}.art-bottom{margin-top:auto;z-index:1}.login-art h2,.login-art p{position:relative;z-index:1}@keyframes turn{to{transform:rotate(360deg)}}@keyframes hovering{50%{transform:translateY(-10px)}}@keyframes flow{to{stroke-dashoffset:-50}}@media(max-width:1000px){.login-logo small{display:none}.login-art{padding:30px}.art-caption{left:30px;bottom:13%}.art-caption h2{font-size:42px}.login-main{padding-inline:30px}.login-form-wrap{padding-top:50px}.art-top{font-size:6px}}@media(max-width:720px){.login-layout{grid-template-columns:1fr}.login-main{min-height:100svh;padding:25px 7vw}.login-art{display:none}.login-form-wrap{max-width:440px;padding:65px 0 30px}h1{font-size:65px}.login-logo small{display:block}.login-main>footer{padding-bottom:6px}.lead{font-size:13px}}@media(max-width:380px){.login-logo small{display:none}.login-form-wrap{padding-top:45px}h1{font-size:57px}.form-meta{font-size:8px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
