:root{color:#dcece5;background:#06100d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 30% -10%,#123128,#06100d 45%)}button,input,select{font:inherit}button{border:1px solid #76c8a5;border-radius:7px;background:#76c8a5;color:#06100d;padding:.58rem .9rem;font-weight:750;cursor:pointer}button:hover:not(:disabled){filter:brightness(1.12)}button:disabled{opacity:.42;cursor:default}button.secondary{background:transparent;color:#b9d7ca;border-color:#355c4c}button.selected{box-shadow:0 0 0 2px #d7ffec inset}main{width:min(1500px,calc(100% - 32px));margin:0 auto;padding:28px 0 48px}header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px}h1,h2,p{margin-top:0}h1{margin-bottom:7px;font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.04em}h2{margin-bottom:14px;font-size:1rem;text-transform:uppercase;letter-spacing:.09em;color:#9cbcaf}.eyebrow{margin-bottom:7px;color:#7be2c8;font:700 .72rem ui-monospace,monospace;letter-spacing:.16em}.subtitle{margin-bottom:0;color:#8eaa9e;max-width:720px}.status{border:1px solid #445f54;border-radius:999px;padding:.45rem .75rem;color:#82978f;font:700 .75rem ui-monospace,monospace}.status.running{color:#7be2c8;border-color:#4c9c82;box-shadow:0 0 22px #4c9c8233}.control-bar,.viewport-panel,aside,.chart-panel{border:1px solid #1e3a30;background:#0a1713dd;box-shadow:0 18px 50px #0005}.control-bar{display:flex;align-items:end;flex-wrap:wrap;gap:9px;padding:13px;border-radius:12px;margin-bottom:14px}.control-bar label{display:grid;gap:4px;margin-left:6px;color:#829e92;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}input,select{min-height:35px;border:1px solid #345448;border-radius:6px;background:#08120f;color:#dcece5;padding:0 .6rem}input{width:92px}.speed-group{display:flex;gap:5px;margin-left:auto}.warning{margin-bottom:14px;padding:12px 14px;border:1px solid #bd5f56;border-radius:9px;background:#511d1a80;color:#ffb2a8}.lab-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}.viewport-panel{border-radius:12px;padding:12px;min-width:0}.dish-canvas{display:block;width:100%;aspect-ratio:1;border-radius:8px;background:#07120f}.dish-canvas{cursor:crosshair}.overlay-controls{display:flex;flex-wrap:wrap;gap:18px;padding:12px 4px 2px;color:#91aa9f;font-size:.82rem}.overlay-controls label{display:flex;align-items:center;gap:6px}.trait-legend{margin:8px 4px 2px;color:#8fa69c;font-size:.76rem;line-height:1.45}aside{border-radius:12px;padding:18px;position:sticky;top:12px}.metrics-grid{display:grid;gap:7px}.metric{border-bottom:1px solid #183127;padding:7px 0 10px}.metric span{display:block;color:#769084;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.metric strong{display:block;margin-top:3px;color:#e6f6ef;font:650 1rem ui-monospace,monospace}.protocol{margin-top:26px}.protocol p{color:#8fa69c;font-size:.82rem;line-height:1.5}.inspector{margin-top:26px}.inspector p{color:#8fa69c;font-size:.82rem;line-height:1.5}.inspector dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;margin:0;font:.74rem ui-monospace,monospace}.inspector dt{color:#789287;overflow-wrap:anywhere}.inspector dd{margin:0;color:#e6f6ef;text-align:right}.chart-panel{margin-top:14px;border-radius:12px;padding:18px}.section-heading{display:flex;justify-content:space-between;align-items:baseline}.section-heading span{color:#6f887d;font:.75rem ui-monospace,monospace}.charts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.chart{margin:0;border:1px solid #173128;border-radius:8px;background:#07120f;padding:10px;min-width:0}.chart figcaption{color:#a9c2b7;font-size:.78rem}.chart svg{width:100%;height:auto;overflow:visible}.chart line{stroke:#29483b;stroke-width:1}.chart polyline{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}.legend{display:flex;gap:14px;font:.68rem ui-monospace,monospace}@media(max-width:900px){.lab-grid{grid-template-columns:1fr}aside{position:static}.metrics-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}}@media(max-width:560px){main{width:min(100% - 18px,1500px);padding-top:16px}header{display:block}.status{display:inline-block;margin-top:14px}.speed-group{width:100%;margin-left:0}}
