:root{
  --bg:#050a12;--bg2:#07111f;--panel:#0b1625;--panel2:#0e1c2e;--line:#1d334a;
  --text:#ecf6ff;--muted:#8fa6ba;--cyan:#29c6ee;--green:#36e69a;--blue:#3e7cff;
  --critical:#ff496b;--high:#ff714c;--medium:#ffc14a;--low:#58a8ff;--info:#8fa6ba;
  --shadow:0 18px 60px rgba(0,0,0,.28);--radius:18px;
}
*{box-sizing:border-box}
html{color-scheme:dark;scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:
radial-gradient(circle at 15% 0%,rgba(41,198,238,.11),transparent 26rem),
radial-gradient(circle at 85% 12%,rgba(54,230,154,.08),transparent 24rem),
linear-gradient(180deg,var(--bg2),var(--bg));color:var(--text);min-height:100vh}
button,input,textarea{font:inherit}.bg-grid{position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:
linear-gradient(rgba(92,153,201,.08) 1px,transparent 1px),
linear-gradient(90deg,rgba(92,153,201,.08) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 75%)}
.topbar{position:sticky;top:0;z-index:20;height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1420px)/2));background:rgba(5,10,18,.76);backdrop-filter:blur(14px);border-bottom:1px solid rgba(92,153,201,.14)}
.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:800;font-size:20px;letter-spacing:-.4px}.brand>span:last-child span{color:var(--green)}.brand-mark{width:34px;height:34px;border:1px solid #23769c;border-radius:10px;display:grid;place-items:center;color:var(--cyan);background:linear-gradient(145deg,#10253a,#07101c);box-shadow:inset 0 0 20px rgba(41,198,238,.12)}
.top-actions{display:flex;align-items:center;gap:10px}.privacy-pill{font-size:12px;color:#b8cddd;border:1px solid #1c3a4d;background:#081521;border-radius:999px;padding:8px 11px;display:flex;align-items:center;gap:7px}.dot{width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 12px var(--green)}
.shell{max-width:1420px;margin:0 auto;padding:46px 24px 30px}.hero{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.eyebrow,.section-kicker{margin:0 0 8px;color:var(--cyan);letter-spacing:.14em;font-weight:800;font-size:11px}.hero h1{font-size:clamp(38px,5vw,72px);line-height:.98;letter-spacing:-.055em;margin:0;max-width:850px}.hero h1 span{color:var(--green)}.hero-copy{color:#9fb4c6;max-width:790px;line-height:1.7;font-size:16px;margin:18px 0 0}.hero-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:350px}.hero-badges span{padding:7px 10px;border:1px solid #1d4153;border-radius:999px;background:#081623;color:#b9d6e8;font-size:12px}
.card{background:linear-gradient(180deg,rgba(15,30,48,.94),rgba(8,18,30,.96));border:1px solid rgba(76,128,164,.26);border-radius:var(--radius);box-shadow:var(--shadow)}
.workspace{display:grid;grid-template-columns:390px 1fr;gap:20px;align-items:start}.input-panel{padding:22px;position:sticky;top:90px}.card-title-row{display:flex;align-items:start;justify-content:space-between;gap:12px}.card h2{font-size:20px;margin:0;letter-spacing:-.02em}.text-btn,.ghost-btn,.chip-btn{background:transparent;color:#b9cad8;border:1px solid #244058;border-radius:9px;padding:8px 10px;cursor:pointer}.text-btn{border:0;color:#7fa3bc}.ghost-btn:hover,.chip-btn:hover,.text-btn:hover{color:white;border-color:#37627f;background:#10253a}.ghost-btn:disabled{opacity:.4;cursor:not-allowed}
.drop-zone{margin-top:18px;min-height:170px;border:1px dashed #2c627d;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;padding:20px;cursor:pointer;background:rgba(7,19,31,.72);transition:.18s}.drop-zone:hover,.drop-zone.drag{border-color:var(--cyan);background:rgba(20,72,91,.2);transform:translateY(-1px)}.drop-zone strong{font-size:14px}.drop-zone span{color:#8faec1;font-size:13px}.drop-zone small{color:#617d92;font-size:11px;margin-top:5px}.drop-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--cyan);background:#0c2638;border:1px solid #1f5a77;font-size:20px;margin-bottom:6px}
.divider{display:flex;align-items:center;gap:10px;color:#5f788c;font-size:11px;margin:18px 0}.divider:before,.divider:after{content:"";height:1px;background:#1a3042;flex:1}.field-label{display:block;color:#8da6b9;font-size:11px;font-weight:700;margin:10px 0 6px}.text-input,.paste-area{width:100%;border:1px solid #203a50;background:#07121f;color:#dfedf6;border-radius:10px;padding:10px 11px;outline:none}.text-input:focus,.paste-area:focus{border-color:#287a9b;box-shadow:0 0 0 3px rgba(41,198,238,.08)}.paste-area{min-height:104px;resize:vertical;font-family:"SFMono-Regular",Consolas,monospace;font-size:12px;line-height:1.5}.secondary-btn,.primary-btn{border:0;border-radius:10px;padding:11px 14px;cursor:pointer;font-weight:800}.secondary-btn{width:100%;margin-top:9px;color:#c9e8f4;background:#10293a;border:1px solid #25556f}.secondary-btn:hover{background:#15364b}.primary-btn{width:100%;display:flex;justify-content:center;gap:12px;background:linear-gradient(90deg,#21b7df,#39dd95);color:#031016;margin-top:18px}.primary-btn:hover{filter:brightness(1.08)}.primary-btn:disabled{opacity:.4;cursor:not-allowed;filter:none}.sample-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px;font-size:11px;color:#738da0}.chip-btn{padding:5px 7px;font-size:10px}
.file-section{border-top:1px solid #183044;margin-top:18px;padding-top:16px}.mini-heading{display:flex;justify-content:space-between;color:#7891a5;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.mini-heading span:last-child{color:#c8d8e4}.file-list{max-height:180px;overflow:auto;margin-top:8px}.empty-state{color:#577186;font-size:12px;margin:10px 0}.file-item{display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center;padding:8px;border-radius:9px;background:#091522;margin-bottom:6px;border:1px solid #152d40}.file-icon{width:30px;height:30px;border-radius:7px;background:#102c40;display:grid;place-items:center;color:#48c9e9;font-weight:900;font-size:11px}.file-meta{min-width:0}.file-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.file-meta small{color:#617b8d}.remove-file{border:0;background:transparent;color:#688398;cursor:pointer;font-size:16px}.remove-file:hover{color:#ff7790}
.results-panel{min-width:0;display:grid;gap:20px}.score-card{padding:22px;display:grid;grid-template-columns:150px minmax(230px,1fr) minmax(340px,.85fr);gap:24px;align-items:center}.score-gauge-wrap{display:grid;place-items:center}.score-gauge{--score:100;width:124px;height:124px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) calc(var(--score)*1%),#17293a 0);position:relative;transform:rotate(-90deg)}.score-gauge:after{content:"";position:absolute;inset:10px;border-radius:50%;background:#0b1927}.score-center{position:relative;z-index:2;transform:rotate(90deg);display:flex;align-items:baseline}.score-center strong{font-size:36px;letter-spacing:-.04em}.score-center span{font-size:11px;color:#728ca1;margin-left:3px}.score-copy p:last-child{color:#829bad;line-height:1.5;font-size:13px;max-width:500px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stat-grid>div{padding:12px 8px;border-radius:10px;background:#071522;border:1px solid #193247;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:7px}.stat-grid strong{font-size:18px}.stat-grid small{grid-column:2;color:#758fa3;font-size:10px}.sev-dot{width:7px;height:7px;border-radius:50%}.critical{background:var(--critical)}.high{background:var(--high)}.medium{background:var(--medium)}.low{background:var(--low)}.info{background:var(--info)}
.pipeline-strip{padding:14px 18px;display:flex;align-items:center;overflow:auto}.stage{display:flex;align-items:center;gap:9px;min-width:max-content;opacity:.55}.stage.active{opacity:1}.stage>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#0a2638;border:1px solid #27617d;color:#57d7f5;font-weight:900;font-size:11px}.stage.done>span{background:#0d332b;border-color:#238b6b;color:#49e5a5}.stage strong,.stage small{display:block}.stage strong{font-size:11px}.stage small{font-size:9px;color:#718da1;margin-top:1px}.connector{height:1px;background:#254055;min-width:24px;flex:1;margin:0 9px}
.findings-card{padding:22px;min-height:450px}.findings-header{align-items:center}.report-actions{display:flex;gap:8px}.filters{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 12px}.filter{border:1px solid #1e394f;background:#081522;color:#7691a4;border-radius:999px;padding:6px 10px;font-size:11px;cursor:pointer}.filter:hover,.filter.active{color:#e8f5fe;border-color:#347292;background:#10283a}.filter span{display:inline-grid;place-items:center;min-width:17px;height:17px;border-radius:999px;background:#193a50;margin-left:4px}
.results-empty{min-height:310px;display:grid;place-items:center;align-content:center;text-align:center;color:#7891a5}.results-empty strong{color:#b8cbd9}.results-empty p{font-size:12px;max-width:420px;line-height:1.6}.empty-shield{font-size:56px;color:#214961;margin-bottom:5px}
.finding{display:grid;grid-template-columns:9px minmax(0,1fr);gap:12px;padding:15px 0;border-top:1px solid #162e41}.severity-bar{border-radius:999px}.finding-head{display:flex;justify-content:space-between;gap:15px;align-items:start}.finding-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.sev-badge{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:4px 6px;border-radius:5px;color:#071018}.sev-badge.critical{background:var(--critical)}.sev-badge.high{background:var(--high)}.sev-badge.medium{background:var(--medium)}.sev-badge.low{background:var(--low)}.sev-badge.info{background:var(--info)}.finding h3{margin:0;font-size:14px}.finding-meta{color:#668297;font-size:10px;white-space:nowrap}.finding-desc{color:#8ba4b6;line-height:1.55;font-size:12px;margin:7px 0 10px}.evidence{font-family:"SFMono-Regular",Consolas,monospace;font-size:11px;color:#a9c0d1;background:#06101b;border:1px solid #152d3f;border-radius:8px;padding:9px 10px;overflow:auto;white-space:pre-wrap;word-break:break-word}.fix{margin-top:10px;padding:10px 11px;border-left:2px solid var(--green);background:rgba(23,76,62,.15);color:#9fbdb1;font-size:11px;line-height:1.5}.fix strong{color:#6de8b4}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}.feature{padding:18px}.feature-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#0a2b3c;color:#52d5f4;border:1px solid #1d5772}.feature h3{font-size:13px;margin:12px 0 6px}.feature p{color:#7690a3;font-size:11px;line-height:1.55;margin:0}.limitations{margin-top:20px;padding:20px 22px;display:grid;grid-template-columns:300px 1fr;gap:28px;align-items:center}.limitations p:last-child{color:#7892a5;font-size:12px;line-height:1.6;margin:0}
footer{max-width:1420px;margin:0 auto;padding:22px 24px 40px;color:#536f82;font-size:10px;display:flex;justify-content:space-between}
dialog{border:0;background:transparent;color:var(--text);padding:20px;max-width:570px}dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.dialog-card{position:relative;background:#0b1827;border:1px solid #24445b;border-radius:16px;padding:26px;box-shadow:0 30px 100px #000}.dialog-card h2{margin:0}.dialog-card ol{color:#8da6b8;font-size:13px;line-height:1.7;padding-left:22px}.dialog-note{background:#07121f;border:1px solid #19364a;border-radius:9px;padding:11px;color:#8ba5b7;font-size:12px}.dialog-close{position:absolute;right:13px;top:10px;border:0;background:transparent;color:#7995aa;font-size:24px;cursor:pointer}
@media(max-width:1100px){.workspace{grid-template-columns:330px 1fr}.score-card{grid-template-columns:120px 1fr}.stat-grid{grid-column:1/-1}.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.topbar{padding:0 16px}.privacy-pill{display:none}.shell{padding:30px 14px}.hero{display:block}.hero-badges{justify-content:flex-start;margin-top:20px}.workspace{display:block}.input-panel{position:static;margin-bottom:16px}.score-card{grid-template-columns:1fr;text-align:center}.stat-grid{grid-column:auto}.pipeline-strip{margin-top:0}.limitations{grid-template-columns:1fr}.report-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:540px){.hero h1{font-size:40px}.feature-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.score-copy p:last-child{margin-left:auto;margin-right:auto}.findings-header{display:block}.report-actions{justify-content:flex-start;margin-top:12px}.finding-head{display:block}.finding-meta{margin-top:5px;display:block}.limitations{padding:18px}.pipeline-strip{padding:12px}.top-actions .ghost-btn{font-size:11px;padding:7px}}

.live-card{padding:20px 22px}.live-copy{color:#7892a5;font-size:12px;line-height:1.6;max-width:820px}
.live-status{font-size:11px;border:1px solid #244058;border-radius:999px;padding:6px 10px;color:#87a2b5;background:#071522}
.live-status.ok{color:#63e7b0;border-color:#23725c}.live-status.warn{color:#ffc14a;border-color:#7a5e20}.live-status.bad{color:#ff8198;border-color:#793346}
.live-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.live-grid>div{padding:12px;border:1px solid #193247;background:#071522;border-radius:10px}.live-grid strong{display:block;font-size:20px}.live-grid small{color:#718da1;font-size:10px}
.relay-details{margin-top:14px;border-top:1px solid #173146;padding-top:12px}.relay-details summary{cursor:pointer;color:#8facbf;font-size:11px}.relay-row{display:grid;grid-template-columns:1fr auto;gap:8px}.secondary-btn.compact{width:auto;margin:0;padding:9px 12px}.relay-details>small{display:block;color:#607b8e;margin-top:7px;font-size:10px}
.live-finding{border:1px solid #1d3b52;background:#081724;border-radius:10px;padding:12px;margin-top:10px}.live-finding h4{margin:0 0 5px;font-size:13px}.live-finding p{margin:5px 0;color:#829cad;font-size:11px;line-height:1.5}.live-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.live-tags span{font-size:9px;border:1px solid #29455b;border-radius:999px;padding:4px 6px;color:#a8bfd0}
@media(max-width:720px){.live-grid{grid-template-columns:repeat(2,1fr)}.relay-row{grid-template-columns:1fr}}

.repo-card{margin-top:13px;border:1px solid #1f455b;background:linear-gradient(180deg,rgba(9,34,48,.72),rgba(6,20,31,.8));border-radius:12px;padding:13px}
.repo-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.repo-title-row strong{display:block;font-size:12px;max-width:255px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repo-kicker{display:block;color:#50d6f4;font-size:8px;font-weight:900;letter-spacing:.12em;margin-bottom:3px}.repo-mode{font-size:9px;font-weight:900;color:#6ce6b5;border:1px solid #24664f;border-radius:999px;padding:4px 7px}
.repo-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:11px}.repo-stats>div{background:#071522;border:1px solid #173248;border-radius:8px;padding:7px}.repo-stats strong{display:block;font-size:13px}.repo-stats small{font-size:8px;color:#6e899c}
.repo-kinds{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.repo-kinds span{font-size:8px;color:#a3bdcc;border:1px solid #23465d;border-radius:999px;padding:4px 6px;background:#091a28}.repo-note{display:block;color:#5e7b8f;font-size:9px;line-height:1.45;margin-top:8px}
@media(max-width:480px){.repo-stats{grid-template-columns:repeat(2,1fr)}}

.quickstart{margin-bottom:20px;padding:20px 22px;display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,.9fr) auto;gap:22px;align-items:center;border-color:rgba(54,230,154,.34);background:linear-gradient(120deg,rgba(12,38,52,.96),rgba(8,27,31,.96))}.quickstart-copy h2{margin:0;font-size:20px}.quickstart-copy p:last-child{color:#8ca7b8;font-size:12px;line-height:1.55;margin-bottom:0}.quickstart-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.quickstart-steps>div{border:1px solid #1e4955;background:#071a23;border-radius:10px;padding:10px}.quickstart-steps span{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#123d3d;color:#62e7b0;font-weight:900;font-size:10px}.quickstart-steps strong,.quickstart-steps small{display:block}.quickstart-steps strong{font-size:10px;margin-top:7px}.quickstart-steps small{font-size:8px;color:#6d8998;margin-top:2px}.quickstart-actions{min-width:180px}.compact-primary{margin:0;padding:11px 14px}.quickstart-actions .text-btn{display:block;margin:7px auto 0}.suppression-score-note{color:#c9b36c!important;font-size:10px!important;margin-top:7px!important}.required{color:#ff8aa0;font-size:9px}.compact-area{min-height:90px}.wide-dialog{width:min(760px,92vw);max-width:760px}.suppression-list{max-height:430px;overflow:auto;margin:15px 0}.suppression-row{border:1px solid #1d394e;border-radius:10px;padding:12px;margin-bottom:8px;background:#081522}.suppression-row.expired{opacity:.6}.suppression-row-head{display:flex;justify-content:space-between;gap:10px}.suppression-row strong{font-size:12px}.suppression-row small{color:#6e899b}.suppression-reason{font-size:11px;color:#92aabc;line-height:1.5;margin:8px 0}.suppression-actions{display:flex;gap:6px}.finding-actions{display:flex;gap:7px;align-items:center;margin-top:10px}.suppress-btn,.restore-btn{border:1px solid #355066;background:#0b1a27;color:#a9bfce;border-radius:8px;padding:6px 8px;font-size:10px;cursor:pointer}.suppress-btn:hover{border-color:#b18c37;color:#ffd66c}.restore-btn{border-color:#6f4d34;color:#ffc27b}.suppressed-note{margin-top:9px;padding:9px 10px;border:1px dashed #7b6230;border-radius:8px;background:rgba(100,76,23,.12);color:#cbb77c;font-size:10px;line-height:1.5}.finding.is-suppressed{opacity:.78}.live-message{margin:10px 0;padding:10px 11px;border-radius:9px;border:1px solid #28465b;background:#071522;color:#93acbd;font-size:11px;line-height:1.5}.live-message.warn{border-color:#715c27;color:#d9be72;background:rgba(90,68,15,.12)}.live-message.bad{border-color:#713545;color:#e7a0ae;background:rgba(97,30,45,.12)}.live-message.ok{border-color:#27634f;color:#81dcb5;background:rgba(25,88,66,.12)}#suppressionTopCount{display:inline-grid;place-items:center;min-width:16px;height:16px;border-radius:999px;background:#392f18;color:#e8c766;font-size:9px;margin-left:3px}.toast{position:fixed;right:20px;bottom:20px;z-index:80;max-width:360px;background:#0b1c29;border:1px solid #28546d;border-radius:11px;padding:11px 13px;box-shadow:0 18px 60px rgba(0,0,0,.4);font-size:11px;color:#b9cfdd}.toast strong{color:#eaf7ff}@media(max-width:1050px){.quickstart{grid-template-columns:1fr}.quickstart-actions{display:flex;gap:8px;align-items:center}.quickstart-actions .text-btn{margin:0}}@media(max-width:620px){.quickstart-steps{grid-template-columns:1fr}.quickstart-actions{display:block}.quickstart-actions .text-btn{margin:7px auto 0}.top-actions #suppressionsBtn{display:none}}

.relay-row-actions{grid-template-columns:minmax(220px,1fr) auto auto}.relay-summary{margin-top:8px;color:#7694a8;font-size:10px;border-left:2px solid #2a607b;padding-left:8px;line-height:1.45}
.status-dialog-card{max-width:720px}.status-grid{display:grid;gap:7px;margin:16px 0}.status-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 11px;border:1px solid #193449;border-radius:9px;background:#071522}.status-row span{color:#7f9bae;font-size:11px}.status-row strong{font-size:11px;overflow:hidden;text-overflow:ellipsis}.status-row em{font-size:9px;font-style:normal;border-radius:999px;padding:4px 7px;border:1px solid #355064;color:#8ba4b6}.status-row em.status-ok{border-color:#26735a;color:#58dfa8}.status-row em.status-warn{border-color:#765e28;color:#ffc85b}.status-row em.status-bad{border-color:#793346;color:#ff8198}.status-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.status-actions .primary-btn{width:auto;margin-top:0}.status-actions .ghost-btn{padding:10px 12px}
@media(max-width:650px){.relay-row-actions{grid-template-columns:1fr 1fr}.relay-row-actions .text-input{grid-column:1/-1}.status-row{grid-template-columns:1fr auto}.status-row span{grid-column:1/-1}.top-actions{gap:6px}.top-actions .ghost-btn{padding:7px 8px;font-size:10px}}
