:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--sidebar-width:220px;--bg:#f5f6f8;--surface:#fff;--surface-2:#f8fafc;--surface-hover:#f1f5f9;--border:#e5e7eb;--border-strong:#d1d5db;--text:#0f172a;--text-muted:#5b6b82;--text-faint:#94a3b8;--primary:#c2410c;--primary-hover:#9a3412;--primary-bg:#fff2e8;--primary-text:#fff;--accent-cyan:#0e7490;--gradient-brand:linear-gradient(120deg, #ff6a3d 0%, #22d3ee 100%);--danger:#c81e1e;--danger-hover:#a51818;--danger-bg:#fef2f2;--success:#15803d;--success-bg:#f0fdf4;--warning:#b45309;--warning-bg:#fffbeb;--warning-border:#fde68a;--accent-cyan-bg:#ecfeff;--cat-blue:#2563eb;--cat-blue-bg:#eff6ff;--cat-purple:#7c3aed;--cat-purple-bg:#f5f3ff;--cat-teal:#0f766e;--cat-teal-bg:#f0fdfa;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 4px 12px #0f172a14;--shadow-sidebar:1px 0 0 #0f172a0f}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0b0f19;--surface:#131826;--surface-2:#1a2032;--surface-hover:#1e2536;--border:#232a3d;--border-strong:#303952;--text:#e5e7eb;--text-muted:#94a3b8;--text-faint:#64748b;--primary:#ff8a5c;--primary-hover:#ffab7a;--primary-bg:#2a1810;--primary-text:#1a0d06;--accent-cyan:#67e8f9;--danger:#f87171;--danger-hover:#fca5a5;--danger-bg:#2a1518;--success:#4ade80;--success-bg:#12261a;--warning:#fbbf24;--warning-bg:#2a2110;--warning-border:#4a3a12;--accent-cyan-bg:#0a2429;--cat-blue:#60a5fa;--cat-blue-bg:#101d33;--cat-purple:#a78bfa;--cat-purple-bg:#221a33;--cat-teal:#2dd4bf;--cat-teal-bg:#0f2b27;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 16px #00000073;--shadow-sidebar:1px 0 0 #ffffff0f}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);margin:0;font-size:14px;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-sans);color:var(--text);letter-spacing:-.01em;margin:0;font-weight:600}h2{font-size:18px}h3{font-size:15px}h4{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px;font-size:11.5px}p{margin:0}code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:12px}:where(a:not([class*=btn])){color:var(--primary);text-decoration:none}:where(a:not([class*=btn]):hover){color:var(--primary-hover);text-decoration:underline}.name-link{color:var(--text);font-weight:500}.name-link:hover{color:var(--primary);text-decoration:underline}.md-p a,.md-list a{text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:2px}.md-p a:hover,.md-list a:hover{text-decoration-color:currentColor}hr{border:none;border-top:1px solid var(--border);margin:14px 0}button{cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:7px 12px;font-family:inherit;font-size:13px;font-weight:500;transition:background-color .12s,border-color .12s,color .12s,opacity .12s}button:hover{background:var(--surface-hover)}button:disabled{opacity:.5;cursor:default}button:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--primary-text)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}a.btn-primary,a.btn-ghost{cursor:pointer;border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}a.btn-ghost{color:var(--text);background:0 0}a.btn-ghost:hover{background:var(--surface-hover)}.btn-danger{border-color:var(--border-strong);color:var(--danger);background:0 0}.btn-danger:hover{background:var(--danger-bg);border-color:var(--danger)}.icon-btn{justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:14px;line-height:1;display:inline-flex}.icon-btn-danger{border-color:var(--border-strong);color:var(--danger);background:0 0}.icon-btn-danger:hover{background:var(--danger-bg);border-color:var(--danger)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-hover)}.btn-block{width:100%}.link-button{font:inherit;color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:none}.link-button:hover{color:var(--primary-hover);text-decoration:underline}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;padding:7px 10px;font-size:13px;transition:border-color .12s,box-shadow .12s}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--primary);flex:none;margin:0;padding:0}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}[tabindex="-1"]:focus-visible{outline:none}input::placeholder{color:var(--text-faint)}.app-root{flex-direction:column;height:100vh;display:flex;position:relative;overflow:clip}.app-shell{flex:1;min-height:0;display:flex}.sidebar{width:var(--sidebar-width);background:var(--surface);height:100%;box-shadow:var(--shadow-sidebar);flex-direction:column;flex-shrink:0;gap:4px;padding:20px 14px;transition:width .15s,padding .15s;display:flex;overflow:hidden auto}.sidebar.collapsed{width:64px;padding-left:10px;padding-right:10px}.sidebar.collapsed .nav-label,.sidebar.collapsed .account-text{display:none}.sidebar.collapsed .nav-link{justify-content:center;gap:0;padding:9px 0}.topbar-brand{border-radius:var(--radius-sm);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;gap:10px;margin:0 8px 0 -8px;padding:6px 10px;display:flex}.topbar-brand:hover{background:var(--surface-hover)}.topbar-brand-mark{border-radius:var(--radius-sm);background:var(--gradient-brand);color:#1a0d06;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.topbar-brand-text{color:var(--text);font-size:14px;font-weight:600}.sidebar-brand-mark{border-radius:var(--radius-sm);background:var(--gradient-brand);color:#1a0d06;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sidebar-footer{border-top:1px solid var(--border);margin-top:auto;padding:10px 8px 0}.account-card{border-radius:var(--radius);color:inherit;border:1px solid #0000;align-items:center;gap:10px;padding:8px;text-decoration:none;display:flex}.account-card:hover{background:var(--surface-hover);border-color:var(--border)}.account-card.active{background:var(--primary-bg);border-color:#0000}.account-avatar{background:var(--gradient-brand);color:#1a0d06;letter-spacing:.02em;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:700;display:flex}.account-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.account-name,.account-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-name{color:var(--text);font-size:13px;font-weight:600}.account-email{color:var(--text-muted);font-size:12px}.account-roles{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.account-logout{border-radius:var(--radius-sm);width:100%;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;margin-top:2px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.account-logout:hover{background:var(--danger-bg);color:var(--danger)}.sidebar.collapsed .account-card{justify-content:center;padding:6px 0}.sidebar.collapsed .account-logout{justify-content:center;padding:8px 0}.nav-link{border-radius:var(--radius-sm);color:var(--text-muted);align-items:center;gap:10px;padding:9px 10px;font-size:13px;font-weight:500;text-decoration:none;display:flex}.nav-link:hover{background:var(--surface-hover);color:var(--text)}.nav-link.active{background:var(--primary-bg);color:var(--primary)}.nav-icon{flex-shrink:0;width:18px;height:18px;display:inline-flex}.nav-icon svg{width:100%;height:100%}.nav-link-button{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none}.nav-divider{background:var(--border);height:1px;margin:8px 6px}.content-area{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;height:52px;padding:0 32px 0 24px;display:flex}.org-switcher{position:relative}.org-switcher-trigger{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;display:flex}.org-switcher-trigger:hover{background:var(--surface-hover)}.org-switcher-backdrop{z-index:20;position:fixed;inset:0}.org-switcher-menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:220px;box-shadow:var(--shadow-sidebar);z-index:21;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.org-switcher-item{border-radius:var(--radius-sm);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.org-switcher-item:hover{background:var(--surface-hover)}.org-switcher-item.active{background:var(--primary-bg);color:var(--primary)}.main{flex:1;min-width:0;max-width:1280px;padding:12px 28px 32px;overflow-y:auto}.page-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.page-header-compact{align-items:center;margin-bottom:8px}.page-header-compact .page-title{flex:auto;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;min-width:0;display:grid}.page-icon{width:40px;height:40px;color:var(--page-icon-accent);background:var(--page-icon-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--page-icon-accent) 22%, transparent);border-radius:12px;grid-area:span 2/1;place-items:center;display:grid}.page-icon svg{width:20px;height:20px}.page-header-compact .page-title:has(.breadcrumb) .page-icon{grid-row:span 3}.page-header-compact .page-title h1{letter-spacing:-.02em;grid-column:2;margin:0;font-size:20px;font-weight:700;line-height:1.2}.page-header-compact .page-title p{overflow-wrap:anywhere;grid-column:2;margin:1px 0 0;line-height:1.3}.page-header-compact .page-title-long .page-icon{grid-row:1}.page-header-compact .page-title-long p{grid-column:1/-1;max-width:none;margin-top:4px}.page-header-compact .breadcrumb{grid-column:2;margin:0 0 1px;font-size:0;line-height:1}.page-header-compact .breadcrumb a{letter-spacing:.01em;font-size:11.5px;font-weight:500}.page-header-compact .breadcrumb a:before{content:"‹";margin-right:4px;font-size:14px;line-height:0}.page-header-compact .page-title-inline{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.page-header-compact .page-title-inline .page-icon{border-radius:10px;width:32px;height:32px}.page-header-compact .page-title-inline .page-icon svg{width:16px;height:16px}.page-header-compact .page-title-inline .breadcrumb{align-items:center;margin:0;display:inline-flex}.page-header-compact .page-title-inline .breadcrumb:after{content:"/";color:var(--text-faint);margin-left:10px;font-size:15px;line-height:1}.page-header-compact .page-title-inline h1{overflow-wrap:anywhere}.page-header-compact button,.page-header-compact a.btn-primary,.page-header-compact a.btn-ghost{padding:3px 10px;font-size:12.5px}.breadcrumb{color:var(--text-muted);margin-bottom:6px;font-size:12px}.breadcrumb a{color:var(--text-muted);text-decoration:none}.breadcrumb a:hover{color:var(--primary)}.auth-split{background:var(--bg);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;display:grid}.auth-pane{justify-content:center;padding:28px 24px 40px;display:flex}.auth-pane-inner{flex-direction:column;width:100%;max-width:400px;display:flex}.auth-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:min(12vh,88px);display:flex}.auth-brand-link{color:var(--text);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.auth-brand-link:hover{text-decoration:none}.auth-brand-name{letter-spacing:-.01em;font-size:16px;font-weight:700}.auth-home{color:var(--text-muted);font-size:13px}.auth-title{letter-spacing:-.02em;margin:0 0 6px;font-size:26px;font-weight:700}.auth-sub{color:var(--text-muted);margin:0 0 24px;font-size:14px;line-height:1.5}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-submit{background:var(--jv-gradient);color:#0b0f14;border-color:#0000;margin-top:4px;padding-top:9px;padding-bottom:9px;font-weight:600;box-shadow:0 8px 22px -10px #f8981d99}.auth-submit:hover:not(:disabled){background:var(--jv-gradient);filter:brightness(1.06);border-color:#0000}.auth-brand-link .sidebar-brand-mark{background:var(--jv-gradient);color:#0b0f14;box-shadow:0 6px 18px -6px #f8981d80}.auth-footer{color:var(--text-muted);text-align:center;margin-top:22px;font-size:13.5px}.pw-field{position:relative}.pw-field input{padding-right:64px}.pw-toggle{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:3px 9px;font-size:12.5px;font-weight:600;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.pw-toggle:hover{background:var(--surface-hover);color:var(--text)}.pw-rule{align-items:center;gap:6px;display:flex}.pw-rule.met{color:var(--success)}.auth-aside{color:var(--jv-text);background:radial-gradient(520px 360px at 12% 0%, #f06a2c33, transparent 62%), radial-gradient(520px 380px at 100% 100%, #f8981d24, transparent 62%), var(--jv-bg);align-items:center;padding:48px;display:flex;position:relative;overflow:hidden}.auth-aside-inner{width:100%;max-width:460px;margin:0 auto}.auth-aside-eyebrow{background:var(--jv-accent-bg);font-family:var(--font-mono);color:var(--jv-accent-bright);border:1px solid #f8981d59;border-radius:999px;margin-bottom:20px;padding:4px 12px;font-size:12px;display:inline-block}.auth-aside h2{letter-spacing:-.02em;color:var(--jv-text);text-wrap:balance;margin:0 0 22px;font-size:32px;line-height:1.12}.auth-aside h2 span{background:var(--jv-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.auth-points{color:var(--jv-text-muted);flex-direction:column;gap:10px;margin:0 0 32px;padding:0;font-size:14.5px;list-style:none;display:flex}.auth-points li{align-items:flex-start;gap:10px;display:flex}.auth-points svg{color:var(--jv-ok-bright);flex:none;margin-top:3px}.auth-sample{border:1px solid var(--jv-border-strong);background:var(--jv-surface);border-radius:16px;padding:18px 20px;box-shadow:0 24px 60px -24px #0009}.auth-sample-head{align-items:center;gap:14px;margin-bottom:12px;display:flex}.auth-sample-head div{flex-direction:column;display:flex}.auth-sample-head b{color:var(--jv-text);font-size:14px}.auth-sample-head span{color:var(--jv-text-faint);font-size:12px}.auth-sample-row{color:var(--jv-text-muted);grid-template-columns:124px minmax(0,1fr) 26px;align-items:center;gap:10px;padding:3px 0;font-size:12.5px;display:grid}.auth-sample-row i{background:#ffffff14;border-radius:999px;height:6px;display:block;overflow:hidden}.auth-sample-row em{border-radius:999px;height:100%;display:block}.auth-sample-row b{text-align:right;font-variant-numeric:tabular-nums;color:var(--jv-text);font-weight:600}@media (width<=900px){.auth-split{grid-template-columns:minmax(0,1fr)}.auth-aside{display:none}.auth-top{margin-bottom:40px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:16px;overflow-x:auto}.card+.card{margin-top:12px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.card>.toolbar:first-child{margin-bottom:10px}.card>.toolbar:first-child h2,.card>.toolbar:first-child h3{line-height:1.25}.toolbar-spacer{flex:1}.score-trend{margin-bottom:16px}.score-trend-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:4px;display:flex}.score-trend-title{align-items:center;gap:6px;margin:0;display:flex}.score-trend-now strong{font-variant-numeric:tabular-nums;font-size:1.125rem}.score-trend-delta{color:var(--text-muted);font-size:.8125rem;font-weight:600}.score-trend-delta.up{color:var(--success)}.score-trend-delta.down{color:var(--danger)}.score-trend-range{margin-left:auto}.score-trend-chart{width:100%;min-width:0}.vuln-libs{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px;display:flex}.vuln-libs h3,.vuln-libs p{margin:0}.vuln-libs .table-scroll{align-self:stretch}.vuln-libs .table-scroll table.vuln-libs-table{width:100%}.vuln-libs-table td code{white-space:normal;overflow-wrap:anywhere}.vuln-libs-table td:last-child{white-space:nowrap}.vuln-libs-list{flex-direction:column;align-self:stretch;margin:0;padding:0;list-style:none;display:flex}.vuln-libs-list li{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:4px 16px;padding:8px 0;display:flex}.vuln-libs-list li>button{margin-left:auto}.filter-chip{border:1px solid var(--border);background:var(--surface);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 4px 4px 10px;font-size:.875rem;display:inline-flex}.filter-chip code{overflow-wrap:anywhere}.filter-chip button{padding:2px 8px}.card-icon{background:var(--card-icon-bg,var(--surface-2));width:28px;height:28px;color:var(--card-icon-accent,var(--text-muted));border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.card-icon svg{width:14px;height:14px}.field-label{color:var(--text-muted);margin-bottom:4px;font-size:12px;font-weight:500;display:block}.field-hint{color:var(--text-faint);margin-top:4px;font-size:12px}.field{flex-direction:column;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-grid .span-2{grid-column:1/-1}.table-scroll{scrollbar-width:thin;scrollbar-color:var(--border-strong) var(--surface-2);background:linear-gradient(to right, var(--surface) 30%, transparent) 0 0 / 40px 100% no-repeat local, linear-gradient(to left, var(--surface) 30%, transparent) 100% 0 / 40px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, #0f172a38, transparent) 0 0 / 14px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, #0f172a38, transparent) 100% 0 / 14px 100% no-repeat scroll;padding-bottom:6px;overflow-x:auto}.table-scroll::-webkit-scrollbar{height:10px}.table-scroll::-webkit-scrollbar-track{background:var(--surface-2);border-radius:999px}.table-scroll::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}.table-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.table-scroll-hint{color:var(--text-muted);align-items:center;gap:6px;margin:0 0 6px;font-size:12px;display:flex}table{border-collapse:collapse;width:100%;font-size:13px}.table-scroll table{width:max-content;min-width:100%}.table-scroll.fixed-columns table{table-layout:fixed}.table-scroll.fixed-columns table .sticky-col{background:var(--surface);box-shadow:-1px 0 0 var(--border);position:sticky;right:0}thead th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px;font-weight:600}tbody td{border-bottom:1px solid var(--border);color:var(--text);padding:10px 12px}tbody tr:last-child td{border-bottom:none}tbody tr.row-clickable{cursor:pointer}tbody tr.row-clickable:hover td{background:var(--surface-hover)}.table-empty{color:var(--text-faint);text-align:center;padding:24px 12px}.badge{text-transform:uppercase;letter-spacing:.03em;background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.badge-success{background:var(--success-bg);color:var(--success);border-color:#0000}.badge-warning{background:var(--warning-bg);color:var(--warning);border-color:#0000}.badge-danger{background:var(--danger-bg);color:var(--danger);border-color:#0000}.badge-primary{background:var(--primary-bg);color:var(--primary);border-color:#0000}.badge-cyan{background:var(--accent-cyan-bg);color:var(--accent-cyan);border-color:#0000}.badge-blue{background:var(--cat-blue-bg);color:var(--cat-blue);border-color:#0000}.badge-purple{background:var(--cat-purple-bg);color:var(--cat-purple);border-color:#0000}.badge-teal{background:var(--cat-teal-bg);color:var(--cat-teal);border-color:#0000}.findings-summary{border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);flex-direction:column;justify-content:center;gap:10px;margin-bottom:12px;padding:12px 14px;display:flex}.stat-group{grid-template-columns:68px minmax(0,1fr);align-items:center;gap:10px;display:grid}.stat-group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:11px;font-weight:700}.stat-group-body{flex-direction:column;gap:6px;min-width:0;display:flex}.severity-bar{border-radius:999px;gap:2px;height:6px;display:flex;overflow:hidden}.severity-bar span{flex-basis:0;min-width:4px}@media (width<=520px){.stat-group{grid-template-columns:1fr;gap:4px}}.stat-chip-row{flex-wrap:wrap;gap:6px;display:flex}.stat-chip{background:var(--surface);color:var(--text-muted);cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:600;transition:box-shadow .12s,transform .12s;display:inline-flex}.stat-chip:hover{box-shadow:var(--shadow-sm)}.stat-chip:active{transform:scale(.97)}.stat-chip .stat-chip-count{font-variant-numeric:tabular-nums}.stat-chip.active{box-shadow:0 0 0 2px var(--chip-accent,var(--primary))}.job-progress-track{background:var(--surface-2);border-radius:999px;width:100%;height:6px;overflow:hidden}.job-progress-fill{background:var(--primary);height:100%;transition:width .3s}.text-muted{color:var(--text-muted)}.text-danger{color:var(--danger)}.text-sm{font-size:12px}.error-banner{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);margin-bottom:14px;padding:8px 12px;font-size:13px}.empty-state{color:var(--text-faint);text-align:center;padding:32px 12px}.score-findings-row{grid-template-columns:minmax(280px,360px) 1fr;align-items:stretch;gap:12px;margin-bottom:12px;display:grid}.score-findings-row .findings-summary,.score-findings-row .score-hero{max-width:none;margin-bottom:0}@media (width<=720px){.score-findings-row{grid-template-columns:1fr}}.score-hero{border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:14px;max-width:420px;margin-bottom:12px;padding:12px 14px;display:flex}.score-ring{--ring:var(--success);flex:none;width:84px;height:84px;position:relative}.score-ring.score-low{--ring:var(--danger)}.score-ring.score-mid{--ring:var(--warning)}.score-ring svg{width:100%;height:100%;display:block}.score-ring circle{fill:none;stroke-width:7px}.score-ring-track{stroke:var(--border)}.score-ring-fill{stroke:var(--ring);stroke-linecap:round}.score-ring-value{font-variant-numeric:tabular-nums;color:var(--ring);place-items:center;font-size:26px;font-weight:700;line-height:1;display:grid;position:absolute;inset:0}.score-hero-body{flex-direction:column;gap:4px;min-width:0;display:flex}.score-hero-label{color:var(--text);font-size:14px;font-weight:600}.score-hero-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:12px;display:flex}.score-hero-counts{color:var(--text-muted);font-size:12px}.score-hero-counts strong{color:var(--text)}.category-section{margin-top:4px}.category-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;margin-bottom:2px;display:flex}.category-head .h4{margin:0}.category-list{grid-template-columns:minmax(130px,max-content) minmax(80px,1fr) max-content 36px;column-gap:14px;display:grid}.category{grid-template-columns:subgrid;border-top:1px solid var(--border);grid-column:1/-1;display:grid}.category:first-child{border-top:none}.category-row{grid-template-columns:subgrid;border-radius:var(--radius-sm);grid-column:1/-1;align-items:center;padding:7px 0;font-size:13px;display:grid}.category-name{align-items:center;gap:6px;min-width:0;font-weight:500;display:inline-flex}.category-name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.category-chips{justify-content:flex-end;justify-self:end;align-items:center;gap:6px;display:inline-flex}.category-detail{border-radius:var(--radius-sm);background:var(--surface-2);grid-column:1/-1;margin:0 0 8px;padding:10px 12px}.category-row[role=button]:hover{background:var(--surface-hover);box-shadow:0 0 0 6px var(--surface-hover)}.category-row[role=button]:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.category-bar-track{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.category-bar-fill{background:var(--success);border-radius:999px;height:100%;transition:width .4s cubic-bezier(.22,1,.36,1)}.category-bar-fill.score-low{background:var(--danger)}.category-bar-fill.score-mid{background:var(--warning)}.category-not-assessed{color:var(--text-faint);grid-column:2/4;font-size:12px;font-style:italic}.category-name{grid-area:1/1}.category-bar-track{grid-area:1/2}.category-chips{grid-area:1/3}.category-score{grid-area:1/4}.category-not-assessed{grid-area:1/2/2/4}.category-score{text-align:right;color:var(--success);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.category-score.category-score-none{color:var(--text-faint)}.category-score.score-low{color:var(--danger)}.category-score.score-mid{color:var(--warning)}.finding-count-chip{background:var(--surface-2);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;padding:1px 8px;font-size:12px;font-weight:600;display:inline-flex}.cve-badge{background:linear-gradient(135deg, var(--danger), var(--danger-hover));color:#fff;letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 10px 2px 7px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 0 0 1px #dc262640,0 2px 8px #dc262659}.cve-badge svg{flex-shrink:0;width:12px;height:12px}.subgroup-card{border-radius:var(--radius-md);border-left:3px solid var(--subgroup-accent,var(--border-strong));background:var(--subgroup-accent-bg,var(--surface-2));gap:10px;margin:0 0 8px;padding:10px 12px;display:flex}.subgroup-card:last-child{margin-bottom:0}.subgroup-icon{background:var(--surface);width:26px;height:26px;color:var(--subgroup-accent,var(--text-muted));box-shadow:var(--shadow-sm);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.subgroup-icon svg{width:14px;height:14px}.subgroup-deduction{color:var(--subgroup-accent,var(--text));white-space:nowrap;font-weight:700}.roadmap-phase-number{background:var(--primary-bg);width:26px;height:26px;color:var(--primary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.transformation-file{font-family:var(--font-mono);color:var(--text);font-size:12px}.diff-view{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.diff-pane{min-width:0}.diff-pane-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px;font-size:12px;font-weight:600}.diff-pane pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:180px;margin:0;padding:10px;overflow:auto}.diff-pane-before pre{border-left:3px solid var(--danger)}.diff-pane-after pre{border-left:3px solid var(--success)}.diff-view-unified{border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:10px;overflow:hidden}.diff-unified-header{background:var(--surface-2);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:12px;font-weight:600;display:flex}.diff-unified-header span{flex:1;min-width:0;padding:6px 10px}.diff-unified-header span:first-child{border-right:1px solid var(--border)}.diff-unified-body{font-family:var(--font-mono);font-size:12px;display:flex;overflow-y:auto}.diff-unified-column{flex:1;min-width:0}.diff-unified-column:first-child{border-right:1px solid var(--border)}.diff-cell{white-space:pre-wrap;word-break:break-word;border-bottom:1px solid var(--border);gap:8px;padding:2px 10px;display:flex}.diff-unified-column>.diff-cell:last-child{border-bottom:none}.diff-cell-marker{text-align:center;width:10px;color:var(--text-muted);-webkit-user-select:none;user-select:none;flex-shrink:0}.diff-cell-text{min-width:0}.diff-cell-remove{background:color-mix(in srgb, var(--danger) 14%, transparent)}.diff-cell-remove .diff-cell-marker{color:var(--danger);font-weight:700}.diff-cell-add{background:color-mix(in srgb, var(--success) 14%, transparent)}.diff-cell-add .diff-cell-marker{color:var(--success);font-weight:700}.diff-cell-empty{background:color-mix(in srgb, var(--surface-2) 60%, transparent)}.log-view{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:320px;margin:10px 0 0;padding:10px;overflow:auto}@media (width<=720px){.diff-view{grid-template-columns:1fr}}.diff-pane-editor{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.diff-pane-before .diff-pane-editor{border-left:3px solid var(--danger)}.diff-pane-after .diff-pane-editor{border-left:3px solid var(--success)}.diff-pane-editor .cm-line.cm-diff-remove{background:color-mix(in srgb, var(--danger) 18%, transparent);box-shadow:inset 3px 0 0 var(--danger)}.diff-pane-editor .cm-line.cm-diff-add{background:color-mix(in srgb, var(--success) 18%, transparent);box-shadow:inset 3px 0 0 var(--success)}.diff-count{letter-spacing:0;font-variant-numeric:tabular-nums;margin-left:6px;font-weight:700}.diff-count-remove{color:var(--danger)}.diff-count-add{color:var(--success)}.file-browser{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);height:clamp(520px,100vh - 250px,900px);box-shadow:var(--shadow-sm);--tree-width:300px;align-items:stretch;display:flex;overflow:hidden}.file-tree-pane{flex:0 0 var(--tree-width);width:var(--tree-width);background:var(--surface-2);flex-direction:column;min-width:0;display:flex}.file-tree-head{justify-content:space-between;align-items:baseline;gap:8px;padding:12px 12px 6px;display:flex}.file-tree-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.file-tree-toolbar{align-items:center;gap:4px;padding:0 10px 8px;display:flex}.file-tree-filter{flex:1;min-width:0;padding:5px 8px;font-size:13px}.icon-btn{padding:5px 6px;line-height:0}.icon-btn.pressed{background:var(--primary-bg);color:var(--primary)}.file-tree-count{font-size:12px}.file-tree{border-top:1px solid var(--border);flex:1;min-height:0;padding:6px 0;font-size:13px;overflow:auto}.tree-row{cursor:pointer;color:var(--text);white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:5px;padding:3px 10px 3px 6px;display:flex}.tree-row:hover{background:var(--surface-hover)}.tree-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.tree-row.selected{background:var(--primary-bg);color:var(--primary);box-shadow:inset 2px 0 0 var(--primary)}.tree-row.dir .tree-label{font-weight:500}.tree-label{text-overflow:ellipsis;overflow:hidden}.tree-chevron{color:var(--text-muted);flex:none;transition:transform .12s}.tree-chevron.open{transform:rotate(90deg)}.tree-chevron-spacer{flex:none;width:12px}.tree-icon{flex:none}.file-badge{background:var(--badge,#94a3b8);color:#fff;letter-spacing:-.02em;border-radius:3px;justify-content:center;align-items:center;min-width:16px;height:14px;padding:0 2px;font-size:8px;font-weight:700;line-height:1;display:inline-flex}.tree-dirty{color:var(--primary);flex:none;margin-left:2px;font-size:9px}.file-splitter{z-index:1;cursor:col-resize;touch-action:none;flex:none;width:9px;margin:0 -4px;position:relative}.file-splitter:after{content:"";background:var(--border);width:1px;position:absolute;top:0;bottom:0;left:4px}.file-splitter:hover:after,.file-splitter:focus-visible:after{background:var(--primary);border-radius:2px;width:3px;left:3px}.file-splitter:focus-visible{outline:none}.file-viewer{flex-direction:column;flex:1;min-width:0;display:flex}.editor-tabs{background:var(--surface-2);border-bottom:1px solid var(--border);flex:none;display:flex;overflow:auto hidden}.editor-tab{border-right:1px solid var(--border);background:0 0;border-top:2px solid #0000;flex:none;align-items:center;display:flex}.editor-tab.selected{background:var(--surface);border-top-color:var(--primary);margin-bottom:-1px}.editor-tab-label{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;max-width:220px;padding:8px 4px 8px 12px;font-size:13px;display:flex}.editor-tab.selected .editor-tab-label{color:var(--text);font-weight:500}.editor-tab-label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-tab-close{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;margin-right:5px;padding:2px 7px;font-size:16px;line-height:1}.editor-tab-close:hover{background:var(--surface-hover);color:var(--text)}.editor-toolbar{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:10px;padding:6px 12px;display:flex}.file-breadcrumb{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);color:var(--text-muted);flex:1;font-size:12px;overflow:hidden}.file-breadcrumb-leaf{color:var(--text);font-weight:600}.file-breadcrumb-sep{color:var(--text-faint)}.editor-unsaved{background:var(--warning-bg);color:var(--warning);border-radius:999px;flex:none;padding:2px 8px;font-size:12px;font-weight:600}.editor-save{flex:none;align-items:center;gap:6px;padding:4px 12px;font-size:12.5px;display:inline-flex}.editor-stack{flex:1;min-height:0;position:relative}.editor-pane{flex-direction:column;height:100%;display:flex}.editor-pane[hidden]{display:none}.editor-host{flex:1;min-height:0;overflow:hidden}.editor-host>div,.editor-host .cm-editor{height:100%}.editor-note{margin:12px}.editor-banner{background:var(--primary-bg);border-bottom:1px solid var(--border);flex:none;padding:8px 14px;font-size:13px}.editor-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.editor-empty h3{margin:0;font-size:15px}.editor-empty p{max-width:44ch;margin:0}.editor-empty kbd{border:1px solid var(--border-strong);background:var(--surface-2);font-family:var(--font-mono);border-bottom-width:2px;border-radius:4px;padding:1px 6px;font-size:11px}@media (width<=760px){.file-browser{flex-direction:column;height:auto}.file-tree-pane{border-bottom:1px solid var(--border);flex:none;width:auto;max-height:260px}.file-splitter{display:none}.file-viewer{height:520px}}.file-viewer-path{font-family:var(--font-mono);color:var(--text-muted);word-break:break-all;margin-bottom:8px;font-size:12px}.review-item{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:12px;padding:12px}.review-item-header{align-items:center;gap:10px;margin-bottom:8px;display:flex}@media (width<=720px){.file-browser{flex-direction:column}.file-tree-pane{flex:none;width:100%;margin-bottom:12px}.file-splitter{display:none}}.tab-strip{border-bottom:1px solid var(--border);scrollbar-width:thin;gap:2px;margin-bottom:8px;display:flex;overflow:auto hidden}.tab-button{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:6px 12px;font-size:14px;font-weight:600}.tab-button:hover{color:var(--text)}.tab-button-active{color:var(--primary);border-bottom-color:var(--primary)}h1{font-size:20px}.h2{font-size:18px}.h3{font-size:15px}.h4{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px;font-size:11.5px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--primary);color:var(--primary-text);padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none;position:absolute;top:-48px;left:12px}.skip-link:focus{top:8px}.th-sortable{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.th-sortable:hover{color:var(--text);background:0 0}.th-sort-indicator{color:var(--text-muted);font-size:12px}.pagination{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0 0;display:flex}.pagination-size select{width:auto;padding:4px 8px}.confirm-dialog{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(440px,100vw - 32px);color:var(--text);box-shadow:var(--shadow-md);padding:24px}.confirm-dialog::backdrop{background:#0f172a80}.confirm-dialog-title{margin:0 0 8px;font-size:18px}.refactor-dialog{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(1080px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--text);box-shadow:var(--shadow-md);padding:24px;overflow-y:auto}.refactor-dialog::backdrop{background:#0f172a80}.refactor-file{border:1px solid var(--border);border-radius:var(--radius);margin-top:12px;padding:10px 12px 12px}.refactor-file-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.heatmap{border-collapse:separate;border-spacing:0 3px;width:auto;min-width:100%}.heatmap thead th{text-align:center;white-space:nowrap;color:var(--text-muted);border-bottom:none;padding:4px 3px 8px;font-size:12px;font-weight:600}.heatmap thead th:first-child{text-align:left;padding-left:0}.heatmap tbody th,.heatmap tbody td{border-bottom:none;padding:0 3px}.heatmap tbody th[scope=row]{z-index:1;text-overflow:ellipsis;white-space:nowrap;background:var(--surface);min-width:150px;max-width:220px;padding:0 14px 0 0;font-size:13px;position:sticky;left:0;overflow:hidden}.heatmap th:last-child,.heatmap td:last-child{border-left:1px solid var(--border);padding-left:10px}.heat-cell{text-align:center;font-variant-numeric:tabular-nums;border-radius:6px;min-width:46px;padding:6px 4px;font-size:13px;font-weight:600;line-height:1.2}.heatmap td:last-child .heat-cell{font-weight:700}.heat-good{background:var(--success-bg);color:var(--success)}.heat-ok{background:var(--warning-bg);color:var(--warning)}.heat-poor{background:var(--danger-bg);color:var(--danger)}.heat-na{background:var(--surface-2);color:var(--text-faint)}.heatmap .heat-cell.heat-good,.heat-key.heat-good{color:var(--text-muted);background:0 0;font-weight:500}.heatmap .heat-cell.heat-poor{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--danger) 28%, transparent);font-weight:700}.heatmap .heat-cell.heat-na,.heat-key.heat-na{color:var(--text-faint);background:0 0;font-weight:400}.heatmap td:last-child .heat-cell.heat-good{background:var(--success-bg);color:var(--success);font-weight:700}.heatmap td:last-child .heat-cell.heat-na,.heatmap tbody tr:hover>th[scope=row],.heatmap tbody tr:hover>td{background:var(--surface-2)}.heat-key.heat-na{border-style:dashed}.score-bands{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px 20px;margin-bottom:8px;padding-bottom:8px;display:flex}.score-bands-grid{flex-wrap:wrap;gap:4px 18px;display:flex}.score-band{align-items:baseline;gap:6px;min-width:0;display:flex}.score-band-count{font-variant-numeric:tabular-nums;font-size:16px;font-weight:700;line-height:1.2}.score-band-count.band-good{color:var(--success)}.score-band-count.band-ok{color:var(--warning)}.score-band-count.band-poor{color:var(--danger)}.score-band-count.band-na{color:var(--text-muted)}.score-band-text{color:var(--text-muted);font-size:12px}.score-bands-bar{background:var(--border);border-radius:999px;flex:140px;gap:2px;height:6px;display:flex;overflow:hidden}.score-band-seg{flex-basis:0;min-width:4px}.score-band-seg.band-good{background:var(--success)}.score-band-seg.band-ok{background:var(--warning)}.score-band-seg.band-poor{background:var(--danger)}.score-band-seg.band-na{background:var(--text-faint);opacity:.5}.cat-avg-list{margin:0;padding:0;list-style:none}.cat-avg-row{border-top:1px solid var(--border);grid-template-columns:minmax(140px,200px) minmax(80px,1fr) 44px minmax(130px,200px);align-items:center;gap:14px;padding:7px 0;display:grid}.cat-avg-row:first-child{border-top:none}.cat-avg-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.cat-avg-score{text-align:center;font-variant-numeric:tabular-nums;border-radius:6px;padding:3px 0;font-size:13px;font-weight:700}@media (width<=760px){.cat-avg-row{grid-template-columns:minmax(0,1fr) 44px;row-gap:4px}.cat-avg-row .category-bar-track{grid-area:2/1/auto/-1}.cat-avg-note{grid-column:1/-1}}.heat-key{vertical-align:-3px;border:1px solid;border-radius:4px;width:14px;height:14px;display:inline-block}.confirm-dialog-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.toast-region{z-index:90;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast-region-errors{top:64px;bottom:auto}.toast{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);box-shadow:var(--shadow-md);border-left-width:4px;align-items:flex-start;gap:12px;padding:10px 14px;font-size:13px;display:flex}.toast span{flex:1}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-info{border-left-color:var(--accent-cyan)}.toast-close{color:var(--text-muted);background:0 0;border:none;padding:0 6px;font-size:18px;line-height:1}.sidebar-backdrop{display:none}@media (width<=720px){.topbar{padding:0 12px}.main{padding:16px 16px 40px}.sidebar{z-index:40;width:min(280px,85vw);height:auto;box-shadow:var(--shadow-md);transition:transform .2s;position:fixed;top:52px;bottom:0;left:0;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.sidebar-backdrop{z-index:30;background:#0f172a73;display:block;position:fixed;inset:52px 0 0}.page-header{flex-wrap:wrap}.card{overflow-x:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.no-print,.sidebar,.topbar{display:none!important}.content-area,.main{margin:0!important;padding:0!important}.card{break-inside:avoid;box-shadow:none!important;border:none!important}}.scoring-cat-list{margin:0;padding:0;list-style:none}.scoring-cat-row{border-top:1px solid var(--border);grid-template-columns:minmax(150px,1.4fr) auto auto auto;align-items:center;gap:12px;padding:10px 0;display:grid}.scoring-cat-row:first-child{border-top:0}.scoring-cat-label{cursor:pointer;align-items:center;gap:10px;min-width:0;display:inline-flex}.scoring-cat-label input:disabled{cursor:not-allowed}.scoring-cat-name{font-weight:600}.scoring-cat-row .badge{justify-self:start}@media (width<=640px){.scoring-cat-row{grid-template-columns:1fr auto}.scoring-cat-row>:nth-child(n+3){grid-column:1/-1}}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.checkbox-row{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.rule-regex{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:260px;display:inline-block;overflow:hidden}.regex-result{border:1px solid var(--border);background:var(--surface-2,var(--bg));border-radius:8px;max-height:320px;padding:6px 0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;overflow:auto}.regex-line{white-space:pre;gap:12px;padding:1px 12px;display:flex}.regex-line-match{background:var(--warning-bg)}.regex-line-no{text-align:right;width:3ch;color:var(--text-muted);-webkit-user-select:none;user-select:none;flex:none}.regex-line-text mark{background:var(--warning);color:#fff;border-radius:3px;padding:0 2px}.rule-cell-text{white-space:normal;overflow-wrap:anywhere;max-width:320px}.rule-glob{white-space:normal;overflow-wrap:anywhere;vertical-align:top;max-width:200px;display:inline-block}.rule-cell-head{flex-wrap:wrap;align-items:center;gap:6px;max-width:340px;margin-bottom:2px;display:flex}.rule-cell-head code{overflow-wrap:anywhere}.help-callout{background:color-mix(in srgb, var(--warning) 10%, var(--surface-2));border:1px solid color-mix(in srgb, var(--warning) 45%, var(--border));border-radius:var(--radius-sm);margin:0 0 10px;padding:12px 14px}.help-callout-title{color:var(--text);margin:0 0 6px;font-weight:600}.help-callout-steps{margin:0 0 10px;padding-left:20px}.help-callout-steps li+li{margin-top:4px}.md-doc{max-width:920px}.md-contents{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);margin:0 0 20px;padding:12px 16px;font-size:14px}.md-contents ol{columns:2;column-gap:28px;margin:6px 0 0;padding-left:22px}.md-contents li{break-inside:avoid;margin:2px 0}.md-title{margin:0 0 12px;font-size:22px}.md-heading{margin:28px 0 10px;padding-top:4px;scroll-margin-top:72px}.md-doc h3.md-heading,.md-doc h4.md-heading{margin-top:20px;font-size:16px}.md-p{margin:0 0 12px;line-height:1.6}.md-list{margin:0 0 12px;padding-left:22px;line-height:1.6}.md-list li+li{margin-top:3px}.md-task{margin-left:-18px;list-style:none}.md-rule{border:0;border-top:1px solid var(--border);margin:22px 0}.md-code{margin:0 0 14px;position:relative}.md-code pre.log-view{white-space:pre;max-height:none;margin:0;padding-right:64px;overflow-x:auto}.md-code-copy{padding:2px 8px;font-size:12px;position:absolute;top:6px;right:6px}.md-doc table{margin-bottom:14px}@media (width<=720px){.md-contents ol{columns:1}}.resizable-th:not(.sticky-col){position:relative}.col-resizer{cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;z-index:2;width:9px;position:absolute;top:0;bottom:0}.col-resizer-right{right:-4px}.col-resizer-left{left:-4px}.col-resizer:after{content:"";background:var(--border-strong);width:1px;position:absolute;top:25%;bottom:25%;left:4px}.col-resizer:hover:after,.col-resizer:focus-visible:after{background:var(--primary);border-radius:2px;width:3px;top:0;bottom:0;left:3px}.col-resizer:focus-visible{outline:none}.reason-chips{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.attn-list{margin:0;padding:0;list-style:none}.attn-row{border-top:1px solid var(--border);grid-template-columns:26px minmax(150px,1.1fr) 48px minmax(230px,270px) minmax(0,1.5fr);align-items:center;gap:14px;padding:10px 0;display:grid}.attn-rank{background:var(--surface-2);width:24px;height:24px;color:var(--text-muted);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.attn-project{min-width:0}.attn-name{overflow-wrap:anywhere;font-size:14px;font-weight:600}.attn-meta{flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:3px;display:flex}.attn-meta .badge{text-transform:none;letter-spacing:0}.attn-score{letter-spacing:-.02em;font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;height:36px;font-size:17px;font-weight:700;line-height:1;display:grid}.attn-counts{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.attn-count{flex-direction:column;align-items:flex-start;gap:1px;display:flex}.attn-count-value{font-variant-numeric:tabular-nums;font-size:16px;font-weight:700;line-height:1.2}.attn-count-value.is-zero{color:var(--text-faint);font-weight:600}.attn-count-value.tone-danger{color:var(--danger)}.attn-count-value.tone-warning{color:var(--warning)}.attn-count-value.tone-primary{color:var(--primary)}.attn-count-label{color:var(--text-muted);font-size:11px}.attn-reasons{min-width:0}.attn-reasons .reason-chips{margin-top:0}.attn-reasons .badge{text-transform:none;letter-spacing:0}@media (width<=1100px){.attn-row{grid-template-columns:26px minmax(0,1fr) 48px;row-gap:8px}.attn-counts{grid-column:2/-1;max-width:320px}.attn-reasons{grid-column:2/-1}}.proj-toolbar{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:12px;display:flex}.proj-search{flex:220px;max-width:320px}.proj-sort{align-items:center;gap:8px;margin-left:auto;display:flex}.proj-sort select{width:auto}.seg{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);gap:2px;padding:3px;display:inline-flex}.seg-btn{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:5px 10px;font-size:13px;font-weight:500;display:inline-flex}.seg-btn:hover{color:var(--text)}.seg-btn[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm,0 1px 2px #0f172a1f)}.seg-count{font-variant-numeric:tabular-nums;color:var(--text-faint);font-size:12px}.seg-btn[aria-pressed=true] .seg-count{color:var(--primary);font-weight:600}.proj-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.proj{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:52px minmax(0,1fr) minmax(0,220px);align-items:start;gap:4px 16px;padding:14px 16px;display:grid}.proj-clickable{cursor:pointer}.proj-clickable:hover{border-color:var(--border-strong);background:var(--surface-hover)}.proj-deleted{opacity:.6}.proj-score{letter-spacing:-.02em;font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;height:46px;font-size:18px;font-weight:700;line-height:1;display:grid}.proj-main{flex-direction:column;gap:2px;min-width:0;display:flex}.proj-title{align-items:center;gap:8px;display:flex}.proj-name{overflow-wrap:anywhere;font-size:15px;font-weight:600}.proj-source{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.proj-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px;margin-top:10px;display:grid}.proj-fact{flex-direction:column;align-items:flex-start;gap:3px;min-width:0;display:flex}.proj-fact-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:600}.proj-side{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.proj-side .reason-chips{justify-content:flex-end}.proj-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 16px;display:flex}.proj-empty h2{margin:0;font-size:16px}.proj-empty p{max-width:46ch;margin:0 0 8px}@media (width<=760px){.proj{grid-template-columns:46px minmax(0,1fr)}.proj-side{flex-flow:wrap;grid-column:2;justify-content:space-between;align-items:center}.proj-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.attention-summary,.finding-pills,.latest-run{white-space:nowrap;align-items:center;gap:4px;display:flex}.latest-run{gap:8px}.count-pill{text-transform:none;letter-spacing:0;font-variant-numeric:tabular-nums;gap:4px}.score-value{font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.dash-overview{padding:0;overflow:hidden}.dash-hero{grid-template-columns:minmax(270px,.8fr) minmax(0,1.4fr);align-items:center;gap:28px;padding:16px 18px;display:grid}.dash-hero-score{align-items:center;gap:16px;min-width:0;display:flex}.dash-hero .score-ring{width:96px;height:96px}.dash-hero .score-ring-value{font-size:30px}.dash-hero-text{flex-direction:column;gap:3px;min-width:0;display:flex}.dash-hero-title{margin:0;font-size:14px;font-weight:600}.dash-hero-delta{font-size:13px;font-weight:600}.dash-hero-trend{min-width:0}.org-trend-head{flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin-bottom:4px;font-size:12px;display:flex}.org-trend-range{margin-left:auto}.dash-stats{background:var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.dash-stat{background:var(--surface);align-items:flex-start;gap:12px;min-width:0;padding:12px 16px;display:flex}.dash-stat-text{min-width:0}.dash-stat-title{color:var(--text-muted);margin:0;font-size:12px;font-weight:500}.dash-stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1.2}.dash-stat-note{color:var(--text-muted);margin:1px 0 0;font-size:12px}@media (width<=1000px){.dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.dash-hero{grid-template-columns:minmax(0,1fr);gap:12px}}@media (width<=520px){.dash-stats{grid-template-columns:minmax(0,1fr)}}.dash-section{margin-top:22px}.dash-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.dash-section-heading{flex-wrap:wrap;flex:auto;align-items:baseline;gap:2px 12px;min-width:0;display:flex}.dash-section-title{letter-spacing:-.01em;white-space:nowrap;margin:0;font-size:15px;font-weight:600}.dash-section-sub{color:var(--text-muted);flex:320px;margin:0;font-size:12px}.dash-section-link{white-space:nowrap;flex:none}.dash-card-flush{padding:2px 16px}.dash-card-flush>ol>li:first-child,.dash-card-flush>ul>li:first-child{border-top:none}.dash-legend{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.top-vulns{margin:0;padding:0;list-style:none}.top-vuln{border-top:1px solid var(--border);grid-template-columns:110px minmax(0,1fr);gap:14px;padding:10px 0;display:grid}.top-vuln-severity{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.top-vuln-body{flex-direction:column;gap:2px;min-width:0;display:flex}.top-vuln-title{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.top-vuln-summary{overflow-wrap:anywhere}@media (width<=600px){.top-vuln{grid-template-columns:minmax(0,1fr);gap:6px}.top-vuln-severity{flex-direction:row;align-items:center;gap:8px}}.ai-preview-dialog{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(820px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--text);box-shadow:var(--shadow-md);padding:24px;overflow-y:auto}.ai-preview-dialog::backdrop{background:#0f172a80}.ai-preview-section+.ai-preview-section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.ai-preview-heading{margin:0 0 8px;font-size:15px}.ai-preview-subheading{margin:0 0 4px;font-size:13px}.ai-preview-facts{gap:4px;margin:0 0 10px;font-size:13px;display:grid}.ai-preview-facts div{grid-template-columns:84px 1fr;gap:8px;display:grid}.ai-preview-facts dt{color:var(--text-muted)}.ai-preview-facts dd{margin:0}.ai-preview-notes{border-radius:var(--radius);background:var(--surface-2);margin:0 0 10px;padding:8px 12px 8px 28px;font-size:13px}.ai-preview-lists{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.ai-preview-files{margin:0;padding:0;font-size:13px;list-style:none}.ai-preview-files li{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:3px 0;display:flex}.ai-preview-files li:first-child{border-top:none}.ai-preview-files code{overflow-wrap:anywhere}.ai-preview-files .text-muted{text-align:right;flex-shrink:0;max-width:55%}.ai-preview-chips{flex-wrap:wrap;gap:6px;display:flex}.ai-preview-prompt{margin-top:12px}.ai-preview-prompt summary{cursor:pointer;font-size:13px;font-weight:600}.ai-preview-prompt-actions{justify-content:flex-end;margin:4px 0;display:flex}.ai-preview-prompt pre{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;margin:0;padding:10px 12px;font-size:12px;line-height:1.5;overflow:auto}.audit-card{padding:16px 20px 12px}.audit-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:12px 14px;margin-bottom:14px;padding-bottom:14px;display:flex}.audit-field{flex-direction:column;gap:4px;display:flex}.audit-field>span{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.audit-field select,.audit-field input{min-width:150px;height:34px;padding:0 10px;font-size:13px}.audit-clear{height:34px}.audit-count{color:var(--text-muted);font-variant-numeric:tabular-nums;align-self:center;font-size:13px}.audit-count b{color:var(--text);font-size:15px}.audit-table-wrap{overflow-x:auto}.audit-table td{vertical-align:middle;padding-top:9px;padding-bottom:9px}.audit-table tbody tr:not(.audit-day):hover{background:var(--surface-hover)}.audit-day th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:0 0;border-bottom:none;padding:14px 4px 6px;font-size:11px;font-weight:700}.audit-when{white-space:nowrap;font-variant-numeric:tabular-nums;flex-direction:column;gap:1px;display:flex}.audit-time{font-weight:600}.audit-date{color:var(--text-muted);font-size:12px}.audit-actor{align-items:center;gap:8px;max-width:260px;display:inline-flex}.audit-avatar{width:24px;height:24px;color:var(--cat-teal);background:var(--cat-teal-bg);border-radius:999px;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.audit-actor-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.audit-action{white-space:nowrap;text-transform:none;letter-spacing:0;font-weight:600}.audit-resource{white-space:nowrap;color:var(--text-muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.audit-resource code{color:var(--text-muted);background:var(--surface-2);border-radius:5px;padding:1px 5px;font-size:11.5px}.audit-details{flex-wrap:wrap;gap:4px;display:flex}.audit-chip{border:1px solid var(--border);max-width:260px;color:var(--text);background:var(--surface-2);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:baseline;gap:5px;padding:1px 8px;font-size:12px;display:inline-flex;overflow:hidden}.audit-chip-key{color:var(--text-muted)}.text-faint{color:var(--text-faint)}.version-support{margin-top:16px}.version-support-counts{flex-wrap:wrap;gap:6px;display:flex}.version-support-counts .badge{text-transform:none;letter-spacing:0}.version-support-wrap{overflow-x:auto}.version-support-table td{vertical-align:middle;padding-top:9px;padding-bottom:9px}.version-support-name{white-space:nowrap;font-weight:600}.version-support-where{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:260px;color:var(--text-muted);font-size:12px;display:inline-block;overflow:hidden}.version-support-end{color:var(--text-muted);white-space:nowrap;margin-left:8px;font-size:12.5px}.version-support-table td:last-child{white-space:nowrap}.version-support-line{text-transform:none;letter-spacing:0;font-variant-numeric:tabular-nums;margin-right:4px}.plan-list{margin:0;padding:0;list-style:none}.plan-item{border-top:1px solid var(--border);grid-template-columns:120px minmax(0,1.6fr) minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 0;display:grid}.plan-item .badge{text-transform:none;letter-spacing:0;justify-self:start}.plan-what{overflow-wrap:anywhere;min-width:0}.plan-item-decided .plan-what,.plan-item-decided .plan-when,.plan-item-decided .plan-move{opacity:.65}.plan-decision{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.plan-decision button{padding:4px 10px;font-size:12.5px}@media (width<=760px){.plan-item{grid-template-columns:minmax(0,1fr);gap:4px}.plan-decision{justify-content:flex-start;margin-top:4px}}.chat-shell{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);height:calc(100dvh - 150px);min-height:460px;box-shadow:var(--shadow-sm);grid-template-columns:250px minmax(0,1fr);display:grid;position:relative;overflow:hidden}.chat-sidebar{border-right:1px solid var(--border);background:var(--surface-2);flex-direction:column;min-height:0;display:flex}.chat-search{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:10px;align-items:center;gap:8px;margin:10px 10px 6px;padding:0 10px;display:flex}.chat-search input{min-width:0;box-shadow:none;background:0 0;border:none;outline:none;flex:1;padding:7px 0;font-size:13px}.chat-search:focus-within{border-color:var(--primary)}.chat-list{flex-direction:column;flex:1;gap:1px;min-height:0;padding:4px 6px 10px;display:flex;overflow-y:auto}.chat-list-label{color:var(--text-faint);padding:10px 10px 4px;font-size:11px;font-weight:600}.chat-list-empty{padding:8px 10px}.chat-item{width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:9px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.chat-item svg{color:var(--text-muted);flex:none}.chat-item:hover{background:var(--surface-hover)}.chat-item.active{background:var(--primary-bg);color:var(--primary)}.chat-item.active svg{color:var(--primary)}.chat-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.chat-item-meta{color:var(--text-faint);font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:500}.chat-main{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 16px;display:flex}.chat-head-title{flex-wrap:wrap;flex:1;align-items:baseline;gap:0 10px;min-width:0;display:flex}.chat-head-title strong{overflow-wrap:anywhere;font-size:14px}.chat-head-link{flex:none;font-size:12.5px}.chat-drawer-toggle{padding:6px;display:none}.chat-thread{flex-direction:column;flex:1;gap:18px;min-height:0;padding:18px 20px 8px;display:flex;overflow-y:auto}.chat-turn{flex-direction:column;gap:14px;width:100%;max-width:820px;margin:0 auto;display:flex}.chat-day{justify-content:center;display:flex}.chat-day span{background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600}.chat-row{gap:10px;display:flex}.chat-row-user{justify-content:flex-end}.chat-bubble{background:var(--primary-bg);max-width:82%;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px 16px 4px;padding:9px 14px;font-size:14px;line-height:1.5}.chat-avatar{background:var(--cat-purple-bg);width:28px;height:28px;color:var(--cat-purple);border-radius:50%;flex:none;place-items:center;display:grid}.chat-assistant-body{flex:1;min-width:0}.chat-answer{overflow-wrap:anywhere;font-size:14px;line-height:1.6}.chat-answer>*+*{margin-top:8px}.chat-answer p,.chat-answer ul,.chat-answer ol{margin:0}.chat-answer ul,.chat-answer ol{padding-left:22px}.chat-answer li+li{margin-top:3px}.chat-answer-heading{font-weight:700}.chat-answer pre.log-view{margin-bottom:0}.chat-project-link{font-weight:600}.chat-actions{align-items:center;gap:10px;margin-top:6px;display:flex}.chat-action{color:var(--text-muted);background:0 0;border:none;border-radius:6px;align-items:center;gap:5px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.chat-action:hover{background:var(--surface-hover);color:var(--text)}.chat-time{color:var(--text-faint);font-size:11px}.chat-typing{align-items:center;gap:4px;padding:10px 0;display:inline-flex}.chat-typing i{background:var(--text-faint);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite chat-bounce}.chat-typing i:nth-child(2){animation-delay:.15s}.chat-typing i:nth-child(3){animation-delay:.3s}@keyframes chat-bounce{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;max-width:560px;margin:auto;display:flex}.chat-empty h2{font-size:20px;font-weight:700}.chat-empty p{margin:0;font-size:13.5px}.chat-empty-mark{background:var(--cat-purple-bg);width:48px;height:48px;color:var(--cat-purple);border-radius:14px;place-items:center;display:grid}.chat-suggestions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-top:12px;display:grid}.chat-suggestion{border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:left;border-radius:12px;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.4}.chat-suggestion:hover{border-color:var(--primary);background:var(--primary-bg)}.chat-composer-wrap{padding:8px 20px 12px}.chat-composer,.chat-composer-wrap .error-banner,.chat-footnote{max-width:820px;margin-left:auto;margin-right:auto}.chat-composer{border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:18px;align-items:flex-end;gap:6px;padding:6px 6px 6px 14px;display:flex}.chat-composer:focus-within{border-color:var(--primary)}.chat-composer textarea{resize:none;min-width:0;max-height:160px;box-shadow:none;background:0 0;border:none;outline:none;flex:1;padding:8px 0;font-size:14px;line-height:1.5}.chat-composer .btn-ghost{padding:8px}.chat-send{background:var(--primary);color:#fff;border:none;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;display:grid}.chat-send:disabled{background:var(--border);color:var(--text-faint);cursor:not-allowed}.chat-footnote{text-align:center;margin-top:6px;font-size:11px}.chat-new{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:10px;justify-content:center;align-items:center;gap:6px;margin:10px 10px 2px;padding:8px 10px;font-size:13px;font-weight:600;display:flex}.chat-new:hover{border-color:var(--primary);color:var(--primary)}.chat-group{flex-direction:column;gap:1px;display:flex}.chat-thread-item{align-items:stretch;gap:0;padding:0}.chat-thread-main{min-width:0;color:inherit;font:inherit;text-align:left;background:0 0;border:none;border-radius:9px;flex:1;align-items:center;gap:9px;padding:8px 10px;display:flex}.chat-thread-text{flex-direction:column;flex:1;min-width:0;display:flex}.chat-thread-scope{text-overflow:ellipsis;white-space:nowrap;color:var(--text-faint);font-size:11px;font-weight:400;overflow:hidden}.chat-thread-actions{align-items:center;gap:2px;padding-right:6px;display:none}.chat-thread-item:hover .chat-thread-actions,.chat-thread-item:focus-within .chat-thread-actions,.chat-thread-item.active .chat-thread-actions{display:inline-flex}.chat-icon-button{color:var(--text-muted);background:0 0;border:none;border-radius:6px;place-items:center;padding:5px;display:grid}.chat-icon-button:hover{background:var(--surface);color:var(--text)}.chat-item-renaming{padding:4px 6px}.chat-item-renaming input{width:100%;padding:5px 8px;font-size:13px}.chat-show-more{margin:6px 10px}.chat-scope{align-items:center;gap:6px;display:inline-flex}.chat-scope select{width:auto;max-width:240px;padding:3px 8px;font-size:12.5px}.chat-streaming .chat-answer>:last-child:after{content:"";vertical-align:text-bottom;background:var(--text-faint);width:7px;height:1em;margin-left:2px;animation:1s steps(2,start) infinite chat-caret;display:inline-block}@keyframes chat-caret{to{visibility:hidden}}.chat-stop{background:var(--text);color:var(--surface)}.chat-stop:hover{opacity:.85}@media (width<=860px){.chat-shell{grid-template-columns:minmax(0,1fr);height:calc(100dvh - 130px)}.chat-sidebar{z-index:5;width:min(280px,85%);box-shadow:var(--shadow-md);transition:transform .2s;position:absolute;inset:0 auto 0 0;transform:translate(-100%)}.chat-drawer-open .chat-sidebar{transform:translate(0)}.chat-drawer-toggle{display:inline-flex}.chat-suggestions{grid-template-columns:minmax(0,1fr)}}.plan-notice{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.plan-notice p{max-width:62ch;margin:0}.plan-notice-title{font-weight:600}.table-scroll.fixed-columns table td.rule-cell{white-space:normal;overflow-wrap:anywhere;overflow:hidden}.table-scroll.fixed-columns table td.rule-cell code,dialog{white-space:normal}.heatmap tbody th[scope=row] a{text-overflow:ellipsis;white-space:nowrap;max-width:206px;color:var(--text);font-weight:500;text-decoration:none;display:block;overflow:hidden}.heatmap tbody th[scope=row] a:hover{color:var(--primary);text-decoration:underline}.findings-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.findings-list-head{background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.findings-select-all,.findings-sort{align-items:center;gap:8px;display:flex}.findings-sort select{width:auto}.findings-items{margin:0;padding:0;list-style:none}.finding{border-top:1px solid var(--border);white-space:normal;grid-template-columns:22px minmax(0,1fr) 280px;gap:6px 12px;padding:12px 14px;display:grid}.finding:first-child{border-top:none}.finding:hover{background:var(--surface-hover)}.finding-selected,.finding-selected:hover{background:var(--primary-bg)}.finding-resolved .finding-message{color:var(--text-muted)}.badge-outline{color:var(--text-muted);border-color:var(--border);text-transform:none;letter-spacing:0;background:0 0}.finding-closed{opacity:.92;padding-top:0;padding-bottom:0;display:block}.finding-closed-head{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;font:inherit;background:0 0;border:none;flex-wrap:nowrap;align-items:center;gap:8px;padding:8px 0;display:flex}.finding-closed-head .badge{text-transform:none;letter-spacing:0;flex-shrink:0}.finding-closed-head .finding-rule{flex-shrink:0}.finding-closed-summary{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.finding-closed-when{font-variant-numeric:tabular-nums;flex-shrink:0}.finding-closed-chevron{color:var(--text-faint);flex-shrink:0;transition:transform .15s}.finding-closed-chevron.open{transform:rotate(180deg)}.finding-closed-body{padding:2px 0 12px}.finding-closed-facts{gap:2px;margin:0 0 8px;display:grid}.finding-closed-facts>div{gap:8px;display:flex}.finding-closed-facts dt{width:48px;color:var(--text-muted)}.finding-closed-facts dd{margin:0}.stat-chip-fixed{opacity:.7;font-size:11px;font-weight:500}@media (width<=760px){.finding-closed-head{flex-wrap:wrap}.finding-closed-summary{flex-basis:100%;order:9}}.finding-check{padding-top:2px}.finding-main{flex-direction:column;gap:4px;min-width:0;display:flex}.finding-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.finding-rule{overflow-wrap:anywhere}.finding-date{white-space:nowrap;margin-left:auto}.finding-message{overflow-wrap:anywhere;font-size:14px;font-weight:500;line-height:1.4}.finding-recommendation{overflow-wrap:anywhere;line-height:1.4}.finding-file{max-width:100%;font-family:var(--font-mono);text-align:left;overflow-wrap:anywhere;align-self:flex-start;font-size:12px}.finding-actions{min-width:0;max-width:none}.finding-buttons{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.finding-buttons .btn-ghost{border:1px solid var(--border);white-space:nowrap}.finding-note{margin:6px 0 0}.finding-error{color:var(--danger);overflow-wrap:anywhere;margin-top:6px}.finding-insight{border-radius:var(--radius-sm);background:var(--surface-2);grid-column:2/-1;min-width:0;padding:10px 12px;overflow-x:auto}@media (width<=760px){.finding{grid-template-columns:22px minmax(0,1fr)}.finding-actions{grid-column:2;max-width:none}.finding-buttons{justify-content:flex-start}}.proj-fact .latest-run,.proj-fact .finding-pills{white-space:normal;flex-wrap:wrap}.title-chips{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.about-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.about-title{margin:0;font-size:14px;font-weight:600}.about-description{max-width:78ch;margin:0 0 14px;line-height:1.55}.about-facts{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px 24px;margin:0;padding-top:14px;display:grid}.about-fact{flex-direction:column;gap:3px;min-width:0;display:flex}.about-fact dt{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:600}.about-fact dd{overflow-wrap:anywhere;margin:0;font-size:13px}.detail-section{margin-top:24px}.detail-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 8px;font-size:11px;font-weight:600}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:12px;margin-bottom:12px;display:grid}.detail-grid>.card{margin:0}.danger-card{border-color:color-mix(in srgb, var(--danger) 35%, var(--border));justify-content:space-between;align-items:center;gap:16px;display:flex}.danger-card button{flex:none}@media (width<=560px){.danger-card{flex-direction:column;align-items:flex-start}}.xf-head{flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:14px;display:flex}.xf-head-text{flex:320px;min-width:0}.xf-title{margin:0;font-size:16px}.xf-head-text p{max-width:70ch;margin:2px 0 0}.xf-filter{margin-bottom:4px}.xf-group{margin-top:18px}.xf-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:8px;margin:0 0 8px;font-size:11px;font-weight:600;display:flex}.xf-group-count{background:var(--surface-2);border:1px solid var(--border);letter-spacing:0;font-variant-numeric:tabular-nums;border-radius:999px;padding:0 7px;font-size:11px}.xf-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.xf{border:1px solid var(--border);border-left:4px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px 16px;padding:10px 14px 10px 16px;display:grid}.xf-proposed{border-left-color:var(--primary)}.xf-applied{border-left-color:var(--success)}.xf-failed{border-left-color:var(--danger)}.xf-rejected{opacity:.75}.xf-main{flex-direction:column;gap:2px;min-width:0;display:flex}.xf-file{max-width:100%;color:var(--text);font-family:var(--font-mono);text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12.5px;font-weight:600}button.xf-file:hover{color:var(--primary);text-decoration:underline}code.xf-file{cursor:default}.xf-rule{overflow-wrap:anywhere;align-items:center;gap:4px;display:flex}.xf-badges,.xf-actions{align-items:center;gap:6px;display:flex}.xf-actions .btn-ghost{border:1px solid var(--border);white-space:nowrap}.xf-approve,.xf-reject{white-space:nowrap;background:0 0;align-items:center;gap:5px;padding:4px 10px;font-size:13px;font-weight:500;display:inline-flex}.xf-approve{color:var(--success);border-color:color-mix(in srgb, var(--success) 45%, var(--border))}.xf-approve:hover:not(:disabled){background:var(--success-bg);border-color:var(--success)}.xf-reject{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 40%, var(--border))}.xf-reject:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.xf-diff{grid-column:1/-1;min-width:0}@media (width<=760px){.xf{grid-template-columns:minmax(0,1fr)}.xf-actions{flex-wrap:wrap}}.xf-review-bar{z-index:3;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:12px;padding:10px 14px;display:flex;position:sticky;top:0}.xf-review-text{flex:280px;min-width:0}.xf-review-text p{margin:2px 0 0}.xf-review-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.xf-tally{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-right:4px;font-size:13px}.xf-tally b{color:var(--text)}.review-item-off{opacity:.7}.review-item-header{flex-wrap:wrap;row-gap:6px}.review-item-header .transformation-file{overflow-wrap:anywhere;min-width:0}.run-head{flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:12px;display:flex}.run-head-text{flex:340px;min-width:0}.run-title{margin:0;font-size:16px}.run-head-text p{max-width:76ch;margin:2px 0 0}.run-options{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:8px 18px;margin-bottom:14px;padding:8px 12px;display:flex}.run-option{color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.run-boot{align-items:center;gap:8px;display:inline-flex}.run-boot-btn{border:1px solid var(--border);background:var(--surface)}.run-result{flex-direction:column;gap:12px;display:flex}.run-status{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.run-status .btn-ghost{border:1px solid var(--border)}.run-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.run-stat{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;display:flex}.run-stat-wide{grid-column:span 2}.run-stat-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.run-stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1.1}.run-stat-of{letter-spacing:0;color:var(--text-muted);margin-left:3px;font-size:13px;font-weight:500}.test-bar{background:var(--surface-2);border-radius:999px;width:100%;height:8px;display:flex;overflow:hidden}.test-bar-pass{background:var(--success)}.test-bar-fail{background:var(--danger)}.test-bar-skip{background:var(--warning)}@media (width<=560px){.run-stat-wide{grid-column:auto}}.pr-files{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);margin-bottom:14px;padding:10px 14px}.pr-files-head{align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.pr-files-count{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-variant-numeric:tabular-nums;border-radius:999px;padding:0 7px;font-size:11px;font-weight:500}.pr-files-list{max-height:220px;margin:0;padding:0;list-style:none;overflow:auto}.pr-files-list li{flex-wrap:wrap;align-items:center;gap:4px 8px;padding:3px 0;display:flex}.pr-files-list code{overflow-wrap:anywhere}.pr-link{align-self:flex-start;align-items:center;padding:7px 14px;display:inline-flex}.chat-shell.aiq-shell{grid-template-columns:minmax(0,1fr);height:calc(100dvh - 230px)}.aiq-answer{flex-direction:column;gap:12px;min-width:0;display:flex}.aiq-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.aiq-location{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.aiq-location .aiq-label{margin:0}.aiq-meta{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.aiq-action{border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;gap:2px;padding:10px 12px;font-size:13.5px;line-height:1.5;display:flex}.aiq-action .aiq-label{margin:0}.chat-action.aiq-promote{border:1px solid var(--border);padding:4px 10px}.analysis-results{flex-direction:column;gap:12px;display:flex}.analysis-results>.card+.card,.analysis-results>.card+section,.analysis-results>section+.card{margin-top:0}.analysis-score .score-trend{margin-bottom:14px}.ai-strip{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);margin-bottom:14px;padding:10px 14px}.ai-strip-row{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.ai-strip-text{flex:280px;margin:0;line-height:1.45}.ai-strip-button{border:1px solid var(--border);background:var(--surface);white-space:nowrap}.ai-strip .error-banner{margin:8px 0 0}.roadmap{flex-direction:column;gap:8px;display:flex}.roadmap-narrative{border-radius:var(--radius-sm);background:var(--primary-bg);align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.roadmap-phase{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:14px;padding:12px 14px;display:flex}.roadmap-phase-body{flex:1;min-width:0}.roadmap-phase-title{font-weight:600}.roadmap-phase-body p{margin:2px 0 0;line-height:1.45}.roadmap-phase-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.analysis-score{container-type:inline-size}@container (width<=760px){.score-findings-row{grid-template-columns:minmax(0,1fr)}}.pr-section{margin-top:28px}.pr-section:first-of-type{margin-top:8px}.pr-section-head{margin-bottom:12px}.pr-section-head h2,.pr-founding h2,.pr-callout h2{margin:0;font-size:16px}.pr-section-head p{max-width:76ch;margin:3px 0 0}.pr-subhead{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 4px;font-size:11px;font-weight:600}.pr-mono{font-family:var(--font-mono)}.pr-ladder{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));align-items:stretch;gap:14px;display:grid}.pr-plan{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);flex-direction:column;padding:18px;display:flex}.pr-plan-featured{border-color:var(--primary);background:var(--primary-bg);box-shadow:0 0 0 1px var(--primary), var(--shadow-sm)}.pr-plan-head{flex-wrap:wrap;align-items:center;gap:8px;min-height:24px;display:flex}.pr-plan-name{margin:0;font-size:16px}.pr-plan-audience{min-height:3em;margin:4px 0 16px}.pr-price{align-items:baseline;gap:4px;display:flex}.pr-price-amount{font-family:var(--font-mono);letter-spacing:-.02em;font-size:28px;font-weight:700}.pr-price-large{font-size:36px}.pr-price-unit{color:var(--text-muted);font-size:13px}.pr-price-note{margin:2px 0 16px}.pr-features{border-top:1px solid var(--border);margin:0;padding:14px 0 0;font-size:13.5px;line-height:1.45;list-style:none}.pr-plan .pr-features{flex:1}.pr-features li{padding:3px 0 3px 22px;position:relative}.pr-features li:before{content:"✓";color:var(--success);font-weight:700;position:absolute;top:3px;left:2px}.pr-founding{border-left:4px solid var(--warning);grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:28px;display:grid}.pr-founding-main{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.pr-founding-main p{max-width:52ch;margin:0}.pr-exchange{border-radius:var(--radius-sm);background:var(--surface-2);margin-top:12px;padding:10px 12px;line-height:1.5}.pr-exchange strong{color:var(--text)}.pr-table-card{padding:4px 16px}.pr-table{width:100%}.pr-table th,.pr-table td{text-align:left;vertical-align:top;padding:10px 12px}.pr-table thead th{white-space:nowrap}.pr-table tbody th{font-weight:600}.pr-table td{font-variant-numeric:tabular-nums}.pr-row-note{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:400;display:block}.pr-yes{color:var(--success);font-weight:700}.pr-no{color:var(--text-faint)}.pr-margin{font-weight:700}.pr-levers{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px;display:grid}.pr-lever{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:14px 16px}.pr-lever p{margin:0;line-height:1.5}.pr-callout{border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:var(--radius);background:var(--surface-2);padding:16px 18px}.pr-callout ul{margin:10px 0 0;padding-left:18px;font-size:14px;line-height:1.5}.pr-callout li+li{margin-top:6px}.pr-plan{position:relative}.pr-plan-tag{background:var(--primary);color:var(--primary-text);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600;position:absolute;top:-10px;right:16px}.plan-readout{grid-template-columns:minmax(200px,.8fr) minmax(0,1.6fr);align-items:start;gap:20px 32px;display:grid}.plan-readout-plan{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.plan-readout-name{letter-spacing:-.01em;font-size:22px;font-weight:700;line-height:1.1}.plan-readout-meters{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px 28px;display:grid}.plan-readout-nudge{border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--warning);grid-column:1/-1;margin:0;padding:8px 12px;font-size:13px;font-weight:500}@media (width<=640px){.plan-readout{grid-template-columns:minmax(0,1fr)}}.usage-meter{flex-direction:column;gap:6px;min-width:0;display:flex}.usage-meter-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.usage-meter-label{color:var(--text-muted);font-size:12px;font-weight:600}.usage-meter-value{font-variant-numeric:tabular-nums;font-size:13px}.usage-meter-value b{font-size:18px}.usage-meter-limit{color:var(--text-muted)}.usage-meter-track{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:8px;overflow:hidden}.usage-meter-track span{background:var(--success);border-radius:999px;height:100%;display:block}.usage-meter-track.usage-warning span{background:var(--warning)}.usage-meter-track.usage-danger span{background:var(--danger)}.form-group-title{border-top:1px solid var(--border);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);align-items:baseline;gap:8px;margin:6px 0 -4px;padding-top:12px;font-size:12px;font-weight:600;display:flex}.form-group-title:first-child{border-top:none;margin-top:0;padding-top:0}.form-group-title span{letter-spacing:0;text-transform:none;color:var(--text-faint);font-weight:400}.invite-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);margin-bottom:14px;padding:14px 16px}.member-list{margin:0;padding:0;list-style:none}.member-row{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:10px 2px;display:grid}.member-row:first-child{border-top:none}.member-who{flex-direction:column;min-width:0;display:flex}.member-name{overflow-wrap:anywhere;font-weight:600}.member-email{overflow-wrap:anywhere}.member-since{text-align:right;min-width:150px}@media (width<=640px){.member-row{grid-template-columns:auto minmax(0,1fr) auto}.member-since,.member-actions{text-align:left;grid-column:2/-1;min-width:0}}.org-grid{grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.org-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.org-card:hover{border-color:var(--border-strong);background:var(--surface-hover)}.org-mark{background:var(--gradient-brand);color:#1a0d06;letter-spacing:.02em;border-radius:12px;place-items:center;width:44px;height:44px;font-size:15px;font-weight:700;display:grid}.org-mark-sm{border-radius:9px;width:30px;height:30px;font-size:12px}.org-main{flex-direction:column;gap:3px;min-width:0;display:flex}.org-name{overflow-wrap:anywhere;font-size:15px;font-weight:600}.org-meta{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.org-side{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.profile-hero{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px 20px;display:grid}.profile-avatar{background:var(--gradient-brand);color:#1a0d06;border-radius:50%;place-items:center;width:64px;height:64px;font-size:22px;font-weight:700;display:grid}.profile-who h2{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:20px;display:flex}.profile-who p{overflow-wrap:anywhere;margin:2px 0 0}.profile-facts{gap:28px;margin:0;display:flex}.profile-facts dt{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:600}.profile-facts dd{margin:2px 0 0;font-size:15px;font-weight:600}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));align-items:start;gap:12px;display:grid}.profile-grid>.card{margin:0}.profile-orgs{margin:0;padding:0;list-style:none}.profile-orgs li{border-top:1px solid var(--border);align-items:center;gap:12px;padding:9px 0;display:flex}.profile-orgs li:first-child{border-top:none}.profile-orgs a{overflow-wrap:anywhere;flex:1;font-weight:500}.profile-success{border-radius:var(--radius-sm);background:var(--success-bg);color:var(--success);padding:8px 12px;font-size:13px;font-weight:500}@media (width<=720px){.profile-hero{grid-template-columns:auto minmax(0,1fr)}.profile-facts{grid-column:1/-1}}.guide-layout{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:36px;display:grid}.guide-toc{max-height:calc(100vh - 120px);padding-right:4px;font-size:13px;position:sticky;top:16px;overflow-y:auto}.guide-toc-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin:14px 0 6px;font-size:11px;font-weight:600}.guide-toc-label:first-child{margin-top:0}.guide-toc ol,.guide-toc ul{margin:0;padding:0;list-style:none}.guide-toc a{border-radius:var(--radius-sm);color:var(--text-muted);gap:8px;padding:5px 8px;line-height:1.35;display:flex}.guide-toc a:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}.guide-toc a span{font-variant-numeric:tabular-nums;width:18px;color:var(--text-faint);flex:none}.guide-body{min-width:0;max-width:820px}.guide-step{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr);gap:16px;padding:22px 0;scroll-margin-top:16px;display:grid}.guide-step:first-child{border-top:none;padding-top:4px}.guide-step-num{background:var(--primary-bg);width:32px;height:32px;color:var(--primary);border-radius:10px;place-items:center;font-size:14px;font-weight:700;display:grid}.guide-step h2{flex-wrap:wrap;align-items:center;gap:8px;margin:3px 0 10px;font-size:18px;display:flex}.guide-step p{max-width:72ch;margin:0 0 10px;line-height:1.65}.guide-note{border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-muted);flex-direction:column;gap:2px;max-width:72ch;margin-top:12px;padding:10px 14px;font-size:13.5px;line-height:1.55;display:flex}.guide-note strong{letter-spacing:.05em;text-transform:uppercase;color:var(--text);font-size:11px}.guide-ref{border-top:1px solid var(--border);margin-top:28px;padding-top:24px;scroll-margin-top:16px}.guide-ref h2{margin:0 0 2px;font-size:18px}.guide-ref>p{margin:0 0 12px}.guide-roles td,.guide-roles thead th:not(:first-child){text-align:center}@media (width<=980px){.guide-layout{grid-template-columns:minmax(0,1fr);gap:16px}.guide-toc{max-height:none;position:static}.guide-toc ol{columns:2}}@media (width<=560px){.guide-toc ol{columns:1}.guide-step{grid-template-columns:minmax(0,1fr);gap:8px}}@media print{.guide-layout{display:block}}.audit-feed{margin:0;padding:0;list-style:none}.audit-day{border-bottom:1px solid var(--border);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:14px 0 2px;padding:0 2px 6px;font-size:11px;font-weight:600}.audit-day:first-child{margin-top:4px}.audit-event{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:4px 12px;padding:10px 2px;display:grid}.audit-event:hover{background:var(--surface-hover)}.audit-event-main{flex-direction:column;gap:6px;min-width:0;display:flex}.audit-event-line{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.audit-event .audit-when{text-align:right;white-space:nowrap}@media (width<=560px){.audit-event{grid-template-columns:auto minmax(0,1fr)}.audit-event .audit-when{text-align:left;grid-column:2;gap:8px;display:flex}}.switch{cursor:pointer;flex:none;display:inline-flex;position:relative}.switch input{opacity:0;width:100%;height:100%;cursor:inherit;margin:0;position:absolute;inset:0}.switch-track{background:var(--border-strong);border-radius:999px;width:38px;height:22px;transition:background .15s;position:relative}.switch-track:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0f172a59}.switch input:checked+.switch-track{background:var(--success)}.switch input:checked+.switch-track:after{transform:translate(16px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--primary);outline-offset:2px}.switch-disabled{cursor:not-allowed}.switch-disabled .switch-track{opacity:.5}@media (prefers-reduced-motion:reduce){.switch-track,.switch-track:after{transition:none}}.rules-howto{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:0;margin-bottom:14px;display:grid}.rules-howto>div{color:var(--text-muted);flex-direction:column;gap:3px;padding:12px 16px;font-size:13px;line-height:1.45;display:flex}.rules-howto>div+div{border-left:1px solid var(--border)}.rules-howto strong{letter-spacing:.05em;text-transform:uppercase;color:var(--text);font-size:11px}@media (width<=640px){.rules-howto>div+div{border-left:none;border-top:1px solid var(--border)}}.scoring-summary{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 14px;padding:12px 16px;display:grid}.scoring-summary dt{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:600}.scoring-summary dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:22px;font-weight:700}.scoring-summary dd span{color:var(--text-muted);font-size:13px;font-weight:400}.scoring-summary dd.is-warning{color:var(--warning)}.cat-list{margin:0;padding:0;list-style:none}.cat-row{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) minmax(150px,220px);align-items:center;gap:14px;padding:11px 2px;display:grid}.cat-row:first-child{border-top:none}.cat-off .cat-name{color:var(--text-muted)}.cat-main{flex-direction:column;gap:4px;min-width:0;display:flex}.cat-name{font-weight:600}.cat-tags{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.cat-share{flex-direction:column;gap:4px;display:flex}.cat-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:8px;display:block;overflow:hidden}.cat-bar i{background:var(--cat-teal);border-radius:999px;height:100%;display:block}.cat-share-text{font-variant-numeric:tabular-nums;font-size:13px}@media (width<=560px){.cat-row{grid-template-columns:auto minmax(0,1fr)}.cat-share{grid-column:2}}.tester-details{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:14px}.tester-details>summary{cursor:pointer;align-items:baseline;gap:10px;padding:10px 14px;font-weight:600;display:flex}.tester-details>summary span{color:var(--text-muted);font-size:13px;font-weight:400}.tester-details>.card{border:none;border-top:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);box-shadow:none;margin:0}.rules-category{width:auto}.rule-group{margin-top:18px}.rule-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rule{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:78px minmax(0,1fr) auto;align-items:start;gap:4px 14px;padding:12px 14px;display:grid}.rule-off{opacity:.65}.rule-sev{justify-self:start;margin-top:2px}.rule-main{flex-direction:column;gap:5px;min-width:0;display:flex}.rule-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rule-head code{overflow-wrap:anywhere;font-weight:600}.rule-message{color:var(--text-muted);margin:0;font-size:13.5px;line-height:1.45}.rule-detects{flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13px;display:flex}.rule-label{color:var(--text-faint);font-size:12px}.rule-detects .rule-regex,.rule-detects .rule-glob{overflow-wrap:anywhere;white-space:normal;max-width:100%}.rule-side{align-items:center;gap:10px;display:flex}@media (width<=640px){.rule{grid-template-columns:minmax(0,1fr) auto}.rule-sev{grid-column:1}.rule-main{grid-column:1/-1}.rule-side{grid-area:1/2}}.page-header-compact>button,.page-header-compact>a.btn-primary,.page-header-compact>a.btn-ghost{white-space:nowrap;flex:none;align-self:flex-start}.tp-stats{grid-template-columns:1.6fr repeat(4,1fr);gap:10px;margin-bottom:10px;display:grid}.tp-stat{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:2px;padding:12px 16px;display:flex}.tp-stat b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:26px;line-height:1.1}.tp-stat span{color:var(--text-muted);font-size:12.5px}.tp-stat-main b{color:var(--primary)}.tp-p0{color:var(--danger)}.tp-p1{color:var(--warning)}.tp-sec{color:var(--primary)}.tp-snapshot{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:0;margin-bottom:14px;display:grid}.tp-snapshot>div{color:var(--text-muted);align-items:baseline;gap:10px;padding:10px 16px;font-size:13px;line-height:1.4;display:flex}.tp-snapshot>div+div{border-left:1px solid var(--border)}.tp-snapshot b{font-family:var(--font-mono);color:var(--text);flex:none;font-size:18px}.tp-two{grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));align-items:start;gap:12px;margin-bottom:12px;display:grid}.tp-two>.card{margin:0}.tp-pyramid,.tp-risks,.tp-gaps,.tp-steps{margin:0;padding:0;list-style:none}.tp-pyramid li,.tp-risks li{border-top:1px solid var(--border);padding:9px 0}.tp-pyramid li:first-child,.tp-risks li:first-child{border-top:none;padding-top:0}.tp-pyramid-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:2px;display:flex}.tp-pyramid li p,.tp-risks li p{margin:0;line-height:1.45}.tp-gaps li{border-left:3px solid var(--danger);margin-bottom:6px;padding:4px 0 4px 12px;font-size:13.5px;line-height:1.5}.tp-steps{padding-left:20px;font-size:13.5px;line-height:1.5;list-style:decimal}.tp-steps li{margin-bottom:8px}.tp-process{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:24px;margin-bottom:12px;display:grid}.tp-process dl{margin:8px 0 0}.tp-process dl>div{border-top:1px solid var(--border);padding:7px 0}.tp-process dl>div:first-child{border-top:none}.tp-process dt{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:600}.tp-process dd{color:var(--text-muted);margin:2px 0 0;font-size:13.5px;line-height:1.45}.tp-process ul{color:var(--text-muted);margin:4px 0 0;padding-left:18px;font-size:13.5px;line-height:1.5}.tp-sub{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:12px 0 0;font-size:12px;font-weight:600}.tp-catalog>h2{margin:20px 0 0;font-size:18px}.tp-toolbar{z-index:5;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:14px;padding:10px 12px;display:flex;position:sticky;top:0}.tp-toolbar .proj-search{flex:220px;max-width:320px}.tp-check{cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.tp-layout{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:28px;display:grid}.tp-toc{max-height:calc(100vh - 110px);font-size:13px;position:sticky;top:76px;overflow-y:auto}.tp-toc ul{margin:0;padding:0;list-style:none}.tp-toc a{border-radius:var(--radius-sm);color:var(--text-muted);justify-content:space-between;gap:8px;padding:4px 8px;line-height:1.35;display:flex}.tp-toc a:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}.tp-toc a span{font-variant-numeric:tabular-nums;color:var(--text-faint);flex:none}.tp-jump{display:none}.tp-modules{min-width:0}.tp-module{margin-bottom:26px;scroll-margin-top:80px}.tp-module>h3{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;font-size:15px;display:flex}.tp-module-p0{color:var(--danger);font-size:11px;font-weight:600}.tcase-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.tcase{border-top:1px solid var(--border);scroll-margin-top:80px}.tcase:first-child{border-top:none}.tcase summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:9px 14px;list-style:none;display:flex}.tcase summary::-webkit-details-marker{display:none}.tcase summary:before{content:"▸";width:10px;color:var(--text-faint);flex:none;transition:transform .12s}.tcase details[open]>summary:before{transform:rotate(90deg)}.tcase summary:hover{background:var(--surface-hover)}.tcase summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.tcase-id{min-width:78px;font-family:var(--font-mono);color:var(--text-muted);background:0 0;border:none;flex:none;padding:0;font-size:12px}.tcase-scenario{flex:260px;min-width:0;font-size:13.5px;font-weight:500;line-height:1.4}.tcase-body{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:14px 24px;padding:4px 14px 14px 36px;display:grid}.tcase-body h4{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);margin:0 0 3px;font-size:11px;font-weight:600}.tcase-body p{color:var(--text-muted);margin:0;font-size:13.5px;line-height:1.55}@media (prefers-reduced-motion:reduce){.tcase summary:before{transition:none}}@media (width<=980px){.tp-stats{grid-template-columns:repeat(3,1fr)}.tp-stat-main{grid-column:1/-1}.tp-layout{grid-template-columns:minmax(0,1fr);gap:12px}.tp-toc{display:none}.tp-jump{flex-direction:column;gap:4px;display:flex}.tp-snapshot>div+div{border-left:none;border-top:1px solid var(--border)}}@media (width<=600px){.tp-toolbar{position:static}.tp-module,.tcase{scroll-margin-top:16px}}@media print{.tp-toolbar,.tp-toc,.tp-jump{display:none}.tp-layout{display:block}.tcase details>.tcase-body{display:grid}}.field-problem{color:var(--danger);margin-top:4px;font-size:12.5px}.register-colleagues{border:1px solid var(--warning-border);border-radius:var(--radius-sm);background:var(--warning-bg);padding:10px 12px;font-size:13px}.register-colleagues p{color:var(--text);margin:0 0 8px}.register-colleagues-confirm{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:flex}.invite-link-title{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;font-weight:600;display:flex}.invite-link-row{gap:8px;display:flex}.invite-link-row input{min-width:0;font-family:var(--font-mono);flex:auto;font-size:12.5px}.invite-pending{border-top:1px solid var(--border);margin-top:18px;padding-top:12px}.invite-pending-title{margin:0 0 4px;font-size:13px;font-weight:600}.invite-avatar{border:1px dashed var(--border-strong,var(--border));color:var(--text-muted);background:0 0}.invite-actions{gap:4px;display:flex}@media (width<=640px){.invite-link-row{flex-direction:column}.invite-actions{grid-column:2/-1}}.twofactor-alert{border:1px solid var(--warning-border);border-radius:var(--radius);background:var(--warning-bg);color:var(--text);flex-wrap:wrap;align-items:center;gap:12px;margin:12px 28px 0;padding:10px 14px;font-size:13.5px;display:flex}.twofactor-alert>svg{color:var(--warning);flex:none}.twofactor-alert-text{flex:280px;min-width:0}@media (width<=640px){.twofactor-alert{margin:10px 14px 0}}.code-input{font-family:var(--font-mono);letter-spacing:.18em;text-align:center;font-size:20px}.twofactor-intro,.twofactor-setup,.twofactor-codes,.twofactor-form{margin-top:12px}.twofactor-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.twofactor-steps{flex-direction:column;gap:16px;margin:0 0 14px;padding-left:20px;font-size:13.5px;display:flex}.twofactor-steps li>label{margin-bottom:8px;display:block}.twofactor-qr{margin:10px 0;display:flex}.twofactor-qr img,.twofactor-qr-empty{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;width:192px;height:192px}.twofactor-qr-empty{text-align:center;color:#6b7280;justify-content:center;align-items:center;padding:12px;font-size:12px;display:flex}.twofactor-secret{letter-spacing:.08em;overflow-wrap:anywhere;margin:8px 0 4px;padding:8px 10px;font-size:14px;display:block}.twofactor-code-grid{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px 12px;margin:0 0 12px;padding:12px;list-style:none;display:grid}.twofactor-code-grid code{letter-spacing:.06em;font-size:14px}.twofactor-saved{cursor:pointer;align-items:center;gap:8px;margin:14px 0 10px;font-weight:600;display:flex}.policy-row{align-items:flex-start;gap:14px;margin-top:12px;display:flex}.policy-row .switch{flex:none;margin-top:2px}.policy-title{cursor:pointer;font-weight:600}.member-2fa{vertical-align:1px;margin-left:8px;font-size:10.5px}.member-actions{text-align:right;min-width:84px}.mail-test{flex-wrap:wrap;gap:8px;display:flex}.mail-test input{flex:240px;min-width:0}.alert-list{margin:12px 0 0;padding:0;list-style:none}.alert-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:10px 16px;padding:12px 2px;display:flex}.alert-row:first-child{border-top:none}.alert-main{flex:360px;min-width:0}.alert-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.alert-vuln{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:13.5px;font-weight:600}.alert-summary{overflow-wrap:anywhere;margin:6px 0 2px;font-size:13.5px}.alert-meta{overflow-wrap:anywhere;margin:2px 0 0}.alert-actions{flex-wrap:wrap;align-items:flex-start;gap:6px;display:flex}.sev-badge{white-space:nowrap;border-radius:999px;padding:1px 9px;font-size:11.5px;font-weight:700}.sev-critical{background:var(--danger-bg);color:var(--danger)}.sev-high{background:var(--warning-bg);color:var(--warning)}:root{--jv-bg:#0b0f14;--jv-bg-soft:#10151d;--jv-surface:#141b26;--jv-surface-2:#1a2230;--jv-border:#26314487;--jv-border-strong:#34405a;--jv-text:#eef2f6;--jv-text-muted:#a6b3c8;--jv-text-faint:#8190aa;--jv-ember:#f06a2c;--jv-accent:#f8981d;--jv-accent-bright:#ffb648;--jv-accent-bg:#f8981d1f;--jv-gradient:linear-gradient(120deg, var(--jv-ember) 0%, var(--jv-accent) 100%);--jv-ok:#6db33f;--jv-ok-bright:#8fd35c;--jv-ok-bg:#6db33f1f;--jv-danger:#f0654a;--jv-radius-sm:8px;--jv-radius-md:14px;--jv-radius-lg:22px;--jv-shadow:0 20px 60px -20px #0000008c}
