:root{color-scheme:light;--bg:#fff;--soft:#F1F4F7;--ink:#14212E;--body:#4A5866;--line:#DDE3E9;--navy:#123A5E;--orange:#E0611C;--err:#B3261E;--f-ui:"IBM Plex Sans",system-ui,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--soft);color:var(--ink);font-family:var(--f-ui);font-size:16px;line-height:1.55}
a{color:var(--navy)}
.top{background:#fff;border-bottom:1px solid var(--line)}
.top div{max-width:1120px;margin:0 auto;padding:14px 24px}
.brand{font-weight:700;font-size:18px;color:var(--ink);text-decoration:none}
.brand span{color:var(--orange)}
.card{max-width:420px;margin:56px auto;background:#fff;border:1px solid var(--line);padding:32px 28px}
.card h1{font-size:24px;margin:0 0 6px}
.card p{color:var(--body);margin:0 0 20px}
.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px 16px;font:600 15px var(--f-ui);border:0;cursor:pointer;background:var(--orange);color:#fff}
.btn.google{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.btn:disabled{opacity:.6;cursor:default}
.or{display:flex;align-items:center;gap:12px;color:var(--body);font-size:13px;margin:20px 0}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}
input{width:100%;padding:11px 12px;font:16px var(--f-ui);border:1px solid var(--line);margin-bottom:12px}
.msg{font-size:14px;margin-top:14px;min-height:1.4em}
.msg.err{color:var(--err)}
.small{font-size:13px;color:var(--body);margin-top:20px}
.doc{max-width:720px;margin:40px auto;background:#fff;border:1px solid var(--line);padding:32px 28px}
.doc h1{margin-top:0}
.doc h2{font-size:18px;margin-top:28px}
@media (max-width:480px){.card,.doc{margin:16px;padding:24px 16px}}
