:root{--text:#c4c4ce;--text-h:#fafafa;--text-faint:#7c7c8a;--bg:#08080a;--bg-elevated:#0c0c0f;--surface:#121216d1;--surface-solid:#141418;--surface-2:#1a1a21;--border:#ffffff14;--border-strong:#ffffff1f;--border-glow:#a78bfa24;--code-bg:#16161ce6;--input-bg:#08080aa6;--accent:#c4b5fd;--accent-strong:#a78bfa;--accent-muted:#8b7fc8;--accent-dim:#a78bfa24;--accent-glow:#8b5cf638;--danger:#f87171;--chart-critical:#ef4444;--chart-high:#f97316;--chart-medium:#3b82f6;--chart-low:#22c55e;--chart-info:#64748b;--chart-grid:#27272a;--chart-text:#a1a1aa;--sans:"Plus Jakarta Sans", "DM Sans", system-ui, "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--shadow-sm:0 1px 2px #00000059;--shadow:0 0 0 1px #ffffff0f, 0 4px 24px #00000059, 0 24px 56px -32px #000000a6;--shadow-lg:0 0 0 1px #ffffff14, 0 32px 64px #00000073;--radius:16px;--radius-sm:10px;--radius-xs:8px;--ease-out:cubic-bezier(.22, 1, .36, 1);font:15.5px/1.6 var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}[data-theme=light]{--text:#3f3f46;--text-h:#18181b;--text-faint:#71717a;--bg:#f4f4f5;--bg-elevated:#fafafa;--surface:#ffffffeb;--surface-solid:#fff;--surface-2:#f4f4f5;--border:#18181b14;--border-strong:#18181b24;--border-glow:#5b21b61f;--code-bg:#f4f4f5f2;--input-bg:#fffffff2;--accent:#7c3aed;--accent-strong:#6d28d9;--accent-muted:#8b5cf6;--accent-dim:#7c3aed1f;--accent-glow:#7c3aed33;--danger:#dc2626;--chart-critical:#ef4444;--chart-high:#ea580c;--chart-medium:#2563eb;--chart-low:#16a34a;--chart-info:#64748b;--chart-grid:#e4e4e7;--chart-text:#52525b;--shadow-sm:0 1px 2px #0000000f;--shadow:0 0 0 1px #0000000d, 0 4px 24px #0000000f, 0 24px 56px -32px #00000014;--shadow-lg:0 0 0 1px #0000000f, 0 32px 64px #00000014}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{min-height:100svh;margin:0;position:relative}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse 120% 70% at 50% -40%, #6d28d92e, transparent 52%), radial-gradient(ellipse 55% 40% at 100% 0%, #3b82f617, transparent 48%), radial-gradient(ellipse 50% 45% at 0% 100%, #7c3aed0f, transparent 42%), radial-gradient(ellipse 80% 60% at 80% 100%, #06b6d40a, transparent 45%), var(--bg);position:fixed;inset:0}html[data-theme=light] body:before{background:radial-gradient(ellipse 90% 55% at 50% -25%, #7c3aed12, transparent 50%), radial-gradient(ellipse 50% 35% at 100% 0%, #3b82f60d, transparent 45%), var(--bg)}::selection{color:var(--text-h);background:#a78bfa47}#root{min-height:100svh}h1,h2{color:var(--text-h);letter-spacing:-.025em;margin:0 0 .5rem;font-weight:600}h1{font-size:1.65rem;line-height:1.2}h2{font-size:1.125rem;font-weight:600;line-height:1.35}h3{color:var(--text-h);letter-spacing:-.02em;margin:0 0 .5rem;font-size:1rem;font-weight:600}p{margin:0 0 .75rem}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.muted{color:var(--text-faint);opacity:1;line-height:1.55}.small{font-size:.875rem}.mono{font-family:var(--mono);font-size:.88em}code{font-family:var(--mono);background:var(--code-bg);color:var(--text-h);border-radius:4px;padding:.15em .4em;font-size:.88em}.error{color:var(--danger);margin:0 0 .75rem}.auth-page{justify-content:center;align-items:center;min-height:100svh;padding:1.5rem;display:flex}.auth-page .auth-card{position:relative;overflow:hidden}.auth-page .auth-card:before{content:"";opacity:.9;background:linear-gradient(90deg,#7c3aed,#a78bfa,#38bdf8);height:3px;position:absolute;top:0;left:0;right:0}.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);text-align:left;-webkit-backdrop-filter:blur(14px)saturate(1.1);transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);background:linear-gradient(165deg,#1c1c248c 0%,#0e0e12eb 100%);padding:1.5rem 1.65rem;position:relative}html[data-theme=light] .card{-webkit-backdrop-filter:blur(8px)saturate(1.05);background:linear-gradient(165deg,#fffffff5 0%,#fafafafc 100%)}.card:not(.hero-dash):before{content:"";border-radius:var(--radius) var(--radius) 0 0;pointer-events:none;opacity:.85;background:linear-gradient(90deg,#0000 0%,#ffffff12 30%,#a78bfa1f 50%,#ffffff12 70%,#0000 100%);height:1px;position:absolute;top:0;left:0;right:0}.card>h2:first-child:not(.chart-card-title){border-bottom:1px solid #ffffff0d;margin-top:0;margin-bottom:.85rem;padding-bottom:.65rem}html[data-theme=light] .card>h2:first-child:not(.chart-card-title){border-bottom-color:#00000014}.card.interactive:hover,a.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow), 0 0 0 1px #a78bfa0f}.auth-card{width:100%;max-width:420px}.auth-card.wide{max-width:520px}.form{flex-direction:column;gap:1rem;margin-top:1.25rem;display:flex}.form label{color:var(--text-h);flex-direction:column;gap:.35rem;font-size:.875rem;display:flex}.form input,.form textarea{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--input-bg);color:var(--text-h);font:inherit;padding:.65rem .85rem;transition:border-color .15s,box-shadow .15s}.form input:hover,.form textarea:hover{border-color:var(--border-strong)}.form input:focus,.form textarea:focus{box-shadow:0 0 0 3px var(--accent-dim);border-color:#a78bfa73;outline:none}.btn{font:inherit;cursor:pointer;border-radius:var(--radius-xs);border:1px solid var(--border);color:var(--text-h);background:#ffffff08;padding:.55rem 1.05rem;font-weight:500;transition:background .15s,border-color .15s,transform .12s,box-shadow .15s}.btn:hover:not(:disabled){border-color:var(--border-strong);background:#ffffff0f}.btn:active:not(:disabled){transform:scale(.98)}.btn.primary{color:#fff;box-shadow:0 2px 12px var(--accent-glow), inset 0 1px 0 #ffffff1f;background:linear-gradient(135deg,#956afa 0%,#7c3aed 42%,#5b21b6 100%);border:1px solid #ffffff1f;font-weight:600}.btn.primary:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 4px 20px var(--accent-glow), inset 0 1px 0 #ffffff24}.btn.primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.ghost{color:var(--text);background:0 0;border-color:#0000}.btn.ghost:hover{color:var(--text-h);background:#ffffff0a}.app-shell{flex-direction:column;min-height:100svh;display:flex}.app-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(24px)saturate(1.4);z-index:100;background:#060609c7;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand nav user";align-items:center;gap:.85rem 1.15rem;padding:.6rem 1.35rem .65rem;display:grid;position:sticky;top:0;box-shadow:inset 0 1px #ffffff0a,0 12px 40px #00000040}html[data-theme=light] .app-header{background:#ffffffe0;box-shadow:inset 0 1px #0000000f,0 8px 32px #0000000f}html[data-theme=light] .brand{background:linear-gradient(135deg,#312e81 0%,#5b21b6 42%,#6d28d9 100%);color:#0000;-webkit-background-clip:text;background-clip:text}html[data-theme=light] .brand-sub{color:#52525b;opacity:1}html[data-theme=light] .brand-block:hover{background:#0000000a}html[data-theme=light] .app-nav{border:1px solid var(--border);background:#0000000a}html[data-theme=light] .app-nav a:hover{color:var(--text-h);background:#5b21b614}html[data-theme=light] .app-nav a.active{color:#4c1d95;background:linear-gradient(#a78bfa59 0%,#c4b5fd33 100%);box-shadow:inset 0 0 0 1px #6d28d938}html[data-theme=light] .user-pill{color:var(--text-h);border:1px solid var(--border-strong);background:#f4f4f5}html[data-theme=light] .btn.sign-out{color:var(--text-h);background:#fffffff2}html[data-theme=light] .nav-settings a{border-color:var(--border);background:#0000000a}html[data-theme=light] .nav-settings a:hover{background:#5b21b61a}.app-header:after{content:"";pointer-events:none;opacity:.9;background:linear-gradient(90deg,#0000,#a78bfa33 20%,#38bdf81f 50%,#a78bfa33 80%,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.app-header .brand-block{grid-area:brand}.app-header .app-nav{grid-area:nav}.app-header .header-user{grid-area:user}@media (width<=820px){.app-header{grid-template-columns:1fr auto;grid-template-areas:"brand user""nav nav";gap:.65rem .75rem;padding:.65rem 1rem .75rem}.header-user{justify-self:end}}.brand-block{color:inherit;border-radius:var(--radius-xs);align-items:center;gap:.65rem;margin:-.2rem 0;padding:.2rem .35rem .2rem 0;text-decoration:none;transition:background .15s,opacity .15s;display:flex}.brand-block:hover{opacity:1;background:#ffffff08}.brand-mark{background:linear-gradient(145deg,#9d7dff 0%,#6d28d9 50%,#4c1d95 100%);border-radius:11px;flex-shrink:0;width:38px;height:38px;box-shadow:0 4px 20px #7c3aed73,inset 0 1px #fff3}.brand-mark-img{object-fit:cover;border-radius:11px;flex-shrink:0;width:38px;height:38px;box-shadow:0 2px 14px #00000059}html[data-theme=light] .brand-mark-img{border:1px solid var(--border);box-shadow:0 2px 12px #0000001a}.brand-text{flex-direction:column;gap:0;line-height:1.15;display:flex}.brand{letter-spacing:-.035em;background:linear-gradient(135deg,#fff 0%,#e9d5ff 45%,#c4b5fd 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.12rem;font-weight:700}.brand-sub{letter-spacing:.02em;color:var(--text);opacity:.75;text-transform:uppercase;font-size:.68rem;font-weight:500}.app-nav{scrollbar-width:none;-ms-overflow-style:none;background:#00000038;border:1px solid #ffffff0d;border-radius:999px;flex-wrap:nowrap;flex:1;align-items:center;gap:.2rem;min-width:0;margin:0 -.15rem;padding:.2rem;display:flex;overflow:auto hidden}.app-nav::-webkit-scrollbar{display:none}.app-nav>a,.app-nav>.nav-settings a{align-items:center;gap:.45rem;display:inline-flex}.app-nav svg{opacity:.78;flex-shrink:0;transition:opacity .18s}.app-nav a.active svg,.app-nav a:hover svg{opacity:1}.app-nav a span{letter-spacing:-.015em}.app-nav a{color:var(--text-faint);white-space:nowrap;transition:background .18s var(--ease-out), color .18s ease, box-shadow .18s ease, transform .15s ease;border-radius:999px;padding:.42rem .82rem;font-size:.8125rem;font-weight:600;text-decoration:none}.app-nav a:hover{color:var(--text-h);background:#ffffff0f}.app-nav a.active{color:var(--text-h);background:linear-gradient(#a78bfa38 0%,#7c3aed1f 100%);box-shadow:inset 0 0 0 1px #a78bfa47,0 1px 8px #6d28d926}.theme-toggle{border-radius:10px;min-width:0;padding:.45rem .55rem;line-height:0}.theme-toggle svg{display:block}.header-user{align-items:center;gap:.75rem;display:flex}.user-avatar{letter-spacing:.04em;color:#eef;background:linear-gradient(145deg,#818cf8 0%,#6366f1 40%,#4f46e5 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;font-size:.68rem;font-weight:800;display:inline-flex;box-shadow:0 2px 12px #6366f159,inset 0 1px #ffffff38}.user-pill{text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--border);max-width:200px;color:var(--text-h);background:#1a1a21d9;border-radius:999px;padding:.38rem .85rem;font-size:.78rem;font-weight:500;overflow:hidden}.btn.sign-out{border:1px solid var(--border);background:#ffffff08;border-radius:999px;padding:.42rem .85rem;font-size:.8rem}.btn.sign-out:hover{border-color:var(--border-strong);background:#ffffff0f}.app-main{flex:1;width:100%;max-width:1420px;margin:0 auto;padding:1.85rem 1.5rem 3.5rem}.page-stack{animation:page-rise .42s var(--ease-out) both;flex-direction:column;gap:1.65rem;display:flex}@keyframes page-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.link-list{margin:.5rem 0 0;padding-left:1.25rem}.link-list li{margin-bottom:.35rem}.table-wrap{border-radius:var(--radius-sm);background:#00000026;border:1px solid #ffffff0f;overflow-x:auto;box-shadow:inset 0 1px #ffffff08}.table-wrap .data-table{margin:0}.table-wrap .data-table tbody tr:last-child td{border-bottom:none}.data-table{border-collapse:collapse;width:100%;font-size:.9rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #ffffff0d;padding:.62rem .75rem}.data-table thead th{z-index:1;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);background:#16161cf2;font-size:.7rem;font-weight:600;position:sticky;top:0}.data-table tbody tr:nth-child(2n) td{background:#ffffff04}.data-table tbody tr:hover td{background:#a78bfa12}.pill{text-transform:capitalize;background:var(--code-bg);border-radius:999px;padding:.15rem .5rem;font-size:.8rem;display:inline-block}.status-active{color:#4ade80}.status-pending,.status-failed{color:var(--danger)}.hero-card,.hero-dash{box-shadow:var(--shadow), 0 0 40px -12px #6d28d940;background:linear-gradient(145deg,#6d28d91f 0%,#16161e8c 38%,#0e0e12eb 100%);border-color:#a78bfa33}html[data-theme=light] .hero-card,html[data-theme=light] .hero-dash{box-shadow:var(--shadow-sm);background:linear-gradient(145deg,#7c3aed14 0%,#fffffffa 55%,#fafafc 100%);border-color:#6d28d92e}.scan-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.section-head h2{margin:0}.select-input{font:inherit;border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--input-bg);color:var(--text-h);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-width:12rem;padding:.55rem .8rem;transition:border-color .15s,box-shadow .15s}.select-input option,.select-input optgroup{color:#18181b;background-color:#fff}html[data-theme=light] .select-input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=light] .select-input option,html[data-theme=light] .select-input optgroup{color:#18181b;background-color:#fafafa}.select-input:hover{border-color:var(--border-strong)}.select-input:focus{box-shadow:0 0 0 3px var(--accent-dim);border-color:#a78bfa73;outline:none}.select-input.sm{min-width:0;padding:.35rem .5rem;font-size:.85rem}.filters-bar{scrollbar-width:thin;-ms-overflow-style:auto;flex-wrap:nowrap;align-items:flex-end;gap:.65rem .75rem;margin-top:1rem;padding-bottom:.25rem;display:flex;overflow:auto hidden}.filters-bar::-webkit-scrollbar{height:6px}.filters-bar::-webkit-scrollbar-thumb{background:#71717a73;border-radius:99px}.filters-bar label{color:var(--text-h);flex-direction:column;flex:none;gap:.35rem;font-size:.8rem;display:flex}.filters-bar label.grow{flex:12rem;min-width:11rem;max-width:22rem}.filters-bar .select-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23a1a1aa' stroke-width='1.75' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right .65rem center;background-repeat:no-repeat;background-size:11px 7px;min-width:7.75rem;max-width:11rem;padding-right:2.25rem}html[data-theme=light] .filters-bar .select-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2352525b' stroke-width='1.75' stroke-linecap='round'/%3E%3C/svg%3E")}.filters-bar .select-input:hover{background-color:#ffffff0a}html[data-theme=light] .filters-bar .select-input:hover{background-color:#00000008}.filters-bar input[type=search]{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--input-bg);color:var(--text-h);font:inherit;padding:.55rem .85rem;transition:border-color .15s,box-shadow .15s}.filters-bar input[type=search]:hover{border-color:var(--border-strong)}.filters-bar input[type=search]:focus{box-shadow:0 0 0 3px var(--accent-dim);border-color:#a78bfa73;outline:none}.poll-hint{margin-top:1rem}.status-scan-queued{color:#93c5fd;background:#60a5fa26}.status-scan-running{color:#fdba74;background:#f9731629}.status-scan-completed{color:#86efac;background:#4ade801f}.status-scan-failed{color:#fca5a5;background:#f871711f}.findings-count{margin-bottom:.75rem}.findings-table-wrap{border-radius:var(--radius-sm);background:#00000026;border:1px solid #ffffff0f;max-height:min(70vh,720px);overflow:auto;box-shadow:inset 0 1px #ffffff08}html[data-theme=light] .findings-table-wrap{border:1px solid var(--border);background:#fafafa;box-shadow:inset 0 1px 2px #0000000a}.findings-table .finding-title{max-width:280px}.truncate-cell{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.res-type{color:var(--accent);margin-right:.25rem}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;display:grid}.stats-grid.compact{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:.25rem;padding:1rem 1.1rem;display:flex;box-shadow:0 4px 20px #0003}.stat-card.accent{background:linear-gradient(160deg, #a855f724, var(--surface));border-color:#c084fc73}.stat-card.success{border-color:#4ade8059}.stat-card.warn{background:linear-gradient(160deg, #fb923c14, var(--surface));border-color:#fb923c59}.stat-card.subtle{opacity:.95}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text);opacity:.85;font-size:.72rem}.stat-value{color:var(--text-h);font-size:1.65rem;font-weight:700;line-height:1.1}.stat-hint{color:var(--text);opacity:.75;font-size:.7rem}.stat-card.link-card{color:inherit;text-decoration:none;transition:transform .12s,border-color .12s}.stat-card.link-card:hover{border-color:#c084fc8c;transform:translateY(-2px)}.sev-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:6px;padding:.2rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.sev-critical{background:color-mix(in srgb, var(--chart-critical) 24%, transparent);color:#fecaca}.sev-high{background:color-mix(in srgb, var(--chart-high) 22%, transparent);color:#fdba74}.sev-medium{background:color-mix(in srgb, var(--chart-medium) 22%, transparent);color:#93c5fd}.sev-low{background:color-mix(in srgb, var(--chart-low) 18%, transparent);color:#86efac}.sev-info{background:color-mix(in srgb, var(--chart-info) 24%, transparent);color:#cbd5e1}.ticket-card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:1rem;display:grid}.ticket-work-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:.75rem;padding:1.25rem;transition:border-color .15s;display:flex}.ticket-work-card:hover{border-color:#c084fc59}.ticket-work-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.ticket-status-pill{text-transform:capitalize;background:var(--code-bg);border-radius:999px;padding:.2rem .55rem;font-size:.75rem}.ticket-status-pill.ts-open{color:#93c5fd}.ticket-status-pill.ts-in_progress{color:#fcd34d}.ticket-status-pill.ts-resolved,.ticket-status-pill.ts-closed{color:#86efac}.ticket-work-title{color:var(--text-h);margin:0;font-size:1.05rem;line-height:1.35}.ticket-meta{grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin:0;font-size:.8rem;display:grid}.ticket-meta dt{color:var(--text);opacity:.75;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.ticket-meta dd{color:var(--text-h);margin:0}.ticket-meta .span-2{grid-column:1/-1}.ticket-labels{flex-wrap:wrap;gap:.35rem;display:flex}.ticket-labels .lbl{background:var(--code-bg);color:var(--text);border-radius:4px;padding:.15rem .45rem;font-size:.7rem}.occ-badge{color:#e9d5ff;background:#c084fc33;border-radius:6px;padding:.1rem .45rem;font-size:.85rem;font-weight:600;display:inline-block}.ticket-desc{color:var(--text);margin:0;font-size:.85rem;line-height:1.45}.ticket-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:.75rem;margin-top:.25rem;padding-top:.75rem;display:flex}.inline-label{color:var(--text);flex-direction:column;gap:.25rem;font-size:.75rem;display:flex}.inline-label.grow{flex:1;min-width:160px}.dash-columns{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;display:grid}.dash-list{margin:0 0 1rem;padding:0;list-style:none}.dash-list li{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.45rem 0;display:flex}.dash-links{margin:0;padding:0;list-style:none}.dash-links li{margin-bottom:.5rem}.dash-cta{font-size:.9rem;font-weight:500}.home-dashboard .hero-dash h1{letter-spacing:-.03em;margin-bottom:.35rem;font-size:1.65rem;font-weight:700}.empty-tickets{text-align:center;padding:2rem}.metric-card{border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);transition:transform .2s var(--ease-out), border-color .2s ease, box-shadow .2s ease;background:linear-gradient(165deg,#1c1c24a6 0%,#121218e6 100%);flex-direction:column;gap:.25rem;padding:1.05rem 1.2rem;display:flex;position:relative;overflow:hidden}.metric-card:after{content:"";opacity:.45;pointer-events:none;background:linear-gradient(90deg,#0000,#a78bfa73,#0000);height:2px;position:absolute;top:0;left:0;right:0}.metric-card.danger:after{opacity:.7;background:linear-gradient(90deg,#0000,#f87171a6,#0000)}.metric-card.warn:after{opacity:.7;background:linear-gradient(90deg,#0000,#fbbf248c,#0000)}.metric-card.success:after{opacity:.7;background:linear-gradient(90deg,#0000,#4ade808c,#0000)}.metric-card:hover{border-color:#a78bfa26;box-shadow:0 8px 28px #00000040}.metric-card.danger .metric-card-value{color:#f87171}.metric-card.warn .metric-card-value{color:#fbbf24}.metric-card.success .metric-card-value{color:#86efac}.metric-card-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text);opacity:.85;font-size:.72rem}.metric-card-value{font-variant-numeric:tabular-nums;color:var(--text-h);letter-spacing:-.02em;font-size:1.65rem;font-weight:700;line-height:1.1}.metric-card-sub{color:var(--text);opacity:.8;font-size:.75rem}html[data-theme=light] .metric-card{border:1px solid var(--border);background:linear-gradient(165deg,#fff 0%,#fafafa 100%);box-shadow:0 1px 3px #0000000f}html[data-theme=light] .metric-card:hover{border-color:#6d28d933;box-shadow:0 8px 28px #00000014}html[data-theme=light] .metric-card-label{color:#52525b;opacity:1}html[data-theme=light] .metric-card-value{color:#18181b}html[data-theme=light] .metric-card-sub{color:#71717a;opacity:1}html[data-theme=light] .metric-card.danger .metric-card-value{color:#dc2626}html[data-theme=light] .metric-card.warn .metric-card-value{color:#d97706}html[data-theme=light] .metric-card.success .metric-card-value{color:#15803d}.dashboard-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,158px),1fr));gap:1rem;display:grid}@media (width>=1200px){.dashboard-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1400px){.dashboard-kpi-grid{grid-template-columns:repeat(6,1fr)}.dashboard-kpi-grid--max-cols-3{grid-template-columns:repeat(3,1fr)}}.dashboard-kpi-link{color:inherit;flex-direction:column;gap:.25rem;text-decoration:none;display:flex}.dashboard-kpi-link .metric-card-sub{color:var(--accent);opacity:1;font-weight:500}.dashboard-data-hint{background:linear-gradient(145deg,#3b82f614 0%,#121218e6 100%);border-color:#3b82f640}html[data-theme=light] .dashboard-data-hint{background:linear-gradient(145deg,#3b82f60f 0%,#fffffffa 100%);border-color:#3b82f659}.dashboard-hint-title{margin:0 0 .35rem;font-size:1.05rem}.dashboard-hint-steps{color:var(--text);margin:0;padding-left:1.25rem;font-size:.9rem;line-height:1.55}.dashboard-hint-steps li{margin-bottom:.4rem}.chart-empty{text-align:center;border-radius:var(--radius-xs);border:1px dashed var(--border);background:#0003;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;min-height:200px;padding:1.5rem 1rem;display:flex}html[data-theme=light] .chart-empty{border-color:var(--border-strong);background:#f4f4f5}html[data-theme=light] .chart-empty .muted{color:#52525b}.dashboard-charts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;display:grid}@media (width<=900px){.dashboard-charts-grid{grid-template-columns:1fr}}.chart-card{transition:border-color .2s,box-shadow .2s;overflow:hidden}.chart-card:hover{box-shadow:var(--shadow), 0 0 0 1px #a78bfa0f;border-color:#ffffff1a}html[data-theme=light] .chart-card:hover{box-shadow:var(--shadow-sm), 0 0 0 1px #6d28d914;border-color:#6d28d926}.chart-card-title{color:var(--text-h);letter-spacing:-.02em;border-bottom:1px solid #ffffff0f;margin-bottom:.85rem;padding-bottom:.35rem;font-size:1.02rem;font-weight:650}html[data-theme=light] .chart-card-title{border-bottom-color:#00000014}.chart-card-body{width:100%;min-height:220px}.chart-card-body.tall{min-height:280px}.chart-card-footer{letter-spacing:.01em;margin:.75rem 0 0;font-size:.78rem}.panel-title{letter-spacing:-.025em;color:var(--text-h);border-bottom:1px solid #ffffff0f;margin:0 0 1rem;padding-bottom:.65rem;font-size:1.05rem;font-weight:650}html[data-theme=light] .panel-title{border-bottom-color:#00000014}.scan-type-card{border-radius:var(--radius-sm);position:relative;overflow:hidden}.scan-type-card--runtime:before{content:"";background:linear-gradient(#38bdf8,#2563eb);border-radius:3px 0 0 3px;width:3px;position:absolute;top:0;bottom:0;left:0}.scan-type-card--iac:before{content:"";background:linear-gradient(#a78bfa,#7c3aed);border-radius:3px 0 0 3px;width:3px;position:absolute;top:0;bottom:0;left:0}.scan-type-card h2{padding-left:.35rem}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:var(--border)}.drawer-root{z-index:200;pointer-events:none;position:fixed;inset:0}.drawer-backdrop{cursor:pointer;pointer-events:auto;background:#0000008c;border:none;position:absolute;inset:0}.drawer-panel{border-left:1px solid var(--border-strong);pointer-events:auto;width:min(440px,100vw);animation:drawer-in .28s var(--ease-out);-webkit-backdrop-filter:blur(16px);background:linear-gradient(#16161cfa 0%,#0e0e12fc 100%);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-12px 0 48px #00000080}@keyframes drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-head{border-bottom:1px solid var(--border);background:linear-gradient(#2727318c 0%,#1212174d 100%);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.drawer-title{color:var(--text-h);margin:0;font-size:1rem;font-weight:600;line-height:1.35}.drawer-close{padding:.15rem .45rem;font-size:1.35rem;line-height:1}.drawer-body{flex:1;padding:1.25rem;overflow-y:auto}.drawer-section{margin-bottom:1.25rem}.drawer-section h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text);margin:0 0 .5rem;font-size:.8rem}.meta-grid{grid-template-columns:auto 1fr;gap:.35rem .75rem;font-size:.85rem;display:grid}.meta-grid dt{color:var(--text);opacity:.75}.meta-grid dd{color:var(--text-h);word-break:break-all;margin:0}.risk-gauge{border:6px solid var(--border);width:88px;height:88px;color:var(--text-h);border-radius:50%;justify-content:center;align-items:center;font-size:1.35rem;font-weight:700;display:flex}.risk-gauge.high{border-color:#ef4444a6}.risk-gauge.mid{border-color:#fbbf248c}.risk-gauge.low{border-color:#22c55e80}.insight-row{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.md-prose{color:var(--text);font-size:.9rem;line-height:1.5}.md-prose p{margin:0 0 .65rem}.md-prose code{font-size:.85em}.raw-json{font-family:var(--mono);background:var(--code-bg);white-space:pre-wrap;word-break:break-all;border-radius:8px;max-height:240px;padding:.75rem;font-size:.72rem;overflow:auto}.status-pill{text-transform:capitalize}.pill-status-active,.pill-status-completed{color:#86efac;background:#4ade8026}.pill-status-running,.pill-status-queued{color:#fcd34d;background:#fbbf2426}.pill-status-failed{color:#fca5a5;background:#f8717126}.pill-status-open{color:#fcd34d;background:#fbbf241f}.pill-status-suppressed{color:#86efac;background:#4ade801f}.pill-status-resolved{color:#93c5fd;background:#3b82f61f}.pill-status-neutral{background:var(--code-bg);color:var(--text)}.engine-badge{text-transform:capitalize;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:600;display:inline-block}.engine-cloud{color:#93c5fd;background:#3b82f633}.engine-iac{color:#d4d4d8;background:#71717a59}.engine-neutral{background:var(--code-bg);color:var(--text)}.role-badge-admin{background:color-mix(in srgb, var(--accent-strong) 26%, transparent);color:#ddd6fe}.role-badge-member{background:color-mix(in srgb, var(--chart-high) 20%, transparent);color:#fdba74}.role-badge-viewer{background:color-mix(in srgb, var(--chart-medium) 20%, transparent);color:#93c5fd}.segmented{flex-wrap:wrap;gap:.35rem;display:flex}.segmented button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:.45rem .85rem;font-size:.85rem}.segmented button[data-active=true]{border-color:var(--accent-strong);box-shadow:0 0 0 1px #a78bfa59}.avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.75rem;font-weight:700;display:inline-flex}.avatar-blue{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.avatar-amber{background:linear-gradient(135deg,#f59e0b,#b45309)}.auth-split{grid-template-columns:1fr min(480px,100%);min-height:100svh;display:grid}@media (width<=900px){.auth-split{grid-template-columns:1fr}}.auth-split-brand{border-right:1px solid var(--border);background:linear-gradient(155deg,#6d28d947 0%,#09090bf7 42%,#0f172ad9 100%);flex-direction:column;justify-content:center;padding:2.5rem 2.75rem;display:flex;position:relative}.auth-split-brand:before{content:"";pointer-events:none;background:radial-gradient(70% 50% at 20% 20%,#a78bfa26,#0000 55%);position:absolute;inset:0}@media (width<=900px){.auth-split-brand{display:none}}.auth-split-brand-inner{z-index:1;max-width:420px;position:relative}.auth-split-brand-inner h1{letter-spacing:-.035em;font-size:2.1rem;font-weight:700;line-height:1.15}.auth-split-brand h1{margin-bottom:.5rem;font-size:2rem}.auth-split-form-wrap{background:var(--bg);justify-content:center;align-items:center;padding:1.5rem;display:flex;position:relative}.auth-theme-corner{z-index:2;position:absolute;top:1rem;right:1rem}.auth-brand-lockup{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.auth-brand-lockup img{object-fit:cover;border-radius:14px;flex-shrink:0;width:52px;height:52px;box-shadow:0 4px 20px #00000040}html[data-theme=light] .auth-brand-lockup img{border:1px solid var(--border);box-shadow:0 2px 12px #00000014}.auth-split-form-wrap .auth-card{width:100%;max-width:420px}.auth-sso-row{grid-template-columns:1fr 1fr;gap:.65rem;margin-top:.75rem;display:grid}@media (width<=480px){.auth-sso-row{grid-template-columns:1fr}}.btn.sso{background:var(--surface-2);border:1px solid var(--border);color:var(--text-h);font-size:.88rem}.btn.sso:disabled{opacity:.45;cursor:not-allowed}.dash-page-title{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);margin:0 0 .5rem;font-size:.7rem;font-weight:600}.dash-page-title:after{content:"";background:linear-gradient(90deg, var(--accent-strong), transparent);opacity:.65;border-radius:99px;width:2rem;height:2px;margin-top:.5rem;display:block}.nav-settings{flex-shrink:0;align-items:center;gap:.35rem;margin-left:.35rem;display:flex}.nav-settings a{width:2.25rem;height:2.25rem;color:var(--text-faint);background:#ffffff0a;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s,border-color .15s;display:inline-flex}.nav-settings a:hover{color:var(--text-h);border-color:var(--border);background:#ffffff14;text-decoration:none}.nav-settings a.active{color:var(--accent);box-shadow:none;background:#a78bfa1f;border-color:#a78bfa40}.donut-legend{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.donut-legend button{font:inherit;cursor:pointer;border:1px solid var(--border);color:var(--text-h);background:#1a1a21cc;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:500;transition:transform .12s,border-color .15s,background .15s}.donut-legend button:hover{border-color:#a78bfa59;transform:translateY(-1px)}.donut-legend button[data-active=true]{border-color:var(--accent-strong);background:#a78bfa1f}html[data-theme=light] .donut-legend button{color:var(--text-h);border:1px solid var(--border);background:#f4f4f5}html[data-theme=light] .donut-legend button:hover{background:#eeecf9;border-color:#6d28d959}html[data-theme=light] .donut-legend button[data-active=true]{border-color:var(--accent-strong);background:#7c3aed1f}.chart-swatch-legend{color:var(--text-h);flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem 1rem;margin:.65rem 0 0;padding:0;font-size:.75rem;font-weight:500;list-style:none;display:flex}.chart-swatch-legend li{align-items:center;gap:.35rem;display:inline-flex}.chart-swatch-dot{border-radius:999px;flex-shrink:0;width:.55rem;height:.55rem}.chart-legend-hint{text-align:center;margin:.5rem 0 0}.keyword-pills{flex-wrap:wrap;gap:.4rem;display:flex}.keyword-pills button{font:inherit;cursor:pointer;background:var(--surface-2);color:var(--text-h);border:none;border:1px solid var(--border);border-radius:999px;padding:.25rem .65rem;font-size:.78rem}.cloud-page-grid{gap:1.25rem;display:grid}.invite-nested{border-radius:var(--radius-sm);border:1px solid var(--border);background:#0003;margin-top:1.5rem;padding:1.25rem}html[data-theme=light] .invite-nested{border-color:var(--border-strong);background:#f4f4f5}.table-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.table-actions button.linkish,.table-actions a{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:none}.table-actions button.linkish:hover,.table-actions a:hover{text-decoration:underline}.data-table tbody tr.row-clickable{cursor:pointer}.data-table tbody tr.row-clickable:hover td{background:#a78bfa14}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable-th:hover{color:var(--accent)}*{scrollbar-width:thin;scrollbar-color:#71717a73 transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#71717a59 padding-box padding-box;border:2px solid #0000;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#a1a1aa73 padding-box padding-box;border:2px solid #0000}.auth-split-form-wrap .auth-card{box-shadow:var(--shadow-lg)}.page-header{border-radius:var(--radius);box-shadow:var(--shadow), 0 32px 64px -48px #5b21b659;background:linear-gradient(148deg,#8162ff1c 0%,#1818208c 45%,#0e0e12eb 100%);border:1px solid #a78bfa2e;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.25rem;margin:0 0 .35rem;padding:1.35rem 1.5rem;display:flex;position:relative;overflow:hidden}html[data-theme=light] .page-header{box-shadow:var(--shadow);background:linear-gradient(148deg,#7c3aed14 0%,#fafafaf2 50%,#fffffffa 100%);border:1px solid #5b21b626}.bulk-insights-disclosure{border-radius:var(--radius-sm);border:1px solid var(--border);background:#0000001f;margin-top:.75rem;overflow:hidden}html[data-theme=light] .bulk-insights-disclosure{background:#fff9}.bulk-insights-disclosure>summary{cursor:pointer;color:var(--text-h);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem 1rem;font-size:.9rem;font-weight:600;list-style:none;display:flex}.bulk-insights-disclosure>summary::-webkit-details-marker{display:none}.bulk-insights-disclosure>summary:after{content:"";border-right:2px solid var(--text-faint);border-bottom:2px solid var(--text-faint);width:.5rem;height:.5rem;transition:transform .2s var(--ease-out);flex-shrink:0;margin-left:auto;transform:rotate(45deg)}.bulk-insights-disclosure[open]>summary:after{transform:rotate(-135deg)}.bulk-insights-disclosure .bulk-insights-body{border-top:1px solid var(--border);padding:0 1rem 1rem}.bulk-insights-body .bulk-field-label{color:var(--text-h);flex-direction:column;gap:.35rem;min-width:0;font-size:.875rem;display:flex}.bulk-insights-body .bulk-field-label.scan-id-field{flex:220px;min-width:min(100%,220px)}.bulk-insights-body .bulk-field-label.org-limit-field{flex:0 120px;min-width:100px}.bulk-insights-body .bulk-field-label .select-input{width:100%;min-width:0}.page-header:before{content:"";opacity:.95;background:linear-gradient(#c4b5fd,#7c3aed,#06b6d4);border-radius:4px 0 0 4px;width:4px;position:absolute;inset:0 auto 0 0}.page-header .page-header__main{z-index:1;position:relative}.page-header__eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--text-faint);margin-bottom:.45rem;font-size:.68rem;font-weight:700;display:inline-block}.page-header__title-row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.page-header__title{letter-spacing:-.038em;color:var(--text-h);margin:0;font-size:clamp(1.45rem,2.8vw,2rem);font-weight:700;line-height:1.14}.page-header__desc{max-width:52ch;margin:.65rem 0 0;font-size:.95rem;line-height:1.55}.page-header__desc strong{color:var(--text-h);font-weight:600}.page-header__actions{z-index:1;flex-wrap:wrap;align-items:center;gap:.5rem;display:flex;position:relative}.page-header__badge{align-items:center;gap:.35rem;display:inline-flex}.pulse-badge{text-transform:uppercase;letter-spacing:.14em;color:#a7f3d0;background:#10b98124;border:1px solid #34d39959;border-radius:999px;align-items:center;gap:.35rem;padding:.32rem .65rem;font-size:.65rem;font-weight:700;display:inline-flex;box-shadow:0 0 20px -4px #10b98173}html[data-theme=light] .pulse-badge{color:#047857;box-shadow:none;background:#10b9811f;border:1px solid #10b98173}.pulse-badge:before{content:"";background:#34d399;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 0 3px #34d39940}html[data-theme=light] .pulse-badge:before{background:#059669;box-shadow:0 0 0 3px #10b98133}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(.88)}}.home-footer-links{white-space:nowrap;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:inline-flex}.data-table .col-scan-id{word-break:break-all;white-space:normal;max-width:14rem;font-size:.8rem;line-height:1.35}@media (width<=520px){.home-footer-links{white-space:normal}}.data-table thead th{letter-spacing:.08em;font-size:.66rem}.data-table tbody tr{transition:background .15s}@media (width<=640px){.user-pill{display:none}}html[data-theme=light] .sev-critical{color:#b91c1c;background:#dc26261f}html[data-theme=light] .sev-high{color:#c2410c;background:#ea580c1f}html[data-theme=light] .sev-medium{color:#1d4ed8;background:#2563eb1f}html[data-theme=light] .sev-low{color:#15803d;background:#16a34a1f}html[data-theme=light] .sev-info{color:#334155;background:#64748b1f}html[data-theme=light] .status-scan-queued{color:#1d4ed8;background:#2563eb26}html[data-theme=light] .status-scan-running{color:#c2410c;background:#ea580c26}html[data-theme=light] .status-scan-completed{color:#15803d;background:#16a34a26}html[data-theme=light] .status-scan-failed{color:#b91c1c;background:#dc262626}html[data-theme=light] .pill-status-active,html[data-theme=light] .pill-status-completed{color:#15803d;background:#16a34a26}html[data-theme=light] .pill-status-running,html[data-theme=light] .pill-status-queued,html[data-theme=light] .pill-status-open{color:#b45309;background:#d9770626}html[data-theme=light] .pill-status-failed{color:#b91c1c;background:#dc262626}html[data-theme=light] .pill-status-suppressed{color:#15803d;background:#16a34a26}html[data-theme=light] .pill-status-resolved,html[data-theme=light] .engine-cloud{color:#1d4ed8;background:#2563eb26}html[data-theme=light] .engine-iac{color:#3f3f46;background:#52525b26}html[data-theme=light] .ticket-status-pill.ts-open,html[data-theme=light] .ticket-status-pill.ts-in_progress{color:#b45309;background:#d9770626}html[data-theme=light] .ticket-status-pill.ts-resolved,html[data-theme=light] .ticket-status-pill.ts-closed{color:#15803d;background:#16a34a26}html[data-theme=light] .drawer-panel{background:#fffffffa;border-left-color:#00000014;box-shadow:-12px 0 48px #00000026}html[data-theme=light] .drawer-head{background:#f4f4f5;border-bottom-color:#00000014}
