html,body{margin:0;height:100%;background:var(--ta-void);color:var(--ta-text-2);font:13px/1.45 var(--ta-font-mono);overflow:hidden}#pg{position:fixed;top:0;right:0;bottom:0;left:0;display:flex}#side{width:300px;flex:none;background:var(--ta-deep);border-right:1px solid var(--ta-seam);display:flex;flex-direction:column;z-index:3}#stage{position:relative;flex:1;min-width:0}#viewport{position:absolute;top:0;right:0;bottom:0;left:0}#overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}#overlay>*{pointer-events:auto}.brand{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:16px 16px 10px;border-bottom:1px solid var(--ta-seam)}.brand .wm{font-family:var(--ta-font-display);font-weight:700;font-size:18px;letter-spacing:.14em;color:var(--ta-text)}.brand .wm b{color:var(--ta-orange);font-weight:700}.brand small{display:block;margin-top:2px;font-family:var(--ta-font-mono);font-size:10px;letter-spacing:var(--ta-track-label);color:var(--ta-steel)}.pg-home{flex:none;margin-top:2px;font-size:10px;letter-spacing:.12em;text-decoration:none;padding:4px 8px;border:1px solid var(--ta-seam-3);color:var(--ta-text-2)}.pg-home:hover{border-color:var(--ta-orange);color:var(--ta-orange-hi)}#search{margin:12px;padding:9px 11px;background:var(--ta-void);border:1.5px solid var(--ta-seam-2);color:var(--ta-text);font:inherit;outline:none;clip-path:polygon(var(--ta-chamfer-s) 0,100% 0,100% calc(100% - var(--ta-chamfer-s)),calc(100% - var(--ta-chamfer-s)) 100%,0 100%,0 var(--ta-chamfer-s))}#search::placeholder{color:var(--ta-dim)}#search:focus{border-color:var(--ta-orange)}#list{flex:1;overflow:auto;padding:0 8px 12px}#list::-webkit-scrollbar{width:8px}#list::-webkit-scrollbar-thumb{background:var(--ta-seam-2)}.grp>.gh{display:flex;justify-content:space-between;align-items:center;padding:8px 8px 6px;margin-top:8px;color:var(--ta-orange);letter-spacing:var(--ta-track-eyebrow);text-transform:uppercase;font-size:11px;cursor:pointer;-webkit-user-select:none;user-select:none}.gh .row-btn{background:none;border:1px solid var(--ta-seam-3);color:var(--ta-steel);font:inherit;font-size:10px;letter-spacing:.1em;padding:1px 6px;cursor:pointer}.gh .row-btn:hover,.gh .row-btn.on{color:var(--ta-orange-hi);border-color:var(--ta-orange)}.item{display:block;width:100%;text-align:left;background:none;border:0;border-left:3px solid transparent;color:var(--ta-text);padding:6px 10px;font:600 13px/1.35 var(--ta-font-body);cursor:pointer}.item:hover{background:var(--ta-plate-3)}.item.sel{background:#ff6a131a;border-left-color:var(--ta-orange);color:var(--ta-hull)}.item small{display:block;color:var(--ta-steel);font:400 10px/1.4 var(--ta-font-mono);letter-spacing:.04em}.side-foot{padding:10px 12px;border-top:1px solid var(--ta-seam);color:var(--ta-steel);font-size:10px;line-height:1.8}kbd{background:var(--ta-plate);border:1px solid var(--ta-seam-2);padding:0 4px;color:var(--ta-text);font:inherit;font-size:10px}.panel{position:absolute;background:#0b0d11e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--ta-seam-2);padding:12px 14px;clip-path:polygon(var(--ta-chamfer-s) 0,100% 0,100% calc(100% - var(--ta-chamfer-s)),calc(100% - var(--ta-chamfer-s)) 100%,0 100%,0 var(--ta-chamfer-s))}#info{top:56px;right:14px;width:280px;border-top:3px solid var(--ta-blue)}#info h3{margin:0 0 10px;font-family:var(--ta-font-display);font-weight:700;font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:var(--ta-text)}#info h3 small{display:block;margin-top:2px;font-family:var(--ta-font-mono);font-weight:400;font-size:11px;letter-spacing:.04em;text-transform:none;color:var(--ta-blue-hi)}#info table{width:100%;border-collapse:collapse;font-size:12px}#info td{padding:3px 0;vertical-align:top;color:var(--ta-text-2)}#info td:first-child{color:var(--ta-steel);width:46%;letter-spacing:.04em}#info tr+tr td{border-top:1px solid var(--ta-seam)}.ok{color:var(--ta-terra)!important}.bad{color:var(--ta-fault-text)!important}#bar{left:50%;transform:translate(-50%);bottom:56px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:center;max-width:calc(100% - 28px);padding:10px 12px}#stage #fx-bar{position:absolute;left:12px;bottom:12px;z-index:8;max-width:calc(100% - 24px);flex-wrap:wrap}#bar .sep{width:1px;height:24px;background:var(--ta-seam-2);margin:0 4px}.pg-btn{background:var(--ta-plate);border:1px solid var(--ta-seam-2);color:var(--ta-text-2);padding:6px 11px;font:500 11px/1.2 var(--ta-font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:border-color var(--ta-dur-quick) ease,color var(--ta-dur-quick) ease,background-color var(--ta-dur-quick) ease;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}.pg-btn:hover{border-color:var(--ta-orange);color:var(--ta-hull)}.pg-btn.on{background:var(--ta-orange);border-color:var(--ta-orange);color:var(--ta-void);font-weight:600}.pg-btn.tog.on{background:#ff6a1324;color:var(--ta-orange-hi)}.planet{display:flex;gap:4px;align-items:center}.pg-stage-lbl{display:inline-flex;align-items:center;font-size:10px;letter-spacing:.1em;color:var(--ta-steel);padding:0 4px}#toast{position:absolute;left:50%;top:56px;transform:translate(-50%);background:var(--ta-hull);color:var(--ta-void);border-left:6px solid var(--ta-orange);padding:8px 16px;font-size:12px;letter-spacing:.06em;opacity:0;transition:opacity .3s;pointer-events:none!important}#toast.show{opacity:1}@media(max-width:800px){#side,#info{width:210px}}.vl-head{margin:12px 0 6px;padding-top:10px;border-top:1px solid var(--ta-seam);font-size:11px;letter-spacing:.12em}.vl-head.ok{color:var(--ta-terra)}.vl-head.bad{color:var(--ta-fault-text)}.vl{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px;max-height:34vh;overflow:auto;font-size:11px;line-height:1.4}.vl li{position:relative;padding-left:24px;color:var(--ta-text-2)}.vl li i{position:absolute;left:0;top:0;width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-weight:700;color:var(--ta-void)}.vl li b{margin-right:4px;letter-spacing:.04em}.vl .sev-error i{background:var(--ta-fault)}.vl .sev-error b{color:var(--ta-fault-text)}.vl .sev-warn i{background:var(--ta-orange-hi)}.vl .sev-warn b{color:var(--ta-orange-hi)}.vl .sev-ok b{color:var(--ta-terra)}.vl .sev-ok{padding-left:0}#lights-panel{top:56px;right:306px;width:336px;max-height:calc(100vh - 134px);display:flex;flex-direction:column;gap:8px;border-top:3px solid var(--ta-orange);z-index:4}#lights-panel[hidden]{display:none!important}.lp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--ta-seam)}.lp-title{font-family:var(--ta-font-display);font-weight:700;font-size:15px;letter-spacing:.1em;color:var(--ta-text)}.lp-sub{display:block;margin-top:2px;font-size:11px;color:var(--ta-blue-hi);letter-spacing:.04em}.lp-head-actions{display:flex;gap:4px;align-items:center}.lp-actions{display:flex;gap:6px;flex-wrap:wrap}.lp-btn-primary{border-color:var(--ta-orange);color:var(--ta-orange-hi)}.lp-btn-primary:hover{background:var(--ta-orange);color:var(--ta-void)}.lp-list{flex:1;min-height:80px;max-height:46vh;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:4px}.lp-list::-webkit-scrollbar{width:6px}.lp-list::-webkit-scrollbar-thumb{background:var(--ta-seam-2)}.lp-empty{padding:14px 10px;background:var(--ta-plate-2);border:1px solid var(--ta-seam);color:var(--ta-steel);font-size:11px;line-height:1.5;text-align:center}.lp-card{background:var(--ta-plate-2);border:1px solid var(--ta-seam-2);padding:8px 10px;display:flex;flex-direction:column;gap:4px;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}.lp-card-head{display:flex;align-items:center;gap:6px;padding-bottom:4px;border-bottom:1px solid var(--ta-seam)}.lp-badge{font-size:10px;font-weight:600;color:var(--ta-orange-hi);letter-spacing:.06em}.lp-id-input{flex:1;min-width:0;background:var(--ta-void);border:1px solid var(--ta-seam-2);color:var(--ta-text);padding:3px 6px;font:500 11px var(--ta-font-mono);outline:none}.lp-id-input:focus{border-color:var(--ta-orange)}.lp-color{width:26px;height:22px;padding:0;background:var(--ta-void);border:1px solid var(--ta-seam-2);cursor:pointer}.lp-remove-btn{padding:3px 7px;font-size:10px;color:var(--ta-fault-text);border-color:var(--ta-seam-2)}.lp-remove-btn:hover{border-color:var(--ta-fault);color:var(--ta-fault-text);background:#ff3b3b1f}.lp-sec-lbl{margin-top:4px;font-size:9px;letter-spacing:var(--ta-track-label);color:var(--ta-steel);text-transform:uppercase}.lp-row{display:grid;grid-template-columns:36px 1fr 56px;align-items:center;gap:6px}.lp-lbl{font-size:10px;color:var(--ta-text-3);letter-spacing:.04em}.lp-range{width:100%;accent-color:var(--ta-orange);cursor:pointer;margin:0}.lp-num{width:100%;box-sizing:border-box;background:var(--ta-void);border:1px solid var(--ta-seam-2);color:var(--ta-text);padding:2px 4px;font:11px var(--ta-font-mono);text-align:right;outline:none}.lp-num:focus{border-color:var(--ta-orange)}.lp-code-wrap{border-top:1px solid var(--ta-seam);padding-top:6px;display:flex;flex-direction:column;gap:4px}.lp-code-toggle{background:none;border:0;color:var(--ta-blue-hi);font:500 11px var(--ta-font-mono);letter-spacing:.06em;text-align:left;padding:2px 0;cursor:pointer}.lp-code-toggle:hover{color:var(--ta-hull)}.lp-code{margin:0;padding:8px;max-height:140px;overflow:auto;background:var(--ta-void);border:1px solid var(--ta-seam-2);color:var(--ta-text-2);font:10px/1.4 var(--ta-font-mono);white-space:pre}@media(max-width:1100px){#lights-panel{right:14px}}#fauna-panel{top:48px;left:14px;width:336px;display:flex;flex-direction:column;gap:8px;border-top:3px solid var(--ta-blue);z-index:4}#march-panel{left:14px;bottom:118px;width:420px;display:flex;flex-direction:column;gap:8px;border-top:3px solid var(--ta-orange);z-index:4}.fp-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--ta-seam)}.fp-title{font-family:var(--ta-font-display);font-weight:700;font-size:13px;letter-spacing:.1em;color:var(--ta-text)}.fp-badge{font-size:10px;font-weight:600;padding:2px 7px;border:1px solid var(--ta-seam-3);color:var(--ta-terra);background:var(--ta-plate-2);letter-spacing:.08em}.fp-badge.aggro{border-color:var(--ta-fault);color:var(--ta-fault-text)}.fp-scenes{display:flex;gap:4px;flex-wrap:wrap}.fp-scene-btn{padding:5px 8px;font-size:10px}.fp-body{display:flex;flex-direction:column;gap:7px;padding-top:4px;border-top:1px solid var(--ta-seam)}.fp-body[hidden]{display:none!important}.fp-controls,.fp-transport{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.fp-seed-lbl{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--ta-steel);letter-spacing:.08em}.fp-seed-input{width:68px;background:var(--ta-void);border:1px solid var(--ta-seam-2);color:var(--ta-text);padding:4px 6px;font:500 11px var(--ta-font-mono);outline:none}.fp-seed-input:focus{border-color:var(--ta-orange)}.fp-acid-btn{border-color:var(--ta-terra);color:var(--ta-terra)}.fp-stats{display:flex;flex-direction:column;gap:4px;padding:7px 8px;background:var(--ta-plate-2);border:1px solid var(--ta-seam);font-size:11px}.fp-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px;color:var(--ta-steel);font-size:10px;letter-spacing:.06em}.fp-stat-grid b{color:var(--ta-text)}.fp-hive-row{display:flex;justify-content:space-between;gap:6px;padding-top:4px;border-top:1px solid var(--ta-seam);font-size:10px;color:var(--ta-text-2)}.fp-hive-row b{color:var(--ta-blue-hi)}.is-dock-hidden,.pg-dock-show[hidden]{display:none!important}#pg-show-bar{position:absolute;top:14px;left:50%;transform:translate(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:4px;z-index:7;pointer-events:auto;max-width:calc(100% - 16px)}#pg-show-bar:not(:has(.pg-dock-show:not([hidden]))){display:none}a.wm{color:inherit;text-decoration:none;cursor:pointer}a.wm:hover,a.wm:hover b{color:var(--ta-orange-hi)}a.wm:focus-visible{outline:1px solid var(--ta-orange);outline-offset:3px}.cat-toggle{display:flex;flex:1;align-items:center;gap:6px;background:none;border:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;padding:0;text-align:left}.cat-toggle:hover{color:var(--ta-orange-hi)}.cat-chevron{display:inline-block;width:1em;color:var(--ta-steel)}.cat-count{color:var(--ta-steel)}.cat-body[hidden]{display:none!important}.side-tabs{display:flex;flex:none;flex-wrap:wrap;gap:4px;padding:10px 12px;border-bottom:1px solid var(--ta-seam)}.side-pane{flex:1;min-width:0;min-height:0}.side-pane[hidden]{display:none!important}.side-units{display:flex;flex-direction:column;overflow:hidden}#side #list{min-height:0}.side-pane[data-side-pane=hive],.side-pane[data-side-pane=march]{overflow:auto}#side #fauna-panel,#side #march-panel{position:static;inset:auto;width:auto;z-index:auto;border:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;clip-path:none;padding:8px 10px 16px}#bar{flex-direction:column;align-items:stretch;gap:8px;width:min(860px,calc(100% - 28px))}.bar-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.bar-tabs{display:flex;gap:4px;flex-wrap:wrap}.bar-page{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-start}.bar-page[hidden]{display:none!important}.info-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;position:sticky;top:0;z-index:1;margin:-12px -14px 10px;padding:12px 14px 8px;background:#0b0d11f5}.info-head h3{flex:1;min-width:0}#info{max-height:calc(100vh - 80px);overflow:auto}#info::-webkit-scrollbar{width:8px}#info::-webkit-scrollbar-thumb{background:var(--ta-seam-2)}.fp-head-actions{display:flex;align-items:center;gap:6px}.fp-attack-direction{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px;padding:6px;border:1px solid var(--ta-seam)}.fp-attack-direction legend{color:var(--ta-text-3);font-size:10px}.fp-attack-choice{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.fp-attack-choice input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:10px;height:10px;margin:0;border:1px solid currentColor;clip-path:polygon(2px 0,100% 0,100% calc(100% - 2px),calc(100% - 2px) 100%,0 100%,0 2px)}.fp-attack-choice input:checked{background:currentColor;box-shadow:inset 0 0 0 2px var(--ta-orange)}.fp-attack-choice:focus-within{outline:1px solid var(--ta-blue);outline-offset:2px}.fp-animation-states{margin-top:8px;color:var(--ta-text-3);font-size:10px;line-height:1.6}
