.portal-mfa-overlay{position:fixed;inset:0;z-index:20000;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:24px 16px;background:rgba(13,26,16,.64);backdrop-filter:blur(5px);box-sizing:border-box}
.portal-mfa-card{box-sizing:border-box;width:100%;max-width:520px;margin:auto;background:#fff;color:#1a2a1e;border:1px solid #dfe8df;border-radius:18px;padding:26px;box-shadow:0 20px 70px #0004;font:calc(15px * var(--pt-font-scale, 1))/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.portal-mfa-card h2{font-size:calc(21px * var(--pt-font-scale, 1));line-height:1.25;margin:0 0 12px;color:#176535}
.portal-mfa-card p{margin:10px 0}.portal-mfa-card label{display:block;font-size:calc(14px * var(--pt-font-scale, 1));font-weight:600;color:#263b2c;letter-spacing:normal;margin:12px 0 6px}
.portal-mfa-card input[type=text]{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #98ab9d;border-radius:9px;font:calc(18px * var(--pt-font-scale, 1))/1.4 ui-monospace,SFMono-Regular,monospace;background:white;color:#172d1e}
.portal-mfa-card button{border:1px solid transparent;border-radius:9px;padding:10px 15px;font:600 calc(14px * var(--pt-font-scale, 1))/1.4 system-ui,sans-serif;cursor:pointer;background:#edf3ee;color:#20472c;min-height:42px}
.portal-mfa-card button:disabled{opacity:.55;cursor:wait}.portal-mfa-card button.portal-mfa-primary{background:#1b7a3d;color:#fff}
.portal-mfa-card :focus-visible{outline:3px solid #ba8b18;outline-offset:3px}.portal-mfa-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;justify-content:flex-end}
.portal-mfa-error{color:#a32822;min-height:24px;font-size:calc(14px * var(--pt-font-scale, 1));margin:10px 0}.portal-mfa-status{color:#526456;font-size:calc(13px * var(--pt-font-scale, 1));min-height:20px}.portal-mfa-qr{background:white;padding:12px;margin:14px auto;width:216px;box-sizing:content-box}
.portal-mfa-qr img,.portal-mfa-qr canvas{max-width:100%;height:auto}.portal-mfa-secret{display:block;overflow-wrap:anywhere;font:calc(14px * var(--pt-font-scale, 1))/1.6 ui-monospace,SFMono-Regular,monospace;padding:10px;background:#f1f6f2;border-radius:8px;user-select:all}
.portal-mfa-card details{margin:12px 0}.portal-mfa-card summary{cursor:pointer;color:#245d35;font-weight:600}.portal-mfa-codes{display:grid;gap:6px;padding:14px;background:#f1f6f2;border-radius:10px;font:calc(13px * var(--pt-font-scale, 1))/1.6 ui-monospace,SFMono-Regular,monospace;list-style:none;margin:14px 0;user-select:text}
.portal-mfa-ack{display:flex!important;gap:10px;align-items:flex-start}.portal-mfa-ack input{width:18px;height:18px;flex:none;margin:3px 0 0}.portal-mfa-card .portal-mfa-switch{margin-top:12px;background:transparent;padding:5px 0;min-height:34px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:420px){.portal-mfa-card{padding:20px 16px}.portal-mfa-codes{font-size:calc(11px * var(--pt-font-scale, 1));padding:10px}.portal-mfa-qr{width:200px}.portal-mfa-actions button{flex:1}}
