:root{--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", "Cascadia Mono", "Consolas", "Menlo", monospace;--fs-12: .75rem;--fs-13: .8125rem;--fs-14: .875rem;--fs-15: .9375rem;--fs-16: 1rem;--fs-18: 1.125rem;--fs-20: 1.25rem;--fs-24: 1.5rem;--fs-30: 1.875rem;--fs-40: 2.5rem;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-tight: 1.15;--lh-snug: 1.3;--lh-normal: 1.5;--lh-relaxed: 1.65;--ls-tight: -.015em;--ls-normal: 0;--ls-wide: .02em;--ls-caps: .08em;--space-0: 0;--space-0_5: 2px;--space-1: 4px;--space-1_5: 6px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--r-0: 0;--r-xs: 2px;--r-sm: 4px;--r-md: 6px;--r-lg: 8px;--r-xl: 10px;--r-full: 999px;--bw-1: 1px;--bw-2: 2px;--dur-instant: 80ms;--dur-fast: .14s;--dur-base: .2s;--dur-slow: .32s;--ease-out: cubic-bezier(.2, .7, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--z-base: 1;--z-sticky: 100;--z-dropdown: 500;--z-toast: 800;--z-dialog: 1000}:root,:root[data-theme=light]{--bg-canvas: #f6f5f1;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-sunken: #efeeea;--bg-hover: #eeede9;--bg-active: #e5e3dd;--bg-tint: #ecf4fa;--fg-ink: #15181c;--fg-default: #2a2e35;--fg-muted: #5b6068;--fg-faint: #666b74;--fg-on-accent: #ffffff;--fg-on-affect: #ffffff;--border-subtle: #e4e3de;--border-default: #d6d4cd;--border-strong: #b4b1a8;--border-focus: #2872c4;--accent: #2872c4;--accent-hover: #225fa6;--accent-active: #1c5089;--accent-fg: #225fa6;--accent-tint: #ecf4fa;--accent-tint-2: #d4e6f5;--c-affected: #b8392b;--c-affected-fg: #8b2417;--c-affected-bg: #fbeae7;--c-affected-border: #ecbcb3;--c-safe: #3e8856;--c-safe-fg: #2c6a40;--c-safe-bg: #e7f2ea;--c-safe-border: #bcdcc4;--c-unknown: #b07314;--c-unknown-fg: #855511;--c-unknown-bg: #fbf1de;--c-unknown-border: #ebd5a2;--c-na: #6b7079;--c-na-fg: #4d525a;--c-na-bg: #eceae4;--c-na-border: #cfccc4;--info: var(--accent);--info-bg: var(--accent-tint);--shadow-subtle: 0 1px 0 rgba(15, 18, 22, .03), 0 1px 2px rgba(15, 18, 22, .04);--shadow-card: 0 1px 0 rgba(15, 18, 22, .04), 0 1px 3px rgba(15, 18, 22, .06);--shadow-raised: 0 4px 12px rgba(15, 18, 22, .08), 0 2px 4px rgba(15, 18, 22, .04);--shadow-overlay: 0 20px 40px rgba(15, 18, 22, .18), 0 4px 8px rgba(15, 18, 22, .08);--ring-focus: 0 0 0 3px rgba(40, 114, 196, .3);--ring-danger: 0 0 0 3px rgba(184, 57, 43, .28)}:root[data-theme=dark]{--bg-canvas: #0d0f12;--bg-surface: #15181d;--bg-elevated: #1a1e24;--bg-sunken: #0a0c0f;--bg-hover: #1d2128;--bg-active: #232831;--bg-tint: #112434;--fg-ink: #f0eee8;--fg-default: #d8d6cf;--fg-muted: #9aa0aa;--fg-faint: #8e949e;--fg-on-accent: #ffffff;--fg-on-affect: #ffffff;--border-subtle: #1f242b;--border-default: #2a3038;--border-strong: #404853;--border-focus: #5eb3ff;--accent: #5eb3ff;--accent-hover: #7cc1ff;--accent-active: #99cdff;--accent-fg: #8cc4ff;--accent-tint: #112434;--accent-tint-2: #173551;--c-affected: #e16a5b;--c-affected-fg: #ef8a7d;--c-affected-bg: #2a1815;--c-affected-border: #5a2a22;--c-safe: #66b07f;--c-safe-fg: #82c598;--c-safe-bg: #15241b;--c-safe-border: #2b4f36;--c-unknown: #d4a04a;--c-unknown-fg: #e5b66a;--c-unknown-bg: #2a1f0d;--c-unknown-border: #5b4319;--c-na: #8a909a;--c-na-fg: #a3a8b1;--c-na-bg: #1c2026;--c-na-border: #353a43;--info: var(--accent);--info-bg: var(--accent-tint);--shadow-subtle: 0 1px 0 rgba(0, 0, 0, .4);--shadow-card: 0 1px 0 rgba(0, 0, 0, .4), 0 1px 3px rgba(0, 0, 0, .5);--shadow-raised: 0 6px 16px rgba(0, 0, 0, .55), 0 2px 4px rgba(0, 0, 0, .35);--shadow-overlay: 0 24px 48px rgba(0, 0, 0, .7), 0 6px 12px rgba(0, 0, 0, .5);--ring-focus: 0 0 0 3px rgba(94, 179, 255, .32);--ring-danger: 0 0 0 3px rgba(225, 106, 91, .3)}html{font-family:var(--font-sans);font-size:14px;line-height:var(--lh-normal);color:var(--fg-default);background:var(--bg-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);color:var(--fg-default);background:var(--bg-canvas)}.t-display{font-family:var(--font-sans);font-size:var(--fs-40);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--fg-ink)}.t-h1{font-family:var(--font-sans);font-size:var(--fs-30);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--fg-ink)}.t-h2{font-family:var(--font-sans);font-size:var(--fs-24);font-weight:var(--fw-semibold);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:var(--fg-ink)}.t-h3{font-family:var(--font-sans);font-size:var(--fs-20);font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--fg-ink)}.t-h4{font-family:var(--font-sans);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--fg-ink)}.t-body{font-family:var(--font-sans);font-size:var(--fs-14);font-weight:var(--fw-regular);line-height:var(--lh-normal);color:var(--fg-default)}.t-body-lg{font-size:var(--fs-15);line-height:var(--lh-relaxed)}.t-small{font-family:var(--font-sans);font-size:var(--fs-13);line-height:var(--lh-normal);color:var(--fg-default)}.t-caption{font-family:var(--font-sans);font-size:var(--fs-12);line-height:var(--lh-normal);color:var(--fg-muted)}.t-eyebrow{font-family:var(--font-sans);font-size:var(--fs-12);font-weight:var(--fw-semibold);line-height:var(--lh-normal);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--fg-muted)}.t-mono{font-family:var(--font-mono);font-size:var(--fs-13);font-feature-settings:"calt" 0;letter-spacing:0}.t-numeric{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"calt" 0;letter-spacing:0}.t-code-inline{font-family:var(--font-mono);font-size:.92em;background:var(--bg-sunken);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-xs);padding:1px 5px;color:var(--fg-ink)}@media(prefers-reduced-motion:reduce){:root{--dur-instant: 0ms;--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms}*,*:before,*:after{animation-duration:0ms!important;animation-iteration-count:1!important;transition-duration:0ms!important;scroll-behavior:auto!important}}:where(a,button,input,select,textarea,[tabindex],summary):focus-visible{outline:none;box-shadow:var(--ring-focus);border-color:var(--border-focus)}::selection{background:var(--accent-tint-2);color:var(--fg-ink)}.btn{--_h: 32px;--_px: 14px;--_fs: var(--fs-14);--_radius: var(--r-md);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--_h);padding:0 var(--_px);border-radius:var(--_radius);font-family:var(--font-sans);font-size:var(--_fs);font-weight:var(--fw-medium);line-height:1;white-space:nowrap;cursor:pointer;border:var(--bw-1) solid transparent;background:transparent;color:var(--fg-default);transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);user-select:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn--sm{--_h: 26px;--_px: 10px;--_fs: var(--fs-13)}.btn--md{--_h: 32px;--_px: 14px;--_fs: var(--fs-14)}.btn--lg{--_h: 40px;--_px: 18px;--_fs: var(--fs-15)}.btn--primary{background:var(--accent);color:var(--fg-on-accent);border-color:var(--accent)}.btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn--primary:active:not(:disabled){background:var(--accent-active);border-color:var(--accent-active)}.btn--secondary{background:var(--bg-surface);color:var(--fg-ink);border-color:var(--border-default)}.btn--secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong)}.btn--secondary:active:not(:disabled){background:var(--bg-active)}.btn--ghost{background:transparent;color:var(--fg-default);border-color:transparent}.btn--ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--fg-ink)}.btn--ghost:active:not(:disabled){background:var(--bg-active)}.btn--danger{background:var(--c-affected);color:var(--fg-on-affect);border-color:var(--c-affected)}.btn--danger:hover:not(:disabled){filter:brightness(.92)}.btn--icon{width:var(--_h);padding:0;color:var(--fg-muted);background:transparent}.btn--icon:hover:not(:disabled){background:var(--bg-hover);color:var(--fg-ink)}.card{background:var(--bg-surface);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-lg);box-shadow:var(--shadow-subtle)}.card--flat{box-shadow:none}.card--inset{background:var(--bg-sunken);border-color:var(--border-subtle);box-shadow:none}.card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:var(--bw-1) solid var(--border-subtle)}.card__title{font-family:var(--font-sans);font-size:var(--fs-14);font-weight:var(--fw-semibold);color:var(--fg-ink)}.card__body{padding:var(--space-5)}.card__footer{padding:var(--space-3) var(--space-5);border-top:var(--bw-1) solid var(--border-subtle);display:flex;justify-content:flex-end;gap:var(--space-2)}.badge{display:inline-flex;align-items:center;gap:var(--space-1_5);height:22px;padding:0 var(--space-2);border-radius:var(--r-sm);border:var(--bw-1) solid transparent;font-family:var(--font-sans);font-size:var(--fs-12);font-weight:var(--fw-medium);line-height:1;white-space:nowrap;letter-spacing:0}.badge__dot{width:6px;height:6px;border-radius:var(--r-full);flex:0 0 auto}.badge__icon{width:12px;height:12px;flex:0 0 auto}.badge[data-classification=affected]{background:var(--c-affected-bg);color:var(--c-affected-fg);border-color:var(--c-affected-border)}.badge[data-classification=affected] .badge__dot{background:var(--c-affected)}.badge[data-classification=safe]{background:var(--c-safe-bg);color:var(--c-safe-fg);border-color:var(--c-safe-border)}.badge[data-classification=safe] .badge__dot{background:var(--c-safe)}.badge[data-classification=unknown]{background:var(--c-unknown-bg);color:var(--c-unknown-fg);border-color:var(--c-unknown-border)}.badge[data-classification=unknown] .badge__dot{background:var(--c-unknown)}.badge[data-classification=not_applicable]{background:var(--c-na-bg);color:var(--c-na-fg);border-color:var(--c-na-border)}.badge[data-classification=not_applicable] .badge__dot{background:var(--c-na)}.badge--neutral{background:var(--bg-sunken);color:var(--fg-muted);border-color:var(--border-subtle)}.badge--accent{background:var(--accent-tint);color:var(--accent-fg);border-color:var(--accent-tint-2)}.badge--outline{background:transparent;color:var(--fg-muted);border-color:var(--border-default)}.badge--solid[data-classification=affected]{background:var(--c-affected);color:var(--fg-on-affect);border-color:transparent}.badge--solid[data-classification=safe]{background:var(--c-safe);color:#fff;border-color:transparent}.badge--solid[data-classification=unknown]{background:var(--c-unknown);color:#fff;border-color:transparent}.badge--solid[data-classification=not_applicable]{background:var(--c-na);color:#fff;border-color:transparent}.input,.textarea,.select{box-sizing:border-box;display:block;width:100%;font-family:var(--font-sans);font-size:var(--fs-14);line-height:1.4;color:var(--fg-ink);background:var(--bg-surface);border:var(--bw-1) solid var(--border-default);border-radius:var(--r-md);padding:7px 10px;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.input:hover,.textarea:hover,.select:hover{border-color:var(--border-strong)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--ring-focus)}.input::placeholder,.textarea::placeholder{color:var(--fg-faint)}.input--mono,.textarea--mono{font-family:var(--font-mono);font-size:var(--fs-13)}.textarea{min-height:96px;resize:vertical}.input--invalid{border-color:var(--c-affected)}.input--invalid:focus{box-shadow:var(--ring-danger)}.field{display:flex;flex-direction:column;gap:var(--space-1_5)}.field__label{font-family:var(--font-sans);font-size:var(--fs-13);font-weight:var(--fw-medium);color:var(--fg-ink)}.field__hint{font-family:var(--font-sans);font-size:var(--fs-12);color:var(--fg-muted);line-height:var(--lh-normal)}.field__error{font-family:var(--font-sans);font-size:var(--fs-12);color:var(--c-affected-fg)}.toggle{--_w: 32px;--_h: 18px;--_pad: 2px;position:relative;display:inline-block;width:var(--_w);height:var(--_h);flex:0 0 auto}.toggle input{position:absolute;inset:0;opacity:0;cursor:pointer;z-index:1;scroll-margin-top:calc(var(--topbar-height) + var(--space-4))}.toggle__track{position:absolute;inset:0;background:var(--border-default);border-radius:var(--r-full);transition:background var(--dur-fast) var(--ease-out);pointer-events:none}.toggle__thumb{position:absolute;top:var(--_pad);left:var(--_pad);width:calc(var(--_h) - var(--_pad) * 2);height:calc(var(--_h) - var(--_pad) * 2);background:var(--bg-surface);border-radius:var(--r-full);box-shadow:var(--shadow-card);transition:transform var(--dur-fast) var(--ease-out);pointer-events:none}.toggle input:checked~.toggle__track{background:var(--accent)}.toggle input:checked~.toggle__thumb{transform:translate(calc(var(--_w) - var(--_h)))}.toggle input:focus-visible~.toggle__track{box-shadow:var(--ring-focus)}.tabs{display:flex;gap:0;border-bottom:var(--bw-1) solid var(--border-subtle)}.tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:var(--font-sans);font-size:var(--fs-14);font-weight:var(--fw-medium);color:var(--fg-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.tab:hover{color:var(--fg-ink)}.tab[aria-selected=true]{color:var(--fg-ink);border-bottom-color:var(--accent)}.tab__count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--fs-12);color:var(--fg-muted);background:var(--bg-sunken);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-xs);padding:1px 6px;min-width:22px;text-align:center}.tab[aria-selected=true] .tab__count{color:var(--accent-fg);background:var(--accent-tint);border-color:var(--accent-tint-2)}.table-wrap{background:var(--bg-surface);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-lg);overflow:hidden}.table{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-default)}.table thead th{font-family:var(--font-sans);font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--fg-muted);text-align:left;padding:var(--space-2) var(--space-4);background:var(--bg-sunken);border-bottom:var(--bw-1) solid var(--border-subtle);white-space:nowrap;user-select:none}.table thead th[aria-sort]{cursor:pointer}.table thead th[aria-sort]:hover{color:var(--fg-ink)}.table thead th[aria-sort=ascending]:after{content:" ↑";color:var(--accent-fg)}.table thead th[aria-sort=descending]:after{content:" ↓";color:var(--accent-fg)}.table tbody td{padding:var(--space-2_5, 10px) var(--space-4);border-bottom:var(--bw-1) solid var(--border-subtle);vertical-align:middle;line-height:1.4}.table tbody tr:last-child td{border-bottom:none}.table tbody tr{transition:background var(--dur-instant) var(--ease-out)}.table tbody tr:hover{background:var(--bg-hover)}.table tbody tr[aria-selected=true]{background:var(--bg-active)}.table td.t-numeric,.table th.t-numeric{text-align:right}.table tr.is-expanded{background:var(--bg-hover)}.table tr.is-expanded+tr.expand-row>td{background:var(--bg-sunken);padding:var(--space-4) var(--space-5)}.report-table{--col-template: 28px minmax(160px, 1.4fr) minmax(120px, 1.2fr) minmax(120px, 1fr) 72px 96px 96px 100px 44px;background:var(--bg-surface);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-lg);overflow:hidden}.report-table__header{display:grid;grid-template-columns:var(--col-template);gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-4);background:var(--bg-sunken);border-bottom:var(--bw-1) solid var(--border-subtle);font-family:var(--font-sans);font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--fg-muted);white-space:nowrap;user-select:none}.report-table__header button{margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit}.report-table__header>[data-sortable=true]{cursor:pointer}.report-table__header>[data-sortable=true]:hover{color:var(--fg-ink)}.report-table__header>[data-sort-dir=ascending]:after{content:" ↑";color:var(--accent-fg)}.report-table__header>[data-sort-dir=descending]:after{content:" ↓";color:var(--accent-fg)}.report-table__header .t-numeric{text-align:right}.report-table__scroll{max-height:640px;overflow-y:auto}.report-table__row{display:grid;grid-template-columns:var(--col-template);gap:var(--space-3);align-items:center;padding:10px var(--space-4);border-bottom:var(--bw-1) solid var(--border-subtle);cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-default);transition:background var(--dur-instant) var(--ease-out)}.report-table__row:hover,.report-table__row.is-expanded{background:var(--bg-hover)}.report-table__row .t-numeric{text-align:right}.report-table__row-action{display:flex;justify-content:flex-end}.report-table__expand{grid-column:1 / -1;background:var(--bg-sunken);padding:var(--space-4) var(--space-5);border-bottom:var(--bw-1) solid var(--border-subtle)}.report-table__empty{padding:var(--space-8);text-align:center;color:var(--fg-muted)}.progress{position:relative;height:6px;background:var(--bg-sunken);border-radius:var(--r-full);overflow:hidden}.progress__fill{height:100%;background:var(--accent);border-radius:inherit;transition:width var(--dur-base) var(--ease-out)}.progress--thick{height:10px}.progress--indeterminate .progress__fill{width:40%;animation:progress-slide 1.4s var(--ease-in-out) infinite}@keyframes progress-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}.toast{display:flex;align-items:flex-start;gap:var(--space-3);min-width:320px;max-width:480px;padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border:var(--bw-1) solid var(--border-default);border-left:3px solid var(--c-na);border-radius:var(--r-md);box-shadow:var(--shadow-raised);font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-default)}.toast__dot{width:8px;height:8px;border-radius:var(--r-full);margin-top:4px;flex:0 0 auto;background:var(--c-na)}.toast__body{flex:1;line-height:var(--lh-normal)}.toast__title{font-weight:var(--fw-semibold);color:var(--fg-ink)}.toast__close{border:none;background:transparent;color:var(--fg-faint);cursor:pointer;padding:2px;line-height:1}.toast__close:hover{color:var(--fg-ink)}.toast[data-status=success]{border-left-color:var(--c-safe)}.toast[data-status=success] .toast__dot{background:var(--c-safe)}.toast[data-status=error]{border-left-color:var(--c-affected)}.toast[data-status=error] .toast__dot{background:var(--c-affected)}.toast[data-status=warning]{border-left-color:var(--c-unknown)}.toast[data-status=warning] .toast__dot{background:var(--c-unknown)}.toast[data-status=info]{border-left-color:var(--accent)}.toast[data-status=info] .toast__dot{background:var(--accent)}.dialog-backdrop{position:fixed;inset:0;background:#0f121680;display:grid;place-items:center;z-index:var(--z-dialog)}.dialog{background:var(--bg-elevated);border:var(--bw-1) solid var(--border-default);border-radius:var(--r-xl);box-shadow:var(--shadow-overlay);width:min(560px,calc(100% - 32px));max-height:calc(100vh - 64px);overflow:hidden;display:flex;flex-direction:column}.dialog__header{padding:var(--space-4) var(--space-5);border-bottom:var(--bw-1) solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.dialog__title{font-family:var(--font-sans);font-size:var(--fs-16);font-weight:var(--fw-semibold);color:var(--fg-ink)}.dialog__body{padding:var(--space-5);overflow:auto}.dialog__footer{padding:var(--space-3) var(--space-5);border-top:var(--bw-1) solid var(--border-subtle);display:flex;justify-content:flex-end;gap:var(--space-2)}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;font-family:var(--font-mono);font-size:var(--fs-12);font-weight:var(--fw-medium);color:var(--fg-muted);background:var(--bg-surface);border:var(--bw-1) solid var(--border-default);border-bottom-width:2px;border-radius:var(--r-xs);line-height:1;white-space:nowrap}.code{position:relative;font-family:var(--font-mono);font-size:var(--fs-13);line-height:1.55;color:var(--fg-ink);background:var(--bg-sunken);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-md);padding:var(--space-3) var(--space-4);overflow-x:auto;white-space:pre;font-variant-ligatures:none}.code--terminal{background:#0a0c0f;color:#e8e6e0;border-color:#1a1e24}.code__copy{position:absolute;top:8px;right:8px;padding:3px 8px;font-family:var(--font-sans);font-size:var(--fs-12);color:var(--fg-muted);background:var(--bg-surface);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-xs);cursor:pointer}.code__copy:hover{color:var(--fg-ink);background:var(--bg-hover)}.code__prompt{color:var(--fg-faint);user-select:none}.statepip{display:inline-flex;align-items:center;gap:var(--space-1_5);font-family:var(--font-mono);font-size:var(--fs-12);color:var(--fg-muted);letter-spacing:0}.statepip__dot{width:6px;height:6px;border-radius:var(--r-full);background:var(--fg-faint);flex:0 0 auto}.statepip[data-state=queued] .statepip__dot{background:var(--c-na)}.statepip[data-state=cloning] .statepip__dot{background:var(--accent);animation:pulse 1.2s var(--ease-in-out) infinite}.statepip[data-state=scanning] .statepip__dot{background:var(--c-unknown);animation:pulse 1.2s var(--ease-in-out) infinite}.statepip[data-state=done] .statepip__dot{background:var(--c-safe)}.statepip[data-state=error] .statepip__dot{background:var(--c-affected)}@keyframes pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}:root{--topbar-height: 52px}.topbar{display:flex;align-items:center;gap:var(--space-4);height:var(--topbar-height);padding:0 var(--space-5);border-bottom:var(--bw-1) solid var(--border-subtle);background:var(--bg-surface);position:sticky;top:0;z-index:50}.topbar__brand{display:flex;align-items:center;gap:var(--space-2);color:var(--fg-ink)}.topbar__brand-name{font-family:var(--font-sans);font-size:var(--fs-15);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight)}.topbar__brand-url{font-family:var(--font-mono);font-size:var(--fs-11);color:var(--fg-faint);margin-left:var(--space-1)}.topbar__nav{display:flex;gap:2px;margin-left:var(--space-4)}.topbar__nav-button{padding:var(--space-1_5, 6px) var(--space-3);border:none;background:transparent;color:var(--fg-muted);border-radius:var(--r-md);font-family:var(--font-sans);font-size:var(--fs-13);font-weight:var(--fw-medium);cursor:pointer}.topbar__nav-button:hover{color:var(--fg-ink)}.topbar__nav-button[aria-current=page]{background:var(--bg-hover);color:var(--fg-ink)}.topbar__spacer{flex:1}.topbar__update{display:flex;align-items:center;gap:var(--space-2);min-width:0;max-width:min(56vw,620px);padding:var(--space-1) var(--space-2);border:var(--bw-1) solid var(--accent-tint-2);border-radius:var(--r-md);background:var(--accent-tint);color:var(--accent-fg);font-size:var(--fs-12)}.topbar__update-label,.topbar__update-link{white-space:nowrap}.topbar__update .code{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar__update-link{color:var(--accent-fg);text-decoration:none}.topbar__update-link:hover{text-decoration:underline}.topbar__scan-chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-2);background:var(--accent-tint);color:var(--accent-fg);border:var(--bw-1) solid var(--accent-tint-2);border-radius:var(--r-md);font-family:var(--font-mono);font-size:var(--fs-12);cursor:pointer}.topbar__scan-chip-dot{width:6px;height:6px;border-radius:var(--r-full);background:var(--accent);animation:pulse 1.2s var(--ease-in-out) infinite}.topbar__token{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-12);color:var(--fg-muted)}.topbar__token-dot{width:6px;height:6px;border-radius:var(--r-full);background:var(--c-safe)}.topbar__token--missing .topbar__token-dot{background:var(--c-affected)}@media(max-width:980px){.topbar__update .code,.topbar__update-link{display:none}.topbar__update{max-width:34vw}}.target-form{display:flex;flex-direction:column;gap:var(--space-4)}.target-form__body{display:flex;flex-direction:column;gap:var(--space-3)}.target-form__github-panel{display:flex;flex-direction:column;gap:var(--space-4)}.target-form__access{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-md);background:var(--bg-sunken)}.target-form__access-main{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.target-form__access-source{font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-default);font-weight:var(--fw-semibold)}.target-form__access-copy{font-family:var(--font-sans);font-size:var(--fs-13);line-height:var(--lh-normal);color:var(--fg-muted)}.target-form__access-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-1)}.target-form__token-help{font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-muted)}.target-form__token-help summary{width:fit-content;color:var(--accent-fg);cursor:pointer}.target-form__token-help-body{display:grid;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-3);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-md);background:var(--bg-sunken)}.target-form__token-help-body p{margin:0;line-height:var(--lh-normal)}.target-form__token-help-body a{color:var(--accent-fg);text-decoration:none}.target-form__token-help-body a:hover{text-decoration:underline}.target-form__token-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:var(--space-2);align-items:center;max-width:100%}.target-form__token-row .input{min-width:0}.target-form__token-row .btn{min-width:max-content}.target-form__token-status{font-family:var(--font-sans);font-size:var(--fs-12);color:var(--fg-muted)}.target-form__token-status--error{color:var(--c-affected-fg)}.target-form__github{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.manual-rule-editor{width:100%;min-height:220px;resize:vertical;font-family:var(--font-mono);font-size:var(--fs-13);line-height:var(--lh-tight);padding:var(--space-3);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-md);background:var(--bg-sunken);color:var(--fg-default);white-space:pre;overflow:auto}.manual-rule-editor:focus{outline:var(--bw-2) solid var(--accent-fg);outline-offset:1px}.manual-rule-editor__issues{list-style:none;padding:0;margin:var(--space-2) 0 0;font-family:var(--font-mono);font-size:var(--fs-12);color:var(--c-affected-fg);display:flex;flex-direction:column;gap:var(--space-1)}.advisory-ai-controls{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.advisory-ai-controls__select{width:160px}.scan-note-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-muted)}.scan-note-row--warn{color:var(--c-unknown-fg)}.run-card__hint{margin:var(--space-2) 0 0;font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-muted)}.run-card__error{margin:0 0 var(--space-3);font-family:var(--font-sans);font-size:var(--fs-13);color:var(--c-affected-fg)}.run-card__primary{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-5);padding-bottom:var(--space-4);border-bottom:var(--bw-1) solid var(--border-subtle);margin-bottom:var(--space-4)}.run-card__primary-copy{min-width:0}.run-card__status{margin-top:2px;font-family:var(--font-sans);font-size:var(--fs-15);font-weight:var(--fw-semibold);color:var(--fg-ink)}.run-card__cli{display:grid;gap:var(--space-2)}.run-card__cli-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.run-card__cli-copy{margin:0;font-family:var(--font-sans);font-size:var(--fs-13);line-height:var(--lh-normal);color:var(--fg-muted)}.local-target{display:flex;flex-direction:column;gap:var(--space-3)}.local-target__row{display:flex;gap:var(--space-2);align-items:stretch}.local-target__row .input{flex:1 1 auto}.local-target__status{display:flex;align-items:center;gap:var(--space-2);min-height:22px}.local-target__error{font-family:var(--font-sans);font-size:var(--fs-12);color:var(--c-affected-fg)}.fs-browser{display:grid;grid-template-columns:140px 1fr;gap:var(--space-4);min-height:320px;max-height:60vh}.fs-browser__sidebar{display:flex;flex-direction:column;gap:2px;padding-right:var(--space-3);border-right:var(--bw-1) solid var(--border-subtle);overflow-y:auto}.fs-browser__root{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1_5) var(--space-2);background:transparent;border:none;border-radius:var(--r-md);font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-default);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.fs-browser__root:hover{background:var(--bg-hover);color:var(--fg-ink)}.fs-browser__main{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.fs-browser__bar{display:flex;align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:var(--bw-1) solid var(--border-subtle)}.fs-browser__crumb{flex:1 1 auto;font-family:var(--font-mono);font-size:var(--fs-12);color:var(--fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fs-browser__list{margin:0;padding:0;overflow-y:auto;flex:1 1 auto;position:relative}.fs-browser__virtual-row{position:absolute;top:0;left:0;width:100%;height:34px}.fs-browser__row{width:100%;height:34px;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1_5) var(--space-2);border:none;background:transparent;border-radius:var(--r-md);font-family:var(--font-sans);font-size:var(--fs-13);color:var(--fg-default);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.fs-browser__row:hover{background:var(--bg-hover);color:var(--fg-ink)}.fs-browser__row-name{flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fs-browser__hint{font-family:var(--font-sans);font-size:var(--fs-12);color:var(--fg-muted);padding:var(--space-2)}.fs-browser__error{font-family:var(--font-sans);font-size:var(--fs-13);color:var(--c-affected-fg);padding:var(--space-2)}@media(max-width:720px){.target-form__github,.target-form__token-row{grid-template-columns:1fr}.target-form__token-row .btn{justify-self:start}.run-card__primary{flex-direction:column;align-items:stretch}.run-card__primary>.btn{align-self:flex-start}.local-target__row{flex-direction:column}.fs-browser{grid-template-columns:1fr}.fs-browser__sidebar{border-right:none;border-bottom:var(--bw-1) solid var(--border-subtle);padding-right:0;padding-bottom:var(--space-3);max-height:120px}.settings-channels__form{grid-template-columns:1fr}.settings-stats{grid-template-columns:1fr 1fr}}.alerts{display:flex;flex-direction:column;gap:var(--space-4)}.alerts__controls{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.alerts__filter{flex:0 1 280px;min-width:200px}.alerts__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.alerts__item{background:var(--bg-surface);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-md);overflow:hidden}.alerts__item-head{display:grid;grid-template-columns:auto auto auto 1fr auto auto;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:transparent;border:none;color:inherit;cursor:pointer;width:100%;text-align:left;font-family:inherit}.alerts__item-head:hover{background:var(--bg-sunken)}.alerts__item-id{font-size:var(--fs-13);color:var(--fg-default)}.alerts__item-pkg{font-size:var(--fs-13);color:var(--fg-default);white-space:nowrap}.alerts__item-eco{color:var(--fg-muted);font-size:var(--fs-12)}.alerts__item-summary{font-size:var(--fs-13);color:var(--fg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alerts__item-time{font-size:var(--fs-12);color:var(--fg-muted);white-space:nowrap}.alerts__item-body{padding:var(--space-3) var(--space-4);border-top:var(--bw-1) solid var(--border-subtle);background:var(--bg-sunken)}.alerts__repos{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.alerts__repo{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) 0;border-bottom:var(--bw-1) solid var(--border-subtle)}.alerts__repo:last-child{border-bottom:none}.alerts__repo-link{color:var(--accent-fg);text-decoration:none;font-family:var(--font-mono);font-size:var(--fs-13)}.alerts__repo-link:hover{text-decoration:underline}.alerts__repo-pkg,.alerts__repo-decl,.alerts__repo-resolved{font-size:var(--fs-12);color:var(--fg-muted)}.alerts__repo-actions{margin-left:auto;display:flex;gap:var(--space-2)}.alerts__more{display:flex;justify-content:center;padding:var(--space-3) 0}.settings{display:flex;flex-direction:column;gap:var(--space-5)}.settings-section__head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.settings-section__title{margin:0;font-family:var(--font-sans);font-size:var(--fs-15);font-weight:var(--fw-semibold);color:var(--fg-ink)}.settings-section__body{display:flex;flex-direction:column;gap:var(--space-3)}.settings-section__copy{margin:0;font-size:var(--fs-13);line-height:var(--lh-normal);color:var(--fg-muted)}.settings-section__copy--strong{color:var(--fg-default)}.settings-section__error{margin:0;font-size:var(--fs-13);color:var(--c-affected-fg)}.settings-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.settings-actions--end{justify-content:flex-end}.settings-token-form{display:flex;flex-direction:column;gap:var(--space-3)}.settings-token-form__link{color:var(--accent-fg);text-decoration:none;font-size:var(--fs-13);align-self:center}.settings-token-form__link:hover{text-decoration:underline}.settings-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3)}.settings-stat{padding:var(--space-3);background:var(--bg-sunken);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-md)}.settings-stat__label{font-size:var(--fs-12);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em}.settings-stat__value{font-family:var(--font-sans);font-size:var(--fs-18);font-weight:var(--fw-semibold);color:var(--fg-ink);margin-top:var(--space-1)}.settings-stat__value--warning{color:var(--c-affected-fg)}.settings-stat__value--success{color:var(--c-safe-fg, var(--accent-fg))}.settings-channels__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.settings-channels__item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:var(--bw-1) solid var(--border-subtle)}.settings-channels__item:last-child{border-bottom:none}.settings-channels__url{flex:1;font-family:var(--font-mono);font-size:var(--fs-13);color:var(--fg-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-channels__empty{margin:0 0 var(--space-2);font-size:var(--fs-13);color:var(--fg-muted)}.settings-channels__form{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:var(--space-2);align-items:end}.settings-channels__form .field{min-width:0}.settings-channels__form-secret{margin-top:var(--space-2)}.settings-channels__form-error{margin:var(--space-2) 0 0;font-size:var(--fs-13);color:var(--c-affected-fg)}.settings-device{position:fixed;inset:0;background:var(--overlay-scrim, rgba(0, 0, 0, .55));display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:100}.settings-device__card{width:100%;max-width:460px}.settings-device__body{display:flex;flex-direction:column;gap:var(--space-3)}.settings-device__code{font-family:var(--font-mono);font-size:var(--fs-22, 1.5rem);font-weight:var(--fw-semibold);text-align:center;letter-spacing:.2em;padding:var(--space-3);background:var(--bg-sunken);border:var(--bw-1) solid var(--border-subtle);border-radius:var(--r-md);color:var(--fg-ink)}.settings-device__hint{margin:0;font-size:var(--fs-13);color:var(--fg-muted);text-align:center}.settings-device__error{margin:0;font-size:var(--fs-13);color:var(--c-affected-fg)}.card__body{display:flex;flex-direction:column;gap:var(--space-4)}.settings-actions,.settings-channels__item{gap:var(--space-3)}.tabs{margin-bottom:var(--space-2)}
