:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e8f1ec;--base:#10191d;--panel:#17262b;--deep:#101e23;--line:#324b4c;--muted:#a5bbb7;--cyan:#84e7d6;--amber:#ffc583;--red:#ff9a87;--mono:"SFMono-Regular", Consolas, monospace;background:#10191d;font:500 16px/1.45 Avenir Next,Avenir,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}body{background:radial-gradient(ellipse at 0 0, #273b39, transparent 46%), var(--base);min-height:100vh;margin:0}h1,h2,h3,p{margin:0}a,button{color:inherit}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.47;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--amber);outline-offset:2px}main{width:min(1100px,100% - 2.5rem);margin:0 auto;padding:1.3rem 0 2.5rem}.mast{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.2rem;padding-bottom:.9rem;display:flex}.back{color:var(--muted);font-size:.78rem;text-decoration:none}.back:hover{color:var(--cyan)}.mode-link{color:var(--cyan);margin:.18rem .6rem 0 0;display:inline-block}.kicker,.micro{color:var(--cyan);font:700 .64rem/1.2 var(--mono);letter-spacing:.13em}.kicker{align-items:center;gap:.46rem;margin-top:.58rem;display:flex}.kicker span{background:var(--cyan);border-radius:50%;width:.39rem;height:.39rem;box-shadow:0 0 11px #84e7d66d}.kicker i{background:#84e7d66d;width:1rem;height:1px}h1{letter-spacing:-.084em;margin:.19rem 0 .32rem;font-size:clamp(2.45rem,6vw,4.6rem);font-weight:780;line-height:.99}h1 em{color:var(--cyan);font-style:normal}.deck{color:var(--muted);font-size:.88rem}.readouts{border:1px solid var(--line);background:#101b1e;flex:none;display:flex}.readouts>div{align-content:center;min-width:5.5rem;padding:.5rem .7rem .45rem;display:grid}.readouts>div+div{border-left:1px solid var(--line)}.readouts small{color:var(--muted);font:700 .59rem var(--mono);letter-spacing:.1em}.readouts b{color:var(--cyan);font:750 1.36rem/1.12 var(--mono);white-space:nowrap}.readouts b[data-low=true]{color:var(--red)}.readouts sub{color:var(--muted);vertical-align:baseline;font-size:.58rem}.layout{grid-template-columns:minmax(0,1fr) minmax(16rem,.48fr);align-items:start;gap:1.1rem;display:grid}.yard-panel,.orders{min-width:0}.yard-head{justify-content:space-between;align-items:end;gap:.35rem;margin-bottom:.32rem;display:flex}h2{letter-spacing:-.04em;margin-top:.12rem;font-size:1.35rem;line-height:1.13}.phase-pill{color:var(--amber);white-space:nowrap;background:#362d25;border:1px solid #665342;padding:.16rem .39rem;font-size:.66rem;font-weight:750}[data-phase=wave] .phase-pill,[data-phase=won] .phase-pill{color:var(--cyan);background:#244240;border-color:#487772}[data-phase=lost] .phase-pill{color:var(--red);background:#412a2a;border-color:#795255}.toolbar{align-items:center;gap:.5rem;margin:.4rem 0 .45rem;display:flex}.utilities{gap:.35rem;margin-left:auto;display:flex}.toolbar button,.spur-controls button,.detail-actions button{border:1px solid var(--line);white-space:nowrap;background:#213237;min-height:2.4rem;padding:.35rem .64rem;font-size:.76rem;font-weight:750}.toolbar .primary{color:#122927;background:var(--cyan);border-color:#b3ffee;min-width:7rem}.toolbar button:hover:not(:disabled),.detail-actions button:hover:not(:disabled){border-color:var(--cyan)}.toolbar .primary:hover:not(:disabled){background:#a7f7e9}.spur-controls{flex-wrap:wrap;gap:.35rem;display:flex}.spur-controls button[aria-pressed=true]{color:var(--cyan);background:#284e49;border-color:#569487}.spur-controls button:not(:disabled):hover{border-color:var(--cyan)}.spur-note{color:var(--muted);margin:.2rem 0 .4rem;font-size:.72rem}#speed[aria-pressed=true]{color:var(--cyan);border-color:#569487}#remaining{white-space:nowrap;letter-spacing:.02em;color:var(--muted)}#board{isolation:isolate;aspect-ratio:9/7;background:#14272b;border:1px solid #598083;position:relative;overflow:hidden;box-shadow:0 16px 30px #0005}#tile-grid,#yard-art{width:100%;height:100%;position:absolute;inset:0}#tile-grid{grid-template-rows:repeat(7,minmax(0,1fr));grid-template-columns:repeat(9,minmax(0,1fr));display:grid}#yard-art{pointer-events:none}.tile{background:radial-gradient(circle at 25% 25%,#30484a,#253b3e 60%);border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative;box-shadow:inset -1px -1px #091e23a0,inset 1px 1px #4a646349}.tile:nth-child(2n){background:radial-gradient(circle at 25% 25%,#2e4648,#23383b 60%)}.tile[data-terrain=ridge],.tile[data-terrain=sealed],.tile[data-terrain=tunnel-closed]{background:repeating-linear-gradient(-42deg,#3a4540 0 7px,#27322e 7px 14px);box-shadow:inset 0 0 0 3px #4b5650,inset 0 0 0 5px #1a2728}.tile[data-terrain=tunnel-closed]{box-shadow:inset 0 0 0 2px var(--amber), inset 0 0 0 4px #1a2728}.tile[data-terrain=tunnel]{background:repeating-linear-gradient(90deg,#223a38 0 8px,#405449 8px 10px);box-shadow:inset 0 0 0 2px #78baae}.tile[data-terrain=crossing]{background:linear-gradient(90deg,#9a774748 0 10%,#0000 10% 90%,#9a774748 90%),#3c443b;box-shadow:inset 0 0 0 1px #a67e5057}.tile[data-terrain=junction-open],.tile[data-terrain=junction-closed]{box-shadow:inset 0 0 0 2px var(--cyan);background:repeating-linear-gradient(90deg,#233b38 0 8px,#527165 8px 11px)}.tile[data-terrain=junction-closed]{box-shadow:inset 0 0 0 2px var(--amber);background:repeating-linear-gradient(-42deg,#302a26 0 7px,#675140 7px 10px)}.tile[data-terrain=north]{background:#284e49}.tile[data-terrain=south]{background:#564734}.tile[data-terrain=spur-entry],.tile[data-terrain=spur-track]{background:repeating-linear-gradient(0deg,#294747 0 6px,#3c5651 6px 9px)}.tile[data-terrain=spur-entry]{box-shadow:inset 0 0 0 2px #78baae}.tile[data-terrain=core]{background:#355651;box-shadow:inset 0 0 0 4px #193b39,inset 0 0 0 6px #658c7e}.tile[data-placed=true]{background:radial-gradient(circle,#31494a,#1c2c32)}.tile[data-terrain=open]:hover,.tile[data-terrain=crossing]:hover{box-shadow:inset 0 0 0 2px #afe2d9}.tile[data-inspected=true]{box-shadow:inset 0 0 0 2px #efd1a4}.tile[data-invalid=true]{box-shadow:inset 0 0 0 2px var(--red);background-color:#59332d}.tile:focus-visible{z-index:1;outline-offset:-3px}.tile-coord{color:#bbcecb;opacity:.75;font:700 clamp(.49rem, 1.2vw, .66rem)/1 var(--mono);pointer-events:none;position:absolute;top:.14rem;left:.22rem}.tile[data-terrain=ridge] .tile-coord{opacity:.92}.tile-mark{z-index:1;color:#dcf5ee;font:800 clamp(.48rem, 1.3vw, .66rem)/1 var(--mono);text-shadow:0 1px 3px #16262a;position:absolute;bottom:.15rem}.tile-mark[data-side=tunnel-closed],.tile-mark[data-side=junction-closed]{color:var(--amber)}.tile-mark[data-side=south]{color:#ffe0ac}.tile-mark[data-side=crossing]{color:#edcb94;opacity:.7}.tile .glyph{z-index:1;filter:drop-shadow(0 2px 1px #091318);pointer-events:none;width:58%;height:60%;position:relative}.tile .rank{font:800 .54rem var(--mono);color:var(--amber);position:absolute;bottom:.11rem;right:.18rem}.track-strip{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem;padding-top:.47rem;font-size:.76rem;display:flex}.track-strip span{white-space:nowrap}.track-strip i{border-radius:50%;width:.36rem;height:.36rem;margin-right:.15rem;display:inline-block}.track-strip b{color:#e5f3ee;font-family:var(--mono)}.north-dot{background:var(--cyan)}.south-dot{background:var(--amber)}.track-strip .track-total{margin-left:auto}.preview-line{color:#d5c4a4;min-height:1.28rem;padding-top:.12rem;font-size:.73rem}.status{min-height:1.8em;color:var(--muted);margin-top:.22rem;font-size:.76rem}.status[data-tone=good]{color:var(--cyan)}.status[data-tone=bad]{color:var(--red)}.orders{gap:.67rem;display:grid}.rack,.dispatch{border:1px solid var(--line);background:var(--panel);padding:.8rem}.rack{box-shadow:inset 0 2px #56857b}.dispatch{background:#1e2828}.section-copy{color:var(--muted);margin-top:.24rem;font-size:.74rem}.piece-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.32rem;margin-top:.57rem;display:grid}.piece-card{text-align:left;background:linear-gradient(140deg,#2b4140,#213234);border:1px solid #496060;grid-template-columns:1.2rem minmax(0,1fr) auto;align-items:center;gap:.27rem;min-width:0;min-height:3.35rem;padding:.36rem;font-size:.76rem;font-weight:770;display:grid}.piece-card .glyph{width:1.2rem;height:1.4rem}.piece-card small{color:var(--amber);font:750 .72rem var(--mono)}.piece-card[aria-pressed=true]{color:#d8fff6;border-color:var(--cyan);background:#30504b;box-shadow:inset 0 -2px #6cbda8}.piece-card[data-affordable=false] small{color:var(--muted)}.piece-card:hover:not(:disabled){border-color:var(--cyan)}.detail{background:#142428;border-left:2px solid #699e91;min-height:4.1rem;margin-top:.62rem;padding:.51rem .6rem}.detail h3{font-size:.84rem;line-height:1.24}.detail p{color:var(--muted);margin-top:.16rem;font-size:.73rem}.detail-actions{gap:.32rem;display:flex}.detail-actions button{min-height:2rem;margin-top:.38rem;padding:.21rem .44rem}.dispatch-roster{flex-wrap:wrap;gap:.24rem;margin-top:.45rem;display:flex}.dispatch-roster span{color:#e0e3d4;font:650 .64rem var(--mono);background:#2b312b;border:1px solid #5b5d4b;padding:.14rem .3rem}.dispatch-roster [data-kind=drone]{color:var(--cyan);border-color:#5b8e81}.dispatch-roster [data-kind=breaker]{color:var(--amber);border-color:#b4865b}.outcome{text-align:center;border:1px solid var(--cyan);pointer-events:none;z-index:2;background:#13262bf5;width:min(88%,20rem);padding:.9rem 1rem;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 10px 33px #000a}.outcome h2{margin-block:.18rem .22rem;font-size:clamp(1.8rem,6vw,3rem)}.outcome p{color:var(--muted);font-size:.76rem}[data-phase=lost] .outcome{border-color:var(--red)}.track-bed{fill:none;stroke:#111f23;stroke-width:24px;stroke-linecap:round;stroke-linejoin:round;opacity:.92}.route{fill:none;stroke-width:9px;stroke-linecap:round;stroke-linejoin:round}.route.north{stroke:#85dbca}.route.south{stroke:#eab781;stroke-width:5px;stroke-dasharray:15 9}.route.before{stroke:#b5bbad;stroke-width:5px;stroke-dasharray:7 11;opacity:.7}.route.after{stroke:#fff3b0;stroke-width:7px;stroke-dasharray:13 10}.route.flight{stroke:#b5d9ed;stroke-width:4px;stroke-dasharray:6 12;opacity:.68}.pulse{transform-box:fill-box;animation:.24s ease-out forwards pulse}@keyframes pulse{0%{opacity:.92}to{opacity:0}}@media (prefers-reduced-motion:reduce){.pulse{opacity:.55;animation:none}}@media (width<=780px){main{width:min(620px,100% - 1.15rem);padding-block:.8rem 1.5rem}.layout{grid-template-columns:minmax(0,1fr);gap:.45rem}.mast{margin-bottom:.63rem;padding-bottom:.62rem}.piece-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.piece-card{min-height:3.05rem}}@media (width<=500px){main{width:calc(100% - .9rem);padding-top:.52rem}.mast{gap:.48rem;margin-bottom:.52rem;padding-bottom:.44rem;display:grid}.back{font-size:.68rem}.kicker{margin-top:.29rem;font-size:.55rem}h1{margin-block:.15rem .19rem;font-size:clamp(2.05rem,8vw,2.55rem)}.deck{font-size:.72rem}.readouts{width:100%}.readouts>div{flex:1;min-width:0;padding:.24rem .44rem .25rem}.readouts small{font-size:.53rem}.readouts b{font-size:1.05rem}.yard-head h2{font-size:1.15rem}.toolbar{gap:.27rem;margin-block:.28rem .31rem}.toolbar button,.spur-controls button{min-height:2.15rem;padding:.22rem .46rem;font-size:.69rem}.toolbar .primary{min-width:5.35rem}.utilities{gap:.22rem}#remaining{font-size:.6rem}.track-strip{gap:.35rem;font-size:.68rem}.preview-line,.spur-note,.status{font-size:.67rem}.rack,.dispatch{padding:.58rem}.piece-card{grid-template-columns:1fr auto;gap:.13rem;padding:.29rem;font-size:.61rem;line-height:1.14}.piece-card .glyph{width:.98rem;height:1.03rem}.piece-card .piece-name{grid-area:2/1/auto/-1}.piece-card small{font-size:.6rem}}.dig-controls button,.junction-controls button{min-height:44px}
