:root { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #17252b; background: #f4f6f7; font-size: 17px; -webkit-text-size-adjust: 100%; }
* { box-sizing: border-box; }
[hidden] { display: none !important; }
body { margin: 0; background: #f4f6f7; }
.gate { max-width: 420px; margin: 0 auto; padding: calc(48px + env(safe-area-inset-top)) 20px 32px; }
h1 { margin: 0 0 8px; font-size: 28px; }
p { color: #586970; line-height: 1.45; }
label { display: block; margin: 20px 0 6px; font-weight: 600; }
input { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid #c9d3d0; border-radius: 10px; font: inherit; font-size: 16px; background: #fff; }
button { width: 100%; min-height: 48px; margin-top: 16px; border: 0; border-radius: 10px; background: #166951; color: #fff; font: inherit; font-weight: 600; }
button:disabled { opacity: .5; }
.error { color: #a12b2b; }
