:root{--bg: #f3f5f6;--surface: #ffffff;--surface-2: #f8fafa;--sunken: #eef2f3;--hover: #f1f5f5;--ink: #0f1b22;--ink-2: #3a4a53;--muted: #5a6a72;--line: #e3e8ea;--line-2: #d3dbde;--accent: #0e7c7b;--accent-xl: #0E7C7B;--accent-ink: #ffffff;--accent-2: color-mix(in srgb, var(--accent) 78%, #000);--accent-soft: color-mix(in srgb, var(--accent) 16%, var(--surface));--ok: #17703e;--ok-soft: #e3f3e9;--warn: #a86a0c;--warn-soft: #fbf0db;--crit: #c2362b;--crit-soft: #fbe6e3;--dim-D: #2459a6;--dim-I: #1f7a4d;--dim-C: #b3393a;--dim-A: #c0621f;--dim-T: #7446b0;--r-MB: #d6ebdc;--r-B: #b2d8a9;--r-M: #f3d98a;--r-A: #efa66a;--r-MA: #dc5d52;--r-ink: #1a2328;--sh-1: 0 1px 2px rgba(15, 27, 34, .04), 0 1px 3px rgba(15, 27, 34, .05);--sh-2: 0 6px 24px -6px rgba(15, 27, 34, .12), 0 2px 6px rgba(15, 27, 34, .05);--sh-3: 0 24px 64px -12px rgba(15, 27, 34, .28);--r-sm: 8px;--r: 12px;--r-lg: 16px;--r-xl: 20px;--f: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--f-mono: "Geist Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--pad: 20px;--row: 12px;--gap: 16px;--glass: color-mix(in srgb, #ffffff 64%, transparent);--glass-strong: color-mix(in srgb, #ffffff 82%, transparent);--glass-line: color-mix(in srgb, #ffffff 78%, var(--line));--glass-blur: blur(18px) saturate(1.55);--glass-inset: inset 0 1px 0 rgba(255, 255, 255, .78)}:root[data-accent=blue]{--accent: #2f5fd0;--accent-xl: #2F5FD0}:root[data-accent=green]{--accent: #2d7a3e;--accent-xl: #2D7A3E}:root[data-accent=amber]{--accent: #b86e00;--accent-xl: #B86E00;--accent-ink: #1a1204}:root[data-accent=rose]{--accent: #be123c;--accent-xl: #BE123C}:root[data-accent=graphite]{--accent: #3d4c56;--accent-xl: #3D4C56}:root[data-density=compacta]{--pad: 14px;--row: 7px;--gap: 12px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0b1114;--surface: #121a1e;--surface-2: #162025;--sunken: #0f171b;--hover: #1a262c;--ink: #e6edf0;--ink-2: #c1cdd2;--muted: #8b9ca4;--line: #212d33;--line-2: #2d3b42;--accent-ink: #061413;--accent-soft: color-mix(in srgb, var(--accent) 28%, var(--surface));--accent-2: color-mix(in srgb, var(--accent) 78%, #fff);--ok: #5cc98a;--ok-soft: #122b1e;--warn: #e5b45a;--warn-soft: #2e2410;--crit: #f07f75;--crit-soft: #361815;--dim-D: #6f9fe6;--dim-I: #5cc58e;--dim-C: #ea7c7c;--dim-A: #ef9c5c;--dim-T: #b28ded;--sh-1: 0 1px 2px rgba(0, 0, 0, .3);--sh-2: 0 8px 28px -8px rgba(0, 0, 0, .6);--sh-3: 0 24px 64px -12px rgba(0, 0, 0, .7);--glass: color-mix(in srgb, #121a1e 55%, transparent);--glass-strong: color-mix(in srgb, #162025 78%, transparent);--glass-line: color-mix(in srgb, #ffffff 18%, transparent);--glass-inset: inset 0 1px 0 rgba(255, 255, 255, .14)}:root:not([data-accent]):not([data-theme=light]),:root[data-accent=teal]:not([data-theme=light]){--accent: #3fb8b2;--accent-xl: #3FB8B2}:root[data-accent=blue]:not([data-theme=light]){--accent: #8eb4ff;--accent-xl: #8EB4FF}:root[data-accent=green]:not([data-theme=light]){--accent: #6dce86;--accent-xl: #6DCE86}:root[data-accent=amber]:not([data-theme=light]){--accent: #f0c14a;--accent-xl: #F0C14A;--accent-ink: #1a1204}:root[data-accent=rose]:not([data-theme=light]){--accent: #fb7185;--accent-xl: #FB7185}:root[data-accent=graphite]:not([data-theme=light]){--accent: #d5dee6;--accent-xl: #D5DEE6}}:root[data-theme=dark]{color-scheme:dark;--bg: #0b1114;--surface: #121a1e;--surface-2: #162025;--sunken: #0f171b;--hover: #1a262c;--ink: #e6edf0;--ink-2: #c1cdd2;--muted: #8b9ca4;--line: #212d33;--line-2: #2d3b42;--accent-ink: #061413;--accent-soft: color-mix(in srgb, var(--accent) 28%, var(--surface));--accent-2: color-mix(in srgb, var(--accent) 78%, #fff);--ok: #5cc98a;--ok-soft: #122b1e;--warn: #e5b45a;--warn-soft: #2e2410;--crit: #f07f75;--crit-soft: #361815;--dim-D: #6f9fe6;--dim-I: #5cc58e;--dim-C: #ea7c7c;--dim-A: #ef9c5c;--dim-T: #b28ded;--sh-1: 0 1px 2px rgba(0, 0, 0, .3);--sh-2: 0 8px 28px -8px rgba(0, 0, 0, .6);--sh-3: 0 24px 64px -12px rgba(0, 0, 0, .7);--glass: color-mix(in srgb, #121a1e 55%, transparent);--glass-strong: color-mix(in srgb, #162025 78%, transparent);--glass-line: color-mix(in srgb, #ffffff 18%, transparent);--glass-inset: inset 0 1px 0 rgba(255, 255, 255, .14)}:root[data-theme=dark]:not([data-accent]),:root[data-theme=dark][data-accent=teal]{--accent: #3fb8b2;--accent-xl: #3FB8B2}:root[data-theme=dark][data-accent=blue]{--accent: #8eb4ff;--accent-xl: #8EB4FF}:root[data-theme=dark][data-accent=green]{--accent: #6dce86;--accent-xl: #6DCE86}:root[data-theme=dark][data-accent=amber]{--accent: #f0c14a;--accent-xl: #F0C14A;--accent-ink: #1a1204}:root[data-theme=dark][data-accent=rose]{--accent: #fb7185;--accent-xl: #FB7185}:root[data-theme=dark][data-accent=graphite]{--accent: #d5dee6;--accent-xl: #D5DEE6}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.55 var(--f);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.015em;text-wrap:balance}h1{font-size:1.7rem;line-height:1.2;letter-spacing:-.025em}h2{font-size:1.15rem}h3{font-size:1rem}h4{font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:600;margin-bottom:8px}p{margin:0}code,.mono{font-family:var(--f-mono);font-size:.86em}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:.85rem}.crit-t{color:var(--crit)}.ic{flex:none}.ic.muted{color:var(--muted)}.ic.accent{color:var(--accent)}.eyebrow{display:none}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row.spread{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:12px}.spacer{flex:1}.w-full{width:100%}.w-md{width:130px}.w-sm{width:74px}.nowrap{white-space:nowrap}.only-mobile{display:none!important}.app{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100%}.side{position:sticky;top:env(safe-area-inset-top,0px);height:100vh;overflow-y:auto;background:var(--surface);border-right:1px solid var(--line);padding:16px 12px;display:flex;flex-direction:column;gap:14px;z-index:30}.brand{display:flex;align-items:center;gap:10px;padding:2px 8px 4px}.brand b{display:block;font-size:.98rem;letter-spacing:-.02em;line-height:1.1}.brand small{color:var(--muted);font-size:.76rem}.logo{display:grid}.proj-switch{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;padding:9px 10px;min-height:44px;border:1px solid var(--line);border-radius:var(--r);cursor:pointer;background:var(--surface-2);width:100%}.proj-switch:focus-visible{outline:2px solid var(--accent)}.proj-txt{min-width:0;flex:1}.proj-txt b{display:block;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-txt small{display:block;color:var(--muted);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-ic{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);flex:none}.proj-ic.lg{width:38px;height:38px;border-radius:10px}.nav{display:flex;flex-direction:column;gap:1px}.nav-group{font-size:.7rem;font-weight:600;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:14px 10px 6px}.nav-item{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;min-height:44px;padding:10px;border-radius:9px;color:var(--ink-2);cursor:pointer;font-size:.9rem;font-weight:500;width:100%}.nav-item .ic{color:var(--muted)}.nav-item[aria-current=page]{background:var(--accent-soft);color:var(--ink);box-shadow:inset 3px 0 0 var(--accent)}.nav-item[aria-current=page] .ic{color:var(--accent)}.nav-item.locked{color:var(--muted)}.nav-item.locked .ic{opacity:.7}.nav-note{margin:8px 4px 2px;padding:10px 12px;border-radius:10px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));color:var(--ink);font-size:.78rem;line-height:1.4}.nav-note b{display:block;margin-bottom:2px;color:var(--accent);font-weight:600}.nav-item:focus-visible{outline:2px solid var(--accent)}.count{margin-left:auto;font:600 .7rem/1 var(--f-mono);padding:3px 7px;border-radius:999px;background:var(--sunken);color:var(--ink-2)}.count.warn{background:var(--warn-soft);color:var(--warn)}.count.crit{background:var(--crit-soft);color:var(--crit)}.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:1px;padding-top:10px;border-top:1px solid var(--line)}.me{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;padding:8px;min-height:44px;border-radius:var(--r);cursor:pointer;margin-top:6px}.me[aria-current=page]{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.me b{display:block;font-size:.86rem}.me small{display:block;font-size:.74rem;color:var(--muted);max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avatar{width:var(--s);height:var(--s);border-radius:50%;display:inline-grid;place-items:center;font-weight:600;font-size:calc(var(--s) * .38);color:#fff;flex:none;letter-spacing:.02em}.c-teal{background:#0e7c7b}.c-blue{background:#2f5fd0}.c-green{background:#2d7a3e}.c-amber{background:#b7791f}.c-rose{background:#c2416b}.c-slate{background:#475569}.main{min-width:0}.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;align-items:center;gap:10px;padding:12px 28px;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}.crumbs{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.crumb-proj{color:var(--muted);font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.crumb-cur{font-weight:600;white-space:nowrap}kbd{font:500 .7rem/1 var(--f-mono);padding:4px 6px;border-radius:6px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);white-space:nowrap}.icon-btn{all:unset;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;display:inline-grid;place-items:center;border-radius:10px;cursor:pointer;color:var(--ink-2);flex:none}.icon-btn:active:not(:disabled){transform:scale(.97)}.icon-btn:focus-visible{outline:2px solid var(--accent)}.icon-btn.sm{width:44px;height:44px;border-radius:8px}.icon-btn[disabled]{opacity:.35;cursor:default}.avatar-btn{all:unset;cursor:pointer;border-radius:50%;display:grid}.avatar-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.view{max-width:1320px;margin:0 auto;padding:28px 28px 64px;display:flex;flex-direction:column;gap:22px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.ph-text{max-width:780px}.page-head .lead,.hero .lead{color:var(--ink-2);margin-top:8px;max-width:72ch;font-size:.96rem}.ph-actions{display:flex;gap:8px;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--pad);box-shadow:var(--sh-1)}.card.flush{padding:0;overflow:hidden}.card.soft{background:var(--surface-2);box-shadow:none}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.grid{display:grid;gap:var(--gap)}.grid>*,.kpi-grid>*,.export-grid>*,.start-grid>*{min-width:0}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}.g-side{grid-template-columns:minmax(240px,320px) minmax(0,1fr)}.g-cat{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:44px;min-height:44px;padding:0 16px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);cursor:pointer;font-weight:500;font-size:.87rem;white-space:nowrap;box-shadow:var(--sh-1);transition:background .12s,border-color .12s,transform .1s ease-out;text-decoration:none}.btn:active:not(:disabled){transform:scale(.97)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--accent)}.btn.danger{color:var(--crit)}.btn.danger-solid{background:var(--crit);border-color:var(--crit);color:#fff}.btn.sm{height:44px;min-height:44px;padding:0 12px;font-size:.82rem;border-radius:8px;gap:5px}.btn[disabled]{opacity:.5;cursor:not-allowed}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar.sticky{position:sticky;top:calc(61px + env(safe-area-inset-top,0px));z-index:5;background:var(--bg);padding:8px 0;margin:-8px 0}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:999px;font-size:.74rem;font-weight:600;white-space:nowrap}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.crit{background:var(--crit-soft);color:var(--crit)}.badge.accent{background:var(--accent-soft);color:color-mix(in srgb,var(--accent) 70%,var(--ink))}.badge.neutral{background:var(--sunken);color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 7px;border-radius:6px;font:500 .74rem/1 var(--f-mono);background:var(--sunken);color:var(--ink-2);border:1px solid var(--line);white-space:nowrap}.chip em{font-style:normal;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:4px}.code-chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;min-height:44px;height:44px;padding:0 10px;border-radius:6px;font:500 .74rem/1 var(--f-mono);background:var(--accent-soft);color:var(--accent);cursor:pointer;white-space:nowrap}.code-chip:focus-visible{outline:2px solid var(--accent)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-1)}.tbl{width:100%;border-collapse:separate;border-spacing:0}.tbl th,.tbl td{padding:var(--row) 12px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--line)}.tbl th{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:var(--surface-2);white-space:nowrap;position:sticky;top:0}.tbl tbody tr:last-child td{border-bottom:0}.tbl td.c,.tbl th.c{text-align:center}.t-strong{font-weight:500}.tbl code{white-space:nowrap}.matrix-wrap{overflow-x:auto}.matrix{width:100%;border-collapse:collapse;margin:10px 0;table-layout:fixed}.matrix th,.matrix td{text-align:center;padding:10px 8px;border:1px solid var(--line);font-size:.88rem}.matrix thead th:first-child,.matrix tbody th{text-align:left;font-weight:600;width:7rem}.matrix td.crit{background:var(--crit-soft);color:var(--crit)}.matrix td.high{background:var(--high-soft);color:var(--high)}.matrix td.warn{background:var(--warn-soft);color:var(--warn)}.matrix td.accent{background:var(--accent-soft);color:var(--accent)}.kpi-grid.crit-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}.kpi{display:flex;flex-direction:column;gap:6px;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.kpi-l{display:flex;align-items:center;gap:7px;font-size:.8rem;font-weight:500;color:var(--muted)}.kpi-v{font-size:1.9rem;font-weight:600;letter-spacing:-.03em;line-height:1.1;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.kpi-v small{font-size:.88rem;color:var(--muted);font-weight:500;letter-spacing:0}.kpi-s{font-size:.8rem;color:var(--muted)}.kpi.alert .kpi-v{color:var(--crit)}.delta{font-size:.72rem;font-weight:600;padding:2px 6px;border-radius:6px;letter-spacing:0}.delta.good{background:var(--ok-soft);color:var(--ok)}.delta.bad{background:var(--crit-soft);color:var(--crit)}.mini-stats{display:flex;gap:18px;font-size:.82rem;color:var(--muted);margin-bottom:10px}.mini-stats b{color:var(--ink);font-size:1.05rem;margin-right:3px}.mini-stats .crit-t b{color:var(--crit)}.bars{display:flex;flex-direction:column;gap:9px}.bar-row{display:grid;grid-template-columns:minmax(0,1fr) 140px 42px;gap:12px;align-items:center;font-size:.84rem}.bar-row .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-row code{color:var(--muted)}.bar{display:block;height:8px;border-radius:999px;background:var(--sunken);overflow:hidden}.bar i{display:block;height:100%;background:var(--ok);border-radius:999px}.bar i.part{background:var(--warn)}.bar-row .pc{font:500 .8rem var(--f-mono);text-align:right}.findings{display:flex;flex-direction:column;gap:10px}.finding{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:6px;overflow:hidden}.f-hd{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.f-t{font-weight:600;font-size:.92rem}.f-d{font-size:.86rem;color:var(--ink-2)}.f-r{font-size:.84rem;display:flex;gap:6px;align-items:flex-start;color:var(--ink)}.f-r .ic{color:var(--accent);margin-top:3px}.f-ref{font:500 .72rem var(--f-mono);color:var(--muted)}.findings.compact .finding{padding:11px 14px 11px 16px}.sev-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}.sev-card{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;padding:16px 20px;min-height:44px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);cursor:pointer;box-shadow:var(--sh-1)}.sev-card b{font-size:1.9rem;font-weight:600;letter-spacing:-.03em;line-height:1.1}.sev-card span{color:var(--muted);font-size:.84rem;font-weight:500}.sev-card.crit b{color:var(--crit)}.sev-card.warn b{color:var(--warn)}.sev-card.accent b{color:var(--accent)}.sev-card.on{outline:2px solid currentColor;background:var(--accent-soft)}.sev-card.crit.on{outline-color:var(--crit)}.sev-card.warn.on{outline-color:var(--warn)}.sev-card.accent.on{outline-color:var(--accent)}.sev-card:focus-visible{outline:2px solid var(--accent)}.alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--r);font-size:.88rem;border:1px solid transparent}.alert.warn{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}.alert a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.alert.warn>.ic{color:var(--warn);margin-top:1px}.alert.crit{background:var(--crit-soft);color:var(--crit);margin-bottom:14px;align-items:center}.norma{font-size:.9rem;line-height:1.6;color:var(--ink-2);white-space:pre-line;padding:12px 14px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);max-height:260px;overflow-y:auto}.refs{margin-top:8px}.refs summary{cursor:pointer;font-size:.82rem;color:var(--accent);font-weight:500}.refs .norma{margin-top:8px}.kv{display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px 14px;font-size:.86rem;margin:0}.kv dt{color:var(--muted)}.kv dd{margin:0;min-width:0}.plain{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.plain li{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.86rem}pre.code{max-width:100%;font:.78rem/1.55 var(--f-mono);background:var(--sunken);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;overflow-x:auto;margin:0 0 12px;white-space:pre}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:36px 20px;color:var(--muted)}.empty-state h3{color:var(--ink)}.empty-state p{max-width:46ch;font-size:.88rem}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(22px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);padding:10px 16px;min-height:44px;border-radius:12px;font-size:.88rem;box-shadow:var(--sh-3);z-index:70;display:flex;gap:8px;align-items:center;max-width:min(520px,calc(100vw - 32px));animation:toast-in .28s ease-out}.toast.out{animation:toast-out .22s ease-in forwards}.toast .ic{color:var(--accent-2)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px) scale(.96)}to{opacity:1;transform:translate(-50%)}}@keyframes toast-out{to{opacity:0;transform:translate(-50%,8px) scale(.96)}}.tip{position:fixed;z-index:80;pointer-events:none;background:var(--ink);color:var(--bg);font-size:.76rem;padding:6px 9px;border-radius:8px;max-width:280px;box-shadow:var(--sh-2);line-height:1.35}.scrim{display:none}input[type=text],input[type=number],input[type=date],input[type=search],input[type=password],select,textarea{height:44px;min-height:44px;background:var(--surface);border:1px solid var(--line-2);border-radius:9px;padding:0 10px;min-width:0;max-width:100%;font-size:.88rem;transition:border-color .12s,box-shadow .12s}textarea{height:auto;min-height:76px;padding:8px 10px;resize:vertical;line-height:1.5;width:100%}textarea.tall{min-height:110px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}input[disabled]{opacity:.55}select{padding-right:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23687880' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.num-in{width:64px;font-family:var(--f-mono);text-align:center;padding:0 4px}input.sub{margin-top:5px;height:30px;font-size:.8rem;color:var(--ink-2)}input.late{border-color:var(--crit);color:var(--crit)}.fld{display:flex;flex-direction:column;gap:6px;font-size:.78rem;color:var(--ink-2);font-weight:500;min-width:0}.fld>:is(input,select,textarea){width:100%;color:var(--ink);font-weight:400}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.span2{grid-column:1 / -1}.inline-fld{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:var(--ink-2);font-weight:500}.switch{position:relative;display:inline-flex;flex:none;min-width:44px;min-height:44px;align-items:center}.switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}.switch span{width:38px;height:22px;border-radius:999px;background:var(--line-2);transition:background .15s;position:relative}.switch span:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .15s}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translate(16px)}.switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.switch-l{display:inline-flex;gap:10px;align-items:center;font-size:.87rem;cursor:pointer}.seg{display:inline-flex;flex-wrap:wrap;max-width:100%;padding:3px;background:var(--sunken);border-radius:10px;gap:2px;border:1px solid var(--line)}.seg button{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:.83rem;font-weight:500;color:var(--ink-2)}.seg button[aria-pressed=true]{background:var(--accent-soft);color:color-mix(in srgb,var(--accent) 70%,var(--ink));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent)}.lang-switch{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface);flex:none;min-height:44px}.lang-switch button{all:unset;box-sizing:border-box;cursor:pointer;min-height:44px;padding:0 12px;font:600 .72rem/1 var(--f-mono);color:var(--muted)}.lang-switch button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.lang-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.seg button:focus-visible{outline:2px solid var(--accent)}.profile-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:28px 20px}.profile-card h2{margin-top:8px}.swatches{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap;align-items:center}.swatch{all:unset;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;cursor:pointer;display:inline-block;background-color:var(--dot, #888)!important;box-shadow:inset 0 0 0 1px #ffffff73,0 0 0 1px color-mix(in srgb,var(--ink) 45%,transparent)}.swatch.on{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}.swatch:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.swatch.c-teal,.swatch.a-teal{--dot: #0e7c7b}.swatch.c-blue,.swatch.a-blue{--dot: #2f5fd0}.swatch.c-green,.swatch.a-green{--dot: #2d7a3e}.swatch.c-amber,.swatch.a-amber{--dot: #d4920a}.swatch.c-rose,.swatch.a-rose{--dot: #e11d48}.swatch.c-slate{--dot: #64748b}.swatch.a-graphite{--dot: #4b5c67}:root[data-theme=dark] .swatch.c-teal,:root[data-theme=dark] .swatch.a-teal{--dot: #3fb8b2}:root[data-theme=dark] .swatch.c-blue,:root[data-theme=dark] .swatch.a-blue{--dot: #8eb4ff}:root[data-theme=dark] .swatch.c-green,:root[data-theme=dark] .swatch.a-green{--dot: #6dce86}:root[data-theme=dark] .swatch.c-amber,:root[data-theme=dark] .swatch.a-amber{--dot: #f0c14a}:root[data-theme=dark] .swatch.c-rose,:root[data-theme=dark] .swatch.a-rose{--dot: #fb7185}:root[data-theme=dark] .swatch.c-slate{--dot: #94a3b8}:root[data-theme=dark] .swatch.a-graphite{--dot: #d5dee6}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .swatch.c-teal,:root:not([data-theme=light]) .swatch.a-teal{--dot: #3fb8b2}:root:not([data-theme=light]) .swatch.c-blue,:root:not([data-theme=light]) .swatch.a-blue{--dot: #8eb4ff}:root:not([data-theme=light]) .swatch.c-green,:root:not([data-theme=light]) .swatch.a-green{--dot: #6dce86}:root:not([data-theme=light]) .swatch.c-amber,:root:not([data-theme=light]) .swatch.a-amber{--dot: #f0c14a}:root:not([data-theme=light]) .swatch.c-rose,:root:not([data-theme=light]) .swatch.a-rose{--dot: #fb7185}:root:not([data-theme=light]) .swatch.c-slate{--dot: #94a3b8}:root:not([data-theme=light]) .swatch.a-graphite{--dot: #d5dee6}}.pf-stats{display:flex;gap:24px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);width:100%;justify-content:center}.pf-stats b{display:block;font-size:1.4rem;font-weight:600}.pf-stats span{font-size:.78rem;color:var(--muted)}.settings{display:flex;flex-direction:column;gap:var(--gap);max-width:920px}.settings h3{margin-bottom:4px}.set-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;border-top:1px solid var(--line);flex-wrap:wrap}.settings h3+.set-row,.settings p+.set-row{border-top:0}.set-row b{font-weight:500}.set-row p{font-size:.82rem;color:var(--muted);margin-top:2px;max-width:60ch}.set-ctl{flex:none;max-width:100%}.cvss .mini{display:inline-flex;align-items:center;gap:5px;font:500 .78rem var(--f-mono);color:var(--muted)}.cvss input{width:62px;text-align:center;font-family:var(--f-mono)}.rules-box summary{cursor:pointer;font-weight:500;padding:14px 0 6px;border-top:1px solid var(--line)}.rules-list{display:flex;flex-direction:column;gap:2px;margin-top:6px}.rule-row{display:grid;grid-template-columns:auto 60px 96px minmax(0,1fr);gap:12px;align-items:center;padding:7px 4px;font-size:.84rem;border-radius:8px;cursor:pointer}.help-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:var(--gap);align-items:start}.help-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:80px}.help-nav button{all:unset;box-sizing:border-box;display:flex;gap:10px;align-items:center;min-height:44px;padding:10px 12px;border-radius:9px;cursor:pointer;font-size:.88rem;color:var(--ink-2);font-weight:500}.help-nav button .ic{color:var(--muted)}.help-nav button[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:var(--sh-1)}.help-nav button[aria-current=page] .ic{color:var(--accent)}.help-nav button:focus-visible{outline:2px solid var(--accent)}.help-body{padding:26px}.help-body>h2{margin-bottom:16px;font-size:1.25rem}.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.steps li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.steps li:first-child{border-top:0}.steps p{color:var(--ink-2);font-size:.87rem}.step-n{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font:600 .82rem var(--f-mono)}.flow{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1.1fr) 30px minmax(0,1fr);gap:10px;align-items:center}.flow-col{display:flex;flex-direction:column;gap:10px}.flow-arrow{color:var(--muted);display:grid;place-items:center}.fnode{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:12px 14px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface-2)}.fnode .ic{grid-row:span 2;color:var(--accent)}.fnode small{color:var(--muted);font-size:.76rem}.fnode.big{padding:20px;background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.glossary{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.glossary>div{padding:14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line)}.glossary dt{font-weight:600;margin-bottom:4px}.glossary dd{margin:0;font-size:.86rem;color:var(--ink-2)}.kbd-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kbd-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r);border:1px solid var(--line)}.kbd-list em{font-style:normal;color:var(--muted);font-size:.8rem}.kbd-list p{font-size:.86rem;color:var(--ink-2);text-align:right}.faq{display:flex;flex-direction:column;gap:8px}.faq details{border:1px solid var(--line);border-radius:var(--r);padding:12px 16px}.faq summary{cursor:pointer;font-weight:500}.faq p{margin-top:8px;color:var(--ink-2);font-size:.88rem}.about p{margin-bottom:10px;color:var(--ink-2)}:root{--high: #c0621f;--high-soft: #fcebdd}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--high: #ef9c5c;--high-soft: #33200f}}:root[data-theme=dark]{--high: #ef9c5c;--high-soft: #33200f}#root{min-height:100%}.block{display:flex;flex-direction:column;gap:12px;scroll-margin-top:80px}.block-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.block-head p{max-width:72ch}.view>.page-head{scroll-margin-top:80px}.proj-switch.static,.me.static{cursor:default}.count.high{background:var(--high-soft);color:var(--high)}.crumbs .badge{margin-left:4px}.top-actions{display:flex;gap:8px;align-items:center}.badge.high{background:var(--high-soft);color:var(--high)}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.chip.accent{background:var(--accent-soft);color:var(--accent);border-color:transparent}.chip.accent em{color:color-mix(in srgb,var(--accent) 70%,var(--muted))}.sev-cards.four{grid-template-columns:repeat(4,minmax(0,1fr))}.sev-card.high b{color:var(--high)}.sev-card.high.on{background:var(--high-soft);outline-color:var(--high)}.sev-card small{color:var(--muted);font-size:.74rem}.sev-card.zero b{opacity:.45}.finding{gap:8px}.f-toggle{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;cursor:pointer;width:100%;border-radius:8px}.f-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.f-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:.8rem;color:var(--muted)}.f-meta code{color:var(--ink-2)}.f-chev{margin-left:auto;color:var(--muted);display:grid;transition:transform .15s}.finding.open .f-chev{transform:rotate(180deg)}.f-d b{color:var(--ink);font-weight:600}.f-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;padding-top:14px;margin-top:4px;border-top:1px solid var(--line)}.f-col{display:flex;flex-direction:column;gap:16px;min-width:0}.f-sec p{font-size:.86rem;color:var(--ink-2)}.f-sec h4{display:flex;align-items:center;gap:6px}.f-sec pre.code{margin:10px 0 0;white-space:pre-wrap;word-break:break-word}.f-sec .plain li{align-items:flex-start;flex-wrap:nowrap}.f-sec .plain li>span{flex:1;min-width:0}.f-r.box{padding:10px 12px;border-radius:var(--r);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.f-refs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.finding.open{box-shadow:var(--glass-inset),var(--sh-2)}.tbl .bar-cell{display:grid;grid-template-columns:minmax(60px,1fr) 26px;gap:8px;align-items:center;min-width:140px}.tbl .bar-cell .bar i{background:var(--accent)}.tbl .bar-cell span.num{font:500 .8rem var(--f-mono);text-align:right}.tbl tr.idle td{color:var(--muted)}.tbl tr.sel td{background:var(--accent-soft)}.report-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:var(--gap);align-items:start}.ex-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.md-preview{max-height:440px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:0}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.legal{font-size:.76rem;color:var(--muted);text-align:center;padding-top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.page-head h1:focus{outline:none}.page-head h1:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.top-actions .lang-switch{margin-left:4px}.me{width:100%;text-align:left}.set-row.first{border-top:0}.set-ctl .swatches{margin-top:0}.pf-stats>div{display:flex;flex-direction:column;align-items:center;min-width:0}.pf-stats b small{font-size:.8rem;color:var(--muted);font-weight:500}.pf-stats b.crit-t{color:var(--crit)}.profile-card .swatches{justify-content:center}.profile-card>p.small:last-of-type{max-width:34ch}.pf-actions{margin-top:16px}.help-sub{margin:26px 0 4px}.help-notes{margin-top:18px}.help-notes .card.soft h4{margin-bottom:6px}.glossary-q{margin-bottom:14px}.flow-col.mid{justify-content:center}.fnode b{font-size:.9rem;line-height:1.3}.fnode.big b{font-size:1rem}.fnode.big small{font-size:.8rem;color:var(--ink-2);line-height:1.45;margin-top:4px}.about .about-lead{color:var(--ink);font-weight:500}.faq details[open]{background:var(--surface-2)}.faq details[open] summary{color:var(--accent)}.suite{display:flex;flex-direction:column;gap:8px;margin:18px 0 0}.suite h3{font-size:1rem;letter-spacing:-.01em}.suite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}.suite-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:var(--r-lg);background:var(--surface-2);border:1px solid var(--line)}.suite-card.here{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.suite-hd{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 8px}.suite-card p{flex:1;margin:0;font-size:.84rem;color:var(--ink-2)}@media (max-width: 900px){.suite-grid{grid-template-columns:1fr}}.support-form .form-grid{margin-top:2px}.form-err{display:flex;align-items:center;gap:6px;margin-top:12px;color:var(--crit);font-size:.84rem;font-weight:500}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--crit)}.res-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column}.res-list li{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.res-list li:first-child{border-top:0;padding-top:4px}.res-list li>span:nth-child(2){flex:1;min-width:0}.res-list b,.res-list a{display:inline-flex;align-items:center;gap:5px;font-weight:500;font-size:.9rem}.res-list a{color:var(--accent);text-decoration:none}.res-list small{display:block;color:var(--muted);font-size:.78rem}.ex-ic.sm{width:34px;height:34px;border-radius:10px;flex:none}.legal-note{margin:0}.legal-note b{display:block;margin-bottom:4px}.legal-note p{color:var(--ink-2);font-size:.85rem}.legal-note p+p{margin-top:6px}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:24px;background:var(--bg);overflow:hidden;transition:opacity .32s ease,visibility .32s ease}.splash.out{opacity:0;visibility:hidden;pointer-events:none}.splash-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.splash-logo{position:relative;display:grid;place-items:center;width:88px;height:88px;margin-bottom:6px}.splash-mark svg{display:block}.splash-title{font-size:1.85rem;letter-spacing:-.03em;color:var(--ink)}.splash-sub{color:var(--muted);font-size:.92rem}.splash-bar{position:relative;width:200px;max-width:70vw;height:3px;margin-top:12px;border-radius:999px;background:var(--sunken);overflow:hidden}.splash-bar i{position:absolute;top:0;bottom:0;left:0;width:38%;border-radius:inherit;background:var(--accent);animation:splash-indeterminate 1.25s ease-in-out infinite}.splash-bar.done i{width:100%;animation:none;transform:none}.splash-foot{position:absolute;left:24px;right:24px;bottom:calc(20px + env(safe-area-inset-bottom,0px));text-align:center;font-size:.72rem;color:var(--muted)}@keyframes splash-indeterminate{0%{transform:translate(-100%)}to{transform:translate(265%)}}@media (max-width: 1180px){.kpi-grid,.kpi-grid.crit-summary,.sev-cards.four{grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid,.g-main{grid-template-columns:1fr}}.mnav,.msheet-backdrop{display:none}@media (max-width: 900px){html,body{overflow-x:clip}html:has(body.sheet-open),body.sheet-open{overflow:hidden}.app{grid-template-columns:1fr}.side{display:none!important}.top{top:0;gap:6px;padding:calc(10px + env(safe-area-inset-top,0px)) calc(12px + env(safe-area-inset-right,0px)) 10px calc(12px + env(safe-area-inset-left,0px))}.crumbs{overflow:hidden}.crumb-cur{min-width:0;overflow:hidden;text-overflow:ellipsis}.crumbs .badge{flex:none}.top-actions{flex:none;gap:4px}.top-actions .btn span.lbl{display:none}.top-actions .btn{width:44px;height:44px;min-width:44px;min-height:44px;padding:0}.crumb-proj,.crumbs>.ic{display:none}.view{padding:20px calc(16px + env(safe-area-inset-right,0px)) calc(128px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.view,.view>*,.block,.block>*,.card,.table-wrap,.finding,.settings,.help-layout,.help-body,.stack,.report-grid,.f-body,.f-col,.page-head,.ph-text,.main{min-width:0;max-width:100%}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.tbl{width:max-content;min-width:100%}.f-body{grid-template-columns:1fr}.f-meta code,.f-t,.f-d,.kv dd,.finding code{overflow-wrap:anywhere}.f-sec .plain li{flex-wrap:wrap}.g2,.g3,.g-side,.help-layout,.glossary,.flow,.form-grid,.kbd-list{grid-template-columns:1fr}.flow-arrow{transform:rotate(90deg)}.help-nav{position:static;flex-direction:row;overflow-x:auto;min-width:0;max-width:100%}.help-nav button{white-space:nowrap}.steps li{grid-template-columns:34px minmax(0,1fr)}.steps li>.btn{grid-column:2;justify-self:start}.kv{grid-template-columns:minmax(88px,38%) minmax(0,1fr)}.set-row{align-items:flex-start}.set-ctl{min-width:0}.bar-row{grid-template-columns:minmax(0,1fr) minmax(72px,110px) 36px;gap:8px}.res-list li,.alert,.pf-stats,.mini-stats,.switch-l{flex-wrap:wrap}.switch-l>span:last-child{min-width:0}.help-body{padding:18px 16px}h1{font-size:1.45rem}.toast{bottom:calc(88px + env(safe-area-inset-bottom,0px));max-width:min(520px,calc(100vw - 24px))}.splash{padding:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(56px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.splash-inner{max-width:100%;width:min(100%,420px)}.splash-title{font-size:clamp(1.35rem,8vw,2rem);max-width:100%}.splash-sub{max-width:34ch}.splash-foot{left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px))}.mnav{display:flex;gap:2px;position:fixed;z-index:60;left:max(10px,env(safe-area-inset-left,0px));right:max(10px,env(safe-area-inset-right,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px));height:64px;padding:6px;border-radius:var(--r-lg);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);box-shadow:var(--glass-inset),var(--sh-3)}.mnav__btn{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:var(--muted);cursor:pointer;font:600 10px/1.15 var(--f);border-radius:10px;padding:2px}.mnav__btn span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mnav__btn:active{transform:scale(.97)}.mnav__btn[aria-current=page],.mnav__btn[aria-expanded=true]{color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 -2px 0 var(--accent)}.mnav__btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.mnav__badge{position:absolute;top:1px;left:calc(50% + 4px);min-width:16px;height:16px;padding:0 4px;border-radius:999px;font:700 9px/16px var(--f-mono);text-align:center;color:var(--warn);background:var(--warn-soft)}.mnav__badge.crit{background:var(--crit-soft);color:var(--crit)}.mnav__badge.warn{background:var(--warn-soft);color:var(--warn)}.msheet-backdrop{display:flex;align-items:flex-end;justify-content:center;position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#080e1173;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:msheet-fade .18s ease-out}.msheet{width:min(560px,calc(100% - 16px));max-height:min(78dvh,78vh);overflow-y:auto;margin:0 8px calc(84px + env(safe-area-inset-bottom,0px));padding:12px 12px 16px;border-radius:var(--r-xl);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);box-shadow:var(--glass-inset),var(--sh-3);animation:msheet-rise .26s cubic-bezier(.2,.8,.2,1)}.msheet__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 4px 10px;font:600 .78rem/1 var(--f);letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.msheet__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.msheet__item{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;min-height:44px;padding:10px 4px;border-radius:var(--r);border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 72%,transparent);color:var(--ink);cursor:pointer;font:600 .72rem/1.25 var(--f);text-align:center}.msheet__item>span:last-child{max-width:100%;overflow-wrap:anywhere}.msheet__item:active{transform:scale(.97)}.msheet__item[aria-current=page]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.msheet__item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.msheet__icon{width:38px;height:38px;display:grid;place-items:center;color:var(--accent);border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.msheet__item[aria-current=page] .msheet__icon{background:var(--accent);color:var(--accent-ink)}}@media (max-width: 900px) and (max-height: 700px){.splash .splash-logo{width:84px;height:84px;margin-bottom:2px}.splash .splash-mark{transform:scale(.82)}.splash .splash-title{font-size:1.35rem}.splash .splash-bar{margin-top:8px}.splash .splash-inner{gap:6px}}@media (max-width: 560px){.toast{font-size:.8rem;padding:8px 12px}.kpi-grid,.sev-cards.four{grid-template-columns:1fr}}@media (max-width: 420px){.msheet__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@keyframes msheet-fade{0%{opacity:0}}@keyframes msheet-rise{0%{transform:translateY(16px);opacity:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}.splash-bar i{width:100%;opacity:.55;background:var(--accent);transform:none}}:root[data-motion=reduce] *,:root[data-motion=reduce] *:before,:root[data-motion=reduce] *:after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}:root[data-motion=reduce] .splash-bar i{width:100%;opacity:.55;background:var(--accent);transform:none}body{background:var(--bg)}.side,.top{background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-line);box-shadow:var(--glass-inset),var(--sh-1)}.top{border-bottom-color:var(--glass-line)}.card,.card.soft,.kpi,.sev-card,.finding,.proj-switch,.table-wrap,.tbl th{background:var(--surface);border-color:var(--line);box-shadow:var(--sh-1)}.card.soft,.tbl th{background:var(--surface-2)}.finding.open{box-shadow:var(--sh-2)}.btn:not(.primary):not(.danger-solid):not(.ghost){background:var(--surface);border-color:var(--line-2)}.sev-card.crit.on{background:var(--crit-soft)}.sev-card.high.on{background:var(--high-soft)}.sev-card.warn.on{background:var(--warn-soft)}.sev-card.accent.on{background:var(--accent-soft)}@media (prefers-reduced-transparency: reduce){.side,.top,.mnav,.msheet{background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none}}:root[data-transparency=reduce] .side,:root[data-transparency=reduce] .top,:root[data-transparency=reduce] .mnav,:root[data-transparency=reduce] .msheet{background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none}:root[data-transparency=reduce] .sev-card.crit.on{background:var(--crit-soft)}:root[data-transparency=reduce] .sev-card.high.on{background:var(--high-soft)}:root[data-transparency=reduce] .sev-card.warn.on{background:var(--warn-soft)}:root[data-transparency=reduce] .sev-card.accent.on{background:var(--accent-soft)}@media (hover: hover) and (pointer: fine){.proj-switch:hover{border-color:var(--line-2);background:var(--hover)}.proj-switch.static:hover{border-color:var(--line);background:var(--surface-2)}.nav-item:hover{background:var(--hover);color:var(--ink)}.me:hover{background:var(--hover)}.me.static:hover{background:transparent}.icon-btn:hover{background:var(--hover);color:var(--ink)}.btn:hover{background:var(--hover);border-color:var(--line-2)}.btn.primary:hover{background:var(--accent-2);border-color:var(--accent-2);color:var(--accent-ink)}.btn.ghost:hover{background:var(--accent-soft)}.code-chip:hover{background:var(--accent);color:var(--accent-ink)}.tbl tbody tr:hover td{background:var(--hover)}.sev-card:hover{border-color:var(--line-2)}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--line-2) 50%,var(--muted))}.seg button:hover{color:var(--ink)}.help-nav button:hover{background:var(--surface)}.f-toggle:hover .f-t{color:var(--accent)}.res-list a:hover{text-decoration:underline}.mnav__btn:hover{color:var(--ink)}.msheet__item:hover{background:var(--hover)}}.nav-item:active,.sev-card:active,.swatch:active,.lang-switch button:active,.help-nav button:active,.seg button:active,.mnav__btn:active,.msheet__item:active{transform:scale(.97);transition:transform .1s ease-out}.connect-card{margin-bottom:var(--gap)}.connect-card .connect-legal{margin:12px 0 16px}.connect-card .form-grid{margin-top:4px}.connect-legal p{margin:4px 0 0;font-size:.84rem}.connect-legal a{color:var(--ink);text-decoration:underline;text-underline-offset:2px;display:inline-flex;align-items:center;gap:4px}.connect-card .form-foot .row{justify-content:flex-end}.err-list{margin:6px 0 0;padding-left:1.1em;font-size:.84rem}.err-list li{margin:2px 0}.cov-detail{color:var(--ink-2);font-size:.84rem;max-width:42rem}.treat-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;margin-top:8px}@media (max-width: 720px){.treat-grid{grid-template-columns:1fr}}
