:root{--bg-0: #07110d;--bg-1: #0d1d17;--bg-card: #12271f;--bg-elevated: #183429;--border: rgba(110, 231, 183, .16);--border-strong: rgba(16, 185, 129, .42);--text-main: #ecfdf5;--text-muted: #9cb8ac;--accent: #10b981;--accent-bright: #34d399;--warn: #f59e0b;--danger: #ef4444;--info: #38bdf8;--radius-lg: 16px;--radius-md: 11px;--shadow: 0 12px 32px rgba(0, 0, 0, .38);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-main);background-color:var(--bg-0)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100dvh;background:radial-gradient(circle at 50% 0%,#112b21 0%,var(--bg-0) 65%);color:var(--text-main);-webkit-font-smoothing:antialiased}.app-shell{max-width:1120px;margin:0 auto;padding:14px 14px 36px;display:flex;flex-direction:column;gap:14px}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 16px;box-shadow:var(--shadow)}.brand{display:flex;align-items:center;gap:11px}.brand-icon{width:38px;height:38px;border-radius:10px;flex-shrink:0}.brand h1{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.brand p{margin:2px 0 0;font-size:.78rem;color:var(--text-muted)}.runtime-pills{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pill{font-size:.73rem;font-weight:600;padding:4px 9px;border-radius:999px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-muted)}.pill.ok{color:#6ee7b7;border-color:#10b98166;background:#10b9811f}.pill.warn{color:#fcd34d;border-color:#f59e0b66;background:#f59e0b1f}.spectrum-pill.light-white_daylight{color:#e0f2fe;border-color:#38bdf873;background:#38bdf824}.spectrum-pill.light-warm_amber_hps{color:#fde68a;border-color:#fbbf2480;background:#f59e0b29}.spectrum-pill.light-pink_rose_led{color:#fbcfe8;border-color:#f472b68c;background:#ec48992e}.spectrum-pill.light-heavy_blurple_led{color:#f5d0fe;border-color:#d946ef99;background:#c026d338}.loader-banner{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:10px 14px}.loader-banner.hidden{display:none}.loader-row{display:flex;justify-content:space-between;font-size:.8rem;margin-bottom:6px}.progress-track{height:7px;background:#ffffff14;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--info));transition:width .18s ease}.controls-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px;display:flex;flex-direction:column;gap:11px}.control-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.seg-group{display:flex;flex-direction:column;gap:4px}.seg-label{font-size:.71rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.segmented{display:inline-flex;flex-wrap:wrap;background:var(--bg-0);border:1px solid var(--border);border-radius:9px;padding:3px;gap:3px}.segmented button{appearance:none;border:none;background:transparent;color:var(--text-muted);font-size:.8rem;font-weight:600;padding:6px 11px;border-radius:6px;cursor:pointer;transition:all .15s ease}.segmented button.active{background:var(--accent);color:#032217}.context-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:.72rem;color:var(--text-muted);font-weight:600}.field select,.field input{background:var(--bg-0);border:1px solid var(--border);color:var(--text-main);border-radius:8px;padding:7px 10px;font-size:.84rem;outline:none}.field select:focus,.field input:focus{border-color:var(--accent-bright)}.checkbox-field{justify-content:center}.checkbox-label{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:.82rem!important;color:var(--text-main)!important;padding-top:4px}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.field-hint{font-size:.69rem;color:var(--text-muted)}.optical-rescue-bar{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.optical-btn{padding:6px 11px;font-size:.77rem}.optical-btn:disabled{opacity:.48;cursor:not-allowed}.optical-btn.active{background:#f472b633;border-color:#f472b6;color:#fdf2f8}.optical-reset-pill{padding:5px 10px;font-size:.74rem;border-radius:999px;background:#38bdf829;border-color:#38bdf880;color:#e0f2fe}.workspace-grid{display:grid;grid-template-columns:1fr;gap:14px}@media (min-width: 860px){.workspace-grid{grid-template-columns:440px 1fr;align-items:start}}.stage-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:13px;display:flex;flex-direction:column;gap:11px;box-shadow:var(--shadow)}.viewport-box{position:relative;width:100%;aspect-ratio:1 / 1;background:#040a08;border-radius:12px;overflow:hidden;border:1px solid var(--border);display:flex;align-items:center;justify-content:center}.viewport-box video{width:100%;height:100%;object-fit:cover}.reticle-overlay{position:absolute;width:70%;height:70%;border:2px solid rgba(52,211,153,.92);border-radius:12px;box-shadow:0 0 0 9999px #040a087a;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px}.reticle-tag{font-size:.68rem;font-weight:700;background:#07110dd1;color:#6ee7b7;padding:2px 8px;border-radius:999px}.inspection-wrap{position:absolute;inset:0;z-index:4;background:#040a08;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.inspection-wrap.hidden,.hidden{display:none!important}.inspection-canvas,.heatmap-canvas{position:absolute;inset:0;width:100%;height:100%;image-rendering:auto}.heatmap-canvas{pointer-events:none;mix-blend-mode:normal;transition:opacity .18s ease}.camera-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;gap:10px;background:#07110de6}.stage-actions{display:flex;flex-wrap:wrap;gap:8px}.btn{appearance:none;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-main);font-size:.83rem;font-weight:600;padding:8px 13px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:all .15s ease}.btn:hover{border-color:var(--accent-bright)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#032217;font-weight:700}.btn.secondary{background:#38bdf824;border-color:#38bdf873;color:#bae6fd}.wizard-panel{background:var(--bg-0);border:1px solid var(--border-strong);border-radius:11px;padding:10px;display:flex;flex-direction:column;gap:9px}.wizard-slots{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wizard-slot{background:var(--bg-card);border:1px solid var(--border);border-radius:9px;padding:8px;display:flex;flex-direction:column;gap:6px;cursor:pointer}.wizard-slot.selected{border-color:var(--accent-bright);box-shadow:0 0 0 1px var(--accent-bright)}.slot-head{display:flex;justify-content:space-between;align-items:center;font-size:.74rem;font-weight:700}.slot-thumb{width:100%;aspect-ratio:1 / 1;background:#060f0b;border-radius:6px;object-fit:cover;border:1px dashed rgba(255,255,255,.14)}.slot-btns{display:flex;gap:4px}.slot-btns .btn{flex:1;padding:5px 6px;font-size:.72rem}.heatmap-bar{display:flex;flex-direction:column;gap:6px;padding-top:6px;border-top:1px solid rgba(255,255,255,.07)}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.symptom-chip{appearance:none;border:1px solid var(--border);background:var(--bg-0);color:var(--text-main);font-size:.76rem;font-weight:600;padding:5px 10px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.symptom-chip.active{background:#f59e0b38;border-color:#fbbf24;color:#fef3c7}.results-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:15px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow)}.verdict-banner{border-radius:12px;padding:13px 15px;border:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.verdict-banner.healthy{background:#10b98124;border-color:#10b98180}.verdict-banner.single{background:#f59e0b24;border-color:#f59e0b80}.verdict-banner.multi{background:#ef444426;border-color:#ef444494}.verdict-banner.neutral{background:#94a3b81a;border-color:#94a3b84d}.verdict-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}.verdict-badge{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:999px;background:#00000059}.verdict-title{margin:0;font-size:1.08rem;font-weight:700}.verdict-sub{margin:0;font-size:.83rem;color:var(--text-muted)}.channels-section{display:flex;flex-direction:column;gap:9px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;margin:0;font-size:.82rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.channel-item{background:var(--bg-0);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:9px 11px;display:flex;flex-direction:column;gap:5px}.channel-item.active{border-color:#fbbf248c;background:#f59e0b0f}.channel-meta{display:flex;justify-content:space-between;align-items:center;font-size:.81rem;font-weight:600}.channel-zone{font-size:.7rem;color:var(--text-muted);font-weight:500}.bar-outer{position:relative;height:10px;background:#ffffff14;border-radius:999px;overflow:visible}.bar-inner{height:100%;border-radius:999px;transition:width .2s ease}.tau-tick{position:absolute;top:-3px;bottom:-3px;width:2px;background:#fff;box-shadow:0 0 4px #000000e6;pointer-events:none}.protocol-card{background:#0b1b15;border:1px solid var(--border-strong);border-radius:12px;padding:13px 14px;display:flex;flex-direction:column;gap:10px}.conflict-alert{background:#ef444424;border-left:3px solid #ef4444;padding:8px 10px;border-radius:6px;font-size:.8rem;color:#fecaca;line-height:1.42}.mutual-alert{background:#38bdf821;border-left:3px solid #38bdf8;padding:8px 10px;border-radius:6px;font-size:.8rem;color:#bae6fd}.protocol-steps{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:7px;font-size:.85rem;line-height:1.45}.extreme-blurple-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#c026d32e;border:1px solid rgba(232,121,249,.55);border-left:4px solid #e879f9;border-radius:var(--radius-md);padding:10px 13px;font-size:.8rem;line-height:1.44;color:#fae8ff}.uvc-banner{background:#a855f729;border:1px solid rgba(192,132,252,.5);border-left:4px solid #c084fc;border-radius:9px;padding:9px 12px;font-size:.8rem;line-height:1.44;color:#f3e8ff}.phantom-ec-banner{background:#ef444429;border:1px solid rgba(248,113,113,.55);border-left:4px solid #ef4444;border-radius:9px;padding:9px 12px;font-size:.8rem;line-height:1.44;color:#fee2e2}.dilution-banner{background:#0ea5e924;border:1px solid rgba(56,189,248,.45);border-left:4px solid #38bdf8;border-radius:9px;padding:9px 12px;font-size:.8rem;line-height:1.44;color:#e0f2fe}.hypoxia-banner{background:#f59e0b26;border:1px solid rgba(251,191,36,.48);border-left:4px solid #f59e0b;border-radius:9px;padding:9px 12px;font-size:.8rem;line-height:1.44;color:#fef3c7}.disclaimer-box{background:#f59e0b17;border:1px solid rgba(245,158,11,.35);border-radius:var(--radius-md);padding:11px 14px;font-size:.78rem;line-height:1.45;color:#fde68a}
