:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,'Inter','Segoe UI',sans-serif;--canvas:#f1f4f5;--surface:#fff;--ink:#1d2d33;--muted:#53666d;--border:#d3dfe2;--field-border:#b7c7cb;--field:#fff;--primary:#0b7280;--on-primary:#fff;--error-bg:#fde8e7;--error-fg:#a12b26;--error-border:#e4b5b0;background:var(--canvas);color:var(--ink)}
:root[data-theme=dark]{color-scheme:dark;--canvas:#05090b;--surface:#091216;--ink:#e7eeeb;--muted:#91a3a5;--border:#253238;--field-border:#35474f;--field:#071014;--primary:#6dc8df;--on-primary:#071216;--error-bg:#2a1719;--error-fg:#f0bbb4;--error-border:#623736}
*{box-sizing:border-box}body{margin:0;min-height:100dvh;display:grid;place-items:center;padding:40px 20px;background:var(--canvas);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}
.shell{width:100%;max-width:460px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px;color:var(--ink);font-size:15px}.brand strong{font-weight:600}.mark{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:var(--primary);color:var(--on-primary);font-size:20px;font-weight:700}
.card{padding:32px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 4px 20px #142a3010}h1{margin:0;font-size:27px;font-weight:650;line-height:1.3;letter-spacing:-.025em}p{margin:10px 0 24px;color:var(--muted);font-size:14px;line-height:1.65}.field{display:grid;gap:8px;margin-top:20px}label{font-size:13px;font-weight:500;color:var(--ink)}input{width:100%;height:44px;padding:0 12px;border:1px solid var(--field-border);border-radius:7px;background:var(--field);color:var(--ink);font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}button{width:100%;min-height:44px;margin-top:24px;padding:10px 16px;border:0;border-radius:7px;background:var(--primary);color:var(--on-primary);font:inherit;font-weight:600;cursor:pointer}button:hover{filter:brightness(1.08)}button:focus-visible{outline:2px solid var(--primary);outline-offset:3px}button:disabled{opacity:.55;cursor:default}.error{display:none;margin-top:18px;padding:12px 14px;border:1px solid var(--error-border);border-radius:7px;background:var(--error-bg);color:var(--error-fg);font-size:13px;line-height:1.6}.error.show{display:block}.notice{margin-top:18px;padding:12px 14px;border:1px solid var(--border);border-radius:7px;background:var(--canvas);color:var(--muted);font-size:13px}.hidden{display:none!important}.footer{margin-top:24px;text-align:center;color:var(--muted);font-size:12px}.code{font-size:20px;letter-spacing:.18em;text-align:center}.email{color:var(--ink);font-weight:500;overflow-wrap:anywhere}.spinner{display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@supports(padding:max(0px)){body{padding-top:max(32px,env(safe-area-inset-top));padding-right:max(20px,env(safe-area-inset-right));padding-bottom:max(32px,env(safe-area-inset-bottom));padding-left:max(20px,env(safe-area-inset-left))}}
@media(max-width:520px){body{padding:24px 16px}.brand{margin-bottom:24px}.card{padding:24px 20px}h1{font-size:24px}input{font-size:16px;min-height:46px}button{min-height:46px}}
@media(prefers-reduced-motion:reduce){input{transition:none}.spinner{animation-duration:2s}}
