:root{font-family:Tahoma,Arial,sans-serif;color:#202e49;background:#f4f6fa;color-scheme:light}
body{margin:0}main{box-sizing:border-box;max-width:760px;margin:24px auto;padding:24px;background:white;border:1px solid #d4dbea;border-radius:16px}
header,.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}header{justify-content:space-between}h1{font-size:1.7rem}p{line-height:1.8;overflow-wrap:anywhere}
form,section{margin:20px 0}label{display:block;margin:12px 0}input:not([type=checkbox]),textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid #64728b;border-radius:6px;font:inherit}
textarea{min-height:180px;resize:vertical;overflow-wrap:anywhere;font-family:monospace}button{min-height:44px;max-width:100%;padding:10px 16px;border:1px solid #334b80;border-radius:8px;background:#fff;color:#183666;font:inherit;cursor:pointer;margin:6px 0}button:disabled{opacity:.55;cursor:default}
button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #a34500;outline-offset:3px}[hidden]{display:none!important}a{color:#234b92}#message{min-height:28px}#proof{background:#e7f3ea;padding:12px}
@media(max-width:600px){main{margin:0;border-radius:0;padding:16px}.actions{align-items:stretch}.actions button{flex:1 1 180px}}
#totp-qr{display:block;max-width:100%;height:auto;margin:auto;background:white}#enrollment-timer{font-weight:bold;font-variant-numeric:tabular-nums}#totp-guide{background:#f4f6fa;padding:12px}
.method-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.method-cards article{border:1px solid #d4dbea;border-radius:12px;padding:16px;min-width:0}.method-cards h2{font-size:1.1rem;margin:0 0 8px}.method-cards button{width:100%}.help{padding:12px;background:#f4f6fa;border-radius:8px}.small{font-size:.9rem;color:#46546e}input[aria-invalid=true]{border:2px solid #9a2e2e}#security-stage{font-weight:bold}#message,#totp-guide{white-space:pre-line}
@media(max-width:600px){.method-cards{grid-template-columns:1fr}}

#method-change-guide{white-space:pre-line}#replacement-confirmation{line-height:1.8}#replacement-confirmation input{margin-inline-end:8px}#method-change-start,#method-change-prepare,#method-change-reset{background:#183666;color:#fff}#method-change{margin-top:16px}
/* Security controls retain their states inside the shared minimal shell. */
.rst-security .method-cards article { border-color:var(--rst-line); border-radius:16px; padding:22px; background:var(--rst-surface); }
.rst-security .method-cards h2 { font-size:16px; }
.rst-security .method-cards p { color:var(--rst-muted); font-size:13px; }
.rst-security .method-cards button { background:var(--rst-accent); color:white; border-color:var(--rst-accent); }
.rst-security .help, .rst-security #totp-guide, .rst-security #manual-key-section { background:var(--rst-bg); border:1px solid var(--rst-line); border-radius:12px; font-size:13px; }
.rst-security #security-stage { color:var(--rst-accent); font-size:14px; font-weight:550; }
.rst-security #proof { border:1px solid #c5dfd3; background:#f2faf6; color:#216d50; }
.rst-security #password-form button[type=submit], .rst-security #code-form button:not([type]), .rst-security #ack-form button, .rst-security #method-change-start, .rst-security #method-change-prepare, .rst-security #method-change-reset { background:var(--rst-accent); color:white; border-color:var(--rst-accent); }
.rst-security #security > .actions:last-of-type { padding-block-start:16px; border-block-start:1px solid var(--rst-line); }
.rst-security #state { color:var(--rst-muted); }
