/* Two complete finishes, chosen by the player's local clock or menu preference. */
:root,:root[data-palette=jade]{
 --ink:#102e28;--panel:#193d33;--raised:#2b5447;--deep:#0b201c;
 --brass:#c99657;--copper:#b18450;--ivory:#f4edd9;--muted:#c4cbb8;
 --metal-line:#ad8b57;--button-top:#397961;--button-mid:#2d6957;--button-bottom:#1c493c;
 --button-text:#fff4df;--button-shadow:#123c2e;--sheen:#ebddba;--mint:#b3d8bd;--emerald:#8cceae;
 --map-shadow:#102e28ec;--map-glaze:#2b5949c9;
 --city-art:url('./assets/city-jade.webp');
}
:root[data-palette=plum]{
 --ink:#271d31;--panel:#322638;--raised:#554056;--deep:#1a1421;
 --brass:#dbb784;--copper:#d68058;--ivory:#f3e4db;--muted:#d3becd;
 --metal-line:#b59471;--button-top:#a0653e;--button-mid:#945832;--button-bottom:#784323;
 --button-text:#fff4df;--button-shadow:#613c31;--sheen:#ffe0b6;--mint:#b5d5c1;--emerald:#9ccbaf;
 --map-shadow:#271d31ed;--map-glaze:#635072bf;
 --city-art:url('./assets/city-plum.webp');
}
html,body,.phone,.game-shell,.phone .game-shell{background:var(--ink);color:var(--ivory)}
body{--surface:linear-gradient(145deg,var(--raised),var(--panel) 65%,var(--ink));--primary-fill:linear-gradient(165deg,var(--button-top),var(--button-mid) 58%,var(--button-bottom));--fine-line:color-mix(in srgb,var(--brass) 60%,transparent)}
.cabinet-frame{border-color:var(--deep);box-shadow:inset 0 0 0 1px var(--brass),inset 0 0 0 4px var(--ink),inset 0 0 0 5px var(--metal-line);border-radius:19px}
.topbar{background:linear-gradient(color-mix(in srgb,var(--ink) 90%,transparent),transparent)}
.overlay{background:linear-gradient(90deg,color-mix(in srgb,var(--deep) 75%,transparent),color-mix(in srgb,var(--panel) 34%,transparent) 35%,transparent 62%)}
.phone .overlay{background:linear-gradient(90deg,var(--ink),color-mix(in srgb,var(--panel) 88%,transparent) 47%,transparent 80%)}
h2,.menu h2,.portrait-panel h2,.journey-heading h2{color:var(--ivory);text-shadow:0 2px 0 var(--deep),0 5px 20px #0004}
.eyebrow,.brand,.brand-icon,.chapter h1,.chapter p,.night-label,.journey-heading>small,.portrait-panel>small{color:var(--brass)}
.menu-copy>p,.portrait-panel>p,.goal-card>p,.reward-card>p,.journey-heading>p,.field-tip,.menu-controls{color:var(--muted)}
.menu-copy:before,.menu-copy:after{border-color:var(--fine-line)}
.makers-seal{background:repeating-conic-gradient(var(--brass) 0 8deg,var(--panel) 8deg 15deg);box-shadow:0 0 0 1px var(--brass),0 0 0 5px var(--ink)}
.makers-seal span{background:radial-gradient(var(--raised),var(--panel));border-color:var(--brass);color:var(--ivory)}
#tonight-jobs span{background:var(--panel);border-color:var(--fine-line);color:var(--ivory)}
.primary,#portrait-ui .primary{background:var(--primary-fill);border:1px solid var(--brass);border-radius:999px;color:var(--button-text);text-shadow:0 1px 1px #24151080;box-shadow:inset 0 0 0 2px var(--button-bottom),inset 0 0 0 3px color-mix(in srgb,var(--sheen) 65%,transparent),inset 0 5px 7px #fff2,inset 0 -5px 9px #0002,0 3px 0 var(--button-shadow),0 5px 12px #0004}
.primary>span{color:var(--button-text);opacity:.85}
.primary:active,#portrait-ui .primary:active{box-shadow:inset 0 0 0 2px var(--button-bottom),inset 0 0 0 3px var(--fine-line),inset 0 4px 8px #0003,0 1px 0 var(--button-shadow)}
.secondary,.ledger-trigger,.controls-help,.generator button:not(.primary),.phone-options button,.portrait-audio button,#portrait-ui .secondary{background:var(--surface);border-color:var(--fine-line);color:var(--ivory);box-shadow:inset 0 1px 0 #fff2,0 2px 5px #0003}
.secondary:hover,.ledger-trigger:hover,.controls-help:hover{background:var(--raised);border-color:var(--brass)}
.generator,#controls-dialog,#route-dialog,#install-dialog,.portrait-panel,.journey-settings{background:var(--surface);border-color:var(--metal-line);color:var(--ivory);border-radius:22px;box-shadow:inset 0 0 0 3px var(--panel),inset 0 0 0 4px color-mix(in srgb,var(--brass) 24%,transparent),0 18px 55px #0006}
.generator input,.journey-settings input,input:not([type=range]),.palette-control select{background:var(--deep);border-color:var(--fine-line);color:var(--ivory)}
input[type=range]{accent-color:var(--brass)}
.stats>div,.quest-guide,.roadster-route,.milestone,.alarm-meter,.quest-rail .combo{background:var(--surface);border-color:var(--metal-line);color:var(--ivory);box-shadow:inset 0 0 0 2px var(--panel),inset 0 0 0 3px color-mix(in srgb,var(--brass) 16%,transparent),0 3px 12px #0003}
.stats strong,.stats small,.quest-guide .objective p,.milestone strong,#install-dialog p,#install-dialog li{color:var(--ivory)}
.context-prompt,.interaction-nudge,#portrait-prompt,.phone #phone-waypoint{background:var(--panel);border-color:var(--brass);color:var(--ivory)}
.interaction-nudge kbd{background:var(--brass);color:var(--deep)}
.goal-intro{background:linear-gradient(90deg,var(--ink),color-mix(in srgb,var(--panel) 80%,transparent) 40%,transparent 72%)}
.phone .goal-intro{background:color-mix(in srgb,var(--ink) 95%,transparent)}
#goal-count{border-color:var(--brass);background:radial-gradient(var(--raised),var(--panel));box-shadow:0 0 0 4px var(--deep),inset 0 0 0 3px var(--panel);color:var(--ivory)}
.reward-screen,.phone .reward-screen{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--panel) 90%,transparent) 55%,var(--ink))}
.reward-badges span{border-color:var(--fine-line);background:var(--raised);color:var(--ivory)}
.phone #game{border-color:var(--metal-line)}
.phone #phone-hud,.portrait-head{background:var(--ink);color:var(--ivory)}
.phone .phone-mission p,.portrait-head b{color:var(--ivory)}
.phone .phone-mission small,.phone-vitals span,.portrait-head span,.portrait-tip,.portrait-panel .portrait-tip{color:var(--muted)}
.icon-button,.mobile-pause,.phone #phone-hud button,#portrait-pause,.mobile-controls button,.phone .mobile-controls button,#portrait-controls button{border-color:var(--brass);background:radial-gradient(circle at 35% 15%,var(--raised),var(--panel) 73%);color:var(--ivory);box-shadow:inset 0 0 0 2px var(--panel),inset 0 0 0 3px var(--fine-line),0 3px 0 var(--deep)}
.mobile-controls .jump,.phone .mobile-controls .jump,#portrait-controls [data-dash=jump]{background:var(--primary-fill);color:var(--button-text);border-color:var(--brass);text-shadow:0 1px #0003;box-shadow:inset 0 0 0 2px var(--button-bottom),inset 0 0 0 3px var(--fine-line),0 3px 0 var(--button-shadow)}
/* Action meanings remain stable in either palette. */
.mobile-controls .slash,.phone .mobile-controls .slash{background:radial-gradient(circle at 35% 15%,#774652,#3c2530 75%);border-color:#b57876;color:#ffddd4}
.mobile-controls [data-control=action],.phone .mobile-controls [data-control=action]{background:radial-gradient(circle at 35% 15%,#477763,#233d36 75%);border-color:#79b093;color:#e3ecd7}
#thumbstick{background:linear-gradient(var(--raised),var(--deep));border-color:var(--fine-line);box-shadow:inset 0 2px 9px #0006,0 1px 0 #fff2}
.stick-track{border-color:var(--fine-line);background:radial-gradient(var(--deep),var(--panel))}
.stick-knob{background:radial-gradient(circle at 35% 25%,var(--sheen),var(--brass) 62%,var(--copper));border-color:var(--brass)}
.stick-track:before,.stick-track:after{border-color:var(--brass)}
#phone-pad,#portrait-pad,.phone #phone-pad,#portrait-swap{border-color:var(--fine-line);background:var(--surface);color:var(--ivory)}
#phone-pad i,#portrait-pad i{background:var(--brass)}
#portrait-card{background:color-mix(in srgb,var(--deep) 65%,transparent)}
#portrait-count{color:var(--ivory);text-shadow:0 4px var(--deep)}
.portrait-progress{background:var(--panel)}
.portrait-progress i{background:var(--mint);box-shadow:none}
#portrait-map-screen{background:linear-gradient(color-mix(in srgb,var(--ink) 83%,transparent),color-mix(in srgb,var(--panel) 56%,transparent)),var(--city-art) center/cover}
#journey-map path{stroke:var(--brass)}
.journey-stop>b{border-color:var(--brass);background:radial-gradient(var(--raised),var(--panel));color:var(--ivory);box-shadow:inset 0 1px 0 #fff2,0 3px 0 var(--deep)}
.journey-stop.next>b{background:var(--primary-fill);color:var(--button-text);box-shadow:0 0 0 4px var(--fine-line),0 4px 0 var(--button-shadow)}
.journey-stop.complete>b{background:radial-gradient(#488c72,#244f42);border-color:#88caaa;color:#e6f4da}
.journey-stop>span,.journey-stop>small{background:var(--panel);color:var(--ivory)}
#portrait-save-status,#portrait-board-help,#install-dialog .install-note{color:var(--muted)}
#install-dialog li::marker{color:var(--brass)}
.palette-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 12px;width:min(100%,350px);margin:18px auto 8px;color:var(--ivory);font:14px/1.4 Georgia;text-align:left}
.palette-control>span{color:var(--brass);font-variant:small-caps;letter-spacing:.5px}
.palette-control select{width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--fine-line);border-radius:999px;font:16px Georgia;touch-action:manipulation;cursor:pointer;pointer-events:auto}
.palette-control small{grid-column:2;font:13px/1.3 Georgia;color:var(--muted)}
.palette-control select:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
#portrait-card.counting .palette-control{display:none}
@media(max-height:500px) and (orientation:landscape){.phone .palette-control{margin-top:12px}.phone .palette-control small{display:none}}

/* Thumb reach: movement on the left, every modifier within the right thumb's arc. */
.phone .mobile-controls{gap:14px;height:86px}
.phone #thumbstick{width:148px;height:82px;pointer-events:auto;touch-action:none}
.phone #thumbstick .stick-track{inset:10px 39px}
.phone #thumbstick .stick-knob{top:15px}
.phone .mobile-controls>div{gap:10px}
.phone .mobile-controls .actions{justify-content:flex-end;margin-left:auto}
.phone .mobile-controls button,.phone .mobile-controls .sneak{width:56px;height:60px;font-size:14px;flex-shrink:0;touch-action:none;pointer-events:auto}
.phone .mobile-controls .jump{width:74px;height:76px;font-size:15px;font-weight:bold}
.phone .mobile-controls button>*{pointer-events:none}
.phone .mobile-controls button.held{border-color:var(--ivory);filter:brightness(1.16);transform:translateY(2px);box-shadow:inset 0 0 0 2px var(--panel),0 1px 0 var(--deep)}
.phone .mobile-controls [data-control=action].nearby{border-color:var(--ivory);box-shadow:0 0 0 2px var(--fine-line),inset 0 0 0 2px var(--panel)}
.roadster-driving .mobile-controls .movement{display:flex}
.mobile-controls .boost,.phone .mobile-controls .boost{width:88px;height:76px;border-radius:24px;font-size:15px;font-weight:bold;background:var(--primary-fill);color:var(--button-text);touch-action:none}
.mobile-controls .boost small{display:block;margin-top:4px;font-size:11px;font-weight:normal}
#portrait-controls{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right))}
#portrait-controls button{min-width:56px;min-height:62px;touch-action:none;pointer-events:auto}
#portrait-controls [data-dash=jump]{width:80px;height:72px}
#portrait-controls button.held{filter:brightness(1.2);transform:translateY(2px);border-color:var(--ivory)}
.portrait-head{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right))}
@media(max-width:650px) and (orientation:landscape){
 .phone #thumbstick{width:132px}
 .phone #thumbstick .stick-track{inset:10px 31px}
 .phone .mobile-controls>div{gap:8px}
 .phone .mobile-controls button,.phone .mobile-controls .sneak{width:52px;height:58px;font-size:13px}
 .phone .mobile-controls .jump{width:68px;height:72px;font-size:14px}
}
@media(hover:none){button:hover{filter:none}.primary:hover{filter:none}}

/* The welcome guide is a readable cabinet page in either phone orientation. */
#welcome-guide{overflow:auto;width:min(900px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0;border:1px solid var(--metal-line);border-radius:28px;background:var(--surface);color:var(--ivory);box-shadow:inset 0 0 0 4px var(--panel),0 28px 90px #0009;overscroll-behavior:contain;touch-action:pan-y}
#welcome-guide{background:color-mix(in srgb,var(--ink) 86%,transparent);backdrop-filter:blur(14px);box-shadow:inset 0 0 0 4px var(--panel),0 20px 65px #0005}
#welcome-guide[open]{animation:welcome-arrive .7s ease-out both}
#welcome-guide::backdrop{background:#090e1459;backdrop-filter:blur(2px);animation:welcome-dim .8s ease-out both}
@keyframes welcome-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes welcome-dim{from{background:#090e1400;backdrop-filter:blur(0)}to{background:#090e1459;backdrop-filter:blur(2px)}}
@media(prefers-reduced-motion:reduce){#welcome-guide[open],#welcome-guide::backdrop{animation:none}}
#portrait-tower-controls{position:absolute;left:14px;right:14px;bottom:calc(12px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:auto;touch-action:none}
#portrait-tower-controls>div:last-child{display:flex;gap:12px}#portrait-tower-controls button{width:70px;height:68px;border-radius:50%;border:1px solid var(--brass);background:var(--primary-fill);color:var(--button-text);font:bold 13px Georgia;padding:2px;box-shadow:inset 0 1px 0 var(--sheen),0 4px var(--deep);touch-action:none}
#portrait-tower-controls button.held{transform:translateY(3px);filter:brightness(1.16)}html:not([lang=en]) #portrait-tower-controls button{font:11px Arial}
#tower-stick{width:126px;height:74px;position:relative;border:1px solid var(--metal-line);border-radius:40px;touch-action:none;background:linear-gradient(var(--panel),var(--deep));box-shadow:inset 0 2px 9px #0006;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:var(--muted)}
#tower-stick i{position:absolute;left:calc(50% - 26px);top:10px;width:52px;height:52px;border:1px solid var(--brass);border-radius:50%;background:radial-gradient(circle at 35% 25%,var(--raised),var(--deep));box-shadow:0 4px 9px #0006;transform:translateX(var(--stick-x,0px));pointer-events:none}
.phone.portrait-mode.portrait-tower #game{height:calc(100% - 184px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
@media(max-width:350px){#portrait-tower-controls{gap:8px;left:10px;right:10px}#portrait-tower-controls>div:last-child{gap:8px}#portrait-tower-controls button{width:60px;height:62px}#tower-stick{width:112px}}
.welcome-cabinet{padding:clamp(22px,4vw,40px)}.welcome-heading{text-align:center}.welcome-heading h2{font:clamp(28px,4vw,42px)/1.13 Georgia;margin:12px 0}.welcome-heading p{font:italic 17px/1.5 Georgia;color:var(--muted);margin:0}
.welcome-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:24px 0}.welcome-routes section{border-top:1px solid var(--fine-line);padding-top:16px}.welcome-symbol{font:28px Georgia;color:var(--mint)}.welcome-cabinet h3{font:bold 19px/1.3 Georgia;color:var(--brass);margin:9px 0}.welcome-cabinet p{font-size:16px;line-height:1.5}.welcome-routes p,.welcome-tricks p{color:var(--muted);margin:8px 0}
.welcome-tricks{padding:16px 20px;border:1px solid var(--fine-line);border-radius:18px;background:var(--panel)}.welcome-cabinet .welcome-note{font-size:14px;color:var(--muted);margin:20px 0}.welcome-cabinet .primary{display:block;margin:0 auto;max-width:100%;min-height:48px}.welcome-cabinet .language-control{margin:20px auto}
.language-control select{font-family:Georgia,serif}.language-control+button[data-welcome]{font-size:14px;min-height:44px}
html:not([lang=en]) .mobile-controls button,html:not([lang=en]) #portrait-controls button{letter-spacing:0;font-family:Arial,sans-serif;font-size:11px;padding:2px}html:not([lang=en]) .mobile-controls button small{font-size:9px;letter-spacing:0}html:not([lang=en]) .phone-mission p{white-space:normal;font-size:12px;line-height:1.25}html:not([lang=en]) .primary{white-space:normal;line-height:1.25;font-size:clamp(16px,2vw,22px)}
@media(max-width:620px){.welcome-routes{grid-template-columns:1fr;gap:12px;margin:20px 0}.welcome-routes section{display:grid;grid-template-columns:34px 1fr;gap:0 10px}.welcome-routes h3{margin:3px 0}.welcome-routes p{grid-column:2}.welcome-cabinet{padding:23px}.welcome-tricks{padding:12px 14px}}
@media(max-height:500px) and (orientation:landscape){#welcome-guide{max-height:calc(100dvh - 16px)}.welcome-cabinet{padding:20px 26px}.welcome-heading h2{font-size:28px}.welcome-routes{gap:18px}.welcome-cabinet p{font-size:15px}.welcome-cabinet .language-control{margin:12px auto}}

/* A rescue desk beside the board, with a compact tray on upright phones. */
.parade-active{--parade-side:330px}
.parade-desk{position:absolute;z-index:24;right:18px;top:128px;width:var(--parade-side);max-height:calc(100% - 148px);overflow:auto;box-sizing:border-box;padding:14px;background:var(--surface);border:1px solid var(--brass);border-radius:18px;box-shadow:inset 0 0 0 3px var(--panel),0 8px 28px #0005;color:var(--ivory);overscroll-behavior:contain;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.parade-route{font:bold 18px/1.25 Georgia;color:var(--brass)}
.parade-crew{font:13px/1.35 system-ui;margin:6px 0;color:var(--muted)}
.parade-status{font:15px/1.3 Georgia;min-height:38px;margin:8px 0;color:var(--ivory)}
.parade-actions{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:6px}
.parade-desk button{touch-action:manipulation;min-height:44px;border:1px solid var(--fine-line);border-radius:11px;background:var(--raised);color:var(--ivory);font:13px/1.2 system-ui;cursor:pointer;padding:8px}
.parade-desk button:disabled{opacity:.45;cursor:default}
.parade-desk button:focus-visible{outline:3px solid var(--ivory);outline-offset:2px}
.parade-desk button:not(:disabled):active{transform:translateY(1px)}
.parade-desk .parade-play{background:var(--primary-fill);border-color:var(--brass);color:var(--button-text);font-weight:700}
.parade-skills{display:grid;gap:8px;margin:10px 0}
.parade-desk .parade-job{display:grid;grid-template-columns:30px 1fr auto;gap:3px 6px;text-align:left;min-height:66px}
.parade-job i{grid-row:1/3;align-self:center;font:bold 27px Georgia;color:var(--brass)}
.parade-job strong{font:700 15px/1.2 system-ui}.parade-job small{grid-column:2;grid-row:2;font:12px/1.25 system-ui;color:var(--muted)}
.parade-stock{grid-column:3;grid-row:1/3;align-self:center;font:12px system-ui}
.parade-desk .parade-job.suggested{border:2px solid var(--brass);box-shadow:0 0 0 2px var(--deep),inset 0 0 18px color-mix(in srgb,var(--brass) 20%,transparent);opacity:1}
.parade-desk .parade-job[aria-pressed=true]{border-color:var(--emerald);background:var(--deep)}
.parade-footer{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.parade-footer>span{flex-basis:100%;font:12px/1.25 system-ui;color:var(--muted)}
.parade-footer button{flex:1;font-size:12px;padding:6px}.parade-keys{display:block;font:11px/1.4 monospace;color:var(--muted);margin-top:9px}
.parade-marker{position:absolute;z-index:3;transform:translate(-50%,-50%);border:1px solid var(--brass);border-radius:8px;background:var(--deep);color:var(--ivory);padding:4px 7px;font:bold 14px Georgia;pointer-events:none}
.parade-active #game{position:absolute;left:0;top:110px;width:calc(100% - var(--parade-side) - 44px);height:calc(100% - 130px)}
.parade-active .quest-rail,.parade-active .context-prompt,.parade-active #portrait-prompt{display:none!important}
.phone.parade-active{--parade-side:clamp(240px,34vw,320px)}
.phone.parade-active .parade-desk{right:max(8px,env(safe-area-inset-right));top:var(--phone-top);max-height:calc(100% - var(--phone-top) - 8px);padding:10px}
.phone.parade-active #game{left:env(safe-area-inset-left);top:var(--phone-top);width:calc(100% - var(--parade-side) - 20px - env(safe-area-inset-left) - env(safe-area-inset-right));height:calc(100% - var(--phone-top) - 8px - env(safe-area-inset-bottom))}
.phone .parade-keys{display:none}
.phone.parade-active .parade-footer>span{display:none}
.phone.portrait-mode.parade-active .parade-desk{top:auto;bottom:max(8px,env(safe-area-inset-bottom));left:8px;right:8px;width:auto;max-height:49%;padding:10px}
.phone.portrait-mode.parade-active #game{left:0;top:calc(86px + env(safe-area-inset-top));width:100%;height:calc(100% - 106px - env(safe-area-inset-top) - env(safe-area-inset-bottom) - var(--parade-desk-height,300px))}
.phone.portrait-mode .parade-route{font-size:16px}.phone.portrait-mode .parade-crew{font-size:12px;margin:4px 0}.phone.portrait-mode .parade-status{font-size:14px;min-height:32px;margin:5px 0}
.phone.portrait-mode .parade-skills{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:8px 0}
.phone.portrait-mode .parade-job{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:112px;padding:7px}
.phone.portrait-mode .parade-job i{display:none}.phone.portrait-mode .parade-job strong{font-size:13px}.phone.portrait-mode .parade-job small{font-size:11px}.phone.portrait-mode .parade-stock{margin-top:auto;align-self:flex-start;font-size:11px}
.phone.portrait-mode .parade-actions button{font-size:12px;padding:7px}

/* Staying in a favourite cabinet is a first-class result action. */
#reward-more,#portrait-ui #portrait-more{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;max-width:460px;min-height:66px;padding:14px 18px;margin:14px 0 10px;border-radius:17px;font:700 21px/1.15 Georgia;background:var(--primary-fill);border:2px solid var(--brass);color:var(--button-text);box-shadow:inset 0 0 0 2px var(--panel),inset 0 0 0 3px var(--fine-line),0 4px 0 var(--button-shadow),0 8px 24px #0005}
#reward-more::before,#portrait-more::before{content:'∞';font:34px Georgia;color:var(--brass)}
#reward-more span,#portrait-more span{display:block}#reward-more small,#portrait-more small{display:block;margin-top:5px;font:13px/1.25 system-ui;font-weight:400;color:var(--button-text)}
.reward-card.has-encore #reward-continue,#portrait-panel.has-encore #portrait-play{min-height:44px;margin-top:8px;padding:9px 15px;background:var(--surface);border:1px solid var(--fine-line);color:var(--muted);font:15px Georgia;box-shadow:none}
@media(prefers-reduced-motion:no-preference){.has-encore #reward-more,.has-encore #portrait-more{animation:encore-glow 2.4s ease-in-out 3}@keyframes encore-glow{50%{box-shadow:inset 0 0 0 2px var(--panel),0 0 0 4px color-mix(in srgb,var(--brass) 25%,transparent),0 8px 26px #0005}}}

.parade-desk:not(.has-started) .parade-skills,.parade-desk:not(.has-started) .parade-footer{display:none}
.phone.phone-landscape .parade-skills{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:7px 0}
.phone.phone-landscape .parade-desk .parade-job{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:105px;padding:6px}
.phone.phone-landscape .parade-job i{display:none}.phone.phone-landscape .parade-job strong{font-size:12px}.phone.phone-landscape .parade-job small{font-size:11px}.phone.phone-landscape .parade-stock{font-size:11px;margin-top:auto;align-self:flex-start}
.phone.phone-landscape .parade-desk.has-started .parade-crew{display:none}
.phone.phone-landscape .parade-route{font-size:15px}.phone.phone-landscape .parade-status{font-size:13px;min-height:34px;margin:6px 0}.phone.phone-landscape .parade-desk{padding:9px}
.phone.phone-landscape .parade-actions button{font-size:12px;padding:6px}
