:root{color:var(--ink);font-family:Segoe UI,system-ui,sans-serif}.hud{font-size:14px;display:flex;position:absolute;top:0}.hud b{font-variant-numeric:tabular-nums}.hud .warn{color:var(--red)}.rail{flex-direction:column;gap:8px;width:240px;font-size:12px;display:flex;position:absolute;top:48px;right:12px}.rail .quest.done{opacity:.5}.controls{flex-direction:column;gap:6px;display:flex;position:absolute;bottom:12px;left:12px}.logline{max-width:60%;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}button.btn{color:var(--ink);cursor:pointer}button.btn:disabled{opacity:.45;cursor:default}.modal-wrap{z-index:30;background:#0304078c;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.panel{width:min(560px,92vw);max-height:86vh;overflow-y:auto}.panel h2{margin:0 0 4px}.panel .portrait{float:right;margin-left:12px;font-size:34px}.panel .body{color:var(--dim);margin-bottom:14px;font-size:14px;line-height:1.5}.option{-webkit-user-select:none;user-select:none;margin-bottom:8px;padding:10px 12px}.option .row{align-items:center;gap:10px;width:100%;display:flex}.option button.choose{all:unset;cursor:pointer;flex:1;font-size:14px}.option .pct{font-variant-numeric:tabular-nums;font-weight:700}.option .pct.green{color:var(--green)}.option .pct.yellow{color:var(--yellow)}.option .pct.red{color:var(--red)}.option .cost{color:var(--dim);font-size:12px}.option.blocked{opacity:.45}.option details{margin-top:6px;font-size:12px}.option details summary{cursor:pointer;color:var(--dim)}.option .mod{color:var(--dim);justify-content:space-between;padding:1px 0 1px 12px;display:flex}.option .mod .amt{font-variant-numeric:tabular-nums}.option .mod .amt.plus{color:var(--green)}.option .mod .amt.minus{color:var(--red)}.outcome .verdict{margin-bottom:6px;font-size:16px;font-weight:700}.outcome .verdict.success{color:var(--green)}.outcome .verdict.failure{color:var(--red)}.outcome ul{color:var(--dim);margin:8px 0;padding-left:18px;font-size:13px}.outcome .roll{color:var(--dim);margin-bottom:10px;font-size:12px}.end{text-align:center;padding:40px 30px}.end h1{margin-bottom:10px;font-size:26px}.end p{color:var(--dim)}.tt-panel{width:min(820px,94vw)}.techtree{align-items:stretch;gap:0;margin:14px 0;display:flex}.tt-root{letter-spacing:2px;text-align:center;color:var(--dim);background:#171106;align-self:center;font-weight:700}.tt-root.on{border-color:var(--accent);color:var(--accent)}.tt-root small{letter-spacing:0;color:var(--dim);font-weight:400;display:block}.tt-branches{flex-direction:column;flex:1;gap:10px;margin-left:22px;display:flex;position:relative}.tt-branches:before{content:"";background:var(--edge);width:2px;position:absolute;top:12%;bottom:12%;left:-12px}.tt-branch{align-items:center;gap:14px;display:flex;position:relative}.tt-branch:before{content:"";background:var(--edge);width:12px;height:2px;margin-left:-12px}.tt-branch .tt-label{text-transform:uppercase;letter-spacing:1px;width:86px;color:var(--dim);font-size:10px}.tt-navigation .tt-label{color:var(--accent)}.tt-survival .tt-label{color:var(--green)}.tt-engineering .tt-label{color:var(--yellow)}.tt-xenology .tt-label{color:var(--xeno)}.tt-node{all:unset;box-sizing:border-box;cursor:pointer;min-width:150px;color:var(--ink);padding:7px 10px;font-size:12px;position:relative;overflow:hidden}.tt-node+.tt-node{margin-left:18px}.tt-node+.tt-node:after{content:"";background:var(--edge);width:18px;height:2px;position:absolute;top:50%;left:-20px}.tt-navigation .tt-node:hover{border-color:var(--accent)}.tt-survival .tt-node:hover{border-color:var(--green)}.tt-engineering .tt-node:hover{border-color:var(--yellow)}.tt-xenology .tt-node:hover{border-color:var(--xeno)}.tt-node .tt-name{display:block;position:relative}.tt-node .tt-cost{color:var(--dim);font-variant-numeric:tabular-nums;font-size:10px;display:block;position:relative}.tt-node .tt-fill{background:rgba(var(--accent-rgb), .14);position:absolute;inset:0 auto 0 0}.tt-node.done{cursor:default;opacity:.75}.tt-navigation .tt-node.done{border-color:var(--accent);background:rgba(var(--accent-rgb), .12)}.tt-survival .tt-node.done{border-color:var(--green);background:#69c46e1f}.tt-engineering .tt-node.done{border-color:var(--yellow);background:#d9b64a1f}.tt-xenology .tt-node.done{border-color:var(--xeno);background:#b48ad81f}.ship-panel{width:min(880px,96vw)}.ship-status{color:var(--dim);flex-wrap:wrap;align-items:stretch;gap:8px;margin-bottom:10px;font-size:12px;display:flex}.ship-status b{color:var(--ink);font-variant-numeric:tabular-nums}.vital{box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);background:linear-gradient(#1b1408,#120d05);flex-direction:column;gap:3px;padding:5px 11px 6px;display:flex}.vital-k{font-family:var(--mono);letter-spacing:2px;color:var(--dim);text-transform:uppercase;font-size:8px}.vital-v{font-family:var(--mono);color:var(--accent);text-shadow:var(--glow);font-variant-numeric:tabular-nums;font-size:15px;line-height:1}.vital-sub{font-family:var(--mono);letter-spacing:1px;color:var(--red);text-transform:uppercase;font-size:8px}.vital.crit .vital-v{color:var(--red);text-shadow:var(--glow-red)}.vital.crit{box-shadow:inset 0 0 0 1px var(--red)}.powerbar{letter-spacing:1px;align-items:center;gap:3px;display:inline-flex}.powerbar .cell{width:7px;height:13px;box-shadow:inset 0 0 0 1px var(--edge);background:#1a1408;display:inline-block}.powerbar .cell.on{background:var(--accent);box-shadow:0 0 5px rgba(var(--accent-rgb), .7)}.assign-hint{color:var(--accent);letter-spacing:.5px;align-self:center;font-size:11px;animation:1.1s steps(2,jump-none) infinite assignpulse}@keyframes assignpulse{0%{opacity:1}to{opacity:.45}}.btn.mini{border-radius:2px;font-size:11px}.deck{width:100%;height:auto;font-family:var(--mono);margin:4px 0 10px;display:block}.dk-bay{cursor:pointer}.dk-floor{fill:#0c0b06}.dk-bay.lit .dk-floor{fill:#161c0f}.dk-bay.wrecked .dk-floor{fill:#1a0d0e}.dk-tex{opacity:.55}.dk-bay.lit .dk-tex{opacity:1}.dk-bay.wrecked .dk-tex{opacity:.9;animation:1.6s steps(2,jump-none) infinite wreckflicker}.dk-plate-line{fill:rgba(var(--accent-rgb), .075)}.dk-wall{fill:none;stroke:var(--edge);stroke-width:2px}.dk-bay.lit .dk-wall{stroke:rgba(var(--accent-rgb), .4)}.dk-bay.wrecked .dk-wall{stroke:var(--red)}.dk-bay:hover .dk-wall{stroke:rgba(var(--accent-rgb), .75)}.dk-bay.sel .dk-wall{stroke:var(--accent);stroke-width:3px}.dk-bay.sel .dk-floor{filter:brightness(1.35)}.deck.assigning .dk-wall{stroke-dasharray:7 5}@keyframes wreckflicker{0%{opacity:.9}to{opacity:.45}}.dk-corr{fill:#090905}.dk-corr-line{stroke:var(--edge);stroke-width:1px;stroke-dasharray:9 9}.dk-hatch{fill:rgba(var(--accent-rgb), .45)}.dk-hull{fill:none;stroke:var(--accent);stroke-width:2.5px;opacity:.7}.dk-hull.crit{stroke:var(--red);opacity:.9}.dk-nacelle{fill:#110f08;stroke:var(--edge);stroke-width:2px}.dk-vent{stroke:var(--edge);stroke-width:2px}.dk-drive.live .dk-vent{stroke:rgba(var(--accent-rgb), .45)}.dk-plume{fill:none}.dk-drive.live .dk-nacelle{stroke:rgba(var(--accent-rgb), .5)}.dk-drive.live .dk-plume{fill:rgba(var(--accent-rgb), .16);animation:.45s steps(2,jump-none) infinite alternate plume}@keyframes plume{0%{opacity:1}to{opacity:.5}}#ui-root .dk-tag,#ui-root .dk-tag text,#ui-root .dk-tex,#ui-root .dk-wall,#ui-root .dk-spine,#ui-root .dk-spine *,#ui-root .dk-hull,#ui-root .dk-drive,#ui-root .dk-drive *{pointer-events:none}#ui-root .dk-led{pointer-events:auto}.dk-name{fill:var(--ink);letter-spacing:1.4px;font-size:13px;font-weight:700}.dk-tag.off .dk-name{fill:var(--dim)}.dk-tag.hurt .dk-name{fill:var(--red)}.dk-crew{fill:var(--ink);opacity:.82;font-size:11.5px}.dk-crew.more{fill:var(--dim)}.dk-flag{fill:var(--red);letter-spacing:1.5px;font-size:10px}.dk-pip{fill:#14120a;stroke:var(--edge);stroke-width:1px}.dk-pip.on{fill:var(--accent);stroke:var(--accent)}.dk-led{fill:#14120a;stroke:var(--edge);stroke-width:1px;cursor:pointer}.dk-led.on{fill:var(--accent);stroke:var(--accent);filter:drop-shadow(0 0 4px var(--accent))}.dk-led:hover{stroke:var(--accent)}.deck-inspect{min-height:44px;box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);font-family:var(--mono);background:linear-gradient(#1b1408,#120d05);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:7px 12px;font-size:11px;display:flex}.deck-inspect.empty{justify-content:center}.deck-inspect.powered{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .5)}.deck-inspect.damaged{box-shadow:inset 0 0 0 1px var(--red)}.di-hint{color:var(--dim);letter-spacing:2px;text-transform:uppercase}.di-id{flex:none;align-items:baseline;gap:7px;display:flex}.di-name{color:var(--accent);letter-spacing:2px;text-transform:uppercase;text-shadow:var(--glow);font-size:13px}.di-lv{color:var(--ink);font-size:11px}.di-state{color:var(--dim);letter-spacing:2px;text-transform:uppercase;font-size:8px}.deck-inspect.damaged .di-state{color:var(--red)}.di-body{border-left:1px solid var(--edge);flex-direction:column;flex:1;gap:2px;min-width:0;padding-left:14px;display:flex}.di-eff{color:var(--ink)}.di-next{color:var(--dim);font-size:10px}.di-acts{flex:none;gap:6px;display:flex}.di-acts .btn.mini{font-family:var(--mono);letter-spacing:.5px;font-size:11px}.di-max{color:var(--dim);letter-spacing:1px;align-self:center}.roster{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.chip{all:unset;box-sizing:border-box;cursor:pointer;flex-direction:column;gap:1px;padding:5px 9px;font-size:12px;display:inline-flex}.chip:hover:not(:disabled),.chip.picked{border-color:var(--accent)}.chip.gone{cursor:default}.chip-meta{color:var(--dim);font-variant-numeric:tabular-nums;font-size:10px}.chip-meta .hurt{color:var(--red);font-style:normal}.tt-status{font-family:var(--mono);box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);background:linear-gradient(#1b1408,#120d05);align-items:baseline;gap:8px;padding:6px 12px 7px;font-size:11px;display:flex}.tt-status.down{box-shadow:inset 0 0 0 1px var(--red)}.tt-rate{color:var(--accent);text-shadow:var(--glow);font-variant-numeric:tabular-nums;font-size:16px;line-height:1}.tt-rate-k{letter-spacing:2px;text-transform:uppercase;color:var(--dim);font-size:8px}.tt-breakdown{color:var(--ink)}.tt-status.down .tt-breakdown{color:var(--red)}.tt-tally{color:var(--dim);letter-spacing:1px;margin-left:auto}.tt-idle{font-family:var(--mono);color:var(--yellow);margin-top:6px;padding:4px 12px 5px;font-size:11px;animation:1.4s steps(2,jump-none) infinite assignpulse;box-shadow:inset 0 0 0 1px #e0b64f73}.tt-cols{align-items:stretch;gap:16px;margin:12px 0;display:flex}.tt-cols .techtree{flex:1;min-width:0;margin:0}.tt-detail{width:268px;font-family:var(--mono);box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);background:linear-gradient(#1b1408,#120d05);flex-direction:column;flex:none;gap:7px;padding:12px 14px 13px;display:flex}.tt-d-branch{letter-spacing:2px;text-transform:uppercase;color:var(--dim);font-size:8px}.tt-navigation.tt-detail .tt-d-branch{color:var(--accent)}.tt-survival.tt-detail .tt-d-branch{color:var(--green)}.tt-engineering.tt-detail .tt-d-branch{color:var(--yellow)}.tt-xenology.tt-detail .tt-d-branch{color:var(--xeno)}.tt-d-name{letter-spacing:1px;color:var(--accent);text-shadow:var(--glow);margin:0;font-size:13px;font-weight:400}.tt-d-desc{color:var(--ink);margin:0;font-size:11px;line-height:1.5}.tt-d-meter{height:7px;box-shadow:inset 0 0 0 1px var(--edge);background:#0d0a04;margin-top:2px}.tt-d-bar{background:var(--accent);height:100%;display:block}.tt-detail.is-done .tt-d-bar{background:var(--green)}.tt-d-nums{color:var(--dim);font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;font-size:10px;display:flex}.tt-d-eta{color:var(--ink)}.tt-d-note{color:var(--dim);font-size:9px;line-height:1.4}.tt-detail .btn.mini{text-align:center;margin-top:auto}.tt-node{font-family:var(--mono)}.tt-node .tt-name{letter-spacing:.5px;font-size:11px}.tt-node.sel{box-shadow:inset 0 0 0 2px var(--accent)}.tt-node.active .tt-cost{color:var(--accent)}:root{--mono:ui-monospace, "Cascadia Mono", Consolas, "JetBrains Mono", monospace}.hud{font-family:var(--mono);align-items:stretch;padding:8px 10px}.hud-cell{border-bottom-width:2px;flex-direction:column;gap:1px;min-width:74px;display:flex}.hud-label{text-transform:uppercase;letter-spacing:1px;color:var(--dim);white-space:nowrap;font-size:9px}.hud-cell b{font-variant-numeric:tabular-nums;font-size:15px;line-height:1.1}.hud-cell.warn{border-color:var(--red)}.hud-cell.warn b{animation:1s steps(2,jump-none) infinite hudblink}@keyframes hudblink{0%{opacity:1}to{opacity:.35}}.hud-meter{background:#1a1408;height:3px;margin-top:2px;display:block}.btn.pending{border-color:var(--accent);color:var(--accent);animation:1.4s steps(2,jump-none) infinite hudblink}.hud-meter span{background:var(--accent);height:100%;display:block}.hud-cell.warn .hud-meter span{background:var(--red)}.hud-mute{white-space:nowrap;align-self:center;margin-left:2px}.hud-mute[aria-pressed=true]{color:var(--dim);border-color:var(--edge)}button.btn{font-family:var(--mono);text-transform:uppercase;letter-spacing:1px;border-bottom-width:3px;font-size:12px}button.btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}button.btn:active:not(:disabled){border-bottom-width:1px}.controls .btn:before{color:var(--accent)}.rail .quest{border-left:4px solid var(--accent);font-family:var(--mono)}.rail .quest .t{text-transform:uppercase;letter-spacing:1px;font-size:10px}.rail .quest .q-desc{color:var(--dim);margin-top:2px}.rail .quest.done{border-left-color:var(--green)}.q-ticks{gap:3px;margin-top:5px;display:flex}.q-ticks i{border:1px solid var(--edge);background:#1a1408;width:14px;height:5px}.q-ticks i.on{background:var(--accent);border-color:var(--accent)}.quest.done .q-ticks i.on{background:var(--green);border-color:var(--green)}.logline{font-family:var(--mono);text-align:left;border-radius:2px;font-size:12px}.lg-prompt{color:var(--accent)}.caret{background:var(--accent);vertical-align:-1px;width:7px;height:11px;margin-left:5px;animation:1s steps(2,jump-none) infinite hudblink;display:inline-block}.end{font-family:var(--mono)}.end-tag{border:2px solid var(--green);color:var(--green);letter-spacing:3px;margin-bottom:14px;padding:3px 12px;font-size:11px;display:inline-block}.end-tag.bad{border-color:var(--red);color:var(--red)}.end h1{text-transform:uppercase;letter-spacing:2px}:root{--chamfer:polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px)}.crt{pointer-events:none;z-index:999;background:repeating-linear-gradient(0deg,#00000029 0 1px,#0000 1px 3px),radial-gradient(#0000 58%,#0204088c 100%);position:fixed;inset:0}.panel{clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge), inset 0 0 0 4px #0a1016e6, inset 0 0 0 5px #27465259;background:linear-gradient(#191307,#110d05);border:none;border-radius:0;padding:26px 28px 22px;animation:.22s steps(4,jump-none) bootup}@keyframes bootup{0%{opacity:0;transform:scaleY(.85)}60%{opacity:.6;transform:scaleY(1.02)}to{opacity:1;transform:scaleY(1)}}.panel h2{font-family:var(--mono);text-transform:uppercase;letter-spacing:3px;color:var(--accent);text-shadow:var(--glow);border-bottom:1px solid var(--edge);margin-bottom:10px;padding-bottom:7px;padding-right:110px;font-size:14px;position:relative}.panel h2:before{content:"▞ ";color:var(--dim);text-shadow:none}.panel h2:after{content:"MYG//SHIP-OS 4.2";letter-spacing:2px;color:var(--dim);text-shadow:none;font-size:8px;position:absolute;bottom:7px;right:0}.panel h1{font-family:var(--mono)}.hud-cell b,.logline,.tt-root.on,.powerbar .cell.on,.assign-hint{text-shadow:var(--glow)}.hud-cell.warn b,.comp-flag,.hurt{text-shadow:var(--glow-red)}.hud{background:0 0;justify-content:center;gap:8px;width:max-content;max-width:96vw;left:50%;right:auto;transform:translate(-50%)}.hud .spacer{flex:0 0 14px}.hud-cell{clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);box-shadow:inset 0 0 0 1px var(--edge);background:linear-gradient(#1b1408,#120d05);border:none;padding:5px 12px 6px}.hud-cell.warn{box-shadow:inset 0 0 0 1px var(--red)}.hud-cell b{color:var(--accent)}.hud-cell.warn b{color:var(--red)}.hud-meter{box-shadow:inset 0 0 0 1px var(--edge);border:none}.hud-meter span{box-shadow:0 0 4px rgba(var(--accent-rgb), .6)}button.btn{clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));box-shadow:inset 0 0 0 1px var(--edge), inset 0 -3px 0 #0000008c;background:linear-gradient(#221a0c,#171106);border:none;border-radius:0;padding:9px 16px 11px}button.btn:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--accent), inset 0 -3px 0 #0000008c, inset 0 0 12px rgba(var(--accent-rgb), .15);text-shadow:var(--glow)}button.btn:active:not(:disabled){box-shadow:inset 0 0 0 1px var(--accent);transform:translateY(2px)}.controls .btn:before{content:"⌁ "}.btn.mini{clip-path:none;box-shadow:inset 0 0 0 1px var(--edge);padding:3px 8px}.rail .quest{clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);box-shadow:inset 0 0 0 1px var(--edge), inset 4px 0 0 var(--accent);background:radial-gradient(3px at 10px 10px,#04050a 98%,#0000),linear-gradient(#171106,#120d05);border:none;border-radius:0;padding:9px 10px 8px 16px;transform:rotate(-.6deg)}.rail .quest:nth-child(2n){transform:rotate(.5deg)}.rail .quest.done{box-shadow:inset 0 0 0 1px var(--edge), inset 4px 0 0 var(--green)}.rail .quest .t{color:var(--accent);text-shadow:var(--glow)}.rail .quest.done .t{color:var(--green)}.rail .quest:after{content:"";background:repeating-linear-gradient(90deg, var(--dim) 0 1px, transparent 1px 3px, var(--dim) 3px 5px, transparent 5px 8px);opacity:.35;height:5px;margin-top:6px;display:block}.logline{clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 100%,0 100%);box-shadow:inset 0 0 0 1px var(--edge);color:var(--accent);background:#0e0b05eb;border:none;padding:6px 16px 7px}.chip{font-family:var(--mono);letter-spacing:.5px;background:linear-gradient(#1b1408,#120d05)}.chip>span:first-child{color:var(--ink);font-size:11px}.chip .chip-meta{letter-spacing:1px;text-transform:uppercase;font-size:9px}.chip.picked{background:linear-gradient(#231a0a,#161005)}.chip.gone{opacity:.35}.tt-node{clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));box-shadow:inset 0 0 0 2px var(--edge);background:linear-gradient(#171106,#120d05);border:none}.tt-navigation .tt-node:hover{box-shadow:inset 0 0 0 2px var(--accent)}.tt-survival .tt-node:hover{box-shadow:inset 0 0 0 2px var(--green)}.tt-engineering .tt-node:hover{box-shadow:inset 0 0 0 2px var(--yellow)}.tt-xenology .tt-node:hover{box-shadow:inset 0 0 0 2px var(--xeno)}.tt-node.active{box-shadow:inset 0 0 0 2px var(--accent), inset 0 0 14px rgba(var(--accent-rgb), .18);animation:none}.tt-node.active .tt-name{text-shadow:var(--glow)}.tt-navigation .tt-node.done{box-shadow:inset 0 0 0 2px var(--accent)}.tt-survival .tt-node.done{box-shadow:inset 0 0 0 2px var(--green)}.tt-engineering .tt-node.done{box-shadow:inset 0 0 0 2px var(--yellow)}.tt-xenology .tt-node.done{box-shadow:inset 0 0 0 2px var(--xeno)}.tt-root{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);box-shadow:inset 0 0 0 2px var(--edge);border:none;padding:18px 16px}.tt-root.on{box-shadow:inset 0 0 0 2px var(--accent), inset 0 0 16px rgba(var(--accent-rgb), .2)}.option{clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));box-shadow:inset 0 0 0 1px var(--edge);background:linear-gradient(#171106,#120d05);border:none;border-radius:0}.option:hover:not(.blocked){box-shadow:inset 0 0 0 1px var(--accent)}.option .pct{font-family:var(--mono);text-shadow:var(--glow)}.option .pct.red{text-shadow:var(--glow-red)}.option .pct.yellow{text-shadow:0 0 6px #d9b64a8c}.chip{clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));box-shadow:inset 0 0 0 1px var(--edge);border:none;border-radius:0}.chip.picked{box-shadow:inset 0 0 0 1px var(--accent), inset 0 0 10px rgba(var(--accent-rgb), .12)}.chip:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--accent)}.end-tag{text-shadow:0 0 8px #69c46e80;transform:rotate(-1.2deg)}.end-tag.bad{text-shadow:var(--glow-red)}:root{--accent:#f2a93c;--accent-rgb:242, 169, 60;--ink:#e6d8bd;--dim:#8f8168;--edge:#4a3b22;--green:#8ecb63;--yellow:#e0b64f;--red:#e0604c;--xeno:#c79ad0;--bg:#120e07ed;--glow:0 0 6px rgba(var(--accent-rgb), .55);--glow-red:0 0 6px #e0604c99}.ship-panel{--accent:#9ed46c;--accent-rgb:158, 212, 108}.powerbar .cell.on,.assign-hint,.rail .quest .t{text-shadow:none}button.btn.primary{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent), inset 0 -3px 0 #00000080;text-shadow:var(--glow);background:linear-gradient(#3d2c10,#2a1e0a)}button.btn.primary:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--accent), inset 0 0 14px rgba(var(--accent-rgb), .25);background:linear-gradient(#4a3512,#33240c)}.topstack{z-index:20;flex-direction:column;align-items:center;gap:6px;width:max-content;max-width:96vw;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}#ui-root .topstack{pointer-events:none}.hud,.ep-banner{position:static;left:auto;right:auto;transform:none}.ep-banner{box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(7px 0,calc(100% - 7px) 0,100% 100%,0 100%);font-family:var(--mono);letter-spacing:1px;color:var(--ink);background:linear-gradient(#1b1408,#120d05);align-items:baseline;gap:10px;padding:3px 14px 4px;font-size:12px;display:flex}.ep-banner .ep-index{color:var(--dim);letter-spacing:2px;font-size:10px}.ep-banner b{color:var(--accent);font-weight:400}.epilogue{text-align:left;margin:8px 0;padding:0;list-style:none}.epilogue li{border-bottom:1px solid var(--edge);color:var(--ink);padding:3px 0}.diff-select{justify-content:center;gap:8px;margin-top:10px;display:flex}.loadout-toggle{font-family:var(--mono);color:var(--dim);cursor:pointer;justify-content:center;align-items:center;gap:8px;margin-top:12px;font-size:12px;display:flex}.loadout-toggle input{accent-color:var(--accent)}.codex{border-top:1px solid var(--edge);margin-top:16px;padding-top:8px}.codex-h{font-family:var(--mono);letter-spacing:2px;text-transform:uppercase;color:var(--dim);margin-bottom:4px;font-size:11px}.codex ul{text-align:left;margin:0;padding:0;list-style:none}.codex li{font-family:var(--mono);color:var(--ink);padding:2px 0;font-size:12px}.codex li:before{content:"› ";color:var(--accent)}.dock-wrap{z-index:30;display:flex;position:absolute;inset:0 auto 0 0}.dock-wrap .panel{box-sizing:border-box;clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%);width:min(440px,46vw);height:100%;max-height:none;box-shadow:inset 0 0 0 1px var(--edge), inset -4px 0 0 #0a1016e6;flex-direction:column;padding:16px 18px 14px;display:flex;overflow:hidden}.dock-scroll{flex:1;min-height:0;padding-right:4px;overflow-y:auto}.dock-actions{border-top:1px solid var(--edge);flex-wrap:wrap;flex:none;gap:8px;margin-top:8px;padding-top:10px;display:flex}.dock-h{font-family:var(--mono);letter-spacing:2px;text-transform:uppercase;color:var(--dim);margin:12px 0 5px;font-size:9px}.gainlog{font-family:var(--mono);margin:6px 0;padding:0;font-size:11px;list-style:none}.gainlog li{color:var(--dim);padding:1px 0}.gainlog li:before{content:"· ";color:var(--accent)}.mgraph{font-family:var(--mono);max-height:176px;margin:2px 0 12px;font-size:10px;overflow-y:auto}.mg-row{flex-wrap:wrap;gap:5px;padding:3px 0 3px 16px;display:flex;position:relative}.mg-row:before{content:"";background:var(--edge);width:1px;position:absolute;top:0;bottom:0;left:5px}.mg-row:first-child:before{top:50%}.mg-row:last-child:before{bottom:50%}.mg-node{box-sizing:border-box;max-width:100%;color:var(--dim);box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(0 0,calc(100% - 5px) 0,100% 5px,100% 100%,5px 100%,0 calc(100% - 5px));background:linear-gradient(#171106,#120d05);align-items:center;gap:6px;padding:3px 8px 4px;display:inline-flex;position:relative}.mg-row .mg-node:first-child:before{content:"";background:var(--edge);width:11px;height:1px;position:absolute;top:50%;left:-11px}.mg-dot{width:6px;height:6px;box-shadow:inset 0 0 0 1px var(--edge);background:#1a1408;flex:none}.mg-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mg-skill{color:var(--dim);letter-spacing:1px;opacity:.7}.mg-node.done{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .4)}.mg-node.done .mg-dot{background:var(--accent);box-shadow:none}.mg-node.here{color:var(--accent);text-shadow:var(--glow);box-shadow:inset 0 0 0 1px var(--accent), inset 0 0 12px rgba(var(--accent-rgb), .15)}.mg-node.here .mg-dot{background:var(--accent);box-shadow:0 0 6px var(--accent);animation:1s steps(2,jump-none) infinite hudblink}.mg-node.comp{box-shadow:inset 0 0 0 1px #e0604cbf}.mg-node.comp .mg-skill{color:var(--red)}.mg-node.comp.here{box-shadow:inset 0 0 0 1px var(--red), inset 0 0 12px #e0604c26}.ccards{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:6px;display:grid}.ccard{font-family:var(--mono);box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));background:linear-gradient(#1b1408,#120d05);flex-direction:column;gap:4px;padding:7px 9px 8px;display:flex}.ccard.pick{cursor:pointer}.ccard.pick:hover{box-shadow:inset 0 0 0 1px var(--accent)}.ccard.picked,.ccard.picked:hover{box-shadow:inset 0 0 0 2px var(--accent), inset 0 0 16px rgba(var(--accent-rgb), .12)}.ccard.unfit{opacity:.4}.ccard.synth{--accent:var(--xeno);--accent-rgb:199, 154, 208}.cc-top{align-items:baseline;gap:5px;display:flex}.cc-sigil{color:var(--accent);text-shadow:var(--glow);font-size:12px}.cc-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.cc-lv{letter-spacing:1px;color:var(--dim);box-shadow:inset 0 0 0 1px var(--edge);flex:none;padding:0 4px 1px;font-size:9px;position:relative;overflow:hidden}.cc-lv i{background:rgba(var(--accent-rgb), .22);position:absolute;inset:0 auto 0 0}.cc-lv b{font-weight:400;position:relative}.cc-lv.max{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cc-lv.up{color:var(--accent);text-shadow:var(--glow);box-shadow:inset 0 0 0 1px var(--accent), 0 0 14px rgba(var(--accent-rgb), .45);animation:.5s steps(3,jump-none) 6 rankup}.cc-lv.up i{background:rgba(var(--accent-rgb), .45)}@keyframes rankup{0%{background:rgba(var(--accent-rgb), .32)}to{background:0 0}}.ccard:has(.cc-lv.up){box-shadow:inset 0 0 0 1px var(--accent), inset 0 0 22px rgba(var(--accent-rgb), .16)}.cc-role{letter-spacing:1px;text-transform:uppercase;color:var(--dim);font-size:8px}.cc-skills{flex-wrap:wrap;gap:4px;margin-top:1px;display:flex}.cc-stat{box-shadow:inset 0 0 0 1px var(--edge);background:#241b0c;align-items:baseline;gap:3px;padding:1px 5px 2px;display:inline-flex}.cc-stat i{letter-spacing:1px;color:var(--dim);font-size:8px;font-style:normal}.cc-stat b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:11px}.cc-stat.on{box-shadow:inset 0 0 0 1px var(--accent)}.cc-stat.on b{color:var(--accent);text-shadow:var(--glow)}.cc-vitals{align-items:center;gap:5px;display:flex}.cc-meter{gap:2px;display:inline-flex}.cc-meter i{width:6px;height:8px;box-shadow:inset 0 0 0 1px var(--edge);background:#1a1408}.cc-meter i.on{background:var(--accent)}.cc-meter.hot i.on{background:var(--red)}.cc-wear{letter-spacing:1px;text-transform:uppercase;color:var(--dim);font-size:8px}.cc-flag{letter-spacing:1px;text-transform:uppercase;color:var(--red);text-shadow:var(--glow-red);margin-left:auto;font-size:8px}.cc-traits{flex-wrap:wrap;gap:3px;display:flex}.cc-trait{letter-spacing:1px;text-transform:uppercase;color:var(--dim);box-shadow:inset 0 0 0 1px var(--edge);padding:1px 4px;font-size:8px}.cc-trait.synth{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.chip-top{align-items:center;gap:6px;display:flex}.chip .cc-lv{font-family:var(--mono)}.frame{z-index:0;--bezel:clamp(0px, calc(50vw - 88.889vh), 340px);position:absolute;inset:0}#ui-root .frame,#ui-root .frame *{pointer-events:none}.fr-side{width:var(--bezel);background: linear-gradient(var(--sheen,200deg), rgba(var(--accent-rgb), .07), transparent 40%),  repeating-linear-gradient(180deg, transparent 0 116px, #0009 116px 118px, rgba(var(--accent-rgb), .06) 118px 119px, transparent 119px 124px),  repeating-linear-gradient(90deg, #e6d8bd04 0 2px, transparent 2px 5px), linear-gradient(var(--lit,90deg), #0b0803, #161006 58%, #1e1709);box-shadow:inset var(--in,-1px) 0 0 rgba(var(--accent-rgb), .3), inset var(--in2,-7px) 0 14px #000000a6;flex-direction:column;align-items:center;gap:18px;padding:26px 0;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}.fr-l{left:0}.fr-r{--lit:270deg;--sheen:160deg;--in:1px;--in2:7px;justify-content:flex-end;right:0}.fr-side:before{content:"";background-image:radial-gradient(circle at 50% 15px, #060402 2px, rgba(var(--accent-rgb), .12) 2.5px, transparent 3px);background-size:100% 62px;width:11px;position:absolute;top:0;bottom:0}.fr-l:before{right:9px}.fr-r:before{left:9px}.fr-side:after{content:"";background:linear-gradient(0deg, rgba(var(--accent-rgb), .05), transparent 70%);height:190px;position:absolute;inset:auto 0 0}.fr-stencil{writing-mode:vertical-rl;font-family:var(--mono);letter-spacing:4px;text-transform:uppercase;color:var(--dim);opacity:.5;white-space:nowrap;font-size:8px}.fr-vent{width:26px;height:96px;box-shadow:inset 0 0 0 1px #000000b3, 0 1px 0 rgba(var(--accent-rgb), .1);background:repeating-linear-gradient(#050301 0 2px,#1a1308 2px 7px);flex:none}.fr-lamps{gap:5px;display:flex}.fr-lamps i{width:5px;height:5px;box-shadow:inset 0 0 0 1px var(--edge);background:#120d05}.fr-lamps i.on{background:var(--accent);opacity:.55;box-shadow:0 0 5px rgba(var(--accent-rgb), .5)}
