/* The tool console has its own reserved area; it never covers the ship canvas. */
body[data-view="salvage"]{--dock-height:116px;--console-bottom:44px;--scene-bottom:calc(var(--dock-height) + 90px)}
body[data-view="salvage"] .action-dock{left:20px;right:20px;bottom:var(--console-bottom);width:auto;max-width:1440px;margin:0 auto;transform:none;display:grid;grid-template-columns:minmax(160px,1fr) minmax(330px,1.8fr) minmax(250px,1.4fr);gap:6px 18px;padding:12px 16px;border-radius:8px;background:linear-gradient(125deg,#172d37fa,#091720fc)}
body[data-view="salvage"] .dock-selection{grid-column:1;grid-row:1;margin:0;align-self:center;gap:8px;min-width:0}
body[data-view="salvage"] .dock-selection strong{font-size:14px;line-height:1.4;text-align:center;overflow-wrap:anywhere}
body[data-view="salvage"] .tool-picker{grid-column:2;grid-row:1 / span 3;align-self:center;gap:7px;min-width:0}
body[data-view="salvage"] .tool-picker button{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;min-height:66px;padding:5px 4px;gap:0;border-radius:5px}
body[data-view="salvage"] .tool-art{grid-column:1;grid-row:1 / 3;width:40px;height:52px;background-position-y:30%;mask-image:linear-gradient(#000 85%,transparent)}
body[data-view="salvage"] .tool-card-label{grid-column:2;padding:0 4px;font-size:14px;gap:2px;align-self:end;flex-wrap:wrap}
body[data-view="salvage"] .tool-picker kbd{font-size:12px;margin-left:0}
body[data-view="salvage"] .tool-picker button>small{grid-column:2;display:block;font-size:12px;padding:3px 4px 0;align-self:start}
body[data-view="salvage"] .action-dock .hold-button{grid-column:3;grid-row:1;margin:0;min-height:46px;align-self:center;font-size:14px}
body[data-view="salvage"] .action-dock .hold-note{grid-column:3;grid-row:2;margin:0;font-size:12px;line-height:1.4;align-self:start}
body[data-view="salvage"] #assembly-work{grid-column:1;grid-row:2;margin:0;min-height:38px;padding:7px;font-size:12px}
body[data-view="salvage"] .action-dock .risk-button{grid-column:3;grid-row:3;min-height:34px;margin:0;font-size:12px}
body[data-view="salvage"] .canvas-wrap{inset:145px 275px var(--scene-bottom)}
body[data-view="salvage"] #hangar-canvas{inset:0 0 var(--scene-bottom);height:calc(100% - var(--scene-bottom));width:100%}
body[data-view="salvage"] .tool-strip{bottom:calc(var(--dock-height) + 65px);right:30px}
body[data-view="salvage"] .recycle-button{position:absolute;bottom:calc(var(--dock-height) + 131px);right:0}
body[data-view="salvage"] .control-panel{bottom:0;pointer-events:none}
body[data-view="salvage"] .control-panel>*{pointer-events:auto}
body[data-view="salvage"] .next-milestone{bottom:calc(var(--dock-height) + 65px)}
body[data-view="salvage"] .bay-top{bottom:calc(var(--dock-height) + 53px)}
body[data-view="salvage"] .bay-hint{bottom:calc(var(--dock-height) + 63px);left:280px;right:280px;font-size:12px}
body[data-view="salvage"] .inspector .part-callout{position:static;transform:none;max-width:none;margin:14px 0;padding:10px 12px;box-shadow:none}
body[data-view="salvage"] .drone-overlay{bottom:calc(var(--dock-height) + 105px)}
body[data-view="salvage"] #toast{top:12px;bottom:auto;left:50%;right:auto;max-width:min(500px,calc(100vw - 32px));padding:12px 18px;font-size:14px;line-height:1.45;z-index:30}
@media(min-width:761px) and (max-width:1100px){
 body[data-view="salvage"] .action-dock{left:16px;right:16px;grid-template-columns:minmax(145px,1fr) minmax(270px,1.65fr) minmax(220px,1.25fr);gap:6px 10px;padding:10px}
 body[data-view="salvage"] .tool-picker button{grid-template-columns:1fr;min-height:66px;text-align:center}
 body[data-view="salvage"] .tool-art{grid-column:1;grid-row:1;width:100%;height:30px;background-size:300% auto;background-position-y:28%}
 body[data-view="salvage"] .tool-card-label{grid-column:1;grid-row:2;justify-content:center;align-self:center}
 body[data-view="salvage"] .tool-picker button>small{grid-column:1;grid-row:3;text-align:center}
 body[data-view="salvage"] .canvas-wrap{inset:165px 215px var(--scene-bottom)}
 body[data-view="salvage"] .bay-hint{left:220px;right:220px}
}
@media(max-width:760px){
 body[data-view="salvage"]{--dock-height:176px;--console-bottom:calc(8px + env(safe-area-inset-bottom));--scene-bottom:calc(var(--dock-height) + 134px + env(safe-area-inset-bottom))}
 body[data-view="salvage"] .action-dock{left:8px;right:8px;bottom:var(--console-bottom);grid-template-columns:minmax(0,1fr);gap:5px;padding:8px;max-width:none}
 body[data-view="salvage"] .dock-selection{grid-column:1;grid-row:1;min-height:30px}
 body[data-view="salvage"] .tool-picker{grid-column:1;grid-row:2;gap:5px;width:100%}
 body[data-view="salvage"] .tool-picker button{grid-template-columns:30px minmax(0,1fr);grid-template-rows:1fr;min-height:44px;padding:3px;gap:0}
 body[data-view="salvage"] .tool-art{grid-column:1;grid-row:1;width:30px;height:34px;background-position-y:26%}
 body[data-view="salvage"] .tool-card-label{grid-column:2;grid-row:1;padding:0 3px;font-size:14px;align-self:center;justify-content:center}
 body[data-view="salvage"] .tool-picker button>small{display:none}
 body[data-view="salvage"] .action-dock .hold-button{grid-column:1;grid-row:3;min-height:44px}
 body[data-view="salvage"] .action-dock .hold-note{grid-column:1;grid-row:4;font-size:12px}
 body[data-view="salvage"] #assembly-work{grid-column:1;grid-row:5;min-height:44px}
 body[data-view="salvage"] .action-dock .risk-button{grid-column:1;grid-row:6;min-height:44px}
 body[data-view="salvage"] .view-tabs,body[data-view="salvage"].has-assembly .view-tabs{bottom:calc(var(--dock-height) + 20px + env(safe-area-inset-bottom));left:8px;right:8px}
 body[data-view="salvage"] .yard-stations{bottom:calc(var(--dock-height) + 72px + env(safe-area-inset-bottom));left:12px}
 body[data-view="salvage"] .control-panel{position:static;max-width:none;width:auto}
 body[data-view="salvage"] .control-panel>.inspector{position:absolute;top:216px;right:12px;max-width:160px}
 body[data-view="salvage"] .control-panel>.inspector[open]{position:absolute;top:154px;max-width:none;width:min(320px,calc(100vw - 24px));max-height:calc(100svh - var(--dock-height) - 240px);z-index:9}
 body[data-view="salvage"] .recycle-button{position:absolute;right:12px;bottom:calc(var(--dock-height) + 72px + env(safe-area-inset-bottom));width:calc(100vw - 238px)}
 body[data-view="salvage"] .canvas-wrap{inset:240px 0 var(--scene-bottom)}
 body[data-view="salvage"] #hangar-canvas{inset:240px 0 var(--scene-bottom);height:calc(100% - var(--scene-bottom) - 240px)}
 body[data-view="salvage"] .drone-overlay{bottom:calc(var(--dock-height) + 134px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}
 body[data-view="salvage"] #toast,body[data-view="salvage"].has-assembly #toast{top:8px;bottom:auto;max-width:calc(100vw - 16px);font-size:14px}
 body[data-view="salvage"] .game-shell{min-height:calc(var(--dock-height) + 620px + env(safe-area-inset-bottom))}
 body[data-view="salvage"]{overflow-y:auto}
}

@media(min-width:761px) and (max-height:650px){body[data-view="salvage"] .canvas-wrap{top:100px}}
