/* Live diagnostics use generated system artwork with actual equipped stats. */
.lobby-header{justify-content:flex-start}.lobby-top-actions{margin-left:8px;margin-right:auto;gap:8px}.help-trigger{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:5px 10px;font-size:10px}.help-trigger .generated-icon{width:34px;height:30px}.lobby-top-actions .settings-trigger{order:-1}.settings-account{display:flex;align-items:center;justify-content:space-between;gap:12px;grid-column:1/-1;padding:5px 0 10px;margin-bottom:6px;border-bottom:1px solid #5e8a9c44}.settings-account>span{font:600 10px Rajdhani,sans-serif;color:#8eafc2;letter-spacing:1px}.settings-account #fleet-account{padding:5px 9px;font-size:11px}
.ship-showcase-badge .ship-stat-tag{display:none}#fleet-stats{display:flex;justify-content:center;gap:7px;max-width:620px;margin:12px auto 0;background:none;border:0;padding:0;border-radius:0}.ship-diagnostic{display:flex;align-items:center;gap:6px;min-width:0;flex:1;padding:8px;background:linear-gradient(140deg,#163649b8,#061522d1);border:1px solid #74a3b14d;border-radius:9px;text-align:left}.ship-diagnostic .generated-icon{width:34px;height:34px;flex:0 0 34px}.ship-diagnostic>div{flex:1;min-width:0}.ship-diagnostic strong{display:block;font:600 17px Rajdhani,sans-serif;color:#daf5ff;letter-spacing:.5px}.ship-diagnostic small{display:block;font:600 8px Rajdhani,sans-serif;color:#9bbdce;letter-spacing:.7px;margin:2px 0 5px}.ship-diagnostic i{display:block;height:3px;background:#42607066;border-radius:2px;overflow:hidden}.ship-diagnostic i b{display:block;height:100%;background:linear-gradient(90deg,#3caebc,#99f8ed);box-shadow:0 0 8px #5ce6d755}#sortie-reward-preview:empty{display:none!important}
/* The workshop overlays the real 3D ship instead of replacing it with a table. */
body.garage-open #lobby-overlay{visibility:hidden;pointer-events:none}#hangar-garage{position:fixed;inset:0;z-index:80;background:none;backdrop-filter:none;padding:0;display:block;overflow:hidden;pointer-events:none}#garage-shell{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.garage-bridge{display:flex;align-items:center;gap:16px;margin:18px auto 0;padding:12px 18px;width:min(1100px,calc(100% - 36px));box-sizing:border-box;border:1px solid #79a9b968;border-radius:13px;background:linear-gradient(135deg,#16374be8,#071b2cda);backdrop-filter:blur(12px);pointer-events:auto}.garage-bridge>.generated-icon{width:42px;height:42px}.garage-bridge>div{flex:1}.garage-bridge small{display:block;font:600 10px Rajdhani,sans-serif;color:#91bacb;letter-spacing:1px}.garage-bridge h2{font:600 23px Rajdhani,sans-serif;letter-spacing:1px;margin:4px 0 0}.garage-bridge #garage-ship{width:170px;min-width:0;margin:0;font-size:13px}.garage-bridge #garage-account{font:600 14px Rajdhani,sans-serif;color:#e9d39e;white-space:nowrap}.garage-bridge #garage-close{min-height:42px;font-size:10px;white-space:nowrap}.garage-live-stats{position:absolute;left:24px;top:27%;width:150px;display:flex;flex-direction:column;gap:7px;pointer-events:none}.garage-deck{pointer-events:auto;align-self:center;width:min(1020px,calc(100% - 36px));box-sizing:border-box;margin-bottom:18px;padding:10px 12px 8px;border:1px solid #80afbf60;border-radius:14px;background:linear-gradient(160deg,#18394be8,#071925ec);backdrop-filter:blur(12px);text-align:center}#garage-preview-label{font:600 10px Rajdhani,sans-serif;letter-spacing:1.6px;color:#9ac1d1;display:block;margin-bottom:9px}#garage-items{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;overflow:visible;padding:0}.garage-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:104px;min-width:0;padding:9px 4px;border:1px solid #5e8ca166;border-radius:10px;background:linear-gradient(140deg,#47718a35,#0c243a66);color:#d8f1f7;cursor:pointer;transition:border-color .15s,background .15s}.garage-slot:hover,.garage-slot:focus-visible{border-color:#8ee7e7;background:#36768b44}.garage-slot .generated-icon{width:46px;height:46px}.garage-slot strong{font:600 11px Rajdhani,sans-serif;letter-spacing:.35px;line-height:1.2}.garage-slot small{font:600 10px Rajdhani,sans-serif;color:#e4cb91}.garage-deck #garage-status{margin:6px 0 0;color:#a7e7d6;font:12px Rajdhani,sans-serif;min-height:0}.garage-deck #garage-status:empty{display:none}
#garage-configurator{position:fixed;inset:0;z-index:82;display:flex;align-items:center;justify-content:center;padding:22px;background:#020c18aa;backdrop-filter:blur(4px);pointer-events:auto;box-sizing:border-box}.garage-option-window{width:min(780px,100%);max-height:calc(100dvh - 44px);overflow:auto;overscroll-behavior:contain;border:1px solid #8fc1d077;border-radius:17px;background:linear-gradient(140deg,#1a3b50f5,#071928fa);box-shadow:0 20px 90px #0009}.garage-option-window>header{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid #6c97aa44}.garage-option-window>header>img{width:62px;height:62px;object-fit:contain}.garage-option-window>header>div{flex:1}.garage-option-window h3{font:600 24px Rajdhani,sans-serif;margin:3px 0}.garage-option-window small{font:11px Rajdhani,sans-serif;color:#9fbdce;letter-spacing:.5px}.garage-option-window>header button{font-size:10px;min-height:40px}.garage-option-window>p{font:14px Rajdhani,sans-serif;color:#accbd8;padding:0 20px;line-height:1.5}#garage-option-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:4px 20px 18px}.garage-option{min-height:160px;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:8px;padding:12px 7px;min-width:0;background:#0a2236a8;color:#c7e6f3;border:1px solid #5e8ca16b;border-radius:12px;cursor:pointer}.garage-option .generated-icon{width:58px;height:58px}.garage-option strong{font:600 17px Rajdhani,sans-serif;letter-spacing:1px}.garage-option span{font:600 10px Rajdhani,sans-serif;color:#e8ca8b}.garage-option small{text-align:center;font-size:10px}.garage-option.locked{opacity:.55}.garage-option.selected{opacity:1;border-color:#82e7e7;background:linear-gradient(140deg,#29718b66,#11374a99);box-shadow:inset 0 0 0 1px #8ce9e62b}.garage-option-window>footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 20px;border-top:1px solid #6994a744}.garage-option-window>footer p{margin:0;color:#f3cd95;font:13px Rajdhani,sans-serif}.garage-option-window>footer button{white-space:nowrap;min-width:190px;font-size:12px}.garage-option-window>footer button:disabled{opacity:.45;cursor:default}.quantity-option{min-height:60px;font:600 23px Rajdhani,sans-serif}#garage-option-choices:has(.quantity-option){grid-template-columns:repeat(5,minmax(0,1fr))}
/* Concise, separate instructions, accessible from the lobby. */
.how-to-play{position:fixed;inset:0;z-index:87;display:flex;align-items:center;justify-content:center;padding:22px;box-sizing:border-box;background:#020a15c9;backdrop-filter:blur(10px)}.help-window{width:min(840px,100%);max-height:calc(100dvh - 44px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #83b4c36b;border-radius:16px;background:linear-gradient(140deg,#183a4fee,#071725fa)}.help-window>header{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid #709aae44}.help-window>header img{width:52px;height:45px;object-fit:contain}.help-window h2{flex:1;margin:0;font:600 23px Rajdhani,sans-serif;letter-spacing:2px}.help-window header button{font-size:10px;min-height:40px}#help-content{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px;overflow:auto;overscroll-behavior:contain}#help-content article{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid #4b7b913d;border-radius:9px;background:#12344a55}#help-content article>.generated-icon{width:36px;height:36px;flex:0 0 36px}#help-content h3{font:600 13px Rajdhani,sans-serif;color:#d4eef6;letter-spacing:1px;margin:0 0 5px}#help-content p{font:13px/1.5 Rajdhani,sans-serif;color:#aac6d6;margin:0}
body[data-sortie-mode=free] #hud .mini-obj-row{display:none}#oswald-radio[data-speaker=alexander]{top:110px;right:22px;bottom:auto;left:auto;width:330px;border-color:#c5a35d99;background:#172c3ce8}#oswald-radio[data-speaker=alexander] .radio-sender{color:#efd797;font-size:11px;letter-spacing:.8px}#oswald-radio[data-speaker=alexander] .radio-avatar{object-fit:cover;object-position:50% 20%;border-color:#d6b668}
.touch-controls .lobby-top-actions{margin-left:4px;margin-right:auto;padding:5px;gap:5px;position:static}.touch-controls .help-trigger{width:44px;height:44px;padding:5px}.touch-controls .help-trigger span{display:none}.touch-controls #fleet-stats{gap:4px;margin-top:6px}.touch-controls .ship-showcase-badge{display:block!important;top:10px}.touch-controls #lobby-ship-title{font-size:17px;letter-spacing:1px}.touch-controls .ship-diagnostic{padding:4px 3px;gap:3px;border-radius:6px}.touch-controls .ship-diagnostic .generated-icon{width:21px;height:21px;flex-basis:21px}.touch-controls .ship-diagnostic strong{font-size:12px;letter-spacing:0}.touch-controls .ship-diagnostic small{font-size:6px;letter-spacing:0;margin:1px 0 3px}.touch-controls .ship-diagnostic i{height:2px}.touch-controls .garage-bridge{margin-top:8px;padding:6px 10px;width:calc(100% - 16px);gap:10px}.touch-controls .garage-bridge>.generated-icon{width:28px;height:28px}.touch-controls .garage-bridge h2{font-size:16px}.touch-controls .garage-bridge small{font-size:8px}.touch-controls .garage-bridge #garage-ship{width:125px;min-height:36px;font-size:11px}.touch-controls .garage-bridge #garage-account{font-size:11px}.touch-controls .garage-bridge #garage-close{font-size:8px;min-height:36px;padding:6px 8px}.touch-controls .garage-live-stats{display:none}.touch-controls .garage-deck{margin-bottom:8px;padding:7px 8px;width:calc(100% - 16px)}.touch-controls #garage-preview-label{font-size:8px;letter-spacing:1px;margin-bottom:6px}.touch-controls #garage-items{gap:5px}.touch-controls .garage-slot{min-height:76px;padding:5px 2px;gap:3px;border-radius:7px}.touch-controls .garage-slot .generated-icon{width:31px;height:31px}.touch-controls .garage-slot strong{font-size:8px;letter-spacing:0}.touch-controls .garage-slot small{font-size:8px}.touch-controls #garage-configurator{padding:8px}.touch-controls .garage-option-window{max-height:calc(100dvh - 16px)}.touch-controls .garage-option-window>header{padding:7px 12px;gap:9px}.touch-controls .garage-option-window>header>img{width:38px;height:38px}.touch-controls .garage-option-window h3{font-size:19px}.touch-controls .garage-option-window>p{font-size:11px;margin:8px 0;padding:0 12px}.touch-controls #garage-option-choices{gap:7px;padding:3px 12px 10px}.touch-controls .garage-option{min-height:110px;padding:7px 3px;gap:5px}.touch-controls .garage-option .generated-icon{width:38px;height:38px}.touch-controls .garage-option strong{font-size:13px}.touch-controls .garage-option span,.touch-controls .garage-option small{font-size:9px}.touch-controls .quantity-option{min-height:44px}.touch-controls .garage-option-window>footer{padding:8px 12px;gap:8px}.touch-controls .garage-option-window>footer p{font-size:11px}.touch-controls .garage-option-window>footer button{min-width:150px;min-height:40px;font-size:10px;padding:8px}.touch-controls #oswald-radio[data-speaker=alexander]{top:66px;left:50%;right:auto;transform:translateX(-50%);width:min(320px,calc(100% - 340px));padding:8px;gap:8px}.touch-controls #oswald-radio[data-speaker=alexander] .radio-avatar{width:38px;height:42px}.touch-controls #oswald-radio[data-speaker=alexander] .radio-sender{font-size:8px;letter-spacing:.3px}.touch-controls #oswald-radio[data-speaker=alexander] .radio-text{font-size:10px;line-height:1.4}
@media(max-width:650px){.touch-controls .ship-diagnostic{flex-direction:column;gap:0;text-align:center;padding:3px 2px}.touch-controls .ship-diagnostic .generated-icon{width:19px;height:19px;flex-basis:19px}.touch-controls .ship-diagnostic>div{width:100%}.touch-controls .ship-diagnostic strong{font-size:10px}.touch-controls .ship-diagnostic small{font-size:5.5px}.touch-controls #lobby-ship-title{font-size:14px}.touch-controls .garage-bridge{gap:6px}.touch-controls .garage-bridge>.generated-icon{display:none}.touch-controls .garage-bridge #garage-account{font-size:9px}.touch-controls .garage-bridge #garage-ship{width:105px;font-size:10px}.touch-controls .garage-bridge h2{font-size:13px}.touch-controls .garage-bridge small{display:none}.touch-controls .garage-slot strong{font-size:7px}.touch-controls .garage-slot .generated-icon{width:27px;height:27px}.touch-controls .garage-slot{min-height:67px}.touch-controls .garage-slot small{font-size:7px}.touch-controls .garage-option-window>header>img{width:30px;height:30px}.touch-controls .garage-option-window h3{font-size:16px}.touch-controls .garage-option{min-height:96px}.touch-controls .garage-option .generated-icon{width:30px;height:30px}.touch-controls .garage-option span,.touch-controls .garage-option small{font-size:8px}}
@media(max-height:440px) and (orientation:landscape){.how-to-play{padding:8px}.help-window{max-height:calc(100dvh - 16px)}.help-window>header{padding:5px 12px}.help-window>header img{width:36px;height:34px}.help-window h2{font-size:18px}.help-window header button{min-height:36px}#help-content{gap:7px;padding:9px}#help-content article{padding:7px;gap:8px}#help-content article>.generated-icon{width:26px;height:26px;flex-basis:26px}#help-content h3{font-size:10px;margin-bottom:3px}#help-content p{font-size:10px;line-height:1.35}.touch-controls .settings-account{display:none}.touch-controls .garage-option-window>header button{min-height:34px}.touch-controls .garage-option-window>footer button{min-height:36px}.touch-controls .garage-option-window>footer p{line-height:1.2}.touch-controls .garage-deck #garage-status{font-size:10px}.touch-controls .settings-window:has(#fleet-account) .settings-account{display:flex;padding:0;margin:0;border:0;min-height:24px}.touch-controls .settings-audio-column{row-gap:3px}}

/* Symmetric telemetry deck: equal cells, centered artwork and tabular terminal digits. */
.lobby-top-actions,.touch-controls .lobby-top-actions{margin-left:auto;margin-right:0}.lobby-header{justify-content:space-between}.campaign-section-label{margin:8px 0 0;padding:5px 0 0;border-top:1px solid #6d9eaf44;color:#99b9cb;font:600 10px Rajdhani,sans-serif;letter-spacing:1.8px}.ship-showcase-badge:after{display:none}
#fleet-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;width:min(100%,520px);max-width:520px;margin:12px auto 0;padding:8px 5px;background:linear-gradient(135deg,#18394be8,#071a2ce8);border:1px solid #87c5dc70;border-radius:12px;box-sizing:border-box;box-shadow:inset 0 1px #b8e8f61a,0 10px 32px #06182433;backdrop-filter:blur(14px)}
#fleet-stats .ship-diagnostic{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:2px 8px;background:none;border:0;border-right:1px solid #7cb2c533;border-radius:0;text-align:center;box-sizing:border-box}#fleet-stats .ship-diagnostic:last-child{border-right:0}#fleet-stats .ship-diagnostic>.generated-icon{width:40px;height:40px;flex:0 0 40px;object-fit:contain;filter:drop-shadow(0 0 6px #45a3c53d)}#fleet-stats .ship-diagnostic>div{width:100%;display:flex;flex-direction:column;align-items:center}#fleet-stats .ship-diagnostic strong,.garage-live-stats .ship-diagnostic strong{font-family:'Share Tech Mono','SFMono-Regular',Consolas,monospace;font-variant-numeric:tabular-nums;font-weight:400;letter-spacing:1px;color:#a8f7f0;text-shadow:0 0 12px #64efd43d}#fleet-stats .ship-diagnostic strong{font-size:22px;line-height:1.2;min-height:27px}#fleet-stats .ship-diagnostic small{font-size:9px;letter-spacing:1px;margin:4px 0 7px;color:#b7d4e1;line-height:1}#fleet-stats .ship-diagnostic i{width:100%;height:5px;background:repeating-linear-gradient(90deg,#54809144 0,#54809144 calc(12.5% - 2px),transparent calc(12.5% - 2px),transparent 12.5%);border-radius:0}#fleet-stats .ship-diagnostic i b{height:100%;background:repeating-linear-gradient(90deg,#85e6db 0,#85e6db calc(12.5% - 2px),transparent calc(12.5% - 2px),transparent 12.5%);box-shadow:none}
.touch-controls #fleet-stats{width:min(100%,390px);margin-top:6px;padding:5px 2px;gap:0;border-radius:8px}.touch-controls #fleet-stats .ship-diagnostic{gap:2px;padding:0 5px}.touch-controls #fleet-stats .ship-diagnostic>.generated-icon{width:24px;height:24px;flex-basis:24px}.touch-controls #fleet-stats .ship-diagnostic strong{font-size:14px;min-height:17px;letter-spacing:.4px}.touch-controls #fleet-stats .ship-diagnostic small{font-size:7px;letter-spacing:.4px;margin:3px 0 4px}.touch-controls #fleet-stats .ship-diagnostic i{height:3px}
@media(max-width:650px){.touch-controls #fleet-stats .ship-diagnostic{padding:0 3px}.touch-controls #fleet-stats .ship-diagnostic>.generated-icon{width:20px;height:20px;flex-basis:20px}.touch-controls #fleet-stats .ship-diagnostic strong{font-size:11px;min-height:14px;letter-spacing:0}.touch-controls #fleet-stats .ship-diagnostic small{font-size:5.5px;letter-spacing:0}.touch-controls #fleet-stats{padding:4px 1px}.touch-controls .campaign-section-label{font-size:8px;margin-top:4px}}

/* One shared measurement aligns the top action bar with its mission column. */
body{--lobby-right-width:266px}.lobby-top-actions,.touch-controls .lobby-top-actions{width:var(--lobby-right-width);flex:0 0 var(--lobby-right-width);box-sizing:border-box;justify-content:center;padding-left:14px;padding-right:14px;gap:8px;margin-right:0}.lobby-grid{grid-template-columns:218px minmax(0,1fr) var(--lobby-right-width)}
@media(min-width:1450px){body{--lobby-right-width:330px}.lobby-grid{grid-template-columns:280px minmax(0,1fr) var(--lobby-right-width)}}
@media(max-width:1100px){body{--lobby-right-width:220px}.lobby-grid{grid-template-columns:186px minmax(0,1fr) var(--lobby-right-width)}}
@media(max-width:760px){body:not(.touch-controls) .lobby-grid{grid-template-columns:140px minmax(0,1fr)}}
.touch-controls{--lobby-right-width:220px}.touch-controls .lobby-grid{grid-template-columns:120px minmax(0,1fr) var(--lobby-right-width)}.touch-controls .lobby-top-actions{padding-left:8px;padding-right:8px;justify-content:flex-end}
@media(max-width:740px) and (orientation:landscape){.touch-controls{--lobby-right-width:185px}.touch-controls .lobby-grid{grid-template-columns:105px minmax(0,1fr) var(--lobby-right-width)}}

/* Keep the always-open mission list in view on short landscape displays. */
.touch-controls .campaign-section-label,.touch-controls .chapter-teaser{display:none}.touch-controls .chapter-thumb{height:30px;flex-basis:30px;margin:0}.touch-controls .missions-header-row{min-height:18px;padding-bottom:3px}.touch-controls .missions-header-row .panel-title{font-size:13px;letter-spacing:1px}.touch-controls .sortie-mode{min-height:34px;padding:5px 8px}.touch-controls .sortie-mode small{display:none}.touch-controls .missions-panel{gap:5px}.touch-controls .missions-list{flex-shrink:0;min-height:58px}.touch-controls .mission-item{min-height:52px;padding:6px 4px}

/* The mobile lobby has one header, one uninterrupted operations column and a fleet footer. */
.lobby-quick-tools{display:none;align-items:center;gap:6px;margin-right:auto}.lobby-quick-tools button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:6px 9px}.lobby-quick-tools .icon{width:18px;height:18px}.lobby-quick-tools span{font:12px 'Share Tech Mono',monospace}.lobby-quick-tools [aria-pressed=true]{color:#d9ac77;opacity:.65}
.garage-bridge{flex-shrink:0;min-height:72px}.garage-fleet{pointer-events:auto;position:absolute;top:108px;left:50%;transform:translateX(-50%);width:min(600px,calc(100% - 390px));display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:7px;border:1px solid #87b7c75c;border-radius:11px;background:linear-gradient(145deg,#15364cda,#081b2bdd);backdrop-filter:blur(12px);box-sizing:border-box}.garage-fleet .ship-card-pill{min-height:62px;max-width:none;padding:5px 2px;gap:4px;color:#b6dce9}.garage-fleet .ship-card-thumb{height:29px}.garage-fleet .ship-card-title{font-size:9px}.garage-ship-navigation{position:absolute;left:max(190px,calc(50% - 560px));right:max(190px,calc(50% - 560px));top:45%;display:flex;justify-content:space-between;pointer-events:none}.garage-ship-arrow{pointer-events:auto;width:46px;height:112px;padding:16px 10px;border:1px solid #8fddec8c;border-radius:6px 16px 6px 16px;background:linear-gradient(150deg,#a5ebff29,#0b2d4688);color:#b5f7ff;box-shadow:inset 0 1px #d9faff55,0 0 18px #2bc6f51a;backdrop-filter:blur(10px);cursor:pointer}.garage-ship-arrow svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.garage-ship-arrow:hover{background:#25758f88;border-color:#d1fcff}.garage-ship-arrow:focus-visible{outline:2px solid #efd59a;outline-offset:4px}
.touch-controls{--lobby-footer-height:122px;--lobby-header-height:55px;--lobby-left-width:120px;--lobby-right-width:220px;--lobby-inset:10px}
.touch-controls .lobby-header{height:var(--lobby-header-height);flex:0 0 var(--lobby-header-height);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);box-sizing:border-box;background:#071b2cda;border-bottom:1px solid #87b7c750}.touch-controls .brand-left{background:none;border:0;border-radius:0;padding:4px 10px}.touch-controls .lobby-top-actions{flex:1;width:auto;min-width:0;margin:0;padding:5px 10px;background:none;border:0;border-radius:0;gap:6px}.touch-controls .lobby-quick-tools{display:flex}.touch-controls .lobby-top-actions>.hud-btn{width:44px;flex:0 0 44px;height:44px;padding:5px}.touch-controls .lobby-top-actions .generated-icon{width:30px;height:30px}.touch-controls .lobby-grid{grid-template-columns:var(--lobby-left-width) minmax(0,1fr) var(--lobby-right-width);grid-template-rows:minmax(0,1fr);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:calc(var(--lobby-footer-height) + env(safe-area-inset-bottom));box-sizing:border-box;min-height:0;overflow:hidden}.touch-controls .heroes-panel,.touch-controls .missions-panel{align-self:stretch;min-height:0;height:100%;max-height:none;box-sizing:border-box;padding:var(--lobby-inset);gap:6px;border-radius:0}.touch-controls .missions-panel{overflow:hidden}.touch-controls .heroes-panel{overflow-y:auto;overscroll-behavior:contain}.touch-controls .heroes-panel>.panel-title{margin:0;min-height:18px;padding-bottom:3px}.touch-controls .hero-cards{gap:8px}.touch-controls .hero-card{border-radius:7px}.touch-controls .missions-list{flex:1 1 0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:0 3px 8px 0;scroll-padding-bottom:8px;scrollbar-width:thin}.touch-controls .mission-item{flex:0 0 auto;min-height:54px;box-sizing:border-box;gap:7px}.touch-controls .mission-index{min-width:22px;font-size:21px}.touch-controls .mission-obj{-webkit-line-clamp:2;margin-top:3px}.touch-controls .sortie-modes{gap:4px}.touch-controls .sortie-mode{min-height:34px}.touch-controls .chapter-thumb{height:28px;flex-basis:28px;border-radius:5px}.touch-controls .ship-showcase-badge{top:10px;left:8px;right:8px;padding:0}.touch-controls .hangar-bottom-Cluster{left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));height:calc(var(--lobby-footer-height) - 16px);box-sizing:border-box;gap:6px;justify-content:end;align-items:center;pointer-events:none}.touch-controls .ship-selector-bar{width:min(100%,660px);height:56px;padding:4px 8px;border-radius:8px;box-sizing:border-box}.touch-controls .ship-selector-bar .ships-selector-list{height:100%;padding:0;gap:5px}.touch-controls .ship-card-pill{height:46px;min-height:44px;min-width:0;max-width:68px;gap:1px;padding:3px}.touch-controls .ship-card-lock{font-size:6px;height:9px}.touch-controls #lobby-overlay .hangar-launch-bar{width:min(100%,500px);height:44px;min-height:44px}.touch-controls #btn-launch-selected,.touch-controls #btn-garage{height:44px}.touch-controls #btn-new-sortie{position:absolute;left:0;bottom:4px;width:auto;max-width:110px}.touch-controls #lobby-overlay>a[href='./credits.html']{display:none}
.touch-controls .garage-bridge{width:calc(100% - 20px);min-height:48px;height:48px;margin-top:max(8px,env(safe-area-inset-top));padding:5px 10px;gap:8px}.touch-controls .garage-bridge>div{min-width:0}.touch-controls .garage-bridge h2{white-space:nowrap;font-size:16px;overflow:hidden;text-overflow:ellipsis}.touch-controls .garage-bridge small{display:none}.touch-controls .garage-fleet{top:calc(max(8px,env(safe-area-inset-top)) + 55px);width:min(510px,calc(100% - 140px));gap:5px;padding:4px;border-radius:8px}.touch-controls .garage-fleet .ship-card-pill{height:44px;min-height:44px;width:100%;max-width:none;padding:2px;gap:1px}.touch-controls .garage-fleet .ship-card-thumb{height:24px}.touch-controls .garage-fleet .ship-card-title{font-size:7px}.touch-controls .garage-ship-navigation{left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));top:calc(50% - 28px)}.touch-controls .garage-ship-arrow{width:40px;height:80px;padding:10px 8px}.touch-controls .garage-deck{width:calc(100% - 20px);margin-bottom:max(8px,env(safe-area-inset-bottom))}.touch-controls .garage-slot{min-height:68px}.touch-controls #garage-preview-label{margin-bottom:4px}
@media(max-width:740px) and (orientation:landscape){.touch-controls{--lobby-left-width:100px;--lobby-right-width:185px;--lobby-inset:7px;--lobby-footer-height:114px}.touch-controls .brand-left{padding-left:8px;padding-right:8px}.touch-controls .astraterris-brand strong{font-size:14px}.touch-controls .astraterris-brand .lobby-logo{width:32px;height:36px}.touch-controls .lobby-top-actions{padding-left:4px;padding-right:8px}.touch-controls .lobby-quick-tools{gap:4px}.touch-controls .lobby-quick-tools button{padding:5px 7px}.touch-controls .heroes-panel .hero-card-img{width:30px;min-width:30px;height:45px}.touch-controls .hero-card-info{padding:4px}.touch-controls .hero-card-name{font-size:10px}.touch-controls .hero-ship-pill{font-size:6px}.touch-controls .mission-item{min-height:50px}.touch-controls .mission-obj{font-size:8px}.touch-controls .mission-title{font-size:10px}.touch-controls .ship-selector-bar{height:50px}.touch-controls .ship-card-thumb{height:16px}.touch-controls .ship-card-pill{height:42px;min-height:42px}.touch-controls .garage-fleet{width:calc(100% - 124px)}.touch-controls .garage-bridge h2{font-size:13px}.touch-controls .garage-bridge #garage-account{font-size:10px}.touch-controls .garage-slot{min-height:62px}.touch-controls .garage-slot .generated-icon{width:26px;height:26px}}
/* Operations stay at the right edge; the fleet footer occupies the hangar side only. */
.touch-controls .lobby-grid{padding-bottom:0}.touch-controls .missions-panel{padding-bottom:max(var(--lobby-inset),env(safe-area-inset-bottom))}.touch-controls .heroes-panel{padding-bottom:calc(var(--lobby-footer-height) + 8px)}.touch-controls .hangar-bottom-Cluster{right:calc(var(--lobby-right-width) + max(10px,env(safe-area-inset-right)));height:calc(var(--lobby-footer-height) - 16px)}.touch-controls .ship-selector-bar{width:100%}.touch-controls #lobby-overlay .hangar-launch-bar{width:100%}
.touch-controls .lobby-top-actions .settings-trigger{order:2}.touch-controls .lobby-top-actions .help-trigger{order:1}.touch-controls .lobby-quick-tools{order:0}.touch-controls .lobby-quick-tools:after{content:'ASTRA HAVEN / EARTH';padding-left:14px;color:#8caeba;font:10px 'Share Tech Mono',monospace;letter-spacing:1.5px}@media(max-width:740px){.touch-controls .lobby-quick-tools:after{display:none}}

/* The workshop entry lives with the crew, leaving one clear launch action below the fleet. */
.crew-garage-dock{flex:0 0 auto;width:100%;min-width:0;margin-top:2px}#lobby-overlay #btn-garage{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:68px;height:auto;box-sizing:border-box;padding:8px 11px;border:1px solid #8ecbda8c;border-radius:12px;background:linear-gradient(130deg,#bdefff24 0,#387b982b 24%,#071e35c7 65%);backdrop-filter:blur(14px) saturate(1.35);box-shadow:inset 0 1px #d9f7ff66,inset 0 -1px #020c1e77,0 5px 20px #02111b44;color:#e6f7fc;text-align:left;cursor:pointer;overflow:hidden;transition:border-color .16s,box-shadow .16s,background .16s}#lobby-overlay #btn-garage:before{display:none}#lobby-overlay #btn-garage:after{content:'';position:absolute;left:10px;right:10px;top:0;height:1px;background:linear-gradient(90deg,transparent,#c0eeff99,transparent);pointer-events:none}#lobby-overlay #btn-garage>img{width:46px;height:46px;object-fit:contain;flex:0 0 46px;filter:drop-shadow(0 2px 3px #0008)}#lobby-overlay #btn-garage>span{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}#lobby-overlay #btn-garage strong{font:700 14px/1.1 Rajdhani,sans-serif;letter-spacing:1.7px}#lobby-overlay #btn-garage small{font:600 9px/1.2 Rajdhani,sans-serif;letter-spacing:1px;color:#a7cbd9}#lobby-overlay #btn-garage>svg{width:9px;height:17px;flex:0 0 9px;fill:none;stroke:#9cdae5;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#lobby-overlay #btn-garage:hover,#lobby-overlay #btn-garage:focus-visible{border-color:#c6faff;box-shadow:inset 0 1px #e1fbff80,0 0 20px #43b9d435}#lobby-overlay #btn-garage:active{background:#39728c70}
.touch-controls .crew-garage-dock{margin:0}.touch-controls #lobby-overlay #btn-garage{min-height:48px;height:48px;padding:5px;gap:4px;border-radius:8px}.touch-controls #lobby-overlay #btn-garage>img{width:30px;height:30px;flex-basis:30px}.touch-controls #lobby-overlay #btn-garage>span{gap:3px}.touch-controls #lobby-overlay #btn-garage strong{font-size:9px;letter-spacing:.5px}.touch-controls #lobby-overlay #btn-garage small{font-size:7px;letter-spacing:.25px}.touch-controls #lobby-overlay #btn-garage>svg{display:none}.touch-controls .heroes-panel .hero-card{min-height:50px}.touch-controls .heroes-panel .hero-card-img{height:50px}.touch-controls #lobby-overlay .hangar-launch-bar{grid-template-columns:minmax(0,1fr)}.touch-controls #lobby-overlay #btn-launch-selected,.touch-controls #lobby-overlay #btn-new-sortie[hidden]+#btn-launch-selected{grid-column:1;grid-row:1}.touch-controls #lobby-overlay #btn-new-sortie{position:static;width:auto;max-width:110px;height:44px;min-height:44px;grid-column:1;grid-row:1;margin:0}.touch-controls #lobby-overlay .hangar-launch-bar:has(#btn-new-sortie:not([hidden])){grid-template-columns:auto minmax(0,1fr)}.touch-controls #lobby-overlay #btn-new-sortie:not([hidden])+#btn-launch-selected{grid-column:2}
@media(max-width:740px) and (orientation:landscape){.touch-controls #lobby-overlay #btn-garage>img{width:27px;height:27px;flex-basis:27px}.touch-controls #lobby-overlay #btn-garage strong{font-size:8px;letter-spacing:.25px}.touch-controls #lobby-overlay #btn-garage small{font-size:6.5px;letter-spacing:0}}@media(max-height:360px) and (orientation:landscape){.touch-controls .heroes-panel>.panel-title{display:none}.touch-controls .heroes-panel .hero-card{min-height:38px;height:38px}.touch-controls .heroes-panel .hero-card-img{height:38px}.touch-controls .hero-cards{gap:6px}.touch-controls .heroes-panel{gap:6px}.touch-controls .heroes-panel .hero-ship-pill{margin-top:2px}.touch-controls #lobby-overlay #btn-garage{height:44px;min-height:44px}}
.heroes-panel{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}

/* A temporary selection transmission restores Oswald without consuming a permanent mobile rail. */
.touch-controls.lobby-oswald-visible .oswald-lobby-box{position:fixed;left:calc(var(--lobby-left-width) + 8px + env(safe-area-inset-left));right:calc(var(--lobby-right-width) + 8px + env(safe-area-inset-right));bottom:calc(var(--lobby-footer-height) + max(6px,env(safe-area-inset-bottom)));display:flex;align-items:center;flex-direction:row;gap:7px;min-height:44px;width:auto;margin:0;padding:6px 8px;border:1px solid #71adbd77;border-radius:8px;background:#071e30e8;backdrop-filter:blur(12px);pointer-events:none;z-index:8}.touch-controls.lobby-oswald-visible .oswald-lobby-img{width:30px;height:30px;flex:0 0 30px;border-radius:6px}.touch-controls.lobby-oswald-visible .oswald-lobby-title{font-size:8px;letter-spacing:.7px}.touch-controls.lobby-oswald-visible .oswald-lobby-text{font-size:10px;line-height:1.25;margin:3px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:650px){.touch-controls.lobby-oswald-visible .oswald-lobby-title{font-size:7px}.touch-controls.lobby-oswald-visible .oswald-lobby-text{font-size:8px}.touch-controls.lobby-oswald-visible .oswald-lobby-img{width:26px;height:26px;flex-basis:26px}}
