/* Focused game menus. Opaque surfaces keep the paused world out of the reading task. */
.toolbar button{min-height:44px;min-width:44px;font-size:12px;touch-action:manipulation}
.toolbar #quickRecover{padding-inline:12px;color:#c7dfb7}
.toolbar button:disabled{opacity:.55;cursor:default}
.menu-open .worldtop{visibility:hidden}
.minimapwrap>div{align-items:center;padding-block:0}
.minimapwrap #mapSmall{min-height:44px;flex:1;font-size:9px}
.loading button{min-height:44px;padding:12px 22px;border:1px solid #acd8b7;background:#c7dfb7;color:#13281b;font-size:14px}
.focused-menu{--menu-bg:#101d26;--menu-panel:var(--panel);--menu-text:var(--text);--menu-muted:var(--muted);--menu-line:var(--line);--menu-mint:var(--mint);--menu-gold:var(--gold);--menu-button:var(--gold);position:absolute;inset:0;z-index:20;background:var(--menu-bg);color:var(--menu-text);display:flex;flex-direction:column;font:16px/1.5 Arial,Helvetica,sans-serif;overflow:hidden}
.focused-menu *{box-sizing:border-box}
[hidden]{display:none!important}
.focused-menu .menu-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;min-height:65px;padding:12px 32px;border-bottom:1px solid var(--menu-line);color:var(--menu-muted);font-size:12px;letter-spacing:1.5px;background:var(--menu-bg)}
.focused-menu .menu-heading button{background:none;border:0;color:var(--menu-muted);padding:8px 0;min-height:44px;font-size:14px;letter-spacing:0}
.focused-menu .menu-heading>span{margin-right:auto}
.focused-menu .menupanel{display:block;flex:1;width:100%;min-height:0;overflow:auto;padding:36px clamp(22px,5vw,64px) 40px;overscroll-behavior:contain}
.focused-menu h1{font:500 clamp(30px,4vw,42px)/1.13 Arial,Helvetica,sans-serif;letter-spacing:-1.1px;margin:0 0 12px;color:var(--menu-text)}
.focused-menu h2{font:500 25px/1.25 Arial,Helvetica,sans-serif;letter-spacing:-.5px;margin:0 0 10px;color:var(--menu-text)}
.focused-menu h3{font:500 18px/1.4 Arial,Helvetica,sans-serif;margin:0;color:var(--menu-text)}
.focused-menu p{font:400 16px/1.6 Arial,Helvetica,sans-serif;color:var(--menu-muted);margin:18px 0 0;max-width:62ch}
.focused-menu button{font:400 15px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;text-transform:none;min-height:44px;border:1px solid var(--menu-line);background:transparent;color:var(--menu-text);padding:11px 16px;border-radius:3px;cursor:pointer;margin:0}
.focused-menu button:hover{background:#263d49;color:var(--menu-text)}
.focused-menu button:disabled{opacity:.65;cursor:default}
.focused-menu button:focus-visible,.focused-menu summary:focus-visible,.atlas-selection button:focus-visible{outline:3px solid var(--menu-gold,#e4c77a);outline-offset:4px}
.focused-menu .menu-primary{background:var(--menu-button);color:var(--belter-ink);border:0;padding:13px 23px;font-weight:500;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:22px}
.focused-menu .menu-primary:hover{background:#ffe986;color:var(--belter-ink)}
.focused-menu .menu-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--menu-muted);padding:8px 0;border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;font-size:14px}
.focused-menu .menu-link:hover{background:none;color:var(--menu-text)}
.focused-menu .danger{color:#e7aaa0}
.focused-menu .menu-content{width:100%;max-width:600px;margin:0 auto}
.focused-menu .menu-content.home-content{max-width:740px}
.focused-menu .menu-kicker{display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:1.6px;font-size:12px;color:var(--menu-muted);margin-bottom:16px}
.focused-menu .menu-kicker.new-job{color:var(--menu-gold)}
.focused-menu .menu-kicker.current-job,.focused-menu .menu-kicker.job-complete{color:var(--menu-mint)}
.focused-menu .menu-contact{font-size:14px;margin:0;color:var(--menu-muted)}
.focused-menu .menu-description{font-size:19px;line-height:1.55;margin-top:27px;color:var(--menu-text)}
.focused-menu .menu-terms{display:flex;flex-wrap:wrap;gap:12px 28px;color:var(--menu-muted);font-size:14px;margin-top:22px}
.focused-menu .menu-terms strong{font-weight:500;color:var(--menu-text)}
.focused-menu .menu-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;margin-top:28px}
.focused-menu details{margin-top:25px;border-top:1px solid var(--menu-line);border-bottom:1px solid var(--menu-line);padding:0}
.focused-menu details+details{margin-top:0;border-top:0}
.focused-menu summary{padding:14px 0;min-height:49px;color:var(--menu-muted);font-size:14px;line-height:1.5;cursor:pointer;list-style-position:inside}
.focused-menu details>p,.focused-menu details>div{padding-bottom:20px;margin-top:0;font-size:14px;line-height:1.6}
.focused-menu details p{font-size:14px;line-height:1.6;margin:0 0 14px}
.focused-menu .menu-row{display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;border:0;border-bottom:1px solid var(--menu-line);background:transparent;border-radius:0;text-align:left;padding:17px 0;min-height:57px}
.focused-menu .menu-row small{display:block;color:var(--menu-muted);font-size:13px;margin-top:5px}
.focused-menu .menu-row strong{font-weight:500}
.focused-menu .menu-row>span:last-child{flex-shrink:0}
.focused-menu .menu-tabs{display:flex;gap:22px;flex-wrap:wrap;border-bottom:1px solid var(--menu-line);margin:8px 0 28px}
.focused-menu .menu-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:10px 0;font-size:14px;color:var(--menu-muted)}
.focused-menu .menu-tabs button[aria-pressed="true"]{border-bottom-color:var(--menu-mint);color:var(--menu-text)}
.focused-menu .job-objective{margin-top:28px;padding:23px 25px;background:var(--menu-panel);border-left:3px solid var(--menu-mint)}
.focused-menu .job-objective .menu-kicker{margin-bottom:10px}
.focused-menu .job-objective p{font-size:14px;margin:8px 0 0}
.focused-menu .job-completion{text-align:center;max-width:540px;margin:0 auto}
.focused-menu .job-completion .menu-kicker,.focused-menu .job-completion .menu-actions{justify-content:center}
.focused-menu .completion-check{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0 auto 18px;border-radius:50%;background:#2a4033;color:var(--menu-mint);font-size:25px}
.focused-menu .earned{font-size:14px;margin-top:23px}
.focused-menu .earned strong{display:block;font-size:42px;line-height:1.2;letter-spacing:-1px;color:var(--menu-text);font-weight:500}
.focused-menu .job-completion details{text-align:left}
.focused-menu .job-unlock{display:block;padding:10px 0;color:var(--menu-text);font-size:15px}
.focused-menu .job-unlock small{display:block;color:var(--menu-muted);font-size:13px;margin-top:3px}
.focused-menu .menu-confirm{padding:22px;margin-top:24px;background:var(--menu-panel);border:1px solid var(--menu-line)}
.focused-menu .menu-warning{color:#e7aaa0}
.focused-menu .save-status{color:var(--menu-mint);padding:14px 0 20px;border-bottom:1px solid var(--menu-line);margin-top:20px}
.focused-menu .pause-panel{display:grid;grid-template-columns:minmax(220px,310px) minmax(220px,380px);align-content:center;align-items:center;justify-content:center;gap:clamp(35px,8vw,120px)}
.focused-menu .pause-panel nav{display:flex;flex-direction:column;gap:3px;height:auto;min-height:0;padding:0;margin-top:25px;border:0;background:none;overflow:visible}
.focused-menu .pause-panel nav button{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-shrink:1;text-align:left;border:0;padding:10px 0;font-size:19px;min-height:45px;color:var(--menu-text)}
.focused-menu .pause-panel nav button.menu-primary{padding:13px 16px;margin-bottom:8px;color:var(--belter-ink)}
.focused-menu .pause-secondary{display:flex;flex-direction:column;align-items:flex-start;margin-top:19px;padding-top:16px;border-top:1px solid var(--menu-line)}
.focused-menu .pause-secondary button{border:0;background:none;padding:8px 0;font-size:14px;color:var(--menu-muted);text-decoration:underline;text-underline-offset:4px}
.focused-menu .pause-job{border-left:2px solid var(--menu-line);padding-left:27px;min-width:0}
.focused-menu .pause-job p{font-size:16px;margin-top:5px}
.focused-menu .pause-recovery{margin-top:20px;padding-top:18px;border-top:1px solid var(--menu-line)}
.focused-menu .pause-recovery button{width:100%;text-align:left;border-color:#77927a;color:var(--menu-mint)}
.focused-menu .pause-recovery p{font-size:13px;line-height:1.5;margin-top:8px}
.focused-menu .pause-job .menu-link{margin-top:17px}
.focused-menu .home-choices{margin-top:30px;border-top:1px solid var(--menu-line)}
.focused-menu .home-choices .menu-row{min-height:85px;padding:20px 0}
.focused-menu .home-choices h2{font-size:22px;margin:0}
.focused-menu .home-feedback{color:var(--menu-mint);font-size:14px;margin-top:20px}
.focused-menu .home-breadcrumb{font-size:13px;color:var(--menu-muted);margin-bottom:19px}
.focused-menu .collection{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.15fr);gap:32px;margin-top:25px}
.focused-menu .collection-list{border-top:1px solid var(--menu-line)}
.focused-menu .collection-item{width:100%;display:flex;justify-content:space-between;align-items:center;gap:18px;text-align:left;min-height:72px;border:0;border-bottom:1px solid var(--menu-line);padding:16px 14px;border-radius:0;background:transparent}
.focused-menu .collection-item strong{display:block;font-size:16px;font-weight:500}
.focused-menu .collection-item small{display:block;font-size:13px;color:var(--menu-muted);margin-top:4px}
.focused-menu .collection-item[aria-pressed="true"]{background:#2a4033;box-shadow:inset 3px 0 var(--menu-mint)}
.focused-menu .collection-item .selection-dot{width:8px;height:8px;border-radius:50%;background:var(--menu-mint);flex-shrink:0}
.focused-menu .collection-list details{border-top:0;margin-top:20px}
.focused-menu .locked-item{padding:10px 0;color:var(--menu-text);font-size:15px}
.focused-menu .locked-item small{display:block;color:var(--menu-muted);font-size:13px;margin-top:4px}
.focused-menu .item-preview{text-align:center;background:var(--menu-panel);padding:22px 20px;min-width:0;align-self:start}
.focused-menu .item-preview canvas{display:block;width:100%;max-width:340px;height:auto;margin:0 auto}
.focused-menu .item-preview h2{font-size:24px;margin:8px 0 0}
.focused-menu .item-preview p{font-size:14px;margin:7px 0 0}
.focused-menu .item-preview button{margin-top:22px;width:100%}
.focused-menu .equipped-label{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin-top:22px;color:var(--menu-mint);font-size:14px}
.focused-menu .settingspanel{max-width:none;display:block;line-height:1.5}
.focused-menu .settingspanel section{margin:0;min-width:0}
.focused-menu .settingspanel section+section details{border-top:0;margin-top:0}
.focused-menu .settingspanel .settings-group{display:flex;flex-wrap:wrap;gap:12px;padding-top:5px}
.focused-menu .settingspanel .settings-group p{flex-basis:100%;margin:0}
.focused-menu .settingspanel .world-settings{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center}
.focused-menu .settingspanel .world-settings p,.focused-menu .settingspanel .world-settings button{grid-column:1/-1}
@media(max-width:480px){.focused-menu .settingspanel .world-settings{grid-template-columns:minmax(0,1fr)}}
.focused-menu .settingspanel .options-zoom{display:flex;margin:0;gap:8px}
.focused-menu .settingspanel .options-zoom button{margin:0;min-height:44px;padding:4px 12px}
.focused-menu .settingspanel .shiftstatus{margin-top:8px;gap:10px;line-height:1.5}
.focused-menu .menu-subheading{font-size:18px;margin-top:30px}
.focused-menu #places button{display:flex;justify-content:space-between;text-align:left;width:100%;margin:0;border:0;border-bottom:1px solid var(--menu-line);padding:15px 0}
.focused-menu .menupanel.data{max-width:730px;margin:0 auto;font-size:15px;line-height:1.6}
.focused-menu .menupanel.data p{font-size:14px;line-height:1.65}
.focused-menu .menupanel.data .buildinfo{font-size:13px}
.focused-menu .menupanel.data #dataStats{margin:22px 0}
.focused-menu .menupanel.data .fine{font-size:12px}
.focused-menu .help-topic-list{margin-top:28px}
.focused-menu .help-lesson{max-width:440px;background:var(--menu-panel);border-top:3px solid var(--menu-mint);padding:30px;margin:10px auto}
.focused-menu .help-lesson h1{font-size:30px}
.focused-menu .help-lesson .menu-primary{width:100%}
.focused-menu kbd{display:inline-block;border:1px solid var(--menu-line);border-radius:3px;padding:0 7px;font:inherit;font-size:14px;color:var(--menu-text)}
.focused-menu.maptab{background:none;pointer-events:none}
.focused-menu.maptab .menu-heading{pointer-events:auto;background:var(--belter-hud)}
.focused-menu.maptab .menupanel{display:none}
.atlas-explore{min-height:44px;width:100%;text-align:left;margin:4px 0 8px}
.map-home-status{color:#acd8b7;font-size:14px}
.atlas-selection p{font-size:14px;line-height:1.6}
.atlas-selection h2{font-size:26px;line-height:1.2}
.save-alert{position:absolute;top:75px;left:16px;max-width:calc(100% - 32px);z-index:22;padding:10px 14px;background:#402820;color:#ffe2cd;border:1px solid #a77a65;font:14px/1.5 Arial,sans-serif}
.save-alert button{display:inline;min-height:44px;color:inherit;text-decoration:underline;padding:5px 8px;background:none;border:0;font:inherit}
body>footer{justify-content:flex-end;min-height:28px}
@media(max-width:760px){
 .focused-menu .menu-heading{padding:9px 20px;min-height:60px}
 .focused-menu .menu-heading>span{font-size:10px;letter-spacing:1px}
 .focused-menu .menupanel{padding:28px 24px calc(28px + env(safe-area-inset-bottom,0px))}
 .focused-menu .pause-panel{display:block}
 .focused-menu .pause-main{max-width:430px;margin:0 auto}
 .focused-menu .pause-job{display:block;max-width:430px;margin:24px auto 0;padding:18px 0 0;border-left:0;border-top:1px solid var(--menu-line)}
 .focused-menu .menu-actions{align-items:stretch;flex-direction:column;gap:10px}
 .focused-menu .menu-actions .menu-link{justify-content:center}
 .focused-menu .menu-actions .menu-primary{width:100%}
 .focused-menu .collection{grid-template-columns:1fr;gap:22px}
 .focused-menu .item-preview{grid-row:1;padding:18px}
 .focused-menu .item-preview canvas{max-width:245px}
 .focused-menu .item-preview h2{font-size:23px}
 .focused-menu .menu-tabs{gap:18px}
 .focused-menu .menu-tabs button{font-size:13px}
 .focused-menu .help-lesson{padding:23px;margin:0}
 .save-alert{top:120px}
}
@media(max-height:540px) and (min-width:600px){
 .focused-menu .menupanel{padding-top:22px;padding-bottom:22px}
 .focused-menu .pause-panel{align-content:start}
 .focused-menu .pause-panel nav{margin-top:15px}
 .focused-menu .pause-secondary{margin-top:9px;padding-top:9px}
 .focused-menu .item-preview canvas{max-width:220px}
}

.map-home-status.locked{color:#b3c4b9}
.phone-call{position:absolute;z-index:8;left:50%;bottom:24px;transform:translateX(-50%);display:flex;gap:17px;width:560px;max-width:calc(100% - 40px);padding:18px;background:#12231ff5;border:1px solid #67866b;border-top:3px solid #e4c77a;box-shadow:0 12px 35px #06120d66;color:#edf1e8;font:16px/1.5 Arial,Helvetica,sans-serif;box-sizing:border-box}
.phone-call img{display:block;flex-shrink:0;width:96px;height:96px;object-fit:cover;border-radius:3px}
.phone-dialogue{flex:1;min-width:0}
.phone-call-status{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:#e4c77a;margin-bottom:3px}
.phone-call h2{font:500 23px/1.2 Arial,sans-serif;margin:0 0 9px;color:#edf1e8}
.phone-call p{font-size:16px;line-height:1.55;min-height:50px;margin:0;color:#edf1e8}
.phone-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:9px}
.phone-controls button{font:14px/1.4 Arial,sans-serif;min-height:44px;padding:8px 0;background:none;border:0;color:#c7dfb7;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.phone-controls button:focus-visible{outline:3px solid #e4c77a;outline-offset:3px}
.menu-open>.phone-call{display:none}
.focused-menu .caller-identity{display:flex;align-items:center;gap:20px;margin-bottom:28px}
.focused-menu .caller-identity img{display:block;width:88px;height:88px;object-fit:cover;border-radius:3px;flex-shrink:0}
.focused-menu .caller-identity h2{font-size:25px;margin-bottom:6px}
.focused-menu .caller-identity .menu-contact{font-size:14px;margin:0}
.focused-menu .pause-panel nav button .jobs-badge{margin-left:auto;background:#e4c77a;color:#17271d;min-width:23px;padding:2px 7px;border-radius:3px;font-size:13px;text-align:center}
.focused-menu #phoneContent .menu-actions{gap:14px 20px}
@media(max-width:760px){
 .phone-call{top:115px;bottom:auto;max-width:calc(100% - 24px);padding:14px;gap:12px}
 .phone-call img{width:64px;height:64px}
 .phone-call h2{font-size:20px}
 .phone-call p{font-size:15px;min-height:0}
 .phone-call-status{font-size:10px}
 .phone-controls{gap:13px;margin-top:5px}
 .phone-controls button{font-size:13px}
 .focused-menu .caller-identity{gap:15px;margin-bottom:23px}
 .focused-menu .caller-identity img{width:72px;height:72px}
 .focused-menu .caller-identity h2{font-size:23px}
}
@media(max-height:540px) and (min-width:600px){
 .phone-call{top:auto;bottom:85px;left:18px;transform:none;width:440px;padding:12px}
 .phone-call img{width:64px;height:64px}
 .phone-call p{font-size:14px;min-height:0}
 .phone-call h2{font-size:20px;margin-bottom:5px}
 .phone-controls{margin-top:2px}
}
@media(prefers-reduced-motion:reduce){.focused-menu *{scroll-behavior:auto}}

@media(min-width:761px) and (max-width:1100px) and (min-height:541px){.phone-call{top:100px;bottom:auto}}

.focused-menu .destination-search{display:block;font-size:14px;color:var(--menu-muted);margin:20px 0 12px}.focused-menu .destination-search input{display:block;width:100%;min-height:44px;margin-top:8px;padding:11px 12px;background:#10251f;color:var(--menu-text);border:1px solid var(--menu-line);border-radius:3px;font:16px Arial,sans-serif}.focused-menu .destination-group .menu-row{margin:0}.focused-menu .destination-group .menu-row strong,.focused-menu .destination-group .menu-row small{display:block}.focused-menu .destination-group .menu-row small{font-size:12px;color:var(--menu-muted);margin-top:5px}

.job-conversation{border-left:3px solid #c9a569;padding:0 0 0 1rem;margin:1rem 0 1.4rem;max-width:46rem}.job-conversation p{line-height:1.6;margin:.6rem 0;color:#e8e3d6}

.focused-menu .settingspanel select{font:inherit;color:var(--menu-cream,#ece7d3);background:var(--menu-bg,#12241c);border:1px solid var(--menu-line,#53645b);border-radius:4px;min-height:44px;max-width:100%;padding:8px 12px}.focused-menu .settingspanel select:focus-visible{outline:3px solid var(--menu-gold,#e4c77a);outline-offset:4px}.focused-menu .settingspanel label[for="physicsMode"]{align-self:center}
.focused-menu .destination-filters{display:flex;gap:8px;margin:0 0 12px}.focused-menu .destination-filters button{min-height:44px;padding:8px 16px;background:transparent;color:var(--menu-muted);border:1px solid var(--menu-line);border-radius:22px;font:15px Arial,sans-serif}.focused-menu .destination-filters button[aria-pressed="true"]{background:#2a4033;color:var(--menu-text);border-color:var(--menu-mint)}
.focused-menu .destination-group .menu-row strong .place-tag{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:9px;background:#24402f;color:var(--menu-mint);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;vertical-align:2px}
.focused-menu #places button.menu-row{font-size:15px}.focused-menu #places .menu-row span{font-size:inherit;color:inherit}.focused-menu #places .menu-row small{color:var(--menu-muted)}.focused-menu #places .menu-row .place-tag{font-size:11px;color:var(--menu-mint)}
.focused-menu #places .menu-row .place-tag.culture{background:#3d3524;color:var(--menu-gold)}

/* Mission reading scrolls independently of its always-reachable action row. */
.focused-menu:has(>#callsPanel:not([hidden]),>#phonePanel:not([hidden])) .menu-heading{min-height:52px;padding:4px 20px}
.focused-menu #callsPanel,.focused-menu #phonePanel{padding:0;overflow:hidden}
.focused-menu #jobsContent,.focused-menu #phoneContent{height:100%;max-width:none}
.focused-menu #jobsContent:not(.mission-view){max-width:820px;margin:0 auto;padding:16px clamp(16px,3vw,32px) calc(16px + var(--menu-safe-bottom,env(safe-area-inset-bottom,0px)));overflow:auto}
.focused-menu .mission-view{display:flex;flex-direction:column;min-height:0;overflow:hidden;--mission-width:900px;--mission-pad:clamp(16px,3vw,32px)}
.focused-menu .mission-body{flex:1;min-height:0;width:100%;max-width:var(--mission-width);margin:0 auto;padding:16px var(--mission-pad);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.focused-menu .mission-footer{flex-shrink:0;padding:8px var(--mission-pad) max(8px,env(safe-area-inset-bottom,0px));border-top:1px solid var(--menu-line);background:var(--menu-bg);z-index:1}
.focused-menu .mission-footer .menu-actions{max-width:calc(var(--mission-width) - 2 * var(--mission-pad));margin:0 auto;display:flex;flex-direction:row;align-items:stretch;flex-wrap:wrap;gap:8px}
.focused-menu .mission-footer .menu-actions button{min-height:44px;padding:9px 16px;font-size:14px;flex:0 1 auto}
.focused-menu .mission-footer .menu-actions .menu-primary{width:auto;min-height:44px;padding:10px 18px;gap:10px}
.focused-menu .mission-body h1{font-size:clamp(24px,3vw,32px);line-height:1.15;letter-spacing:-.5px;margin:0 0 6px}
.focused-menu .mission-body h2{font-size:20px;line-height:1.25;margin:0 0 6px}
.focused-menu .mission-body p{font-size:14px;line-height:1.45;margin:10px 0 0}
.focused-menu .mission-body .menu-kicker{font-size:11px;letter-spacing:1px;margin-bottom:6px}
.focused-menu .mission-body .menu-contact{font-size:13px;margin:0}
.focused-menu .mission-body .menu-description{font-size:16px;line-height:1.45;margin-top:12px}
.focused-menu .mission-body .menu-terms{font-size:13px;gap:6px 18px;margin-top:12px}
.focused-menu .mission-body .caller-identity{gap:12px;margin-bottom:12px}
.focused-menu .mission-body .caller-identity img{width:48px;height:48px}
.focused-menu .mission-body .caller-identity h2{font-size:18px;margin-bottom:2px}
.focused-menu .mission-body .job-objective{margin:12px 0 0;padding:12px 14px}
.focused-menu .mission-body .job-objective .menu-kicker{margin-bottom:6px}
.focused-menu .mission-body .job-objective p{font-size:13px;margin-top:6px}
.focused-menu .job-overview{display:grid;gap:12px;align-items:start}
.focused-menu .job-overview .job-objective{margin:0}
.focused-menu .mission-body details{margin-top:12px}
.focused-menu .mission-body details+details{margin-top:0}
.focused-menu .mission-body summary{min-height:44px;padding:10px 0;font-size:13px}
.focused-menu .mission-body .job-conversation{margin:10px 0 12px;padding-left:12px;max-width:none}
.focused-menu .mission-body .job-conversation p{font-size:14px;line-height:1.45;margin:6px 0}
.focused-menu .mission-body details .job-conversation{margin:6px 0 10px}
.focused-menu .mission-body .completion-check{width:32px;height:32px;font-size:20px;margin-bottom:8px}
.focused-menu .mission-body .earned{margin-top:10px}
.focused-menu .mission-body .earned strong{font-size:32px}
@media(min-width:600px){.focused-menu .job-overview{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}}
@media(max-height:540px) and (min-width:600px){
 .focused-menu:has(>#callsPanel:not([hidden]),>#phonePanel:not([hidden])) .menu-heading{min-height:44px;padding:0 16px}
 .focused-menu .mission-body{padding-top:12px;padding-bottom:12px}
 .focused-menu .mission-body h1{font-size:24px}
 .focused-menu .mission-body .caller-identity{float:right;margin:0 0 8px 16px;max-width:45%}
}

/* Station boards keep destination and platform readable on narrow screens. */
.focused-menu .station-content{max-width:960px}
.station-eyebrow{color:#80d2ec;text-transform:uppercase;font:600 12px/1.5 monospace;letter-spacing:2px;margin-bottom:12px}
.focused-menu .station-intro{margin:10px 0 24px;max-width:unset}
.station-board-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px}
.station-clock{font:500 26px monospace;color:#f9cb71}
.station-board{background:#071317;border:1px solid #3b565d;border-top:4px solid #ffca62;border-radius:4px;overflow:hidden}
.focused-menu .station-departure{display:grid;grid-template-columns:70px minmax(0,1fr) 90px 52px;gap:16px;align-items:center;width:100%;border:0;border-bottom:1px solid #253a40;border-radius:0;padding:19px 22px;text-align:left;font-family:monospace;min-height:82px}
.focused-menu button.station-departure:hover{background:#153640}
.station-columns{min-height:44px!important;padding-top:11px!important;padding-bottom:11px!important;color:#8faeb6;font-size:12px;letter-spacing:1px;text-transform:uppercase}
.departure-time,.departure-platform{color:#ffd079;font-size:23px;font-weight:700;font-variant-numeric:tabular-nums}
.departure-platform{text-align:center}
.departure-destination strong{display:block;color:#ffce72;font-size:19px;font-weight:500}
.departure-destination small{display:block;color:#9eb9be;font-size:12px;line-height:1.5;margin-top:5px}
.departure-status{color:#8ae2bd;font-size:12px}
.focused-menu .station-note{font-size:13px;color:#99b4b7;max-width:unset}
.station-exits{margin-top:30px;padding-top:22px;border-top:1px solid #3b5145;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.station-exits h3{margin-right:auto!important;color:#a4edbd!important}
.focused-menu .station-exit{border-color:#648d70;color:#c6efd0}
.station-platform-number{display:inline-block;padding:8px 14px;background:#114e65;color:#e6f8ff;margin:20px 0;font:600 16px monospace}
.station-scene{height:200px;position:relative;overflow:hidden;margin:26px 0;background:repeating-linear-gradient(90deg,#182e33 0px,#182e33 178px,#3d5c60 178px,#3d5c60 185px);border:1px solid #527076;border-top:10px solid #68868b}
.platform-sign{position:absolute;top:16px;left:22px;background:#0b3a53;color:#fff;padding:6px 14px;font:700 16px monospace;border:1px solid #93c4d3;z-index:1}
.station-train{display:flex;gap:5px;position:absolute;bottom:44px;left:4%;width:92%;height:72px}
.station-coach{display:flex;align-items:center;justify-content:space-evenly;flex:1;background:linear-gradient(#d5e0de 0 12%,#163d6e 12% 66%,#e9d775 66% 73%,#275988 73% 90%,#15262c 90%);border-radius:6px 6px 1px 1px;border-left:4px solid #f4cb57;box-shadow:0 4px 0 #050e12}
.station-coach i{display:block;width:20%;height:24px;background:#9bc9d9;border:3px solid #304e68}
.platform-edge{position:absolute;bottom:0;left:0;right:0;background:#536364;border-top:5px solid #f4d264;height:34px;color:#f9eebf;text-align:right;padding:7px 18px;font:10px monospace;letter-spacing:3px}
.station-stops,.station-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}
.focused-menu .station-stop{background:#214438;border-color:#8db19c}
.focused-menu .station-block{color:#ffd079;margin:18px 0}
.station-content progress{display:block;width:100%;height:16px;accent-color:#e8c16b;margin:18px 0}


@media(max-width:600px){.focused-menu .station-departure{grid-template-columns:45px minmax(0,1fr) 36px;gap:9px;padding:15px 12px}.station-departure>:nth-child(3){display:none}.departure-time,.departure-platform{font-size:18px}.departure-destination strong{font-size:16px}.departure-destination small{font-size:11px}.station-scene{height:170px}.station-stops{flex-direction:column}.station-exits{align-items:stretch;flex-direction:column}.station-exits h3{margin-bottom:4px!important}}

.ride-hud{position:absolute;z-index:6;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:10px 12px 10px 16px;background:#071317e8;border:1px solid #3b565d;border-top:3px solid #ffca62;border-radius:6px;color:#e6f8ff;font-family:monospace;box-shadow:0 6px 18px #0008}
.ride-hud[hidden]{display:none}
.ride-info{display:flex;flex-direction:column;min-width:0;margin-right:6px}
.ride-info small{color:#80d2ec;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ride-info strong{font-size:16px;color:#fff3ad;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ride-hud button{min-height:44px;padding:0 14px;background:#153640;color:#e6f8ff;border:1px solid #527076;border-radius:4px;font:600 14px monospace;cursor:pointer;white-space:nowrap}
.ride-hud button:hover,.ride-hud button:focus-visible{background:#1f4b58;border-color:#ffca62}
.riding>.streetplate,.riding>#toast{visibility:hidden}
@media(max-width:480px){.ride-hud{gap:6px;padding:8px}.ride-hud button{padding:0 10px}.ride-info strong{font-size:14px}}

/* Pause and mission details use the title screen's lettering and dispatch-paper accent. */
.focused-menu:has(>#pausePanel:not([hidden])){background:linear-gradient(105deg,#0a1821f7,#0e202ae8)}
.focused-menu .menu-heading>span{
 color:var(--menu-gold);font:600 12px/1.4 'IBM Plex Mono',monospace;letter-spacing:.09em;text-transform:uppercase;
}
.focused-menu h1,.focused-menu h2{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800}
.focused-menu .pause-panel h1{
 margin-bottom:12px;font-size:clamp(48px,8vw,102px);line-height:.88;text-transform:uppercase;
}
.focused-menu .pause-panel nav{margin-top:16px;gap:5px}
.focused-menu .pause-panel nav button{
 border:1px solid var(--menu-line);padding:9px 12px;
 font:800 22px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:.04em;
}
.focused-menu .pause-panel nav button.menu-primary{border-color:var(--menu-gold);margin-bottom:3px}
.focused-menu .pause-secondary{flex-flow:row wrap;column-gap:18px}
.focused-menu .pause-job,.focused-menu .dispatch-slip,.focused-menu .job-overview .job-objective{
 color:var(--belter-paper-ink);background:var(--belter-paper);
 border:0;border-top:4px solid var(--menu-gold);padding:clamp(12px,2.2vw,24px);
}
.focused-menu .pause-job h2,.focused-menu .dispatch-slip h1,.focused-menu .job-overview .job-objective h2{
 color:inherit;text-transform:uppercase;line-height:1;
}
.focused-menu .pause-job h2{font-size:clamp(28px,3.6vw,47px)}
.focused-menu .pause-job p,.focused-menu .dispatch-slip p,.focused-menu .job-overview .job-objective p,
.focused-menu .dispatch-slip .menu-terms{color:inherit}
.focused-menu .pause-job .menu-kicker,.focused-menu .dispatch-slip .menu-kicker,
.focused-menu .job-overview .job-objective .menu-kicker{
 color:#494536;font:600 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.07em;
}
.focused-menu .pause-job .menu-link{margin-top:8px;color:inherit}
.focused-menu .pause-job .menu-link:focus-visible{outline-color:var(--belter-paper-ink)}
.focused-menu .dispatch-slip .caller-identity h2{color:inherit}
.focused-menu .dispatch-slip .caller-identity img{border:1px solid #172a3855;border-radius:2px}
.focused-menu .dispatch-slip .menu-terms{border-top:1px dashed #80735a;padding-top:8px}
@media(max-height:540px) and (min-width:600px){
 .focused-menu .pause-panel h1{font-size:clamp(45px,9dvh,62px)}
 .focused-menu .pause-panel nav{margin-top:10px}
 .focused-menu .dispatch-slip .caller-identity{float:none;max-width:none;margin:0 0 8px}
}
/* Feedback and the Act Two sign-up */
.feedback-section{margin:22px 0 0}
.feedback-section h2{font:500 19px/1.3 Arial,sans-serif;margin:0 0 10px}
.feedback-choice{margin:0 0 12px}
.feedback-choice-label{margin:0 0 6px}
.choice-row{display:flex;flex-wrap:wrap;gap:8px}
.choice-row button{min-height:44px;padding:8px 14px;font:14px/1.2 Arial,sans-serif;background:transparent;color:inherit;border:1px solid #6f8a77;border-radius:3px;cursor:pointer}
.choice-row button[aria-pressed=true]{background:#e4c77a;border-color:#e4c77a;color:#17271d}
.choice-row button:focus-visible,.feedback-text textarea:focus-visible,.feedback-text input:focus-visible,.feedback-check input:focus-visible{outline:3px solid #e4c77a;outline-offset:2px}
.feedback-text{display:flex;flex-direction:column;gap:6px;margin:10px 0 0;max-width:100%}
.feedback-text textarea,.feedback-text input{box-sizing:border-box;width:100%;max-width:100%;font:15px/1.4 Arial,sans-serif;padding:8px;background:#102019;color:#edf1e8;border:1px solid #6f8a77;border-radius:3px}
.feedback-hint{font-size:13px;opacity:.8;margin:0}
.feedback-sent{font-size:13px;opacity:.85;margin:20px 0 0}
.feedback-status{min-height:1.4em}
.feedback-check{display:flex;align-items:center;gap:10px;min-height:44px}
.feedback-check input{width:22px;height:22px}
.feedback-trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
#feedbackContent details{margin:18px 0 0}
