/* Compact dock dashboard: use the existing power footprint for stores and capacity. */
#dock-panel .dock-power{padding:6px;min-width:0}
#dock-panel .power-heading{margin-bottom:2px}
#dock-panel .power-heading small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
#dock-panel .power-grid{gap:5px}
#dock-panel .power-stat{padding:1px 5px}
#dock-panel .power-stat>span{font-size:8px;letter-spacing:.2px;min-height:0}
#dock-panel .power-stat strong,#dock-panel .power-stat strong.long-value{font:700 20px/1.1 Arial;margin:0}
#dock-panel .power-stat small{font:9px/1.25 Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#dock-panel .power-relay{font:9px/1.2 Arial;margin:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.power-capacities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding-top:3px;margin-top:3px;border-top:1px solid #718c9166}
.power-capacities>button{display:flex;align-items:baseline;gap:6px;min-width:0}
.power-capacities span{font:700 8px/1.2 Arial;color:#bdd0d2;white-space:nowrap}
.power-capacities strong{font:700 13px/1.2 Arial;color:#f3d18d;white-space:nowrap;font-variant-numeric:tabular-nums}
.power-materials{display:flex;gap:8px;align-items:baseline;border-top:1px solid #718c9166;margin-top:3px;padding-top:3px}
.power-materials-label{font:700 8px/1.2 Arial;letter-spacing:.4px;color:#9dd9e9}
#power-materials{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px 10px;flex:1;min-width:0}
.power-material{display:flex;justify-content:space-between;gap:3px;min-width:0;font:9px/1.2 Arial;color:#c5d5d5;white-space:nowrap}
.power-material strong{font-weight:700;color:#e9efde;font-variant-numeric:tabular-nums}
#dock-panel .battle-power-bar{margin-top:3px;padding-top:3px}
#dock-panel .battle-power-bar summary{font:700 10px/1.2 Arial;letter-spacing:0;gap:8px}
@media(max-width:760px){
 #dock-panel .dock-power{padding:5px}
 #dock-panel .power-heading{font-size:8px;margin-bottom:3px}
 #dock-panel .power-heading small{font-size:8px}
 #dock-panel .power-stat{padding:0 3px}
 #dock-panel .power-stat>span{font-size:6.5px;min-height:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #dock-panel .power-stat strong,#dock-panel .power-stat strong.long-value{font-size:17px}
 #dock-panel .power-stat small{font-size:7.5px}
 #dock-panel .power-relay{font-size:8px}
 .power-capacities{gap:3px;padding-top:3px;margin-top:3px}
 .power-capacities>button{gap:4px}.power-capacities span{font-size:7px}.power-capacities strong{font-size:11px}
 .power-materials{display:block;padding-top:3px;margin-top:3px}.power-materials-label{display:block;font-size:7px;margin-bottom:2px}
 #power-materials{grid-template-columns:repeat(4,minmax(0,1fr));gap:1px 6px}.power-material{font-size:8px;line-height:1.1}
 #dock-panel .battle-power-bar summary{font-size:9px}
 .power-materials{padding-top:2px;margin-top:2px}.power-materials-label{margin-bottom:1px}
}
@media(max-height:550px) and (orientation:landscape){
 #dock-panel .dock-power{padding:4px;align-content:start}
 #dock-panel .power-heading{font-size:7px;margin-bottom:2px}
 #dock-panel .power-heading small{font-size:7px;margin-top:1px}
 #dock-panel .power-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}
 #dock-panel .power-stat{padding:0 3px}
 #dock-panel .power-stat>span{font-size:6px;line-height:1.1;min-height:0}
 #dock-panel .power-stat strong,#dock-panel .power-stat strong.long-value{font-size:14px;line-height:1.1;margin:0}
 #dock-panel .power-stat small{display:none}
 #dock-panel .power-relay{font-size:7px;line-height:1.1;margin:2px 0}
 .power-capacities>button{display:flex;gap:2px}.power-capacities span,.power-capacities strong{font-size:6px;line-height:1.2}.power-capacities strong{font-size:9px}
 .power-materials{display:block;padding-top:3px;margin-top:3px}.power-materials-label{display:block;font-size:7px;margin-bottom:2px}
 #power-materials{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 5px}.power-material{font-size:7px;line-height:1.1}
 #dock-panel .battle-power-bar summary{display:flex;flex-wrap:nowrap;font-size:7px;gap:4px;white-space:nowrap}
 #dock-panel .battle-power-bar summary>*{overflow:hidden;text-overflow:ellipsis;min-width:0}
 #dock-panel .battle-power-bar summary:after{display:none}
}
/* Room to fly on a computer; the two-thumb phone layout keeps its own rules. */
@media (min-width:1101px) and (pointer:fine){
 .notebook{max-width:none;padding:0 clamp(16px,1.3vw,36px)}
 .notebook:has(.space:not([data-mode=intro])){height:100dvh;min-height:600px;display:flex;flex-direction:column}
 .notebook:has(.space:not([data-mode=intro])) header{padding:9px 0;flex-shrink:0}
 .notebook:has(.space:not([data-mode=intro])) .title{font-size:25px}
 .notebook:has(.space:not([data-mode=intro])) .title>span{display:none}
 .notebook:has(.space:not([data-mode=intro])) .flight-hud{display:none}
 .notebook:has(.space:not([data-mode=intro])) .progress-hud{margin:7px 0;padding:0;gap:8px;flex-shrink:0}
 .notebook:has(.space:not([data-mode=intro])) .progress-hud .resource{padding:7px 12px;display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center}
 .notebook:has(.space:not([data-mode=intro])) .progress-hud .resource>small{grid-column:1;font-size:9px;letter-spacing:.7px}
 .notebook:has(.space:not([data-mode=intro])) .progress-hud .resource>strong{grid-column:2;grid-row:1/3;justify-self:end;font-size:27px;margin:0}
 .notebook:has(.space:not([data-mode=intro])) .progress-hud .resource>span{grid-column:1;font-size:9px;margin:0}
 .notebook:has(.space:not([data-mode=intro])) .progress-hud .pilot-xp-track{grid-column:1;max-width:200px;margin:2px 0}
 .notebook:has(.space:not([data-mode=intro])) .space{flex:1;min-height:340px;height:auto;max-height:none;width:100%}
 .notebook:has(.space:not([data-mode=intro])) .flight-controls{flex-shrink:0;padding:7px 0;gap:12px}
 .notebook:has(.space:not([data-mode=intro])) .flight-controls button{min-height:44px;height:44px}
 .notebook:has(.space:not([data-mode=intro])) .flight-controls button small{display:none}
 .notebook:has(.space:not([data-mode=intro])) footer{flex-shrink:0;padding:4px 0;font-size:10px}
 #dock-panel,#dock-panel:has(#skills-section:not([hidden])){padding:12px}
 #dock-panel .paper-card.dock-card{width:min(1600px,100%);max-width:none;height:100%;max-height:none;padding:14px 18px;display:grid;grid-template-columns:250px minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:8px 12px}
 #dock-panel .dock-resources{grid-column:1;grid-row:1;grid-template-columns:minmax(0,1fr);padding:7px;gap:4px;margin:0;min-width:0}
 #dock-panel .dock-resources .resource{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;padding:2px 7px;min-width:0;text-align:left}
 #dock-panel .dock-resources .resource>small{font-size:9px;letter-spacing:.6px}
 #dock-panel #dock-credits,#dock-panel #dock-level,#dock-panel #dock-points{font-size:23px;margin:0;line-height:1.2}
 #dock-panel .dock-xp{display:block;padding:0 3px}
 #dock-panel #dock-xp-label{display:block;font:10px/1.4 Arial}
 #dock-panel #dock-xp-track{height:4px;margin-top:3px}
 #dock-panel:has(#skills-section:not([hidden])) .resource-points{background:#40394f;border-color:#cfafea}
 #dock-panel .dock-power{grid-column:2;grid-row:1;margin:0;padding:6px;min-width:0;align-content:center}
 #dock-panel .dock-tabs{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(9,minmax(0,1fr));gap:7px;margin:0;padding-bottom:8px}
 #dock-panel .dock-tabs button{font-size:12px;padding:10px 8px}
 #dock-panel .dock-content{grid-column:1/-1;grid-row:3;padding-right:10px;min-height:0;min-width:0}
 #dock-panel .section-title{font-size:25px;margin:18px 0 8px}
 #dock-panel .gear-card>div>strong{font-size:23px}
 #dock-panel .gear-card p,#dock-panel .frontier-card p{font-size:13px}
 #dock-panel .gear-actions button,#dock-panel .trophy-card button{font-size:12px}
 #dock-panel .dock-actions{grid-column:1/-1;grid-row:4;margin:0;padding-top:8px}
 #dock-panel .dock-actions button{font-size:13px;min-height:44px}
 #dock-panel #browser-save-status{grid-column:1/-1;grid-row:5;margin:0}
 #dock-panel .trophy-wardrobe{display:grid;grid-template-columns:320px minmax(0,1fr);grid-template-areas:"preview title" "preview choice" "preview stage" "preview help";gap:5px 20px;padding:14px;margin:12px 0;align-items:center}
 #dock-panel .trophy-wardrobe .section-title{grid-area:title;margin:0;font-size:23px}
 #dock-panel .trophy-wardrobe select{grid-area:choice;max-width:600px;font-size:14px}
 #dock-panel .trophy-look-name{grid-area:stage;margin:0}
 #dock-panel .trophy-wardrobe canvas{grid-area:preview;width:320px;max-width:100%;height:auto}
 #dock-panel .trophy-wardrobe .odyssey-help{grid-area:help;font-size:11px;line-height:1.5;margin:0;max-width:760px}
 #dock-panel .trophy-hull-preview{max-width:360px;margin:0 auto}
 #dock-panel #fittings-section:not([hidden]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
 #dock-panel #fittings-section>*{grid-column:1/-1;min-width:0}
 #dock-panel #fittings-section>.section-title{margin:6px 0 0}
 #dock-panel #fittings-section>#gear-capacity{margin:0}
 #dock-panel #fittings-section>.trophy-wardrobe,#dock-panel #fittings-section>.ship-fitting{margin:2px 0}
 #dock-panel #fittings-section>.mission-note{grid-column:1;grid-row:1;margin:0;padding:10px 12px}
 #dock-panel #fittings-section>.browser-save-tools{grid-column:2;grid-row:1;margin:0;align-self:start}
 #dock-panel #fittings-section>#return-tech-panel:empty{display:none}
 #dock-panel #fittings-section>#loot-materials{grid-column:1}
 #dock-panel #fittings-section>#build-presets{grid-column:2;max-width:none;margin:0;padding:0 12px;align-self:start}
 #dock-panel #build-presets>summary{min-height:44px;font-size:15px}
 #dock-panel #fittings-section>#loot-materials:has(details[open]),#dock-panel #fittings-section>#build-presets[open]{grid-column:1/-1}
 #dock-panel #loot-materials details{margin:0}
 #dock-panel #build-presets .fleet-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .space[data-mode=intro]{min-height:calc(100dvh - 112px)}
 #intro{min-height:calc(100dvh - 112px);padding:clamp(34px,4vw,72px)}
 #intro .intro-card{width:44%;max-width:760px}
 #intro h1{font-size:clamp(64px,5.4vw,112px)}
 #intro .intro-copy{font-size:17px;max-width:570px}
 #intro .intro-actions{max-width:570px}
 #intro #launch,#intro #continue{max-width:430px;font-size:16px;min-height:52px}
 #intro .entry-tags span{font-size:10px;padding:9px 11px}
 #intro .eyebrow{font-size:10px}
}
@media (min-width:1500px) and (pointer:fine){
 #gear-inventory,#vendor-stock,#hull-options,.trophy-grid,.fleet-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 #dock-panel #skill-tree{gap:22px}
 #dock-panel .skill-node strong{font-size:20px}
 #dock-panel .skill-node p{font-size:12px}
}
@media (min-width:1101px) and (pointer:fine){
 #horizon-ship{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,1fr);gap:14px 22px;align-items:start}
 #horizon-ship>.interior-cover{grid-column:1/-1;margin:0;padding:12px 16px}
 #horizon-ship>.interior-cover h3{font-size:27px;margin:5px 0}
 #horizon-ship>.interior-map-scroll{grid-column:1;grid-row:2/span 3}
 #horizon-ship #interior-map{height:auto;max-width:1100px;aspect-ratio:900/520;margin:0 auto}
 #horizon-ship>.interior-walk{grid-column:2;grid-row:2;margin:0}
 #horizon-ship>.interior-room-tabs{grid-column:2;grid-row:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
 #horizon-ship>.interior-room{grid-column:2;grid-row:4;margin:0}
 #horizon-ship>.hull-ultimate-card{grid-column:1/-1;margin:0}
 #star-chart{max-width:1200px;height:auto;margin:16px auto}
 .ship-fitting svg{max-height:380px}
}
/* A luminous arrival poster, with a calm reading column. */
#intro h1 em{color:#ffc2ec;text-shadow:0 0 34px #ff68c94a,0 0 80px #a16cff22}
#intro #launch{background:linear-gradient(110deg,#ffe29e,#ffb88f);border-color:#ffdc91;box-shadow:0 5px 30px #ffab6533}
#intro #continue{background:linear-gradient(110deg,#a9ffdc,#97dfed);box-shadow:0 5px 30px #71e7f433}
.entry-port-ticket{position:absolute;right:4%;bottom:34px;width:43%;max-width:740px;padding:16px 20px;background:linear-gradient(125deg,#10283fe8,#241e3ce8);border:1px solid #84e7de77;border-top:3px solid #ff91d0;border-radius:10px;box-shadow:0 0 40px #6fa2e51a;color:#d9f1ec;pointer-events:none}
.entry-port-ticket>small{font:700 10px Arial;letter-spacing:1.5px;color:#ffb8dc}
.entry-port-ticket>strong{display:block;font:22px Georgia;color:#fff0cf;margin:6px 0 12px}
.entry-port-ticket>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.entry-port-ticket span{font:10px/1.5 Arial;color:#bcd7df;letter-spacing:.8px}
.entry-port-ticket b{display:block;font:700 27px Arial;color:#a6ffe4;margin-bottom:3px}
.entry-port-ticket span:nth-child(2) b{color:#ffb1de}.entry-port-ticket span:nth-child(3) b{color:#ffdf99}
@media(max-width:1100px),(pointer:coarse){.entry-port-ticket{display:none}}
@media(prefers-reduced-motion:reduce){#intro .entry-beacon{animation:none}}

/* Dashboard shortcuts retain the compact dashboard footprint. */
#dock-panel .power-capacities>button{position:relative;min-height:0;min-width:0;margin:0;padding:0;border:0;border-radius:2px;background:transparent;color:inherit;text-align:left;cursor:pointer;touch-action:manipulation}
#dock-panel button.power-materials{width:100%;min-height:0;margin:3px 0 0;padding-right:0;padding-left:0;padding-bottom:0;border-right:0;border-bottom:0;border-left:0;border-radius:0;background:transparent;text-align:left;cursor:pointer;touch-action:manipulation}
#dock-panel .power-capacities>button:hover,#dock-panel button.power-materials:hover{background:#8bb1bf1c}
#dock-panel .power-capacities>button:focus-visible,#dock-panel button.power-materials:focus-visible{outline:2px solid #f1ca79;outline-offset:1px}
#dock-panel .power-capacities>button span,.power-materials-label{text-decoration:underline;text-underline-offset:2px}
#dock-panel .gear-location{display:block;font:700 9px/1.4 Arial;color:#47666a;margin:5px 0}

/* Separate the installed build from sellable spare cargo. */
#dock-panel .dock-content>#fittings-section[data-gear-view]{display:block}
#dock-panel:has(#fittings-section:not([hidden])) .dock-content>:is(h2,#dock-copy){display:none}
.gear-view-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 10px}
#dock-panel .gear-view-tabs button{min-height:44px;margin:0;padding:11px;font:700 13px Arial;border:1px solid #7f9b99;background:#e3eade;color:#294d53}
#dock-panel .gear-view-tabs button[aria-pressed=true]{background:#213e4b;border-color:#d0b06e;color:#ffdfa0;box-shadow:inset 0 -3px #d0b06e}
#dock-panel #gear-view-title{font-size:24px;margin:8px 0 5px}
#dock-panel #gear-capacity{font:11px/1.5 Arial;margin:0 0 10px}
#dock-panel #fittings-section[data-gear-view=spare]>:is(#ship-fitting,#loadout-slots,.arsenal-dock,#fittings,.trophy-wardrobe){display:none!important}
#dock-panel #fittings-section[data-gear-view=installed]>:is(.gear-tools,.gear-protection-filter,#gear-filter-count,#cargo-tools-loot,#gear-inventory){display:none!important}
#dock-panel[data-focus=true] #fittings-section>:is(#gear-view-title,#gear-capacity){display:block!important}
#dock-panel #fittings-section>.gear-view-tabs{display:grid!important}
#dock-panel #fittings-section[data-gear-view=installed]>#loadout-slots{display:grid!important}
#dock-panel[data-focus=true] #fittings-section>:is(#ship-fitting,#gear-inventory){max-height:none!important;overflow:visible!important}
#dock-panel #loadout-slots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:10px 0}
#dock-panel #loadout-slots .fitted-card{padding:9px;min-width:0;min-height:88px;margin:0;display:block;text-align:left}
#dock-panel #loadout-slots .fitted-card>strong{font:700 15px/1.2 Arial;margin:5px 0;display:block}
#dock-panel #loadout-slots .fitted-card>small{font:9px/1.3 Arial}
#dock-panel #loadout-slots .fitted-card>:is(span,.gear-benefits){display:none}
#dock-panel #gear-inventory{margin:8px 0 18px}
#dock-panel #gear-inventory [data-sell-gear],#dock-panel #gear-inventory [data-dismantle-gear]{order:-1;font-weight:700}
#dock-panel #gear-inventory [data-sell-gear]{background:#f5e5bd;border-color:#ac8c50}
#dock-panel #gear-inventory [data-dismantle-gear]{background:#d9e9e0;border-color:#7b9e98}
.gear-empty{grid-column:1/-1;padding:20px;background:#e7eddf;border:1px dashed #9bb3a8;border-radius:7px;font:13px/1.6 Arial;color:#375a5d}
.companion-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;margin:0 0 12px;border:1px solid #9aabb6;border-radius:8px;background:#e6e8ef;color:#314e60}
.companion-guide>strong,.companion-guide>p{grid-column:1/-1;margin:0;font:12px/1.5 Arial}.companion-guide>strong{font-weight:700;font-size:16px}
#dock-panel .companion-guide>button{min-height:44px;margin:0;font-size:12px}
@media(max-width:760px){#dock-panel #loadout-slots{grid-template-columns:repeat(2,minmax(0,1fr))}#dock-panel .gear-view-tabs button{font-size:11px;padding:10px 6px}.companion-guide{padding:10px}.companion-guide>p{font-size:11px}}
@media(min-width:761px) and (max-width:1100px){#dock-panel #loadout-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}
