:root{color:#172033;background:#eef1f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.auth-screen{min-height:100vh;display:grid;place-items:center;background:#eef1f5;padding:24px}.auth-panel{width:min(420px,100%);background:#fff;border:1px solid #d8dee8;border-radius:8px;padding:24px;box-shadow:0 18px 50px #14213814}.auth-panel-wide{width:min(560px,100%)}.auth-panel h1{margin:12px 0 8px;font-size:24px;letter-spacing:0}.auth-panel p{margin:0;color:#5f6b7a;line-height:1.5}.pulse{width:14px;height:14px;border-radius:50%;background:#28785f;box-shadow:0 0 #28785f66;animation:pulse 1.4s infinite}@keyframes pulse{70%{box-shadow:0 0 0 12px #28785f00}to{box-shadow:0 0 #28785f00}}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr);background:#eef1f5}.sidebar{min-height:100vh;background:#fff;border-right:1px solid #d8dee8;padding:22px;display:flex;flex-direction:column;gap:24px}.brand-block{display:flex;align-items:center;gap:12px;min-height:48px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#172033;color:#fff;font-weight:800;flex:0 0 42px}.brand-mark-icon{background:#05070b;color:#fff;overflow:hidden}.brand-icon{width:62%;height:62%;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.brand-block>div{min-width:0}.brand-block>div>strong,.brand-block>div>span{display:block;line-height:1.25}.brand-block>div>span{color:#667085;font-size:13px}.brand-block .brand-mark{display:grid;place-items:center;color:#fff;font-size:inherit;line-height:1}.brand-mark-icon .brand-icon{stroke:#fff}.nav-list{display:grid;gap:8px}.nav-item{min-height:42px;border:1px solid transparent;border-radius:8px;background:transparent;color:#465366;padding:0 10px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer}.nav-item span{color:#8a94a6;font-size:12px;font-weight:700}.nav-item.active,.nav-item:hover{background:#f2f6fb;border-color:#dbe6f5;color:#172033}.nav-item.active{box-shadow:inset 3px 0 0 var(--accent)}.session-card{margin-top:auto;border:1px solid #d8dee8;border-radius:8px;padding:14px;display:grid;gap:8px}.session-card strong{word-break:break-word}.session-card small{color:#667085}.status-chip{justify-self:start;border-radius:999px;background:#28785f1f;color:#28785f;padding:4px 9px;font-size:12px;font-weight:700}.status-chip.danger{background:#b037371f;color:#a43939}.status-chip.neutral{background:#eef3f8;color:#334155}.access-screen{align-items:stretch;background:linear-gradient(180deg,#ffffffbd,#eef1f5eb),#eef1f5}.access-shell{width:min(1040px,100%);margin:auto;background:#fff;border:1px solid #d8dee8;border-radius:8px;box-shadow:0 18px 50px #14213814;overflow:hidden}.access-brand-row{min-height:76px;padding:18px 22px;border-bottom:1px solid #e2e7ef;display:flex;align-items:center;justify-content:space-between;gap:14px}.access-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:0}.access-copy{padding:34px;display:grid;align-content:center;gap:16px}.access-kicker{color:#2251a4;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0}.access-copy h1{margin:0;color:#172033;font-size:32px;line-height:1.12;letter-spacing:0}.access-copy p{margin:0;max-width:620px;color:#5f6b7a;line-height:1.65}.access-note,.access-alert{margin-top:4px;border-radius:8px;padding:14px 16px;display:grid;gap:4px}.access-note{border:1px solid #d7e5f6;background:#f5f9fe;color:#24415f}.access-alert{border:1px solid #efd2d2;background:#fff7f7;color:#7b2f2f}.access-note strong,.access-alert strong{font-size:14px}.access-note span,.access-alert span{color:inherit;line-height:1.45}.access-status-panel{min-height:360px;background:#f8fafc;border-left:1px solid #e2e7ef;padding:28px;display:grid;align-content:center;gap:18px}.access-status-header{display:flex;align-items:center;gap:10px;color:#172033}.status-dot{width:10px;height:10px;border-radius:50%;background:#2251a4;box-shadow:0 0 0 4px #2251a41a;flex:0 0 auto}.access-steps{margin:0;padding:0;display:grid;gap:10px;list-style:none}.access-steps li{min-height:62px;border:1px solid #e0e5ed;border-radius:8px;background:#fff;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px}.access-steps li>span{width:28px;height:28px;border-radius:50%;background:#eef4ff;color:#2251a4;display:grid;place-items:center;font-size:13px;font-weight:800}.access-steps p{margin:0;color:#172033;font-weight:700;line-height:1.35}.mfa-screen{background:radial-gradient(circle at top left,#ffffffeb,#fff0 34%),linear-gradient(180deg,#f7f8fa,#edf1f5)}.mfa-shell{width:min(1120px,100%);border-color:#e2e7ef;box-shadow:0 24px 70px #0f172a1f}.mfa-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(390px,.72fr);grid-template-rows:auto auto;min-height:640px}.mfa-main{grid-column:1;grid-row:1;padding:48px 48px 22px;display:grid;align-content:end;gap:24px}.mfa-heading{display:grid;gap:14px}.mfa-heading h1{margin:0;color:#111827;font-size:36px;line-height:1.08;letter-spacing:0}.mfa-heading p{margin:0;max-width:560px;color:#5c6675;font-size:16px;line-height:1.65}.mfa-method-picker{width:min(560px,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mfa-method-card{min-height:142px;border:1px solid #dce3ec;border-radius:8px;background:#fff;color:#111827;padding:16px;display:grid;align-content:start;justify-items:start;gap:9px;text-align:left;cursor:pointer;box-shadow:0 1px 2px #0f172a0a}.mfa-method-card:hover:not(:disabled),.mfa-method-card.active{border-color:#111827;box-shadow:0 10px 26px #0f172a14}.mfa-method-card:disabled{opacity:.46;cursor:not-allowed}.mfa-method-card strong,.mfa-method-card small{display:block}.mfa-method-card strong{font-size:15px}.mfa-method-card small{color:#667085;line-height:1.45}.method-mark{width:36px;height:36px;border-radius:10px;background:#111827;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:900}.method-mark.certificate{background:#24415f}.mfa-progress{width:min(560px,100%);border:1px solid #e2e7ef;border-radius:8px;background:#f8fafc;padding:6px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.mfa-progress span{min-height:38px;border-radius:6px;color:#647084;display:grid;place-items:center;padding:0 8px;text-align:center;font-size:12px;font-weight:800}.mfa-progress span.active{background:#fff;color:#111827;box-shadow:0 1px 2px #0f172a14}.mfa-qr-panel,.mfa-manual-panel,.mfa-confirm-panel,.mfa-return-panel{border:1px solid #e0e6ef;border-radius:8px;background:#fff;display:grid;align-content:start}.mfa-confirm-panel{grid-column:1;grid-row:2;width:calc(100% - 96px);margin:0 48px 48px;padding:20px;gap:14px;align-self:start;box-shadow:0 12px 34px #0f172a0f}.mfa-panel-title{display:flex;align-items:center;gap:12px;color:#111827}.mfa-panel-title.compact{align-items:flex-start}.mfa-panel-title>span{width:32px;height:32px;border-radius:50%;background:#111827;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:900;flex:0 0 auto}.mfa-panel-title strong,.mfa-panel-title small{display:block}.mfa-panel-title strong{color:#111827;font-size:15px}.mfa-panel-title small{margin-top:3px;color:#687386;font-size:13px;line-height:1.45}.mfa-qr-panel{padding:20px;gap:18px}.mfa-qr-frame{width:min(292px,100%);aspect-ratio:1;border:1px solid #d7dee8;border-radius:8px;background:#fff;display:grid;place-items:center;padding:16px;justify-self:center;box-shadow:inset 0 0 0 8px #f7f9fc}.mfa-qr-frame img{width:100%;height:100%;object-fit:contain;display:block}.mfa-qr-loading{color:#667085;font-size:13px;font-weight:800}.mfa-open-link,.primary-button,.secondary-button{min-height:46px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;font-weight:800;text-decoration:none;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.mfa-open-link,.primary-button{border:1px solid #111827;background:#111827;color:#fff}.mfa-open-link:hover,.primary-button:hover:not(:disabled){background:#05070b;border-color:#05070b;transform:translateY(-1px)}.secondary-button{border:1px solid #cfd8e5;background:#fff;color:#111827;justify-self:start}.secondary-button:hover{background:#f6f8fb}.mfa-manual-panel{padding:18px;gap:14px}.mfa-secret-box{display:grid;gap:7px}.mfa-secret-box span,.mfa-form label{color:#667085;font-size:13px;font-weight:800}.mfa-secret-box code{width:100%;border:1px solid #dbe6f5;border-radius:8px;background:#f8fafc;color:#111827;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.mfa-form{display:grid}.mfa-code-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.mfa-code-input{width:178px;height:54px;border:1px solid #cfd8e5;border-radius:8px;background:#fff;color:#111827;padding:0 14px;font-size:26px;font-weight:850;letter-spacing:0;text-align:center}.mfa-code-input:focus{outline:4px solid rgba(17,24,39,.1);border-color:#111827}.primary-button:disabled{border-color:#c8d1dd;background:#d7dee8;color:#6b7788;cursor:not-allowed;transform:none}.mfa-side-panel{grid-column:2;grid-row:1 / 3;min-height:100%;background:#f7f9fc;border-left:1px solid #e2e7ef;padding:30px;display:grid;align-content:center;gap:14px}.authenticator-app-list{display:grid;gap:10px}.authenticator-app{border:1px solid #e0e6ef;border-radius:8px;background:#fff;padding:12px;display:grid;grid-template-columns:36px minmax(0,1fr);gap:11px;align-items:start}.app-badge{width:36px;height:36px;border-radius:8px;background:#111827;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:900}.authenticator-app strong,.authenticator-app span{display:block}.authenticator-app strong{color:#111827;font-size:14px}.authenticator-app span{margin-top:3px;color:#667085;font-size:12px;line-height:1.45}.store-links{grid-column:2;display:flex;gap:8px;flex-wrap:wrap}.store-links a{min-height:32px;border:1px solid #cfd8e5;border-radius:8px;color:#111827;background:#f8fbff;display:inline-flex;align-items:center;justify-content:center;padding:0 11px;text-decoration:none;font-size:12px;font-weight:800}.store-links a:hover{background:#fff;border-color:#111827}.mfa-return-panel{padding:28px;gap:14px;text-align:center}.mfa-certificate-panel{border:1px solid #e0e6ef;border-radius:8px;background:#fff;padding:24px;display:grid;gap:14px;text-align:center}.mfa-certificate-mark{width:64px;height:64px;border-radius:16px;background:#111827;color:#fff;display:grid;place-items:center;justify-self:center;font-size:15px;font-weight:900}.mfa-certificate-panel>strong{color:#111827;font-size:20px}.mfa-certificate-panel>p,.mfa-certificate-note{margin:0;color:#667085;line-height:1.55}.mfa-certificate-panel .access-steps{text-align:left}.mfa-x509-action-panel{gap:16px}.certificate-button{justify-self:start}.mfa-lock-mark{width:58px;height:58px;border-radius:14px;background:#05070b;color:#fff;display:grid;place-items:center;justify-self:center}.mfa-lock-mark .brand-icon{width:56%;height:56%}.mfa-return-panel>strong{color:#111827;font-size:20px}.mfa-return-panel>p{margin:0;color:#667085;line-height:1.55}.text-button{border:0;background:transparent;color:#2251a4;padding:6px 0 0;text-align:left;cursor:pointer;font-weight:700}.workspace{padding:28px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.eyebrow{color:#667085;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0}h1{margin:4px 0 0;font-size:28px;letter-spacing:0}.context-strip{min-width:220px;border:1px solid #d8dee8;border-radius:8px;background:#fff;padding:10px 12px;display:grid;gap:2px}.context-strip span{color:#667085;font-size:12px;text-transform:uppercase;font-weight:700}.context-strip strong{font-size:14px}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric-card{min-height:96px;background:#fff;border:1px solid #d8dee8;border-radius:8px;padding:16px;display:grid;align-content:space-between}.metric-card span{color:#667085;font-size:13px;font-weight:700}.metric-card strong{font-size:24px;letter-spacing:0}.metric-card.blue{border-top:3px solid #2251a4}.metric-card.green{border-top:3px solid #28785f}.metric-card.amber{border-top:3px solid #b57a18}.metric-card.red{border-top:3px solid #a43939}.content-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:14px}.panel-block{background:#fff;border:1px solid #d8dee8;border-radius:8px;padding:16px;min-width:0}.main-block{grid-row:span 2}.block-header{display:grid;gap:4px;margin-bottom:14px}.block-header strong{font-size:18px}.queue-list{display:grid;gap:10px}.queue-row{min-height:58px;border:1px solid #e0e5ed;border-radius:8px;background:#fbfcfe;padding:0 14px;display:flex;align-items:center;justify-content:space-between;color:#172033;cursor:pointer}.queue-row:hover{border-color:var(--accent);background:#fff}.queue-row strong{color:var(--accent)}.context-list{display:grid;gap:10px;margin:0}.context-list div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0f4;padding-bottom:8px}.context-list dt{color:#667085;font-weight:700}.context-list dd{margin:0;text-align:right;font-weight:700}.scope-list{display:flex;flex-wrap:wrap;gap:8px}.scope-list span{border-radius:999px;background:#f2f6fb;color:#334155;padding:6px 9px;font-size:12px;font-weight:700}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto;border-right:0;border-bottom:1px solid #d8dee8}.metrics-grid,.content-grid,.access-layout,.mfa-layout{grid-template-columns:1fr}.mfa-layout{grid-template-rows:auto}.topbar{align-items:stretch;flex-direction:column}.context-strip{min-width:0}.access-status-panel,.mfa-side-panel{min-height:auto;border-left:0;border-top:1px solid #e2e7ef}.access-copy,.mfa-main{padding:26px}.mfa-main,.mfa-side-panel,.mfa-confirm-panel{grid-column:1;grid-row:auto}.mfa-confirm-panel{width:auto;margin:0 26px 26px}.mfa-progress,.mfa-method-picker{grid-template-columns:1fr}.mfa-code-input{flex:1 1 160px}.primary-button{flex:1 1 180px}.access-brand-row{align-items:flex-start;flex-direction:column}}
