:root{--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--text-xs: clamp(.72rem, .68rem + .15vw, .8rem);--text-sm: clamp(.82rem, .78rem + .2vw, .9rem);--text-base: clamp(.94rem, .9rem + .2vw, 1rem);--text-lg: clamp(1.05rem, .98rem + .4vw, 1.2rem);--text-xl: clamp(1.35rem, 1.1rem + 1.1vw, 1.8rem);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--color-bg: #060a10;--color-surface: #0b1420;--color-surface-2: #0f1a29;--color-surface-3: #142235;--color-border: #1c2f47;--color-divider: #14243a;--color-text: #d6e6f7;--color-text-muted: #7a8ea6;--color-text-faint: #48607b;--color-primary: #00e6a4;--color-primary-glow: #00e6a444;--color-primary-hover: #16f2b3;--color-danger: #ff4d6d;--color-danger-bg: #2a0e17;--color-warning: #ffb454;--color-info: #4aa8ff;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 6px 20px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px var(--color-primary-glow);--transition: .16s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:radial-gradient(1200px 600px at 20% -10%,#0a2038 0%,transparent 60%),radial-gradient(1000px 500px at 100% 100%,#06251c 0%,transparent 60%),var(--color-bg);min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased;line-height:1.5}button{cursor:pointer;background:none;border:none;color:inherit;font:inherit}input,select{font:inherit;color:inherit}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--color-text-muted)}.crt-overlay{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.015) 0px,rgba(255,255,255,.015) 1px,transparent 1px,transparent 3px),radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.35) 100%);mix-blend-mode:overlay;z-index:999}.topbar{display:grid;grid-template-columns:auto 1fr auto;gap:var(--sp-6);align-items:center;padding:var(--sp-3) var(--sp-6);background:linear-gradient(180deg,var(--color-surface-2),var(--color-surface));border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:var(--sp-3)}.logo{filter:drop-shadow(0 0 6px var(--color-primary-glow))}.brand-name{font-weight:700;letter-spacing:.16em;font-size:.95rem;color:var(--color-primary)}.brand-sub{font-size:var(--text-xs);color:var(--color-text-muted)}.tabs{display:flex;gap:2px;justify-self:center}.tab{padding:8px 16px;font-size:var(--text-sm);color:var(--color-text-muted);border-bottom:2px solid transparent;transition:var(--transition);letter-spacing:.02em}.tab:hover{color:var(--color-text)}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.topbar-actions{display:flex;gap:var(--sp-4);align-items:center}.seg{display:inline-flex;background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:999px;padding:2px;gap:2px}.seg-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--color-text-muted);transition:var(--transition)}.seg-btn:hover{color:var(--color-text)}.seg-btn.active{background:color-mix(in oklab,var(--color-primary),transparent 78%);color:var(--color-primary);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--color-primary),transparent 55%)}.seg-btn svg{opacity:.85}.toggle{display:inline-flex;align-items:center;gap:var(--sp-2);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--text-xs);color:var(--color-text-muted)}.toggle input{position:absolute;opacity:0;pointer-events:none}.toggle-track{width:32px;height:18px;background:var(--color-surface-3);border-radius:999px;position:relative;transition:var(--transition);border:1px solid var(--color-border)}.toggle-thumb{position:absolute;top:1px;left:1px;width:14px;height:14px;background:var(--color-text-muted);border-radius:50%;transition:var(--transition)}.toggle input:checked+.toggle-track{background:color-mix(in oklab,var(--color-primary),transparent 70%);border-color:var(--color-primary)}.toggle input:checked+.toggle-track .toggle-thumb{left:15px;background:var(--color-primary);box-shadow:0 0 8px var(--color-primary-glow)}.toggle-label{letter-spacing:.06em;text-transform:uppercase;font-weight:500}.workspace{display:grid;grid-template-columns:280px 1fr 340px;gap:var(--sp-4);padding:var(--sp-4);min-height:calc(100dvh - 100px)}@media(max-width:1100px){.workspace{grid-template-columns:1fr}}.panel{background:linear-gradient(180deg,var(--color-surface),var(--color-surface-2));border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--sp-5);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:var(--sp-4)}.panel-title{font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding-bottom:var(--sp-2);border-bottom:1px solid var(--color-divider)}.scan-modes{display:flex;flex-direction:column;gap:var(--sp-2)}.mode{display:flex;gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);cursor:pointer;transition:var(--transition);align-items:flex-start}.mode:hover{border-color:color-mix(in oklab,var(--color-primary),transparent 55%);background:var(--color-surface-3)}.mode input{accent-color:var(--color-primary);margin-top:3px}.mode.selected{border-color:var(--color-primary);background:linear-gradient(180deg,color-mix(in oklab,var(--color-primary),transparent 90%),var(--color-surface-2));box-shadow:inset 0 0 0 1px var(--color-primary-glow)}.mode-name{font-weight:600;font-size:var(--text-sm);display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.mode-desc{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px}.pill{font-size:10px;font-family:var(--font-mono);letter-spacing:.08em;padding:2px 6px;border-radius:3px;background:color-mix(in oklab,var(--color-primary),transparent 80%);color:var(--color-primary);border:1px solid var(--color-primary)}.pill.danger-pill{background:color-mix(in oklab,var(--color-danger),transparent 80%);color:var(--color-danger);border-color:var(--color-danger);animation:pulse 1.4s ease-in-out infinite}.targets{display:flex;flex-direction:column;gap:6px;padding-top:var(--sp-2);border-top:1px dashed var(--color-divider)}.target-title{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:4px}.check{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-sm);cursor:pointer}.check input{accent-color:var(--color-primary)}.btn-primary,.btn-ghost,.btn-danger{padding:10px 14px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);border:1px solid transparent}.btn-primary{background:linear-gradient(180deg,var(--color-primary),color-mix(in oklab,var(--color-primary),#000 20%));color:#041a12;border-color:color-mix(in oklab,var(--color-primary),#000 20%);box-shadow:0 0 12px var(--color-primary-glow),inset 0 1px #ffffff40}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn-ghost{background:var(--color-surface-3);color:var(--color-text-muted);border-color:var(--color-border)}.btn-ghost:hover:not(:disabled){color:var(--color-text);border-color:var(--color-primary)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.btn-danger{background:linear-gradient(180deg,var(--color-danger),color-mix(in oklab,var(--color-danger),#000 20%));color:#2b0812;border-color:color-mix(in oklab,var(--color-danger),#000 20%);box-shadow:0 0 12px #ff4d6d59}.btn-danger:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.1)}.btn-danger:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.defs{margin-top:auto;padding-top:var(--sp-3);border-top:1px solid var(--color-divider);display:flex;flex-direction:column;gap:6px;font-size:var(--text-xs);color:var(--color-text-muted)}.defs-row{display:flex;justify-content:space-between}.defs-row .mono{color:var(--color-text);font-size:11px}.status-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-3)}.status-block{padding:var(--sp-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md)}.status-block.danger{border-color:color-mix(in oklab,var(--color-danger),transparent 60%)}.status-block.danger .status-value{color:var(--color-danger)}.status-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:4px}.status-value{font-size:var(--text-lg);font-weight:600}#statusValue{font-size:var(--text-sm);font-weight:500}.progress-wrap{display:flex;flex-direction:column;gap:6px}.progress-track{position:relative;height:12px;background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:999px;overflow:hidden}.progress-bar{height:100%;width:0%;background:linear-gradient(90deg,var(--color-primary),#6affce);box-shadow:0 0 12px var(--color-primary-glow);transition:width .2s linear;border-radius:999px}.progress-scan{position:absolute;top:0;bottom:0;width:40px;opacity:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);animation:shimmer 1.4s linear infinite}.progress-wrap.scanning .progress-scan{opacity:1}@keyframes shimmer{0%{transform:translate(-40px)}to{transform:translate(700px)}}.progress-labels{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--color-text-muted)}.stage{display:grid;grid-template-columns:260px 1fr;gap:var(--sp-4);flex:1;min-height:340px}@media(max-width:900px){.stage{grid-template-columns:1fr}}.radar{border:1px solid var(--color-border);border-radius:var(--radius-md);background:radial-gradient(circle at center,#041d17 0%,var(--color-surface) 80%);position:relative;aspect-ratio:1/1;overflow:hidden}.radar-sweep{animation:sweep 3s linear infinite}@keyframes sweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.radar circle,.radar line{transition:opacity .2s}.radar-blip{animation:blipPop .8s ease-out forwards}@keyframes blipPop{0%{r:2;opacity:1}50%{r:8;opacity:.8}to{r:4;opacity:.9}}.feed{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#04080e;overflow:hidden}.feed-title{padding:var(--sp-2) var(--sp-3);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:var(--sp-2);background:var(--color-surface-2)}.dot{width:8px;height:8px;border-radius:50%;background:var(--color-text-faint)}.feed.scanning .dot{background:var(--color-primary);box-shadow:0 0 8px var(--color-primary);animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.log{list-style:none;padding:var(--sp-2) var(--sp-3);font-family:var(--font-mono);font-size:12px;line-height:1.75;overflow-y:auto;max-height:380px;flex:1;color:#6dcaa6}.log li{display:flex;gap:var(--sp-3);animation:slideIn .2s ease-out}.log li .ts{color:var(--color-text-faint)}.log li .path{color:#a3d9c0;word-break:break-all}.log li.detected .path{color:var(--color-danger);font-weight:500}.log li.detected:before{content:"⚠";color:var(--color-danger)}.log li.clean:before{content:"✓";color:var(--color-primary)}@keyframes slideIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.threat-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-2);min-height:200px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--sp-8) var(--sp-4);gap:var(--sp-2);color:var(--color-text-muted);flex:1}.empty-state p{font-size:var(--text-sm)}.empty-sub{font-size:var(--text-xs);color:var(--color-text-faint)}.threat-item{display:flex;gap:var(--sp-3);align-items:flex-start;padding:var(--sp-3);background:linear-gradient(180deg,var(--color-danger-bg),var(--color-surface-2));border:1px solid color-mix(in oklab,var(--color-danger),transparent 65%);border-left:3px solid var(--color-danger);border-radius:var(--radius-md);animation:threatIn .32s ease-out;cursor:pointer;transition:var(--transition)}.threat-item:hover{transform:translate(-2px);border-left-width:6px}.threat-item.selected{background:linear-gradient(180deg,#3a1220,var(--color-surface-2));box-shadow:inset 0 0 0 1px var(--color-danger)}@keyframes threatIn{0%{opacity:0;transform:translate(20px) scale(.98)}60%{opacity:1;transform:translate(-4px) scale(1)}to{transform:translate(0)}}.threat-check{accent-color:var(--color-danger);margin-top:4px}.threat-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.threat-name{font-weight:600;font-size:var(--text-sm);color:var(--color-danger)}.threat-path{font-family:var(--font-mono);font-size:11px;color:var(--color-text-muted);word-break:break-all}.threat-meta{display:flex;gap:var(--sp-2);margin-top:4px;font-size:10px}.threat-meta span{font-family:var(--font-mono);letter-spacing:.05em;padding:2px 6px;border-radius:3px;border:1px solid var(--color-border);background:var(--color-surface)}.severity-high{color:var(--color-danger);border-color:color-mix(in oklab,var(--color-danger),transparent 60%)!important}.severity-med{color:var(--color-warning);border-color:color-mix(in oklab,var(--color-warning),transparent 60%)!important}.severity-low{color:var(--color-info);border-color:color-mix(in oklab,var(--color-info),transparent 60%)!important}.threat-item.cleaning{opacity:.4}.threat-item.cleaned{animation:dissolve .5s ease-out forwards}@keyframes dissolve{to{opacity:0;transform:translate(80px) scale(.9);height:0;padding:0;margin:0;border-width:0}}.threat-actions{display:flex;gap:var(--sp-2)}.threat-actions button{flex:1}.statusbar{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-2) var(--sp-6);background:var(--color-surface);border-top:1px solid var(--color-border);font-size:11px}.status-ok{color:var(--color-primary)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#03080fb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fade .2s ease-out}.modal-backdrop[hidden]{display:none}.modal{background:linear-gradient(180deg,var(--color-surface),var(--color-surface-2));border:1px solid var(--color-danger);box-shadow:0 0 40px #ff4d6d59,var(--shadow-md);border-radius:var(--radius-lg);padding:var(--sp-8);max-width:440px;width:90%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);animation:modalIn .3s cubic-bezier(.16,1,.3,1)}.modal-icon{width:72px;height:72px;border-radius:50%;background:color-mix(in oklab,var(--color-danger),transparent 82%);color:var(--color-danger);display:flex;align-items:center;justify-content:center;animation:pulse 1.2s ease-in-out infinite}.modal h3{font-size:var(--text-lg)}.modal p{font-size:var(--text-sm);color:var(--color-text-muted)}.modal-actions{display:flex;gap:var(--sp-2)}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}:root{--font-body: "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;--font-mono: "Cascadia Mono", "Cascadia Code", Consolas, monospace;--color-bg: #f3f3f3;--color-surface: #ffffff;--color-surface-2: #fafafa;--color-surface-3: #f0f0f0;--color-border: #d8d8d8;--color-divider: #e5e5e5;--color-text: #1b1b1b;--color-text-muted: #5d5d5d;--color-text-faint: #8a8a8a;--color-primary: #0067c0;--color-primary-glow: rgba(0, 103, 192, .18);--color-primary-hover: #005a9e;--color-danger: #c42b1c;--color-danger-bg: #fdf3f2;--color-warning: #9d5d00;--color-info: #0067c0;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 2px 8px rgba(0, 0, 0, .08);--shadow-glow: 0 0 0 3px rgba(0, 103, 192, .12)}body{background:var(--color-bg);color:var(--color-text);display:flex;flex-direction:column;letter-spacing:0}.crt-overlay{display:none}.topbar{min-height:64px;padding:10px 24px;background:#fffffff0;border-bottom:1px solid var(--color-border);box-shadow:0 1px 4px #0000000d;-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2)}.logo{filter:none;width:32px;height:32px}.logo-wordmark{display:block;width:200px;height:auto;max-height:none;transform:translate(-8px,-26px)}.brand-logo-crop{display:block;width:176px;height:50px;overflow:hidden}.brand-name{color:var(--color-text);font-size:15px;font-weight:600;letter-spacing:.02em}.brand-sub{color:var(--color-text-muted);font-size:11px}.tabs{align-self:stretch;align-items:stretch;gap:0}.tab{min-width:92px;padding:8px 14px;color:var(--color-text-muted);border-bottom-width:3px;font-size:13px;font-weight:500}.tab:hover{color:var(--color-text);background:#f5f5f5}.tab.active{color:var(--color-text);border-bottom-color:var(--color-primary)}.topbar-actions{gap:12px}.seg{background:#f3f3f3;border-color:#d1d1d1;border-radius:6px;padding:2px}.seg-btn{border-radius:4px;color:var(--color-text-muted);text-transform:none;letter-spacing:0;font-size:12px}.seg-btn.active{color:var(--color-text);background:#fff;box-shadow:0 1px 2px #0000001f}.toggle{color:var(--color-text-muted)}.toggle-label{text-transform:none;letter-spacing:0}.toggle-track{background:#8a8a8a;border-color:#8a8a8a}.toggle-thumb{background:#fff}.toggle input:checked+.toggle-track{background:var(--color-primary);border-color:var(--color-primary)}.toggle input:checked+.toggle-track .toggle-thumb{background:#fff;box-shadow:none}.workspace{flex:1;grid-template-columns:280px minmax(460px,1fr) 340px;gap:12px;padding:16px;min-height:0}.panel{background:var(--color-surface);border:1px solid var(--color-border);padding:20px;box-shadow:var(--shadow-sm)}.panel-title{color:#323130;font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;padding-bottom:12px}.mode{background:#fff;border-color:#d1d1d1;padding:12px}.mode:hover{background:#f7f7f7;border-color:#b8b8b8}.mode.selected{background:#f5f9fd;border-color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}.mode input,.check input,.threat-check{accent-color:var(--color-primary)}.mode-name{color:var(--color-text)}.mode-desc{color:var(--color-text-muted)}.pill{color:#005a9e;background:#e5f1fb;border:0;border-radius:10px;padding:2px 7px;font-family:var(--font-body);font-weight:600;letter-spacing:0}.targets{border-top-style:solid}.target-title{color:var(--color-text-muted);font-weight:600;letter-spacing:0;text-transform:none}.btn-primary,.btn-danger,.btn-ghost{min-height:34px;border-radius:4px;box-shadow:none}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:none}.btn-ghost{background:#fff;color:var(--color-text);border-color:#b8b8b8}.btn-ghost:hover:not(:disabled){background:#f3f3f3;border-color:#8a8a8a}.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.defs{border-color:var(--color-divider)}.defs-row .mono{color:var(--color-text)}.status-row{gap:10px}.status-block{background:#fafafa;border-color:var(--color-border);box-shadow:inset 0 2px #e8e8e8}.status-block:first-child{box-shadow:inset 0 2px 0 var(--color-primary)}.status-label{color:var(--color-text-muted)}.status-value{color:var(--color-text)}.progress-track{height:8px;background:#e5e5e5;border:0}.progress-bar{background:var(--color-primary);box-shadow:none}.stage{grid-template-columns:260px minmax(300px,1fr)}.radar{background:radial-gradient(circle at center,#edf6fc,#f8fbfd 76%);border-color:var(--color-border)}.feed{background:#0c0c0c;border-color:#313131}.feed-title{color:#d6d6d6;background:#202020;border-color:#3b3b3b;letter-spacing:0;text-transform:none}.dot{background:#8a8a8a}.feed.scanning .dot{background:#60cdff;box-shadow:0 0 6px #60cdff}.log{color:#9cdcfe}.log li .ts{color:gray}.log li .path{color:#dcdcdc}.threat-item{background:#fff7f6;border-color:#edc7c2;border-left:3px solid var(--color-danger)}.threat-item:hover{transform:none;border-left-width:3px;background:#fdf0ee}.threat-item.selected{background:#fce8e5;box-shadow:inset 0 0 0 1px #d96c60}.threat-check{accent-color:var(--color-danger)}.empty-state{color:var(--color-text-muted)}.empty-sub{color:var(--color-text-faint)}.statusbar{background:#fff;border-color:var(--color-border);color:var(--color-text-muted);min-height:34px}.status-ok{color:#107c10}.status-danger{color:var(--color-danger)}.modal-backdrop{background:#00000059}.modal{background:#fff;border:1px solid var(--color-border);box-shadow:0 16px 40px #0003}.modal-icon{background:#fce8e5}@media(max-width:1180px){.topbar{grid-template-columns:1fr auto}.tabs{grid-column:1 / -1;grid-row:2;justify-self:stretch;overflow-x:auto}.topbar-actions{justify-self:end}.workspace{grid-template-columns:260px 1fr}.threats-panel{grid-column:1 / -1;min-height:300px}}@media(max-width:760px){.topbar{grid-template-columns:1fr;padding:10px 14px}.topbar-actions{justify-self:start;flex-wrap:wrap}.tabs{grid-column:1;grid-row:auto;justify-content:flex-start}.workspace{grid-template-columns:1fr;padding:10px}.threats-panel{grid-column:auto}.status-row{grid-template-columns:repeat(2,1fr)}.stage{grid-template-columns:1fr}.statusbar{gap:10px;flex-wrap:wrap}}html{height:auto;min-height:100%}body{height:auto;min-height:100dvh}.topbar,.workspace,.panel,.stage,.feed,.threat-list{min-width:0}.workspace{width:100%;flex:1 0 auto;align-items:stretch}.statusbar{position:relative;flex:0 0 auto}@media(min-width:1600px){.workspace{grid-template-columns:300px minmax(700px,1fr) 380px;max-width:1800px;width:calc(100% - 32px);margin-inline:auto}.stage{grid-template-columns:300px minmax(420px,1fr)}.log{max-height:520px}}@media(max-width:1180px){.workspace{grid-template-columns:minmax(240px,280px) minmax(0,1fr)}.main{min-width:0}.threats-panel{grid-column:1 / -1}}@media(max-width:900px){.topbar{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}.tabs{grid-column:1 / -1;grid-row:2;width:100%;justify-self:stretch}.topbar-actions{justify-self:end}.workspace{grid-template-columns:minmax(0,1fr)}.threats-panel{grid-column:auto}.side .scan-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.side .targets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:16px}.side .target-title{grid-column:1 / -1}.stage{grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr)}.threat-list{min-height:260px}}@media(max-width:680px){.topbar{position:static;grid-template-columns:minmax(0,1fr);padding:10px 12px 0}.brand{padding:0 2px 6px}.tabs{grid-column:1;grid-row:auto;order:2;overflow:visible}.tab{flex:1 1 25%;min-width:0;padding:10px 3px;font-size:12px;white-space:nowrap}.topbar-actions{order:3;width:100%;justify-self:stretch;justify-content:flex-start;padding:8px 2px 10px;border-top:1px solid var(--color-divider)}.workspace{gap:10px;padding:10px}.panel{gap:14px;padding:16px}.side .scan-modes{grid-template-columns:minmax(0,1fr)}.side .targets,.status-row{grid-template-columns:repeat(2,minmax(0,1fr))}.stage{grid-template-columns:minmax(0,1fr);min-height:0}.radar{width:min(100%,320px);justify-self:center}.feed{min-height:300px}.log{max-height:340px}.threat-list{min-height:240px}.statusbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:10px 14px}.statusbar .muted:nth-child(2){grid-column:1 / -1;grid-row:2}}@media(max-width:420px){.brand-logo-crop{width:158px;height:44px}.logo-wordmark{width:180px;transform:translate(-7px,-24px)}.brand-name{font-size:14px}.brand-sub{font-size:10px}.topbar-actions{gap:10px}.toggle-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.tab{font-size:11px}.workspace{padding:8px}.panel{padding:14px}.side .targets{grid-template-columns:minmax(0,1fr)}.status-block{padding:10px}.status-value{font-size:15px}#statusValue{font-size:12px}.progress-labels{gap:8px}.threat-actions{flex-direction:column}.threat-meta{flex-wrap:wrap}.modal{padding:24px 18px}.statusbar{grid-template-columns:minmax(0,1fr) auto;font-size:10px}}@media(max-width:340px){.tab{font-size:10px}.seg-btn{padding-inline:7px}.status-row{grid-template-columns:minmax(0,1fr)}.statusbar{display:flex;align-items:flex-start}}
