:root{color-scheme:dark;--bg: #0f172a;--panel: #1e293b;--panel-border: #475569;--text: #f8fafc;--muted: #cbd5e1;--accent: #22c55e;--accent-ink: #052e16;--danger: #fecaca;--focus: #22c55e;--font: "Plus Jakarta Sans", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font);background:radial-gradient(circle at top,rgba(34,197,94,.12),transparent 28rem),var(--bg);color:var(--text)}h1,h2,p{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.screen,.shell{min-height:100%;padding:1.5rem}.screen{display:grid;place-items:center}.shell{width:min(960px,100%);margin:0 auto}.panel{width:min(420px,100%);padding:1.75rem;background:var(--panel);border:1px solid var(--panel-border);border-radius:1.25rem}.shell .panel{width:100%}.brand{display:flex;align-items:center;gap:.75rem}.mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;color:var(--accent);background:#22c55e1f;border-radius:.75rem}.eyebrow{color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1{margin-top:1.25rem;font-size:2rem;line-height:1.1}.topbar h1{margin-top:0;font-size:1.5rem}h2{font-size:1.25rem}.lede{margin-top:.5rem;color:var(--muted);line-height:1.5}form{display:grid;gap:1rem;margin-top:1.5rem}.field{display:grid;gap:.4rem}label{font-size:.9rem;font-weight:600}input{width:100%;padding:.75rem .85rem;color:var(--text);background:var(--bg);border:1px solid var(--panel-border);border-radius:.75rem}.primary,.ghost{border-radius:.75rem;transition:background-color .18s ease,border-color .18s ease}.primary{padding:.8rem 1rem;color:var(--accent-ink);background:var(--accent);border:0;font-weight:700}.primary:hover:not(:disabled){background:#4ade80}.ghost{padding:.55rem .8rem;color:var(--text);background:transparent;border:1px solid var(--panel-border)}.ghost:hover{background:#f8fafc0f}button:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.error{color:var(--danger);font-size:.95rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.account{display:flex;align-items:center;gap:.75rem}.role,.username{padding:.35rem .7rem;border:1px solid var(--panel-border);border-radius:999px;font-size:.85rem}.role{color:var(--accent)}@media(max-width:640px){.topbar,.account{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
