.hcm-ms2fa-box{background:#111;color:#f4f4f4;border:1px solid #3a3a3a;border-radius:14px;padding:22px;margin:0 0 24px}.hcm-ms2fa-box h2,.hcm-ms2fa-box h3{color:#fff}.hcm-ms2fa-box h2 span{font-size:12px;background:#d71920;color:#fff;border-radius:999px;padding:3px 8px}.hcm-ms2fa-box a{color:#ff4048}.hcm-ms2fa-box input{max-width:260px}.hcm-ms2fa-box .button{background:#d71920!important;color:#fff!important;border:0!important;border-radius:6px!important}.hcm-secret{display:inline-block;background:#000;color:#fff;border:1px solid #555;padding:10px 12px;letter-spacing:2px}.hcm-backup{border:1px solid #d71920;background:#1b1b1b;padding:15px;border-radius:10px;margin:15px 0}.hcm-backup pre{white-space:pre-wrap;color:#fff}.hcm-ms2fa-qr{background:#fff;padding:10px;border-radius:10px}.hcm-form{margin:14px 0;display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}

/* v1.0.4 compact login 2FA block */
.hcm-ms2fa-login{margin:12px 0 14px;padding:12px;border:1px solid rgba(0,0,0,.12);background:#fafafa;}
.hcm-ms2fa-login p{margin:0 0 8px;}
.hcm-ms2fa-code-input{max-width:130px!important;min-height:34px!important;}
.hcm-ms2fa-methods label{display:inline-block;margin:0 14px 6px 0;}
.hcm-ms2fa-mail-button{margin:0 0 6px 0!important;min-height:30px!important;padding:2px 10px!important;line-height:24px!important;}

/* v1.0.5 after-login challenge */
.hcm-ms2fa-challenge-body{background:#090909;color:#f5f5f5;min-height:100vh;margin:0;display:flex;align-items:center;justify-content:center;padding:24px;font-family:Arial,Helvetica,sans-serif;}
.hcm-ms2fa-challenge-card{width:min(520px,100%);background:#141414;border:1px solid #333;border-radius:16px;box-shadow:0 20px 70px rgba(0,0,0,.45);padding:24px;}
.hcm-ms2fa-challenge-card h1{margin:0 0 12px;color:#fff;font-size:24px;line-height:1.2;}
.hcm-ms2fa-challenge-card h1 span{display:inline-block;font-size:12px;background:#d71920;color:#fff;border-radius:999px;padding:3px 8px;vertical-align:middle;}
.hcm-ms2fa-challenge-card p{color:#ddd;}
.hcm-ms2fa-after-form{margin:14px 0;}
.hcm-ms2fa-code-label{display:block;font-weight:700;margin-bottom:10px;color:#fff;}
.hcm-ms2fa-code-label input{width:150px;max-width:100%;font-size:20px;letter-spacing:3px;padding:8px 10px;border-radius:6px;border:1px solid #555;background:#fff;color:#111;}
.hcm-ms2fa-method-grid{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0 14px;}
.hcm-ms2fa-method-grid label{background:#1e1e1e;border:1px solid #333;border-radius:8px;padding:8px 10px;color:#fff;}
.hcm-ms2fa-challenge-card .button{display:inline-block;background:#d71920!important;color:#fff!important;border:0!important;border-radius:7px!important;padding:9px 13px!important;text-decoration:none!important;cursor:pointer;line-height:1.2!important;}
.hcm-ms2fa-challenge-card .button-primary{background:#d71920!important;}
.hcm-ms2fa-email-form .button{background:#2b2b2b!important;}
.hcm-ms2fa-notice{padding:10px 12px;border-radius:8px;margin:10px 0 14px;font-weight:700;}
.hcm-ms2fa-notice.hcm-ok{background:#12351d;color:#d7ffd7;border:1px solid #2f7d3e;}
.hcm-ms2fa-notice.hcm-error{background:#3a1212;color:#ffd7d7;border:1px solid #8a2c2c;}
.hcm-ms2fa-challenge-card a{color:#ff4048;}

/* v1.0.6 inline setup on challenge page */
.hcm-ms2fa-setup-panel{margin:16px 0;padding:14px;border:1px solid #333;border-radius:12px;background:#101010;}
.hcm-ms2fa-setup-panel h2{margin:0 0 10px;color:#fff;font-size:19px;}
.hcm-ms2fa-secondary{background:#2b2b2b!important;}
.hcm-ms2fa-setup-form{display:block;}
.hcm-ms2fa-challenge-card .hcm-secret{word-break:break-all;white-space:normal;max-width:100%;}


/* v1.0.7 e-mail fallback en QR setup */
.hcm-ms2fa-email-login-box{margin:18px 0;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.035)}
.hcm-ms2fa-email-login-box h2{font-size:17px;margin:0 0 8px}.hcm-ms2fa-email-login-box p{margin:0 0 10px}.hcm-ms2fa-verify-email-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.hcm-ms2fa-verify-email-form input{max-width:150px}.hcm-ms2fa-qr{max-width:220px;height:auto;background:#fff;padding:8px;border-radius:10px}.hcm-ms2fa-setup-panel .description{font-size:12px;opacity:.75}

/* v1.0.8: uitstel beperkt en niet opnieuw verlengbaar */
.hcm-ms2fa-note{font-size:13px;color:#f1f1f1;background:#201010;border:1px solid #5a2222;border-radius:8px;padding:10px 12px}

/* v1.0.11: expliciete methodekeuze */
.hcm-ms2fa-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.hcm-ms2fa-choice-card{background:#101010;border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:14px;margin:0}
.hcm-ms2fa-choice-card h2{font-size:17px;margin:0 0 8px;color:#fff}
.hcm-ms2fa-choice-card p{font-size:13px;line-height:1.4;margin:0 0 12px;color:#d8d8d8}
.hcm-ms2fa-verify-box{margin:16px 0;padding:14px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.035)}
.hcm-ms2fa-verify-box h2{font-size:18px;margin:0 0 10px;color:#fff}
.hcm-ms2fa-compact-form{display:inline-block;margin:8px 8px 8px 0}
@media(max-width:640px){.hcm-ms2fa-choice-grid{grid-template-columns:1fr}.hcm-ms2fa-challenge-card{padding:18px}}
