@font-face{font-family:Interface;src:local('Inter'),local('Aptos'),local('Segoe UI');font-display:swap}
:root{color-scheme:dark;--bg:#0d1318;--panel:#131c23;--panel-light:#19252d;--line:#2b373e;--text:#e7ebec;--muted:#91a1aa;--orange:#f4a34c;--orange-light:#ffbd76;--teal:#79c6bd;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--radius:8px;font-family:Interface,'Segoe UI',sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,a,input{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--orange);outline-offset:4px}button{border:0}a{color:inherit}button svg{width:22px;height:22px;flex-shrink:0}button:disabled:not(.component-button){opacity:.4}button:not(:disabled){-webkit-tap-highlight-color:transparent}h1,h2,p{margin:0}[hidden]{display:none!important}.game-shell{width:100%;max-width:1800px;margin:auto;padding:0 34px}.topbar{height:92px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:18px;letter-spacing:2px;font-weight:800;line-height:1.05}.brand svg{width:44px;height:44px;color:var(--orange)}.brand-light{display:block;font-size:12px;letter-spacing:4px;font-weight:500;margin-top:6px;color:#b2bfc5}.session-label{font:12px var(--mono);letter-spacing:1.5px;color:var(--muted);margin-left:22px}.session-label span{margin:0 15px;color:#50616b}.top-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.wallet{display:flex;gap:9px;align-items:center;margin-right:16px}.wallet strong{font:600 23px var(--mono);font-variant-numeric:tabular-nums}.wallet-label{font-size:13px;color:var(--muted)}.credit-icon{display:grid;place-items:center;border:1px solid #866445;color:var(--orange);border-radius:50%;width:25px;height:25px;font-size:18px}.icon-button{height:40px;width:40px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:6px}.icon-button:hover{color:var(--text);background:var(--panel-light);border-color:var(--line)}.workspace{display:grid;grid-template-columns:224px minmax(340px,1fr) 280px;gap:24px;padding:28px 0 22px;min-height:calc(100svh - 142px)}.mission-panel{display:flex;flex-direction:column;padding:7px 0 0}.section-kicker{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font:12px var(--mono);font-weight:500;letter-spacing:1.4px}.section-kicker>span{color:#60717a;letter-spacing:.5px}h1{font-size:31px;font-weight:600;letter-spacing:-1px;margin-top:20px;line-height:1.2}h1 span{font-weight:400;color:#93a3ac}.ship-description{font-size:14px;color:var(--muted);margin-top:9px}.contract-tags{display:flex;gap:8px;margin-top:20px}.contract-tags span{border:1px solid #344047;border-radius:4px;color:#a9b5bb;font:12px var(--mono);letter-spacing:.5px;padding:5px 8px}.mission-separator{height:1px;background:var(--line);margin:26px 0}.label-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--muted)}.label-row strong{font:13px var(--mono);color:var(--text)}.progress-track{height:4px;border-radius:5px;background:#27323a;margin:12px 0 31px;overflow:hidden}.progress-track i{display:block;background:var(--orange);width:0;height:100%;transition:width .3s}.component-title{margin-bottom:14px}.component-list{display:flex;flex-direction:column;gap:7px}.component-button{display:flex;align-items:center;gap:11px;width:100%;min-height:64px;text-align:left;padding:11px 10px;background:transparent;border:1px solid transparent;border-radius:7px;color:#aab7bd;transition:.15s}.component-button:hover{background:var(--panel-light)}.component-button.selected{background:#2b2723;border-color:#6b5137;color:var(--orange-light)}.part-symbol{font:12px var(--mono);border:1px solid #42505a;border-radius:5px;width:27px;height:30px;display:grid;place-items:center}.selected .part-symbol{border-color:#876544;color:var(--orange)}.component-button strong{display:block;font-size:13px;font-weight:500}.component-button small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.part-check{font-size:23px;margin-left:auto;line-height:1;color:#66777f}.component-button.recovered .part-check{font-size:16px;color:var(--teal)}.component-button.recovered{opacity:.65}.objective{display:flex;gap:10px;margin-top:23px;border-top:1px solid var(--line);padding-top:22px;align-items:flex-start}.objective-number{flex-shrink:0;border:1px solid #51636d;border-radius:50%;height:17px;width:17px;display:grid;place-items:center;font:12px var(--mono);color:#8a9da7;margin-top:2px}.objective p{font-size:13px;line-height:1.7;color:#aab8be}.mission-bottom{margin-top:auto;padding:35px 0 10px}.mission-bottom>span{font:12px var(--mono);letter-spacing:1.7px;color:#647780}.mission-bottom strong{display:block;font-size:16px;font-weight:500;color:#aab8bf;margin:8px 0}.mission-bottom i{font:12px var(--mono);margin-left:10px;color:#62747e}.mission-bottom small{font-size:12px;color:#63737d}.bay{position:relative;min-height:610px;overflow:hidden;border:1px solid #34414a;border-radius:10px;background:radial-gradient(ellipse at 50% 42%,#24323b 0%,#19262e 42%,#111c24 100%);display:flex;flex-direction:column}.bay::before{content:'';position:absolute;inset:0;background-image:linear-gradient(#73859308 1px,transparent 1px),linear-gradient(90deg,#73859308 1px,transparent 1px);background-size:36px 36px;pointer-events:none}.bay-top{position:absolute;top:23px;left:22px;right:22px;display:flex;justify-content:space-between;align-items:center;z-index:2;color:#a8b8c2;font:12px var(--mono);letter-spacing:1.2px;pointer-events:none}.bay-top>div{display:flex;align-items:center;gap:9px}.bay-indicator{height:5px;width:5px;background:var(--teal);box-shadow:0 0 10px #79c6bd66}.bay-number{color:#617783}.bay-watermark{position:absolute;font:150px var(--mono);font-weight:600;color:#879ca209;left:24px;top:54px;pointer-events:none}.canvas-wrap{position:absolute;inset:48px 0 102px}canvas{width:100%;height:100%;display:block;touch-action:none;user-select:none;cursor:crosshair}.bay-coordinate{position:absolute;color:#536b79;font:12px/1.8 var(--mono);letter-spacing:1px;bottom:145px;pointer-events:none}.coord-left{left:22px}.coord-right{right:22px;text-align:right}.bay-hint{position:absolute;bottom:100px;left:14px;right:14px;text-align:center;font-size:12px;color:#90a2ad;pointer-events:none}.crosshair-icon{color:var(--orange);margin-right:6px;font-size:17px}.tool-strip{display:flex;align-items:center;gap:13px;position:absolute;left:18px;right:18px;bottom:17px;background:#0e181ed9;border:1px solid #34434c;border-radius:7px;padding:15px 14px;min-height:69px;backdrop-filter:blur(10px)}.tool-emblem{width:37px;height:37px;border:1px solid #584733;background:#29251e;color:var(--orange);border-radius:5px;display:grid;place-items:center}.tool-emblem svg{height:24px;width:24px}.tool-strip small{display:block;font:12px var(--mono);letter-spacing:1.1px;color:#7c939f}.tool-strip strong{font-size:13px;font-weight:500;display:block;margin-top:5px}.tool-strip strong span{font:12px var(--mono);margin-left:6px;color:var(--orange)}.tool-time{margin-left:auto;text-align:right}.tool-time strong{font:14px var(--mono);margin:0 0 5px}.tool-time small{font:12px Interface,'Segoe UI',sans-serif;letter-spacing:0}.control-panel{display:flex;flex-direction:column;gap:16px}.inspector{border:1px solid var(--line);border-radius:9px;padding:22px 19px;background:linear-gradient(135deg,#1d2830,#151e25)}.inspect-heading{margin:24px 0 13px}.inspect-heading h2{font-size:20px;font-weight:500;letter-spacing:-.5px;line-height:1.35;margin-bottom:12px}.status-badge{font:12px var(--mono);letter-spacing:1px;display:inline-block;border:1px solid #576049;color:#bbbf8f;background:#a5aa6520;padding:5px 7px;border-radius:3px}.status-badge.safe{color:var(--teal);border-color:#45675f;background:#4a887722}.status-badge.warning{color:var(--orange);border-color:#7b5c3e;background:#a86a2820}.inspector>p{font-size:13px;line-height:1.75;color:#9aadb7;min-height:66px}.fastener-row{display:flex;justify-content:space-between;align-items:center;margin-top:17px;font-size:12px;color:#91a6b2}.fastener-dots{display:flex;gap:5px}.fastener-dots i{height:13px;width:13px;border:1px solid #66747c;border-radius:3px;display:block;background:#303d46}.fastener-dots i.done{background:var(--teal);border-color:var(--teal)}.value-row{display:flex;justify-content:space-between;align-items:center;padding:19px 0;margin:19px 0 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.value-row strong{font:19px var(--mono);color:var(--text)}.value-row small{font-size:12px;color:var(--muted)}.primary-button{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--orange);color:#252019;border:1px solid #ffc17d;border-radius:5px;padding:14px 15px;width:100%;min-height:48px;font-size:13px;font-weight:650;text-align:left;transition:background .15s}.primary-button:hover{background:var(--orange-light)}.hold-button{position:relative;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.hold-button>span{z-index:1;position:relative;pointer-events:none}.hold-button>i{position:absolute;inset:0;background:#ffffff66;transform:scaleX(0);transform-origin:left;pointer-events:none}.hold-button.working{background:#d78b3b}.button-icon{font-size:25px;line-height:15px}.hold-note{display:block;font-size:12px;color:#82959f;text-align:center;margin-top:10px}.power-warning{font-size:12px;line-height:1.5;color:var(--orange-light);display:flex;gap:8px;padding:10px;background:#70461f30;border:1px solid #765632;border-radius:4px;margin:0 0 14px}.power-warning>span{font-size:24px}.text-button{background:transparent;color:var(--muted);font-size:12px;padding:10px 0}.risk-button{width:100%;text-align:center;color:#d5a16f;padding-bottom:0}.cargo-panel{border:1px solid var(--line);border-radius:9px;padding:19px;background:#131d24}.small-link{background:transparent;color:#a7b7c0;font-size:12px;letter-spacing:0;padding:2px 0}.cargo-materials{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:20px 0}.cargo-materials>div{display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--line)}.cargo-materials>div:last-child{border:0}.resource-icon{font-size:25px;line-height:1;margin-bottom:9px}.metal{color:#a9bbc4}.electronics{color:var(--orange)}.composite{color:var(--teal)}.cargo-materials strong{font:18px var(--mono);font-weight:400}.cargo-materials small{font-size:12px;color:var(--muted);margin-top:6px}.component-cargo{display:flex;justify-content:space-between;font-size:12px;padding:12px 0 15px;border-top:1px solid var(--line);color:#a2b3bd}.component-cargo strong{color:var(--teal);font:13px var(--mono)}.secondary-button{display:flex;justify-content:space-between;align-items:center;width:100%;gap:10px;border:1px solid #3e505c;border-radius:5px;background:#21303a;padding:12px;color:#cad5da;font-size:12px;min-height:43px}.secondary-button:hover{background:#2b3d49}.secondary-button strong{font:12px var(--mono);color:var(--orange)}.upgrade-card{padding:17px 15px;display:flex;align-items:center;gap:12px;text-align:left;background:#24241e;border:1px solid #565039;border-radius:8px;min-height:80px}.upgrade-icon{color:var(--orange);font-size:27px}.upgrade-card strong{display:block;font-size:13px;font-weight:500}.upgrade-card small{font-size:12px;color:#b1a68d;display:block;margin-top:6px}.upgrade-card>span:last-child{margin-left:auto;color:var(--orange);font-size:22px}.upgrade-card:hover{background:#323025}.recycle-button{display:flex;justify-content:center;gap:10px;align-items:center;background:transparent;border:1px solid #37444d;border-radius:6px;font-size:12px;padding:14px;color:#a0b0ba;margin-top:auto;min-height:48px}.recycle-button:hover{background:#22313a;color:var(--text)}.recycle-button svg{height:18px;width:18px}.statusbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px;border-top:1px solid var(--line);color:#708691;font:12px var(--mono);letter-spacing:.5px}.statusbar>span:first-child{display:flex;align-items:center;gap:9px;min-width:0}.statusbar>span:first-child>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statusbar>span:last-child{white-space:nowrap}.statusbar i{width:4px;height:4px;border-radius:50%;background:var(--teal);flex-shrink:0}.statusbar b{font-weight:400;margin:0 6px}.asset-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;color:var(--muted);font-size:13px}.asset-loading>span{height:28px;width:28px;border:2px solid var(--line);border-top-color:var(--orange);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.bay-empty{position:absolute;inset:25% 24px auto;text-align:center;z-index:3}.bay-empty .section-kicker{justify-content:center;color:var(--teal);margin:20px 0}.complete-mark{font-size:36px;color:var(--teal);border:1px solid #54796e;border-radius:50%;height:76px;width:76px;display:inline-grid;place-items:center;background:#20382f}.bay-empty h2{font-weight:400;font-size:34px;letter-spacing:-1px}.bay-empty p{color:var(--muted);font-size:14px;line-height:1.7;margin:12px auto 24px;max-width:270px}.bay-empty button{max-width:320px;margin:auto}.toast{position:fixed;left:50%;bottom:32px;transform:translateX(-50%);padding:15px 22px;background:#24362f;border:1px solid #58766b;color:#d5ede3;border-radius:8px;box-shadow:0 12px 45px #0006;z-index:20;font-size:14px;max-width:calc(100vw - 32px);width:max-content;pointer-events:none}.toast.error{background:#3c2b20;border-color:#9c7048;color:#ffd5a8}dialog{width:min(470px,calc(100vw - 32px));padding:26px;border:1px solid #4a5961;border-radius:12px;background:#18232b;color:var(--text);box-shadow:0 30px 100px #0009;max-height:calc(100svh - 40px);overflow-y:auto}dialog::backdrop{background:#050a10ba;backdrop-filter:blur(7px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin:-7px -6px 18px 0}.dialog-head .icon-button{font-size:26px}dialog h2{font-size:27px;font-weight:500;letter-spacing:-.6px;margin-bottom:15px}dialog p{font-size:14px;color:#a9b9c2;line-height:1.8;margin-bottom:20px}dialog .primary-button{margin-top:20px;justify-content:center}dialog .secondary-button{margin-top:10px;justify-content:center}.dialog-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0;padding:9px 0}.dialog-stats>div{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#a8bac3;padding:10px 0}.dialog-stats strong{color:var(--text);font-family:var(--mono);font-size:14px;font-weight:400}.dialog-stats .highlight{color:var(--orange)}.dialog-note{font-size:12px!important;margin:18px 0 0!important;color:#80949f!important}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px;padding:17px 0;border-bottom:1px solid var(--line)}.setting-row input{accent-color:var(--orange);width:20px;height:20px}.intro-steps{counter-reset:intro;display:grid;gap:15px;margin:23px 0}.intro-step{display:flex;gap:13px;font-size:14px;line-height:1.5;color:#b6c4ca}.intro-step:before{counter-increment:intro;content:counter(intro);width:28px;height:28px;border:1px solid #776042;border-radius:5px;display:grid;place-items:center;flex-shrink:0;color:var(--orange);font:12px var(--mono)}.intro-step strong{display:block;font-size:14px;color:var(--text);font-weight:500}.intro-step span{font-size:12px}.dialog-link{display:block;margin-top:14px;font-size:13px;color:var(--orange);text-decoration:none;text-align:center}.no-parts{color:#91a3ad;font-size:14px;padding:15px 0}.contract-art{width:100%;height:150px;object-fit:contain;margin:10px 0;background:radial-gradient(ellipse,#2c3b44,transparent);border:1px solid var(--line);border-radius:8px}.dialog-list-item{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.dialog-list-item small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.dialog-list-item>strong{font:13px var(--mono);color:var(--orange);white-space:nowrap}.mobile-only{display:none}
@media(min-width:1500px){.workspace{grid-template-columns:255px minmax(440px,1fr) 305px;gap:30px}.game-shell{padding:0 46px}.inspector{padding:25px}.inspect-heading h2{font-size:23px}.component-button strong{font-size:14px}.component-button small{font-size:12px}.inspector>p{font-size:14px}.bay{min-height:700px}}
@media(max-width:1150px){.game-shell{padding:0 20px}.workspace{grid-template-columns:180px minmax(300px,1fr) 250px;gap:16px}.session-label{display:none}.topbar{height:76px}.inspector{padding:18px 15px}.cargo-panel{padding:17px 15px}.component-button{gap:8px;padding:10px 6px}.component-button strong{font-size:12px}.component-button small{font-size:12px}.mission-panel h1{font-size:27px}.tool-strip{padding:13px 10px;gap:8px}.tool-strip small{font-size:12px}.tool-strip strong{font-size:12px}.tool-emblem{width:30px;height:34px}.tool-time small{font-size:12px}.tool-time strong{font-size:12px}.bay-top{left:16px;right:16px;font-size:12px}.bay{min-height:650px}.bay-number{display:none}.hold-button{font-size:12px;padding:14px 10px}}
@media(max-width:900px){.workspace{grid-template-columns:minmax(300px,1fr) 265px;gap:18px}.mission-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding:0}.mission-panel>.section-kicker:first-child{grid-column:1;font-size:12px;justify-content:flex-start;gap:12px}.mission-panel h1{grid-column:1;font-size:24px;margin:8px 0}.ship-description{grid-column:1;font-size:12px;margin:0}.contract-tags,.mission-separator,.label-row,.progress-track,.component-title,.objective,.mission-bottom{display:none}.component-list{grid-column:2;grid-row:1/4;display:grid;grid-template-columns:1fr 1fr;gap:4px}.component-button{min-height:44px;padding:5px 8px;gap:7px}.component-button small{display:none}.component-button .part-symbol{font-size:12px;width:23px;height:24px}.component-button strong{font-size:12px}.part-check{font-size:16px}.bay{min-height:700px}.topbar{height:73px}.control-panel{gap:13px}.statusbar{font-size:12px}}
@media(max-width:640px){:root{font-size:16px}.game-shell{padding:0 14px}.topbar{height:70px;gap:8px;padding-top:env(safe-area-inset-top)}.brand{gap:7px;font-size:15px;letter-spacing:1.5px}.brand svg{width:32px;height:32px}.brand-light{font-size:12px;letter-spacing:3px;margin-top:4px}.top-actions{gap:2px}.wallet{gap:6px;margin-right:5px}.wallet strong{font-size:19px}.wallet-label{display:none}.credit-icon{height:20px;width:20px;font-size:14px}.icon-button{height:36px;width:36px}.icon-button svg{width:19px;height:19px}.workspace{display:flex;flex-direction:column;gap:13px;padding:16px 0 18px;min-height:0}.mission-panel{display:grid;grid-template-columns:1fr auto;column-gap:8px}.mission-panel>.section-kicker:first-child{font-size:12px}.mission-panel h1{font-size:23px;margin:6px 0 0}.ship-description{display:none}.component-list{grid-column:2;grid-row:1/3;display:flex;flex-direction:row;gap:5px}.component-button{width:38px;min-height:44px;padding:7px;justify-content:center;border-color:#2b3b46;background:#17232b}.component-button .part-symbol{border:0;width:auto;height:auto;font-size:12px}.component-button>span:nth-child(2),.part-check{display:none}.component-button.selected{border-color:#a17444}.bay{height:445px;min-height:445px;border-radius:8px}.bay-top{top:15px;font-size:12px;letter-spacing:.8px}.bay-number{display:block;font-size:12px}.canvas-wrap{inset:32px 0 79px}.tool-strip{left:10px;right:10px;bottom:10px;min-height:55px;padding:9px 11px;gap:11px}.tool-strip small{font-size:12px}.tool-strip strong{font-size:12px}.tool-time strong{font-size:12px}.tool-time small{font-size:12px}.tool-emblem{height:31px;width:31px}.bay-hint{bottom:73px;font-size:12px}.bay-coordinate{bottom:110px;font-size:12px}.bay-watermark{font-size:100px;left:16px;top:30px}.coord-left{left:12px}.coord-right{right:12px}.control-panel{display:grid;grid-template-columns:1fr 1fr;gap:12px}.inspector{grid-column:1/-1;padding:17px;display:grid;grid-template-columns:1fr auto;gap:0 12px}.inspector>.section-kicker{grid-column:1/-1;font-size:12px}.inspect-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 8px}.inspect-heading h2{font-size:20px;margin:0}.status-badge{font-size:12px;white-space:nowrap}.inspector>p{grid-column:1/-1;min-height:0;font-size:13px;margin-bottom:14px;line-height:1.6}.fastener-row{grid-column:1;margin:0;font-size:12px;justify-content:flex-start;gap:13px}.value-row{grid-column:2;padding:0;margin:0;border:0;gap:10px;font-size:12px}.value-row strong{font-size:16px}.power-warning{grid-column:1/-1;margin:13px 0 0;font-size:12px}.hold-button{grid-column:1/-1;margin-top:17px;min-height:50px;font-size:14px;padding:13px 15px}.hold-note,.risk-button{grid-column:1/-1}.hold-note{font-size:12px}.cargo-panel{grid-column:1/-1;padding:17px}.cargo-materials{margin:17px 0}.cargo-materials>div{flex-direction:row;justify-content:center;gap:9px;flex-wrap:wrap}.resource-icon{font-size:23px;margin:0}.cargo-materials strong{font-size:18px}.cargo-materials small{width:100%;text-align:center;font-size:12px;margin:0}.component-cargo{font-size:13px}.secondary-button{font-size:13px;min-height:47px}.upgrade-card{grid-column:1;min-height:76px;padding:11px;gap:8px}.upgrade-card strong{font-size:12px;line-height:1.5}.upgrade-card small{font-size:12px;line-height:1.5}.upgrade-icon{font-size:24px}.upgrade-card>span:last-child{display:none}.recycle-button{grid-column:2;margin:0;padding:12px;line-height:1.5;font-size:12px;min-height:76px}.recycle-button svg{flex-shrink:0}.statusbar{font-size:12px;min-height:44px;padding-bottom:env(safe-area-inset-bottom);gap:8px}.statusbar>span:last-child{font-size:12px}.statusbar>span:first-child{flex:1}.bay-empty{inset:18% 20px auto}.complete-mark{height:54px;width:54px;font-size:25px}.bay-empty .section-kicker{font-size:12px;margin:12px 0}.bay-empty h2{font-size:28px}.bay-empty p{font-size:12px;margin:9px auto 17px}.bay-empty button{min-height:43px;font-size:12px}.toast{bottom:18px;font-size:13px;padding:13px 17px}.tool-time{padding-left:5px}}
@media(max-width:360px){.game-shell{padding:0 10px}.brand svg{width:27px}.brand{font-size:13px}.brand-light{font-size:12px}.top-actions .icon-button{width:31px}.component-button{width:32px}.bay{height:413px;min-height:413px}.mission-panel h1{font-size:21px}.inspect-heading h2{font-size:18px}.value-row{gap:6px}.value-row>span{font-size:12px}.tool-strip strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* Readable primary labels and resilient small-screen targets. */
.inspector>p,.objective p,.component-button strong,.primary-button,.secondary-button,.upgrade-card strong,.recycle-button,.dialog-list-item{font-size:14px}.section-kicker{line-height:1.5}.mission-panel,.control-panel{min-width:0}.component-button>span:nth-child(2){min-width:0}.tool-strip{flex-wrap:wrap}.tool-strip>div:nth-child(2){min-width:0}.tool-strip small{letter-spacing:.4px}.statusbar{font-size:12px}.bay-coordinate{font-size:12px}.control-panel .section-kicker{letter-spacing:.6px}.inspect-heading{flex-wrap:wrap}.brand-light{font-size:12px}.hold-note{font-size:12px}.component-button small{font-size:12px}.component-list{min-width:0}.mission-panel .section-kicker{letter-spacing:.5px}
@media(max-width:640px){.component-button{width:44px;min-height:44px}.tool-strip strong{font-size:13px}.tool-strip small{font-size:12px}.tool-time small{font-size:12px}.tool-strip>div:nth-child(2)>small{display:none}.bay-hint{font-size:12px}.bay-number{display:none}.statusbar>span:last-child{font-size:12px}.bay-coordinate{font-size:12px}.upgrade-card{grid-column:1/-1;min-height:65px}.recycle-button{grid-column:1/-1;min-height:48px}.upgrade-card strong{font-size:14px}.upgrade-card small{font-size:12px}.inspector{display:flex;flex-wrap:wrap;justify-content:space-between}.inspector>.section-kicker,.inspect-heading,.inspector>p,.hold-button,.hold-note,.power-warning,.risk-button{width:100%}.fastener-row,.value-row{margin:4px 0}.hold-note{width:100%}.mission-panel h1{font-size:23px}}
@media(max-width:360px){.mission-panel{grid-template-columns:1fr}.component-list{grid-column:1;grid-row:auto;margin-top:12px;justify-content:space-between}.component-button{width:calc(25% - 4px)}.wallet strong{font-size:17px}.brand-light{font-size:10px}.top-actions{gap:0}.bay-top{letter-spacing:0}.brand{gap:4px}.bay-coordinate{display:none}.tool-time{margin-left:auto}.tool-strip strong span{margin-left:2px}}

/* Phase B: fleet, bays, progression and persistent workshop controls. */
.yard-toolbar{display:flex;align-items:center;gap:18px;padding:15px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.yard-toolbar nav{display:flex;gap:8px}.bay-tab{border:1px solid var(--line);background:#14212a;border-radius:6px;padding:10px 14px;min-height:45px;font-size:14px;display:flex;gap:13px;align-items:center}.bay-tab span{font-size:12px;color:var(--muted)}.bay-tab.active{border-color:#997144;background:#30281f;color:var(--orange-light)}.bay-tab.locked{border-style:dashed;color:var(--muted)}.rank-button{display:flex;gap:16px;align-items:center;background:transparent;font-size:14px;color:var(--teal);margin-left:auto;padding:10px 0}.rank-button strong{font:13px var(--mono);color:var(--text)}.save-status{font-size:12px;color:var(--muted)}.mission-actions{display:grid;gap:10px;margin-top:20px}.mission-actions .secondary-button{min-height:46px;flex-wrap:wrap}.mission-actions .secondary-button>span{font-size:12px;color:var(--muted)}.mission-bottom{padding-top:25px}.contract-tags{flex-wrap:wrap}.component-button{min-height:63px}.component-button strong{font-size:14px;line-height:1.35}.component-button small{line-height:1.3}.storage-capacity{font-size:12px;color:var(--muted);margin-bottom:12px}.storage-capacity .progress-track{margin:8px 0;height:4px}.storage-capacity .progress-track i{background:var(--teal)}.storage-capacity .progress-track i.full{background:var(--orange)}.drone-overlay{position:absolute;left:20px;right:20px;bottom:108px;z-index:3;border:1px solid #447777;background:#112528eF;backdrop-filter:blur(8px);padding:15px;border-radius:8px}.drone-overlay strong{display:block;font-size:14px;color:var(--teal)}.drone-overlay>span{display:block;font:12px var(--mono);color:#b1c7c9;margin-top:7px}.drone-overlay .progress-track{margin:12px 0 0;height:4px}.drone-overlay .progress-track i{background:var(--teal)}.upgrade-option,.order-card{border:1px solid var(--line);background:#1c2a34;border-radius:8px;padding:17px;margin:15px 0}.upgrade-option h3,.order-card h3,.fleet-card h3{font-size:17px;font-weight:500;margin:0 0 9px;line-height:1.4}.upgrade-option h3 small{font-size:12px;color:var(--muted);margin-left:8px}.upgrade-option p,.order-card p{margin:0;font-size:14px}.upgrade-option .secondary-button{margin-top:14px}.order-reward{font:18px var(--mono);color:var(--orange);margin:17px 0}.order-reward span{font-size:13px;color:var(--teal);margin-left:14px}.market-filter{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}.market-filter select{font:14px Interface,'Segoe UI',sans-serif;background:#263946;color:var(--text);border:1px solid #486070;border-radius:5px;padding:11px;min-width:150px;max-width:65%}.fleet-catalog{margin-top:22px;display:grid;gap:14px}.fleet-card{display:grid;grid-template-columns:120px 1fr;gap:14px;border:1px solid var(--line);border-radius:9px;padding:14px;background:linear-gradient(135deg,#1d2c36,#142029)}.fleet-card .section-kicker{font-size:12px;letter-spacing:.3px;margin-bottom:7px}.fleet-card p{font-size:13px;line-height:1.6;margin-bottom:8px}.fleet-card small{font-size:12px;color:var(--muted);line-height:1.4}.fleet-card .secondary-button{font-size:13px;min-height:44px}.fleet-thumb{width:120px;height:160px;object-fit:contain;align-self:center}.fleet-card.is-locked .fleet-thumb{filter:saturate(.35);opacity:.6}dialog:has(.fleet-catalog){width:min(660px,calc(100vw - 24px))}.component-inventory{margin:21px 0}.inventory-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid var(--line)}.inventory-item>div{flex:1;min-width:180px}.inventory-item strong{font-size:14px;font-weight:500}.inventory-item small{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:5px}.inventory-item>span{font:14px var(--mono);color:var(--orange)}.small-action{border:1px solid #536b7b;border-radius:5px;background:#243642;padding:10px 12px;font-size:13px;min-height:42px}.small-action:hover{background:#304958}.small-action:disabled{opacity:.4}.inventory-item>small{width:100%}.mission-panel h1{font-size:28px}.workspace{min-height:calc(100svh - 214px)}
@media(max-width:1150px){.yard-toolbar{gap:12px}.bay-tab{font-size:13px;padding:9px 11px;gap:8px}.rank-button{font-size:13px}.save-status{font-size:12px}.mission-panel h1{font-size:24px}.component-button strong{font-size:13px}.bay{min-height:740px}}
@media(max-width:900px){.mission-actions{grid-column:1/-1;display:flex;gap:12px;margin-top:15px}.mission-actions button{flex:1}.component-list{grid-template-columns:1fr 1fr 1fr}.component-button{min-height:44px}.mission-panel{grid-template-columns:1fr 1.7fr}.mission-panel h1{font-size:24px}.rank-button{margin-left:auto}.save-status{display:none}.bay{min-height:760px}}
@media(max-width:640px){.yard-toolbar{gap:7px;padding:11px 0}.yard-toolbar nav{width:100%;gap:8px}.bay-tab{flex:1;justify-content:center;padding:10px;min-height:44px}.rank-button{margin:0;justify-content:space-between;width:100%;padding:5px 2px;font-size:13px}.rank-button strong{font-size:12px}.mission-panel{display:grid;grid-template-columns:1fr}.mission-panel>.section-kicker:first-child{grid-column:1}.mission-panel h1{font-size:24px;grid-column:1}.component-list{grid-column:1;grid-row:auto;display:flex;flex-wrap:wrap;margin-top:12px;gap:7px}.component-button{flex:1;min-width:44px;width:auto;min-height:44px}.mission-actions{grid-column:1;display:flex;gap:8px;margin-top:12px}.mission-actions .secondary-button{font-size:13px;padding:10px;justify-content:center}.mission-actions .secondary-button>span{display:none}.mission-actions .secondary-button>strong{font-size:12px}.bay{min-height:430px;height:430px}.drone-overlay{left:11px;right:11px;bottom:78px;padding:12px}.drone-overlay>span{font-size:12px;line-height:1.5}.contract-tags{display:flex;grid-column:1;margin-top:10px;gap:5px}.contract-tags span{font-size:12px;padding:4px 7px}.component-button strong{font-size:14px}.mission-bottom{display:none}.fleet-card{grid-template-columns:85px minmax(0,1fr);padding:12px;gap:10px}.fleet-thumb{width:85px;height:130px}.fleet-card h3{font-size:17px}.fleet-card .section-kicker{font-size:12px}.fleet-card p{font-size:13px}.fleet-card .secondary-button{font-size:13px;padding:10px 8px;white-space:normal}.fleet-card small{font-size:12px}.market-filter{flex-wrap:wrap}.market-filter select{min-height:44px}.upgrade-option h3{font-size:16px}.workspace{min-height:0}.bay-coordinate{display:none}.hold-note{line-height:1.6}.save-status{display:none}.tool-strip{flex-wrap:nowrap}.tool-strip strong span{font-size:12px}.tool-time small{font-size:12px}.tool-time strong{font-size:14px}.statusbar>span:last-child{font-size:12px}.component-list .part-symbol{font-size:14px}}

/* Phase C: layered salvage, tool dock, owned workshop and discovery archive. */
.view-tabs{display:flex;gap:6px;padding:14px 0 6px;flex-wrap:wrap}.view-tabs button{background:transparent;color:var(--muted);border-bottom:2px solid transparent;min-height:46px;padding:10px 19px;font-size:16px;font-weight:600}.view-tabs button.active{color:var(--orange-light);border-color:var(--orange)}.view-tabs span{font-size:12px;margin-left:6px;color:var(--teal)}
.next-milestone{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:12px 0;color:#c4d0d5;font-size:14px}.next-milestone .progress-track{display:block;width:180px;flex:1;max-width:350px;height:5px;margin:0}.next-milestone .progress-track i{background:var(--teal)}.next-milestone button{margin-left:auto;min-height:32px}
.tutorial-panel{display:flex;align-items:center;gap:18px;padding:15px 18px;border:1px solid #597b80;border-left:4px solid var(--teal);background:#14292e;border-radius:8px;margin:5px 0 15px}.tutorial-panel>div{flex:1}.tutorial-panel strong{font-size:16px;color:#a5e2d7}.tutorial-panel p{font-size:14px;line-height:1.55;color:#c0d2d5;margin:5px 0 0}.tutorial-panel button{flex-shrink:0;min-height:44px}.layer-info{font-size:12px;color:var(--teal);line-height:1.6;margin:15px 0}.component-list{max-height:580px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#50616b transparent}.component-button{flex-shrink:0}.action-dock{width:100%;margin-top:18px}.dock-selection{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:10px}.dock-selection strong{font-size:14px;font-weight:500;line-height:1.4;text-align:center}.dock-selection .small-action{min-width:44px;min-height:44px;font-size:22px;padding:3px 9px}.tool-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.tool-picker button{min-height:48px;padding:8px 4px;border:1px solid #415662;border-radius:6px;background:#192a35;color:#a8bbc5;font-size:14px}.tool-picker kbd{display:block;font:12px var(--mono);color:#7e949e;margin-top:3px}.tool-picker button.active{color:#fff;background:#3b3427;border-color:var(--orange)}.tool-picker button.recommended:not(.active){border-color:var(--teal);box-shadow:inset 0 -3px var(--teal);color:#b0e2dc}.action-dock .hold-button{margin-top:10px;min-height:54px}.action-dock .hold-note{display:block;margin:7px 0;font-size:12px;line-height:1.5}.dock-shortcuts{display:none}.inspector #scrap-part{margin-top:14px;width:100%;font-size:14px}.inspector #scan-part{margin-top:10px;min-height:44px;text-align:center;width:100%}.control-panel{align-self:start}.bay{min-height:800px}.tool-strip strong #active-tool-name{font-size:14px;color:var(--text);margin:0}.salvage-impact{animation:salvage-impact .4s ease-out}.reduced-motion *{animation:none!important;transition:none!important}@keyframes salvage-impact{0%{box-shadow:inset 0 0 45px #79c6bd44}100%{box-shadow:inset 0 0 0 transparent}}
.yard-view,.collection-view{padding:25px 0 45px}.view-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.view-heading h1{font-size:clamp(26px,4vw,40px);margin:7px 0 10px;letter-spacing:-1px}.view-heading p,.view-intro{font-size:16px;color:#aebfc8;line-height:1.6}.view-heading button{width:auto;flex-shrink:0}.yard-scene{border:1px solid #526570;border-radius:12px;overflow:hidden;background:#0a1015}.yard-scene canvas{display:block;width:100%;height:auto;max-height:660px;object-fit:contain}.yard-bays{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.bay-summary{display:flex;flex-wrap:wrap;gap:10px;align-items:center;border:1px solid #4d6a75;border-radius:8px;padding:17px;background:#1a2b35;text-align:left}.bay-summary strong{color:var(--orange);font-size:16px}.bay-summary span{font-size:16px}.bay-summary small{margin-left:auto;color:var(--teal);font-size:14px}.equipment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0 32px}.equipment-summary>div{padding:17px;border:1px solid var(--line);background:var(--panel);border-radius:8px}.equipment-summary strong,.equipment-summary span{display:block;font-size:14px;line-height:1.6}.equipment-summary span{color:#aebfc8;margin-top:6px}.yard-view h2,.collection-view h2{font-size:24px;font-weight:600;margin:24px 0 12px}.project-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}.project-card,.relic-card{min-width:0;padding:22px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(140deg,#1b2c37,#111d25)}.project-card{display:flex;flex-direction:column}.project-card h3,.relic-card h3{font-size:20px;margin:12px 0;line-height:1.35}.project-card>strong{font-size:15px;color:var(--teal);line-height:1.5}.project-card p,.relic-card p{font-size:16px;line-height:1.6;color:#b5c6cf;margin:12px 0}.project-card small,.relic-card small{font-size:13px;line-height:1.6;color:#c4ac8e}.project-card .secondary-button{margin-top:auto;min-height:48px}.project-card small{padding-bottom:18px}.project-card.built{border-color:#52837c}.equipment-art{width:128px;height:128px;margin:0 auto;background-image:url('assets/workshop-equipment.png');background-size:200% 200%;background-repeat:no-repeat}.equipment-rack{background-position:0 0}.equipment-bench{background-position:100% 0}.equipment-tools{background-position:0 100%}.relic-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.relic-art{width:130px;height:130px;margin:0 auto 12px;background-image:url('assets/salvage-components.png');background-size:200% 200%;background-position:100% 100%;background-repeat:no-repeat}.unfound .relic-art{filter:grayscale(1) brightness(.45)}.unfound h3{color:#9eb0b9}.found{border-color:#638b84}.archive-hint{font-size:16px;line-height:1.6;border-left:3px solid var(--orange);padding:14px 18px;margin:0 0 24px;background:#25241f}.archive-pending{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:18px;border:1px solid #526e78;border-radius:8px;margin:12px 0;background:#1d3039}.archive-pending strong{font-size:17px}.archive-pending p{font-size:14px;line-height:1.5;color:#b1c4cc;margin:8px 0}.archive-pending button{width:auto;flex-shrink:0}.archive-inventory{margin-bottom:22px}.ship-logs{display:grid;gap:12px}.ship-logs details{border:1px solid var(--line);border-radius:8px;background:#15242d;padding:18px}.ship-logs summary{cursor:pointer;font-size:16px;line-height:1.6;color:#c9d9dd}.ship-logs p{padding:15px 0 0;font-size:16px;color:#afc5ce;line-height:1.7}.locked-log{opacity:.7}.market-filter+.market-filter{margin-top:12px}.tool-picker button:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.component-button strong{overflow-wrap:anywhere}.toast{z-index:20}dialog{z-index:30;max-height:90svh;overflow-y:auto}dialog p{font-size:16px;line-height:1.65}
@media(min-width:901px){.workspace{grid-template-columns:minmax(180px,225px) minmax(300px,1fr) minmax(270px,310px);gap:20px}.inspector{padding:19px}.component-button{min-height:60px}}
@media(max-width:900px){.component-list{max-height:190px}.layer-info{grid-column:1/-1}.equipment-summary{grid-template-columns:1fr 1fr}.project-list,.relic-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tutorial-panel{flex-wrap:wrap}.tutorial-panel>div{min-width:65%}.bay{min-height:800px}.tool-picker button{font-size:13px}.view-heading{flex-wrap:wrap}}
@media(max-width:640px){
 .game-shell{padding:0 12px}.topbar{height:62px}.yard-toolbar{padding:8px 0;gap:3px}.yard-toolbar nav{width:auto;flex:1}.bay-tab{padding:8px;font-size:13px}.bay-tab span{display:none}.rank-button{width:auto;font-size:12px;margin-left:auto;gap:7px}.rank-button>span{display:none}.view-tabs{padding:7px 0 0;gap:0;flex-wrap:nowrap}.view-tabs button{padding:9px 8px;font-size:14px;min-height:44px;flex:1;white-space:nowrap}.view-tabs span{font-size:12px;margin-left:3px}.next-milestone{padding:9px 0;gap:7px;font-size:12px}.next-milestone .progress-track{display:block;min-width:70px;width:70px;max-width:110px}.next-milestone button{display:none}.tutorial-panel{padding:12px;gap:8px;margin:4px 0 10px}.tutorial-panel>div{flex-basis:100%}.tutorial-panel strong{font-size:14px}.tutorial-panel p{font-size:14px;line-height:1.45}.tutorial-panel button{min-height:36px;font-size:13px}.tutorial-panel .small-link{margin-left:auto}.workspace{padding-top:7px}.mission-panel h1{font-size:22px}.mission-panel>.section-kicker:first-child{font-size:12px}.contract-tags{margin-top:6px}.layer-info{margin:8px 0 0;font-size:12px}.component-list{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;max-height:none;scroll-snap-type:x proximity;padding:2px 0 5px;margin-top:8px;gap:6px}.component-list .component-button{flex:0 0 125px;min-width:125px;width:125px;justify-content:flex-start;padding:8px;scroll-snap-align:start;gap:7px}.component-list .component-button>span:nth-child(2){display:block}.component-list .component-button strong{font-size:13px;line-height:1.3}.component-list .component-button .part-symbol{font-size:12px}.component-list .component-button small{display:none}.mission-actions{margin-top:5px}.mission-actions .secondary-button{min-height:40px;margin-top:0}.bay{height:410px;min-height:410px}.canvas-wrap{inset:30px 0 72px}.bay-hint{font-size:12px}.action-dock{position:fixed;bottom:0;left:0;right:0;z-index:12;width:100%;margin:0;padding:9px 14px calc(9px + env(safe-area-inset-bottom));background:#101c24f7;border-top:1px solid #536774;box-shadow:0 -8px 35px #0008;backdrop-filter:blur(15px)}.dock-selection{margin:0 0 5px;gap:7px}.dock-selection strong{font-size:14px}.dock-selection .small-action{min-height:32px;width:38px;min-width:38px;font-size:20px}.tool-picker button{min-height:42px;font-size:14px;padding:7px}.tool-picker kbd{display:none}.action-dock .hold-button{margin-top:7px;min-height:46px;font-size:14px;padding:11px}.action-dock .hold-note{margin:4px 0;font-size:12px;line-height:1.35;text-align:center}.action-dock .risk-button{margin:0;min-height:32px;font-size:12px}.dock-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.dock-shortcuts button{background:transparent;color:#bdcfd5;min-height:32px;font-size:13px;border:1px solid #354a56;border-radius:5px}.inspector{gap:0;padding:16px}.inspector>p{font-size:16px}.game-shell{padding-bottom:calc(250px + env(safe-area-inset-bottom))}body[data-view="yard"] .game-shell,body[data-view="collection"] .game-shell{padding-bottom:25px}.toast{bottom:270px}.view-heading h1{font-size:29px}.view-heading button{min-height:46px}.view-heading p{font-size:14px}.yard-view,.collection-view{padding:18px 0}.yard-scene{border-radius:8px}.yard-scene canvas{min-height:240px;object-fit:cover}.yard-bays{gap:8px}.bay-summary{padding:12px;gap:7px;display:flex;flex-direction:column;align-items:flex-start}.bay-summary strong,.bay-summary span{font-size:14px}.bay-summary small{font-size:13px;margin:0}.equipment-summary{gap:9px;margin:15px 0 22px}.equipment-summary>div{padding:12px}.equipment-summary strong,.equipment-summary span{font-size:13px}.project-list,.relic-list{grid-template-columns:1fr;gap:13px}.project-card,.relic-card{padding:18px}.equipment-art{width:115px;height:115px}.relic-art{width:105px;height:105px}.relic-card .section-kicker{margin-top:5px}.relic-card h3{font-size:20px}.project-card p,.relic-card p,.view-intro,.ship-logs p{font-size:16px}.archive-pending{flex-wrap:wrap;gap:7px}.archive-pending button{width:100%}.ship-logs details{padding:14px}.ship-logs summary{font-size:15px}.statusbar{margin-top:10px}html{scroll-padding-bottom:265px}.bay-empty{inset:17% 18px auto}.primary-button,.secondary-button{overflow-wrap:anywhere}.tool-time{min-width:65px}
}
@media(max-width:380px){.view-tabs button{font-size:13px;padding:8px 5px}.view-tabs span{display:block;margin:2px 0 0}.next-milestone{font-size:12px}.next-milestone .progress-track{max-width:65px}.action-dock{padding-left:10px;padding-right:10px}.bay{min-height:380px;height:380px}.tool-strip{gap:6px;padding:8px}.tool-strip strong #active-tool-name{font-size:12px}.tool-time strong{font-size:12px}}

.storage-capacity .progress-track,.drone-overlay .progress-track{display:block}

.dev-test-badge{display:block;width:100%;color:#ffc77b;border:1px solid #96703d;border-radius:5px;background:#34291c;padding:8px 12px;font:600 13px var(--mono)}
