:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#f0f2f5;--border:#dde1e7;--text:#1b1f24;--muted:#5d6673;--accent:#1d4ed8;--accent-text:#fff;--focus:#2563eb;--grid:#e5e8ec;--danger:#b91c1c;--warn:#a16207;--ok:#15803d;--p1:#c81e1e;--p2:#c2410c;--p3:#c99a06;--p4:#6b7685;--p1-text:#fff;--p2-text:#fff;--p3-text:#1b1f24;--p4-text:#fff;--sev-critical:#9b1c1c;--sev-high:#c2410c;--sev-medium:#a16207;--sev-low:#4b5563;--radius:8px;--shadow:0 1px 2px #0000000f, 0 1px 1px #0000000a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1217;--surface:#171b22;--surface-2:#1e232c;--border:#2c333e;--text:#e6e9ee;--muted:#9aa4b2;--accent:#5b8def;--accent-text:#0b0d10;--focus:#7aa2f7;--grid:#262c36;--danger:#f87171;--warn:#fbbf24;--ok:#4ade80;--p1:#f05252;--p2:#f59e0b;--p3:#e3c34a;--p4:#8b95a3;--p1-text:#0b0d10;--p2-text:#0b0d10;--p3-text:#0b0d10;--p4-text:#0b0d10;--sev-critical:#f87171;--sev-high:#fb923c;--sev-medium:#facc15;--sev-low:#9ca3af;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1217;--surface:#171b22;--surface-2:#1e232c;--border:#2c333e;--text:#e6e9ee;--muted:#9aa4b2;--accent:#5b8def;--accent-text:#0b0d10;--focus:#7aa2f7;--grid:#262c36;--danger:#f87171;--warn:#fbbf24;--ok:#4ade80;--p1:#f05252;--p2:#f59e0b;--p3:#e3c34a;--p4:#8b95a3;--p1-text:#0b0d10;--p2-text:#0b0d10;--p3-text:#0b0d10;--p4-text:#0b0d10;--sev-critical:#f87171;--sev-high:#fb923c;--sev-medium:#facc15;--sev-low:#9ca3af;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font:14px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}h1{margin:0 0 4px;font-size:22px}h2{margin:0 0 12px;font-size:16px}.muted{color:var(--muted)}.layout{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:4px;padding:16px 12px;display:flex}.brand{color:var(--text);align-items:center;gap:8px;padding:4px 8px 16px;font-size:16px;font-weight:700;display:flex}.brand img{width:24px;height:24px}.nav a{color:var(--text);border-radius:6px;padding:7px 10px;display:block}.nav a:hover{background:var(--surface-2);text-decoration:none}.nav a[aria-current=page]{background:var(--accent);color:var(--accent-text)}.sidebar-foot{color:var(--muted);flex-direction:column;gap:6px;margin-top:auto;padding:8px;font-size:12px;display:flex}main{min-width:0;padding:24px 28px 48px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;padding:16px}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.kpis{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);border-left-width:4px;flex-direction:column;padding:12px 14px;display:flex}.kpi.p1{border-left-color:var(--p1)}.kpi.p2{border-left-color:var(--p2)}.kpi.p3{border-left-color:var(--p3)}.kpi.p4{border-left-color:var(--p4)}.kpi-label{color:var(--muted);font-size:12px}.kpi-value{font-variant-numeric:tabular-nums;font-size:24px;font-weight:700}.kpi-hint{color:var(--muted);font-size:12px}.badge{text-align:center;border-radius:4px;min-width:28px;padding:1px 6px;font-size:12px;font-weight:700;display:inline-block}.badge.p1{background:var(--p1);color:var(--p1-text)}.badge.p2{background:var(--p2);color:var(--p2-text)}.badge.p3{background:var(--p3);color:var(--p3-text)}.badge.p4{background:var(--p4);color:var(--p4-text)}.sev{font-size:12px;font-weight:600}.sev-critical{color:var(--sev-critical)}.sev-high{color:var(--sev-high)}.sev-medium{color:var(--sev-medium)}.sev-low,.sev-unknown{color:var(--sev-low)}.expl{font-size:12px;font-weight:600}.expl-active{color:var(--sev-critical)}.expl-likely{color:var(--sev-high)}.expl-possible{color:var(--sev-medium)}.expl-unlikely{color:var(--sev-low)}.tag{background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:4px;margin:1px 2px 1px 0;padding:0 6px;font-size:12px;display:inline-block}.tag.danger{color:var(--danger);border-color:var(--danger)}.tag.warn{color:var(--warn);border-color:var(--warn)}.tag.ok{color:var(--ok);border-color:var(--ok)}a.tag{color:inherit;text-decoration:none}a.tag:hover{border-color:var(--accent);color:var(--accent)}.chips{flex-wrap:wrap;align-items:center;gap:2px;display:flex}button.link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0}button.link:hover{text-decoration:underline}tr[aria-current] td{background:var(--surface-2)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:7px 8px}th{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:600}th button{all:unset;cursor:pointer}th button:focus-visible{outline:2px solid var(--focus)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tbody tr:hover{background:var(--surface-2)}.nowrap{white-space:nowrap}.kpi-link,.kpi-link:hover{color:inherit;text-decoration:none}.kpi-link:hover .kpi{border-color:var(--accent)}.clip{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.filters{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;margin-bottom:14px;display:flex}.field{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;display:flex}input,select,button{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:5px 8px}button{cursor:pointer}button:hover:not(:disabled){background:var(--surface-2)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.danger{color:var(--danger);border-color:var(--danger)}label.checkbox{align-items:center;gap:6px;display:flex}.checks{color:var(--text);flex-wrap:wrap;gap:8px;display:flex}.checks label{align-items:center;gap:4px;display:flex}.error{border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.empty{color:var(--muted);text-align:center;padding:20px 0}.pagination{color:var(--muted);justify-content:flex-end;align-items:center;gap:12px;padding-top:12px;display:flex}.chart{margin:0}.chart-data summary{cursor:pointer;color:var(--muted);padding-top:6px;font-size:12px}.chart svg{width:100%;height:auto;display:block}.chart .grid{stroke:var(--grid);stroke-width:1px}.chart .axis{fill:var(--muted);font-size:11px}.chart .cursor{stroke:var(--muted);stroke-dasharray:3 3}.area.p1{fill:var(--p1)}.area.p2{fill:var(--p2)}.area.p3{fill:var(--p3)}.area.p4{fill:var(--p4)}.area{fill-opacity:.85}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 14px;min-height:26px;padding-top:6px;font-size:12px;display:flex}.legend-item{align-items:center;gap:5px;display:inline-flex}.swatch{border-radius:2px;width:10px;height:10px;display:inline-block}.swatch.p1{background:var(--p1)}.swatch.p2{background:var(--p2)}.swatch.p3{background:var(--p3)}.swatch.p4{background:var(--p4)}.bars,.breakdown{flex-direction:column;gap:8px;display:flex}.bar-row{grid-template-columns:130px 1fr 80px;align-items:center;gap:10px;display:grid}.bar-label{font-size:13px}.bar-track{background:var(--surface-2);border-radius:5px;height:10px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:5px;height:100%;display:block}.bar-fill.sev-critical{background:var(--sev-critical)}.bar-fill.sev-high{background:var(--sev-high)}.bar-fill.sev-medium{background:var(--sev-medium)}.bar-fill.sev-low,.bar-fill.sev-unknown{background:var(--sev-low)}.bar-value{text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.detail-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;display:grid}dl.props{grid-template-columns:max-content 1fr;gap:6px 14px;margin:0;display:grid}dl.props dt{color:var(--muted)}dl.props dd{overflow-wrap:anywhere;margin:0}.score-big{font-variant-numeric:tabular-nums;font-size:34px;font-weight:800}ul.reasons{margin:8px 0 0;padding-left:18px}@media (width<=900px){.layout{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);flex-flow:wrap}.nav{flex-wrap:wrap;gap:4px;display:flex}.sidebar-foot{margin:0}.grid-2,.detail-grid{grid-template-columns:1fr}main{padding:16px}}.narrow{flex-direction:column;gap:12px;max-width:420px;margin:40px auto;display:flex}textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;width:100%;padding:6px 8px}a.button{text-align:center;border:1px solid var(--accent);border-radius:6px;padding:6px 12px;display:inline-block}a.button.primary{background:var(--accent);color:var(--accent-text)}a.button:hover{text-decoration:none}.token-box{background:var(--surface-2);border:1px solid var(--border);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:6px;padding:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.section-head h2{margin:0}.copy-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;font-size:13px;display:flex}pre.token-box{white-space:pre-wrap;margin:0}.inline-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inline-form input{max-width:160px}.login-page{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;padding:24px 16px;display:flex}.login-page>.card{width:100%;max-width:380px}.tabs{flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.tabs button[aria-selected=true]{border-color:var(--accent);color:var(--accent)}.mfa-method{border-top:1px solid var(--border);padding:12px 0}.mfa-method h3{margin:0 0 8px;font-size:15px}.qr{background:#fff;border-radius:6px;margin:8px 0;padding:8px;display:block}ul.plain{margin:0 0 8px;padding:0;list-style:none}ul.plain li{padding:4px 0}.nested{border-left:2px solid var(--border);padding:4px 0 8px 24px}.print-only{display:none}@media print{.sidebar,.no-print{display:none!important}.print-only{display:block}.card{box-shadow:none;break-inside:avoid}}.banner{border-radius:var(--radius);border:1px solid var(--accent);color:var(--accent);background:var(--surface);margin:0 0 16px;padding:10px 14px;font-weight:600}.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.dash-cell{flex-direction:column;gap:6px;min-width:0;display:flex}.dash-cell>.card{flex:1}.dash-cell.wide{grid-column:1/-1}.dash-tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dash-tools>span{margin-right:auto;font-size:13px}.dash-tools button{padding:2px 10px;font-size:13px}.dash-editor{flex-wrap:wrap;align-items:end;gap:12px;display:flex}@media (width<=900px){.dash-grid{grid-template-columns:1fr}}.tabs-help{align-self:center;margin-left:8px}.tip{display:inline}.tip:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}.term{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);text-underline-offset:3px;cursor:help}.tip>.badge,.tip>.sev,.tip>.expl,.tip>.tag{cursor:help}.tip-box{z-index:1000;background:var(--surface);max-width:min(320px,100vw - 12px);color:var(--text);border:1px solid var(--border);text-align:left;text-transform:none;letter-spacing:normal;white-space:normal;pointer-events:none;border-radius:6px;padding:8px 10px;font-size:12.5px;font-weight:400;line-height:1.45;position:fixed;box-shadow:0 4px 16px #0000002e}.tip-box strong{margin-bottom:2px;display:block}.tip-detail{color:var(--muted)}.subnav{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.subnav a{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;text-decoration:none}.subnav a:hover{color:var(--text)}.subnav a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.first-steps{margin:12px 0;padding-left:1.4em;line-height:1.6}.first-steps-waiting{margin:0 0 12px;padding-left:1.4em}.attack-path{flex-wrap:wrap;gap:8px 22px;margin:8px 0 0;padding:0;list-style:none;display:flex}.attack-path li{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:6px;flex-direction:column;flex:160px;gap:2px;min-width:0;padding:8px 10px;display:flex;position:relative}.attack-path li+li:before{content:"→";color:var(--muted);position:absolute;top:50%;left:-17px;transform:translateY(-50%)}.attack-step{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8em}@media (width<=700px){.attack-path li+li:before{display:none}}.row-actions,.review-form{flex-wrap:wrap;align-items:end;gap:6px;display:flex}.ask-dialog{border:1px solid var(--border);background:var(--surface);width:min(420px,100vw - 32px);height:fit-content;color:var(--text);border-radius:12px;margin:auto;padding:24px;position:fixed;inset:0}.ask-dialog::backdrop{background:#00000073}.ask-dialog h2{margin:0 0 8px}.ask-dialog input{box-sizing:border-box;width:100%}.ask-dialog .actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.nav a.locked{opacity:.65}.locked-feature{text-align:center}.locked-feature .button{margin-top:.5rem;display:inline-block}.locked-hint{opacity:.75;white-space:nowrap;font-size:.85em}.support-link{opacity:.8;padding:.4rem .75rem;font-size:.9em;display:block}.lang-menu{position:relative}.lang-menu summary{cursor:pointer;border:1px solid var(--border,#d8dee9);background:var(--surface,transparent);border-radius:6px;align-items:center;gap:.5em;padding:.35em .6em;list-style:none;display:flex}.lang-menu summary::-webkit-details-marker{display:none}.lang-menu summary:after{content:"▾";opacity:.7;margin-left:auto}.lang-menu img{border-radius:2px;flex:none;box-shadow:0 0 0 1px #10285026}.lang-menu ul{background:var(--surface,#fff);border:1px solid var(--border,#d8dee9);z-index:20;border-radius:8px;margin:0;padding:.3em 0;list-style:none;position:absolute;bottom:calc(100% + 4px);left:0;right:0;box-shadow:0 6px 20px #1028502e}.lang-menu button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.55em;padding:.4em .7em;display:flex}.lang-menu button:hover{background:var(--hover,#10285014)}.lang-menu button[aria-current]{font-weight:700}
