:root{color-scheme:light;--red:#ff202b;--ink:#171238;--muted:#807a9b;--line:#eae2ff;--bg:#f6f2ff;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Tahoma,Arial,sans-serif;line-height:1.7}button,input{font:inherit}[hidden]{display:none!important}.topbar{height:82px;padding:18px max(24px,calc((100% - 1120px)/2));background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:130px;height:44px;object-fit:contain}.admin-tag{font-size:12px;background:#fff1f2;color:var(--red);border:1px solid #ffd9dd;border-radius:24px;padding:5px 16px}main{min-height:calc(100dvh - 150px);padding:54px 20px;display:grid;place-items:center}.auth-card{width:100%;max-width:470px;background:#fff;padding:34px;border:1px solid var(--line);border-radius:25px;box-shadow:0 16px 60px #32225b09}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--red);font-weight:bold}h1{font-size:27px;margin:8px 0}h2{font-size:18px;margin:8px 0}.intro{font-size:13px;color:var(--muted);margin:0 0 24px}.steps{list-style:none;padding:0;display:flex;justify-content:space-between;gap:8px;margin:28px 0;font-size:10px;color:var(--muted)}.steps li{flex:1;text-align:center}.steps span{display:block;margin:0 auto 8px;border:1px solid var(--line);background:var(--bg);width:31px;height:31px;line-height:29px;border-radius:11px;font-size:12px}.steps .active{color:var(--red)}.steps .active span{border-color:#ffb9c0;background:#fff0f1}.steps .done span{background:#edf8f3;color:#198768;border-color:#d1eee1}label{display:block;font-size:12px;margin:16px 0 7px;font-weight:bold}input{width:100%;height:49px;border:1px solid var(--line);border-radius:13px;padding:9px 13px;outline:none;color:var(--ink);background:#fdfcff;transition:border-color .2s,box-shadow .2s}input:focus{border-color:var(--red);box-shadow:0 0 0 3px #ff202b12}.code{text-align:center;letter-spacing:10px;font-size:22px}button{width:100%;border:1px solid transparent;background:var(--red);color:#fff;padding:11px 15px;border-radius:12px;font-size:13px;font-weight:bold;cursor:pointer;margin-top:20px}button:hover{filter:brightness(.95)}button:focus-visible{outline:3px solid #b899e8;outline-offset:3px}button:disabled{opacity:.5;cursor:wait}.text-button{background:transparent;color:var(--muted);margin-top:9px;font-weight:normal;padding:6px}.text-button:hover{color:var(--red)}.hint{color:var(--muted);font-size:12px;margin:11px 0}.notice{font-size:12px;padding:15px;border:1px solid var(--line);background:var(--bg);border-radius:12px}.security-note{border-top:1px solid var(--line);padding-top:17px;margin:24px 0 0;text-align:center;color:var(--muted);font-size:10px}#message{color:#a41c2b;background:#fff0f1;border:1px solid #ffd2d7;border-radius:12px;padding:12px;font-size:12px}#loading{font-size:13px;color:var(--muted);text-align:center}#totp-secret{font-family:monospace;font-size:13px;text-align:center}.key-emblem{width:76px;height:76px;border-radius:25px;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-size:38px;margin:25px auto 18px}#passkey-panel{text-align:center}footer{text-align:center;font-size:10px;color:var(--muted);padding:20px}#dashboard{width:100%;max-width:1000px}.dashboard-heading{display:flex;justify-content:space-between;align-items:center;gap:25px}.secondary{width:auto;background:#fff;color:var(--red);border-color:#ffd2d7;margin:0}.success-card{display:flex;align-items:center;gap:18px;background:#fff;padding:24px;border:1px solid var(--line);border-radius:20px}.success-card p,.phase-card p{color:var(--muted);font-size:13px;margin:0}.success-icon{background:#eafaee;color:#198768;border-radius:15px;width:50px;height:50px;display:grid;place-items:center;font-size:24px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.summary-grid article,.phase-card{background:#fff;border:1px solid var(--line);padding:24px;border-radius:18px}.metric{font-size:20px;font-weight:bold}.summary-grid p{font-size:12px;color:var(--muted);margin:6px 0 0}@media(max-width:550px){.topbar{height:72px;padding:12px 20px}.logo{width:110px}main{padding:28px 15px;min-height:calc(100dvh - 135px)}.auth-card{padding:25px 22px}.summary-grid{grid-template-columns:1fr}.dashboard-heading{align-items:flex-start}.dashboard-heading h1{font-size:23px}.secondary{font-size:11px;padding:9px}.success-card{padding:18px}.admin-tag{padding:4px 11px}}
