:root { color-scheme: light; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; min-height: 100svh; display: grid; place-items: center; padding: 24px 16px; background: #f1f5fa; color: #172b46; line-height: 1.55; }
main { width: 100%; max-width: 480px; padding: 36px 24px; background: #fff; border: 1px solid #e2e9f2; border-top: 5px solid #1565c0; border-radius: 20px; box-shadow: 0 12px 36px rgb(23 43 70 / 7%); }
h1 { margin: 0; color: #1565c0; font-size: 36px; letter-spacing: -1px; text-align: center; }
h2 { color: #1565c0; }
.subtitle { margin: 8px 0 28px; color: #52647b; font-size: 17px; text-align: center; }
.button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 56px; margin-top: 12px; padding: 14px 16px; border: 2px solid #1565c0; border-radius: 12px; background: #1565c0; color: #fff; font: inherit; font-weight: 700; text-decoration: none; cursor: pointer; }
.button:hover { background: #0d4fa0; border-color: #0d4fa0; }
.button:focus-visible, input:focus-visible { outline: 3px solid #172b46; outline-offset: 3px; }
.button.secondary { background: #fff; color: #1565c0; }
.button:disabled { background: #edf1f6; border-color: #d5deea; color: #586a80; cursor: not-allowed; }
.guidance, .status, footer { color: #52647b; }
.guidance { margin: 24px 0 8px; text-align: center; }
.status { margin: 16px 0 0; font-size: 14px; text-align: center; }
.status.error { color: #b3261e; }
form { margin-top: 24px; }
label { display: block; margin-top: 14px; font-weight: 650; }
input { width: 100%; min-height: 48px; margin-top: 6px; padding: 10px 12px; border: 1px solid #9aabc0; border-radius: 9px; font: inherit; }
footer { margin-top: 28px; font-size: 14px; text-align: center; }
a { color: #0d4fa0; }
[hidden] { display: none !important; }
