/* Unified authentication surfaces. */
body.auth-page {
  --auth-bg:#090e1a; --auth-panel:#121a2c; --auth-panel-2:#0e1627; --auth-border:#2b3b59;
  --auth-text:#f6f8ff; --auth-soft:#c5cee0; --auth-muted:#8996af; --auth-primary:#6d91ff; --auth-accent:#f4ad4f;
  min-width:320px; min-height:100dvh; margin:0; display:grid; place-items:center; padding:24px;
  color:var(--auth-text); background:radial-gradient(circle at 75% 10%,rgba(109,145,255,.17),transparent 28rem),radial-gradient(circle at 12% 88%,rgba(244,173,79,.08),transparent 25rem),var(--auth-bg);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.auth-page .login-wrap { width:min(520px,100%); margin:0; padding:0; }
.auth-page .login-wrap::before { content:"TM"; width:48px; height:48px; margin:0 auto 18px; display:grid; place-items:center; border:1px solid rgba(139,168,255,.5); border-radius:14px; color:#fff; background:linear-gradient(145deg,#5e83ef,#3552a3); box-shadow:0 14px 34px rgba(53,82,163,.3); font-size:.72rem; font-weight:900; }
.auth-page h1 { margin:0 0 22px; color:var(--auth-text); font-size:clamp(1.7rem,5vw,2.35rem); line-height:1.1; letter-spacing:-.04em; text-align:center; }
.auth-page .card { margin:12px 0; padding:24px; display:grid; gap:10px; border:1px solid var(--auth-border); border-radius:18px; color:var(--auth-soft); background:linear-gradient(145deg,var(--auth-panel),var(--auth-panel-2)); box-shadow:0 24px 70px rgba(0,0,0,.3); }
.auth-page label { margin-top:5px; color:var(--auth-soft); font-size:.78rem; font-weight:750; }
.auth-page :is(input,select) { width:100%; min-height:48px; padding:0 13px; border:1px solid var(--auth-border); border-radius:10px; color:var(--auth-text); background:#0b1323; font-size:1rem; }
.auth-page :is(input,select):focus { outline:2px solid var(--auth-primary); outline-offset:2px; box-shadow:0 0 0 4px rgba(109,145,255,.13); }
.auth-page button { min-height:48px; margin-top:10px; border:0; border-radius:10px; color:#fff; background:linear-gradient(135deg,#6d91ff,#5579e8); font-weight:800; cursor:pointer; }
.auth-page button:disabled { opacity:.45; cursor:not-allowed; }
.auth-page .hint,.auth-page small,.auth-page p { color:var(--auth-muted); line-height:1.6; }
.auth-page .flash { margin:10px 0; padding:12px 14px; border:1px solid rgba(244,173,79,.35); border-radius:11px; color:#ffe0a8; background:rgba(244,173,79,.1); }
.auth-page .auth-links { margin-top:18px; color:var(--auth-muted); text-align:center; }
.auth-page .auth-links a { color:#a9bbff; font-weight:700; text-decoration:none; }
.auth-page .auth-links a:hover { color:#fff; }
@media(max-width:560px){body.auth-page{padding:16px}.auth-page .card{padding:20px 17px}.auth-page h1{font-size:1.75rem}}
