:root{color:#172124;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#172124;--muted:#687477;--muted-strong:#4c5a5d;--line:#dfe5e3;--line-strong:#cad4d1;--surface:#fff;--surface-soft:#f7f9f8;--canvas:#f3f5f4;--sidebar:#173f42;--sidebar-deep:#102f32;--teal:#176f68;--teal-dark:#125953;--teal-soft:#e4f2ef;--amber:#a66c0b;--amber-soft:#fff2d7;--red:#b53b3b;--red-dark:#943030;--red-soft:#fbe9e7;--blue:#3268a8;--blue-soft:#e9f1fb;--green:#2f7b59;--green-soft:#e7f4ec;--purple:#6d4aad;--purple-soft:#efe9fb;--orange:#b8560f;--orange-soft:#fbeadd;--shadow:0 8px 24px #152a2b12;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--text-display:24px;--text-title:15px;--text-body:13px;--text-secondary:12px;--text-meta:11px;--text-label:10px;--text-metric:26px;--weight-regular:450;--weight-medium:550;--weight-semibold:640;--weight-strong:680;--radius-sm:4px;--radius:6px;--radius-lg:10px;--shadow-pop:0 6px 20px #152a2b1a;--shadow-modal:0 20px 60px #0e1f2033;--surface-raised:#fff;--surface-hover:#176f680d;--surface-muted:#6874771f;--focus-ring:0 0 0 3px #176f681f;--ease-out:cubic-bezier(.22, .61, .36, 1);--dur-fast:.12s;--dur-mid:.16s;background:#f3f5f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box;letter-spacing:0}html{background:var(--canvas);min-width:320px}body{background:var(--canvas);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{color:var(--ink);font-size:28px;font-weight:720;line-height:1.2}h2{color:var(--ink);font-size:16px;font-weight:700;line-height:1.3}small{color:var(--muted)}table{border-collapse:collapse;width:100%}th{padding:var(--space-3) var(--space-4);color:var(--muted);background:var(--surface-soft);border-bottom:1px solid var(--line);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap}td{padding:var(--space-3) var(--space-4);color:#384548;font-size:var(--text-body);vertical-align:middle;border-bottom:1px solid #e8ecea}td.mono,td .mono{font-variant-numeric:tabular-nums}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfc}tbody tr.empty-table-row:hover{background:0 0}.empty-table-row td{padding:0}td strong,td small{display:block}td strong{color:var(--ink);font-weight:650}td small{margin-top:3px;font-size:11px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px}.multiselect{display:inline-flex;position:relative}.multiselect-trigger{border:1px solid var(--line-strong);background:var(--surface);min-width:140px;color:var(--ink);cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;font-size:12px;display:inline-flex}.multiselect-trigger.active{border-color:var(--teal);color:var(--teal)}.multiselect-menu{z-index:20;background:var(--surface);border:1px solid var(--line-strong);min-width:100%;max-height:260px;box-shadow:var(--shadow);border-radius:8px;flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.multiselect-option{color:var(--ink);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.multiselect-option:hover{background:var(--surface-soft)}.multiselect-check{width:14px;color:var(--teal);flex-shrink:0;display:inline-flex}tr.clickable-row{cursor:pointer}tr.clickable-row:hover{background:var(--surface-soft)}.app-shell{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:30;color:#d7e4e2;background:var(--sidebar);border-right:1px solid #234b4e;flex-direction:column;width:232px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:var(--space-3);height:60px;padding:0 var(--space-4);border-bottom:1px solid #ffffff14;display:flex}.brand-mark{color:#dff5ef;border-radius:var(--radius-sm);background:#235c61;border:1px solid #ffffff1f;place-items:center;width:30px;height:30px;display:grid}.brand>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.brand strong{color:#fff;font-size:var(--text-body);font-weight:var(--weight-semibold);letter-spacing:.01em;line-height:1.2}.brand small{color:#8fabaa;font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase;margin-top:1px}.primary-nav{padding:var(--space-4) var(--space-2);flex-direction:column;gap:1px;display:flex}.nav-section-label{padding:var(--space-2) var(--space-3) var(--space-2);color:#7f9b9a;font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.07em;text-transform:uppercase}.nav-link{align-items:center;gap:var(--space-3);min-height:36px;padding:0 var(--space-3);color:#a9bfbe;border-radius:var(--radius-sm);font-size:var(--text-body);font-weight:var(--weight-medium);transition:color var(--dur-fast) ease, background var(--dur-fast) ease;display:flex;position:relative}.nav-link svg{color:#7f9b9a;transition:color var(--dur-fast) ease}.nav-link:hover{color:#fff;background:#ffffff0d}.nav-link:hover svg{color:#bdd4d2}.nav-link.active{color:#fff;font-weight:var(--weight-semibold);background:#7dd4c51f}.nav-link.active:before{content:"";background:#7dd4c5;border-radius:0 2px 2px 0;width:3px;height:18px;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}.nav-link.active svg{color:#7dd4c5}.sidebar-footer{padding:var(--space-3);border-top:1px solid #ffffff14;margin-top:auto}.security-state{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:#07191b47;border:1px solid #ffffff12;display:flex}.status-dot{border-radius:50%;flex:none;width:7px;height:7px;margin-top:4px}.status-dot.healthy{background:#5ed19d;box-shadow:0 0 0 3px #5ed19d24}.security-state div{flex-direction:column;min-width:0;display:flex}.security-state strong{color:#e3efec;font-size:var(--text-meta);font-weight:var(--weight-semibold)}.security-state small{color:#86a4a2;font-size:var(--text-label);margin-top:2px;line-height:1.4}.build-label{padding:var(--space-3) var(--space-1) 0;color:#6f8d8b;font-size:var(--text-label);letter-spacing:.03em;display:block}.app-main{grid-column:2;min-width:0}.topbar{z-index:20;align-items:center;gap:var(--space-4);height:60px;padding:0 var(--space-6);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;display:flex;position:sticky;top:0}.topbar-search{align-items:center;gap:var(--space-2);width:min(420px,42vw);height:34px;padding:0 var(--space-3);color:#7b8788;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);transition:border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;display:flex}.topbar-search:focus-within{box-shadow:var(--focus-ring);border-color:#78aaa5}.topbar-search input{min-width:0;color:var(--ink);font-size:var(--text-secondary);background:0 0;border:0;outline:0;flex:1}.topbar-search kbd{color:#879192;background:var(--surface);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-label);white-space:nowrap;border:1px solid #dce2e0;padding:2px 6px}.topbar-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.icon-button{color:#647274;border-radius:var(--radius-sm);width:34px;height:34px;transition:color var(--dur-fast) ease, background var(--dur-fast) ease;background:0 0;border:1px solid #0000;flex:none;place-items:center;padding:0;display:inline-grid}.icon-button:hover{color:var(--ink);background:var(--surface-soft)}.icon-button:focus-visible{box-shadow:var(--focus-ring);outline:none}.notification-button{position:relative}.notification-dot{background:var(--red);border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:6px;right:6px}.demo-role-switcher{align-items:center;gap:var(--space-2);height:34px;padding:0 var(--space-2);color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-label);display:flex}.demo-role-switcher select{color:var(--ink);font-size:var(--text-meta);font-weight:var(--weight-semibold);background:0 0;border:0;outline:0}.profile-menu{position:relative}.profile-trigger{align-items:center;gap:var(--space-2);min-width:0;height:40px;padding:var(--space-1) var(--space-2);color:inherit;border-radius:var(--radius);transition:background var(--dur-fast) ease, border-color var(--dur-fast) ease;background:0 0;border:1px solid #0000;display:flex}.profile-trigger:hover{background:var(--surface-soft);border-color:var(--line)}.profile-trigger:focus-visible{box-shadow:var(--focus-ring);outline:none}.profile-copy{text-align:left;flex-direction:column;min-width:0;display:flex}.profile-copy strong{color:var(--ink);font-size:var(--text-meta);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-copy small{color:var(--muted);font-size:var(--text-label);margin-top:1px}.avatar{text-align:center;color:#235557;width:30px;height:30px;line-height:28px;font-size:var(--text-label);font-weight:var(--weight-strong);-webkit-user-select:none;user-select:none;vertical-align:middle;background:#d9ece8;border:1px solid #c2dcda;border-radius:50%;flex:0 0 30px;display:inline-block}.avatar-small{flex:0 0 26px;width:26px;height:26px;font-size:9px;line-height:24px}.profile-popover{top:calc(100% + var(--space-2));z-index:40;width:244px;padding:var(--space-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop);position:absolute;right:0}.profile-popover-user{gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-3);border-bottom:1px solid var(--line);display:flex}.profile-popover-user div{min-width:0}.profile-popover-user strong,.profile-popover-user span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile-popover-user strong{font-size:var(--text-secondary);font-weight:var(--weight-semibold)}.profile-popover-user span{color:var(--muted);font-size:var(--text-meta);margin-top:3px}.profile-popover-user .profile-role{margin-top:var(--space-2);background:var(--surface-muted);color:var(--muted);font-size:9px;font-weight:var(--weight-semibold);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:1px 8px;display:inline-block}.profile-popover>button{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);color:var(--muted-strong);border-radius:var(--radius-sm);font-size:var(--text-meta);text-align:left;transition:color var(--dur-fast) ease, background var(--dur-fast) ease;background:0 0;border:0;margin-top:3px;display:flex}.profile-popover>button:hover{color:var(--ink);background:var(--surface-soft)}.profile-popover>button.logout-action{color:var(--red)}.profile-popover>button.logout-action:hover{background:var(--red-soft)}.content{width:min(1520px,100%);min-height:calc(100vh - 60px);padding:var(--space-6) var(--space-8) var(--space-10);margin:0 auto}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-6);min-height:52px;margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--line);display:flex}.page-header>div:first-child{min-width:0}.page-header h1{font-size:var(--text-display);font-weight:var(--weight-strong);letter-spacing:-.01em}.page-header p{max-width:680px;margin-top:var(--space-2);color:var(--muted);font-size:var(--text-secondary);line-height:1.55}.eyebrow,.panel-kicker{margin-bottom:var(--space-1);color:#7c8a8c;font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase;display:block}.page-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-meta);font-weight:var(--weight-strong);white-space:nowrap;transition:background var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease;border:1px solid #0000;display:inline-flex}.button:focus-visible{box-shadow:var(--focus-ring);outline:none}.button.primary{color:#fff;background:var(--teal);border-color:var(--teal)}.button.primary:hover{background:var(--teal-dark);border-color:var(--teal-dark)}.button.secondary{color:#3e4d50;background:var(--surface);border-color:var(--line-strong)}.button.secondary:hover{background:var(--surface-soft);border-color:#b7c4c1}.button.danger{color:#fff;background:var(--red);border-color:var(--red)}.button.danger:hover{background:var(--red-dark);border-color:var(--red-dark)}.button.compact{min-height:30px;padding:0 var(--space-2);font-size:var(--text-label)}.danger-text{color:var(--red)!important}.text-link{color:var(--teal);align-items:center;gap:5px;font-size:11px;font-weight:680;display:inline-flex}.text-link:hover{color:var(--teal-dark)}.inline-alert{border-radius:var(--radius);border:1px solid;align-items:center;gap:9px;min-height:42px;margin-bottom:18px;padding:9px 12px;font-size:11px;display:flex}.inline-alert.warning{color:#76500f;background:var(--amber-soft);border-color:#eed59f}.inline-alert.info{color:#315c69;background:#ecf5f6;border-color:#cfe2e4}.data-state-banner{justify-content:space-between}.data-state-banner>span{flex:1;min-width:0}.ops-strip{margin-bottom:var(--space-5);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.ops-stat{gap:var(--space-2);padding:var(--space-4) var(--space-5);color:inherit;border-left:1px solid var(--line);transition:background var(--dur-fast) ease;flex-direction:column;text-decoration:none;display:flex;position:relative}.ops-stat:first-child{border-left:0}.ops-stat:hover{background:var(--surface-soft)}.ops-stat:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.ops-stat-head{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-meta);font-weight:var(--weight-medium);display:inline-flex}.ops-stat-head svg{color:var(--muted)}.ops-stat-value{color:var(--ink);font-size:var(--text-metric);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;line-height:1}.ops-stat-value em{color:var(--muted);font-size:var(--text-body);font-style:normal;font-weight:var(--weight-regular);margin-left:4px}.ops-stat-note{color:var(--muted);font-size:var(--text-label)}.ops-stat--critical:before,.ops-stat--attention:before{content:"";width:3px;position:absolute;top:0;bottom:0;left:0}.ops-stat--critical:before{background:var(--red)}.ops-stat--critical .ops-stat-value,.ops-stat--critical .ops-stat-head svg{color:var(--red)}.ops-stat--critical .ops-stat-head{color:var(--red-dark)}.ops-stat--attention:before{background:var(--amber)}.ops-stat--attention .ops-stat-value,.ops-stat--attention .ops-stat-head svg{color:var(--amber)}.ops-stat--attention .ops-stat-head{color:#855709}.metrics-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric{min-height:108px;padding:var(--space-4);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex}a.metric-link{color:inherit;transition:border-color var(--dur-fast) ease, background var(--dur-fast) ease;text-decoration:none}a.metric-link:hover{background:var(--surface-soft);border-color:#b7c4c1}a.metric-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.metric-heading{color:var(--muted);font-size:var(--text-meta);font-weight:var(--weight-medium);justify-content:space-between;align-items:center;display:flex}.metric-heading svg{color:#9aa7a8}.metric-teal .metric-heading svg{color:var(--teal)}.metric-amber .metric-heading svg{color:var(--amber)}.metric-red .metric-heading svg{color:var(--red)}.metric-blue .metric-heading svg{color:var(--blue)}.metric-green .metric-heading svg{color:var(--green)}.metric>strong{padding-top:var(--space-3);color:var(--ink);font-size:var(--text-metric);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;margin-top:auto;line-height:1;display:block}.metric>small{margin-top:var(--space-2);color:var(--muted);font-size:var(--text-label);display:block}.panel{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius)}.panel-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);min-height:54px;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.panel-header>div:first-child{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.panel-header h2{font-size:var(--text-title);font-weight:var(--weight-semibold);word-break:break-word}.dashboard-grid{gap:var(--space-4);grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);display:grid}.workflow-meta{color:var(--muted-strong);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:18px;padding:12px 16px;font-size:10px;display:flex}.workflow-meta span,.workflow-meta a{align-items:center;gap:6px;display:inline-flex}.workflow-meta a.meta-link{color:inherit;text-decoration:none}.workflow-meta a.meta-link:hover{color:var(--teal);text-decoration:underline}.title-link{color:inherit;text-decoration:none}.title-link:hover{text-decoration:underline}.workflow{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));padding:26px 14px 22px;display:grid;overflow-x:auto}.workflow-step{text-align:center;flex-direction:column;align-items:center;min-width:82px;display:flex;position:relative}.workflow-step:before{content:"";background:#dce3e1;width:50%;height:2px;position:absolute;top:17px;left:0}.workflow-step:after{content:"";background:#dce3e1;width:50%;height:2px;position:absolute;top:17px;right:0}.workflow-step:first-child:before,.workflow-step:last-child:after{display:none}.workflow-step.complete:before,.workflow-step.complete:after,.workflow-step.current:before{background:#5ba49b}.workflow-step>span{z-index:1;color:#7c8989;background:#f0f3f2;border:2px solid #d7dfdd;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:35px;display:flex;position:relative;overflow:hidden}.workflow-step.complete>span{color:#fff;background:var(--teal);border-color:var(--teal)}.workflow-step.current>span{color:#885b09;background:var(--amber-soft);border-color:#d7a74e;animation:1.6s ease-in-out infinite workflow-step-pulse}@keyframes workflow-step-pulse{0%,to{box-shadow:0 0 0 3px #c68e261a}50%{box-shadow:0 0 0 7px #c68e2638}}.workflow-step.failed>span{color:var(--red);background:var(--red-soft);border-color:var(--red)}.workflow-step strong{color:#405053;white-space:nowrap;margin-top:8px;font-size:10px}.workflow-step small{margin-top:2px;font-size:8px}.scan-complete-badge{background:var(--green-soft);color:var(--green);white-space:nowrap;border-radius:20px;flex-wrap:nowrap;align-items:center;gap:5px;padding:3px 9px;font-size:10px;font-weight:600;display:inline-flex}.scan-source-breakdown{align-items:center;gap:4px;margin-left:2px;display:inline-flex}.scan-source-breakdown span{border-radius:var(--radius-lg);background:#00000012;padding:1px 6px;font-size:9px;font-weight:500}.workflow-footer{border-top:1px solid var(--line);background:#fafbfb;justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:12px 16px;display:flex}.automation-message{min-width:0;color:var(--teal);align-items:flex-start;gap:10px;display:flex}.automation-message div{min-width:0}.automation-message strong,.automation-message span{display:block}.automation-message strong{color:#344547;font-size:10px}.automation-message span{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.4}.approval-icon,.project-icon,.evidence-icon{color:var(--teal);background:var(--teal-soft);border-radius:var(--radius);place-items:center;display:grid}.approval-icon{width:36px;height:36px}.approval-icon.stalled{color:var(--red);background:var(--red-soft)}.approval-summary{padding:13px 16px 5px}.approval-summary>div,.detail-list>div{border-bottom:1px solid #edf0ef;justify-content:space-between;align-items:center;gap:12px;min-height:37px;display:flex}.approval-summary>div:last-child,.detail-list>div:last-child{border-bottom:0}.approval-summary span,.detail-list span{color:var(--muted);font-size:10px}.approval-summary strong,.detail-list strong{color:var(--ink);text-align:right;align-items:center;gap:5px;font-size:10px;display:inline-flex}.approval-summary div:first-child strong,.healthy-copy{color:var(--green)!important}.risk-note{color:#755313;background:var(--amber-soft);border-radius:var(--radius-sm);border:1px solid #efd9a9;align-items:flex-start;gap:8px;margin:10px 16px;padding:9px 10px;font-size:9px;line-height:1.45;display:flex}.approval-actions{grid-template-columns:1fr 1fr;gap:8px;padding:4px 16px 16px;display:grid}.approval-history-hint{color:var(--muted);margin:4px 16px 0;font-size:11px}.waiting-reviewer{color:#76500f;background:var(--amber-soft);border-radius:var(--radius-sm);border:1px solid #efd9a9;align-items:center;gap:8px;min-height:42px;margin:10px 16px 16px;padding:10px;font-size:10px;display:flex}.dashboard-bottom{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);display:grid}.table-wrap{width:100%;overflow-x:auto}.findings-preview .table-wrap{overflow:hidden}.findings-preview table{table-layout:fixed;width:100%;min-width:0}.findings-preview th,.findings-preview td{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.findings-preview th:first-child,.findings-preview td:first-child{width:90px}.findings-preview th:nth-child(2),.findings-preview td:nth-child(2){width:28%}.findings-preview th:nth-child(3),.findings-preview td:nth-child(3){width:24%}.findings-preview th:nth-child(4),.findings-preview td:nth-child(4){width:auto}.findings-preview th:nth-child(5),.findings-preview td:nth-child(5){width:92px}.findings-preview td strong,.findings-preview td small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-breakdown{flex-wrap:wrap;gap:6px;padding:2px 16px 12px;display:flex}.tool-chip{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted-strong);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;text-decoration:none;transition:border-color .15s,background .15s;display:inline-flex}.tool-chip:hover{border-color:var(--teal);background:var(--teal-soft)}.tool-chip strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:11px}.activity-feed{min-width:0}.activity-list{padding:4px 16px 10px}.activity-item{min-height:57px;color:inherit;cursor:pointer;border-bottom:1px solid #edf0ef;align-items:center;gap:10px;margin:0 -16px;padding:0 16px;text-decoration:none;transition:background .12s;display:flex}.activity-item:hover{background:var(--teal-soft)}.activity-item:last-child{border-bottom:0}.activity-symbol,.audit-icon{border-radius:50%;flex:none;place-items:center;display:grid}.activity-symbol svg,.audit-icon svg{display:block}.activity-item .activity-symbol{place-items:center;width:32px;height:32px;display:grid}.actor-n8n{color:#315e78;background:#e5f0f7}.actor-rejected{color:var(--red);background:var(--red-soft)}.actor-user{color:var(--teal);background:var(--teal-soft)}.actor-system{color:#775b21;background:#f7efd9}.activity-item div{min-width:0}.activity-item strong,.activity-item span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.activity-item strong{color:#334245;font-size:12px}.activity-item span{color:var(--muted);margin-top:2px;font-size:10.5px}.running-list{padding:4px 16px 10px}.running-item{min-height:57px;color:inherit;cursor:pointer;border-bottom:1px solid #edf0ef;align-items:center;gap:10px;margin:0 -16px;padding:8px 16px;text-decoration:none;transition:background .12s;display:flex}.running-item:hover{background:var(--teal-soft)}.running-item:last-child{border-bottom:0}.running-item-body{flex:1;min-width:0}.running-item-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.running-item-name{text-overflow:ellipsis;white-space:nowrap;color:#334245;min-width:0;font-size:12px;font-weight:600;overflow:hidden}.running-item-meta{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);margin-top:2px;font-size:10.5px;display:block;overflow:hidden}.badge,.severity,.finding-status,.scope-label,.active-user{border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;min-height:22px;padding:0 8px;font-size:9px;font-weight:750;display:inline-flex}.status-draft{color:#5f696b;background:#edf0ef}.status-ready,.status-recon,.status-scanning{color:#22615d;background:var(--teal-soft);border-color:#cbe4df}.priority-body{flex-direction:column;gap:16px;padding:16px;display:flex}.priority-status-row{align-items:center;gap:28px;display:flex}.priority-stat{align-items:center;gap:10px;display:flex}.priority-stat--progress,.priority-stat--progress .progress-cell{flex:1;min-width:0}.priority-stat-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:10px;font-weight:650}.priority-findings{flex-direction:column;gap:8px;display:flex}.workflow-panel{flex-direction:column;display:flex}.workflow-panel .workflow-footer{margin-top:0}.status-waiting_approval{color:#80550a;background:var(--amber-soft);border-color:#efd8a4}.status-exploit_approved,.status-exploiting{color:#285f43;background:var(--green-soft);border-color:#cce4d4}.status-reporting{color:#315c86;background:var(--blue-soft);border-color:#cfdff2}.status-completed{color:#39714e;background:#e7f3eb}.status-killed,.status-failed{color:#963434;background:var(--red-soft);border-color:#f0cbc7}.severity-critical{color:#fff;background:#a93232}.severity-high{color:#9a3d2e;background:#f8e4df;border-color:#eac7bf}.severity-medium{color:#805709;background:var(--amber-soft);border-color:#ebd19c}.severity-low{color:#356a87;background:#e9f2f7;border-color:#cfdee8}.severity-info{color:#5c6668;background:#edf0ef}.finding-open{color:#455457;background:#eef1f0;border-color:#dbe2e0}.finding-triaged{color:#805709;background:var(--amber-soft)}.finding-fixed{color:#2e6d4a;background:var(--green-soft)}.finding-accepted_risk,.finding-false_positive{color:#576466;background:#edf0ef}.toolbar{align-items:center;gap:10px;min-height:48px;margin-bottom:13px;display:flex}.search-field{color:#798486;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);align-items:center;gap:8px;width:min(390px,100%);height:36px;padding:0 10px;display:flex}.search-field:focus-within{border-color:#78aaa5;box-shadow:0 0 0 3px #176f6814}.search-field input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:11px}.select-control,.status-select,.role-select{color:#3f4d50;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);outline:0;height:34px;font-size:10px}.select-control{margin-left:auto;padding:0 28px 0 10px}.status-select,.role-select{min-width:126px;padding:0 7px}.filter-chip{height:34px;color:var(--teal);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:640;display:inline-flex}.filter-chip:hover{border-color:var(--teal)}.row-link{color:inherit}.row-link:hover{color:var(--teal);text-decoration:underline}.eyebrow-link{color:inherit}.eyebrow-link:hover{color:var(--teal)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;min-height:228px;padding:16px;display:flex}.project-card:hover{box-shadow:var(--shadow);border-color:#b9cbc7}.project-card-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.project-icon{width:38px;height:38px}.client-name{color:var(--teal);text-transform:uppercase;font-size:9px;font-weight:750}.project-card h2{margin-top:5px;font-size:15px}.project-card p{color:var(--muted);margin-top:8px;font-size:10px;line-height:1.55}.project-stats{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:17px;font-size:9px;display:flex}.project-stats strong{color:var(--ink)}.project-link{color:var(--teal);border-top:1px solid var(--line);background:#fafcfc;border-radius:0 0 6px 6px;justify-content:space-between;align-items:center;margin:12px -16px -16px;padding:11px 16px;font-size:10px;font-weight:680;display:flex}.table-panel{overflow:hidden}.table-panel table{table-layout:auto;width:100%}.table-panel th:nth-child(2),.table-panel td:nth-child(2),.table-panel th:nth-child(4),.table-panel td:nth-child(4),.table-panel th:nth-child(6),.table-panel td:nth-child(6){white-space:nowrap;width:1%}.table-panel th:nth-child(3),.table-panel td:nth-child(3){white-space:nowrap;width:150px}.table-panel th:nth-child(5),.table-panel td:nth-child(5){white-space:nowrap;width:1%}.table-panel th:first-child,.table-panel td:first-child{width:auto;min-width:140px;max-width:0;overflow:hidden}.stage-label{color:var(--ink);white-space:nowrap;font-size:12px}.table-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:680;display:block;overflow:hidden}.table-title:hover{color:var(--teal)}.table-panel td:first-child small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.avatar-stack{display:flex}.avatar-stack .avatar{border:2px solid #fff;margin-left:-6px}.avatar-stack .avatar:first-child{margin-left:0}.progress-cell{align-items:center;gap:7px;width:140px;display:flex}.progress-cell-bar{border-radius:var(--radius-sm);background:#e6ebe9;flex:1;height:5px;position:relative;overflow:hidden}.progress-cell-bar>span{background:var(--teal);border-radius:var(--radius-sm);position:absolute;inset:0 auto 0 0}.progress-cell small{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:9px}.detail-breadcrumb{color:var(--muted);align-items:center;gap:7px;margin-bottom:15px;font-size:10px;display:flex}.detail-breadcrumb button{color:var(--teal);background:0 0;border:0;padding:0}.detail-layout{grid-template-columns:minmax(0,1fr) 310px;gap:15px;display:grid}.detail-main,.detail-side{flex-direction:column;gap:15px;min-width:0;display:flex}.percentage{color:var(--teal);font-size:17px;font-weight:750}.target-list{padding:2px 16px 10px}.target-row{border-bottom:1px solid #edf0ef;align-items:center;gap:10px;min-height:55px;display:flex}.target-row:last-child{border-bottom:0}.scope-indicator{border-radius:var(--radius-sm);flex:none;place-items:center;width:31px;height:31px;display:grid}.scope-indicator.in-scope{color:var(--green);background:var(--green-soft)}.scope-indicator.out-scope{color:#788284;background:#edf0ef}.target-row>div:not(.target-actions){flex:1;min-width:0}.target-row strong,.target-row small{overflow-wrap:anywhere;display:block}.target-row strong{color:var(--ink)}.target-row small{margin-top:3px;font-size:9px}.scope-label{color:var(--green);background:var(--green-soft)}.target-check-status{color:var(--muted);flex-direction:column;align-items:flex-start;gap:4px;margin-top:-6px;display:flex}.target-check-line{align-items:flex-start;gap:5px;display:flex}.target-check-line svg{flex-shrink:0;margin-top:2px}.target-check-status span{overflow-wrap:anywhere}.target-check-status code{overflow-wrap:anywhere;font-size:11px}.target-check-ok{color:var(--green)}.target-check-warn{color:var(--amber)}.target-check-error{color:var(--red)}.scope-label.muted{color:#687477;background:#edf0ef}.target-actions{flex:none;align-items:center;gap:6px;margin-left:auto;display:flex}.target-actions .icon-button{opacity:.45;justify-content:center;align-items:center;width:26px;height:26px;transition:opacity .15s;display:flex}.target-actions .icon-button:hover{opacity:1}.full-width{width:100%}.checkbox-label{cursor:pointer;align-items:center;gap:8px;flex-direction:row!important;font-size:11px!important;display:flex!important}.checkbox-label input[type=checkbox]{width:auto!important}.scan-target-picker{flex-direction:column;gap:4px;padding:18px 18px 0;display:flex}.scan-target-picker-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.scan-target-picker-head strong{font-size:13px}.scan-target-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);cursor:pointer;align-items:center;gap:9px;padding:7px 10px;display:flex}.scan-target-row input[type=checkbox]{flex-shrink:0;width:auto}.scan-target-row .mono{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}.scan-target-row small{color:var(--muted);flex-shrink:0}.scan-target-empty{color:var(--muted);padding:4px 2px;font-size:12px}.scan-type-grid{flex-direction:column;gap:7px;padding:18px 18px 4px;display:flex}.scan-type-option{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-soft);cursor:pointer;text-align:left;align-items:center;gap:13px;width:100%;padding:13px 14px;transition:border-color .12s,background .12s,box-shadow .12s;display:flex}.scan-type-option:hover:not(:disabled){border-color:var(--teal);background:var(--teal-soft)}.scan-type-option.selected{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 3px #176f681a}.scan-type-option:disabled{opacity:.5;cursor:not-allowed}.scan-type-icon{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);width:34px;height:34px;color:var(--teal);flex:none;justify-content:center;align-items:center;display:flex}.scan-type-option.selected .scan-type-icon{background:var(--teal);border-color:var(--teal);color:#fff}.scan-type-option div{flex:1;min-width:0}.scan-type-option strong{color:var(--ink);margin-bottom:2px;font-size:12px;display:block}.scan-type-option small{color:var(--muted);font-size:10px;line-height:1.4;display:block}.scan-type-check{color:var(--teal);flex:none}.progress-message{color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-soft);align-items:center;gap:8px;padding:8px 16px;font-size:11px;line-height:1.4;display:flex}.progress-bar{background:#e2e7e6;border-radius:99px;height:4px;margin:12px 16px 10px;overflow:hidden}.progress-bar span{background:linear-gradient(90deg,#0d9474,#0abfa0);border-radius:99px;height:100%;transition:width .5s;display:block}.progress-bar--active{position:relative}.progress-bar--active:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000);border-radius:99px;animation:1.4s ease-in-out infinite progress-bar-sheen;position:absolute;inset:0}@keyframes progress-bar-sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}.tool-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.tool-badge--k6{background:var(--blue-soft);color:var(--blue)}.tool-badge--sqlmap{background:var(--amber-soft);color:var(--amber)}.context-hint{background:var(--teal-soft);border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:var(--radius-lg);color:var(--teal-dark);align-items:flex-start;gap:11px;margin-bottom:16px;padding:14px 16px;display:flex}.context-hint svg{color:var(--teal);flex-shrink:0;margin-top:2px}.context-hint strong{color:var(--ink);margin-bottom:4px;font-size:13px;font-weight:680;display:block}.context-hint span{color:var(--teal-dark);font-size:11.5px;line-height:1.55}.context-hint--warn{background:var(--amber-soft);border-left-color:var(--amber)}.context-hint--warn svg{color:var(--amber)}.context-hint--warn span{color:#7a520c}.th-sort{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:4px;margin:0;padding:0;display:inline-flex}.th-sort:hover{color:var(--ink)}.th-sort .sort-icon{opacity:.35;flex:none}.th-sort .sort-icon.active{opacity:1;color:var(--teal)}.findings-chip{border-radius:var(--radius-lg);background:var(--surface-soft);border:1px solid var(--line);min-width:22px;height:20px;color:var(--ink);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:600;display:inline-flex}.avatar-more{background:var(--surface-soft);min-width:22px;height:22px;color:var(--muted-strong);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;margin-left:-6px;padding:0 5px;font-size:10px;font-weight:600;display:inline-flex}.date-overdue{color:var(--red);font-weight:600}.summary-metrics{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 16px 16px;display:grid}.summary-metric{text-align:center;flex-direction:column;gap:2px;display:flex}.summary-metric-value{color:var(--ink);font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.summary-metric-label{color:var(--muted);font-size:10px;line-height:1.2}.table-panel tbody tr{height:62px}.table-panel .filler-row td{border-bottom-color:#0000}.roe-status-badge{align-items:center;gap:6px;font-size:12px;display:inline-flex}.roe-status-badge .status-dot{margin-top:0}.coverage-chips,.scan-tool-badges{flex-wrap:wrap;gap:5px;display:inline-flex}.coverage-chip{border-radius:var(--radius);background:var(--surface-soft);border:1px solid var(--line);color:var(--muted-strong);padding:2px 7px;font-size:10px;font-weight:600}.scan-tool-badge{border-radius:var(--radius);text-transform:uppercase;border:1px solid var(--line);padding:2px 7px;font-size:10px;font-weight:700}.scan-tool-badge.done{background:var(--teal-soft);color:var(--teal-dark);border-color:#0000}.scan-tool-badge.failed{background:var(--red-soft);color:var(--red);border-color:#0000}.scan-tool-badge.pending{background:var(--surface-soft);color:var(--muted-strong)}.table-panel table.table-fixed{table-layout:fixed}.table-panel table.table-fixed th,.table-panel table.table-fixed td{word-break:break-word;overflow-wrap:anywhere}.roe-document-field{flex-direction:column;gap:6px;display:flex}.roe-document-current{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.roe-document-current small{color:var(--muted)}.path-discovery-actions{flex-wrap:wrap;gap:8px;display:flex}.roe-form-hint{color:var(--muted);margin:2px 0 8px;font-size:12px;line-height:1.4}.tool-badge--zap{background:var(--red-soft);color:var(--red)}.tool-badge--ffuf{background:var(--green-soft);color:var(--green)}.tool-badge--tls{background:var(--purple-soft,#ede9fe);color:var(--purple,#7c3aed)}.tool-badge--trivy{background:var(--orange-soft,#fff7ed);color:var(--orange,#c2410c)}.panel-accordion-header{transition:background .15s}.panel-accordion-header:hover{background:var(--surface-hover,#00000008);border-radius:10px 10px 0 0}.panel-collapsed .panel-accordion-header{border-radius:var(--radius-lg)}.panel-notif-badge{background:var(--amber-soft,#fff3cd);color:var(--amber,#b45309);letter-spacing:.02em;border-radius:99px;align-items:center;gap:3px;padding:2px 7px;font-size:10px;font-weight:600;animation:1.8s ease-in-out infinite notif-pulse;display:inline-flex}@keyframes notif-pulse{0%,to{opacity:1}50%{opacity:.65}}.live-indicator{letter-spacing:.01em;font-variant-numeric:tabular-nums;border-radius:99px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.live-indicator-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.live-indicator--online{color:#dcfce7;background:#166534}.live-indicator--online .live-indicator-dot{background:#4ade80;animation:1.8s ease-in-out infinite notif-pulse}.live-indicator--stale{color:#fef3c7;background:#b45309}.live-indicator--stale .live-indicator-dot{background:#fbbf24}.live-indicator--connecting{color:#e2e8f0;background:#475569}.live-indicator--connecting .live-indicator-dot{background:#cbd5e1;animation:1.4s ease-in-out infinite notif-pulse}.tool-status-badge{letter-spacing:.03em;text-transform:uppercase;border-radius:99px;align-items:center;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.tool-status-badge--active{color:#dbeafe;background:#1d4ed8;animation:1.8s ease-in-out infinite notif-pulse}.tool-status-badge--done{color:#bbf7d0;background:#166534}.tool-status-badge--empty{color:#f1f5f9;background:#475569}.tool-status-badge--queued{color:#ede9fe;background:#6d4aad}.tool-status-badge--failed{color:#fee2e2;background:#b91c1c}.tool-finding-count{color:#ccfbf1;background:#0f766e;border-radius:99px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.progress-message--collapsed{opacity:.75;border-top:none;margin-top:-4px;padding:6px 20px 8px;font-size:12px}.tool-badge--nuclei{background:var(--teal-soft);color:var(--teal);text-transform:none;font-weight:500}.findings-filters{flex-direction:column;gap:8px;padding:10px 16px 0;display:flex}.findings-search{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);padding:6px 10px;font-size:13px}.findings-filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.findings-filter-row select{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);cursor:pointer;padding:5px 8px;font-size:12px}.findings-count{margin-left:auto;font-size:12px}.finding-title-cell,.finding-asset-cell{white-space:nowrap;text-overflow:ellipsis;max-width:280px;display:block;overflow:hidden}.findings-pagination{border-top:1px solid var(--line);justify-content:center;align-items:center;gap:12px;padding:12px 16px;font-size:13px;display:flex}.findings-empty-with-history{background:var(--amber-soft,#fdf3e3);border:1px solid var(--amber,#b8862f);border-radius:var(--radius-lg);color:var(--amber,#8a5a1e);align-items:center;gap:6px;margin:10px 16px 0;padding:8px 11px;font-size:12px;line-height:1.4;display:flex}.findings-empty-with-history svg{flex:none}.findings-snapshot-history{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);margin:16px;overflow:hidden}.findings-snapshot-history summary{cursor:pointer;color:var(--ink);background:var(--surface-soft,#f5f6f6);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:11px 14px;font-size:13px;font-weight:650;list-style:none;display:flex}.findings-snapshot-history summary::-webkit-details-marker{display:none}.findings-snapshot-history summary svg{color:var(--muted);flex:none}.findings-snapshot-history summary:after{content:"›";color:var(--muted);margin-left:auto;font-size:18px;transition:transform .16s}.findings-snapshot-history[open] summary:after{transform:rotate(90deg)}.findings-snapshot-count{background:var(--line);color:var(--muted-strong);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.findings-snapshot-explainer{border-bottom:1px solid var(--line);color:var(--muted);margin:0;padding:10px 14px;font-size:11px;line-height:1.5}.findings-snapshot-history>ul{flex-direction:column;gap:6px;margin:0;padding:10px 14px;list-style:none;display:flex}.findings-snapshot-row{background:var(--surface-soft,#f5f6f6);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:left;cursor:pointer;align-items:center;gap:8px;width:100%;padding:8px 10px;display:flex}.findings-snapshot-row strong{font-size:12px;display:block}.findings-snapshot-row small{margin-top:2px;font-size:11px;display:block}.snapshot-chevron{color:var(--muted);flex:none;transition:transform .12s}.snapshot-chevron.open{transform:rotate(180deg)}.findings-snapshot-detail{padding:6px 10px 2px 32px}.findings-snapshot-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.findings-snapshot-list li{border-bottom:1px dashed var(--line);align-items:center;gap:8px;padding:4px 0;font-size:12px;display:flex}.findings-snapshot-list li:last-child{border-bottom:none}.findings-snapshot-list li small{flex:none;margin-left:auto}.roe-card,.decision-card{overflow:hidden}.roe-tool-scope{border-top:1px solid var(--line);padding:4px 16px 14px}.roe-tool-scope-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:10px 0 8px;font-size:10px;font-weight:600;display:block}.roe-tool-chips{flex-wrap:wrap;gap:6px;display:flex}.roe-tool-chip{border:1px solid var(--line);border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;line-height:1.4;display:inline-flex}.roe-tool-chip strong{font-weight:600}.roe-tool-chip small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.roe-tool-chip.on{background:var(--green-soft,#e6f4ea);color:var(--green,#2e7d46);border-color:#0000}.roe-tool-chip.on strong{color:var(--ink)}.roe-tool-chip.off{background:var(--surface-soft);color:var(--muted);opacity:.7}.roe-history{border-top:1px solid var(--line);padding:0 16px 14px}.roe-history summary{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);cursor:pointer;padding:11px 0 3px;font-size:10px;font-weight:600}.roe-history ol{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.roe-history li{border-left:2px solid var(--line);padding-left:9px}.roe-history li.pinned{border-left-color:var(--green,#2e7d46)}.roe-history-head{flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.roe-history-head span{color:var(--muted)}.roe-history-pin{background:var(--green-soft,#e6f4ea);color:var(--green,#2e7d46);border-radius:999px;padding:1px 7px;font-size:10px}.roe-history li small{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:10px;display:block}.detail-list{padding:5px 16px 12px}.decision-card>p{color:var(--muted);padding:14px 16px 3px;font-size:10px;line-height:1.55}.vertical-actions{flex-direction:column;gap:7px;padding:13px 16px 16px;display:flex}.member-list{padding:4px 16px 10px}.member-list>div{border-bottom:1px solid #edf0ef;align-items:center;gap:9px;min-height:48px;display:flex}.member-list>div:last-child{border-bottom:0}.member-list strong,.member-list span{display:block}.member-list strong{color:var(--ink);font-size:10px}.tool-panel-header{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:78px;padding:16px 18px;display:grid}.tool-panel-spacer{grid-column:1}.tool-panel-title{text-align:center;flex-direction:column;grid-column:2;align-items:center;gap:6px;display:flex}.tool-panel-title h2{margin:0}.tool-panel-controls{grid-column:3;justify-self:end;align-items:center;gap:10px;display:flex}.tool-panel-footer{border-top:1px solid var(--line);justify-content:center;margin:8px 18px 0;padding:16px 0;display:flex}.tool-detail-btn{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--teal);cursor:pointer;align-items:center;gap:6px;padding:7px 14px;font-size:11px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.tool-detail-btn:hover{background:var(--teal-soft);border-color:#a9cdc8}.tool-detail-btn svg{flex-shrink:0}.scan-detail-modal{flex-direction:column;gap:24px;padding:22px 26px 26px;display:flex}.scan-detail-summary{flex-wrap:wrap;gap:8px;display:flex}.scan-detail-block{flex-direction:column;gap:10px;display:flex}.scan-detail-block p{color:var(--muted-strong);margin:0;font-size:13px;line-height:1.65}.scan-detail-modal .detail-section-label{letter-spacing:.06em;color:var(--muted);margin-bottom:0;font-size:11px}.scan-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.scan-stat{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:6px;padding:13px 15px;display:flex}.scan-stat span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.scan-stat strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:16px;line-height:1.2}.scan-detail-sev{flex-wrap:wrap;gap:10px;display:flex}.scan-detail-sev>span{background:var(--surface-soft);border:1px solid var(--line);border-radius:99px;align-items:center;gap:8px;padding:7px 13px;display:inline-flex}.scan-detail-sev>span>strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:14px}.scan-detail-modal .recommendation-box{border-radius:var(--radius-lg);border:1px solid var(--line);border-left:3px solid var(--teal);margin:0;padding:16px 18px}.scan-detail-modal .recommendation-box strong{letter-spacing:.02em;font-size:12px}.scan-detail-modal .recommendation-box span{color:var(--muted-strong);margin-top:7px;font-size:12px;line-height:1.6}.member-list .member-remove{color:var(--muted);flex:none;margin-left:auto}.member-list .member-remove:hover{color:var(--red)}.member-list span{color:var(--muted);margin-top:2px;font-size:9px}.mini-stats{padding:7px 16px}.mini-stats>div{min-height:36px;color:var(--teal);border-bottom:1px solid #edf0ef;align-items:center;gap:9px;display:flex}.mini-stats>div:last-child{border-bottom:0}.mini-stats>.mini-stats-severity{align-items:unset;padding:9px 0 12px;display:block}.mini-stats-severity-label{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin-bottom:7px;font-size:10px;display:block}.severity-mini-list{flex-direction:column;gap:5px;display:flex}.severity-mini-row{color:var(--ink);align-items:center;gap:7px;font-size:11px;text-decoration:none;display:flex}.severity-mini-row:hover .severity-mini-name{color:var(--teal);text-decoration:underline}.severity-mini-row strong{margin-left:auto}.severity-mini-name{color:var(--muted-strong);letter-spacing:.02em;font-weight:600}.severity-mini-empty{color:var(--green);align-items:center;gap:6px;font-size:11px;display:flex}.mini-stats span{color:var(--muted);font-size:10px}.mini-stats strong{color:var(--ink)}.severity-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:13px;display:grid}.severity-summary button,.severity-summary a{min-width:0;min-height:54px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.severity-summary--compact{gap:7px;margin-bottom:0}.severity-summary--compact a{gap:6px;min-height:46px;padding:7px 10px}.severity-summary--compact a>strong{font-size:15px}.severity-summary button:hover,.severity-summary button.active,.severity-summary a:hover{border-color:#8cb5b0;box-shadow:inset 0 0 0 1px #8cb5b0}.severity-summary button>strong,.severity-summary a>strong{font-size:18px}.evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.evidence-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:12px;min-height:82px;padding:13px;display:flex}.evidence-card:hover{border-color:#b8cac7}.evidence-icon{flex:none;width:42px;height:42px}.evidence-copy{flex:1;min-width:0}.evidence-copy strong,.evidence-copy span,.evidence-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.evidence-copy strong{color:var(--ink);font-size:11px}.evidence-copy span{color:var(--muted-strong);margin-top:4px;font-size:9px}.evidence-copy small{margin-top:3px;font-size:8px}.evidence-security{color:var(--green);align-items:center;gap:5px;font-size:9px;font-weight:650;display:flex}.segmented{border-radius:var(--radius);background:#e8edeb;padding:3px;display:inline-flex}.segmented button{color:#617073;border-radius:var(--radius-sm);background:0 0;border:0;min-height:29px;padding:0 11px;font-size:10px;font-weight:650}.segmented button.active{color:var(--ink);background:var(--surface);box-shadow:0 1px 3px #162b2c1a}.toolbar>.button:last-child{margin-left:auto}.panel-count{color:var(--muted);font-size:10px;font-weight:650}.portfolio-layout,.operations-layout,.review-layout,.evidence-workspace,.audit-layout,.users-layout,.integration-layout{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:15px;display:grid}.side-stack{flex-direction:column;gap:15px;min-width:0;display:flex}.risk-chip{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 9px;font-size:10px;font-weight:750;display:inline-flex}.risk-chip.teal{color:var(--teal-dark);background:var(--teal-soft)}.risk-chip.green{color:var(--green);background:var(--green-soft)}.risk-chip.blue{color:var(--blue);background:var(--blue-soft)}.risk-chip.amber{color:var(--amber);background:var(--amber-soft)}.risk-chip.red{color:var(--red);background:var(--red-soft)}.risk-chip.purple{color:var(--purple);background:var(--purple-soft)}.risk-chip.orange{color:var(--orange);background:var(--orange-soft)}.portfolio-health,.integration-state-list,.deadline-list,.filter-stack,.check-list,.permission-matrix,.flow-diagram{padding:13px 16px 16px}.health-row{grid-template-columns:64px minmax(0,1fr) 28px;align-items:center;gap:10px;min-height:39px;display:grid}.health-row span,.filter-stack span{color:var(--muted);font-size:10px}.health-row strong{color:var(--muted-strong);text-align:right;font-size:10px}.health-track{background:#edf1ef;border-radius:999px;height:8px;overflow:hidden}.health-track>span{border-radius:inherit;height:100%;display:block}.fill-red,.health-track .fill-red{background:var(--red)}.fill-amber,.health-track .fill-amber{background:var(--amber)}.fill-blue,.health-track .fill-blue{background:var(--blue)}.fill-green,.health-track .fill-green{background:var(--green)}.fill-teal{background:var(--teal)}.status-dot.warning{background:#d39122;box-shadow:0 0 0 3px #d3912224}.status-dot.danger{background:var(--red);box-shadow:0 0 0 3px #b53b3b24}.deadline-item,.integration-state,.check-list>div,.filter-stack>div{border-bottom:1px solid #edf0ef;align-items:center;gap:10px;min-height:48px;display:flex}.deadline-item:last-child,.integration-state:last-child,.check-list>div:last-child,.filter-stack>div:last-child{border-bottom:0}.deadline-item div,.integration-state div{min-width:0}.deadline-item strong,.deadline-item small,.integration-state strong,.integration-state small{display:block}.deadline-item strong,.integration-state strong,.filter-stack strong{color:var(--ink);font-size:11px}.deadline-item small,.integration-state small{color:var(--muted);margin-top:3px;font-size:9px}.control-response-panel{overflow:hidden}.control-response-panel pre{color:#d9f7ef;border-radius:var(--radius);background:#143f43;margin:16px;padding:16px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;line-height:1.7;overflow-x:auto}.panel-actions{grid-template-columns:1fr 1fr;gap:9px;padding:0 16px 16px;display:grid}.progress-cell.wide{width:110px}.table-panel tbody tr.selected-row,.table-panel tbody tr.selected-row:hover{box-shadow:inset 3px 0 var(--teal);background:#f2f8f6}.table-panel tbody tr{cursor:default}.review-layout,.evidence-workspace{grid-template-columns:minmax(0,1fr) 340px}.finding-detail-panel,.custody-panel,.permissions-panel{overflow:hidden}.finding-detail-body,.custody-body{padding:16px}.finding-detail-body>p{color:var(--muted-strong);margin:14px 0;font-size:12px;line-height:1.65}.compact-list{padding:0}.compact-list>div{min-height:34px}.recommendation-box{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);margin-top:14px;padding:12px}.recommendation-box strong,.recommendation-box span{display:block}.recommendation-box strong{color:var(--ink);font-size:11px}.recommendation-box span{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.5}.finding-detail-heading-actions,.finding-detail-modal-summary,.finding-modal-section-heading{align-items:center;gap:10px;display:flex}.finding-detail-heading-actions{flex-direction:column;align-items:flex-end}.compact-button{min-height:32px;padding:6px 10px;font-size:11px}.finding-detail-modal{padding:18px}.finding-detail-modal-summary{margin-bottom:18px}.finding-detail-modal section>p{color:var(--muted-strong);margin:7px 0 18px;font-size:12px;line-height:1.65}.detail-section-label{color:var(--muted);text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:700;display:block}.finding-modal-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;padding:0;display:grid}.finding-modal-list strong,.finding-detail-modal .mono,.finding-detail-panel .mono{overflow-wrap:anywhere;word-break:break-word;min-width:0}.finding-detail-panel .detail-list strong,.finding-detail-desc{overflow-wrap:anywhere}.link-button{font:inherit;color:var(--teal-dark,#0f766e);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.link-button:hover{opacity:.8}.finding-modal-recommendation{margin-top:18px}.finding-modal-recommendation span{font-size:11px}.finding-modal-evidence{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.finding-modal-section-heading{justify-content:space-between}.finding-modal-section-heading>div>strong{font-size:12px;display:block}.finding-evidence-list{gap:8px;margin-top:12px;display:grid}.finding-evidence-list>div{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:10px;padding:10px;display:flex}.finding-evidence-list span,.finding-evidence-list strong,.finding-evidence-list small{min-width:0;display:block}.finding-evidence-list span{overflow:hidden}.finding-evidence-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.finding-evidence-list small,.finding-modal-empty{color:var(--muted);margin-top:3px;font-size:10px}.finding-detail-modal>.modal-actions{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.report-history-list{display:grid}.report-history-list>div{border-top:1px solid var(--line);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:10px 16px;display:grid}.evidence-view-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.evidence-view-body{max-height:62vh;padding:16px;overflow:auto}.evidence-raw{white-space:pre-wrap;word-break:break-word;color:var(--ink);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55}.evidence-doc{color:var(--ink);font-size:13px;line-height:1.6}.evidence-doc h2{margin:18px 0 8px;font-size:18px}.evidence-doc h3{margin:16px 0 6px;font-size:15px}.evidence-doc h4{color:var(--muted-strong);margin:14px 0 4px;font-size:13px}.evidence-doc p{margin:6px 0}.evidence-doc ul{margin:6px 0 6px 18px}.evidence-doc li{margin:2px 0}.evidence-doc hr{border:0;border-top:1px solid var(--line);margin:14px 0}.evidence-doc code{background:var(--surface-soft);border-radius:var(--radius-sm);padding:1px 5px;font-size:12px}.evidence-doc pre.md-code{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);padding:10px;font-size:12px;overflow-x:auto}.evidence-doc strong{color:var(--ink)}.evidence-json-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-soft);margin-bottom:10px;padding:10px 12px}.evidence-json-card>div{border-bottom:1px dashed var(--line);grid-template-columns:140px 1fr;gap:10px;padding:3px 0;font-size:12px;display:grid}.evidence-json-card>div:last-child{border-bottom:0}.evidence-json-card>div>span:first-child{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.evidence-json-card>div>span:last-child{color:var(--ink);word-break:break-word}.remediation-board{grid-template-columns:repeat(4,1fr);align-items:start;gap:14px;display:grid}@media (width<=1100px){.remediation-board{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.remediation-board{grid-template-columns:1fr}}.remediation-column{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-lg);min-height:120px;padding:10px}.remediation-column-header{justify-content:space-between;align-items:center;gap:8px;padding:2px 4px 10px;display:flex}.remediation-column-header strong{color:var(--ink);font-size:13px}.rem-overdue-count{color:var(--red);margin-top:2px;font-size:10px;font-weight:600;display:block}.remediation-count{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);min-width:22px;height:20px;color:var(--muted-strong);justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.remediation-cards{flex-direction:column;gap:8px;display:flex}.remediation-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:6px;padding:9px 10px;display:flex}.remediation-card.overdue{border-color:var(--red);box-shadow:0 0 0 2px var(--red-soft)}.remediation-card-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.sla-pill{border-radius:var(--radius);background:var(--surface-soft);border:1px solid var(--line);color:var(--muted-strong);white-space:nowrap;padding:1px 7px;font-size:10px;font-weight:700}.sla-pill.soon{background:var(--amber-soft);color:var(--amber);border-color:#0000}.sla-pill.over{background:var(--red-soft);color:var(--red);border-color:#0000}.remediation-card-title{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;width:100%;margin:0;padding:0;font-family:inherit;font-size:12.5px;font-weight:600;line-height:1.3;text-decoration:none}.remediation-card-title:hover{color:var(--teal-dark);text-decoration:underline}.remediation-card-meta{color:var(--muted);flex-direction:column;gap:1px;font-size:10.5px;display:flex}.remediation-card-meta .mono{word-break:break-all;font-family:ui-monospace,Menlo,monospace}.rem-move{width:100%;margin-top:2px;font-size:11px}.remediation-empty{text-align:center;color:var(--muted);padding:14px 0;font-size:11px}.remediation-card{cursor:grab}.remediation-card:active{cursor:grabbing}.remediation-card.dragging{opacity:.5}.remediation-column.drag-over{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal-soft);background:var(--teal-soft)}.remediation-column{border-top-width:3px;overflow:hidden}.remediation-column.rem-tone-red{border-top-color:var(--red)}.remediation-column.rem-tone-blue{border-top-color:var(--blue)}.remediation-column.rem-tone-amber{border-top-color:#c58c29}.remediation-column.rem-tone-green{border-top-color:var(--green)}.remediation-column-header{border-bottom:1px solid var(--line);margin:-10px -10px 10px;padding:10px 12px}.rem-tone-red .remediation-column-header{background:var(--red-soft);border-bottom-color:var(--red)}.rem-tone-blue .remediation-column-header{background:var(--blue-soft);border-bottom-color:var(--blue)}.rem-tone-amber .remediation-column-header{background:#f7ecd6;border-bottom-color:#c58c29}.rem-tone-green .remediation-column-header{background:var(--green-soft);border-bottom-color:var(--green)}.rem-tone-red .remediation-column-header strong{color:var(--red)}.rem-tone-blue .remediation-column-header strong{color:var(--blue)}.rem-tone-amber .remediation-column-header strong{color:#a5701f}.rem-tone-green .remediation-column-header strong{color:var(--green)}.cell-ellipsis{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.evidence-target-warning{color:var(--amber,#a5701f);vertical-align:middle;flex-shrink:0;margin-left:6px}.report-version{width:34px;height:30px;color:var(--teal-dark);background:var(--teal-soft);border-radius:var(--radius-sm);place-items:center;font-size:11px;font-weight:800;display:grid}.report-history-list strong,.report-history-list small{display:block}.report-history-list strong{font-size:12px}.report-history-list small{color:var(--muted);margin-top:3px;font-size:10px}.file-preview{text-align:center;background:var(--surface-soft);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);place-items:center;min-height:118px;margin-bottom:16px;display:grid}.file-preview strong{color:var(--teal-dark);font-size:24px;line-height:1}.file-preview span{color:var(--muted);margin-top:8px;font-size:10px}.warning-label{color:var(--amber)!important;background:var(--amber-soft)!important}.muted-label{color:var(--muted)!important;background:var(--surface-soft)!important}.audit-layout{grid-template-columns:minmax(0,1fr) 330px}.timeline-panel .audit-timeline{padding:8px 18px}.filter-stack>div{justify-content:space-between}.filter-stack strong{text-align:right;max-width:170px}.check-list>div{color:var(--green)}.check-list span{color:var(--ink);font-size:11px;font-weight:650}.permission-row{border-bottom:1px solid #edf0ef;gap:10px;padding:13px 0;display:grid}.permission-row:last-child{border-bottom:0}.permission-row small{color:var(--muted);margin-top:6px;font-size:10px;display:block}.permission-cells{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.permission-cells span{min-height:24px;color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-sm);place-items:center;font-size:8px;font-weight:800;display:grid}.permission-cells span.allowed{color:var(--green);background:var(--green-soft);border-color:#cce4d4}.permission-note{color:var(--muted-strong);border-top:1px solid var(--line);margin:0 16px 14px;padding-top:14px;font-size:11px;line-height:1.6}.permission-action{width:calc(100% - 32px);margin:0 16px 16px}.help-hint{color:var(--muted);cursor:help;place-items:center;display:grid;position:relative}.help-hint:hover,.help-hint:focus-visible{color:var(--teal);outline:none}.help-hint:after{content:attr(data-tooltip);z-index:20;background:var(--ink);color:#fff;border-radius:var(--radius-lg);text-align:left;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;width:250px;box-shadow:var(--shadow-pop);padding:9px 11px;font-size:11px;font-weight:500;line-height:1.45;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-3px)}.help-hint:hover:after,.help-hint:focus-visible:after{opacity:1;visibility:visible;transform:translateY(0)}.perm-table{border-collapse:collapse;table-layout:fixed;width:100%}.perm-table th,.perm-table td{vertical-align:middle;border-bottom:1px solid #edf0ef;padding:10px 8px}.perm-table thead th{border-bottom:1px solid var(--line);text-transform:none;background:0 0}.perm-table thead th:first-child{text-align:left;color:var(--muted);font-size:10px}.perm-table th:not(:first-child),.perm-table td.perm-cell{text-align:center;width:74px}.perm-table thead th .risk-chip{padding:0 7px}.perm-table tbody tr:last-child td{border-bottom:0}.perm-table td strong{color:var(--ink);font-size:12px;font-weight:650;display:block}.perm-table td small{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.4;display:block}.perm-yes{color:var(--green)}.perm-no{color:var(--muted);opacity:.5}.users-layout table:not(.perm-table){min-width:900px}.integration-layout{grid-template-columns:minmax(0,1fr) 350px}.flow-step-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:12px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:54px;margin-bottom:9px;padding:9px 10px;display:grid}.flow-step-card:last-child{margin-bottom:0}.flow-dot{border-radius:50%;width:10px;height:10px}.flow-step-card strong,.flow-step-card small{display:block}.flow-step-card strong{color:var(--ink);font-size:11px}.flow-step-card small{color:var(--muted);margin-top:3px;font-size:9px}.execution-summary{gap:11px;padding:16px 16px 0;display:grid}.execution-summary>strong{color:var(--ink);font-size:13px}.execution-summary p{color:var(--muted-strong);font-size:11px;line-height:1.6}.auth-product-flow{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:18px;padding-top:16px;display:grid}.auth-product-flow>div{align-items:center;gap:7px;min-width:0;display:flex}.auth-product-flow span{width:24px;height:24px;color:var(--teal-dark);background:var(--teal-soft);border-radius:50%;flex:none;place-items:center;font-size:9px;font-weight:800;display:grid}.auth-product-flow strong{overflow-wrap:anywhere;color:var(--ink);font-size:9px}.timeline-panel{padding:0}.audit-timeline{position:relative}.audit-timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:25px;bottom:25px;left:17px}.audit-entry{border-bottom:1px solid #edf0ef;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:67px;display:grid;position:relative}.audit-entry:last-child{border-bottom:0}.audit-icon{z-index:1;border:3px solid #fff;width:35px;height:35px}.audit-content{min-width:0}.audit-content strong,.audit-content span{display:block}.audit-content strong{color:var(--ink);font-size:11px}.audit-content span{color:var(--muted);margin-top:3px;font-size:9px}.audit-actor{text-align:right}.audit-actor span,.audit-actor time{display:block}.audit-actor span{color:var(--muted-strong);font-size:9px}.audit-actor time{color:var(--muted);margin-top:3px;font-size:8px}.table-panel .audit-icon{border:none;width:24px;height:24px}.audit-actor-breakdown,.audit-top-actions{flex-direction:column;gap:6px;padding:4px 2px;display:flex}.audit-actor-row,.audit-top-row{border-radius:var(--radius-lg);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:9px;width:100%;padding:6px 8px;font-family:inherit;transition:background .15s,border-color .15s;display:flex}.audit-actor-row:hover,.audit-top-row:hover{background:var(--surface-soft)}.audit-actor-row.active,.audit-top-row.active{border-color:var(--teal);background:var(--teal-soft)}.audit-actor-label{color:var(--ink);flex:0 0 66px;font-size:12px;font-weight:600}.audit-top-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);flex:auto;font-size:11.5px;overflow:hidden}.audit-actor-bar{background:var(--surface);border:1px solid var(--line);border-radius:999px;flex:auto;height:7px;overflow:hidden}.audit-top-row .audit-actor-bar{flex:0 0 64px}.audit-actor-bar>span{background:var(--teal);border-radius:999px;min-width:2px;height:100%;display:block}.audit-actor-row strong,.audit-top-row strong{text-align:right;min-width:30px;color:var(--muted-strong);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.user-cell{align-items:center;gap:9px;display:flex}.active-user{color:var(--green);background:var(--green-soft);gap:5px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:24px;display:flex}.empty-state>span{width:42px;height:42px;color:var(--teal);background:var(--teal-soft);border-radius:50%;place-items:center;display:grid}.empty-state strong{margin-top:11px;font-size:12px}.empty-state p{max-width:270px;color:var(--muted);margin-top:5px;font-size:10px;line-height:1.5}.empty-table-row .empty-state{min-height:220px}.modal-layer{z-index:100;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-backdrop{background:#0f1c1e85;border:0;width:100%;height:100%;position:absolute;inset:0}.modal{z-index:1;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:min(500px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-modal);position:relative;overflow-y:auto}.modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:17px 18px;display:flex}.modal>header h2{font-size:16px}.modal>header p{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.5}.roe-section{border:1px solid var(--line);border-radius:var(--radius-lg)}.roe-section summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--surface-soft);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:2px 7px;padding:10px 13px;list-style:none;display:flex}.roe-section[open] summary{border-radius:7px 7px 0 0}.roe-section summary::-webkit-details-marker{display:none}.roe-section-title{color:var(--ink);align-items:center;gap:7px;font-size:13px;font-weight:650;display:inline-flex}.roe-section-title:after{content:"›";color:var(--muted);margin-left:7px;font-size:16px;transition:transform .16s}.roe-section[open] .roe-section-title:after{transform:rotate(90deg)}.roe-section-desc{color:var(--muted);flex:100%;padding-left:21px;font-size:11px;font-weight:400}.severity-fieldset{border:1px solid var(--line);border-radius:var(--radius-lg);padding:9px 12px}.severity-fieldset legend{color:var(--ink);padding:0 4px;font-size:13px;font-weight:600}.severity-fieldset-grid{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));align-items:center;gap:8px 12px;display:grid}.severity-dot{border-radius:50%;width:8px;height:8px;margin-right:1px;display:inline-block}.severity-dot--critical{background:#a93232}.severity-dot--high{background:#9a3d2e}.severity-dot--medium{background:#805709}.severity-dot--low{background:#356a87}.severity-dot--info{background:#8b9598}.field-required{color:var(--red)}.roe-hint{background:var(--teal-soft);border-radius:var(--radius-lg);color:var(--muted-strong);border:1px solid #bfe0da;margin:0;padding:8px 11px;font-size:11px;line-height:1.5}.roe-target-paths-summary ul{margin:6px 0 0;padding-left:16px;list-style:none}.roe-target-paths-summary li{margin-bottom:3px}.roe-target-paths-summary code{font-size:11px}.target-paths-count{background:var(--surface);border:1px solid var(--line);color:var(--muted-strong);border-radius:999px;margin-left:4px;padding:1px 6px;font-size:10px;display:inline-block}.target-paths-toggle{margin-left:4px;display:inline}.target-paths-toggle>summary{cursor:pointer;color:var(--teal);background:0 0;gap:0;padding:0;font-size:10px;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;list-style:none;transition:text-decoration-color .12s;display:inline}.target-paths-toggle>summary:hover,.target-paths-toggle>summary:focus-visible{-webkit-text-decoration-color:var(--teal);text-decoration-color:var(--teal)}.target-paths-toggle>summary::-webkit-details-marker{display:none}.target-paths-toggle ul{margin:4px 0 0;padding-left:14px;list-style:outside}.target-paths-toggle li{color:var(--muted);word-break:break-all;font-size:10px}.roe-section-body{border-top:1px solid var(--line);padding:14px!important}.roe-profile-selector{align-items:center;gap:8px;display:flex}.roe-profile-label{color:var(--ink);margin-right:4px;font-size:13px;font-weight:600}.roe-profile-btn{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--muted-strong);cursor:pointer;padding:4px 14px;font-size:12px;font-weight:600;transition:all .12s}.roe-profile-btn.active{background:var(--teal);color:#fff;border-color:var(--teal)}.roe-profile-note{background:var(--teal-soft);border-radius:var(--radius-lg);color:var(--muted-strong);border:1px solid #bfe0da;align-items:flex-start;gap:6px;padding:8px 11px;font-size:11px;line-height:1.5;display:flex}.roe-profile-note--warning{background:var(--amber-soft);border-color:var(--amber);color:var(--amber)}.roe-templates-row{flex-wrap:wrap;margin-top:-4px}.roe-templates-empty{color:var(--muted);font-size:11px;font-style:italic}.roe-template-chip{align-items:center;gap:2px;display:inline-flex}.roe-template-delete{border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;border-left:none;border-radius:0 6px 6px 0;align-items:center;padding:4px 6px;display:flex}.roe-template-delete:hover{color:var(--red);border-color:var(--red)}.roe-template-chip .roe-profile-btn{border-radius:6px 0 0 6px}.roe-autoconfig-note{background:var(--blue-soft,#eaf1fb);border-color:#bcd2f0;flex-direction:column;align-items:flex-start}.roe-autoconfig-note button{margin-top:2px}.auto-config-preview{padding:4px 2px}.auto-config-target{background:var(--surface-soft,#f5f6f6);border:1px solid var(--line);border-radius:var(--radius-lg);align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.auto-config-target strong{word-break:break-all;font-size:13px;display:block}.auto-config-target small{color:var(--muted);align-items:center;gap:4px;font-size:11px;display:flex}.auto-config-combined-note{background:var(--blue-soft,#eaf1fb);border-radius:var(--radius-lg);color:var(--muted-strong);border:1px solid #bcd2f0;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;line-height:1.5;display:flex}.auto-config-per-target{margin:6px 0 0;padding-left:18px}.auto-config-per-target li{color:var(--muted);font-size:11px}.auto-config-per-target code{font-size:11px}.auto-config-tools{flex-direction:column;gap:6px;display:flex}.auto-config-tools label.auto-config-tool-row,.auto-config-tools div.auto-config-tool-row{border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--muted);cursor:pointer;grid-template-columns:20px 90px 1fr;align-items:center;gap:8px;padding:9px 10px;font-size:12px;transition:border-color .12s,background .12s;display:grid}.auto-config-tools label.auto-config-tool-row:hover{border-color:#9fc7c1}.auto-config-tool-row.on{border-color:var(--teal);background:var(--teal-soft);color:var(--ink)}.auto-config-tool-row input{width:15px;height:15px;accent-color:var(--teal)}.auto-config-tool-row--info{cursor:default;color:var(--muted);background:var(--surface-soft,#f5f6f6);border-style:dashed;grid-template-columns:20px 90px 1fr}.discovered-paths-list{gap:5px;max-height:220px;padding-right:4px;overflow-y:auto}.auto-config-tools label.discovered-path-row,.auto-config-tools div.discovered-path-row{grid-template-columns:16px 1fr;align-items:center;gap:8px;padding:8px 10px}.discovered-path-row code{overflow-wrap:anywhere;word-break:normal;font-size:11px;line-height:1.5}.path-discovery-card{background:var(--surface-soft,#f5f6f6);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:14px;display:flex}.path-discovery-card>label{gap:6px}.field-eyebrow{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.path-discovery-card .field-eyebrow{margin-bottom:0}.field-hint{color:var(--muted);cursor:help;vertical-align:middle;margin-left:4px;display:inline-flex;position:relative}.field-hint-bubble{visibility:hidden;opacity:0;z-index:20;border-radius:var(--radius-lg);background:var(--ink);color:#fff;text-align:left;width:max-content;max-width:min(240px,100vw - 48px);box-shadow:var(--shadow-pop);pointer-events:none;padding:7px 10px;font-size:11px;font-weight:400;line-height:1.45;transition:opacity .12s,transform .12s,visibility .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(2px)}.field-hint-bubble:after{content:"";border:5px solid #0000;border-top-color:var(--ink);position:absolute;top:100%;left:50%;transform:translate(-50%)}.field-hint:hover .field-hint-bubble,.field-hint:focus-visible .field-hint-bubble{visibility:visible;opacity:1;transform:translate(-50%)translateY(0)}.modal-wide{width:min(880px,100%)}.roe-form-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:2px;font-size:11px;font-weight:700}.roe-meta-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.roe-meta-grid .roe-field-full{grid-column:1/-1}.roe-sections-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}@media (width<=680px){.roe-meta-grid,.roe-sections-grid{grid-template-columns:1fr}}.form-stack{flex-direction:column;gap:13px;padding:18px;display:flex}.form-stack label,.auth-form label{color:var(--ink);flex-direction:column;gap:6px;font-size:12px;font-weight:650;display:flex}.form-stack input,.form-stack select,.form-stack textarea,.auth-form input{width:100%;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);outline:0;font-size:11px}.form-stack input[type=checkbox]{width:auto;accent-color:var(--teal)}.form-stack input,.form-stack select,.auth-form input{height:38px;padding:0 10px}.form-stack textarea{resize:vertical;min-height:80px;padding:9px 10px}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.auth-form input:focus{border-color:#78aaa5;box-shadow:0 0 0 3px #176f6814}.form-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.modal-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.form-stack>.modal-actions:last-child{background:var(--surface);border-top:1px solid var(--line);z-index:3;margin:8px -18px -18px;padding:12px 18px;position:sticky;bottom:0}.confirm-dialog{flex-direction:column;gap:22px;padding:20px 24px 22px;display:flex}.confirm-callout{border-radius:var(--radius-lg);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.confirm-callout p{color:var(--muted-strong);margin:0;font-size:13px;line-height:1.6}.confirm-callout-icon{border-radius:var(--radius-lg);background:var(--surface);flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.confirm-callout--danger{background:var(--red-soft);border:1px solid #f0cfcb}.confirm-callout--danger .confirm-callout-icon{color:var(--red);border:1px solid #f0cfcb}.confirm-callout--primary{background:var(--teal-soft);border:1px solid #bfe0da}.confirm-callout--primary .confirm-callout-icon{color:var(--teal);border:1px solid #bfe0da}.confirm-dialog .modal-actions{padding-top:0}.modal-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin-top:4px;padding:16px 20px;display:flex}.export-modal-body{flex-direction:column;gap:20px;padding:0 20px;display:flex}.export-section{flex-direction:column;gap:8px;display:flex}.export-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11px;font-weight:700}.export-section-hint{text-transform:none;letter-spacing:0;font-size:11px;font-weight:400}.export-format-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.export-format-option{border:1.5px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;gap:3px;padding:12px;transition:border-color .12s,background .12s;display:flex;position:relative}.export-format-option strong{color:var(--ink);font-size:13px}.export-format-option span{color:var(--muted);font-size:11px;line-height:1.4}.export-format-option.selected{border-color:var(--teal);background:var(--teal-soft)}.export-format-check{color:var(--teal-dark);position:absolute;top:8px;right:8px}.export-date-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.export-date-field{flex-direction:column;gap:4px;display:flex}.export-date-field label{color:var(--muted);font-size:11px}.export-date-field input{border:1px solid var(--line);border-radius:var(--radius);height:34px;color:var(--ink);background:var(--surface);padding:0 10px;font-size:13px}.export-status-grid{flex-wrap:wrap;gap:6px;display:flex}.export-status-chip{border:1.5px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.export-status-chip.selected{border-color:var(--teal);color:var(--teal-dark);background:var(--teal-soft)}.export-preview{background:var(--bg);border-radius:var(--radius);color:var(--muted);text-align:center;padding:8px 12px;font-size:12px}.destructive-warning{color:var(--red);background:var(--red-soft);border-radius:var(--radius-sm);border:1px solid #efc9c5;align-items:flex-start;gap:10px;padding:11px;display:flex}.destructive-warning strong,.destructive-warning span{display:block}.destructive-warning strong{font-size:11px}.destructive-warning span{color:#7d4b49;margin-top:3px;font-size:9px;line-height:1.45}.auth-page{background:var(--surface);grid-template-columns:minmax(350px,.78fr) minmax(480px,1.22fr);min-height:100vh;display:grid}.auth-brand-panel{color:#e7f0ee;background:var(--sidebar);flex-direction:column;min-height:100vh;padding:42px 48px;display:flex}.auth-brand{color:#fff;align-items:center;gap:10px;display:flex}.auth-brand>span{border-radius:var(--radius);background:#286166;border:1px solid #ffffff1f;place-items:center;width:38px;height:38px;display:grid}.auth-brand strong{font-size:16px}.auth-message{max-width:520px;margin:auto 0 42px}.auth-message .eyebrow{color:#8dc7bf}.auth-message h1{color:#fff;max-width:500px;font-size:36px;line-height:1.18}.auth-message p{color:#b8cbca;max-width:500px;margin-top:18px;font-size:13px;line-height:1.7}.auth-control-list{gap:12px;display:grid}.auth-control-list>div{border-radius:var(--radius);background:#081f2147;border:1px solid #ffffff17;align-items:flex-start;gap:12px;max-width:500px;padding:13px 14px;display:flex}.auth-control-list>div>svg{color:#75d0c0;flex:none}.auth-control-list strong,.auth-control-list small{display:block}.auth-control-list strong{color:#edf6f4;font-size:11px}.auth-control-list small{color:#9eb7b5;margin-top:4px;font-size:9px;line-height:1.45}.auth-overview-cta{color:#edf6f4;border-radius:var(--radius);max-width:500px;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:#75d0c01a;border:1px solid #75d0c057;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;margin-bottom:auto;padding:14px 16px;display:flex}.auth-overview-cta:hover{background:#75d0c02e;border-color:#75d0c099}.auth-overview-cta strong{color:#fff;text-underline-offset:3px;font-size:12px;font-weight:660;-webkit-text-decoration:underline #75d0c080;text-decoration:underline #75d0c080;display:block}.auth-overview-cta small{color:#9eb7b5;margin-top:4px;font-size:9px;display:block}.auth-overview-cta>svg{color:#75d0c0;transition:transform var(--dur-fast) var(--ease-out);flex:none}.auth-overview-cta:hover>svg{transform:translate(3px)}.auth-build{color:#779896;margin-top:38px;font-size:9px}.auth-form-panel{background:#f6f8f7;place-items:center;padding:38px;display:grid}.auth-form-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:min(440px,100%);box-shadow:var(--shadow);padding:30px}.auth-heading h2{font-size:22px}.auth-heading p{color:var(--muted);margin-top:7px;font-size:11px}.mobile-auth-brand{display:none}.auth-form{flex-direction:column;gap:14px;margin-top:23px;display:flex}.password-field{position:relative}.password-field input{padding-right:40px}.password-field button{color:#718082;background:0 0;border:0;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:2px;right:3px}.auth-submit{width:100%;margin-top:2px}.forgot-link{color:var(--teal);background:0 0;border:0;align-self:flex-end;padding:0;font-size:10px;font-weight:700}.recovery-hint,.recovery-status,.password-requirements{color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-sm);border:1px solid #cce4df;align-items:flex-start;gap:10px;padding:11px;font-size:10px;line-height:1.45;display:flex}.recovery-status{color:var(--green);background:var(--green-soft);border-color:#cce4d4}.recovery-status>svg,.recovery-hint>svg{flex:none}.recovery-status strong,.recovery-status small,.password-requirements strong,.password-requirements span{display:block}.recovery-status strong,.password-requirements strong{color:var(--ink);font-size:11px}.recovery-status small,.password-requirements span{color:var(--muted-strong);margin-top:4px;font-size:10px;line-height:1.5}.password-requirements{color:var(--teal);background:#f7fbfa;border-style:dashed;display:block}.form-hint{color:var(--muted);font-size:11px}.form-error{color:#8d3535;background:var(--red-soft);border-radius:var(--radius-sm);border:1px solid #edc9c5;padding:9px 10px;font-size:10px}.two-factor-login-note{min-height:44px;color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-sm);border:1px solid #cce4df;align-items:center;gap:10px;padding:10px;font-size:10px;display:flex}.two-factor-login-note strong{color:var(--ink)}.two-factor-panel{padding:18px}.security-status{border-radius:var(--radius);border:1px solid;align-items:flex-start;gap:11px;padding:12px;display:flex}.security-status.enabled{color:var(--green);background:var(--green-soft);border-color:#cce4d4}.security-status.disabled{color:var(--amber);background:var(--amber-soft);border-color:#efd8a4}.security-status div{min-width:0}.security-status strong,.security-status span{display:block}.security-status strong{color:var(--ink);font-size:12px}.security-status span{color:var(--muted-strong);margin-top:4px;font-size:10px;line-height:1.45}.two-factor-alert{margin:14px 0 0}.two-factor-start{gap:14px;padding-top:14px;display:grid}.two-factor-start p{color:var(--muted);font-size:10px;line-height:1.6}.two-factor-form{padding:14px 0 0}.qr-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:132px minmax(0,1fr);align-items:center;gap:14px;padding:12px;display:grid}.qr-card img{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:132px;height:132px}.qr-card strong,.qr-card span,.manual-key span,.manual-key strong{display:block}.qr-card strong{color:var(--ink);font-size:12px}.qr-card span{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.45}.manual-key{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:#fbfcfc;padding:10px}.manual-key span{color:var(--muted);font-size:9px}.manual-key strong{color:var(--ink);overflow-wrap:anywhere;margin-top:5px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px}.auth-mode{width:100%;color:var(--teal);background:0 0;border:0;margin-top:13px;padding:0;font-size:10px;font-weight:650}.demo-divider{color:#899394;text-transform:uppercase;align-items:center;gap:9px;margin:22px 0 13px;font-size:8px;display:flex}.demo-divider:before,.demo-divider:after{content:"";background:var(--line);flex:1;height:1px}.demo-buttons{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.demo-buttons button{border:1px solid var(--line);border-radius:var(--radius-sm);text-align:center;background:#f8faf9;min-width:0;min-height:61px;padding:8px 6px}.demo-buttons button:hover{background:var(--teal-soft);border-color:#b8d8d2}.demo-buttons strong,.demo-buttons span{display:block}.demo-buttons strong{color:var(--ink);font-size:9px}.demo-buttons span{color:var(--muted);margin-top:4px;font-size:7px;line-height:1.3}.mobile-menu,.sidebar-close,.sidebar-backdrop{display:none}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1180px){.metrics-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.dashboard-bottom,.portfolio-layout,.operations-layout,.review-layout,.evidence-workspace,.audit-layout,.users-layout,.integration-layout{grid-template-columns:1fr}.approval-panel{min-height:260px}.detail-layout{grid-template-columns:minmax(0,1fr) 280px}.side-stack{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (width<=900px){.app-shell{display:block}.sidebar{width:242px;transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0);box-shadow:18px 0 50px #08161838}.sidebar-close{color:#dce9e7;display:inline-grid}.sidebar-backdrop{z-index:25;background:#0c1a1c73;border:0;display:block;position:fixed;inset:0}.app-main{width:100%}.mobile-menu{display:inline-grid}.topbar{padding:0 15px}.topbar-search{width:min(380px,45vw)}.profile-trigger{min-width:auto}.profile-copy,.profile-trigger>svg{display:none}.content{padding:23px 18px 40px}.detail-layout{grid-template-columns:1fr}.detail-side{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.side-stack{grid-template-columns:1fr}.mini-stats{grid-column:1/-1}.auth-page{grid-template-columns:1fr}.auth-brand-panel{display:none}.auth-form-panel{min-height:100vh}.mobile-auth-brand{color:var(--teal);align-items:center;gap:7px;margin-bottom:18px;font-size:12px;font-weight:750;display:flex}}@media (width<=680px){h1{font-size:23px}.topbar{gap:8px}.topbar-search{flex:1;width:auto}.topbar-search kbd,.demo-role-switcher>span,.notification-button{display:none}.demo-role-switcher{max-width:62px;height:32px;padding:0 4px}.demo-role-switcher select{max-width:54px}.topbar-actions{gap:4px}.profile-trigger{justify-content:center;width:34px;min-width:34px;height:34px;padding:0}.profile-trigger .avatar{width:28px;height:28px}.page-header{flex-direction:column;align-items:flex-start;gap:13px}.page-actions{flex-wrap:wrap;width:100%}.page-actions .button{flex:1}.metrics-grid,.project-grid,.evidence-grid,.severity-summary,.detail-side,.finding-modal-list{grid-template-columns:1fr}.finding-modal-section-heading{flex-direction:column;align-items:flex-start}.report-history-list>div{grid-template-columns:38px minmax(0,1fr)}.report-history-list .button{grid-column:1/-1}.metric{min-height:103px}.workflow{grid-template-columns:repeat(6,98px)}.workflow-footer{flex-direction:column;align-items:flex-start}.approval-actions{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.search-field{width:100%}.toolbar>.button:last-child,.select-control{width:100%;margin-left:0}.severity-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-entry{grid-template-columns:35px minmax(0,1fr);padding:8px 0}.audit-actor{text-align:left;grid-column:2}.audit-actor span,.audit-actor time{margin-right:8px;display:inline}.form-grid{grid-template-columns:1fr}.evidence-security{display:none}.segmented{width:100%;overflow-x:auto}.segmented button{flex:1}.auth-form-panel{padding:20px}.auth-form-wrap{padding:23px 18px}.demo-buttons{grid-template-columns:1fr}.demo-buttons button{min-height:48px}.qr-card{text-align:center;grid-template-columns:1fr;justify-items:center}.panel-actions,.permission-cells,.auth-product-flow{grid-template-columns:1fr}.modal-layer{align-items:end;padding:0}.modal{border-radius:7px 7px 0 0;width:100%;max-height:92vh}}.prereq-list{flex-direction:column;gap:0;padding:4px 16px 12px;display:flex}.prereq-item{border-bottom:1px solid #edf0ef;align-items:flex-start;gap:12px;padding:14px 0;display:flex}.prereq-item:last-child{border-bottom:0}.prereq-item svg{flex:none;margin-top:1px}.prereq-item.done svg{color:var(--green)}.prereq-item.pending svg{color:#b0b8bb}.prereq-item strong{color:var(--ink);font-size:13px;display:block}.prereq-item small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.prompt-dialog{flex-direction:column;gap:18px;padding:20px 24px 22px;display:flex}.prompt-dialog .form-stack,.prompt-dialog .modal-actions{padding:0}.roe-path-reuse{align-self:flex-start;margin-top:-.35rem}.overview-page{background:var(--canvas);min-height:100vh}.overview-topbar{z-index:5;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) clamp(var(--space-4), 5vw, 64px);background:#102f32f5;border-bottom:1px solid #ffffff14;display:flex;position:sticky;top:0}.overview-brand{align-items:center;gap:var(--space-3);color:#fff;display:flex}.overview-brand strong{font-size:var(--text-title);font-weight:var(--weight-strong);display:block}.overview-brand small{color:#fff9;font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase}.overview-brand-mark{color:#fff;border-radius:var(--radius);background:#ffffff1f;place-items:center;width:34px;height:34px;display:grid}.overview-hero{align-items:center;gap:clamp(var(--space-6), 5vw, 72px);padding:clamp(var(--space-10), 7vw, 96px) clamp(var(--space-4), 5vw, 64px);color:#fff;background:linear-gradient(155deg, var(--sidebar) 0%, var(--sidebar-deep) 62%, #0b2427 100%);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);display:grid}.overview-hero h1{max-width:18ch;margin-bottom:var(--space-4);color:#fff;letter-spacing:-.01em;font-size:clamp(30px,4vw,44px);line-height:1.12}.overview-hero p{color:#ffffffbd;max-width:62ch;font-size:15px;line-height:1.65}.overview-eyebrow{margin-bottom:var(--space-3);color:#7fd3c4;font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase;display:block}.overview-eyebrow.dark{color:var(--teal)}.overview-hero-actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.overview-hero-stats{border-radius:var(--radius-lg);background:#ffffff1f;border:1px solid #ffffff1f;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.overview-hero-stats>div{gap:var(--space-2);padding:var(--space-5);background:#0b24278c;flex-direction:column;display:flex}.overview-hero-stats strong{color:#fff;font-size:var(--text-metric);font-weight:var(--weight-semibold);line-height:1}.overview-hero-stats span{color:#ffffff9e;font-size:var(--text-meta);line-height:1.4}.overview-section{padding:clamp(var(--space-10), 6vw, 84px) clamp(var(--space-4), 5vw, 64px)}.overview-section-soft{background:var(--surface-soft);border-block:1px solid var(--line)}.overview-section-head{max-width:68ch;margin-bottom:var(--space-8)}.overview-section-head h2{margin-bottom:var(--space-3);letter-spacing:-.01em;font-size:clamp(22px,2.4vw,30px);line-height:1.2}.overview-section-head p{color:var(--muted-strong);font-size:var(--text-body);line-height:1.65}.overview-capability-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.overview-capability{gap:var(--space-3);padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);flex-direction:column;display:flex}.overview-capability:hover{border-color:var(--line-strong);box-shadow:var(--shadow-pop)}.overview-capability-icon{width:36px;height:36px;color:var(--teal);background:var(--teal-soft);border-radius:var(--radius);place-items:center;display:grid}.overview-capability h3{color:var(--ink);font-size:var(--text-title);font-weight:var(--weight-semibold);margin:0}.overview-capability p{color:var(--muted-strong);font-size:var(--text-secondary);line-height:1.6}.overview-capability ul{gap:var(--space-2);padding:var(--space-3) 0 0;border-top:1px solid var(--line);flex-direction:column;margin:auto 0 0;list-style:none;display:flex}.overview-capability li{color:var(--muted);font-size:var(--text-meta);padding-left:14px;position:relative}.overview-capability li:before{background:var(--teal);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:5px;left:0}.overview-tool-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.overview-tool{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);display:flex}.overview-tool>span{width:32px;height:32px;color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-sm);flex:none;place-items:center;display:grid}.overview-tool strong{color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-semibold);margin-bottom:2px;display:block}.overview-tool small{color:var(--muted);font-size:var(--text-meta);line-height:1.5;display:block}.overview-flow{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.overview-flow>li{gap:var(--space-3);padding:var(--space-5) var(--space-4);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex;position:relative}.overview-flow>li:not(:last-child):after{top:50%;right:calc(var(--space-3) / -2 - 5px);z-index:1;width:18px;height:18px;color:var(--muted);background:var(--canvas);content:"›";place-items:center;font-size:13px;display:grid;position:absolute;transform:translateY(-50%)}.overview-flow-step{color:var(--muted);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.08em}.overview-flow-icon{color:#fff;background:var(--teal);border-radius:var(--radius);place-items:center;width:34px;height:34px;display:grid}.overview-flow-layer{color:var(--teal);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.05em;text-transform:uppercase;display:block}.overview-flow-stack{margin-bottom:var(--space-2);color:var(--muted);font-size:var(--text-meta);display:block}.overview-flow strong{margin-bottom:var(--space-2);color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-semibold);display:block}.overview-flow p{color:var(--muted);font-size:var(--text-meta);line-height:1.55}.overview-lifecycle{align-items:center;gap:var(--space-4);margin-top:var(--space-6);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;display:flex}.overview-lifecycle-label{color:var(--muted);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase}.overview-lifecycle>div{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.overview-lifecycle-phase{color:var(--muted-strong);background:var(--surface-soft);border:1px solid var(--line);font-size:var(--text-meta);font-weight:var(--weight-medium);border-radius:999px;padding:4px 10px}.overview-section-dark{color:#fff;background:var(--sidebar-deep)}.overview-section-dark h2{color:#fff}.overview-section-dark .overview-section-head p{color:#ffffffb3}.overview-governance-grid{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.overview-governance-grid article{gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius);background:#ffffff0d;border:1px solid #ffffff1a;flex-direction:column;display:flex}.overview-governance-grid span{color:#7fd3c4;border-radius:var(--radius);background:#7fd3c424;place-items:center;width:34px;height:34px;display:grid}.overview-governance-grid strong{color:#fff;font-size:var(--text-body);font-weight:var(--weight-semibold)}.overview-governance-grid p{color:#ffffffad;font-size:var(--text-meta);line-height:1.6}.overview-footer{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-8) clamp(var(--space-4), 5vw, 64px);background:var(--surface-raised);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.overview-footer strong{margin-bottom:var(--space-1);color:var(--ink);font-size:var(--text-title);font-weight:var(--weight-semibold);display:block}.overview-footer span{color:var(--muted);font-size:var(--text-secondary)}@media (width<=1080px){.overview-hero{grid-template-columns:minmax(0,1fr)}.overview-capability-grid,.overview-governance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-flow{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.overview-flow>li:not(:last-child):after{content:none}}@media (width<=700px){.overview-hero h1{max-width:none}.overview-capability-grid,.overview-governance-grid,.overview-hero-stats{grid-template-columns:minmax(0,1fr)}}.toast-viewport{z-index:1000;pointer-events:none;flex-direction:column;gap:10px;width:min(360px,100vw - 32px);display:flex;position:fixed;top:20px;right:20px}.toast{pointer-events:auto;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:var(--radius-lg);box-shadow:var(--shadow);align-items:flex-start;gap:10px;padding:12px 12px 12px 14px;animation:.22s cubic-bezier(.2,.8,.2,1) toast-in;display:flex}.toast-leaving{animation:.2s forwards toast-out}.toast-icon{flex:none;margin-top:1px}.toast-message{color:var(--ink);flex:1;font-size:13px;line-height:1.4}.toast-close{border-radius:var(--radius);width:22px;height:22px;color:var(--muted);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.toast-close:hover{background:var(--surface-soft);color:var(--ink)}.toast-success{border-left-color:var(--green)}.toast-success .toast-icon{color:var(--green)}.toast-error{border-left-color:var(--red)}.toast-error .toast-icon{color:var(--red)}.toast-info{border-left-color:var(--teal)}.toast-info .toast-icon{color:var(--teal)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-out{to{opacity:0;transform:translate(12px)}}@media (prefers-reduced-motion:reduce){.toast,.toast-leaving{animation:none}}
