
:root{--bg:#050b13;--panel:#0d1826;--panel2:#101f31;--line:rgba(86,128,170,.28);--text:#eef6ff;--muted:#9fb4c9;--primary:#139dff;--primary2:#32b9ff;--danger:#ff8f99;--ok:#69e6a2;--shadow:0 28px 80px rgba(0,0,0,.48)}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100vh;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 50% 0,rgba(20,161,255,.18),transparent 32%),linear-gradient(180deg,#040911,#091321 58%,#0b1624)}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(470px,100%);padding:30px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(180deg,rgba(14,25,39,.98),rgba(7,15,26,.98));box-shadow:var(--shadow),0 0 42px rgba(20,161,255,.10)}
.login-logo{display:flex;justify-content:center;padding:14px;border-radius:20px;background:linear-gradient(180deg,#050b13,#0c1826);border:1px solid rgba(43,183,255,.17)}.login-logo img{display:block;width:min(330px,100%);max-height:88px;object-fit:contain}.copy{padding-top:24px}.eyebrow{display:inline-block;padding:7px 12px;border-radius:999px;border:1px solid rgba(43,183,255,.22);background:rgba(20,161,255,.10);color:#83d1ff;font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}h1{margin:12px 0 8px;font-size:clamp(1.8rem,5vw,2.25rem)}.copy p{margin:0 0 24px;color:var(--muted);line-height:1.55}
form{display:grid;gap:17px}label{display:grid;gap:8px;color:#d9ebfb;font-size:.86rem;font-weight:850}input{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:13px;outline:none;background:#07111d;color:var(--text);font:inherit}input:focus{border-color:#2bb7ff;box-shadow:0 0 0 4px rgba(43,183,255,.12)}.password-field{position:relative;display:block}.password-field input{padding-right:90px}.toggle-password{position:absolute;right:7px;top:50%;transform:translateY(-50%);border:0;border-radius:9px;padding:8px 10px;background:#13273c;color:#8ed5ff;font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}.toggle-password:hover{background:#19324c;color:#fff}.submit{border:0;border-radius:13px;padding:14px 16px;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;font:inherit;font-weight:900;cursor:pointer;box-shadow:0 14px 28px rgba(20,161,255,.22)}.submit:disabled{opacity:.62;cursor:wait}.message{min-height:24px;margin:0;color:var(--danger);font-size:.88rem}.message.ok{color:var(--ok)}.back{display:inline-block;margin-top:18px;color:#85d3ff;text-decoration:none;font-weight:750}.back:hover{color:#fff}.login-card>small{display:block;margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);color:#7890a8;text-align:center;line-height:1.5}
@media(max-width:520px){.login-shell{padding:12px}.login-card{padding:21px;border-radius:20px}.login-logo img{max-height:72px}.password-field input{padding-right:83px}}

.auth-links{display:grid;gap:10px;margin-top:18px}.secondary-link{display:block;padding:12px 15px;border:1px solid rgba(43,183,255,.3);border-radius:12px;color:#9dddff;text-decoration:none;text-align:center;font-weight:850;background:rgba(20,161,255,.06)}.secondary-link:hover{background:rgba(20,161,255,.13);color:white}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid .full{grid-column:1/-1}.hint{color:#7890a8;font-size:.78rem;font-weight:500;line-height:1.45}.consent{display:flex;align-items:flex-start;gap:10px;color:#a9bed1;font-weight:600;line-height:1.45}.consent input{width:auto;margin-top:3px}.success-box{display:none;padding:15px;border:1px solid rgba(75,222,143,.35);border-radius:13px;background:rgba(43,175,105,.12);color:#8af0b7;line-height:1.5}.success-box.show{display:block}.readiness{margin-top:15px;padding:11px 12px;border-radius:11px;background:#081523;border:1px solid rgba(255,255,255,.07);color:#7890a8;font-size:.78rem}.readiness.ok{color:#8af0b7}.readiness.warn{color:#ffd28a}@media(max-width:620px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
