.mfa-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:28px;border:1px solid #dce8f1;border-radius:24px;color:#193344;background:#fff;box-shadow:0 24px 80px #09263845}
.mfa-dialog::backdrop{background:#0d263866;backdrop-filter:blur(5px)}
.mfa-proof,.mfa-manage,.mfa-wizard{display:grid;gap:16px}.mfa-dialog h2,.mfa-heading h3{margin:0}.mfa-dialog p,.mfa-heading p{margin:0;line-height:1.55;color:#536b7b}
.mfa-emblem{display:grid;place-items:center;width:48px;height:48px;border:1px solid #b5e1d3;background:#eaf8f1;color:#147552;border-radius:16px;font-size:24px;font-weight:700;flex-shrink:0}
.mfa-heading{display:flex;gap:16px;align-items:center;margin-bottom:20px}.mfa-heading .eyebrow{display:block;margin-bottom:6px}
.mfa-manage{max-width:560px;margin-top:24px}.mfa-manage label,.mfa-wizard label,.mfa-proof label{display:grid;gap:7px;font-size:13px;font-weight:600}
.mfa-manage input,.mfa-wizard input:not([type=checkbox]),.mfa-proof input{width:100%;box-sizing:border-box;min-height:44px;border:1px solid #c8d9e4;background:#fff;color:#173849;border-radius:10px;padding:10px 12px;font:inherit;font-size:16px}
.mfa-manage input:focus,.mfa-wizard input:focus,.mfa-proof input:focus{outline:3px solid #98cbff;outline-offset:2px}
.mfa-actions{display:flex;gap:10px;flex-wrap:wrap}.mfa-hint,.mfa-key small{font-size:12px;line-height:1.5;color:#536b7b}.mfa-message{font-size:13px;line-height:1.6;color:#88401e;overflow-wrap:anywhere}
.mfa-key{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #e2eaf0}.mfa-key strong{flex:1;overflow-wrap:anywhere}.mfa-keys{max-width:680px}.mfa-code-grid{display:grid;gap:8px;padding:16px;background:#f2f6fa;border:1px solid #dce5ee;border-radius:14px}.mfa-code-grid code{font-size:13px;overflow-wrap:anywhere;user-select:all}.mfa-wizard{max-width:600px}.mfa-saved{display:flex!important;align-items:center}.mfa-saved input{width:20px;height:20px}.mfa-proof details{border-top:1px solid #e1eaf0;padding-top:16px}.mfa-proof summary{cursor:pointer;color:#246694;padding:8px 0;font-size:13px}.mfa-proof details label{margin:12px 0}
.mfa-dialog button{min-height:44px}.mfa-mobile{margin:0;min-height:100dvh;display:grid;place-items:center;background:#eff5fa;font-family:system-ui,sans-serif;color:#193344}.mfa-mobile main{box-sizing:border-box;width:min(480px,100%);padding:32px}.mfa-mobile img{width:200px;max-width:100%}.mfa-mobile button{cursor:pointer;border:0;border-radius:12px;padding:14px 18px;background:#1d70b7;color:#fff;font-size:16px;font-weight:600}.mfa-mobile p{line-height:1.6}.mfa-mobile .mfa-dialog{box-sizing:border-box}.mfa-account-dialog{width:min(700px,calc(100vw - 32px))}
[hidden]{display:none!important}@media(max-width:500px){.mfa-dialog{padding:22px}.mfa-key{flex-wrap:wrap}.mfa-key small{width:100%;order:3}.mfa-code-grid{padding:12px}.mfa-code-grid code{font-size:11px}.mfa-heading{align-items:flex-start}}
/* Authentication stays on the same visual system without changing ceremony behavior. */
.mfa-authenticator{display:grid;gap:12px;padding:18px;border:1px solid #cadbf0;border-radius:16px;background:#f3f7fc}.mfa-authenticator h4,.mfa-authenticator p{margin:0}.mfa-authenticator p{font-size:14px;line-height:1.6;color:#536b7b}
.mfa-qr{display:block;width:min(320px,100%);height:auto;aspect-ratio:1;image-rendering:pixelated;background:#fff;border:1px solid #dce5ee;border-radius:8px}
.mfa-setup-key{display:block;overflow-wrap:anywhere;user-select:all;font-size:16px;padding:12px;background:#f2f6fa;border-radius:10px}.mfa-wizard summary{cursor:pointer;padding:10px 0;color:#246694}.mfa-wizard [data-codes]{display:grid;gap:12px}.mfa-wizard h4{margin:0}.mfa-proof [data-totp]{display:grid;gap:12px}
.mfa-mobile { padding: 20px; box-sizing: border-box; background: #f2f5fa; color: #243854; }
.mfa-mobile main { background: #fff; border: 1px solid #dce5f1; border-radius: 18px; padding: 32px; box-shadow: 0 12px 40px #14223b0c; }
.mfa-mobile button { background: #2563eb; min-height: 48px; border-radius: 10px; }
.mfa-mobile h1 { font-size: 28px; letter-spacing: -.03em; }
.mfa-mobile button:focus-visible { outline: 3px solid #2563eb; outline-offset: 4px; }

/* Verification can be opened from staff, Customer Portal or the sign-in page. */
.mfa-proof>.window-form-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.mfa-proof>.window-form-header>div{min-width:0}.mfa-proof>.window-form-header h2{overflow-wrap:anywhere}.mfa-proof>.window-form-header .window-corner-close{flex:0 0 44px}
