:root{color-scheme:dark;--bg:#07111f;--panel:#0d1b31;--panel2:#0a1728;--line:rgba(255,255,255,.09);--text:#f4f8ff;--muted:#92a0b8;--accent:#83E949;--cyan:#2ce6d6;--danger:#ff9c9c}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at 15% 10%,rgba(44,230,214,.08),transparent 35%),radial-gradient(circle at 85% 90%,rgba(131,233,73,.06),transparent 30%),var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}
body{min-height:100vh;padding:24px}.login-shell{width:min(1100px,100%);margin:0 auto;min-height:calc(100vh - 48px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(340px,.7fr);align-items:stretch;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:rgba(8,20,36,.82);box-shadow:0 30px 100px rgba(0,0,0,.35);backdrop-filter:blur(16px)}
.login-card{padding:42px}.brand{display:inline-block}.brand img{display:block;width:180px;max-width:58%;background:#fff;padding:10px 14px;border-radius:14px}.login-kicker{margin-top:32px;font-size:10px;letter-spacing:.16em;font-weight:900;color:#7f8ca3}.login-card h1{font-size:44px;line-height:1.02;margin:8px 0 12px}.login-copy{max-width:600px;color:var(--muted);line-height:1.65;margin:0 0 28px}
.login-form{display:grid;gap:16px}.login-form label,.recover-card label{display:grid;gap:7px}.login-form label>span,.recover-card label>span{font-size:10px;letter-spacing:.08em;font-weight:900;color:#9eabc0}.login-form input,.recover-card input{width:100%;min-height:50px;border:1px solid var(--line);border-radius:12px;background:#071424;color:#fff;padding:0 14px;font:inherit;outline:none}.login-form input:focus,.recover-card input:focus{border-color:rgba(131,233,73,.55);box-shadow:0 0 0 3px rgba(131,233,73,.08)}
.password-wrap{position:relative}.password-wrap input{padding-right:88px}.show-password{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#9fb0ca;font-size:12px;cursor:pointer;padding:8px}
.login-row{display:flex;justify-content:space-between;gap:16px;align-items:center}.remember{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px!important}.remember input{width:16px;height:16px;min-height:0;accent-color:var(--accent)}.remember span{font-size:12px!important;letter-spacing:0!important;color:#7f8ca3!important;font-weight:600!important}.text-button{border:0;background:transparent;color:#cbeee8;cursor:pointer;font:inherit;font-size:12px;padding:5px}
.primary,.secondary{min-height:50px;border-radius:12px;font-weight:900;font-size:15px;display:grid;place-items:center;text-decoration:none}.primary{border:0;background:var(--accent);color:#112014;cursor:pointer}.primary:disabled{opacity:.55;cursor:wait}.secondary{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);color:#eef4ff}.status{min-height:22px;margin:0;font-size:13px;color:#aab7cb}.status.err{color:var(--danger)}.status.ok{color:#adff8f}.divider{display:flex;align-items:center;gap:10px;margin:24px 0 12px;color:#6f7d95;font-size:11px}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.account-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px}.account-links a{color:#8d9ab1;text-decoration:none;font-size:12px}
.login-side{padding:42px;background:linear-gradient(155deg,rgba(44,230,214,.06),rgba(131,233,73,.03)),#09182a;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.login-side>span{font-size:10px;letter-spacing:.14em;font-weight:900;color:var(--cyan)}.login-side h2{font-size:34px;line-height:1.06;margin:9px 0 12px}.login-side>p{color:var(--muted);line-height:1.65}.benefits{display:grid;gap:12px;margin-top:22px}.benefits article{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.02)}.benefits article>b{display:grid;place-items:center;height:42px;border-radius:10px;background:rgba(131,233,73,.08);color:var(--accent)}.benefits strong,.benefits small{display:block}.benefits small{margin-top:4px;color:#8795aa}
.recover-dialog{border:0;padding:0;background:transparent}.recover-dialog::backdrop{background:rgba(2,7,15,.72);backdrop-filter:blur(4px)}.recover-card{position:relative;width:min(470px,calc(100vw - 24px));background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:26px;color:var(--text);display:grid;gap:14px}.recover-card>span{font-size:9px;letter-spacing:.13em;color:var(--cyan);font-weight:900}.recover-card h2{font-size:28px;margin:0}.recover-card>p{color:var(--muted);line-height:1.55;margin:0}.dialog-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:#9ba8bd;font-size:24px;cursor:pointer}
@media(max-width:820px){body{padding:0}.login-shell{min-height:100vh;border:0;border-radius:0;grid-template-columns:1fr}.login-side{display:none}.login-card{padding:28px 18px max(34px,env(safe-area-inset-bottom))}.login-card h1{font-size:36px}.brand img{width:160px}.login-row{align-items:flex-start;flex-direction:column;gap:8px}.login-form input,.recover-card input{font-size:16px}.primary,.secondary{min-height:52px}}
.google-auth{min-height:50px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#fff;color:#172033;display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-weight:850}
.google-auth.is-disabled{opacity:.55;pointer-events:none}.google-g{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;border:1px solid #d7dce5;font-weight:900;color:#4285F4;background:#fff}.google-note{min-height:16px;margin:7px 0 0;color:#7f8ca3;font-size:11px;text-align:center}
