.home{color:#e6ecff;box-sizing:border-box;background:radial-gradient(1200px 600px at 20% 0,#1a2338 0%,#0b0f1a 60%);min-height:100vh;padding:32px 48px;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.home-center{justify-content:center;align-items:center;display:flex}.home-center-inner{text-align:center}.home-center-inner h1{letter-spacing:-.5px;margin:0 0 12px;font-size:38px}.home-poweredby{color:#8ea0c4;letter-spacing:.4px;justify-content:center;align-items:center;gap:10px;margin:0 0 32px;font-size:13px;display:flex}.home-poweredby img{width:auto;height:22px;display:block}.home-cta-center{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.home-hero{justify-content:space-between;align-items:center;gap:32px;margin-bottom:32px;display:flex}.home-hero h1{letter-spacing:-.5px;margin:0;font-size:34px}.home-hero .tagline{color:#8ea0c4;margin:4px 0 0;font-size:14px}.home-cta{gap:12px;display:flex}.btn{border-radius:10px;padding:12px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:transform 80ms,background .12s;display:inline-block}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:#3b82f6}.btn-primary:hover{background:#2563eb}.btn-secondary{color:#e6ecff;background:0 0;border:1px solid #346}.btn-secondary:hover{background:#1a2338}.home-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.card{background:#111726;border:1px solid #1e2a44;border-radius:14px;padding:18px 20px}.card h2{color:#8ea0c4;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px;font-size:15px}.card dl{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:13px;display:grid}.card dt{color:#8ea0c4}.card dd{color:#e6ecff;margin:0;font-family:ui-monospace,Consolas,monospace}.ok{color:#4ade80;font-weight:600}.err{color:#f87171}.errors{color:#f87171;padding-left:18px;font-size:12px}.layouts{max-height:240px;margin:0;padding:0;list-style:none;overflow-y:auto}.layouts li{border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:13px;display:flex}.layouts li:hover{background:#1a2338}.layouts li a{color:#60a5fa;font-size:12px;text-decoration:none}.phases{counter-reset:phase;margin:0;padding:0;font-size:13px;list-style:none}.phases li{color:#8ea0c4;padding:6px 0 6px 18px;position:relative}.phases li:before{content:"○";color:#346;position:absolute;left:0}.phases li.done{color:#4ade80}.phases li.done:before{content:"✓";color:#4ade80}.phases li.active{color:#e6ecff;font-weight:600}.phases li.active:before{content:"●";color:#3b82f6}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-dark:#0f0f1a;--bg-panel:#1a1a2e;--bg-input:#252540;--border:#335;--text:#e0e0f0;--text-dim:#889;--accent:#48f;--accent-hover:#59f;--danger:#f45;--canvas-bg:#080814}:root.light-mode{--bg-dark:#f2f3f7;--bg-panel:#fff;--bg-input:#eceff5;--border:#cfd4df;--text:#1a1c22;--text-dim:#5a6070;--accent:#2a6dd6;--accent-hover:#1e57b5;--danger:#d93646;--canvas-bg:#e8ebf2}.phase-controls{background:#4488ff0f;border:1px solid #4488ff40;border-radius:6px;flex-direction:column;gap:6px;padding:10px;display:flex}.phase-controls h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin:0 0 2px;font-size:11px}.phase-btn{border:1px solid var(--border);background:var(--bg-input);color:var(--text);cursor:pointer;text-align:left;border-radius:5px;padding:8px 10px;font-size:12px;font-weight:600;transition:all .15s}.phase-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.phase-btn:disabled{opacity:.5;cursor:not-allowed}.phase-btn-sub{color:var(--text-dim);margin-top:2px;font-size:10px;font-weight:400;display:block}.phase-btn:hover:not(:disabled) .phase-btn-sub{color:#ffffffd9}.theme-toggle{background:var(--bg-input);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:4px;padding:4px 10px;font-size:12px}.theme-toggle:hover{background:var(--accent);color:#fff;border-color:var(--accent)}body{background:var(--bg-dark);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;overflow:hidden}#root{width:100%;height:100vh}.app{flex-direction:column;width:100vw;height:100vh;display:flex}.toolbar{background:var(--bg-panel);border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:6px 12px;display:flex}.toolbar-group{gap:4px;display:flex}.tool-btn{border:1px solid var(--border);background:var(--bg-input);color:var(--text);cursor:pointer;border-radius:4px;padding:5px 10px;font-size:12px;transition:all .15s}.tool-btn:hover{background:var(--accent);border-color:var(--accent)}.tool-btn.active{background:var(--accent);border-color:var(--accent-hover);color:#fff}.tool-btn:disabled{opacity:.4;cursor:not-allowed}.tool-btn.danger-btn{border-color:#533}.tool-btn.danger-btn:hover:not(:disabled){background:var(--danger);border-color:var(--danger)}.main-area{flex:1;display:flex;overflow:hidden}.left-sidebar{background:var(--bg-panel);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:220px;display:flex;overflow-y:auto}.scene-tree{flex:1;padding:8px;overflow-y:auto}.scene-tree h3{color:var(--accent);margin-bottom:8px;font-size:13px}.scene-tree ul{list-style:none}.tree-item{cursor:pointer;border-radius:3px;align-items:center;gap:4px;margin-bottom:2px;padding:4px 6px;font-size:12px;display:flex}.tree-item:hover{background:var(--bg-input)}.tree-item.selected{border:1px solid var(--accent);background:#48f3}.tree-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tree-type{color:var(--text-dim);font-size:10px}.tree-delete{color:var(--danger);cursor:pointer;opacity:.5;background:0 0;border:none;padding:0 4px;font-size:12px}.tree-delete:hover{opacity:1}.canvas-wrapper{flex:1;position:relative;overflow:hidden}.editor-canvas{width:100%;height:100%;display:block}.measure-bar{border-top:2px solid var(--accent);z-index:10;background:#141428f2;padding:10px 16px;position:absolute;bottom:0;left:0;right:0}.measure-bar-inner{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.measure-label{color:var(--accent);letter-spacing:1px;background:#4488ff26;border-radius:3px;padding:3px 8px;font-size:11px;font-weight:700}.measure-live{color:#fa0;font-size:13px}.measure-live strong{color:#fc4}.measure-inputs{flex:1;align-items:center;gap:12px;display:flex}.measure-inputs label{color:var(--text-dim);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.measure-inputs input{background:var(--bg-input);border:1px solid var(--border);width:90px;color:var(--text);border-radius:4px;padding:5px 8px;font-size:14px;font-weight:700}.measure-inputs input:focus{border-color:var(--accent);background:#2a2a50;outline:none}.measure-hint{color:var(--text-dim);margin-left:auto;font-size:11px}.properties-panel{background:var(--bg-panel);border-left:1px solid var(--border);flex-shrink:0;width:240px;padding:8px;overflow-y:auto}.properties-panel h3{color:var(--accent);margin-bottom:8px;font-size:13px}.properties-panel h4{color:var(--text-dim);margin:10px 0 6px;font-size:12px}.properties-panel label{color:var(--text-dim);margin-bottom:6px;font-size:11px;display:block}.properties-panel input,.properties-panel select{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text);border-radius:3px;margin-top:2px;padding:4px 6px;font-size:12px;display:block}.properties-panel input:focus,.properties-panel select:focus{border-color:var(--accent);outline:none}.prop-row{align-items:center;gap:4px;margin-bottom:4px;display:flex}.prop-key{color:var(--accent);min-width:50px;font-size:11px}.prop-row input{flex:1}.prop-row button{color:var(--danger);cursor:pointer;background:0 0;border:none;font-size:12px}.prop-add{gap:4px;margin-top:6px;display:flex}.prop-add input{flex:1;min-width:0}.prop-add button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:3px;padding:4px 8px;font-size:11px}.status-bar{background:var(--bg-panel);border-top:1px solid var(--border);color:var(--text-dim);flex-shrink:0;align-items:center;gap:20px;padding:4px 12px;font-size:11px;display:flex}.context-menu-overlay{z-index:100;position:fixed;inset:0}.context-menu{background:var(--bg-panel);border:1px solid var(--border);z-index:101;border-radius:6px;min-width:180px;padding:4px 0;position:fixed;box-shadow:0 8px 24px #00000080}.context-menu button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;padding:7px 14px;font-size:12px;display:block}.context-menu button:hover{background:var(--accent);color:#fff}.context-menu-divider{background:var(--border);height:1px;margin:4px 0}.context-menu-danger{color:var(--danger)!important}.context-menu-danger:hover{background:var(--danger)!important;color:#fff!important}.empty-msg{color:var(--text-dim);font-size:11px;font-style:italic}.sim-nav-link{background:var(--accent);color:#fff;z-index:50;opacity:.8;border-radius:4px;padding:5px 12px;font-size:11px;text-decoration:none;transition:opacity .15s;position:fixed;bottom:28px;right:12px}.sim-nav-link:hover{opacity:1}.sim-toolbar{align-items:center;gap:6px;margin-left:auto;display:flex}.sim-divider{background:var(--border);width:1px;height:24px;margin:0 4px}.sim-play-btn{font-weight:600;color:#fff!important;background:#2a4!important;border-color:#2a4!important}.sim-play-btn:hover:not(:disabled){background:#3c5!important}.sim-speed-select{background:var(--bg-input);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:4px;padding:4px 6px;font-size:11px}.sim-speed-select:focus{border-color:var(--accent);outline:none}.sim-heatmap-lbl{color:var(--text-dim);cursor:pointer;white-space:nowrap;align-items:center;gap:3px;font-size:11px;display:flex}.sim-heatmap-lbl input{accent-color:var(--accent)}.sim-time-display{color:var(--accent);min-width:40px;font-family:monospace;font-size:13px;font-weight:700}.sim-agent-count{color:var(--text-dim);white-space:nowrap;font-size:11px}.sim-panel{width:260px}.sim-panel h4{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin:12px 0 6px;font-size:11px}.sim-panel-time{color:var(--accent);margin-bottom:8px;font-family:monospace;font-size:28px;font-weight:700}.sim-panel-row{gap:6px;margin-bottom:8px;display:flex}.sim-panel-btn{border:1px solid var(--border);background:var(--bg-input);color:var(--text);cursor:pointer;border-radius:4px;flex:1;padding:6px 10px;font-size:12px;transition:all .15s}.sim-panel-btn:hover{border-color:var(--accent);background:#48f3}.sim-panel-btn-danger{border-color:#533}.sim-panel-btn-danger:hover{color:#fff;background:var(--danger)!important;border-color:var(--danger)!important}.sim-panel-label{color:var(--text-dim);margin-bottom:4px;font-size:11px;display:block}.sim-panel-speeds{flex-wrap:wrap;gap:3px;margin-bottom:8px;display:flex}.sim-speed-chip{border:1px solid var(--border);background:var(--bg-input);color:var(--text-dim);cursor:pointer;border-radius:3px;padding:3px 8px;font-size:10px;transition:all .15s}.sim-speed-chip:hover{background:#48f3}.sim-speed-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.sim-panel-check{color:var(--text-dim);cursor:pointer;align-items:center;gap:6px;margin-bottom:8px;font-size:12px;display:flex}.sim-panel-check input{accent-color:var(--accent)}.sim-stats-grid{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px;display:grid}.sim-stat-box{background:var(--bg-input);border-radius:4px;padding:6px 8px}.sim-stat-label{color:var(--text-dim);text-transform:uppercase;font-size:9px;display:block}.sim-stat-value{font-family:monospace;font-size:16px;font-weight:700}.sim-stat-unit{color:var(--text-dim);font-size:10px;font-weight:400}.sim-zone-list{flex-direction:column;gap:4px;display:flex}.sim-zone-row{align-items:center;gap:6px;font-size:11px;display:flex}.sim-zone-name{text-overflow:ellipsis;white-space:nowrap;width:55px;color:var(--text-dim);overflow:hidden}.sim-zone-bar-bg{background:var(--bg-input);border-radius:3px;flex:1;height:6px;overflow:hidden}.sim-zone-bar{border-radius:3px;height:100%;transition:width .3s}.sim-zone-val{text-align:right;width:28px;color:var(--text);font-family:monospace;font-size:10px}.sim-alerts{flex-direction:column;gap:3px;max-height:120px;display:flex;overflow-y:auto}.sim-alert{border-left:3px solid;border-radius:3px;padding:3px 6px;font-size:10px}.sim-alert-warning{color:#fc4;background:#ffaa001a;border-left-color:#fa0}.sim-alert-danger{color:#f67;background:#ff44551a;border-left-color:#f45}.sim-alert-critical{color:#f44;background:#ff000026;border-left-color:red;font-weight:600}.sim-alert-time{opacity:.6;margin-right:4px;font-family:monospace}.sim-slider{margin-bottom:8px}.sim-slider-head{color:var(--text-dim);justify-content:space-between;margin-bottom:2px;font-size:10px;display:flex}.sim-slider-val{color:var(--accent);font-family:monospace;font-weight:600}.sim-slider input[type=range]{appearance:none;background:var(--border);border-radius:2px;outline:none;width:100%;height:4px}.sim-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);cursor:pointer;border-radius:50%;width:12px;height:12px}.sim-legend{color:var(--text-dim);flex-direction:column;gap:3px;font-size:10px;display:flex}.sim-legend-row{align-items:center;gap:6px;display:flex}.sim-legend-sw{border-radius:2px;flex-shrink:0;width:16px;height:10px}.setup-point-row{background:var(--bg-input);border-radius:4px;align-items:center;gap:6px;margin-bottom:4px;padding:4px 6px;font-size:11px;display:flex}.setup-point-icon{text-align:center;width:16px;font-size:12px;font-weight:700}.setup-point-label{color:var(--text);flex:1}.setup-rate-label{color:var(--text-dim);align-items:center;gap:2px;font-size:10px;display:flex}.setup-rate-input{background:var(--bg-dark);border:1px solid var(--border);width:42px;color:var(--text);text-align:center;border-radius:3px;padding:2px 4px;font-size:11px}.setup-rate-input:focus{border-color:var(--accent);outline:none}.setup-remove-btn{color:var(--danger);cursor:pointer;opacity:.5;background:0 0;border:none;padding:0 4px;font-size:13px}.setup-remove-btn:hover{opacity:1}.component-palette{border-bottom:1px solid var(--border);flex-shrink:0;max-height:50vh;padding:8px;overflow-y:auto}.component-palette h3{color:var(--accent);margin-bottom:6px;font-size:13px}.palette-category{margin-bottom:2px}.palette-cat-btn{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:3px;align-items:center;gap:6px;padding:5px 6px;font-size:11px;font-weight:600;display:flex}.palette-cat-btn:hover{background:var(--bg-input)}.palette-cat-arrow{width:10px;color:var(--text-dim);font-size:8px}.palette-cat-count{color:var(--text-dim);margin-left:auto;font-size:9px;font-weight:400}.palette-items{padding:2px 0 4px 8px}.palette-item{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:6px;padding:4px 6px;font-size:11px;transition:all .1s;display:flex}.palette-item:hover{background:var(--bg-input);border-color:var(--border)}.palette-swatch{border:2px solid;border-radius:3px;flex-shrink:0;width:18px;min-width:18px;height:14px}.palette-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.palette-item-size{color:var(--text-dim);white-space:nowrap;font-family:monospace;font-size:9px}.simulator-page{background:var(--bg-dark);flex-direction:column;width:100vw;height:100vh;display:flex}.sim-header{background:var(--bg-panel);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:16px;padding:8px 16px;display:flex}.sim-back-link{color:var(--accent);border:1px solid var(--border);border-radius:4px;flex-shrink:0;padding:4px 10px;font-size:13px;text-decoration:none;transition:all .15s}.sim-back-link:hover{background:var(--accent);color:#fff}.sim-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:16px;font-weight:600;overflow:hidden}.sim-layout-name{color:var(--accent);font-weight:400}.sim-header-controls{flex-shrink:0;align-items:center;gap:16px;display:flex}.sim-heatmap-toggle{color:var(--text-dim);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:flex}.sim-heatmap-toggle input{accent-color:var(--accent)}.sim-shortcut-hint{color:var(--text-dim);opacity:.5;white-space:nowrap;font-size:10px}.sim-body{flex:1;display:flex;overflow:hidden}.sim-sidebar{background:var(--bg-panel);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:12px;width:290px;padding:12px;display:flex;overflow-y:auto}.sim-sidebar-right{border-right:none;border-left:1px solid var(--border);width:260px}.sim-canvas-wrapper{background:var(--canvas-bg);flex:1;position:relative;overflow:hidden}.sim-canvas{cursor:crosshair;width:100%;height:100%;display:block}.sim-canvas-placeholder{text-align:center;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.placeholder-icon{color:#48f3;margin-bottom:12px;font-size:48px}.placeholder-title{color:#dce1f066;margin-bottom:6px;font-size:20px;font-weight:600}.placeholder-subtitle{color:var(--text-dim);font-size:13px}.sim-btn{border:1px solid var(--border);background:var(--bg-input);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:4px;padding:6px 12px;font-size:12px;transition:all .15s}.sim-btn:hover:not(:disabled){border-color:var(--accent);background:#48f3}.sim-btn:disabled{opacity:.4;cursor:not-allowed}.sim-btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.sim-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.sim-btn-danger{border-color:#533}.sim-btn-danger:hover:not(:disabled){background:var(--danger);border-color:var(--danger);color:#fff}.layout-picker h3,.sim-config h3,.layout-info-panel h3{color:var(--accent);margin-bottom:8px;font-size:13px}.picker-row{align-items:center;gap:6px;margin-bottom:8px;display:flex}.picker-select{background:var(--bg-input);border:1px solid var(--border);color:var(--text);border-radius:4px;flex:1;min-width:0;padding:6px 8px;font-size:12px}.picker-select:focus{border-color:var(--accent);outline:none}.picker-error{color:var(--danger);margin-top:4px;font-size:11px}.layout-info-panel{background:#4488ff08;border:1px solid #4488ff1a;border-radius:6px;padding:10px}.layout-info-grid{grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:8px;display:grid}.info-chip{background:var(--bg-input);border-radius:4px;flex-direction:column;align-items:center;padding:4px 2px;display:flex}.info-chip-count{color:var(--text);font-family:monospace;font-size:14px;font-weight:700}.info-chip-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);font-size:8px}.info-chip-spawn .info-chip-count{color:#fa0}.info-chip-exit .info-chip-count{color:#00dc64}.layout-info-size{text-align:center;color:var(--text-dim);margin-bottom:8px;font-family:monospace;font-size:11px}.info-section h4{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin:8px 0 4px;font-size:10px}.info-item{border-radius:3px;align-items:center;gap:6px;padding:3px 4px;font-size:11px;display:flex}.info-item:hover{background:#ffffff08}.info-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.spawn-dot{background:#fa0}.exit-dot{background:#00dc64}.zone-dot{background:var(--accent)}.info-item-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text);flex:1;overflow:hidden}.info-item-detail{color:var(--text-dim);white-space:nowrap;font-family:monospace;font-size:10px}.info-warnings{margin-top:8px}.info-warning{color:#fa0;background:#ffaa0014;border-left:2px solid #fa0;border-radius:2px;margin-bottom:4px;padding:4px 6px;font-size:10px;line-height:1.3}.playback-controls{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:10px 0;display:flex}.playback-row{align-items:center;gap:6px;display:flex}.playback-time-stack{flex:1;min-width:0}.playback-time{color:var(--text);font-family:monospace;font-size:20px;font-weight:700;display:block}.playback-subtime{color:var(--text-dim);margin-top:2px;font-size:10px;display:block}.playback-speed{color:var(--accent);font-size:14px;font-weight:600}.playback-label{color:var(--text-dim);font-size:11px}.speed-buttons{flex-wrap:wrap;gap:3px;display:flex}.speed-btn{border:1px solid var(--border);background:var(--bg-input);color:var(--text-dim);cursor:pointer;border-radius:3px;padding:3px 7px;font-size:10px;transition:all .15s}.speed-btn:disabled{cursor:wait;opacity:.55}.speed-btn:hover{background:#48f3}.speed-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.timeline-bar-panel{background:#4488ff0a;border:1px solid #4488ff26;border-radius:6px;padding:10px}.timeline-bar-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.timeline-bar-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);font-size:11px}.timeline-bar-subtitle{color:var(--text);margin-top:2px;font-family:monospace;font-size:13px}.timeline-phase-chip{color:var(--accent);white-space:nowrap;background:#4488ff1f;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:600}.timeline-track{background:#171a2e;border-radius:999px;height:22px;position:relative;overflow:hidden}.timeline-track.clickable{cursor:pointer}.timeline-track.is-seeking{cursor:wait;opacity:.85}.timeline-scene{background:#ffffff14;border:1px solid #ffffff0f;border-radius:999px;position:absolute;top:3px;bottom:3px}.timeline-scene.active{background:#ffb93c2e;border-color:#ffb93c66}.timeline-progress{background:linear-gradient(90deg,#4488ff59,#4488ffbf);position:absolute;top:0;bottom:0;left:0}.timeline-thumb{background:#fff;border-radius:999px;width:4px;margin-left:-2px;position:absolute;top:2px;bottom:2px;box-shadow:0 0 0 2px #4488ff59}.timeline-labels{color:var(--text-dim);justify-content:space-between;margin-top:6px;font-family:monospace;font-size:10px;display:flex}.timeline-jumps{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.timeline-jump-btn{color:var(--text);cursor:pointer;background:#0c0f1cb3;border:1px solid #4488ff2e;border-radius:999px;padding:4px 8px;font-family:monospace;font-size:10px;transition:background .15s,border-color .15s,color .15s}.timeline-jump-btn:hover:not(:disabled){color:#fff;background:#4488ff29;border-color:#4488ff6b}.timeline-jump-btn:disabled{cursor:wait;opacity:.55}.timeline-event-card{background:#080a1480;border:1px solid #ffffff0f;border-radius:6px;margin-top:8px;padding:8px}.timeline-event-time{color:var(--accent);margin-bottom:2px;font-family:monospace;font-size:10px}.timeline-event-title{color:var(--text);margin-bottom:3px;font-size:11px;font-weight:600}.timeline-event-desc{color:var(--text-dim);font-size:10px;line-height:1.4}.sim-config{padding-top:8px}.config-slider{margin-bottom:10px}.config-slider-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.config-slider-label{color:var(--text-dim);font-size:11px}.config-slider-value{color:var(--accent);font-family:monospace;font-size:11px;font-weight:600}.config-slider input[type=range]{appearance:none;background:var(--border);border-radius:2px;outline:none;width:100%;height:4px}.config-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);cursor:pointer;border-radius:50%;width:14px;height:14px}.stats-panel h3{color:var(--accent);margin-bottom:8px;font-size:13px}.stats-panel h4{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin:12px 0 6px;font-size:10px}.stats-empty{color:var(--text-dim);font-size:12px;font-style:italic}.stats-time{color:var(--text);text-align:center;padding:4px 0 2px;font-family:monospace;font-size:24px;font-weight:700}.stats-phase{text-align:center;color:var(--accent);font-size:12px;font-weight:600}.stats-elapsed{text-align:center;color:var(--text-dim);border-bottom:1px solid var(--border);margin-bottom:8px;padding:4px 0 8px;font-size:10px}.stats-scene-card{background:#4488ff0d;border:1px solid #4488ff1f;border-radius:6px;margin-bottom:8px;padding:8px}.stats-scene-label{color:var(--accent);margin-bottom:4px;font-size:11px;font-weight:600}.stats-scene-desc{color:var(--text-dim);font-size:10px;line-height:1.4}.stats-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.stat-item{background:var(--bg-input);border-radius:4px;padding:6px 8px}.stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px;font-size:9px;display:block}.stat-value{font-family:monospace;font-size:18px;font-weight:700;display:block}.stat-value-blue{color:var(--accent)}.stat-value-green{color:#00dc64}.zone-counts{flex-direction:column;gap:4px;display:flex}.zone-count-row{background:var(--bg-input);border-radius:4px;justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;display:flex}.zone-count-val{color:var(--text);white-space:nowrap;font-family:monospace;font-size:11px;font-weight:600}.zone-densities{flex-direction:column;gap:4px;display:flex}.zone-density-row{align-items:center;gap:6px;font-size:11px;display:flex}.zone-name{text-overflow:ellipsis;white-space:nowrap;width:60px;color:var(--text-dim);font-size:10px;overflow:hidden}.density-bar-wrapper{background:var(--bg-input);border-radius:4px;flex:1;height:8px;overflow:hidden}.density-bar{border-radius:4px;height:100%;transition:width .3s}.zone-density-val{text-align:right;width:36px;font-family:monospace;font-size:10px;font-weight:600}.timeline-summary{background:#080a148c;border:1px solid #ffffff0d;border-radius:6px;flex-direction:column;gap:4px;padding:8px;display:flex}.timeline-summary-time{color:var(--accent);font-family:monospace;font-size:10px}.timeline-summary-phase{color:var(--text);font-size:11px;font-weight:600}.timeline-summary-event{color:var(--text);font-size:10px;line-height:1.4}.timeline-summary-meta{color:var(--text-dim);font-size:10px;line-height:1.4}.timeline-zones{flex-direction:column;gap:6px;margin-top:8px;display:flex}.timeline-zone-card{background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;padding:7px 8px}.timeline-zone-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.timeline-zone-name{color:var(--text);font-size:11px;font-weight:600}.timeline-zone-density{color:var(--accent);font-family:monospace;font-size:10px}.timeline-zone-detail{color:var(--text-dim);font-size:10px;line-height:1.4}.alerts-list{flex-direction:column;gap:3px;max-height:200px;display:flex;overflow-y:auto}.alert-item{border-radius:3px;align-items:flex-start;gap:6px;padding:4px 6px;font-size:10px;display:flex}.alert-warning{background:#ffaa0014;border-left:3px solid #fa0}.alert-danger{background:#ff643214;border-left:3px solid #ff6432}.alert-critical{background:#ff28281f;border-left:3px solid #ff2828}.alert-time{color:var(--text-dim);white-space:nowrap;min-width:32px;font-family:monospace}.alert-msg{color:var(--text);word-break:break-word;line-height:1.3}.heatmap-legend{flex-direction:column;gap:3px;display:flex}.legend-row{color:var(--text-dim);align-items:center;gap:8px;font-size:10px;display:flex}.legend-swatch{border-radius:2px;flex-shrink:0;width:16px;height:10px}.sim-stage-control{border-top:1px solid #ffffff0f;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.sim-stage-control h3{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);margin:0 0 4px;font-size:12px}.stage-empty{color:var(--text-dim);opacity:.7;font-size:11px}.stage-mode{background:#0000004d;border-radius:6px;gap:4px;padding:3px;display:flex}.stage-mode-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:1;padding:5px 8px;font-size:11px;font-weight:600;transition:background .15s,color .15s}.stage-mode-btn:hover{color:#e8ecf6}.stage-mode-btn.active{color:#cfe0ff;background:#4488ff38}.stage-status{background:#ffffff0a;border-radius:4px;align-items:center;gap:6px;padding:6px 8px;font-size:11px;display:flex}.stage-status.on{color:#b4f0c4;background:#3cc8781f}.stage-status.off{color:var(--text-dim)}.stage-dot{background:#888;border-radius:50%;width:8px;height:8px}.stage-status.on .stage-dot{background:#5ce39a;box-shadow:0 0 6px #5ce39a}.stage-track{color:#ffd28a;text-transform:uppercase;font-size:10px;font-weight:600}.stage-field{color:var(--text-dim);flex-direction:column;gap:3px;font-size:10px;display:flex}.stage-field input,.stage-field select{color:#e8ecf6;background:#00000059;border:1px solid #ffffff14;border-radius:4px;padding:5px 6px;font-size:11px}.stage-btn{cursor:pointer;border:none;border-radius:4px;padding:7px 10px;font-size:11px;font-weight:600;transition:background .15s}.stage-btn-drop{color:#c0f0d2;background:#44c87840}.stage-btn-drop:hover{background:#44c87866}.stage-btn-remove{color:#f5c8c8;background:#dc505038}.stage-btn-remove:hover{background:#dc505061}.stage-tracks{grid-template-columns:repeat(2,1fr);gap:4px;display:grid}.stage-track-btn{color:var(--text-dim);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff0f;border-radius:4px;padding:5px 6px;font-size:10px;font-weight:600}.stage-track-btn:hover{color:#e8ecf6;background:#ffffff1a}.stage-track-btn.active{color:#ffd28a;background:#ffb43c38;border-color:#ffb43c80}.stage-hint{color:var(--text-dim);opacity:.75;font-size:10px;font-style:italic;line-height:1.4}.stage-list{background:#00000040;border-radius:4px;flex-direction:column;gap:3px;padding:6px 8px;display:flex}.stage-list-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:2px;font-size:9px}.stage-list-row{color:var(--text-dim);cursor:pointer;align-items:center;gap:6px;padding:2px 0;font-size:11px;display:flex}.stage-list-row.active{color:#ffd28a;font-weight:600}.stage-list-row input{margin:0}.stage-list-name{flex:1}.stage-list-status{letter-spacing:.05em;color:var(--text-dim);background:#ffffff0d;border-radius:3px;padding:1px 5px;font-size:9px;font-weight:700}.stage-list-row.active .stage-list-status{color:#ffd28a;background:#ffb43c40}.alert-clickable{cursor:pointer;transition:background .12s,transform 80ms}.alert-clickable:hover{background:#ffffff14;transform:translate(2px)}.alert-clickable:after{content:"📍";opacity:.4;margin-left:auto;font-size:10px}.alert-clickable:hover:after{opacity:1}
