@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800;900&family=Geist+Mono:wght@400;500;600;700&display=swap";:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f8fb;font-family:Geist,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#f7f8fb}body{min-width:320px;margin:0}#root{min-height:100vh}.auth-shell{color:#111827;background:#f7f8fb;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border:1px solid #d9e2ec;border-radius:8px;width:min(460px,100%);padding:28px;box-shadow:0 1px 2px #0f172a0f}.auth-card span{color:#0f766e;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:850}.auth-card h1{margin:8px 0;font-size:28px;line-height:1.1}.auth-card p{color:#475569;margin:0 0 18px;line-height:1.55}.auth-actions{flex-wrap:wrap;gap:10px;display:flex}.auth-primary,.auth-secondary{cursor:pointer;border-radius:8px;min-height:42px;padding:0 18px;font-weight:850}.auth-primary{color:#fff;background:#0f766e;border:0}.auth-secondary{color:#0f766e;background:#fff;border:1px solid #99f6e4}.dev-auth-banner{z-index:30;color:#92400e;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;max-width:min(420px,100vw - 36px);padding:10px 12px;font-size:12px;font-weight:850;position:fixed;bottom:18px;right:18px;box-shadow:0 16px 36px #0f172a24}.app-shell{--background:#f7f8fb;--foreground:#111827;--panel:#fff;--panel-muted:#f1f5f9;--line:#d9e2ec;--muted:#5b6472;--accent:#0f766e;--accent-weak:#ccfbf1;--nav:#f1f1f1;--nav-foreground:#171717;--danger:#b91c1c;--warning:#b45309;--success:#047857;--shadow-soft:0 1px 2px #0f172a0f;background:var(--background);min-height:100vh;color:var(--foreground);grid-template-columns:256px minmax(0,1fr);display:grid}.app-shell.introduction-mode{grid-template-columns:minmax(0,1fr)}.process-rail{background:var(--nav);height:100vh;color:var(--nav-foreground);box-sizing:border-box;border-right:1px solid #d8d8d8;flex-direction:column;gap:0;padding:0;display:flex;position:sticky;top:0}.brand-lockup,.rail-status,.metric-card,.panel,.trace-card,.control-item,.evidence-item,.asset-result,.asset-scope-row,.vulnerability-item,.threat-item,.threat-vulnerability-option,.scenario-item,.scenario-threat-option,.initial-scenario-option,.control-scenario-option,.effectiveness-control-option,.residual-scenario-option,.treatment-scenario-option,.iso-control-option,.approval-scenario-option,.existing-control-item,.treatment-action-item,.effectiveness-score-card,.residual-score-card,.treatment-decision-card,.soa-status-card,.approval-decision-card,.effectiveness-context article,.residual-risk-context article,.soa-summary article,.approval-summary article,.final-output-summary article,.risk-score-card,.initial-risk-context article,.selected-asset-callout,.need-select,.score-select{border-radius:8px}.brand-lockup{border-bottom:1px solid #d8d8d8;align-items:center;gap:12px;padding:20px;display:flex}.brand-copy{flex:auto;min-width:0}.brand-mark{color:#171717;background:#fff;border:1px solid #d9d9d9;border-radius:8px;flex:none;place-items:center;width:40px;height:40px;display:grid}.brand-mark img{object-fit:contain;width:28px;height:28px;display:block}.brand-theme-toggle{color:#171717;background:0 0;border-color:#d9d9d9;flex:none;width:36px;min-height:36px;padding:0}.brand-theme-toggle:hover{color:#171717;background:#f2f2f2;border-color:#d9d9d9}.brand-lockup span,.rail-status span,.metric-card span,.asset-facts dt,.control-item p,.evidence-item span,.eyebrow{font-size:12px;line-height:1.2}.brand-lockup span{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.brand-lockup span,.rail-status span{color:#171717;display:block}.brand-lockup strong,.rail-status strong{color:#5d5d5d;margin-top:2px;font-size:12px;font-weight:400;display:block}.brand-version{color:#888;letter-spacing:.04em;margin-top:5px;font-size:10px;font-weight:600;line-height:1.2;display:block}.workspace{min-width:0;padding:24px 26px}.topbar,.summary-grid,.work-grid,.analysis-grid,.panel-header,.trace-chain,.gauge-layout,.evidence-item,.topbar-actions{display:flex}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.location-banner{background:linear-gradient(135deg, #38bdf81f, #0f766e14), var(--panel);box-shadow:var(--shadow-soft);border:1px solid #38bdf847;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:14px;padding:14px 16px;display:grid}.location-icon{width:42px;height:42px;color:var(--accent);background:#38bdf81f;border:1px solid #38bdf857;border-radius:8px;place-items:center;display:grid}.location-copy{min-width:0}.location-trail{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:5px;font-size:11px;font-weight:800;display:flex}.location-trail span{align-items:center;gap:4px;display:inline-flex}.location-heading{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.location-heading span{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.location-heading strong{color:var(--foreground);font-size:21px;line-height:1.12}.location-copy p{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.4}.location-next{border:1px solid var(--line);max-width:260px;color:var(--foreground);text-align:right;background:#0f172a08;border-radius:8px;justify-self:end;padding:8px 10px;font-size:12px;font-weight:800;line-height:1.3}.app-shell[data-busy=true] button:not(.retry-action){pointer-events:none;opacity:.68}.status-row{grid-template-columns:minmax(420px,1.35fr) minmax(0,.85fr);align-items:stretch;gap:14px;margin-bottom:14px;display:grid}.status-row>*{min-width:0}.status-row.compact{grid-template-columns:minmax(0,max-content) minmax(0,max-content);justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.status-row.has-panels{grid-template-columns:minmax(420px,1.35fr) minmax(0,.85fr)}.status-row.validation-only{grid-template-columns:minmax(0,1fr);margin-bottom:12px}.status-chip{min-width:0;max-width:100%;color:var(--foreground);box-shadow:none;background:#10b9811a;border:1px solid #05966952;border-radius:999px;align-items:center;gap:8px;padding:7px 10px;display:inline-flex}.status-chip svg{color:var(--accent);flex:none}.status-chip span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;flex:none;font-size:10px;font-weight:850}.status-chip strong{min-width:0;color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;display:block;overflow:hidden}.status-chip.validation-ready{background:#0ea5e917;border-color:#0ea5e947}.feedback-banner{border:1px solid var(--line);background:var(--panel);width:100%;min-width:0;box-shadow:var(--shadow-soft);box-sizing:border-box;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin:0;padding:13px 14px;display:flex}.feedback-banner>div{flex:auto;min-width:0}.feedback-banner span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850;display:block}.feedback-banner strong{color:var(--foreground);overflow-wrap:anywhere;margin-top:3px;font-size:14px;display:block}.feedback-banner p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.4}.feedback-banner.loading{background:#06b6d41f;border-color:#0891b266}.feedback-banner.success{background:#10b98121;border-color:#0596696b}.feedback-banner.error{background:#f43f5e1f;border-color:#be123c5c}.retry-action{flex:none}.assessment-manager{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;grid-template-columns:minmax(220px,1.3fr) minmax(150px,.8fr) minmax(180px,.9fr) auto auto minmax(150px,.8fr) minmax(180px,.9fr) auto;align-items:end;gap:10px;margin-bottom:14px;padding:12px;display:grid}.management-summary-row{grid-template-columns:minmax(420px,1.35fr) minmax(0,.85fr);align-items:stretch;gap:14px;margin-bottom:14px;display:grid}.assessment-management-page,.dashboard-page{gap:14px;display:grid}.introduction-page{align-items:center;min-height:calc(100vh - 48px);padding:4px 0 24px;display:grid}.introduction-shell{flex-direction:column;justify-content:center;width:min(100%,1152px);min-height:calc(100vh - 96px);margin:0 auto;display:flex}.introduction-hero{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-soft);border-radius:8px;overflow:hidden}.introduction-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:32px;padding:40px;display:grid}.introduction-main{max-width:896px}.introduction-title-row{align-items:center;gap:16px;display:flex}.introduction-logo{flex:none;place-items:center;width:96px;height:96px;display:grid}.introduction-logo img{object-fit:contain;width:96px;height:96px;display:block}.introduction-eyebrow{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:600;line-height:1.2}.introduction-title-row h2{color:var(--foreground);letter-spacing:0;margin:2px 0 0;font-size:30px;font-weight:600;line-height:1.15}.introduction-lede{max-width:768px;color:var(--muted);margin:24px 0 0;font-size:16px;line-height:1.75}.introduction-badges,.introduction-actions{flex-wrap:wrap;display:flex}.introduction-badges{gap:8px;margin-top:24px}.introduction-badge{color:#155e75;background:#06b6d41f;border:1px solid #0891b266;border-radius:999px;align-items:center;min-height:32px;padding:0 12px;font-size:14px;font-weight:700;line-height:1.2;display:inline-flex}.introduction-actions{gap:12px;margin-top:32px}.introduction-start-action{border-radius:6px;min-height:40px;padding:0 16px;font-size:14px;font-weight:600}.introduction-purpose{background:var(--panel-muted);border-radius:8px;padding:20px}.introduction-purpose-heading,.introduction-flow-heading{align-items:center;gap:12px;display:flex}.introduction-purpose-icon,.introduction-flow-icon{background:var(--accent-weak);color:var(--accent);border-radius:8px;flex:none;place-items:center;display:grid}.introduction-purpose-icon{width:40px;height:40px}.introduction-flow-icon{width:36px;height:36px}.introduction-purpose span{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:600;line-height:1.2;display:block}.introduction-purpose strong{color:var(--foreground);margin-top:2px;font-size:16px;font-weight:600;line-height:1.35;display:block}.introduction-purpose p{color:var(--muted);margin:16px 0 0;font-size:14px;line-height:1.7}.introduction-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.introduction-flow-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-soft);border-radius:6px;padding:20px}.introduction-flow-card h3{color:var(--foreground);letter-spacing:0;margin:0;font-size:16px;font-weight:600;line-height:1.35}.introduction-flow-card p{color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.7}.portal-page{align-items:center;min-height:calc(100vh - 48px);padding:4px 0 24px;display:grid}.portal-shell{gap:16px;width:min(100%,1180px);margin:0 auto;display:grid}.portal-hero,.portal-launch-card,.portal-workbench-card,.portal-flow-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-soft);border-radius:8px}.portal-hero{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:32px;padding:40px;display:grid}.portal-hero-main{min-width:0}.portal-header-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.portal-title-row,.portal-context-heading,.portal-flow-heading{align-items:center;gap:12px;display:flex}.portal-logo{flex:none;place-items:center;width:80px;height:80px;display:grid}.portal-logo img{object-fit:contain;width:80px;height:80px;display:block}.portal-eyebrow,.portal-section-eyebrow,.portal-context span,.portal-organization-list>span{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.2}.portal-title-row h2{color:var(--foreground);letter-spacing:0;margin:3px 0 0;font-size:30px;font-weight:650;line-height:1.15}.portal-account-menu{flex:none;justify-content:center;align-items:center;min-height:38px;display:inline-flex}.portal-loading-state{min-height:34px;color:var(--accent);background:#06b6d414;border:1px solid #0891b259;border-radius:8px;align-items:center;margin:20px 0 0;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.portal-lede{max-width:760px;color:var(--muted);margin:24px 0 0;font-size:16px;line-height:1.7}.portal-badges,.portal-actions{flex-wrap:wrap;display:flex}.portal-badges{gap:8px;margin-top:24px}.portal-badge{color:#155e75;background:#06b6d41f;border:1px solid #0891b266;border-radius:999px;align-items:center;min-height:32px;padding:0 12px;font-size:13px;font-weight:700;line-height:1.2;display:inline-flex}.portal-actions{gap:10px;margin-top:28px}.portal-context{background:var(--panel-muted);border-radius:8px;min-width:0;padding:20px}.portal-context-icon,.portal-launch-icon,.portal-flow-icon{background:var(--accent-weak);color:var(--accent);border-radius:8px;flex:none;place-items:center;display:grid}.portal-context-icon{width:40px;height:40px}.portal-context strong{color:var(--foreground);overflow-wrap:anywhere;margin-top:3px;font-size:16px;font-weight:650;line-height:1.35;display:block}.portal-context-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0 0;display:grid}.portal-context-facts div{border:1px solid var(--line);background:var(--panel);border-radius:6px;min-width:0;padding:10px}.portal-context-facts dt{color:var(--muted);font-size:11px;line-height:1.2}.portal-context-facts dd{color:var(--foreground);overflow-wrap:anywhere;margin:5px 0 0;font-size:16px;font-weight:700;line-height:1.2}.portal-organization-selector{gap:6px;margin-top:18px;display:grid}.portal-organization-selector span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.portal-organization-selector select{width:100%}.portal-organization-list{gap:8px;margin-top:18px;display:grid}.portal-organization{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 10px;display:grid}.portal-organization strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;font-size:13px;overflow:hidden}.portal-organization small{color:var(--muted);white-space:nowrap;font-size:11px}.portal-context-empty{color:var(--muted);margin:18px 0 0;font-size:13px;line-height:1.6}.portal-launch-grid,.portal-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.portal-launch-card{text-align:left;align-content:start;justify-items:start;min-height:192px;padding:20px;display:grid}button.portal-launch-card{width:100%;color:var(--foreground);cursor:pointer}button.portal-launch-card:hover{border-color:var(--accent);background:var(--panel);transform:translateY(-1px)}button.portal-launch-card:disabled{cursor:not-allowed;opacity:.7;transform:none}.portal-launch-card-muted{cursor:default;opacity:.86}.portal-launch-icon{width:38px;height:38px}.portal-launch-card strong{color:var(--foreground);margin-top:16px;font-size:16px;line-height:1.25}.portal-launch-card p,.portal-flow-card p,.portal-workbench-card p{color:var(--muted);font-size:13px;line-height:1.65}.portal-launch-card p{margin:8px 0 0}.portal-launch-link,.portal-launch-note{color:var(--accent);align-items:center;gap:5px;margin-top:auto;padding-top:16px;font-size:12px;font-weight:750;display:inline-flex}.portal-launch-note{color:var(--muted)}.portal-workbench-card{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.portal-workbench-card h3{color:var(--foreground);margin:5px 0 0;font-size:18px;line-height:1.25}.portal-workbench-card p:last-child{max-width:760px;margin-top:8px}.portal-flow-card{padding:18px}.portal-flow-icon{width:34px;height:34px}.portal-flow-card h3{color:var(--foreground);margin:0;font-size:15px;font-weight:650;line-height:1.3}.portal-flow-card p{margin:12px 0 0}.administration-page{gap:14px;display:grid}.dashboard-grid{grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);align-items:start;gap:14px;display:grid}.dashboard-command-card,.dashboard-workflow-card,.dashboard-gaps-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-soft);border-radius:8px}.dashboard-command-card{justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.dashboard-command-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashboard-command-heading p{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:500;line-height:1.2}.dashboard-status-badge{border:1px solid var(--line);border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.dashboard-status-badge.ready{color:#047857;background:#10b9811f;border-color:#05966957}.dashboard-status-badge.blocked{color:#b45309;background:#f59e0b1f;border-color:#d9770657}.dashboard-command-card h2{margin:8px 0 0;font-size:18px;font-weight:600;line-height:1.25}.dashboard-command-card>div>p:last-child{max-width:760px;color:var(--muted);margin-top:8px;font-size:14px;line-height:1.6}.dashboard-command-card .primary-action{flex:none;min-height:40px;padding:0 14px}.dashboard-summary-grid{margin-bottom:0}.dashboard-operating-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.dashboard-workflow-card,.dashboard-gaps-card{padding:16px}.dashboard-section-heading{color:var(--foreground);align-items:center;gap:8px;font-size:14px;font-weight:600;line-height:1.2;display:flex}.dashboard-section-heading svg{color:var(--accent)}.dashboard-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.dashboard-shortcut,.dashboard-gap-item,.dashboard-empty-gap{border:1px solid var(--line);background:var(--background);border-radius:6px}.dashboard-shortcut,.dashboard-gap-item{width:100%;min-height:0;color:var(--foreground);text-align:left;justify-content:stretch;padding:12px;display:grid}.dashboard-shortcut:hover,.dashboard-gap-item:hover{border-color:var(--line);background:var(--panel-muted)}.dashboard-shortcut span,.dashboard-gap-item span{min-width:0;color:var(--foreground);align-items:center;gap:8px;font-size:13px;font-weight:600;line-height:1.25;display:flex}.dashboard-shortcut svg,.dashboard-gap-item svg{color:var(--accent);flex:none}.dashboard-shortcut p,.dashboard-gap-item p,.dashboard-empty-gap{color:var(--muted);margin:8px 0 0;font-size:13px;font-weight:400;line-height:1.45}.dashboard-gap-list{gap:8px;margin-top:12px;display:grid}.dashboard-gap-item em{color:#b45309;background:#f59e0b24;border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.dashboard-gap-item strong{overflow-wrap:anywhere;min-width:0}.dashboard-empty-gap{padding:12px;display:block}.admin-evidence-panel{min-width:0}.admin-openai-panel{gap:16px}.admin-openai-form{grid-template-columns:minmax(220px,.8fr) minmax(260px,1.1fr) minmax(260px,1.1fr);align-items:start;gap:12px;min-width:0;display:grid}.admin-openai-form label{gap:6px;min-width:0;display:grid}.admin-openai-form span{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.admin-openai-form input,.admin-openai-form select,.admin-openai-form textarea{width:100%;min-width:0}.admin-model-select-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0;display:grid}.admin-model-select-row button{white-space:nowrap;min-height:42px;padding-inline:12px}.admin-openai-form textarea{resize:vertical;min-height:106px}.admin-openai-form p{color:var(--muted);grid-column:1/-1;margin:0;font-size:13px;line-height:1.45}.admin-test-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.admin-test-card{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;gap:8px;min-width:0;padding:14px;display:grid}.admin-test-card span{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.admin-test-card strong{color:var(--foreground);font-size:18px}.admin-test-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.access-summary{background:#10b98121;border:1px solid #0596696b;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-width:0;margin:0;padding:12px 14px;display:flex}.access-summary>div:first-child{min-width:0}.access-summary-actions{flex:none;align-items:center;gap:8px;display:flex}.access-summary span,.access-panel span,.access-add-card span,.access-session-card span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:850;display:block}.access-summary strong,.access-panel strong,.access-add-card strong,.access-session-card strong{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:14px;display:block;overflow:hidden}.access-summary p,.access-panel p,.access-add-card p,.access-session-card p,.role-help,.access-readonly-note{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.45}.access-panel{background:var(--panel);box-shadow:var(--shadow-soft);border:1px solid #0596696b;border-radius:8px;gap:12px;margin-bottom:14px;padding:14px;display:grid}.access-panel-header,.access-session-card,.access-add-card,.access-table{border:1px solid var(--line);background:var(--background);border-radius:8px}.access-panel-header{justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:12px;display:flex}.access-panel-header>div{min-width:0}.access-panel-header button,.access-summary-actions button{white-space:nowrap;flex:none}.access-add-card{min-width:0;padding:12px}.access-session-card{grid-template-columns:minmax(220px,1.2fr) minmax(190px,.95fr) minmax(170px,.75fr) max-content;align-items:end;gap:10px;min-width:0;padding:12px;display:grid}.access-session-card:after{content:""}.access-session-card .assessment-field{min-width:0}.access-table{--access-user-table-columns:minmax(140px, 1fr) minmax(210px, 1.25fr) minmax(120px, .7fr) minmax(90px, .55fr) minmax(104px, max-content);display:grid;overflow:hidden}.assessment-table{--access-user-table-columns:minmax(150px, .95fr) minmax(230px, 1.35fr) minmax(120px, .7fr) minmax(70px, .45fr) minmax(104px, max-content)}.assessment-session-card{grid-template-columns:minmax(150px,.95fr) minmax(230px,1.35fr) minmax(120px,.7fr) minmax(70px,.45fr) minmax(104px,max-content)}.assessment-session-card:after{grid-column:4/-1}.access-table-row{grid-template-columns:var(--access-user-table-columns);border-top:1px solid var(--line);align-items:center;gap:10px;min-width:0;padding:10px 12px;display:grid}.app-entitlements-table .access-table-row{grid-template-columns:minmax(0,1.35fr) minmax(120px,.8fr) minmax(100px,.7fr) minmax(110px,max-content)}.access-table-row:first-child{border-top:0}.access-table-row>*{min-width:0}.access-table-row span,.access-table-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.access-table-row button{white-space:nowrap;justify-self:start;width:100%}.access-table-head{background:var(--panel-muted)}.access-table-head span{justify-self:start;margin:0}.access-add-card{gap:12px;display:grid}.access-add-grid{grid-template-columns:minmax(220px,1.2fr) minmax(190px,.95fr) minmax(170px,.75fr) max-content;align-items:end;gap:10px;display:grid}.assessment-edit-grid{grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) max-content max-content}.assessment-create-grid{grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) max-content}.access-add-grid .primary-action{white-space:nowrap;min-width:126px}.role-help,.advanced-identity{grid-column:1/-1}.advanced-identity{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;padding:10px 12px}.advanced-identity summary{color:var(--foreground);cursor:pointer;font-size:12px;font-weight:800}.advanced-identity .assessment-field{margin-top:10px}.access-readonly-note{border:1px solid var(--line);background:var(--background);border-radius:8px;padding:12px}.assessment-field{gap:6px;min-width:0;display:grid}.assessment-field span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:850}.assessment-select-field select{min-width:0}.validation-gate{border:1px solid var(--line);background:var(--panel);min-width:0;box-shadow:var(--shadow-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin:0;padding:12px 14px;display:flex}.validation-gate.ready{background:#10b98121;border-color:#0596696b}.validation-gate.blocked{background:#d9581514;border-color:#d9581561}.validation-gate-copy{align-items:center;gap:10px;min-width:0;display:flex}.validation-gate-copy svg{color:#d95815;background:#d958151a;border:1px solid #d9581552;border-radius:999px;flex:none;width:28px;height:28px;padding:6px}.validation-gate span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850;display:block}.validation-gate strong{color:var(--foreground);margin-top:4px;font-size:13px;font-weight:800;line-height:1.35;display:block}.validation-gate p{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.35}.validation-gate ul{min-width:min(260px,45%);color:var(--warning);gap:4px;margin:0;padding-left:18px;font-size:13px;line-height:1.35;display:grid}.validation-gate svg{color:var(--accent);flex:none}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;margin:0 0 6px;font-weight:800;display:inline-flex}h1,h2,p{margin:0}h1{color:var(--foreground);font-size:clamp(26px,3vw,40px);line-height:1.04}h2{color:var(--foreground);font-size:18px;line-height:1.18}.topbar-actions{align-items:center;gap:10px}.topbar-user-action{flex:none;justify-content:center;align-items:center;min-height:38px;display:inline-flex}button{border:1px solid var(--line);background:var(--panel);min-height:38px;color:var(--foreground);cursor:pointer;font:inherit;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:750;display:inline-flex}button:hover{border-color:var(--muted);background:var(--panel-muted)}button:disabled{cursor:not-allowed;opacity:.48}.button-spinner{animation:.9s linear infinite button-spin}@keyframes button-spin{to{transform:rotate(360deg)}}.primary-action{color:#fff;border-color:var(--accent);background:var(--accent);font-weight:600}.primary-action:hover{border-color:var(--accent);background:var(--accent);opacity:.9}.theme-toggle{min-width:124px}.app-shell.dark-mode{--background:#07111f;--foreground:#e5edf8;--panel:#132034;--panel-muted:#0f172a;--line:#94a3b83d;--muted:#94a3b8;--accent:#38bdf8;--accent-weak:#38bdf81f;--nav:#171717;--nav-foreground:#ececec;--danger:#ffe4e6;--warning:#fef3c7;--success:#bbf7d0;--shadow-soft:none;color:var(--foreground);background:radial-gradient(circle at 0 0,#14b8a62e,#0000 34%),linear-gradient(135deg,#06101d,#0b1728 48%,#102033)}.app-shell.dark-mode .process-rail{background:var(--nav);color:var(--nav-foreground);border-color:#2f2f2f;box-shadow:0 25px 50px -12px #00000040}.app-shell.dark-mode .brand-lockup{border-color:#2f2f2f}.app-shell.dark-mode .brand-mark{color:#ececec;background:#212121;border-color:#3f3f3f}.app-shell.dark-mode .brand-lockup span{color:#ececec}.app-shell.dark-mode .brand-lockup strong{color:#b4b4b4}.app-shell.dark-mode .brand-version{color:#8f9aaa}.app-shell.dark-mode .location-banner{background:linear-gradient(135deg,#38bdf829,#14b8a614),#0b1627;border-color:#38bdf852}.app-shell.dark-mode .location-icon{background:#38bdf824;border-color:#38bdf86b}.app-shell.dark-mode .location-next{background:#0f172ab3;border-color:#94a3b83d}.app-shell.dark-mode .introduction-badge{color:#cffafe;background:#22d3ee1f;border-color:#22d3ee73}.app-shell.dark-mode .introduction-hero,.app-shell.dark-mode .introduction-flow-card{border-color:var(--line);background:var(--panel)}.app-shell.dark-mode .introduction-purpose{background:var(--panel-muted)}.app-shell.dark-mode .portal-hero,.app-shell.dark-mode .portal-launch-card,.app-shell.dark-mode .portal-workbench-card,.app-shell.dark-mode .portal-flow-card,.app-shell.dark-mode .portal-context-facts div,.app-shell.dark-mode .portal-organization{border-color:var(--line);background:var(--panel)}.app-shell.dark-mode .portal-context{background:var(--panel-muted)}.app-shell.dark-mode .portal-badge{color:#cffafe;background:#22d3ee1f;border-color:#22d3ee73}.app-shell.dark-mode button.portal-launch-card:hover{border-color:var(--accent);background:var(--panel)}.app-shell.dark-mode .workflow-form-toggle{color:#f8fafc;background:#38bdf824;border-color:#38bdf861}.app-shell.dark-mode .vulnerability-form input:disabled,.app-shell.dark-mode .vulnerability-form select:disabled,.app-shell.dark-mode .vulnerability-form textarea:disabled{color:#94a3b8;background:#0f172a75;border-color:#94a3b833}.app-shell.dark-mode h1,.app-shell.dark-mode h2,.app-shell.dark-mode strong,.app-shell.dark-mode .metric-card strong,.app-shell.dark-mode .feedback-banner strong,.app-shell.dark-mode .access-summary strong,.app-shell.dark-mode .access-panel strong,.app-shell.dark-mode .access-add-card strong,.app-shell.dark-mode .access-session-card strong{color:#f8fafc}.app-shell.dark-mode p,.app-shell.dark-mode .metric-card p,.app-shell.dark-mode .feedback-banner p,.app-shell.dark-mode .access-summary p,.app-shell.dark-mode .access-panel p,.app-shell.dark-mode .access-add-card p,.app-shell.dark-mode .access-session-card p,.app-shell.dark-mode .role-help,.app-shell.dark-mode .access-readonly-note,.app-shell.dark-mode .asset-facts dd,.app-shell.dark-mode .empty-state{color:#cbd5e1}.app-shell.dark-mode .eyebrow,.app-shell.dark-mode span,.app-shell.dark-mode .metric-card span,.app-shell.dark-mode .feedback-banner span,.app-shell.dark-mode .assessment-field span,.app-shell.dark-mode .asset-facts dt{color:#93a4b8}.app-shell.dark-mode button,.app-shell.dark-mode input,.app-shell.dark-mode select,.app-shell.dark-mode textarea{color:#f8fafc;background:#020617b3;border-color:#94a3b861}.app-shell.dark-mode button:hover{background:var(--panel-muted);border-color:#94a3b880}.app-shell.dark-mode input::placeholder,.app-shell.dark-mode textarea::placeholder{color:#64748b}.app-shell.dark-mode .primary-action{border-color:var(--accent);background:var(--accent);color:#fff}.app-shell.dark-mode .primary-action:hover{border-color:var(--accent);background:var(--accent);opacity:.9}.app-shell.dark-mode .theme-toggle{color:#f8fafc;background:#212121;border-color:#3f3f3f}.app-shell.dark-mode .brand-theme-toggle{color:#ececec;background:0 0;border-color:#3f3f3f}.app-shell.dark-mode .brand-theme-toggle:hover{background:#212121}.app-shell.dark-mode .feedback-banner,.app-shell.dark-mode .assessment-manager,.app-shell.dark-mode .access-summary,.app-shell.dark-mode .access-panel,.app-shell.dark-mode .access-panel-header,.app-shell.dark-mode .access-session-card,.app-shell.dark-mode .access-add-card,.app-shell.dark-mode .access-table,.app-shell.dark-mode .metric-card,.app-shell.dark-mode .panel,.app-shell.dark-mode .step-local-actions,.app-shell.dark-mode .trace-card,.app-shell.dark-mode .control-item,.app-shell.dark-mode .evidence-item,.app-shell.dark-mode .asset-result,.app-shell.dark-mode .asset-scope-row,.app-shell.dark-mode .asset-queue-item,.app-shell.dark-mode .inline-need-select,.app-shell.dark-mode .vulnerability-item,.app-shell.dark-mode .threat-item,.app-shell.dark-mode .threat-vulnerability-option,.app-shell.dark-mode .scenario-item,.app-shell.dark-mode .scenario-threat-option,.app-shell.dark-mode .initial-scenario-option,.app-shell.dark-mode .control-scenario-option,.app-shell.dark-mode .effectiveness-control-option,.app-shell.dark-mode .residual-scenario-option,.app-shell.dark-mode .treatment-scenario-option,.app-shell.dark-mode .iso-control-option,.app-shell.dark-mode .approval-scenario-option,.app-shell.dark-mode .existing-control-item,.app-shell.dark-mode .treatment-action-item,.app-shell.dark-mode .effectiveness-score-card,.app-shell.dark-mode .residual-score-card,.app-shell.dark-mode .treatment-decision-card,.app-shell.dark-mode .soa-status-card,.app-shell.dark-mode .approval-decision-card,.app-shell.dark-mode .effectiveness-context article,.app-shell.dark-mode .residual-risk-context article,.app-shell.dark-mode .soa-summary article,.app-shell.dark-mode .approval-summary article,.app-shell.dark-mode .final-output-summary article,.app-shell.dark-mode .risk-score-card,.app-shell.dark-mode .initial-risk-context article,.app-shell.dark-mode .selected-asset-callout,.app-shell.dark-mode .need-select,.app-shell.dark-mode .inline-need-select,.app-shell.dark-mode .score-select,.app-shell.dark-mode .advanced-identity,.app-shell.dark-mode .access-readonly-note{background:var(--panel);box-shadow:none;border-color:#334155}.app-shell.dark-mode .feedback-banner.loading,.app-shell.dark-mode .assessment-manager,.app-shell.dark-mode .step-local-actions{background:#22d3ee1f;border-color:#22d3ee73}.app-shell.dark-mode .feedback-banner.success,.app-shell.dark-mode .access-summary,.app-shell.dark-mode .access-panel{background:#34d3991f;border-color:#34d39973}.app-shell.dark-mode .feedback-banner.error{background:#fb71851f;border-color:#fb718573}.app-shell.dark-mode .status-chip{background:#34d3991a;border-color:#34d39961}.app-shell.dark-mode .status-chip.validation-ready{background:#38bdf817;border-color:#38bdf857}.app-shell.dark-mode .status-chip strong{color:#f8fafc}.app-shell.dark-mode .access-table-head,.app-shell.dark-mode .access-table-row,.app-shell.dark-mode .output-row,.app-shell.dark-mode .register-row,.app-shell.dark-mode .soa-row{border-color:#334155}.app-shell.dark-mode .access-table-head{background:var(--panel-muted)}.app-shell.dark-mode .selected-asset-callout,.app-shell.dark-mode .need-select,.app-shell.dark-mode .score-select{color:#e2e8f0}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.metric-card{background:var(--panel);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-soft);border-left-width:4px;border-left-color:#64748b;padding:8px 12px;display:block}.metric-card span{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:11px;font-weight:500;line-height:16px;display:block}.metric-card strong{overflow-wrap:anywhere;color:var(--foreground);font-variant-numeric:tabular-nums;margin-top:2px;font-size:18px;font-weight:600;line-height:24px;display:block}.metric-card p{color:var(--muted);margin-top:0;font-size:12px;line-height:16px}.metric-card.danger{border-left-color:#dc2626}.metric-card.warning{border-left-color:#d97706}.metric-card.info{border-left-color:#64748b}.metric-card.success{border-left-color:#059669}.app-shell.dark-mode .metric-card.danger{border-left-color:#dc2626}.app-shell.dark-mode .metric-card.warning{border-left-color:#d97706}.app-shell.dark-mode .metric-card.info{border-left-color:#64748b}.app-shell.dark-mode .metric-card.success{border-left-color:#059669}.work-grid{align-items:start;gap:14px}.main-column{flex:auto;width:100%;min-width:0}.side-column{flex-direction:column;gap:14px;width:344px;display:flex}.side-column .panel+.panel{margin-top:0}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-soft)}.panel+.panel,.analysis-grid{margin-top:14px}.step-local-actions{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;justify-content:flex-end;gap:10px;margin-top:14px;padding:12px;display:flex}.step-list{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex;overflow:auto}.step-item{color:#5d5d5d;cursor:pointer;min-height:36px;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:12px;font-size:14px;font-weight:400;display:grid}.step-item:hover{color:#171717;background:#e8e8e8;border-color:#0000}.step-item.viewing{color:#171717;background:#e3e3e3;border-color:#0000}.step-item.current-progress:not(.viewing){color:#3f3f46}.step-item.current-progress:not(.viewing) .step-icon{color:var(--accent)}.step-item.current-progress:not(.viewing) .step-label:after{content:"Current";color:var(--accent);letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;background:#0f766e14;border:1px solid #0f766e3d;border-radius:999px;margin-left:8px;padding:2px 6px;font-size:10px;font-weight:850;line-height:1;display:inline-flex}.assessments-step{margin-bottom:8px}.step-item.complete .step-icon,.step-item.current-progress .step-icon{color:currentColor;background:0 0}.step-item.viewing .step-icon{box-shadow:none}.step-item.next{color:#5d5d5d}.step-number{color:#7a7a7a;text-align:center;font-size:11px}.step-icon{background:0 0;border-radius:6px;place-items:center;width:20px;height:20px;display:grid}.step-label{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400;line-height:20px;overflow:hidden}.rail-status{background:#0f172ae6;border:1px solid #94a3b833;gap:10px;padding:12px;display:none}.rail-status svg{color:#5eead4;flex:none}.focused-step-panel{scroll-margin-top:20px}.step-focus .main-column>.panel:not(.focused-step-panel),.step-focus .analysis-grid,.step-focus .register-panel{display:none}.step-focus .main-column>.focused-step-panel{margin-top:0}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:16px}.panel-header button{background:var(--background);max-width:320px;min-height:32px;color:var(--muted);white-space:normal;text-align:right;flex:none;padding:0 10px}.asset-workflow{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px;display:grid}.asset-screen-layout{grid-template-columns:minmax(340px,.58fr) minmax(320px,.42fr);align-items:start;min-width:0;overflow:hidden}.asset-picker,.protection-editor{min-width:0}.asset-scope-column{align-content:start;gap:12px;display:grid}.asset-filters{grid-template-columns:minmax(220px,1fr) minmax(180px,.55fr) max-content;align-items:end;gap:10px;margin-bottom:12px;display:grid}.asset-filters button{white-space:nowrap;width:auto}.asset-filters label,.need-select{gap:6px;display:grid}.asset-filters span,.need-select span,.selected-asset-callout span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:850}input,select,textarea{box-sizing:border-box;border:1px solid var(--line);background:var(--background);width:100%;min-height:40px;color:var(--foreground);font:inherit;border-radius:8px;padding:0 12px;font-size:13px}select{height:40px}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:3px solid #0f766e24}textarea{resize:vertical;min-height:88px;padding:10px 11px}.asset-results{max-height:var(--visible-asset-result-list-height);scrollbar-gutter:stable;gap:8px;padding-right:4px;display:grid;overflow:auto}.asset-screen-layout .asset-results{max-height:var(--visible-asset-result-list-height)}.asset-result{cursor:default;text-align:left;touch-action:manipulation;background:#fff;border:1px solid #e2e8f0;grid-template-columns:minmax(520px,1fr) minmax(460px,.58fr);align-items:start;gap:10px;min-height:48px;padding:11px 12px;display:grid}.asset-result.selected{background:#f0fdfa;border-color:#14b8a6}.asset-result.editing{border-color:var(--accent);box-shadow:inset 3px 0 var(--accent)}.asset-result:focus-visible{border-color:var(--accent);outline:3px solid #0f766e24}.asset-result-main{grid-row:1;grid-template-columns:58px minmax(0,1fr);gap:0 8px;min-width:0;display:grid}.asset-result:not(.selected){grid-template-columns:minmax(520px,1fr) max-content}.asset-result.selected{grid-template-columns:minmax(0,1fr) minmax(420px,.54fr) max-content}.asset-result:not(.selected) .asset-result-main{grid-row:auto}.asset-result.selected .asset-result-main{grid-area:1/1}.asset-result span,.asset-scope-row span{color:#64748b;font-size:12px;font-weight:850}.asset-result strong,.asset-scope-row strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.asset-result small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:12px;font-weight:750;overflow:hidden}.asset-result-description{color:#475569;-webkit-line-clamp:3;-webkit-box-orient:vertical;grid-area:2/1;margin:-6px 0 0 66px;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.asset-result.selected .asset-result-description{grid-area:2/1/auto/3}.asset-result-actions,.asset-scope-row-header{justify-content:flex-end;align-items:center;gap:8px;display:flex}.asset-result-actions{z-index:1;grid-area:2/2;align-self:start;position:relative}.asset-result.selected .asset-result-actions{grid-area:2/3}.asset-result:not(.selected) .asset-result-actions{grid-area:2/2;align-self:start}.asset-scope-toggle{color:#475569;cursor:pointer;touch-action:manipulation;background:0 0;border-color:#0000;align-items:center;gap:5px;min-height:26px;padding:3px 6px;font-size:11px;font-weight:800;display:inline-flex}.asset-edit-action,.asset-delete-action{place-items:center;width:30px;min-width:30px;padding:0;display:inline-grid}.asset-edit-action{color:#64748b}.asset-delete-action{color:#b91c1c}.asset-delete-action:hover{background:#b91c1c14;border-color:#b91c1c47}.asset-scope-toggle:hover,.asset-scope-toggle[aria-pressed=true]{background:#14b8a61a;border-color:#14b8a659}.asset-scope-toggle input{box-sizing:border-box;width:14px;height:14px;min-height:14px;accent-color:var(--accent);pointer-events:none;flex:none;padding:0}.asset-result-actions button,.asset-scope-row-header button{cursor:pointer;min-height:28px;padding:5px 9px;font-size:12px}.asset-result-actions .asset-edit-action,.asset-result-actions .asset-delete-action{width:30px;min-width:30px;padding:0}.asset-result-cia{z-index:1;grid-area:1/2/auto/4;grid-template-columns:repeat(3,minmax(138px,1fr));gap:8px;min-width:0;display:grid;position:relative}.asset-screen-layout .asset-result,.asset-screen-layout .asset-result.selected,.asset-screen-layout .asset-result:not(.selected){grid-template-columns:minmax(0,1fr) auto}.asset-screen-layout .asset-result-main,.asset-screen-layout .asset-result.selected .asset-result-main,.asset-screen-layout .asset-result:not(.selected) .asset-result-main{grid-area:1/1}.asset-screen-layout .asset-result-description,.asset-screen-layout .asset-result.selected .asset-result-description{grid-area:2/1/auto/-1}.asset-screen-layout .asset-result-actions,.asset-screen-layout .asset-result.selected .asset-result-actions,.asset-screen-layout .asset-result:not(.selected) .asset-result-actions{grid-area:1/2;align-self:start}.asset-screen-layout .asset-result-cia{grid-area:3/1/auto/-1;grid-template-columns:repeat(3,max-content);justify-content:end;gap:8px 16px;width:100%}.inline-need-select{background:0 0;border:0;grid-template-columns:max-content 78px;align-items:center;gap:4px 6px;min-width:0;padding:2px 0;display:grid}.inline-need-select span{color:#64748b;font-size:11px;font-weight:900}.inline-need-select select{border:0;width:78px;min-width:0;height:28px;min-height:28px;padding:4px 6px;font-size:12px}.inline-need-select select:focus,.need-select select:focus{outline-offset:1px;border-color:#0000;outline:2px solid #14b8a647}.selected-asset-callout{background:#eff6ff;border:1px solid #dbeafe;padding:14px}.selected-asset-callout strong{color:#0f172a;margin-top:6px;font-size:18px;line-height:1.12;display:block}.selected-asset-callout p{color:#475569;-webkit-line-clamp:5;-webkit-box-orient:vertical;margin-top:10px;font-size:13px;line-height:1.42;display:-webkit-box;overflow:hidden}.asset-maintenance{gap:10px;margin-top:12px;display:grid}.asset-queue{gap:8px;margin-top:14px;display:grid}.asset-queue-title{color:#64748b;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:10px;font-size:11px;font-weight:850;display:flex}.asset-queue-title strong{color:#0f172a}.asset-queue-item{text-align:left;background:#fff;border:1px solid #e2e8f0;grid-template-columns:62px minmax(0,1fr) minmax(220px,max-content);align-items:center;gap:2px 12px;width:100%;min-height:54px;padding:9px 10px;display:grid}.asset-queue-item.active{background:#f0fdfa;border-color:#14b8a6;box-shadow:inset 3px 0 #0f766e}.asset-queue-item.missing-vulnerabilities{background:linear-gradient(90deg,#d9581514,#0000 42%),#fff;border-color:#d9581561}.asset-queue-item.active.missing-vulnerabilities{background:linear-gradient(90deg,#d9581524,#14b8a614),#f0fdfa;border-color:#d95815bd;box-shadow:inset 3px 0 #d95815}.asset-queue-id{color:#64748b;text-overflow:ellipsis;white-space:nowrap;grid-row:span 2;font-size:12px;font-weight:900;overflow:hidden}.asset-queue-copy{gap:2px;min-width:0;display:grid}.asset-queue-item strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.asset-queue-item small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:750;overflow:hidden}.asset-queue-cia{text-align:right;grid-column:3;justify-self:end}.asset-maintenance-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.asset-maintenance-actions button:last-child{color:#b91c1c}.asset-editor{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;gap:10px;padding:12px;display:grid}.asset-editor-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.asset-editor-header span,.asset-editor label span{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.asset-editor-header strong{overflow-wrap:anywhere;color:#0f172a;margin-top:3px;font-size:14px;line-height:1.2;display:block}.asset-editor-header button{flex:none;width:34px;min-height:34px;padding:0}.asset-editor label{gap:6px;display:grid}.asset-editor textarea{min-height:78px}.asset-editor-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px;display:grid}.asset-editor-needs{gap:8px;display:grid}.need-grid{gap:10px;margin-top:12px;display:grid}.need-select{background:#f8fafc;border:0;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;padding:11px;display:grid}.need-select select{border:0}.protection-needs-actions{grid-template-columns:1fr;gap:10px;margin-top:12px;display:grid}.protection-needs-actions button{width:100%}.vulnerability-screen-layout{grid-template-columns:minmax(340px,.58fr) minmax(320px,.42fr);align-items:start;gap:16px;min-width:0;padding:16px;display:grid;overflow:visible}.vulnerability-asset-column{align-content:start;gap:16px;min-width:0;display:grid}.vulnerability-workflow{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;min-width:0;padding:0;display:grid}.vulnerability-active-asset{min-height:auto}.vulnerability-active-asset-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:12px 0 0;display:grid}.vulnerability-active-asset-details div{min-width:0}.vulnerability-active-asset-details dt{color:#64748b;letter-spacing:.06em;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:850}.vulnerability-active-asset-details dd{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:750;line-height:1.3;overflow:hidden}.app-shell.dark-mode .vulnerability-active-asset-details dt{color:var(--muted)}.app-shell.dark-mode .vulnerability-active-asset-details dd{color:var(--foreground)}.app-shell.dark-mode .scenario-context-details dt,.app-shell.dark-mode .scenario-list-header span{color:var(--muted)}.app-shell.dark-mode .scenario-context-details dd,.app-shell.dark-mode .scenario-list-header strong,.app-shell.dark-mode .scenario-list-header>span{color:var(--foreground)}.vulnerability-asset-queue{box-sizing:border-box;max-height:var(--visible-vulnerability-asset-queue-height);scrollbar-gutter:stable;border:1px solid var(--line);background:#f8fafc;grid-template-columns:minmax(0,1fr);align-content:start;margin:0;padding:14px;overflow:hidden auto}.vulnerability-asset-queue .asset-queue-title,.vulnerability-asset-queue .empty-state{grid-column:1/-1}.vulnerability-asset-queue .asset-queue-item.active{box-shadow:none;background:#f0fdfa;border-color:#14b8a6}.vulnerability-asset-queue .asset-queue-id{font-size:12px;font-weight:850}.vulnerability-asset-queue .asset-queue-item strong{font-size:13px}.vulnerability-asset-queue .asset-queue-item small{font-size:12px;font-weight:750}.vulnerability-form,.vulnerability-list-shell,.vulnerability-list{min-width:0}.vulnerability-form{align-content:start;gap:12px;display:grid}.workflow-form-header{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;gap:6px;padding:12px;display:grid}.workflow-form-header div{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.workflow-form-header span{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.workflow-form-header strong{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;overflow:hidden}.workflow-form-toggle{min-height:32px;color:var(--foreground);background:#38bdf81f;border-color:#38bdf857;padding:0 10px;font-size:13px;font-weight:850}.workflow-form-toggle:hover{background:#38bdf82e;border-color:#38bdf894}.workflow-form-header p{color:var(--muted);font-size:13px;line-height:1.4}.vulnerability-form label{gap:6px;min-width:0;display:grid}.vulnerability-form input,.vulnerability-form select,.vulnerability-form textarea{width:100%;min-width:0}.vulnerability-form .field-disabled{opacity:.62}.vulnerability-form input:disabled,.vulnerability-form select:disabled,.vulnerability-form textarea:disabled{cursor:not-allowed;color:var(--muted);background:#94a3b814;border-color:#94a3b838}.vulnerability-form span,.vulnerability-item span,.threat-form span,.threat-item span,.scenario-form span,.scenario-item span,.initial-risk-context span,.risk-score-card span,.score-select span,.existing-control-form span,.existing-control-item span,.effectiveness-editor span,.effectiveness-control-option span,.effectiveness-context span,.effectiveness-score-card span,.residual-scenario-option span,.residual-score-card span,.residual-risk-context span,.treatment-editor span,.treatment-scenario-option span,.treatment-decision-card span,.treatment-action-item span,.iso-control-option span,.soa-editor span,.soa-status-card span,.soa-summary span,.approval-editor span,.approval-scenario-option span,.approval-decision-card span,.approval-summary span,.final-output-summary span,.section-label{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.vulnerability-form-grid{grid-template-columns:180px minmax(0,1fr);gap:12px;min-width:0;display:grid}.vulnerability-actions{grid-template-columns:1fr;gap:10px;display:grid}.vulnerability-actions button{white-space:normal;width:100%;min-width:0;min-height:42px;line-height:1.2}.vulnerability-actions button:disabled{cursor:not-allowed;opacity:.52}:root{--workflow-action-height:38px;--workflow-list-gap:10px;--visible-asset-result-list-height:calc((136px * 4) + (8px * 3));--visible-vulnerability-asset-queue-height:calc(18px + 8px + (54px * 8) + (8px * 7) + 28px + 2px);--visible-vulnerability-card-list-height:calc((176px * 3) + (var(--workflow-list-gap) * 2));--visible-threat-card-list-height:calc((168px * 3) + (var(--workflow-list-gap) * 2))}.vulnerability-list-shell{align-content:start;gap:var(--workflow-list-gap);grid-template-rows:auto minmax(0,1fr);height:auto;display:grid}.vulnerability-list-header{justify-content:space-between;align-items:end;gap:12px;min-width:0;padding:0 4px;display:flex}.vulnerability-list-header div{min-width:0}.vulnerability-list-header span{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850;display:block}.vulnerability-list-header>span{color:#0f172a;text-align:right;flex:none}.workflow-list-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.workflow-list-header-actions>span{color:#0f172a;white-space:nowrap;font-size:12px}.workflow-list-header-actions button{border:1px solid var(--line-strong);background:var(--panel);color:var(--foreground);white-space:nowrap;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:750}.app-shell.dark-mode .workflow-list-header-actions>span{color:var(--muted)}.vulnerability-list-header strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:16px;line-height:1.15;display:block;overflow:hidden}.app-shell.dark-mode .vulnerability-list-header span{color:var(--muted)}.app-shell.dark-mode .vulnerability-list-header>span,.app-shell.dark-mode .vulnerability-list-header strong{color:var(--foreground)}.vulnerability-list{box-sizing:border-box;align-content:start;gap:var(--workflow-list-gap);max-height:var(--visible-vulnerability-card-list-height);min-height:0;padding-right:4px;display:grid;overflow:hidden auto}.vulnerability-item{background:#f8fafc;border:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) 38px;gap:12px;min-width:0;padding:13px;display:grid}.vulnerability-list.at-scroll-start .vulnerability-item:nth-child(n+4){visibility:hidden}.vulnerability-item>div{min-width:0}.vulnerability-card-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.vulnerability-item strong{color:#0f172a;overflow-wrap:anywhere;margin-top:4px;font-size:14px;line-height:1.22;display:block}.vulnerability-item p{color:#475569;overflow-wrap:anywhere;margin-top:8px;font-size:13px;line-height:1.38}.vulnerability-item small{color:#0f766e;overflow-wrap:anywhere;margin-top:8px;font-size:12px;font-weight:800;display:block}.vulnerability-item small .supporting-text-label,.threat-item small .supporting-text-label{color:inherit;letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:850;line-height:1.2;display:block}.vulnerability-source-badge{letter-spacing:.04em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;align-items:center;min-height:20px;padding:3px 8px;font-size:10px;font-weight:850;line-height:1;display:inline-flex}.vulnerability-source-badge.app{color:#0369a1;background:#0ea5e91f;border-color:#0ea5e957}.vulnerability-source-badge.ai{color:#0f766e;background:#14b8a624;border-color:#14b8a657}.vulnerability-source-badge.manual{color:#475569;background:#64748b1f;border-color:#64748b4d}.app-shell.dark-mode .vulnerability-source-badge.app{color:#bae6fd;background:#0ea5e929;border-color:#38bdf870}.app-shell.dark-mode .vulnerability-source-badge.ai{color:#99f6e4;background:#14b8a62e;border-color:#2dd4bf70}.app-shell.dark-mode .vulnerability-source-badge.manual{color:#cbd5e1;background:#94a3b824;border-color:#94a3b857}.app-shell.dark-mode .suggested-initial-risk-card{background:#0ea5e91f;border-color:#38bdf861}.app-shell.dark-mode .suggested-initial-risk-card span{color:#bae6fd}.app-shell.dark-mode .suggested-initial-risk-card strong,.app-shell.dark-mode .suggested-initial-risk-card p{color:var(--foreground)}.vulnerability-item button{color:#b91c1c;align-self:start;width:34px;min-height:34px;padding:0}.empty-state{border:1px dashed var(--line);background:var(--panel-muted);color:var(--muted);border-radius:8px;padding:18px;font-size:13px;font-weight:750}.app-empty-state{color:#92400e;background:#fff7ed;border-color:#fed7aa;margin-bottom:14px}.continue-threats-action{width:100%}.continue-threats-action:disabled{cursor:not-allowed;opacity:.48}.threat-screen-layout{grid-template-columns:minmax(340px,.58fr) minmax(320px,.42fr);align-items:start;gap:16px;min-width:0;padding:16px;display:grid;overflow:hidden}.threat-vulnerability-column,.threat-workflow{align-content:start;gap:16px;min-width:0;display:grid}.threat-workflow{grid-template-columns:minmax(0,1fr);padding:0}.threat-vulnerability-column,.threat-vulnerability-list,.threat-form,.threat-list-shell,.threat-list{min-width:0}.threat-vulnerability-list,.threat-form,.threat-list-shell,.threat-list{align-content:start;gap:var(--workflow-list-gap);display:grid}.threat-vulnerability-list{border:1px solid var(--line);background:#f8fafc;margin:0;padding:14px}.threat-form{gap:12px}.section-label{margin:0 0 2px}.threat-vulnerability-option{text-align:left;background:#fff;border:1px solid #e2e8f0;justify-content:stretch;min-height:74px;padding:11px;display:grid}.threat-vulnerability-option:hover,.threat-vulnerability-option.selected{background:#fffbeb;border-color:#f59e0b}.threat-vulnerability-option span,.threat-vulnerability-option small{color:#64748b;font-size:12px;font-weight:850}.threat-vulnerability-option strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;min-width:0;margin-top:4px;font-size:13px;line-height:1.22}.threat-vulnerability-option small{color:#0f766e;margin-top:6px}.threat-context{min-height:auto}.threat-active-vulnerability-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:12px 0 0;display:grid}.threat-active-vulnerability-details div{min-width:0}.threat-active-vulnerability-details dt{color:#64748b;letter-spacing:.06em;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:850}.threat-active-vulnerability-details dd{color:#0f172a;overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:750;line-height:1.3}.app-shell.dark-mode .threat-active-vulnerability-details dt{color:var(--muted)}.app-shell.dark-mode .threat-active-vulnerability-details dd{color:var(--foreground)}.threat-form label{gap:6px;min-width:0;display:grid}.threat-form input,.threat-form textarea{width:100%;min-width:0}.threat-actions{grid-template-columns:1fr;gap:10px;display:grid}.threat-actions button{white-space:normal;width:100%;min-width:0;min-height:42px;line-height:1.2}.threat-actions button:disabled{cursor:not-allowed;opacity:.48}.threat-list-shell{grid-template-rows:auto minmax(0,1fr);height:auto}.threat-list-header{justify-content:space-between;align-items:end;gap:12px;min-width:0;padding:0 4px;display:flex}.threat-list-header div{min-width:0}.threat-list-header span{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850;display:block}.threat-list-header>span{color:#0f172a;text-align:right;flex:none}.threat-list-header strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;margin-top:4px;font-size:16px;line-height:1.15;display:block}.app-shell.dark-mode .threat-list-header span{color:var(--muted)}.app-shell.dark-mode .threat-list-header>span,.app-shell.dark-mode .threat-list-header strong{color:var(--foreground)}.threat-list{box-sizing:border-box;max-height:var(--visible-threat-card-list-height);padding-right:4px;overflow:hidden auto}.threat-item{background:#f8fafc;border:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) 38px;gap:12px;min-width:0;padding:13px;display:grid}.threat-item>div{min-width:0}.threat-item strong{color:#0f172a;overflow-wrap:anywhere;margin-top:4px;font-size:14px;line-height:1.22;display:block}.threat-item p{color:#475569;overflow-wrap:anywhere;margin-top:8px;font-size:13px;line-height:1.38}.threat-item small{color:#92400e;overflow-wrap:anywhere;margin-top:8px;font-size:12px;font-weight:800;line-height:1.35;display:block}.threat-item button{color:#b91c1c;align-self:start;width:34px;min-height:34px;padding:0}.scenario-workflow{grid-template-columns:minmax(340px,.58fr) minmax(320px,.42fr);align-items:start;gap:16px;min-width:0;padding:16px;display:grid;overflow:hidden}.scenario-threat-list,.scenario-form,.scenario-list-shell,.scenario-list{min-width:0}.scenario-threat-column,.scenario-build-column,.scenario-form,.scenario-list-shell,.scenario-list{align-content:start;gap:10px;display:grid}.scenario-threat-column,.scenario-build-column{gap:16px;min-width:0}.scenario-threat-list{gap:var(--workflow-list-gap);border:1px solid var(--line);background:var(--panel-muted);flex-direction:column;max-height:min(760px,100vh - 260px);padding:14px;display:flex;overflow:auto}.scenario-list-header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:2px;display:grid}.scenario-list-header span{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.scenario-list-header strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:18px;line-height:1.12;display:block;overflow:hidden}.scenario-list-header>span{color:var(--foreground);text-align:right;white-space:nowrap;font-size:12px}.scenario-threat-option{text-align:left;background:#fff;border:1px solid #e2e8f0;flex:none;place-content:start stretch;gap:8px;min-height:0;padding:14px;display:grid}.scenario-threat-option:hover,.scenario-threat-option.selected{border-color:var(--accent);background:var(--accent-weak)}.scenario-threat-option span,.scenario-threat-option small{color:#64748b;font-size:12px;font-weight:850}.scenario-threat-option strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;font-size:14px;line-height:1.22}.scenario-threat-option small{color:var(--accent);overflow-wrap:anywhere;white-space:normal;margin-top:6px}.scenario-context{background:var(--accent-weak);border-color:#0f766e3d}.scenario-threat-path{gap:8px;margin:0;display:grid}.scenario-threat-path div{min-width:0}.scenario-threat-path dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 2px;font-size:10px;font-weight:850}.scenario-threat-path dd{color:var(--foreground);overflow-wrap:anywhere;white-space:normal;margin:0;font-size:12px;font-weight:750;line-height:1.32;display:block}.scenario-context-details{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 12px;margin:12px 0 0;display:grid}.scenario-context-details div{min-width:0}.scenario-context-details dt{color:#64748b;letter-spacing:.06em;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:850}.scenario-context-details dd{color:#0f172a;overflow-wrap:anywhere;white-space:normal;margin:0;font-size:13px;font-weight:750;line-height:1.3}.scenario-form label{gap:6px;display:grid}.scenario-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.scenario-actions button{white-space:normal;height:38px;min-height:38px}.scenario-actions button:disabled{cursor:not-allowed;opacity:.48}.scenario-list{max-height:calc((146px * 3) + (var(--workflow-list-gap) * 2));padding-right:4px;overflow:auto}.scenario-item{background:#f8fafc;border:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) 38px;gap:12px;padding:13px;display:grid}.scenario-item strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;min-width:0;margin-top:4px;font-size:14px;line-height:1.25;display:block}.scenario-card-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scenario-source-badge{letter-spacing:.04em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;align-items:center;min-height:20px;padding:3px 8px;font-size:10px;font-weight:850;line-height:1;display:inline-flex}.scenario-source-badge.system{color:#0369a1;background:#0ea5e91f;border-color:#0ea5e957}.scenario-source-badge.ai{color:#0f766e;background:#14b8a624;border-color:#14b8a657}.scenario-source-badge.manual{color:#475569;background:#64748b1f;border-color:#64748b4d}.app-shell.dark-mode .scenario-source-badge.system{color:#bae6fd;background:#0ea5e929;border-color:#38bdf870}.app-shell.dark-mode .scenario-source-badge.ai{color:#99f6e4;background:#14b8a62e;border-color:#2dd4bf70}.app-shell.dark-mode .scenario-source-badge.manual{color:#cbd5e1;background:#94a3b824;border-color:#94a3b857}.scenario-item p{color:#475569;overflow-wrap:anywhere;white-space:normal;margin-top:8px;font-size:13px;line-height:1.38}.scenario-item small{color:var(--accent);margin-top:8px;font-size:12px;font-weight:800;line-height:1.35;display:block}.scenario-item button{color:#b91c1c;align-self:start;width:34px;min-height:34px;padding:0}.initial-risk-workflow{grid-template-columns:minmax(180px,.55fr) minmax(0,.85fr) minmax(280px,1fr);gap:16px;padding:16px;display:grid}.existing-control-workflow{grid-template-columns:minmax(220px,.62fr) minmax(340px,.98fr) minmax(320px,1fr);gap:16px;padding:16px;display:grid}.effectiveness-workflow{grid-template-columns:minmax(120px,.42fr) minmax(340px,.92fr) minmax(340px,1.18fr);gap:18px;padding:16px;display:grid}.residual-risk-workflow{grid-template-columns:minmax(220px,.65fr) minmax(320px,.8fr) minmax(340px,1fr);gap:16px;padding:16px;display:grid}.treatment-workflow,.iso-control-workflow,.approval-workflow{grid-template-columns:minmax(220px,.62fr) minmax(340px,.9fr) minmax(340px,1fr);gap:16px;padding:16px;display:grid}.final-output-workflow{gap:14px;padding:16px;display:grid}.final-export-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.final-export-actions button{min-width:0}.final-export-actions button:disabled{cursor:not-allowed;opacity:.48}.initial-scenario-list,.initial-score-editor,.initial-risk-context,.control-scenario-list,.existing-control-form,.existing-control-list,.effectiveness-control-list,.effectiveness-editor,.effectiveness-context,.residual-scenario-list,.residual-score-editor,.residual-risk-context,.treatment-scenario-list,.treatment-editor,.treatment-action-list,.iso-control-list,.soa-editor,.soa-summary,.approval-scenario-list,.approval-editor,.approval-summary{align-content:start;gap:10px;min-width:0;display:grid}.initial-scenario-option,.control-scenario-option{text-align:left;background:#fff;border:1px solid #e2e8f0;justify-content:stretch;min-height:86px;padding:11px;display:grid}.effectiveness-control-option{text-align:left;background:#fff;border:1px solid #e2e8f0;justify-content:stretch;min-height:98px;padding:11px;display:grid}.effectiveness-control-list{max-height:calc(18px + var(--workflow-list-gap) + (104px * 5) + (var(--workflow-list-gap) * 4) - 1px);padding-right:4px;overflow:auto}.residual-scenario-option,.treatment-scenario-option{text-align:left;background:#fff;border:1px solid #e2e8f0;justify-content:stretch;min-height:86px;padding:11px;display:grid}.iso-control-option{text-align:left;background:#fff;border:1px solid #e2e8f0;justify-content:stretch;min-height:124px;padding:11px;display:grid}.iso-control-list{box-sizing:border-box;max-height:calc(18px + var(--workflow-list-gap) + (124px * 2) + var(--workflow-list-gap) + 9px);padding-right:4px;overflow:hidden auto}.approval-scenario-option{text-align:left;background:#fff;border:1px solid #e2e8f0;justify-content:stretch;min-height:86px;padding:11px;display:grid}.initial-scenario-option:hover,.initial-scenario-option.selected{background:#fff7f7;border-color:#dc2626}.control-scenario-option:hover,.control-scenario-option.selected{background:#f0fdfa;border-color:#0f766e}.effectiveness-control-option:hover,.effectiveness-control-option.selected{background:#eff6ff;border-color:#2563eb}.residual-scenario-option:hover,.residual-scenario-option.selected{background:#fffbeb;border-color:#d97706}.treatment-scenario-option:hover,.treatment-scenario-option.selected{background:#f5f3ff;border-color:#7c3aed}.iso-control-option:hover,.iso-control-option.selected{background:#f0fdfa;border-color:#0f766e}.approval-scenario-option:hover,.approval-scenario-option.selected{background:#eff6ff;border-color:#2563eb}.initial-scenario-option span,.initial-scenario-option small,.control-scenario-option span,.control-scenario-option small,.effectiveness-control-option span,.effectiveness-control-option small,.residual-scenario-option span,.residual-scenario-option small,.treatment-scenario-option span,.treatment-scenario-option small,.iso-control-option span,.iso-control-option small,.approval-scenario-option span,.approval-scenario-option small{color:#64748b;font-size:12px;font-weight:850}.initial-scenario-option strong,.control-scenario-option strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;min-width:0;margin-top:4px;font-size:13px;line-height:1.24;display:block}.effectiveness-control-option strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;margin-top:4px;font-size:13px;line-height:1.24}.residual-scenario-option strong,.treatment-scenario-option strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;min-width:0;margin-top:4px;font-size:13px;line-height:1.24;display:block}.iso-control-option strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:13px;line-height:1.24;overflow:hidden}.approval-scenario-option strong{color:#0f172a;overflow-wrap:anywhere;white-space:normal;min-width:0;margin-top:4px;font-size:13px;line-height:1.24;display:block}.initial-scenario-option small{color:#b91c1c;margin-top:6px}.control-scenario-option small{color:#0f766e;margin-top:6px}.effectiveness-control-option small{color:#2563eb;margin-top:6px}.residual-scenario-option small{color:#92400e;margin-top:6px}.treatment-scenario-option small{color:#6d28d9;margin-top:6px}.iso-control-option small{color:#0f766e;margin-top:6px}.approval-scenario-option small{color:#2563eb;margin-top:6px}.risk-score-card{background:#f8fafc;border:1px solid #e2e8f0;padding:16px}.risk-score-card strong{color:#0f172a;margin-top:8px;font-size:34px;line-height:1;display:block}.risk-score-card p,.score-select p,.initial-risk-context article p{color:#475569;margin-top:8px;font-size:13px;line-height:1.4}.risk-score-card.low{background:#f0fdf4;border-color:#bbf7d0}.risk-score-card.medium{background:#fffbeb;border-color:#fde68a}.risk-score-card.high,.risk-score-card.critical{background:#fff7f7;border-color:#fecaca}.suggested-initial-risk-card{background:#0ea5e914;border:1px solid #0ea5e957;gap:8px;padding:13px;display:grid}.suggested-initial-risk-card span{color:#0369a1;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.suggested-initial-risk-card strong{color:#0f172a;font-size:18px;line-height:1.2}.suggested-initial-risk-card p{color:#475569;margin:0;font-size:13px;line-height:1.4}.suggested-initial-risk-card button{justify-self:start;min-height:34px;padding:0 12px}.score-select{background:#fff;border:1px solid #e2e8f0;gap:7px;padding:12px;display:grid}.initial-risk-actions{grid-template-columns:minmax(160px,1fr) minmax(170px,1fr);gap:10px;display:grid}.initial-risk-actions button{white-space:nowrap;height:38px;min-height:38px}.initial-risk-actions button:disabled{cursor:not-allowed;opacity:.48}.control-context{background:#f0fdfa;border-color:#99f6e4}.existing-control-form label{gap:6px;display:grid}.control-ref-grid,.control-status-grid{grid-template-columns:minmax(160px,1fr) minmax(150px,1fr);gap:10px;display:grid}.control-status-grid span{white-space:nowrap}.control-existing-toggle{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:9px;padding:11px;display:flex}.control-existing-toggle input{flex:none;width:18px;min-height:18px}.control-existing-toggle span{color:#334155;letter-spacing:0;text-transform:none;font-size:13px;font-weight:800}.app-shell.dark-mode .control-existing-toggle{border-color:var(--line);background:#0f172a}.app-shell.dark-mode .control-existing-toggle span{color:#cbd5e1}.app-shell.dark-mode .control-existing-toggle input{accent-color:var(--accent)}.existing-control-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.existing-control-actions button{min-width:0}.existing-control-actions button:disabled{cursor:not-allowed;opacity:.48}.openai-control-candidates{background:#0ea5e912;border:1px solid #0ea5e947;border-radius:8px;gap:10px;padding:12px;display:grid}.openai-control-candidates-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.openai-control-candidates-header div{gap:4px;min-width:0;display:grid}.openai-control-candidates-header span,.openai-control-candidate span{color:#0369a1;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.openai-control-candidates-header strong{color:#0f172a;font-size:14px;line-height:1.25}.openai-control-candidates-header em{color:#0f766e;flex:none;font-size:12px;font-style:normal;font-weight:850}.openai-control-candidate-list{gap:8px;display:grid}.openai-control-candidate{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:11px;display:grid}.openai-control-candidate.selected{background:#ecfeff;border-color:#22d3ee}.openai-control-candidate input{accent-color:#0891b2;width:18px;min-height:18px;margin-top:2px}.openai-control-candidate div{min-width:0}.openai-control-candidate strong{color:#0f172a;overflow-wrap:anywhere;margin-top:5px;font-size:14px;line-height:1.25;display:block}.openai-control-candidate p,.openai-control-candidate small{color:#475569;overflow-wrap:anywhere;margin-top:7px;font-size:13px;line-height:1.38;display:block}.openai-control-candidate small{color:#0f766e;font-weight:800}.app-shell.dark-mode .openai-control-candidates{background:#0ea5e91a;border-color:#22d3ee59}.app-shell.dark-mode .openai-control-candidates-header span,.app-shell.dark-mode .openai-control-candidate span{color:#67e8f9}.app-shell.dark-mode .openai-control-candidates-header strong,.app-shell.dark-mode .openai-control-candidate strong{color:#f8fafc}.app-shell.dark-mode .openai-control-candidates-header em,.app-shell.dark-mode .openai-control-candidate small{color:#5eead4}.app-shell.dark-mode .openai-control-candidate{background:#020817;border-color:#334155}.app-shell.dark-mode .openai-control-candidate.selected{background:#0b2f42;border-color:#22d3ee}.app-shell.dark-mode .openai-control-candidate p{color:#cbd5e1}.existing-control-list{max-height:640px;padding-right:4px;overflow:auto}.existing-control-item{background:#f8fffd;border:1px solid #d1fae5;grid-template-columns:minmax(0,1fr) 38px;gap:12px;padding:13px;display:grid}.existing-control-item strong{color:#0f172a;margin-top:4px;font-size:14px;line-height:1.25;display:block}.existing-control-item p{color:#475569;margin-top:8px;font-size:13px;line-height:1.38}.existing-control-item small{color:#0f766e;margin-top:8px;font-size:12px;font-weight:800;line-height:1.35;display:block}.existing-control-item button{color:#b91c1c;align-self:start;width:34px;min-height:34px;padding:0}.effectiveness-score-card,.residual-score-card{background:#f8fafc;border:1px solid #e2e8f0;padding:16px}.treatment-decision-card{background:#f5f3ff;border:1px solid #ddd6fe;padding:16px}.soa-status-card{background:#f0fdfa;border:1px solid #d1fae5;padding:16px}.approval-decision-card{background:#eff6ff;border:1px solid #bfdbfe;padding:16px}.effectiveness-score-card strong{color:#0f172a;margin-top:8px;font-size:30px;line-height:1;display:block}.residual-score-card strong{color:#0f172a;margin-top:8px;font-size:34px;line-height:1;display:block}.treatment-decision-card strong,.soa-status-card strong,.approval-decision-card strong{color:#0f172a;margin-top:8px;font-size:30px;line-height:1;display:block}.effectiveness-score-card p,.effectiveness-context article p,.residual-score-card p,.residual-risk-context article p,.treatment-decision-card p,.treatment-context p,.soa-status-card p,.soa-summary article p,.approval-decision-card p,.approval-summary article p{color:#475569;margin-top:8px;font-size:13px;line-height:1.4}.effectiveness-score-card.weak{background:#fff7f7;border-color:#fecaca}.effectiveness-score-card.partial{background:#fffbeb;border-color:#fde68a}.effectiveness-score-card.strong,.residual-score-card.low{background:#f0fdf4;border-color:#bbf7d0}.residual-score-card.medium{background:#fffbeb;border-color:#fde68a}.residual-score-card.high,.residual-score-card.critical{background:#fff7f7;border-color:#fecaca}.effectiveness-editor label{gap:6px;display:grid}.effectiveness-actions{grid-template-columns:minmax(140px,.9fr) minmax(185px,1.1fr);gap:10px;display:grid}.effectiveness-actions button{white-space:nowrap;height:38px;min-height:38px}.effectiveness-actions button:disabled{cursor:not-allowed;opacity:.48}.residual-risk-actions{grid-template-columns:1fr;gap:10px;display:grid}.residual-risk-actions button{width:100%}.residual-risk-actions button:disabled{cursor:not-allowed;opacity:.48}.treatment-editor label{gap:6px;display:grid}.treatment-actions{gap:10px;display:flex}.treatment-actions button{flex:1 1 0}.treatment-actions button:disabled,.treatment-editor button:disabled{cursor:not-allowed;opacity:.48}.treatment-form-grid{grid-template-columns:minmax(0,1fr) 150px;gap:10px;display:grid}.treatment-context{background:#f5f3ff;border-color:#ddd6fe}.treatment-action-list{max-height:680px;padding-right:4px;overflow:auto}.treatment-action-item{background:#fbfaff;border:1px solid #ddd6fe;grid-template-columns:minmax(0,1fr) 38px;gap:12px;padding:13px;display:grid}.treatment-action-item strong{color:#0f172a;margin-top:4px;font-size:14px;line-height:1.3;display:block}.treatment-action-item small{color:#6d28d9;margin-top:8px;font-size:12px;font-weight:800;line-height:1.35;display:block}.treatment-action-item button{color:#b91c1c;align-self:start;width:34px;min-height:34px;padding:0}.soa-editor label{gap:6px;display:grid}.soa-actions{gap:10px;display:flex}.soa-actions button{flex:1 1 0}.soa-actions button:disabled{cursor:not-allowed;opacity:.48}.approval-editor label{gap:6px;display:grid}.approval-form-grid{grid-template-columns:minmax(0,1fr) 150px;gap:10px;display:grid}.approval-actions{gap:10px;display:flex}.approval-actions button{flex:1 1 0}.approval-actions button:disabled{cursor:not-allowed;opacity:.48}.effectiveness-context article,.residual-risk-context article,.soa-summary article,.approval-summary article{background:#fff;border:1px solid #e2e8f0;padding:14px}.final-output-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.final-output-summary article{background:#fff;border:1px solid #e2e8f0;padding:14px}.effectiveness-context article strong,.residual-risk-context article strong,.soa-summary article strong,.approval-summary article strong{color:#0f172a;margin-top:6px;font-size:15px;line-height:1.3;display:block}.final-output-summary article strong{color:#0f172a;margin-top:6px;font-size:17px;line-height:1.2;display:block}.final-output-summary article p{color:#475569;margin-top:8px;font-size:13px;line-height:1.4}.final-register-table,.final-soa-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:auto}.final-table-title{color:#0f172a;border-bottom:1px solid #edf2f7;align-items:center;gap:8px;padding:13px 14px;display:flex}.final-table-title svg{color:#0f766e}.final-register-head,.final-register-row{grid-template-columns:72px minmax(300px,1.8fr) 94px 104px 136px 112px;align-items:center;gap:12px;min-width:940px;display:grid}.final-soa-head,.final-soa-row{grid-template-columns:minmax(210px,1.05fr) 132px 120px 150px 118px minmax(300px,1.7fr);align-items:center;gap:12px;min-width:1180px;display:grid}.final-register-head,.final-soa-head{color:#64748b;letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;font-size:11px;font-weight:850}.final-register-row,.final-soa-row{color:#475569;border-top:1px solid #edf2f7;align-items:start;min-height:54px;padding:10px 14px;font-size:13px;line-height:1.35}.final-register-row strong,.final-soa-row strong{color:#0f172a}.soa-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.soa-stats span{color:#0f766e;background:#f0fdfa;border:1px solid #0000;border-radius:8px;place-items:center;min-height:54px;font-size:12px;font-weight:850;display:grid}.soa-stats .applicable{color:#0f766e;background:#ccfbf1;border-color:#99f6e4}.soa-stats .ready{color:#166534;background:#dcfce7;border-color:#bbf7d0}.soa-stats .total{color:#475569;background:#f1f5f9;border-color:#cbd5e1}.residual-matrix{margin-top:0}.effectiveness-meter{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.effectiveness-meter span{border:2px solid #0000;border-radius:8px;place-items:center;min-height:60px;font-size:12px;font-weight:850;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.effectiveness-meter .weak{color:#111827;background:#d95815}.effectiveness-meter .weak.active{border-color:#f97316;transform:translateY(-1px);box-shadow:0 0 0 3px #d9581538}.effectiveness-meter .partial{color:#111827;background:#d69d0b}.effectiveness-meter .partial.active{border-color:#facc15;transform:translateY(-1px);box-shadow:0 0 0 3px #d69d0b38}.effectiveness-meter .strong{color:#111827;background:#559427}.effectiveness-meter .strong.active{border-color:#68b52e;transform:translateY(-1px);box-shadow:0 0 0 3px #55942738}.initial-risk-context article{background:#fff;border:1px solid #e2e8f0;padding:14px}.initial-risk-context article strong{color:#0f172a;margin-top:6px;font-size:15px;line-height:1.3;display:block}.score-matrix{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:10px;display:grid}.score-cell{border-radius:6px;min-height:42px;padding:0;font-size:12px;font-weight:850}.score-cell.low{color:#111827;background:#559427}.score-cell.score-1,.score-cell.score-2{color:#fff;background:#015524;border-color:#015524}.score-cell.medium{color:#111827;background:#d69d0b}.score-cell.high{color:#111827;background:#d95815}.score-cell.critical{color:#fff;background:#b90717}.score-cell.selected{outline-offset:1px;outline:3px solid #0f172a}.trace-panel{overflow:hidden}.trace-chain{gap:8px;padding:16px;overflow:auto}.trace-node{flex:none;align-items:center;gap:8px;display:flex}.trace-card{box-sizing:border-box;background:linear-gradient(#fff 0%,#f8fafc 100%);border:1px solid #e2e8f0;width:156px;min-height:86px;padding:12px}.trace-card span{color:#64748b;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.trace-card strong{color:#111827;margin-top:9px;font-size:13px;line-height:1.24;display:block}.trace-arrow{color:#94a3b8;flex:none}.analysis-grid{grid-template-columns:minmax(0,1.35fr) minmax(288px,.65fr);gap:14px;display:grid}.chart-wrap{height:240px;padding:6px 12px 12px}.gauge-layout{align-items:center;gap:8px;min-height:240px;padding:0 16px 8px}.gauge-copy strong{color:#0f172a;font-size:32px;line-height:1;display:block}.gauge-copy span{color:#d97706;margin-top:8px;font-size:13px;font-weight:800;display:block}.gauge-copy p{color:#64748b;margin-top:10px;font-size:13px;line-height:1.45}.register-table{padding:8px 14px 14px;overflow:auto}.register-head,.register-row{grid-template-columns:70px 1.1fr 1.45fr 86px 88px 94px;align-items:center;gap:12px;min-width:850px;display:grid}.register-head{color:#64748b;letter-spacing:.06em;text-transform:uppercase;padding:8px 10px;font-size:11px;font-weight:850}.register-row{color:#475569;border-top:1px solid #edf2f7;min-height:48px;padding:0 10px;font-size:13px}.register-row strong{color:#0f172a}.risk-pill{border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-width:66px;height:26px;font-size:12px;font-weight:850;display:inline-flex}.risk-pill.high{color:#b91c1c;background:#fee2e2}.risk-pill.medium{color:#92400e;background:#fef3c7}.risk-pill.low{color:#0f766e;background:#ccfbf1}.risk-pill.critical{color:#991b1b;background:#fee2e2}.risk-pill.pending{color:#475569;background:#e5e7eb}.register-empty-state{margin:8px 10px 0}.asset-panel,.control-panel,.evidence-panel{overflow:hidden}.asset-facts{gap:14px;margin:0;padding:16px;display:grid}.asset-facts dt{color:#64748b;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-weight:850}.asset-facts dd{color:#111827;margin:0;font-size:13px;line-height:1.35}.unsaved-inline{color:#92400e;letter-spacing:.04em;text-transform:uppercase;background:#fffbeb;border-radius:999px;margin-left:8px;padding:2px 6px;font-size:10px;font-weight:850;display:inline-flex}.control-list,.evidence-list{gap:10px;padding:14px;display:grid}.control-list{box-sizing:border-box;max-height:295px;padding-top:8px;overflow:hidden auto}.evidence-upload{grid-template-columns:minmax(0,1fr);gap:10px;padding:14px 14px 0;display:grid}.evidence-upload label{gap:6px;width:100%;min-width:0;display:grid}.evidence-upload label,.evidence-title-input,.evidence-file-input,.evidence-upload button{grid-column:1/-1}.evidence-upload input,.evidence-upload select,.evidence-upload textarea{width:100%;min-width:0}.evidence-upload span{color:#475569;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.evidence-file-input{cursor:pointer;position:relative}.evidence-upload .evidence-native-file-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;min-height:1px;padding:0;position:absolute;overflow:hidden}.evidence-file-button{color:#0f172a;letter-spacing:0;text-transform:none;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:38px;font-size:13px;font-weight:750;display:flex}.evidence-file-input:focus-within .evidence-file-button{border-color:#14b8a6;outline:3px solid #14b8a624}.evidence-file-name{color:#334155;letter-spacing:0;text-overflow:ellipsis;text-transform:none;white-space:nowrap;min-height:18px;font-size:12px;font-weight:700;display:block;overflow:hidden}.evidence-file-name.empty{color:#94a3b8;font-weight:650}.evidence-upload textarea{resize:vertical;min-height:78px}.control-item{background:#f8fafc;border:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;min-height:124px;padding:12px;display:grid}.control-item strong{color:#0f766e;background:#ccfbf1;border-radius:6px;justify-content:center;align-items:center;min-width:40px;height:24px;margin-right:8px;font-size:12px;display:inline-flex}.control-item span{color:#0f172a;font-size:13px;font-weight:750}.control-item p,.control-item small,.evidence-item small{font-weight:800}.control-item p{color:#0f766e}.control-item small{color:#64748b;grid-column:1/-1}.evidence-item{background:#fff;border:1px solid #e2e8f0;align-items:flex-start;gap:10px;padding:12px}.evidence-item svg{color:#0f766e;flex:none;margin-top:2px}.evidence-item div{flex:auto;min-width:0}.evidence-item strong{color:#0f172a;font-size:13px;line-height:1.25;display:block}.evidence-item span{color:#64748b;margin-top:4px;display:block}.evidence-item small{color:#d97706}.evidence-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:6px;min-width:112px;display:flex}.evidence-actions a,.evidence-actions button{color:#0f172a;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:12px;font-weight:850;text-decoration:none;display:inline-flex}.evidence-actions button{cursor:pointer}@media (width<=1180px){.app-shell{grid-template-columns:1fr}.process-rail{height:auto;position:static}.step-list{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.work-grid{flex-direction:column}.side-column{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.access-add-grid{grid-template-columns:minmax(220px,1.2fr) minmax(190px,.95fr) minmax(170px,.75fr) max-content}.asset-result{grid-template-columns:minmax(280px,1fr) minmax(390px,.82fr)}.asset-result:not(.selected){grid-template-columns:minmax(280px,1fr) max-content}.asset-result-cia{grid-template-columns:repeat(3,max-content)}.asset-result-actions{justify-content:flex-end}.dashboard-operating-grid,.portal-hero{grid-template-columns:1fr}}@media (width<=820px){.workspace{padding:16px}.portal-page{min-height:auto;padding:0}.portal-hero{gap:24px;padding:24px}.portal-header-row{flex-direction:column;align-items:flex-start}.portal-title-row h2{font-size:26px}.portal-logo,.portal-logo img{width:64px;height:64px}.portal-launch-grid,.portal-flow{grid-template-columns:1fr}.portal-workbench-card{flex-direction:column;align-items:flex-start}.topbar,.topbar-actions,.location-banner,.status-row,.management-summary-row,.dashboard-grid,.dashboard-command-card,.dashboard-operating-grid,.admin-test-grid,.admin-openai-form,.admin-model-select-row,.step-local-actions,.assessment-manager,.validation-gate,.analysis-grid,.side-column,.asset-workflow,.vulnerability-screen-layout,.vulnerability-asset-column,.vulnerability-workflow,.vulnerability-form-grid,.threat-screen-layout,.threat-vulnerability-column,.threat-workflow,.scenario-screen-layout,.scenario-threat-column,.scenario-build-column,.scenario-workflow,.initial-risk-workflow,.existing-control-workflow,.effectiveness-workflow,.residual-risk-workflow,.treatment-workflow,.iso-control-workflow,.approval-workflow,.final-output-summary,.final-export-actions,.control-ref-grid,.control-status-grid,.existing-control-actions,.treatment-form-grid,.approval-form-grid{grid-template-columns:1fr;display:grid}.scenario-workflow{overflow:visible}.scenario-threat-column,.scenario-build-column,.scenario-threat-list,.scenario-form,.scenario-list-shell,.scenario-list{width:100%;min-width:0;max-width:100%}.scenario-threat-list{overflow:visible;max-height:none!important}.scenario-threat-option{box-sizing:border-box;width:100%;min-width:0}.scenario-list-header{align-items:start}.scenario-list-header strong,.scenario-list-header>span{overflow-wrap:anywhere;white-space:normal}.scenario-threat-option span,.scenario-threat-option strong,.scenario-threat-path dd{overflow-wrap:anywhere;word-break:normal;white-space:normal}.location-banner{align-items:start}.location-next{text-align:left;justify-self:stretch;max-width:none}.status-row.compact{grid-template-columns:1fr;justify-content:stretch}.status-chip{box-sizing:border-box;width:100%}.vulnerability-screen-layout,.vulnerability-asset-column,.vulnerability-workflow,.vulnerability-form,.vulnerability-list-shell,.vulnerability-asset-queue,.threat-screen-layout,.threat-vulnerability-column,.threat-workflow,.threat-form,.threat-list-shell,.threat-vulnerability-list{min-width:0}.vulnerability-asset-queue{grid-template-columns:minmax(0,1fr)}.vulnerability-asset-queue .asset-queue-item{grid-template-columns:56px minmax(0,1fr);min-width:0}.vulnerability-asset-queue .asset-queue-cia{text-align:left;grid-column:2;justify-self:start}.vulnerability-active-asset-details{grid-template-columns:1fr}.vulnerability-list-header{align-items:start}.asset-filters{grid-template-columns:minmax(0,1fr) minmax(150px,.55fr) max-content;gap:8px}.access-summary,.access-panel-header{grid-template-columns:1fr;display:grid}.access-summary-actions{flex-wrap:wrap;justify-content:start}.access-session-card,.access-table-row,.access-add-grid,.app-entitlements-table .access-table-row{grid-template-columns:1fr}.access-session-card:after,.access-table-head{display:none}.access-table-row button,.access-add-grid .primary-action{justify-self:start}.dashboard-command-card{display:grid}.dashboard-shortcut-grid{grid-template-columns:1fr}.validation-gate ul{min-width:0}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.step-list{grid-template-columns:1fr}.gauge-layout{justify-content:flex-start}:root{--visible-vulnerability-card-list-height:calc((190px * 3) + (var(--workflow-list-gap) * 2))}}@media (width<=560px){.summary-grid,.asset-filters{grid-template-columns:1fr}.asset-filters button{width:100%}.asset-result,.asset-result.selected,.asset-result:not(.selected){grid-template-columns:minmax(0,1fr)}.asset-result-main,.asset-result.selected .asset-result-main,.asset-result:not(.selected) .asset-result-main,.asset-result-description,.asset-result.selected .asset-result-description,.asset-result-cia,.asset-result-actions,.asset-result:not(.selected) .asset-result-actions{grid-area:auto/1}.asset-result-cia{grid-template-columns:max-content;justify-content:start;justify-self:stretch;width:auto}.asset-result-description{margin-left:66px}.asset-result-actions{justify-content:flex-start}.vulnerability-screen-layout,.threat-screen-layout{padding-left:12px;padding-right:12px}.vulnerability-workflow,.threat-workflow{padding-left:0;padding-right:0}.threat-active-vulnerability-details{grid-template-columns:1fr}.vulnerability-list-header,.threat-list-header{grid-template-columns:1fr;display:grid}.vulnerability-list-header>span,.threat-list-header>span{text-align:left}.vulnerability-form-grid{grid-template-columns:1fr}}.rail-status{display:none}.rail-status span{color:var(--muted)}.rail-status strong{color:var(--foreground)}.asset-result,.asset-scope-row,.asset-queue-item,.vulnerability-item,.threat-item,.threat-vulnerability-option,.scenario-item,.scenario-threat-option,.initial-scenario-option,.control-scenario-option,.effectiveness-control-option,.residual-scenario-option,.treatment-scenario-option,.iso-control-option,.approval-scenario-option,.existing-control-item,.treatment-action-item,.effectiveness-score-card,.residual-score-card,.treatment-decision-card,.soa-status-card,.approval-decision-card,.effectiveness-context article,.residual-risk-context article,.soa-summary article,.approval-summary article,.final-output-summary article,.risk-score-card,.initial-risk-context article,.selected-asset-callout,.need-select,.score-select,.output-row,.register-row,.soa-row,.evidence-item,.trace-card,.control-item,.asset-panel,.control-panel,.evidence-panel{border-color:var(--line);background:var(--background);color:var(--foreground);box-shadow:none}.asset-result.selected,.asset-scope-row.active,.asset-queue-item.active,.vulnerability-item.selected,.threat-vulnerability-option.selected,.scenario-threat-option.selected,.initial-scenario-option.selected,.control-scenario-option.selected,.effectiveness-control-option.selected,.residual-scenario-option.selected,.treatment-scenario-option.selected,.iso-control-option.selected,.approval-scenario-option.selected,.score-select.selected{border-color:var(--accent);background:var(--accent-weak);color:var(--foreground)}.asset-result p,.vulnerability-item p,.threat-item p,.scenario-item p,.existing-control-item p,.treatment-action-item p,.selected-asset-callout p,.score-select p,.trace-card p,.control-item p,.evidence-item p,.output-row p,.register-row p,.soa-row p{color:var(--muted)}.asset-result strong,.asset-scope-row strong,.asset-queue-title strong,.asset-queue-item strong,.vulnerability-item strong,.threat-item strong,.scenario-item strong,.threat-vulnerability-option strong,.scenario-threat-option strong,.initial-scenario-option strong,.control-scenario-option strong,.effectiveness-control-option strong,.residual-scenario-option strong,.treatment-scenario-option strong,.iso-control-option strong,.approval-scenario-option strong,.existing-control-item strong,.treatment-action-item strong{font-size:13px;line-height:1.24}.asset-result p,.asset-result-description,.vulnerability-item p,.threat-item p,.scenario-item p,.existing-control-item p,.treatment-action-item p{font-size:12px;line-height:1.4}.asset-result span,.asset-scope-row span,.asset-queue-item span,.vulnerability-item span,.threat-item span,.scenario-item span,.threat-vulnerability-option span,.scenario-threat-option span,.initial-scenario-option span,.control-scenario-option span,.effectiveness-control-option span,.residual-scenario-option span,.treatment-scenario-option span,.iso-control-option span,.approval-scenario-option span,.existing-control-item span,.treatment-action-item span{font-size:12px;font-weight:850;line-height:1.2}.asset-result small,.asset-queue-item small,.vulnerability-item small,.threat-item small,.scenario-item small,.threat-vulnerability-option small,.scenario-threat-option small,.initial-scenario-option small,.control-scenario-option small,.effectiveness-control-option small,.residual-scenario-option small,.treatment-scenario-option small,.iso-control-option small,.approval-scenario-option small,.existing-control-item small,.treatment-action-item small{font-size:12px;font-weight:750;line-height:1.35}.need-value-select.low{color:#111827;background:#559427}.need-value-select.medium{color:#111827;background:#d69d0b}.need-value-select.high{color:#111827;background:#d95815}.need-value-select.critical{color:#fff;background:#b90717}.asset-result strong,.asset-scope-row strong,.asset-queue-title strong,.asset-queue-item strong,.vulnerability-item strong,.threat-item strong,.scenario-item strong,.existing-control-item strong,.treatment-action-item strong,.selected-asset-callout strong,.risk-score-card strong,.output-row strong,.register-row strong,.soa-row strong{color:var(--foreground)}.asset-result span,.asset-scope-row span,.asset-queue-title,.asset-queue-item span,.asset-queue-item small,.vulnerability-item span,.threat-item span,.scenario-item span,.existing-control-item span,.treatment-action-item span,.asset-facts dt,.score-select span,.trace-card span,.control-item span,.evidence-item span{color:var(--muted)}.vulnerability-item button,.threat-item button,.scenario-item button,.existing-control-item button,.treatment-action-item button,.asset-maintenance-actions button,.evidence-actions button{background:var(--background);color:var(--muted)}.app-shell.dark-mode .step-item{color:#d1d5db;background:0 0;border-color:#0000}.app-shell.dark-mode .step-item:hover,.app-shell.dark-mode .step-item.viewing{color:#ececec;background:#2f2f2f}.app-shell.dark-mode .step-item.next{color:#d1d5db}.app-shell.dark-mode .step-number{color:#b4b4b4}.app-shell.dark-mode .step-icon{background:0 0}.app-shell.dark-mode .step-item.complete .step-icon{color:currentColor;background:0 0}.app-shell.dark-mode .step-item.current-progress .step-icon{color:var(--accent);background:0 0}.app-shell .process-rail .step-item,.app-shell .process-rail .step-item:hover,.app-shell .process-rail .step-item:focus,.app-shell .process-rail .step-item:focus-visible{box-shadow:none}.app-shell .process-rail .step-item{background:0 0;border-color:#0000;min-height:36px;padding:8px 12px}.app-shell .process-rail .step-item:hover{color:#171717;background:#e8e8e8;border-color:#0000}.app-shell .process-rail .step-item.viewing{color:#171717;background:#e3e3e3;border-color:#0000}.app-shell .process-rail .step-item.current-progress:not(.viewing){color:#3f3f46;background:0 0;border-color:#0000}.app-shell .process-rail .step-item .step-label{font-weight:400}.app-shell .process-rail .step-item .step-icon{color:currentColor;width:16px;height:16px}.app-shell .process-rail .step-item .step-icon svg{width:16px;height:16px}.app-shell .process-rail .step-item .step-number{color:#5d5d5d}.app-shell.dark-mode .process-rail .step-item{color:#d1d5db;background:0 0;border-color:#0000}.app-shell.dark-mode .process-rail .step-item:hover{color:#f8fafc;background:#212121;border-color:#0000}.app-shell.dark-mode .process-rail .step-item.viewing{color:#ececec;background:#2f2f2f;border-color:#0000}.app-shell.dark-mode .process-rail .step-item.current-progress:not(.viewing){color:#d1d5db;background:0 0;border-color:#0000}.app-shell.dark-mode .process-rail .step-item.current-progress:not(.viewing) .step-label:after{color:var(--accent);background:#38bdf81f;border-color:#38bdf847}.app-shell.dark-mode .process-rail .step-item .step-number{color:#b4b4b4}.app-shell.dark-mode .rail-status,.app-shell.dark-mode .asset-result,.app-shell.dark-mode .asset-scope-row,.app-shell.dark-mode .asset-queue-item,.app-shell.dark-mode .vulnerability-item,.app-shell.dark-mode .threat-item,.app-shell.dark-mode .threat-vulnerability-option,.app-shell.dark-mode .scenario-item,.app-shell.dark-mode .scenario-threat-option,.app-shell.dark-mode .initial-scenario-option,.app-shell.dark-mode .control-scenario-option,.app-shell.dark-mode .effectiveness-control-option,.app-shell.dark-mode .residual-scenario-option,.app-shell.dark-mode .treatment-scenario-option,.app-shell.dark-mode .iso-control-option,.app-shell.dark-mode .approval-scenario-option,.app-shell.dark-mode .existing-control-item,.app-shell.dark-mode .treatment-action-item,.app-shell.dark-mode .effectiveness-score-card,.app-shell.dark-mode .residual-score-card,.app-shell.dark-mode .treatment-decision-card,.app-shell.dark-mode .soa-status-card,.app-shell.dark-mode .approval-decision-card,.app-shell.dark-mode .effectiveness-context article,.app-shell.dark-mode .residual-risk-context article,.app-shell.dark-mode .soa-summary article,.app-shell.dark-mode .approval-summary article,.app-shell.dark-mode .final-output-summary article,.app-shell.dark-mode .risk-score-card,.app-shell.dark-mode .initial-risk-context article,.app-shell.dark-mode .selected-asset-callout,.app-shell.dark-mode .asset-editor,.app-shell.dark-mode .need-select,.app-shell.dark-mode .score-select,.app-shell.dark-mode .output-row,.app-shell.dark-mode .register-row,.app-shell.dark-mode .soa-row,.app-shell.dark-mode .evidence-item,.app-shell.dark-mode .trace-card,.app-shell.dark-mode .control-item,.app-shell.dark-mode .asset-panel,.app-shell.dark-mode .control-panel,.app-shell.dark-mode .evidence-panel,.app-shell.dark-mode .vulnerability-asset-queue,.app-shell.dark-mode .threat-vulnerability-list{border-color:var(--line);background:var(--background)}.app-shell.dark-mode .asset-editor-header strong{color:var(--foreground)}.app-shell.dark-mode .asset-result.selected,.app-shell.dark-mode .asset-scope-row.active,.app-shell.dark-mode .asset-queue-item.active,.app-shell.dark-mode .vulnerability-asset-queue .asset-queue-item.active,.app-shell.dark-mode .vulnerability-item.selected,.app-shell.dark-mode .threat-vulnerability-option.selected,.app-shell.dark-mode .scenario-threat-option.selected,.app-shell.dark-mode .initial-scenario-option.selected,.app-shell.dark-mode .control-scenario-option.selected,.app-shell.dark-mode .effectiveness-control-option.selected,.app-shell.dark-mode .residual-scenario-option.selected,.app-shell.dark-mode .treatment-scenario-option.selected,.app-shell.dark-mode .iso-control-option.selected,.app-shell.dark-mode .approval-scenario-option.selected,.app-shell.dark-mode .score-select.selected{border-color:var(--accent);background:var(--accent-weak)}.app-shell.dark-mode .asset-queue-item.missing-vulnerabilities{background:linear-gradient(90deg, #d9581529, transparent 44%), var(--background);border-color:#d95815bd}.app-shell.dark-mode .asset-queue-item.active.missing-vulnerabilities,.app-shell.dark-mode .vulnerability-asset-queue .asset-queue-item.active.missing-vulnerabilities{background:linear-gradient(90deg, #d9581533, #38bdf814), var(--background);border-color:#d95815e6;box-shadow:inset 3px 0 #d95815}.app-shell.dark-mode .need-value-select.low{color:#111827;background:#559427}.app-shell.dark-mode .need-value-select.medium{color:#111827;background:#d69d0b}.app-shell.dark-mode .need-value-select.high{color:#111827;background:#d95815}.app-shell.dark-mode .need-value-select.critical{color:#fff;background:#b90717}.app-shell.dark-mode .inline-need-select{background:0 0;border:0}.app-shell.dark-mode .need-select{border:0}.app-shell .empty-state,.app-shell.dark-mode .empty-state{border-color:var(--line);background:var(--panel-muted);color:var(--muted)}.app-shell .effectiveness-meter span,.app-shell.dark-mode .effectiveness-meter span{color:#000}.app-shell.dark-mode .soa-stats .applicable{color:#bae6fd;background:#38bdf824;border-color:#38bdf859}.app-shell.dark-mode .soa-stats .ready{color:#bbf7d0;background:#55942738;border-color:#5594278c}.app-shell.dark-mode .soa-stats .total{color:#cbd5e1;background:#0f172a;border-color:#94a3b852}.app-shell.dark-mode .final-register-table,.app-shell.dark-mode .final-soa-table{border-color:var(--line);background:#0f172a}.app-shell.dark-mode .final-table-title{border-bottom-color:var(--line);color:var(--foreground);background:#111c2e}.app-shell.dark-mode .final-table-title strong{color:var(--foreground)}.app-shell.dark-mode .final-register-head,.app-shell.dark-mode .final-soa-head{border-bottom:1px solid var(--line);color:var(--muted);background:#132034}.app-shell.dark-mode .final-register-row,.app-shell.dark-mode .final-soa-row{border-top-color:var(--line);color:#cbd5e1;background:#0f172a}.app-shell.dark-mode .final-register-row strong,.app-shell.dark-mode .final-soa-row strong{color:var(--foreground)}.app-shell.dark-mode .score-matrix{background:#000;border-color:#f8fafc29}.app-shell.dark-mode .score-cell.low{color:#111827;background:#559427;border-color:#559427}.app-shell.dark-mode .score-cell.score-1,.app-shell.dark-mode .score-cell.score-2{color:#fff;background:#015524;border-color:#015524}.app-shell.dark-mode .score-cell.medium{color:#111827;background:#d69d0b;border-color:#d69d0b}.app-shell.dark-mode .score-cell.high{color:#111827;background:#d95815;border-color:#d95815}.app-shell.dark-mode .score-cell.critical{color:#fff;background:#b90717;border-color:#b90717}.app-shell.dark-mode .score-cell:hover{filter:brightness(1.04)}.app-shell.dark-mode .score-cell.selected{outline-offset:1px;outline:3px solid #f8fafc;box-shadow:0 0 0 5px #0f172a73}@media (width<=1180px){.introduction-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.introduction-page{min-height:auto;padding:0}.introduction-shell{min-height:auto}.introduction-grid{grid-template-columns:1fr;gap:24px;padding:24px}.introduction-title-row{align-items:flex-start}.introduction-title-row h2{font-size:26px}.introduction-logo,.introduction-logo img{width:64px;height:64px}.introduction-flow{grid-template-columns:1fr}}@media print{.process-rail,.topbar-actions,.final-export-actions,.asset-workflow-panel,.vulnerability-panel,.threat-panel,.scenario-panel,.initial-risk-panel,.existing-control-panel,.effectiveness-panel,.residual-risk-panel,.treatment-panel,.iso-control-panel,.approval-panel,.trace-panel,.analysis-grid,.side-column{display:none}.app-shell,.workspace,.work-grid,.main-column{background:#fff;min-height:auto;padding:0;display:block}.panel{box-shadow:none;break-inside:avoid}.final-register-table,.final-soa-table{overflow:visible}}
