:root{color-scheme:light;--ink:#202b3a;--muted:#657184;--line:#dce1e7;--blue:#245d8a}*{box-sizing:border-box}body{margin:0;min-height:100dvh;display:flex;flex-direction:column;background:#fff;color:var(--ink);font:14px/1.5 "Public Sans",Tahoma,Arial,sans-serif}header,footer{display:flex;align-items:center;justify-content:space-between;padding:20px 32px}header{border-bottom:1px solid #edf0f3}.brand{display:flex;align-items:center}.brand img{width:108px;height:42px;object-fit:contain}button,input{font:inherit;border-radius:0}button,a{touch-action:manipulation}header button{background:#fff;border:1px solid var(--line);padding:9px 14px;color:var(--ink);min-height:44px;cursor:pointer}main{flex:1;display:grid;place-items:center;padding:56px 20px}.login-panel{width:100%;max-width:360px}.kicker{color:var(--muted);margin:0 0 10px;font-size:13px}h1{font-size:28px;letter-spacing:-.5px;margin:0 0 8px;font-weight:650}.intro{color:var(--muted);margin:0 0 30px}form{display:grid;gap:18px}label{display:grid;gap:7px;font-weight:550}input{width:100%;min-height:46px;border:1px solid #cbd2db;background:#fff;padding:10px 12px;color:var(--ink)}.primary{min-height:46px;margin-top:6px;padding:10px 16px;background:var(--blue);color:#fff;border:1px solid var(--blue);font-weight:600;cursor:pointer}.primary:hover{background:#1c4a6e}.primary:disabled{opacity:.65;cursor:wait}a{color:var(--blue);text-underline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #c0d8ec;outline-offset:3px}.login-help{margin-top:24px;padding-top:20px;border-top:1px solid #edf0f3;color:var(--muted)}#login-message{margin-top:18px;padding:12px;border:1px solid #dce1e7;color:var(--muted);background:#f8f9fb}#login-message.error{color:#a12d36;border-color:#e6bfc3;background:#fff7f7}footer{font-size:12px;color:var(--muted);gap:20px}footer nav{display:flex;gap:22px}footer a{color:var(--muted)}[hidden]{display:none!important}@media(max-width:480px){header,footer{padding:16px 20px}main{align-items:start;padding-top:48px}h1{font-size:25px}footer{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
