@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700&display=swap";:root{color:#dfe7ec;font-synthesis:none;--panel:#0d1217;--line:#202a32;--muted:#6f808c;--accent:#ff7139;--green:#58d6a5;background:#080b0f;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select,input{font:inherit}.app{background:#080b0f;grid-template-rows:58px minmax(0,1fr) 66px;grid-template-columns:260px minmax(0,1fr) 270px;height:100dvh;display:grid}header{border-bottom:1px solid var(--line);z-index:10;background:#0b0f14;grid-column:1/-1;align-items:center;padding:0 16px;display:flex}.brand{align-items:center;gap:10px;display:flex}.mark{background:var(--accent);color:#140b08;clip-path:polygon(0 0,100% 0,80% 100%,20% 100%);place-items:center;width:30px;height:30px;font-weight:900;display:grid}.brand strong,.brand span{display:block}.brand strong{letter-spacing:.12em;font:600 12px DM Mono}.brand span{color:var(--muted);letter-spacing:.09em;margin-top:3px;font:9px DM Mono}.header-status{text-transform:uppercase;color:#8c9ba5;align-items:center;gap:8px;margin-left:auto;font:10px DM Mono;display:flex}.header-status b{border-left:1px solid var(--line);color:#d7e0e5;margin-left:5px;padding-left:12px}.dot{background:#7c8590;border-radius:50%;width:7px;height:7px}.dot.connected{background:var(--green);box-shadow:0 0 10px #58d6a5aa}.dot.reconnecting{background:#ffc857}.panel{background:var(--panel);scrollbar-width:thin;border-color:var(--line);border-style:solid;border-width:0;overflow:auto}.left-panel{border-right-width:1px}.right-panel{border-left-width:1px}.panel section{border-bottom:1px solid var(--line);padding:18px 16px}.eyebrow,.section-title{letter-spacing:.13em;color:#7f909b;font:500 9px DM Mono}.section-title{justify-content:space-between;margin-bottom:14px;display:flex}.section-title span{color:#aab7bf}.panel h2{margin:5px 0 18px;font-size:18px}.phase-head{text-transform:uppercase;justify-content:space-between;font:11px DM Mono;display:flex}.phase-head b{color:var(--accent)}.progress{background:#1b252d;height:3px;margin:9px 0 16px}.progress i,.queue i{background:var(--accent);height:100%;transition:width .2s;display:block}.metric-grid{border:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.metric{border:solid var(--line);border-width:0 1px 1px 0;padding:9px}.metric:nth-child(2n){border-right:0}.metric:nth-child(n+3){border-bottom:0}.metric span,.metric b{display:block}.metric span{color:var(--muted);font:8px DM Mono}.metric b{margin-top:3px;font:500 14px DM Mono}.phase{grid-template-columns:10px 1fr auto;gap:8px;padding:7px 0;display:grid;position:relative}.phase>i{z-index:1;background:var(--panel);border:1px solid #42515b;border-radius:50%;width:7px;height:7px;margin-top:3px}.phase:not(:last-child):after{content:"";border-left:1px solid #28343c;position:absolute;top:14px;bottom:-8px;left:3px}.phase.active>i{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px #ff713999}.phase b{text-transform:uppercase;font:500 10px DM Mono;display:block}.phase small{color:var(--muted);margin-top:4px;font:8px DM Mono;display:block}.phase button{color:#d2a083;cursor:pointer;background:0 0;border:0;padding:4px 0;font:9px DM Mono}.phase em{color:var(--muted);font:9px DM Mono}.bounds{font:500 12px DM Mono}.bounds small{color:var(--muted);margin-top:7px;font-size:8px;display:block}.stage{background:radial-gradient(circle,#172029 0,#090c10 65%);min-width:0;position:relative}.viewer{position:absolute;inset:0}.viewer canvas{width:100%;height:100%;display:block}.stage-badges{gap:6px;display:flex;position:absolute;top:12px;left:12px}.stage-badges span{border:1px solid var(--line);color:#8fa0aa;background:#0a0e12cc;padding:5px 7px;font:8px DM Mono}.camera-strip{border:1px solid var(--line);background:#0a0e12dd;display:flex;position:absolute;top:10px;right:10px}.camera-strip button,.exports button,footer button{color:#aab6be;text-transform:uppercase;cursor:pointer;border:0;border-right:1px solid var(--line);background:0 0;padding:8px 9px;font:9px DM Mono}.camera-strip button:hover,.exports button:hover,footer button:hover{color:#fff;background:#172029}.palette{grid-template-columns:1fr 1fr;gap:5px;display:grid}.palette button{text-align:left;color:#cad4da;background:#111820;border:1px solid #202a32;align-items:center;gap:7px;min-width:0;padding:6px;display:flex}.palette i{flex:none;width:20px;height:20px}.palette span{text-overflow:ellipsis;font:9px DM Mono;overflow:hidden}.palette small{color:var(--muted);margin-top:2px;font-size:7px;display:block}.empty,.valid{color:#7f8f99;font:9px/1.8 DM Mono}.valid{color:#79a998}.selection b{font:12px DM Mono}.selection>span{float:right;color:var(--accent);font:9px DM Mono}.selection dl{grid-template-columns:1fr 1fr;gap:6px;margin:14px 0;font:9px DM Mono;display:grid}.selection dt{color:var(--muted)}.selection dd{text-align:right;margin:0}.selection button{border:1px solid var(--line);color:#9eabb3;background:0 0;width:100%;padding:8px;font:9px DM Mono}.good{color:var(--green)!important}.bad{color:#ff6b6b!important}.error-list p{color:#ff8585;border-left:2px solid #ff6b6b;padding-left:7px;font:8px/1.5 DM Mono}.toggles button{color:#8797a1;background:0 0;border:0;justify-content:space-between;width:100%;padding:6px 0;font:9px DM Mono;display:flex}.toggles button i{background:#25313a;border-radius:8px;width:22px;height:11px;position:relative}.toggles button i:after{content:"";background:#788892;border-radius:50%;width:7px;height:7px;transition:all .2s;position:absolute;top:2px;left:2px}.toggles button.on{color:#d9e2e7}.toggles button.on i{background:#78432f}.toggles button.on i:after{background:var(--accent);left:13px}.color{color:var(--muted);justify-content:space-between;align-items:center;margin-top:8px;font:8px DM Mono;display:flex}.color input{background:0 0;border:0;width:24px;height:18px;padding:0}footer{border-top:1px solid var(--line);z-index:11;background:#0b0f14;grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 16px;display:flex}.playback,.exports{align-items:center;display:flex}.playback .primary{background:var(--accent);color:#170d09;border:0;margin-right:6px;font-weight:700}.icon{margin-right:6px;font-size:12px}.playback label{color:var(--muted);padding:0 10px;font:8px DM Mono}.playback select{color:#dbe4e9;border:1px solid var(--line);background:#11171d;margin-left:5px}.queue{background:#1a242b;width:190px;height:3px;margin-left:8px;position:relative}.queue span{color:var(--muted);font:7px DM Mono;position:absolute;top:8px;left:0}.drawer-close,.mobile-toggle{display:none}@media (width<=900px){body{overflow:hidden}.app{grid-template-rows:54px minmax(0,1fr) 62px;grid-template-columns:1fr}.panel{z-index:30;width:min(86vw,310px);transition:transform .25s;position:fixed;top:54px;bottom:62px}.left-panel{left:0;transform:translate(-105%)}.right-panel{right:0;transform:translate(105%)}.panel.open{transform:none}.drawer-close{float:right;z-index:2;border:1px solid var(--line);color:#fff;background:#182129;display:block;position:sticky;top:8px}.stage{grid-row:2}.mobile-toggle{border:1px solid var(--line);color:#99a8b1;background:0 0;margin-left:8px;padding:6px;font:8px DM Mono;display:block}.mobile-toggle.left{margin-left:auto}.header-status,.camera-strip{display:none}footer{grid-row:3;padding:0 8px}.queue,.playback label,.playback button:nth-child(2){display:none}.exports button{padding:8px 6px}.brand span{display:none}}.stage-badges button{border:1px solid var(--line);color:#d9e2e7;cursor:pointer;background:#0a0e12cc;padding:5px 7px;font:8px DM Mono}.stage-badges button:hover{border-color:var(--accent);color:var(--accent)}.checkpoint-line{color:var(--muted);justify-content:space-between;margin-top:10px;font:8px DM Mono;display:flex}.checkpoint-line b{color:#d8a085;font-weight:500}
