:root{--bg: #0e0e10;--surface: #17171a;--surface-2: #1c1c1f;--border: #26262b;--border-2: #3a3a40;--text: #f4f4f5;--text-2: #d4d4d8;--muted: #a1a1aa;--yellow: #ffd23f;--celeste: #48c6ef;--danger: #f87171;--radius: 14px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg)}body{color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--celeste)}.screen{max-width:480px;min-height:100dvh;margin:0 auto;padding:max(20px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:18px}.screen.center{align-items:center;justify-content:center}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:12px}.grow{flex:1 1 auto;min-width:0}.spacer{flex:1 1 auto}.center-text{text-align:center}p{margin:0}.muted{color:var(--muted);line-height:1.5}.small{font-size:13px}.strong{font-weight:600}.brand,.title,.subtitle{margin:0;font-family:Oswald,Inter,sans-serif;font-weight:600}.brand{font-size:38px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.title{font-size:26px}.subtitle{font-size:20px}.section-label{margin:0;font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.login-head{display:flex;flex-direction:column;align-items:center;gap:14px;padding-top:24px}.logo-ring{width:190px;height:190px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 6px var(--yellow)}.logo-sm{width:44px;height:44px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.field input{height:50px;border-radius:12px;border:1px solid var(--border-2);background:var(--bg);color:var(--text);font:500 16px Inter,sans-serif;padding:0 14px}.field input:focus-visible{outline:2px solid var(--celeste);outline-offset:1px}.btn{height:54px;border-radius:var(--radius);border:1px solid transparent;font:700 16px Inter,sans-serif;cursor:pointer;padding:0 18px}.btn:disabled{opacity:.6;cursor:default}.btn:focus-visible{outline:2px solid var(--celeste);outline-offset:2px}.btn.primary{background:var(--yellow);color:#111}.btn.secondary{background:var(--surface-2);color:var(--text);border-color:#2e2e33;font-weight:600}.btn.ghost{background:transparent;color:var(--muted);font-weight:600}.btn.small-btn{height:44px;font-size:14px;padding:0 14px}.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;background:var(--surface);border-radius:14px;padding:4px}.segmented button{height:44px;border-radius:10px;border:none;background:transparent;color:var(--muted);font:500 15px Inter,sans-serif;cursor:pointer}.segmented button.on{background:#2e2e33;color:var(--text);font-weight:600}.alert{border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.45}.alert.error{background:#2a1414;border:1px solid #6b2a2a;color:#fca5a5}.alert.info{background:#10222a;border:1px solid #1f4654;color:#bfeaf9}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tile{display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px}.tile.accent{background:#2a2410;border-color:#5c4d14}.tile.accent .tile-num{color:var(--yellow)}.tile-num{font-size:26px;font-weight:700}.badge-circle{width:88px;height:88px;margin:0 auto;border-radius:50%;background:#2a2410;border:2px solid var(--yellow);color:var(--yellow);display:flex;align-items:center;justify-content:center}
