.town-page{--town-ink:#f8f7ff;--town-muted:#bdb1cf;--town-purple:#a98bff;overflow:hidden;background:#050506;color:var(--town-ink)}
.town-page button,.town-page a{-webkit-tap-highlight-color:transparent}.town-page button{font:inherit;cursor:pointer}.town-page button:disabled{cursor:wait;opacity:.65}.town-page :focus-visible{outline:2px solid #c9b4ff;outline-offset:5px}.town-page [hidden]{display:none!important}
.town-skip{position:fixed;top:-80px;left:20px;z-index:10000;background:#7148f6;color:white;padding:14px;border-radius:10px}.town-skip:focus{top:15px}
.town-play{position:fixed;inset:106px 0 0;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#443056,#171221 60%,#050506)}
#town-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;outline-offset:-4px;cursor:grab}#town-canvas:active{cursor:grabbing}
.town-top{position:absolute;top:20px;left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}.town-top>*{pointer-events:auto}
.town-wordmark{display:flex;flex-direction:column;text-shadow:0 2px 15px #000;background:#100c19ab;padding:10px 15px;border:1px solid #cab3ff20;border-radius:12px;backdrop-filter:blur(12px)}.town-wordmark b{font-size:12px;letter-spacing:.19em;line-height:1.6}.town-wordmark span{font-size:10px;color:#d3c8e1;letter-spacing:.03em}
.town-tools{display:flex;gap:8px}.town-tools button,.town-bottom button,.town-touch-actions button{border:1px solid #cfb7ff3a;background:#171321db;color:#f8f7ff;border-radius:12px;min-height:44px;padding:10px 15px;backdrop-filter:blur(12px);font-size:12px}.town-tools button:hover,.town-bottom button:hover{background:#302143}.town-tools kbd{padding:2px 5px;margin-left:8px;background:#ffffff12;border-radius:4px;color:#d8c9ed;font:10px Oxygen,sans-serif}
.town-objective{position:absolute;top:97px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;white-space:nowrap;background:#171321da;border:1px solid #c9b4ff40;border-radius:30px;padding:8px 10px 8px 16px;backdrop-filter:blur(12px);font-size:12px;box-shadow:0 10px 35px #0004}.town-spark{width:7px;height:7px;transform:rotate(45deg);background:#cdb8ff;box-shadow:0 0 15px #b17aff}.town-objective button{border:0;background:#7148f62e;border-radius:20px;color:#e1d5ff;padding:8px 12px;font-size:11px;min-height:32px}
.town-intro{position:absolute;left:clamp(24px,4vw,68px);bottom:60px;width:min(420px,42vw);padding:28px 30px;border:1px solid #c9b4ff30;background:linear-gradient(145deg,#20182cf5,#100c19eb);border-radius:24px;box-shadow:0 25px 100px #0005;backdrop-filter:blur(12px)}
.town-page .town-kicker{font-family:Oxygen,Arial,sans-serif;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#c3a9f3;margin:0 0 12px;line-height:1.6}
.town-page .town-intro h1{font:400 clamp(2rem,3.4vw,3.2rem)/1.08 Lora,Georgia,serif!important;letter-spacing:-.05em!important;margin:0 0 18px!important;color:#f8f7ff!important}.town-intro h1 em,.town-index h2 em{color:#c5afff;font-weight:400}.town-intro>p:not(.town-kicker):not(.town-loading){font-size:14px;line-height:1.7;color:#c5bcd3;margin:0 0 23px;max-width:36ch}
.town-intro-actions{display:flex;align-items:flex-start;flex-direction:column;gap:16px}.town-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 20px;border:1px solid #bb9dff4a;border-radius:11px;background:linear-gradient(120deg,#7148f6,#6943d1 60%,#499ae8);color:#fff!important;text-decoration:none;font:700 12px Oxygen,Arial,sans-serif;box-shadow:0 6px 25px #7148f62e}.town-primary:hover{filter:brightness(1.12)}.town-intro-actions>a{font-size:12px;color:#d4c5ed;text-underline-offset:4px}.town-loading{font-size:10px!important;line-height:1.5;color:#a998bb;margin:18px 0 0!important}
.town-arrival{position:absolute;top:155px;left:50%;transform:translateX(-50%);max-width:90%;text-align:center;font:400 22px Lora,serif;color:#fff;text-shadow:0 2px 6px #000,0 0 22px #000;pointer-events:none;opacity:0;transition:opacity .35s}.town-arrival.visible{opacity:1}
.town-near{position:absolute;bottom:100px;right:28px;width:290px;padding:18px;border:1px solid #c9b4ff50;border-radius:18px;background:#171321ed;backdrop-filter:blur(15px);box-shadow:0 15px 40px #0004}.town-near .town-kicker{margin-bottom:6px}.town-near strong{display:block;font:400 23px/1.2 Lora,serif;margin-bottom:16px}.town-near button{width:100%}.town-near kbd{font:10px Oxygen,sans-serif;background:#ffffff21;border-radius:4px;padding:2px 5px}
.town-controls{position:absolute;inset:0;pointer-events:none}.town-controls>*{pointer-events:auto}.town-desktop-help{position:absolute;left:50%;bottom:47px;transform:translateX(-50%);display:flex;gap:18px;white-space:nowrap;background:#120d1bd9;border:1px solid #c9b4ff20;border-radius:10px;padding:11px 17px;font-size:11px;color:#e2d9ed}.town-desktop-help kbd{font:10px Oxygen,sans-serif;color:#e4d9ff;border:1px solid #baa0e34a;border-radius:4px;padding:3px 5px;margin-right:4px}
.town-stick{display:none;position:absolute;bottom:max(49px,env(safe-area-inset-bottom));left:max(24px,env(safe-area-inset-left));width:100px;height:100px;border:1px solid #d4baff60;background:#1713219e;border-radius:50%;touch-action:none;box-shadow:inset 0 0 30px #7148f630;backdrop-filter:blur(8px)}.town-stick span{position:absolute;left:30px;top:30px;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#dbcdff,#9a75ee 50%,#6340b9);box-shadow:0 4px 16px #08051070;pointer-events:none}
.town-touch-actions{display:none;position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(65px,env(safe-area-inset-bottom));gap:10px}.town-touch-actions button{width:58px;height:58px;border-radius:50%;font-size:11px;touch-action:none}.town-touch-actions button[aria-pressed=true]{background:#7148f6cc;box-shadow:0 0 20px #9973ee60}
.town-bottom{position:absolute;bottom:max(8px,env(safe-area-inset-bottom));left:24px;right:24px;display:flex;justify-content:space-between;pointer-events:none}.town-bottom button{pointer-events:auto;min-height:32px;padding:6px 9px;font-size:10px;color:#d0c4df;border-color:transparent;background:#17132199;border-radius:7px}
.town-index{display:none;width:min(1200px,calc(100% - 80px));margin:42px auto 80px}.town-page.town-list{overflow:auto}.town-list .town-play{display:none}.town-list .town-index{display:block}.town-list [data-travel]{display:none}.town-page .town-index h2{font:400 clamp(2rem,5vw,4rem)/1.07 Lora,serif!important;letter-spacing:-.05em;margin:0 0 20px}.town-index>p:not(.town-kicker){max-width:650px;color:var(--town-muted);font-size:15px;line-height:1.8}.town-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:42px}.town-project{padding:28px;background:linear-gradient(135deg,#ffffff05,#9d79ed05),#15111d;border:1px solid #c9b4ff25;border-radius:20px}.town-page .town-project h3{font:400 28px/1.2 Lora,serif;margin:0 0 16px}.town-project>p:not(.town-kicker){font-size:13px;line-height:1.85;color:#bdb1cf}.town-status{display:inline-block;font-size:10px;color:#cfbdeb;background:#7148f617;border:1px solid #baa0e326;border-radius:5px;padding:5px 8px;margin:8px 0}.town-actions{display:flex;gap:20px;align-items:center;margin-top:18px}.town-actions a,.town-actions button{font-size:12px;color:#d8c7fc}.town-actions button{background:transparent;border:0}.town-offer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px;margin-top:28px;border:1px solid #bb9af54a;border-radius:20px;background:#21172f}.town-page .town-offer h3{font:400 24px/1.25 Lora,serif;margin:0}.town-offer p{font-size:14px;color:#d1c4e1}
.town-dialog{box-sizing:border-box;background:#15111df5;color:#f8f7ff;border:1px solid #c9b4ff40;border-radius:24px;box-shadow:0 30px 100px #0008;padding:28px;width:min(690px,calc(100vw - 32px));max-height:calc(100dvh - 160px);margin:auto;overflow:auto;overscroll-behavior:contain;font-family:Oxygen,Arial,sans-serif}.town-dialog::backdrop{background:#050506ad;backdrop-filter:blur(8px)}.town-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.town-dialog-top .town-kicker{margin:0}.town-dialog [data-close]{flex:none;min-width:44px;min-height:44px;color:#f8f7ff;background:#ffffff08;border:1px solid #c9b4ff30;border-radius:50%;font:24px Arial,sans-serif}.town-page .town-dialog h2{font:400 38px/1.12 Lora,Georgia,serif!important;letter-spacing:-.04em!important;margin:0 0 15px!important}.town-dialog p{font-size:13px;line-height:1.8;color:#bdb1cf}.town-dialog a{color:#ceb8ff;text-underline-offset:4px}.town-map-list{padding:0;margin:24px 0;list-style:none;display:grid;gap:8px}.town-map-list li{display:flex;align-items:center;gap:8px;border:1px solid #c9b4ff23;border-radius:12px;background:#241b311f}.town-map-list button{display:flex;align-items:center;gap:14px;text-align:left;width:100%;border:0;background:transparent;color:#f8f7ff;padding:14px;min-height:64px;border-radius:12px}.town-map-list button:hover{background:#7148f612}.town-map-list button>span:nth-child(2){flex:1}.town-map-list strong{display:block;font-size:13px;font-weight:400}.town-map-list small{display:block;font-size:10px;color:#b5a6c7;margin-top:5px}.town-map-list .map-number{font-size:10px;color:#a68dc8}.town-map-list [data-travel].visited .map-number{color:#e8dcff;text-shadow:0 0 14px #ac80ff}.town-map-list li>a{padding:14px;text-decoration:none;min-width:44px;min-height:44px}.town-map-footer{display:flex;justify-content:space-between;gap:20px;font-size:12px}.town-dialog .town-case-unlocked{font-size:10px;color:#c4a7ff;letter-spacing:.16em;text-transform:uppercase}.town-dialog .town-case-lead{font-size:15px;color:#ded4e9}.town-workflow{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;margin:25px 0}.town-workflow li{padding:16px;border:1px solid #c9b4ff25;border-radius:10px;background:#9d79ed08}.town-workflow strong{font-size:12px;color:#dbc6ff}.town-workflow p{font-size:12px;margin-bottom:0}.town-page .town-dialog h3{font-size:15px;font-weight:400;margin:25px 0 8px}.town-case-status{border-left:2px solid #9d79ed;padding:5px 0 5px 16px;margin:25px 0}.town-case-status p{margin:8px 0 0}.town-credits-dialog{width:min(590px,calc(100vw - 32px))}
@media(pointer:coarse),(max-width:700px){.town-stick,.town-touch-actions{display:flex}.town-desktop-help{display:none}}
@media(max-width:700px){.town-play{top:96px}.town-top{top:12px;left:14px;right:14px;gap:8px}.town-wordmark{padding:8px 10px}.town-wordmark b{font-size:10px;letter-spacing:.12em}.town-wordmark span{font-size:8px}.town-tools{gap:5px}.town-tools button{padding:8px 10px;font-size:10px}.town-tools kbd{display:none}.town-objective{top:76px;font-size:10px;max-width:calc(100% - 28px);padding-left:12px;gap:7px}.town-objective button{font-size:10px;padding:6px 10px}.town-arrival{top:132px;font-size:18px}.town-intro{left:16px;bottom:48px;width:calc(100% - 32px);padding:23px;border-radius:20px}.town-page .town-intro h1{font-size:clamp(27px,7vw,36px)!important;max-width:260px;margin-bottom:12px!important}.town-intro>p:not(.town-kicker):not(.town-loading){font-size:12px;line-height:1.6;margin-bottom:16px;max-width:40ch}.town-intro .town-kicker{margin-bottom:8px;font-size:9px}.town-intro-actions{gap:12px}.town-intro-actions>a{font-size:11px}.town-loading{font-size:9px!important;margin-top:12px!important}.town-near{bottom:162px;right:16px;left:16px;width:auto;padding:14px 16px;display:grid;grid-template-columns:1fr auto;gap:0 12px}.town-near .town-kicker{font-size:8px;grid-column:1}.town-near strong{font-size:19px;margin:0;grid-column:1}.town-near button{grid-column:2;grid-row:1/3;width:auto;max-width:135px;padding:10px 12px;font-size:10px}.town-near kbd{display:none}.town-bottom{left:14px;right:14px}.town-bottom button{font-size:9px}.town-dialog{max-height:calc(100dvh - 120px);padding:20px;border-radius:20px}.town-page .town-dialog h2{font-size:30px!important}.town-index{width:calc(100% - 32px);margin-top:28px}.town-project-grid{grid-template-columns:1fr;gap:14px}.town-project{padding:22px}.town-offer{flex-direction:column;align-items:flex-start;padding:22px}.town-map-list button{padding:12px;gap:10px}.town-map-list small{font-size:9px}}
@media(max-height:620px){.town-intro{padding:20px;bottom:42px}.town-intro>p:not(.town-kicker):not(.town-loading){display:none}.town-page .town-intro h1{font-size:30px!important}.town-loading{margin-top:10px!important}.town-objective{top:70px}.town-arrival{top:115px}}
@media(max-height:450px) and (orientation:landscape){.town-play{top:88px}.town-top{top:7px}.town-wordmark span{display:none}.town-tools button{min-height:34px}.town-intro{width:340px;left:20px;bottom:36px;padding:16px}.town-intro .town-kicker,.town-loading{display:none}.town-page .town-intro h1{font-size:25px!important;margin-bottom:12px!important}.town-intro-actions{flex-direction:row;align-items:center;gap:12px}.town-intro-actions>a{max-width:110px}.town-primary{min-height:40px;padding:10px 13px;font-size:10px}.town-objective{top:8px;left:50%;font-size:9px;padding:5px 8px}.town-objective button{display:none}.town-arrival{top:60px;font-size:16px}.town-stick{width:80px;height:80px;bottom:39px}.town-stick span{left:20px;top:20px}.town-touch-actions{bottom:45px}.town-near{left:auto;right:180px;bottom:45px;width:230px;display:block;padding:12px}.town-near .town-kicker{display:none}.town-near strong{font-size:17px;margin-bottom:8px}.town-near button{max-width:none;width:100%}.town-dialog{max-height:calc(100dvh - 32px);margin:16px auto}}
@media(prefers-reduced-motion:reduce){.town-page *{scroll-behavior:auto!important;transition:none!important}.town-arrival{transition:none}}
@media(max-width:360px){.town-near strong{font-size:16px}.town-near .town-kicker{display:none}.town-near button{max-width:120px}.town-near{min-height:64px;align-items:center}}
@media(min-width:701px) and (max-height:700px){.town-intro{padding:22px 24px;bottom:48px}.town-page .town-intro h1{font-size:36px!important;margin-bottom:14px!important}.town-intro>p:not(.town-kicker):not(.town-loading){font-size:12px;margin-bottom:16px}.town-intro-actions{gap:12px}.town-loading{margin-top:12px!important}}
@media(max-height:450px) and (orientation:landscape){.town-near{top:53px;bottom:auto;left:124px;right:14px;width:auto;display:flex;align-items:center;gap:12px;padding:8px 10px}.town-near strong{font-size:14px;margin:0;flex:1}.town-near button{width:auto;min-height:36px;font-size:9px}.town-arrival{top:102px;font-size:13px}}

/* A compact flight HUD and a four-button diamond, with independent multitouch input. */
.orbit-hud{position:absolute;top:100px;left:28px;width:248px;padding:12px 14px;background:#15111de0;border:1px solid #cab3ff30;border-radius:12px;backdrop-filter:blur(12px);font:10px/1.5 Oxygen,sans-serif;color:#c8bcda;pointer-events:none}
.orbit-hud-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.orbit-hud strong{color:#f0e9ff;font-size:12px;font-weight:400}.orbit-hud button{pointer-events:auto;min-height:36px;padding:5px 9px;font-size:10px;color:#f1eaff;border:1px solid #cfb7ff50;border-radius:7px;background:#47325e}.orbit-shield-row{display:flex;gap:10px;align-items:center;margin-top:8px}.orbit-shield-row progress{appearance:none;width:92px;height:4px;border:0;border-radius:3px;overflow:hidden;background:#ffffff20}.orbit-shield-row progress::-webkit-progress-bar{background:#ffffff20}.orbit-shield-row progress::-webkit-progress-value{background:#bea2ff}.orbit-shield-row progress::-moz-progress-bar{background:#bea2ff}#orbit-enemies,#orbit-clock{display:block;font-size:9px;margin-top:5px}#orbit-clock{color:#a8a0bd}
.town-stick small{position:absolute;bottom:-21px;left:0;right:0;text-align:center;color:#bdb1cf;font:8px Oxygen,sans-serif;letter-spacing:.1em;pointer-events:none}
.orbit-armory{border-top:1px solid #c9b4ff25;margin:18px 0;padding:0 0 16px}.orbit-armory>div{display:flex;gap:8px;flex-wrap:wrap}.orbit-armory button{min-height:44px;border:1px solid #c9b4ff40;border-radius:8px;background:#44305d;color:#efe7ff;font-size:11px;padding:9px 12px}
.town-touch-actions{width:166px;height:166px;right:max(18px,env(safe-area-inset-right));bottom:max(46px,calc(env(safe-area-inset-bottom) + 30px))}
.town-touch-actions button{position:absolute;width:54px;height:54px;min-height:54px;padding:3px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#171321ed;box-shadow:0 3px 14px #0004;user-select:none;-webkit-user-select:none;touch-action:none}
.town-touch-actions b{font:26px/26px Arial,sans-serif;font-weight:400}.town-touch-actions small{font:7px/11px Oxygen,sans-serif;letter-spacing:.04em;color:#e7dbf4}.town-touch-actions .pad-triangle{left:56px;top:0;color:#a8e6d1}.town-touch-actions .pad-square{left:0;top:56px;color:#e0b8f0}.town-touch-actions .pad-circle{right:0;top:56px;color:#f2b7cb}.town-touch-actions .pad-cross{left:56px;bottom:0;color:#abd4f6}.town-touch-actions button:active{background:#5d458e;transform:scale(.96)}.town-touch-actions button:disabled{cursor:default;opacity:.38}.town-touch-actions button[aria-disabled=true]{opacity:.5}.town-stick{bottom:max(74px,calc(env(safe-area-inset-bottom) + 58px))}
@media(max-width:700px){.orbit-hud{top:128px;left:14px;width:230px;padding:8px 10px}.orbit-hud strong{font-size:11px}.orbit-hud button{min-height:32px}.town-near{bottom:222px}.town-arrival{top:235px;font-size:15px;background:#15111de0;padding:8px 12px;border-radius:10px;width:max-content;max-width:calc(100% - 32px)}}
@media(max-width:360px){.town-touch-actions{right:10px;width:154px;height:154px}.town-touch-actions button{width:50px;height:50px;min-height:50px}.town-touch-actions .pad-triangle,.town-touch-actions .pad-cross{left:52px}.town-touch-actions .pad-square,.town-touch-actions .pad-circle{top:52px}.town-stick{left:16px;width:88px;height:88px}.town-stick span{left:24px;top:24px}.town-near{bottom:211px}}
@media(max-height:650px) and (max-width:700px){.orbit-hud{top:116px;padding:6px 9px}.orbit-hud #orbit-clock{display:none}.orbit-hud #orbit-enemies{font-size:8px;margin-top:2px}.orbit-shield-row{margin-top:3px}.town-arrival{top:50px;font-size:11px;max-width:70%}.town-near{padding:8px 10px}.town-near strong{font-size:15px}.town-near .town-kicker{display:none}}
@media(max-height:450px) and (orientation:landscape){.orbit-hud{top:52px;left:14px;width:170px;padding:4px 8px}.orbit-hud #orbit-clock,.orbit-hud #orbit-enemies{display:none}.orbit-hud strong{font-size:9px}.orbit-hud button{min-height:28px}.orbit-shield-row{margin-top:0;font-size:8px}.town-touch-actions{width:136px;height:136px;bottom:35px;right:12px}.town-touch-actions button{width:44px;height:44px;min-height:44px}.town-touch-actions .pad-triangle,.town-touch-actions .pad-cross{left:46px}.town-touch-actions .pad-square,.town-touch-actions .pad-circle{top:46px}.town-touch-actions b{font-size:22px;line-height:22px}.town-touch-actions small{font-size:6px}.town-stick{bottom:48px}.town-near{top:56px;left:195px;right:159px;bottom:auto;display:block;padding:6px 8px;min-height:0}.town-near strong{font-size:12px;margin-bottom:5px}.town-near button{width:100%;min-height:32px;font-size:8px;padding:6px}.town-arrival{top:auto;bottom:34px;max-width:calc(100% - 310px);font-size:10px;padding:4px 8px}}
/* First-person expedition: independent move/look sticks, visible resources and contextual stories. */
#orbit-reticle{position:absolute;left:50%;top:50%;width:20px;height:20px;transform:translate(-50%,-50%);border:1px solid #e5d7ff9c;border-radius:50%;pointer-events:none;box-shadow:0 0 4px #000}
#orbit-reticle i{position:absolute;left:8px;top:8px;width:2px;height:2px;border-radius:50%;background:#f4eeff}
#orbit-reticle.locked{border-color:#a1f2e1;box-shadow:0 0 13px #81d5d144}
#orbit-field-screen{position:absolute;inset:0;pointer-events:none;opacity:0;box-shadow:inset 0 0 100px 24px #ae7cff55;border:1px solid #c7a7ff4d;border-radius:35px;transition:opacity .18s}
.orbit-thrust #orbit-field-screen{border-bottom:3px solid #b0efffcc}
#orbit-wave{display:block;font:9px/1.5 Oxygen,sans-serif;letter-spacing:.1em;color:#c7afff;margin-bottom:4px}
.orbit-resources{display:grid;gap:2px}.orbit-resources .orbit-shield-row{margin-top:4px}
#orbit-fuel::-webkit-progress-value{background:#a2e9ff}#orbit-fuel::-moz-progress-bar{background:#a2e9ff}
#orbit-field::-webkit-progress-value{background:#d0a1ff}#orbit-field::-moz-progress-bar{background:#d0a1ff}
#orbit-capture{display:block;width:100%;height:4px;accent-color:#c6a3ff;margin:0 0 12px;grid-column:1/-1}
.town-near button:disabled{cursor:default;background:#40324d;box-shadow:none;opacity:.75}
.town-look{left:auto;right:max(24px,env(safe-area-inset-right))}.town-look span{background:radial-gradient(circle at 30% 20%,#e7dfff,#a18fcb 50%,#514464)}
@media(pointer:coarse),(max-width:700px){
 .town-stick{width:92px;height:92px;bottom:max(47px,calc(env(safe-area-inset-bottom) + 36px));left:20px}
 .town-stick span{left:26px;top:26px}.town-look{left:auto;right:20px}
 .town-touch-actions{width:144px;height:144px;right:12px;bottom:160px}
 .town-touch-actions button{width:48px;height:48px;min-height:48px}
 .town-touch-actions .pad-triangle,.town-touch-actions .pad-cross{left:48px}
 .town-touch-actions .pad-square,.town-touch-actions .pad-circle{top:48px}
 .town-near{left:14px;right:174px;bottom:169px;width:auto;display:block;padding:12px;min-height:0}
 .town-near strong{font-size:18px;margin-bottom:8px}.town-near button{width:100%;max-width:none;min-height:42px;padding:8px}
 .town-near .town-kicker{display:block;font-size:8px;line-height:1.4}
}
@media(max-width:700px){
 .orbit-hud{top:122px;left:14px;width:210px}.orbit-hud-heading strong{font-size:10px}
 .town-arrival{top:278px;font-size:13px;max-width:calc(100% - 40px)}
 .town-desktop-help{display:none}
}
@media(max-height:680px) and (max-width:700px) and (orientation:portrait){
 .town-top{top:8px}.town-wordmark span{display:none}.town-wordmark{padding:7px 9px}.town-tools button{min-height:38px}
 .town-objective{top:54px}.orbit-hud{top:102px;left:14px;width:205px;padding:6px 9px}
 .orbit-hud #orbit-clock,.orbit-hud #orbit-enemies{display:none}.orbit-hud button{min-height:30px}
 .orbit-resources{grid-template-columns:1fr 1fr;column-gap:10px;row-gap:1px}.orbit-resources .orbit-shield-row{display:block;font-size:8px;margin:0}
 .orbit-resources progress{display:block;width:80px;height:3px;margin:2px 0}
 #orbit-wave{font-size:8px;margin-bottom:1px}.town-near{bottom:156px;right:164px;padding:8px}
 .town-near strong{font-size:14px}.town-near .town-kicker{font-size:7px;margin-bottom:4px}.town-near button{font-size:9px}
 .town-touch-actions{bottom:143px;right:8px}.town-stick{width:84px;height:84px;left:16px;bottom:42px}.town-look{left:auto;right:16px}.town-stick span{left:22px;top:22px}
 .town-arrival{top:190px;max-width:90%;font-size:10px;padding:5px 9px}
}
@media(max-height:450px) and (orientation:landscape){
 .town-wordmark{display:none}.town-tools{margin-left:auto}.town-top{left:12px;right:12px}.town-objective{left:12px;transform:none;top:8px}
 .orbit-hud{top:48px;left:12px;width:164px;padding:5px 7px}.orbit-hud #orbit-clock,.orbit-hud #orbit-enemies{display:none}
 .orbit-resources{grid-template-columns:1fr 1fr;gap:3px}.orbit-resources .orbit-shield-row{display:block;font-size:7px;margin:0}.orbit-resources progress{width:66px;height:3px;display:block;margin:2px 0}
 #orbit-wave{font-size:7px;margin:0}.orbit-hud strong{font-size:9px}.orbit-hud button{min-height:26px;font-size:8px;padding:3px 5px}
 .town-stick{width:72px;height:72px;bottom:27px;left:20px}.town-stick span{left:16px;top:16px}.town-look{left:auto;right:20px}
 .town-touch-actions{width:132px;height:132px;right:108px;bottom:10px}.town-touch-actions button{width:44px;height:44px;min-height:44px}.town-touch-actions .pad-triangle,.town-touch-actions .pad-cross{left:44px}.town-touch-actions .pad-square,.town-touch-actions .pad-circle{top:44px}
 .town-near{left:186px;right:12px;top:48px;bottom:auto;padding:6px 8px;display:flex;gap:8px;align-items:center;min-height:0}.town-near .town-kicker{display:none}.town-near strong{font-size:11px;margin:0;flex:1}.town-near button{width:auto;min-height:32px;font-size:8px;padding:6px 9px}
 #orbit-capture{position:absolute;left:8px;bottom:0;width:calc(100% - 16px);height:2px;margin:0}
 .town-arrival{top:48px;left:50%;bottom:auto;max-width:50%;font-size:9px;z-index:3;padding:5px 8px}.town-bottom{left:12px;right:12px;bottom:2px}.town-bottom button{min-height:24px;font-size:8px;padding:3px 5px}
}

.town-stick small{top:auto;bottom:8px;font-size:7px;line-height:8px;z-index:1}
@media(max-height:450px) and (orientation:landscape){.town-stick small{font-size:6px;line-height:7px}}
