:root { color-scheme:light; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:#1c1c1e; background:#f2f2f7; font-synthesis:none; -webkit-text-size-adjust:100%; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
body { margin:0; }
main { width:min(100%,460px); margin:0 auto; padding:max(36px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom)); }
header { text-align:center; margin:12px 0 30px; }
.team-mark { display:grid; place-items:center; width:64px; height:64px; margin:0 auto 18px; border-radius:18px; color:white; background:#1c6b49; font-size:34px; font-weight:750; }
.eyebrow { margin:0; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:#38634f; }
.intro { margin:8px 0 0; color:#636366; font-size:17px; }
.card { padding:24px; border-radius:22px; background:#fff; box-shadow:0 3px 18px #14261a06; }
h1 { font-size:27px; line-height:1.15; letter-spacing:-.025em; margin:0 0 14px; }
.subtitle { color:#636366; font-size:15px; line-height:1.5; margin:0 0 18px; overflow-wrap:anywhere; }
.subtitle strong { color:#1c1c1e; font-weight:600; white-space:nowrap; }
form { display:grid; gap:12px; }
label { font-size:14px; font-weight:600; }
input { width:100%; min-width:0; min-height:52px; border:1px solid #c6c6c8; border-radius:12px; padding:12px 14px; font:inherit; font-size:18px; background:#fff; color:inherit; }
input:focus-visible,button:focus-visible { outline:3px solid #8ac2a8; outline-offset:3px; }
#code { text-align:center; font-size:28px; letter-spacing:.18em; font-variant-numeric:tabular-nums; }
button { width:100%; min-height:48px; padding:12px 14px; border:0; border-radius:12px; font:inherit; font-size:16px; font-weight:600; cursor:pointer; touch-action:manipulation; }
button:disabled { opacity:.5; cursor:default; }
.primary { background:#1c6b49; color:#fff; margin-top:4px; }
.secondary { background:transparent; color:#1c6b49; margin-top:8px; }
.test-note { margin:22px 0 0; padding:14px; border-radius:12px; background:#f2f2f7; font-size:13px; line-height:1.5; color:#636366; }
.test-note strong { display:block; color:#3a3a3c; margin-bottom:3px; }
.error { margin:0 0 16px; padding:14px 16px; border-radius:12px; background:#fff0ee; color:#a82620; line-height:1.45; font-size:15px; overflow-wrap:anywhere; }
.status { color:#636366; text-align:center; font-size:14px; line-height:1.4; }
#code-status:empty { display:none; }
.success { text-align:center; }
.success-mark { display:grid; place-items:center; width:60px; height:60px; margin:0 auto 18px; border-radius:50%; background:#e6f4ec; color:#1c6b49; font-size:32px; }
footer { color:#8e8e93; font-size:12px; text-align:center; line-height:1.5; margin-top:26px; }
@media (max-width:360px) { main { padding-left:16px; padding-right:16px; }.card { padding:20px; }h1 { font-size:25px; } }
