:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
* { box-sizing: border-box; }
html, body { min-height: 100%; margin: 0; }
body { background: #090b0f; color: #f6f7fb; display: grid; place-items: center; padding: 24px; }
.auth-shell { width: min(100%, 390px); }
.brand { display:flex; align-items:center; gap:12px; margin-bottom:28px; justify-content:center; letter-spacing:.22em; font-weight:800; }
.mark { width:32px; height:32px; border:1px solid #3b4250; border-radius:10px; transform:rotate(45deg); background:linear-gradient(145deg,#202631,#0f131a); box-shadow:0 10px 30px #0008; }
.panel { background:#11151c; border:1px solid #242b36; border-radius:22px; padding:24px; box-shadow:0 30px 80px #0008; }
h1 { font-size:1.35rem; margin:0 0 20px; text-align:center; }
.field { display:grid; gap:8px; margin:14px 0; }
label { color:#aeb7c6; font-size:.88rem; }
input { width:100%; border:1px solid #303846; background:#0b0e13; color:#fff; border-radius:12px; padding:14px 15px; font-size:1rem; outline:none; }
input:focus { border-color:#707b90; box-shadow:0 0 0 3px #69758a22; }
button, .button { width:100%; border:0; border-radius:12px; padding:14px 16px; background:#f4f6fa; color:#0a0c10; font-weight:800; font-size:1rem; cursor:pointer; text-decoration:none; text-align:center; display:block; }
.links { display:flex; gap:12px; margin-top:14px; }
.links a { flex:1; color:#b7c0cf; text-align:center; text-decoration:none; padding:10px; font-size:.9rem; }
.notice { border:1px solid #394151; background:#171c25; border-radius:12px; padding:12px 14px; margin-bottom:16px; color:#d7ddea; font-size:.9rem; }
.notice.error { border-color:#6b3034; background:#241416; color:#ffced1; }
small { display:block; color:#7f8999; text-align:center; margin-top:18px; line-height:1.5; }
.maintenance-banner{position:fixed;left:0;right:0;top:0;z-index:1000;padding:9px 14px;text-align:center;font-weight:950;letter-spacing:.08em;font-size:.76rem;background:linear-gradient(90deg,#ffb84a,#ffd86b);color:#201400;box-shadow:0 8px 28px #0006}
body:has(.maintenance-banner){padding-top:62px}
