

/* Legible game UI: artwork stays pixel art; decisions use a reading face. */
body.game-mode{
 --pixel:DM,system-ui,sans-serif;--body:DM,system-ui,sans-serif;
 --clarity-ink:#162d38;--clarity-muted:#435a65;--clarity-paper:#fff9e9;
 --clarity-night:#142c39;--clarity-surface:#203e4b;--clarity-line:#6f8f9d;
 --game-panel:#fff9e9;--game-ink:#162d38;--game-gold:#ffcc70;
 --game-shadow:0 0 0 2px #142c39,0 10px 30px #071c2c66;
 font-family:var(--body);font-size:15px;color:#f5f8fb;
 -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
body.game-mode .title-logo{font-family:Pixelify,monospace}
body.game-mode :is(button,input,select,textarea){font-family:var(--body)}
body.game-mode :is(h1,h2,h3){font-weight:700;letter-spacing:-.3px;line-height:1.2}
body.game-mode :is(button,input,select,summary):focus-visible{outline:3px solid #ffcd70;outline-offset:3px;box-shadow:0 0 0 5px #142c39}
body.game-mode button:disabled{opacity:.55}
body.game-mode .button{font-size:14px;line-height:1.35;min-height:46px;border-radius:7px;padding:11px 16px;box-shadow:none;border-color:#7793a0;white-space:normal}
body.game-mode .button.primary{color:#182e36;background:#ffce78;border:2px solid #ffe4ab;box-shadow:0 3px 0 #8e622b;font-weight:800}
body.game-mode .button.primary:hover:not(:disabled){background:#ffdc9c;box-shadow:0 3px 0 #8e622b}
body.game-mode .button.subtle{background:#264756;border-color:#7595a5;color:#f5f8fb}
body.game-mode .text-button{font-size:14px;line-height:1.4;color:#ffdc97}
body.game-mode .eyebrow{font-size:12px;letter-spacing:1px;line-height:1.5;color:#ffdc97}
body.game-mode .type-tag{color:#f6fbff;background:#264453;border-color:#7896a0;font-size:11px;letter-spacing:.25px;padding:4px 6px;line-height:1.1}
body.game-mode .section-label{font-size:12px;letter-spacing:.6px;color:#d4e1e9}
body.game-mode .section-label>span{font-size:12px;color:#bacfdb}

/* Calm, opaque windows separate content from the scenery behind them. */
body.game-mode .game-overlay{background:#0a1d3059;backdrop-filter:blur(2px)}
body.game-mode .game-window{background:#142c39;color:#f5f8fb;border:1px solid #86a2ad;border-radius:12px;box-shadow:0 14px 55px #06172480;overflow:hidden}
body.game-mode .game-window__heading{background:#1e3a4a;border-bottom:1px solid #7893a0;padding:16px 20px;min-height:74px}
body.game-mode .game-window__heading h1{font:700 clamp(22px,2.3vw,30px)/1.2 var(--body);color:#fff9eb;letter-spacing:-.4px}
body.game-mode .game-window__heading p{font-size:13px;line-height:1.5;color:#d0dfeb;margin-top:5px}
body.game-mode .game-window__close.icon-button{background:#2b4b5b;border:1px solid #90aab5;border-radius:7px;color:#fff5dc;font:600 25px/1 var(--body)}
body.game-mode .game-window__menu{font-size:12px;min-height:44px;background:#294a59;border-color:#8da5b2;border-radius:7px;color:#fff4d5}
body.game-mode .game-window__body{padding:20px;scrollbar-color:#8ba4b5 #183541}
body.game-mode .game-window .page-heading{margin-bottom:20px}
body.game-mode .game-window .page-heading h1{font-size:26px}
body.game-mode .game-window .page-heading p{font-size:14px;line-height:1.6;color:#ccdae4}
body.game-mode .modal-backdrop{background:#07182bab;backdrop-filter:blur(3px)}
body.game-mode .modal{background:#183440;color:#f6f8fb;border:1px solid #8aa5b2;border-radius:12px;box-shadow:0 18px 70px #04111b99;padding:22px;font-size:14px;line-height:1.6}
body.game-mode .modal-heading{background:#183440;border-color:#718f9d;padding-bottom:15px;margin-bottom:18px}
body.game-mode .modal-heading h2{font:700 25px/1.2 var(--body);color:#fff9e9}
body.game-mode .modal-heading .icon-button{border:1px solid #7b9aa8;background:#254958;border-radius:7px;color:#f9f3e0}
body.game-mode .modal :is(p,li){font-size:14px;line-height:1.65;color:#d1dfe9}
body.game-mode .modal :is(input,select){font-size:16px;background:#102d3a;color:#f8f8f1;border:1px solid #8ba5b2;border-radius:6px;min-height:44px}
body.game-mode .modal :is(h3,.controls-heading strong){font-size:20px;line-height:1.3;color:#fff8e7}
body.game-mode #toast{font:600 14px/1.5 var(--body);background:#fff8e7;color:#163343;border-color:#8ca4ae;border-radius:7px;box-shadow:0 4px 20px #0b203a55;max-width:min(460px,calc(100vw - 32px))}

/* The place and menu remain utilities; one action leads each screen. */
body.game-mode .game-hud__place{background:#142e3deb;border-color:#8da7b0;border-radius:7px;box-shadow:0 2px 5px #102d4140;padding:10px 12px}
body.game-mode .game-hud__place strong{font-size:14px;line-height:1.25;color:#fff7e6}
body.game-mode .game-hud__place small{font-size:11px;line-height:1.2;letter-spacing:.5px;color:#d2e3ea;margin-top:4px}
body.game-mode .game-hud button{background:#183745f5;border-color:#87a2af;border-radius:7px;color:#fff5df;box-shadow:0 2px 5px #0a273c55;font-size:13px;min-height:44px;min-width:44px}
body.game-mode .game-hud .game-menu-button{background:#f8d58f;color:#193240;border-color:#fff0cc}
body.game-mode .game-hud__tools{gap:7px}
body.game-mode .game-quickbar button{font-size:12px;border-radius:7px;background:#193847f5;color:#fff8e9;border-color:#8ca3ad}
body.game-mode .title-actions{background:#142e3deb;border-color:#809eab;border-radius:12px;box-shadow:0 8px 25px #09223566}
body.game-mode .title-actions .button.primary{font-size:18px;min-height:50px}
body.game-mode .title-actions .text-button{font-size:13px}
body.game-mode .title-prompt{font-size:12px;letter-spacing:.4px;color:#fff9e9;bottom:22px}
body.game-mode .title-kicker{font-size:12px;letter-spacing:2px}
body.game-mode .starter-screen__heading h1{font-size:clamp(27px,4vw,42px);line-height:1.15;text-shadow:0 2px 5px #092a35}
body.game-mode .starter-screen__heading .eyebrow{font-size:12px;letter-spacing:1.2px;color:#fff2cf}
body.game-mode .starter-screen .starter-card{background:#173947eb;border-color:#849eac;border-radius:10px;padding:18px 12px}
body.game-mode .starter-screen .starter-card.selected{background:#2c5361;border-color:#ffd284;box-shadow:0 0 0 2px #ffd284,0 5px 12px #0e253855}
body.game-mode .starter-screen .starter-name{font:700 23px/1.2 var(--body);color:#fff6df;margin:4px 0 10px}
body.game-mode .starter-screen .starter-number{font-size:12px;color:#c5dae3}
body.game-mode .starter-screen .starter-role{font-size:13px;line-height:1.5;color:#dae8ed}
body.game-mode .starter-screen .starter-type .type-tag{font-size:11px;line-height:1.1}
body.game-mode .starter-screen .starter-confirm{background:#183543f0;border:1px solid #84a1af;border-radius:10px;padding:18px;gap:20px}
body.game-mode .starter-screen .starter-confirm p{font:700 21px/1.25 var(--body);color:#fff8e6}
body.game-mode .starter-screen .starter-confirm p>span{font:400 14px/1.55 var(--body);color:#dbe6ed;margin-top:6px;max-width:420px}
body.game-mode .starter-screen .starter-confirm .button{font-size:15px;min-height:48px}
body.game-mode .starter-screen__back{font-size:13px}

body.game-mode .camp-sign{font:700 23px/1.2 var(--body);letter-spacing:2px;color:#fff7df;text-shadow:0 2px 5px #153740;top:15%}
body.game-mode .camp-sign span{font-size:17px}
body.game-mode .camp-companion__name{font:700 21px/1.2 var(--body);color:#fff5db;text-shadow:0 2px 3px #0b303e}
body.game-mode .camp-companion__name small{font-size:13px;color:#fff5df}
body.game-mode .camp-dialogue{background:#173644f5;border:1px solid #a0b3bc;border-radius:10px;box-shadow:0 4px 15px #09253766;padding:42px 24px 20px;justify-content:center;gap:8px}
body.game-mode .camp-dialogue .dialogue-speaker{font-size:12px;line-height:1.25;top:16px;left:24px;letter-spacing:.6px;color:#ffd58a}
body.game-mode .camp-dialogue p{font:700 clamp(21px,2.1vw,28px)/1.25 var(--body);color:#fff9eb}
body.game-mode .camp-dialogue .dialogue-subtext{font:400 14px/1.55 var(--body);color:#d9e5ed}
body.game-mode .dialogue-arrow{display:none}
body.game-mode .camp-commands{background:#fff8e6;border:1px solid #fff2c9;border-radius:10px;box-shadow:0 4px 15px #09253766;padding:14px;gap:10px;color:#193440}
body.game-mode .camp-commands button{font:700 17px/1.25 var(--body);border:1px solid #9dadb0;border-radius:7px;background:#eef1e9;color:#1c3c49;box-shadow:none;padding:12px;min-height:46px;gap:10px;white-space:normal}
body.game-mode .camp-commands button:first-child{background:#ffce78;border-color:#a17b41;color:#172e39}
body.game-mode .camp-commands button .icon{color:inherit;width:20px;height:20px}
body.game-mode .camp-commands button small{font-size:13px;color:#36505a;line-height:1.4}
body.game-mode .camp-commands .camp-primary{grid-column:1/-1;min-height:76px}
body.game-mode .camp-commands .camp-primary__text{display:block;min-width:0;flex:1}
body.game-mode .camp-primary__text strong{display:block;font-size:19px;line-height:1.25}
body.game-mode .camp-primary__text small{display:block;margin-top:5px}
body.game-mode .camp-more{grid-column:1/-1;min-width:0;position:relative}
body.game-mode .camp-more>summary{font:600 13px/1.3 var(--body);color:#35515c;min-height:44px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;list-style:none}
body.game-mode .camp-more>summary:after{content:'⌄';font-size:18px}
body.game-mode .camp-more[open]>summary:after{content:'⌃'}
body.game-mode .camp-more>div{position:absolute;bottom:46px;right:0;left:0;padding:10px;background:#fff9e9;box-shadow:0 4px 20px #102b4855;border:1px solid #7f98a3;border-radius:8px;display:grid;gap:8px;z-index:10}
body.game-mode .camp-more button{width:100%;font-size:14px}
body.game-mode .camp-discoveries{font-size:11px;min-height:32px;border-radius:5px;background:#294f60;color:#ffe0a6;border-color:#91a7ae}

/* Adventure and preparation choices read as cards, with one selected state. */
body.game-mode .adventure-recommendation{font-size:14px;line-height:1.65;color:#dbe6ec;margin-bottom:18px}
body.game-mode .adventure-options{gap:14px}
body.game-mode .adventure-options>button{background:#fff9e9;border:1px solid #bbc7c6;border-radius:9px;padding:20px;min-height:180px;color:#193440;box-shadow:none}
body.game-mode .adventure-options>button:hover{background:#eef5ed;border-color:#9bc6c4}
body.game-mode .adventure-options>.adventure-recommended{background:#fff1d0;border:2px solid #f5ca76;box-shadow:none}
body.game-mode .adventure-options strong{font:700 21px/1.25 var(--body);color:#1a3440}
body.game-mode .adventure-options p{font:400 14px/1.6 var(--body);color:#39535f;margin-top:10px}
body.game-mode .adventure-options small{font:600 12px/1.5 var(--body);color:#50616a;margin-top:11px}
body.game-mode .adventure-options>button>span{color:#56776e;font-size:26px;margin-bottom:12px}
body.game-mode .adventure-options b{color:#244f5c;font-size:14px}
body.game-mode .adventure-options--recommended{grid-template-columns:1fr}
body.game-mode .adventure-options--recommended>button{min-height:145px}
body.game-mode .adventure-advanced{margin-top:18px;border-top:1px solid #6c8a98;padding-top:8px}
body.game-mode .adventure-advanced>summary{font-size:14px;font-weight:600;line-height:1.5;min-height:48px;color:#e2eaf1;cursor:pointer;padding:10px 0}
body.game-mode .adventure-advanced .adventure-options{margin-top:10px}
body.game-mode .habitat-console{gap:20px}
body.game-mode .habitat-console__list .habitat-option{background:#1d3f4d;color:#f5f8fa;border:1px solid #7695a3;border-radius:7px;padding:13px 12px;min-height:80px;gap:5px 9px}
body.game-mode .habitat-console__list .habitat-option.active{background:#35606c;border-color:#ffd184;box-shadow:inset 4px 0 #ffd184}
body.game-mode .habitat-console__list .habitat-option>strong{font:700 17px/1.3 var(--body);color:#fff9e9}
body.game-mode .habitat-console__list .habitat-option>small{font-size:12px;line-height:1.5;color:#d8e5ed;letter-spacing:0}
body.game-mode .habitat-console__list .habitat-option>span:first-child{font-size:13px;color:#bcd1df}
body.game-mode .habitat-console__preview{background:#fff9e9;border:1px solid #adc1c3;border-radius:9px;color:#213c47;overflow:hidden}
body.game-mode .habitat-console__preview>p{font-size:14px;line-height:1.65;color:#3d5661;padding:17px 20px}
body.game-mode .habitat-console__landscape h2{font:700 28px/1.25 var(--body);color:#fff9e9;text-shadow:0 2px 4px #173944}
body.game-mode .habitat-console__guardian{border-color:#b5c4c3;background:#edf1e6;padding:14px 18px;gap:14px}
body.game-mode .habitat-console__guardian>span{font-size:12px;line-height:1.4;letter-spacing:.3px;color:#284a57}
body.game-mode .habitat-console__guardian small{font-size:12px;color:#39545d}
body.game-mode .game-habitat .provision-picker{background:#f0f2e8;border-color:#a5bbb9;border-radius:7px;padding:14px}
body.game-mode .game-habitat .provision-picker :is(p,label){font-size:13px;color:#3d5560;line-height:1.55}
body.game-mode .game-habitat .provision-picker button{font-size:13px;min-height:44px;border-radius:6px;background:#fffdf3;border-color:#819da3;color:#244350}
body.game-mode .game-habitat .provision-picker button.selected{background:#245461;color:#fff8e5;border-color:#1d4254}
body.game-mode .game-habitat .provision-picker button small{font-size:11px}

/* Battle: the two names/HP values and the four move decisions get priority. */
body.game-mode .health-plate{background:#fff9e9;border-color:#244657;color:#193440;box-shadow:0 3px 9px #102d4340;border-radius:8px;padding:13px 16px}
body.game-mode .plate-top strong{font:750 clamp(21px,2vw,28px)/1.15 var(--body);color:#18343f;letter-spacing:-.4px}
body.game-mode .plate-top .level{font-size:12px;color:#314b55;padding-top:2px}
body.game-mode .plate-top .level b{font-size:15px}
body.game-mode .plate-types .type-tag{font-size:10px;color:#29434c;background:#edf1e6;border-color:#829795;padding:3px 5px}
body.game-mode .health-row>span{font:700 11px/1.2 var(--body);color:#385652}
body.game-mode .health-row small{font:700 14px/1.2 var(--body);color:#173743;min-width:64px;font-variant-numeric:tabular-nums}
body.game-mode .health-row .health-track{background:#d6dfd4;border-color:#7c958c;border-radius:4px;height:10px}
body.game-mode .health-row .health-track>i{background:#338654;box-shadow:none}
body.game-mode .health-row .health-track>i.low{background:#a26e18;box-shadow:none}
body.game-mode .health-row .health-track>i.critical{background:#bd493a;box-shadow:none}
body.game-mode .battle-message{background:#153746;border:1px solid #8da6b1;border-radius:9px;box-shadow:0 4px 15px #092a4355;padding:22px}
body.game-mode .battle-message p{font:500 clamp(18px,1.65vw,24px)/1.45 var(--body);color:#fff9ed;text-shadow:none}
body.game-mode .action-area,body.game-mode .outcome-area{background:#fff9e9;border:1px solid #8da6b1;border-radius:9px;box-shadow:0 4px 15px #092a4355;color:#17333f}
body.game-mode .command-area .move-button{background:#fffef5;border:1px solid #8fa7a4;border-left:4px solid var(--type);border-radius:6px;color:#183642;box-shadow:0 2px 0 #b3c4bd;padding:10px 12px;gap:9px}
body.game-mode .command-area .move-button:hover:not(:disabled){background:#e6f1e8;border-color:#427a78}
body.game-mode .command-area .move-info strong{font:700 clamp(16px,1.5vw,21px)/1.2 var(--body);color:#173643;white-space:normal;letter-spacing:-.2px}
body.game-mode .command-area .move-info small{font-size:11px;line-height:1.25;color:#3d5a61;margin-top:5px;gap:8px}
body.game-mode .command-area .move-info small>span{font:700 10px/1.25 var(--body);color:#47615f;letter-spacing:.2px}
body.game-mode .command-area .move-info small>b{font:700 12px/1.25 var(--body);color:#254e4d}
body.game-mode .command-area .move-hint{font:600 12px/1.25 var(--body);color:#3d5c57;margin-top:4px}
body.game-mode .command-area .move-hint.advantage{color:#276539}
body.game-mode .command-area .risky .move-hint{color:#963d29}
body.game-mode .command-area .move-pp{font:700 19px/1.2 var(--body);color:#274e55;flex-basis:33px}
body.game-mode .command-area .move-pp small{font:600 10px/1.2 var(--body);color:#4c636a}
body.game-mode .command-area .action-menu{border-color:#b4c3bd}
body.game-mode .command-area .action-menu button{background:#e8eee7;border-color:#8ba39b;border-radius:6px;font:700 14px/1.2 var(--body);color:#254953;box-shadow:0 2px 0 #b4c1b4}
body.game-mode .command-area .action-menu button:first-child{background:#f8d796;border-color:#ac8b51;color:#273e41}
body.game-mode .command-area .action-menu b{font-size:11px;color:#38534f}
body.game-mode .forecast-note{font-size:11px;line-height:1.4;color:#4e6765}
body.game-mode .battle-heading :is(.turn-chip,.run-info-button,.text-button){font-size:12px;letter-spacing:0}
body.game-mode .battle-heading .icon-button{border-radius:6px;background:#173847;color:#fff4d9;font-size:14px}
body.game-mode .battle-field-strip{background:#193c4bf0;border-color:#8fa7b0;border-radius:6px;color:#f2f6f5}
body.game-mode .battle-field-strip button{font-size:12px;color:#ffe0a0}
body.game-mode .battle-field-strip>span{font-size:12px;color:#e0eaf0}
body.game-mode .wild-label{font-size:11px;letter-spacing:.3px;background:#183b4be8;border-color:#8ca5ad;border-radius:5px;color:#fff7e9}
body.game-mode .battle-bottom>p{background:#183b4bee;border-color:#8aa3ab;border-radius:5px;font-size:11px;color:#fff6e5}
body.game-mode :is(.capture-card,.switch-card){border-radius:6px;background:#fffdf3;color:#183d47;border-color:#90aaa5;padding:12px}
body.game-mode :is(.capture-card,.switch-card) strong{font:700 20px/1.3 var(--body);color:#1c3f49}
body.game-mode :is(.capture-card,.switch-card) small{font-size:12px;line-height:1.45;color:#405e61}
body.game-mode .controls-heading strong{font:700 22px/1.2 var(--body);color:#193d46}
body.game-mode .controls-heading>div>span{font-size:12px;color:#446065}
body.game-mode .capture-readiness strong{font-size:22px}
body.game-mode .capture-readiness>div>span{font-size:11px;line-height:1.4}
body.game-mode .capture-advice{font-size:13px;line-height:1.5;color:#3d585e;background:#e8eee3;border-color:#afc0b0}
body.game-mode .controls-heading .text-button{font-size:13px;color:#315967}
body.game-mode .switch-note{font-size:12px;line-height:1.5;color:#3c5961}

/* Rewards are decisions; names, outcomes and the next step have room to read. */
body.game-mode .game-loot .game-window__heading{background:#fff4d9;border-color:#aebfc1;color:#1b3a47}
body.game-mode .game-loot .game-window__heading h1{font-size:27px;color:#193c49}
body.game-mode .game-loot .game-window__heading p{font-size:12px;color:#48616a;letter-spacing:0}
body.game-mode .game-loot .game-window__body{background:#fff9e9;color:#1d3b46;padding:18px;gap:15px}
body.game-mode .game-loot .loot-summary{font-size:14px;border-color:#a8bbb9;gap:12px}
body.game-mode .game-loot .loot-summary p{font-size:14px;line-height:1.5;color:#254955}
body.game-mode .game-loot .loot-summary p small{font-size:12px;line-height:1.5;color:#4a626b}
body.game-mode .game-loot .loot-choice.run-reward{background:#edf1e6;border:1px solid #9ab1a9;border-radius:7px;padding:15px;gap:13px;min-height:106px;box-shadow:none}
body.game-mode .game-loot .loot-choice.run-reward:hover{background:#dfeee3;border-color:#527e76}
body.game-mode .game-loot .loot-choice__text strong{font:700 20px/1.3 var(--body);color:#1b404a}
body.game-mode .game-loot .loot-choice__text small{font-size:13px;line-height:1.6;color:#3c5960;margin-top:6px}
body.game-mode .game-loot .loot-choice__text b{font-size:11px;line-height:1.45;color:#3b5e56;letter-spacing:0;margin-top:6px}
body.game-mode .game-loot .game-loot-tools .button{font-size:12px;min-height:44px;padding:9px 11px}
body.game-mode .game-result-message{font:500 19px/1.5 var(--body);color:#e8f0f4}
body.game-mode .game-route-choices>button{border-radius:8px;background:#fff9e9;color:#193b45;min-height:105px;padding:18px}
body.game-mode .game-route-choices>button strong{font:700 21px/1.25 var(--body);color:#1d414d}
body.game-mode .game-route-choices>button small{font-size:13px;line-height:1.5;color:#47616a}
body.game-mode .game-route-choices>button[data-action=run-route]>b{font-size:12px;line-height:1.5;color:#375b57}
body.game-mode .run-horizon{background:#e8ede1;border-color:#a6bbb1;color:#193c45;border-radius:7px;padding:12px}
body.game-mode .run-horizon strong{font-size:12px;line-height:1.4;color:#254b51}
body.game-mode .run-horizon small{font-size:13px;line-height:1.5;color:#3f5e60}
body.game-mode .checkpoint-condition{font-size:14px;line-height:1.6;color:#e3edf3}
body.game-mode .earned-notice{background:#f2f1e2;border-color:#acbdb7;border-radius:7px;padding:14px;color:#1e404a}
body.game-mode .earned-notice strong{font:700 20px/1.3 var(--body);color:#254753}
body.game-mode .earned-notice p{font-size:13px;line-height:1.55;color:#425e65}
body.game-mode .earned-notice__actions>.button{font-size:12px;min-height:44px}
body.game-mode .earned-notice__dismiss{min-height:44px;min-width:44px;font-size:25px;border-radius:5px}
body.game-mode .earned-notices__more>summary{font-size:12px;min-height:44px;display:flex;align-items:center}

/* Companions: selected rows, profile surfaces and tools have distinct levels. */
body.game-mode .roster-console{--roster-muted:#cfdee8;--roster-border:#718e9c;--roster-surface:#203e4b;color:#f5f8fa}
body.game-mode .roster-console__header{background:#1c3948;border-color:#7893a2;padding:0 18px 12px}
body.game-mode .roster-console .roster-tabs button{font-size:14px;color:#d4e2eb;padding:10px 0;min-height:51px}
body.game-mode .roster-tabs button.active{color:#ffe2a1;border-color:#ffce7a}
body.game-mode .roster-tabs button span{font-size:12px;border-color:#7998a9}
body.game-mode :is(.roster-context,.roster-console__summary p,.roster-section-heading>span){font-size:12px;line-height:1.5;color:#c6d9e6}
body.game-mode .roster-console :is(.button,.text-button){font-size:13px}
body.game-mode .roster-notice{font-size:13px;line-height:1.5;background:#57452b;color:#ffe0a3;border-color:#a78b55;border-radius:5px}
body.game-mode .roster-notice--quiet{background:#254451;color:#d3e4ea;border-left-color:#a5bcbf;font-size:12px;padding:9px 11px}
body.game-mode .roster-master{background:#112e3a;border-color:#728d9a;padding:16px}
body.game-mode .roster-console .team-workbench{background:#1b3947}
body.game-mode .roster-detail__backbar{background:#1b3947f5;border-color:#7895a1}
body.game-mode .roster-section-heading :is(h2,h3){font:700 19px/1.25 var(--body)}
body.game-mode .roster-console .roster-row{background:#213f4e;border:1px solid #7694a4;border-radius:8px;min-height:126px;gap:12px;padding:13px 11px;box-shadow:none}
body.game-mode .roster-console .roster-row.selected{background:#315b67;border-color:#ffce7a;box-shadow:inset 4px 0 #ffcf7e}
body.game-mode .roster-console .roster-row:hover{background:#2e5361;border-color:#bdd7dd}
body.game-mode .roster-console .roster-row strong{font:700 20px/1.2 var(--body);color:#fff7e6}
body.game-mode :is(.roster-row__slot,.roster-row__species,.roster-row__location,.roster-ready){font-size:12px;line-height:1.4;color:#d1e1e9}
body.game-mode .roster-console .roster-row .type-tag{font-size:10px;line-height:1.1;padding:3px 5px;background:#193541;color:#eef7fb;border-color:#8ca5ab}
body.game-mode .roster-row__health{font-size:12px;color:#e5eef2;line-height:1.2;gap:8px}
body.game-mode .roster-row__health .health-track{height:7px;background:#112b36}
/* Collection-specific legacy rules must not shrink the facts used to pick a party. */
body.game-mode .roster-console .roster-row :is(.roster-row__species,.roster-row__location){font-size:14px;line-height:1.45;color:#e0edf3}
body.game-mode .roster-console .roster-row .roster-row__species>span{font-size:inherit;color:#ffe2a5}
body.game-mode .roster-console .roster-row :is(.roster-row__health,.roster-row__health>span){font-size:14px;line-height:1.4;color:#f3f8fa}
body.game-mode .roster-console .roster-row .roster-row__types .type-tag{font-size:11px;line-height:1.2;padding:4px 5px}
body.game-mode .roster-console .roster-row .roster-row__health .health-track{min-width:24px}

body.game-mode :is(.roster-shiny,.roster-lead){font-size:10px;padding:3px 5px}
body.game-mode .roster-console .roster-row--empty{background:transparent;border-style:dashed;min-height:82px}
body.game-mode .roster-console .roster-row--empty strong{font-size:17px}
body.game-mode .roster-row--empty small{font-size:12px;color:#c7dae4;line-height:1.5}
body.game-mode .roster-storage-link strong{font-size:14px}
body.game-mode .roster-storage-link small{font-size:12px;line-height:1.5;color:#c2d8e4}
body.game-mode .roster-identity .eyebrow{font-size:11px;color:#d0dde7;letter-spacing:.4px}
body.game-mode .roster-identity__name h2{font:700 27px/1.15 var(--body);color:#fff8e8}
body.game-mode .roster-identity__name>span{font-size:14px;color:#ffe2a5}
body.game-mode .roster-identity p{font-size:13px;line-height:1.5;color:#d0dfe8}
body.game-mode .roster-identity .type-tag{font-size:10px}
body.game-mode .roster-vitals>div>span:first-child,body.game-mode .roster-vitals b{font-size:12px;color:#d5e5ed;line-height:1.5}
body.game-mode .roster-detail__party-actions .button{font-size:14px;min-height:48px;padding:10px}
body.game-mode :is(.roster-detail__order>span,.roster-action-reason,.roster-learning){font-size:12px;line-height:1.6;color:#d1e0eb}
body.game-mode .roster-detail__tools .button{font-size:13px;padding:10px 6px}
body.game-mode .roster-evolution{font-size:13px;line-height:1.5;color:#ffe0a0}
body.game-mode .roster-console .loadout-card{background:#254552;border-color:#819daa;border-radius:6px;padding:14px;min-height:168px}
body.game-mode .roster-console .loadout-card>strong{font:700 19px/1.25 var(--body);color:#fff9e7}
body.game-mode .roster-console .loadout-card .slot-number{font-size:11px;color:#d0e2e9}
body.game-mode .roster-console .loadout-card .loadout-change{font-size:12px;color:#ffdf9d}
body.game-mode .roster-console .loadout-meta{font-size:12px;color:#deedf1}
body.game-mode .roster-console .loadout-meta .type-tag{font-size:10px}
body.game-mode .roster-console .loadout-card>p{font-size:13px;line-height:1.55;color:#d3e4ed}
body.game-mode .roster-console :is(.roster-profile,.roster-lore)>summary{font-size:14px;color:#ffe0a0;min-height:50px}
body.game-mode .roster-console .complete-stats>div{background:#254653;border-color:#7895a1;border-radius:5px;padding:12px 5px}
body.game-mode .roster-console .stat-grid.complete-stats span{font-size:11px;color:#d3e3eb}
body.game-mode .roster-console .stat-grid.complete-stats strong{font:700 24px/1.2 var(--body);color:#fff5df}
body.game-mode .roster-console .trait-sheet>div,body.game-mode .roster-console .trait-sheet>button{background:#254653;border-color:#7895a1;border-radius:6px;padding:13px}
body.game-mode .roster-console .trait-sheet span{font-size:11px;letter-spacing:.4px;color:#d1e0e9}
body.game-mode .roster-console .trait-sheet strong{font-size:14px;color:#fff8e7}
body.game-mode .roster-console .trait-sheet small{font-size:13px;line-height:1.6;color:#ccdde8}
body.game-mode .roster-console :is(.individual-training p,.individual-training table,.roster-lore>p){font-size:13px;line-height:1.65;color:#d0e1e9}
body.game-mode .storage-controls label>span{font-size:12px;color:#d2e1ea;line-height:1.4}
body.game-mode .storage-controls :is(input,select){background:#112d3a;border-color:#88a1ae;color:#f7f8ef;font-size:16px;border-radius:6px;min-height:46px}
body.game-mode .storage-controls input::placeholder{color:#bdd2df}
body.game-mode .storage-pagination .text-button{font-size:13px;min-width:80px;min-height:44px}
body.game-mode .storage-pagination>span{font-size:12px;color:#cbdde7}
body.game-mode .storage-result-heading h2{font-size:19px}
body.game-mode .replacement-incoming{background:#244b59;border-color:#7999a5;border-radius:7px}
body.game-mode .replacement-incoming strong{font:700 23px/1.25 var(--body)}
body.game-mode .replacement-incoming small{font-size:13px;color:#d4e4ec}
body.game-mode .replacement-grid>button{background:#fff9e9;border-color:#a0b6b5;border-radius:7px;padding:13px;gap:13px}
body.game-mode .replacement-grid strong{font:700 20px/1.25 var(--body);color:#1e414e}
body.game-mode .replacement-grid small,body.game-mode .replacement-grid button b{font-size:12px;line-height:1.5;color:#425d62}
body.game-mode .replacement-note{font-size:13px;line-height:1.6;color:#d3e3eb}

body.game-mode .pause-menu{gap:9px}
body.game-mode .pause-menu>button,body.game-mode .pause-menu__group>button,body.game-mode .pause-menu__more button{font:600 15px/1.4 var(--body);min-height:46px;padding:10px 13px;background:#244654;border:1px solid #7597a5;border-radius:6px;color:#f6f6ea;display:flex;align-items:center;gap:10px;text-align:left;width:100%}
body.game-mode .pause-menu>button:first-child{background:#ffce78;color:#173440;border-color:#ffe4ab;font-weight:700}
body.game-mode .pause-menu__group{display:grid;gap:8px;border-top:1px solid #718f9d;padding-top:12px;margin-top:4px}
body.game-mode .pause-menu__group h3{font-size:12px;letter-spacing:.5px;color:#bbd2e1;margin-bottom:2px}
body.game-mode .pause-menu__more>summary{font-size:14px;min-height:48px;display:flex;align-items:center;cursor:pointer;color:#ffe0a0}
body.game-mode .pause-menu__more>div{display:grid;gap:8px;margin-top:6px}
body.game-mode .pause-controls{font-size:11px;line-height:1.5;color:#c2d7e4}
body.game-mode .research-intro h3{font:700 24px/1.3 var(--body);color:#1e414b}
body.game-mode .modal:has(.research-intro){background:#fff9e9;color:#1b3c47}
body.game-mode .modal:has(.research-intro) .modal-heading{background:#fff9e9}
body.game-mode .modal:has(.research-intro) .modal-heading h2{color:#193e4b}
body.game-mode .research-intro p{font-size:14px;line-height:1.65;color:#3c5960}
body.game-mode .research-intro .research-intro__reward{font-size:13px;line-height:1.6;color:#3a5756;background:#eaf0e3;border-color:#afc2b1;border-radius:6px}
body.game-mode .research-intro .button{font-size:14px;min-height:46px}
body.game-mode .research-intro .text-button{font-size:13px;color:#3a5b64;min-height:44px}

@media(min-width:701px) and (min-height:501px){
 body.game-mode .camp-commands:has(.camp-primary){height:242px;grid-template-rows:76px 56px 44px}
 body.game-mode .camp-dialogue:has(+.camp-commands .camp-primary){height:242px}
}
@media(max-width:700px){
 body.game-mode .game-hud__place{padding:8px;gap:7px;max-width:150px}
 body.game-mode .game-hud__place strong{font-size:12px}
 body.game-mode .game-hud__place small{font-size:10px;letter-spacing:.2px}
 body.game-mode .game-hud__tools{gap:5px}
 body.game-mode .game-hud button{font-size:12px;padding:6px}
 body.game-mode .game-window__heading{padding:13px 14px;min-height:69px;gap:10px}
 body.game-mode .game-window__heading h1{font-size:23px}
 body.game-mode .game-window__heading p{font-size:12px}
 body.game-mode .game-window__body{padding:15px}
 body.game-mode .title-actions{padding:18px 22px}
 body.game-mode .title-kicker{font-size:11px;letter-spacing:1.7px}
 body.game-mode .title-actions .button.primary{font-size:17px}
 body.game-mode .title-actions .text-button{font-size:12px}
 body.game-mode .title-prompt{font-size:10px;letter-spacing:.2px}
 body.game-mode .starter-screen{padding:76px 14px 17px;overflow:auto}
 body.game-mode .starter-screen .starter-grid{gap:8px;margin:18px 0}
 body.game-mode .starter-screen .starter-card{padding:16px 5px 13px}
 body.game-mode .starter-screen .starter-name{font-size:17px;margin-bottom:8px}
 body.game-mode .starter-screen .starter-role{font-size:11px;line-height:1.4;min-height:31px}
 body.game-mode .starter-screen .starter-type .type-tag{font-size:10px;padding:3px 4px;letter-spacing:0}
 body.game-mode .starter-screen .starter-confirm{padding:15px;gap:14px}
 body.game-mode .starter-screen .starter-confirm p{font-size:20px}
 body.game-mode .starter-screen .starter-confirm p>span{font-size:13px;line-height:1.5}
 body.game-mode .starter-screen__back{font-size:12px;margin-top:12px}
 body.game-mode .camp-sign{top:100px;font-size:20px;letter-spacing:1px}
 body.game-mode .camp-companion__name{font-size:19px}
 body.game-mode .camp-companion__name small{font-size:12px}
 body.game-mode .camp-dialogue{left:12px;right:12px;bottom:calc(var(--game-dock-height) + var(--game-dock-bottom) + 14px);padding:34px 17px 15px;height:131px}
 body.game-mode .camp-dialogue .dialogue-speaker{font-size:11px;top:12px;left:17px}
 body.game-mode .camp-dialogue p{font-size:21px;line-height:1.25}
 body.game-mode .camp-dialogue .dialogue-subtext{font-size:13px;line-height:1.45}
 body.game-mode .camp-commands{left:12px;right:12px;padding:12px;gap:9px}
 body.game-mode .camp-commands button{font-size:15px;line-height:1.3;padding:10px;gap:8px}
 body.game-mode .camp-commands:has(.camp-primary){height:230px;grid-template-rows:73px 52px 44px}
 body.game-mode .camp-primary__text strong{font-size:18px}
 body.game-mode .camp-primary__text small{font-size:12px}
 body.game-mode .camp-dialogue:has(+.camp-commands .camp-primary){bottom:calc(230px + var(--game-dock-bottom) + 14px)}
 body.game-mode .camp-more>summary{font-size:13px}
 body.game-mode .camp-companions{top:170px;bottom:420px}
 body.game-mode .adventure-options>button{padding:18px;min-height:175px}
 body.game-mode .adventure-options strong{font-size:20px}
 body.game-mode .adventure-options p{font-size:14px}
 body.game-mode .adventure-options small{font-size:12px}
 body.game-mode .adventure-options--recommended>button{min-height:155px}
 body.game-mode .adventure-recommendation{font-size:14px}
 body.game-mode .habitat-console{gap:15px}
 body.game-mode .habitat-console__list{grid-template-columns:1fr;gap:9px}
 body.game-mode .habitat-console__list .habitat-option{grid-template-columns:23px minmax(0,1fr) 14px;min-height:75px;padding:12px;gap:4px 10px}
 body.game-mode .habitat-console__list .habitat-option>strong{font-size:17px}
 body.game-mode .habitat-console__list .habitat-option>small{font-size:12px}
 body.game-mode .habitat-console__preview>p{font-size:14px;padding:15px}
 body.game-mode .habitat-console__guardian{flex-wrap:wrap;padding:13px 15px}
 body.game-mode .habitat-console__guardian>span{font-size:12px;line-height:1.5}
 body.game-mode .habitat-console__guardian small{font-size:12px}
 body.game-mode .game-habitat .provision-picker button{font-size:12px}
 body.game-mode .plate-top strong{font-size:21px}
 body.game-mode .health-row small{font-size:12px;min-width:55px}
 body.game-mode .battle-message p{font-size:18px;line-height:1.35}
 body.game-mode .command-area .move-info strong{font-size:16px;line-height:1.15}
 body.game-mode .command-area .move-hint{font-size:11px;line-height:1.2}
 body.game-mode .command-area .move-info small>span{font-size:10px}
 body.game-mode .command-area .move-info small>b{font-size:11px}
 body.game-mode .command-area .move-pp{font-size:16px}
 body.game-mode .command-area .move-pp small{font-size:10px}
 body.game-mode .game-loot .game-window__heading h1{font-size:23px}
 body.game-mode .game-loot .game-window__heading p{font-size:12px}
 body.game-mode .game-loot .game-window__body{padding:15px;gap:13px}
 body.game-mode .game-loot .loot-choice__text strong{font-size:20px}
 body.game-mode .game-loot .loot-choice__text small{font-size:13px;line-height:1.5}
 body.game-mode .game-loot .loot-choice__text b{font-size:11px}
 body.game-mode .game-loot .game-loot-tools{gap:8px;flex-wrap:wrap}
 body.game-mode .game-loot .game-loot-tools .button{font-size:12px;flex:1;padding:10px}
 body.game-mode .roster-console .roster-tabs button{font-size:14px}
 body.game-mode .roster-console__header{padding:0 13px 11px}
 body.game-mode .roster-console__summary{gap:9px;align-items:flex-start}
 body.game-mode .roster-console__summary p{font-size:12px}
 body.game-mode .roster-context{font-size:12px}
 body.game-mode .roster-master{padding:14px}
 body.game-mode .roster-detail__backbar>span{font-size:11px}
 body.game-mode .roster-identity__name h2{font-size:25px}
 body.game-mode .roster-identity .eyebrow{font-size:10px;line-height:1.5}
 body.game-mode .roster-identity__name>span{font-size:13px}
 body.game-mode .roster-identity p{font-size:12px}
 body.game-mode .roster-detail__tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 body.game-mode .roster-console .loadout-grid{grid-template-columns:1fr;gap:10px}
 body.game-mode .roster-console .loadout-card{min-height:160px;padding:14px}
 body.game-mode .roster-console .loadout-card>strong{font-size:19px}
 body.game-mode .roster-console .loadout-card>p{font-size:13px}
 body.game-mode .roster-console .stat-grid.complete-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
 body.game-mode .roster-console .roster-row strong{font-size:20px}
 body.game-mode .roster-console .roster-row{gap:10px}
 body.game-mode .storage-console .roster-row{min-height:145px}
 body.game-mode .storage-pagination>span{font-size:11px}
 body.game-mode .replacement-grid strong{font-size:20px}
 body.game-mode .replacement-grid small{font-size:12px}
 body.game-mode .game-collection .collection-toolbar .segmented button{font-size:12px}
 body.game-mode .game-collection .dex-grid,body.game-mode .game-collection .dex-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body.game-mode .game-collection .dex-card strong{font-size:16px;font-weight:700;line-height:1.3}
 body.game-mode .game-collection .dex-card .dex-number{font-size:11px}
 body.game-mode .game-collection .guide-owned .button{font-size:13px}
 body.game-mode .game-collection .guide-owned .button small{font-size:12px}
}

/* Optional mechanics stay behind plain, comfortably sized disclosures. */
body.game-mode :is(.habitat-future,.habitat-guardian,.preparation-extras){border-top:1px solid #7e9aa6;margin-top:12px;padding-top:5px}
body.game-mode :is(.habitat-future,.habitat-guardian,.preparation-extras)>summary{font:600 14px/1.5 var(--body);min-height:48px;cursor:pointer;display:flex;align-items:center;gap:9px;color:#d9e8ef;padding:9px 0}
body.game-mode .habitat-future__list{display:grid;gap:9px;padding-top:8px}
body.game-mode .habitat-console__preview :is(.habitat-guardian,.preparation-extras){border-color:#a9bcb9;margin:12px 18px 0;padding-bottom:9px}
body.game-mode .habitat-console__preview :is(.habitat-guardian,.preparation-extras)>summary{color:#2f515d;font-size:14px}
body.game-mode .first-expedition-intro{font-size:14px;line-height:1.5}
body.game-mode .first-expedition-steps{display:flex;list-style:none;gap:12px;padding:0 18px;margin:0 0 18px;color:#375762}
body.game-mode .first-expedition-steps li{flex:1;min-width:0;display:flex;gap:8px;align-items:center;font-size:13px;line-height:1.5}
body.game-mode .first-expedition-steps b{flex:none;display:grid;place-items:center;width:26px;height:26px;background:#315b67;color:#fff6e4;border-radius:50%;font-size:12px}
body.game-mode .habitat-console__preview>.habitat-launch{margin:0 18px 16px;width:calc(100% - 36px);min-height:51px;font-size:16px}
body.game-mode .preparation-ready{background:#e8eee1;border:1px solid #a6bbb2;border-radius:7px;margin:12px 18px;padding:12px 14px;font-size:13px;line-height:1.6;color:#33535c}
body.game-mode .preparation-ready strong{font-size:14px;color:#254a53}
body.game-mode .preparation-ready p{font-size:13px;line-height:1.6;color:#405e62}
body.game-mode .preparation-research{padding:12px 0;color:#34545d;font-size:13px;line-height:1.6}
body.game-mode .preparation-research .extra-goal{border-top:1px solid #b3c5bd;padding-top:12px;margin-top:10px;font-size:14px;color:#234a54}
body.game-mode .preparation-research p{font-size:13px;line-height:1.6;color:#415f63}
body.game-mode .preparation-research .button{font-size:13px}
body.game-mode .adventure-advanced>p{font-size:13px;line-height:1.6;color:#cbdde8;margin-bottom:12px}
body.game-mode .pause-menu__group>button small{font-size:12px;line-height:1.4;color:#c5dce5;margin-left:auto;text-align:right;max-width:180px}
body.game-mode .pause-menu__group .pause-menu__resume{background:#ffce78;color:#183743;border-color:#ffe6b2;font-weight:700}
body.game-mode .pause-menu__group:first-child{border-top:0;padding-top:0}
body.game-mode .game-hud--guided .game-menu-button span{display:inline;font-size:12px}
body.game-mode .game-quickbar--guided button{font-size:12px;gap:7px;padding:9px 12px;min-height:44px}
body.game-mode .game-quickbar--guided button span{display:inline}

/* On short phones the dock keeps four moves, never a smaller reading face. */
@media(max-width:700px) and (min-height:501px) and (max-height:700px){
 body.game-mode[data-screen=battle][data-battle-format=singles]{--game-dock-height:218px;--compact-message-height:55px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-plate{padding:5px 7px;width:58%;border-width:2px;border-radius:7px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top{gap:4px;margin-bottom:3px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top strong{font:700 17px/1.1 var(--body);letter-spacing:-.3px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top .level{font-size:10px;line-height:1.2;padding-top:1px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top .level b{font-size:12px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-types{margin-top:2px;gap:3px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-types .type-tag{font-size:9px;line-height:1;padding:2px 4px;border-width:1px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-row{gap:4px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-row>span{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-row small{font-size:12px;line-height:1.2;min-width:52px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-row .health-track{height:7px;border-width:1px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-plate .xp-track{margin:3px 0 0 16px;height:3px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-message{padding:8px 12px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-message p{font:500 16px/1.3 var(--body)}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area{padding:7px 8px;gap:7px;grid-template-rows:minmax(0,1fr) 44px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-grid{gap:7px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-button{padding:5px;gap:2px 3px;grid-template-rows:auto auto auto;align-content:center;border-left-width:3px;min-height:44px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info strong{font:700 14px/1.1 var(--body);letter-spacing:-.2px;overflow-wrap:normal;white-space:normal}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info>small{font-size:11px;line-height:1.15;gap:2px;flex-wrap:nowrap}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info>small>span{font:700 10px/1.15 var(--body);letter-spacing:0}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info>small>b{font:700 11px/1.15 var(--body)}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-hint{font:600 11px/1.15 var(--body);letter-spacing:0;word-spacing:0;margin:0}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-pp{font:700 14px/1.1 var(--body);gap:1px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-pp small{font:500 9px/1.1 var(--body)}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .action-menu button{font:700 12px/1.15 var(--body);min-height:44px;gap:3px;padding:4px 2px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .action-menu b{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-heading .turn-chip{font-size:10px;min-width:42px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-heading .run-info-button{font-size:12px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-field-strip button{font-size:11px;line-height:1.2}
 body.game-mode[data-screen=battle][data-battle-format=singles] .wild-label{font-size:9px;max-width:45%;padding:4px 6px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-bottom>p{font-size:9px;max-width:115px;white-space:normal;padding:4px;line-height:1.4}
 body.game-mode[data-screen=battle][data-battle-format=singles] .capture-card{min-height:69px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .capture-card strong{font-size:17px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .capture-card small{font-size:12px;line-height:1.5}
 body.game-mode[data-screen=battle][data-battle-format=singles] .capture-card>b{font-size:21px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .capture-card>b small{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .capture-readiness>div>span{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .capture-advice{font-size:12px;line-height:1.5}
 body.game-mode[data-screen=battle][data-battle-format=singles] .controls-heading strong{font-size:19px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .controls-heading>div>span{font-size:11px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .controls-heading .text-button{font-size:12px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .switch-card strong{font-size:18px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .switch-card small{font-size:12px;line-height:1.5}
 body.game-mode[data-screen=battle][data-battle-format=singles] .switch-note{font-size:12px;line-height:1.5}
 body.game-mode .camp-sign{top:82px;font-size:18px}
 body.game-mode .camp-companions{top:114px;bottom:359px;min-height:80px}
 body.game-mode .camp-companion .sprite{width:105px;height:105px}
 body.game-mode .camp-companion__name{font-size:16px}
 body.game-mode .camp-companion__name small{font-size:11px}
 body.game-mode .camp-commands:has(.camp-primary){height:216px;grid-template-rows:69px 46px 44px;gap:8px;padding:11px}
 body.game-mode .camp-dialogue:has(+.camp-commands .camp-primary){bottom:calc(216px + var(--game-dock-bottom) + 13px);height:113px;padding:31px 16px 13px}
 body.game-mode .camp-dialogue p{font-size:18px;line-height:1.2}
 body.game-mode .camp-dialogue .dialogue-subtext{font-size:12px;line-height:1.45}
 body.game-mode .camp-primary__text strong{font-size:17px}
 body.game-mode .camp-primary__text small{font-size:12px}
 body.game-mode .camp-commands button{font-size:14px}
 body.game-mode .camp-more>summary{font-size:12px}
 body.game-mode .game-quickbar--guided{top:61px;bottom:auto;right:12px}
 body.game-mode .game-quickbar--guided button{font-size:11px;padding:5px 8px;min-height:44px}
 body.game-mode .starter-screen{padding-top:70px;justify-content:flex-start}
 body.game-mode .starter-screen__heading h1{font-size:25px}
 body.game-mode .starter-screen__heading .eyebrow{font-size:11px}
 body.game-mode .starter-screen .starter-grid{margin:13px 0}
 body.game-mode .starter-screen .starter-art{height:75px}
 body.game-mode .starter-screen .starter-art .sprite{height:80px;width:80px}
 body.game-mode .starter-screen .starter-card{padding:12px 4px 9px}
 body.game-mode .starter-screen .starter-name{font-size:15px;margin-bottom:7px}
 body.game-mode .starter-screen .starter-role{font-size:10px;min-height:28px}
 body.game-mode .starter-screen .starter-confirm{padding:12px;gap:10px}
 body.game-mode .starter-screen .starter-confirm p>span{font-size:12px;line-height:1.4}
 body.game-mode .starter-screen .starter-confirm .button{font-size:14px;min-height:46px}
}

@media(max-height:500px) and (min-width:701px){
 body.game-mode .game-hud__place{padding:7px 9px}
 body.game-mode .game-hud__place strong{font-size:12px}
 body.game-mode .game-hud__place small{font-size:9px}
 body.game-mode .game-hud button{font-size:12px}
 body.game-mode .game-window{top:61px;bottom:12px}
 body.game-mode .game-window__heading{padding:10px 15px;min-height:61px}
 body.game-mode .game-window__heading h1{font-size:22px}
 body.game-mode .game-window__heading p{font-size:12px}
 body.game-mode .game-window__body{padding:15px}
 body.game-mode .game-adventure-menu,body.game-mode .game-route-window,body.game-mode .game-ending{top:50%;bottom:auto;max-height:calc(100dvh - 78px);width:min(900px,calc(100% - 36px))}
 body.game-mode .adventure-options>button{min-height:162px;padding:17px}
 body.game-mode .adventure-options strong{font-size:19px}
 body.game-mode .adventure-options p{font-size:13px;line-height:1.55}
 body.game-mode .adventure-options small{font-size:12px}
 body.game-mode .adventure-options--recommended>button{min-height:130px}
 body.game-mode .camp-sign{top:69px;font-size:18px}
 body.game-mode .camp-companions{top:91px;bottom:181px;min-height:0}
 body.game-mode .camp-companion .sprite{height:96px;width:96px}
 body.game-mode .camp-companion__name{font-size:16px}
 body.game-mode .camp-dialogue{left:12px;bottom:12px;width:calc(49% - 22px);height:164px;padding:37px 17px 15px}
 body.game-mode .camp-dialogue p{font-size:20px;line-height:1.3}
 body.game-mode .camp-dialogue .dialogue-speaker{font-size:11px;top:14px;left:17px}
 body.game-mode .camp-dialogue .dialogue-subtext{font-size:13px;line-height:1.5}
 body.game-mode .camp-commands:has(.camp-primary){right:12px;bottom:12px;width:calc(51% - 22px);height:246px;grid-template-rows:72px 52px 44px;padding:12px;gap:10px}
 body.game-mode .camp-commands .camp-primary{min-height:72px}
 body.game-mode .camp-commands button{font-size:14px}
 body.game-mode .camp-primary__text strong{font-size:17px}
 body.game-mode .camp-primary__text small{font-size:12px}
 body.game-mode .camp-more>summary{font-size:13px}
 body.game-mode .camp-sign{right:53%;text-align:center;left:12px}
 body.game-mode .camp-companions{left:12px;right:53%;top:92px;bottom:180px}
 body.game-mode .game-quickbar--guided{top:10px;left:154px;right:auto;bottom:auto}
 body.game-mode .game-quickbar--guided button{font-size:12px;padding:7px 10px}
 body.game-mode .habitat-console{grid-template-columns:220px minmax(0,1fr);gap:16px}
 body.game-mode .habitat-console__list .habitat-option{min-height:78px;padding:12px;gap:4px 8px}
 body.game-mode .habitat-console__list .habitat-option>strong{font-size:16px}
 body.game-mode .habitat-console__list .habitat-option>small{font-size:12px}
 body.game-mode .habitat-console__landscape{min-height:135px}
 body.game-mode .habitat-console__landscape h2{font-size:23px}
 body.game-mode .habitat-console__preview>p{font-size:13px;padding:13px 15px}
 body.game-mode .habitat-console__guardian>span{font-size:12px}
 body.game-mode .first-expedition-steps{gap:8px;padding:0 15px;font-size:12px}
 body.game-mode .first-expedition-steps li{font-size:12px;gap:5px}
 body.game-mode .game-loot{top:61px;bottom:12px;width:calc(66% - 24px);right:12px}
 body.game-mode .game-loot .game-window__heading h1{font-size:22px}
 body.game-mode .game-loot .game-window__body{padding:14px;gap:12px}
 body.game-mode .game-loot .loot-choice.run-reward{padding:12px;min-height:96px}
 body.game-mode .game-loot .loot-choice__text strong{font-size:18px}
 body.game-mode .game-loot .loot-choice__text small{font-size:13px;line-height:1.5}
 body.game-mode .game-loot .loot-choice__text b{font-size:11px}
 body.game-mode .game-loot .game-loot-tools .button{font-size:12px;min-height:44px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-plate{padding:8px 10px;width:226px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top{margin-bottom:4px;gap:7px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top strong{font-size:18px;line-height:1.1}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top .level{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-top .level b{font-size:12px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .plate-types .type-tag{font-size:9px;padding:2px 4px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-row small{font-size:12px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-row>span{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .health-plate .xp-track{margin-top:4px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-message{padding:16px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-message p{font:500 17px/1.4 var(--body)}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info strong{font:700 14px/1.15 var(--body)}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info>small>span{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info>small>b{font-size:12px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-hint{font:600 12px/1.1 var(--body)}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-pp{font-size:15px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-pp small{font-size:10px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .action-menu button{font:700 12px/1.2 var(--body)}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .action-menu b{font-size:11px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-field-strip button{font-size:11px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-heading .turn-chip{font-size:11px}
 body.game-mode .roster-console .roster-tabs button{font-size:13px}
 body.game-mode .roster-console__run-actions .button{font-size:12px;min-height:44px}
 body.game-mode .roster-console__navigation:has(+.roster-console__run-actions) .roster-tabs button{font-size:12px}
 body.game-mode .roster-console__navigation:has(+.roster-console__run-actions) .roster-tabs{gap:12px}
 body.game-mode .storage-controls{grid-template-columns:1fr}
 body.game-mode .storage-controls :is(input,select){font-size:16px}
 body.game-mode .storage-results{display:block}
 body.game-mode .storage-results>.storage-pagination{display:flex;justify-content:space-between}
 body.game-mode .storage-results>.storage-pagination>span{display:block;font-size:11px}
 body.game-mode .storage-results>.storage-pagination .text-button{font-size:12px;min-width:68px;width:auto}
 body.game-mode .storage-results>.storage-pagination .text-button:before{display:none}
 body.game-mode .storage-result-heading h2{font-size:19px}
 body.game-mode .pause-menu__group>button{min-height:46px}
 body.game-mode .pause-menu__group h3{font-size:12px}
 body.game-mode .pause-controls{font-size:11px}
 body.game-mode .starter-screen{padding:62px 20px 18px;overflow:auto;justify-content:flex-start}
 body.game-mode .starter-screen__heading h1{font-size:26px}
 body.game-mode .starter-screen__heading .eyebrow{font-size:11px}
 body.game-mode .starter-screen .starter-card{padding:12px 8px}
 body.game-mode .starter-screen .starter-art{height:80px}
 body.game-mode .starter-screen .starter-name{font-size:18px}
 body.game-mode .starter-screen .starter-role{font-size:12px}
 body.game-mode .starter-screen .starter-type .type-tag{font-size:10px}
 body.game-mode .starter-screen .starter-confirm p{font-size:19px}
 body.game-mode .starter-screen .starter-confirm p>span{font-size:13px}
 body.game-mode .starter-screen .starter-confirm .button{font-size:14px;min-height:46px}
}
@media(max-width:360px){
 body.game-mode .game-hud__place{max-width:107px;padding:8px 6px}
 body.game-mode .game-hud__emblem{display:none}
 body.game-mode .game-hud__place strong{font-size:11px;white-space:normal;max-width:none;overflow:visible}
 body.game-mode .game-hud__place small{font-size:9px;letter-spacing:0}
 body.game-mode .game-hud--guided .game-hud__place{max-width:117px}
 body.game-mode .game-hud--guided .game-hud__place strong{font-size:12px}
 body.game-mode .game-hud__tools{gap:4px}
 body.game-mode .game-hud button{padding:5px;min-width:44px}
 body.game-mode .game-hud--guided .game-menu-button span{display:none}
 body.game-mode .first-expedition-steps{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:14px}
 body.game-mode .starter-screen .starter-grid{gap:6px}
 body.game-mode .starter-screen .starter-type .type-tag{font-size:9px}
 body.game-mode .starter-screen .starter-name{font-size:14px}
 body.game-mode .roster-console .roster-tabs button{font-size:13px;gap:6px}
 body.game-mode .roster-tabs{gap:14px}
 body.game-mode .roster-tabs button span{font-size:11px}
 body.game-mode .roster-console .roster-row{padding:12px 9px;gap:9px}
 body.game-mode .roster-console .roster-row>.sprite{width:45px;flex-basis:45px}
 body.game-mode .roster-console .roster-row strong{font-size:19px}
 body.game-mode .roster-console__summary p{font-size:12px}
 body.game-mode .roster-context{font-size:11px}
 body.game-mode .storage-pagination .text-button{font-size:12px;min-width:70px}
 body.game-mode .storage-pagination>span{font-size:10px}
}

/* Beat older screen-specific overrides as well as their shared defaults. */
body.game-mode .camp-primary__text strong{color:#173540}
body.game-mode[data-screen=camp] .game-quickbar{display:none}
body.game-mode .game-adventure-menu .adventure-options{gap:14px}
body.game-mode .game-adventure-menu .adventure-options--recommended{grid-template-columns:minmax(0,1fr)}
body.game-mode .game-adventure-menu .adventure-options strong{font:700 21px/1.25 var(--body)}
body.game-mode .game-adventure-menu .adventure-options p{font:400 14px/1.6 var(--body)}
body.game-mode .game-adventure-menu .adventure-options small{font:600 12px/1.5 var(--body);color:#425b61}
body.game-mode .game-adventure-menu .adventure-options>button{border-radius:9px;min-height:165px;padding:20px}
body.game-mode .game-adventure-menu .adventure-options--recommended>button{min-height:155px}
body.game-mode .game-adventure-menu .adventure-options>button>span{margin-bottom:10px}
@media(max-width:700px){
 body.game-mode .game-adventure-menu .adventure-options strong{font-size:20px}
 body.game-mode .game-adventure-menu .adventure-options p{font-size:14px}
 body.game-mode .game-adventure-menu .adventure-options small{font-size:12px}
 body.game-mode .game-adventure-menu .adventure-options>button{padding:18px;min-height:180px}
 body.game-mode .game-adventure-menu .adventure-options--recommended>button{min-height:165px}
 body.game-mode .game-hud__place{max-width:150px}
}
@media(max-height:500px) and (min-width:701px){
 body.game-mode .camp-sign{transform:none}
 body.game-mode .game-adventure-menu .adventure-options strong{font-size:20px}
 body.game-mode .game-adventure-menu .adventure-options p{font-size:14px}
 body.game-mode .game-adventure-menu .adventure-options small{font-size:12px}
 body.game-mode .game-adventure-menu .adventure-options>button{padding:18px;min-height:160px}
}
body.game-mode .habitat-console__preview>.first-expedition-intro{background:#fff9e9;color:#365663}
@media(max-width:700px){
 body.game-mode .habitat-console--guided .habitat-console__preview{order:1}
 body.game-mode .habitat-console--guided .habitat-console__list{order:2}
 body.game-mode .habitat-console--guided .habitat-console__landscape{min-height:150px;padding:14px}
 body.game-mode .habitat-console--guided .habitat-console__landscape .sprite{width:72px;height:78px}
 body.game-mode .habitat-console--guided .habitat-console__landscape h2{font-size:24px;line-height:1.2;margin-top:3px}
 body.game-mode .habitat-console__preview>.first-expedition-intro{padding:13px 16px;font-size:13px;line-height:1.5}
 body.game-mode .habitat-console--guided .first-expedition-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0 16px;margin:0 0 14px;gap:8px}
 body.game-mode .habitat-console--guided .first-expedition-steps li{display:block;font-size:12px;line-height:1.35}
 body.game-mode .habitat-console--guided .first-expedition-steps b{width:23px;height:23px;margin-bottom:6px}
 body.game-mode .habitat-console--guided .habitat-launch{margin:0 16px 15px;width:calc(100% - 32px);min-height:49px;font-size:15px}
}
@media(max-width:700px) and (min-height:501px) and (max-height:700px){
 body.game-mode[data-screen=battle][data-battle-format=singles] .wild-label,
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-bottom{display:none}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-info>small>b{font-size:12px;line-height:1.15}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-hint{font-size:12px;line-height:1.15}
 body.game-mode .habitat-console--guided .habitat-console__landscape{min-height:105px;padding:10px 12px}
 body.game-mode .habitat-console--guided .habitat-console__landscape .sprite{width:50px;height:54px}
 body.game-mode .habitat-console--guided .habitat-console__landscape h2{font-size:20px;line-height:1.2;margin-top:2px}
 body.game-mode .habitat-console--guided .first-expedition-intro{padding:11px 13px;font-size:13px;line-height:1.5}
 body.game-mode .habitat-console--guided .first-expedition-steps{padding:0 13px;gap:7px;margin-bottom:12px}
 body.game-mode .habitat-console--guided .first-expedition-steps li{font-size:12px}
 body.game-mode .habitat-console--guided .first-expedition-steps b{width:21px;height:21px;font-size:11px;margin-bottom:4px}
 body.game-mode .habitat-console--guided .habitat-launch{min-height:48px;margin:0 13px 13px;width:calc(100% - 26px);font-size:15px}
}
@media(max-width:700px) and (min-height:501px) and (max-height:600px){
 body.game-mode .camp-sign{display:none}
 body.game-mode .camp-companions{transform:translateY(-22px)}
}
/* This landscape window is edge-pinned; the old centered transform must reset. */
@media(max-height:500px) and (min-width:701px){
 body.game-mode .game-loot{transform:none}
}

/* R3: the compact wave control also says where the player is. */
body.game-mode .run-info-button .run-place-label{display:none}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 body.game-mode[data-screen=battle][data-battle-format=singles] .battle-heading .run-info-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:105px;min-width:105px;max-width:105px;height:44px;min-height:44px;padding:4px 5px;font-size:12px;line-height:1.2}
 body.game-mode[data-screen=battle][data-battle-format=singles] .run-info-button .run-place-label{display:block;font:600 12px/1.2 var(--body);letter-spacing:-.2px;white-space:nowrap}
 body.game-mode[data-screen=battle][data-battle-format=singles] .run-info-button .run-wave-label{display:block;font:600 12px/1.2 var(--body);white-space:nowrap}
 body.game-mode[data-screen=battle][data-battle-format=singles] .run-info-button .icon{display:none}
}
@media(max-width:700px) and (min-height:501px) and (max-height:700px){
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-button{column-gap:6px}
 body.game-mode[data-screen=battle][data-battle-format=singles] .command-area .move-uses{display:none}
}
@media(max-width:700px){
 body.game-mode .game-hud .game-menu-button{min-width:64px;padding:6px 9px;gap:5px}
 body.game-mode .game-hud .game-menu-button span{display:inline;font-size:12px;line-height:1.2}
 body.game-mode .game-hud__place{max-width:130px}
}
@media(max-width:360px){
 body.game-mode .game-hud [data-action=fullscreen]{display:none}
 body.game-mode .game-hud .game-menu-button .icon{display:none}
 body.game-mode .game-hud .game-menu-button{min-width:64px}
 body.game-mode .game-hud__place{max-width:114px}
}

/* Classic preparation needs the same reading sizes as the opening. */
body.game-mode .classic-phone-nav{display:none}
body.game-mode .game-classic :is(.starter-console__detail,.starter-console__party){background:#203e4b;border:1px solid #829eaa;border-radius:8px;padding:14px;gap:12px}
body.game-mode .game-classic .starter-console__detail>*{flex-shrink:0}
body.game-mode .game-classic :is(.console-dex,.console-stats-label,.console-guest,.console-budget>span){font-size:12px;line-height:1.5;letter-spacing:.3px;color:#e0eaf0}
body.game-mode .game-classic .console-guest{color:#ffe0a0}
body.game-mode .game-classic .starter-console__detail h2{font-size:25px;color:#fff6df}
body.game-mode .game-classic .starter-console__detail :is(p,small){font-size:12px;line-height:1.5;color:#d6e4ec}
body.game-mode .game-classic .console-stats{gap:7px}
body.game-mode .game-classic .console-stats>span{padding:8px;background:#142f3c;border-color:#7895a2}
body.game-mode .game-classic .console-stats small{font-size:11px;line-height:1.4;color:#d6e4ec}
body.game-mode .game-classic .console-stats b{font-size:16px;color:#fff5de}
body.game-mode .game-classic .console-stats i{font-size:12px;line-height:1.4;color:#c8dce8}
body.game-mode .game-classic .console-traits{margin-top:0;gap:10px}
body.game-mode .game-classic .console-traits label{font-size:13px;line-height:1.5;color:#e1ebf1}
body.game-mode .game-classic .console-traits select{appearance:none;box-sizing:border-box;font-size:16px;height:44px;min-height:44px;background:#142f3c;color:#fff8e8;border-color:#8ca6b2;padding:8px}
body.game-mode .game-classic .console-traits select{padding-right:30px;background-image:linear-gradient(45deg,transparent 50%,#fff8e8 50%),linear-gradient(135deg,#fff8e8 50%,transparent 50%);background-position:right 15px center,right 10px center;background-size:5px 5px;background-repeat:no-repeat}
body.game-mode .game-classic .starter-console__detail>.button{position:static;margin-top:0;box-shadow:none;background:#294d5b;border-color:#8ca6b2;color:#fff7e6;font-size:14px;min-height:48px}
body.game-mode .game-classic .console-grid-heading{flex-wrap:wrap;gap:6px}
body.game-mode .game-classic .console-grid-heading :is(strong,span){font-size:12px;line-height:1.5;color:#dce8ef;letter-spacing:.2px}
body.game-mode .game-classic .console-grid-note{font-size:12px!important;line-height:1.5;color:#d1e1eb}
body.game-mode .game-classic .console-species{aspect-ratio:auto;min-height:98px;padding:24px 3px 8px;gap:5px;background:#244653;border-color:#7f9ba5;border-radius:5px}
body.game-mode .game-classic .console-species .sprite{width:44px;height:44px;flex-shrink:0}
body.game-mode .game-classic .console-species.chosen{background:#345d63;border-color:#ffcf7a}
body.game-mode .game-classic .console-species.focused{box-shadow:0 0 0 2px #ffcf7a}
body.game-mode .game-classic .console-species>span{font-size:13px;color:#fff8e7}
body.game-mode .game-classic .console-species>b{font-size:12px;line-height:1.2;background:#142f3c;color:#ffe0a0;border-color:#8ca6b2;padding:2px 4px}
body.game-mode .game-classic .console-species.guest:after{font-size:11px;color:#ffe0a0}
body.game-mode .game-classic .console-party{flex:0 0 auto;overflow:visible;gap:8px}
body.game-mode .game-classic .console-party-slot{flex-shrink:0;min-height:54px;padding:7px;background:#142f3c;border-color:#8ca6b2;border-radius:5px}
body.game-mode .game-classic .console-party-slot strong{font-size:17px;line-height:1.3;color:#fff8e7}
body.game-mode .game-classic .console-party-slot small{font-size:12px;line-height:1.4;color:#d1e1eb}
body.game-mode .game-classic .console-party-slot .guest-label{color:#ffe0a0}
body.game-mode .game-classic .console-party-slot:not(.filled){display:flex;min-height:38px;opacity:1;background:transparent;color:#c1d5e2}
body.game-mode .game-classic .console-party-slot:not(.filled)>span{flex:0 0 24px;font-size:16px;color:#c1d5e2}
body.game-mode .game-classic .console-party-slot:not(.filled)>small{font-size:11px;color:#c1d5e2}
body.game-mode .game-classic .console-budget{margin:0;padding-bottom:10px;border-color:#7895a2}
body.game-mode .game-classic .console-budget strong{font-size:30px;color:#ffe0a0}
body.game-mode .game-classic .console-budget strong small{font-size:17px;color:#d1e1eb}
body.game-mode .game-classic .console-launch{margin-top:0;font-size:16px;line-height:1.4;min-height:48px;padding:10px}
body.game-mode .game-classic .console-party-note{font-size:13px;line-height:1.5;color:#d6e4ec}
@media(max-width:700px) and (min-height:501px){
 body.game-mode .game-classic .classic-phone-nav{display:grid;gap:10px;position:sticky;top:0;z-index:5;margin:0 0 14px;padding:10px 0;background:#142c39;border-bottom:1px solid #829eaa}
 body.game-mode .game-classic .classic-phone-summary{display:grid;gap:4px;font-size:13px;line-height:1.4;color:#d6e4ec}
 body.game-mode .game-classic .classic-phone-summary strong{color:#ffe0a0;font-size:14px}
 body.game-mode .game-classic .classic-phone-nav nav{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:7px}
 body.game-mode .game-classic .classic-phone-nav button{min-height:44px;padding:8px 4px;font-size:13px;line-height:1.3;border:1px solid #8ca6b2;border-radius:6px;background:#244653;color:#fff8e7}
 body.game-mode .game-classic .classic-phone-nav button[aria-pressed=true]{background:#ffce78;color:#182e36;border-color:#ffe4ab;font-weight:700}
 body.game-mode .game-classic .starter-console{display:flex;flex-direction:column;height:auto;gap:16px}
 body.game-mode .game-classic .starter-console[data-classic-section=starters]>:not(.starter-console__grid),body.game-mode .game-classic .starter-console[data-classic-section=profile]>:not(.starter-console__detail),body.game-mode .game-classic .starter-console[data-classic-section=team]>:not(.starter-console__party){display:none}
 body.game-mode .game-classic :is(.starter-console__detail,.starter-console__party){max-height:none;overflow:visible}
 body.game-mode .game-classic .starter-console__detail{display:grid;grid-template-columns:1fr 1fr;align-items:start}
 body.game-mode .game-classic .starter-console__detail>*{grid-column:1/-1}
 body.game-mode .game-classic .console-portrait{min-height:64px}
 body.game-mode .game-classic .console-portrait .sprite{width:64px;height:64px}
 body.game-mode .game-classic .console-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
 body.game-mode .game-classic .starter-console__grid{overflow:visible;max-height:none;display:flex;flex-direction:column}
 body.game-mode .game-classic .console-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:260px;flex:none}
 body.game-mode .game-classic .console-party-slot:not(.filled){display:flex}
}
@media(max-height:500px){
 body.game-mode .game-classic .starter-console{grid-template-columns:minmax(190px,1fr) minmax(220px,1.4fr) minmax(190px,1fr)}
 body.game-mode .game-classic .console-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 body.game-mode .game-classic :is(.starter-console__detail,.starter-console__party){max-height:none;min-height:0}
}
@media(max-width:360px) and (min-height:501px){
 body.game-mode .game-classic .console-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Earned mastery keeps its cost, scope and destination beside the decision. */
body.game-mode .game-research .research-console{color:#203f49}
body.game-mode .game-research .research-console :is(h2,h3){font-family:var(--body);line-height:1.3;color:#203f49}
body.game-mode .game-research .research-console :is(p,label){font-size:14px;line-height:1.6;color:#34535b}
body.game-mode .game-research .research-console select{appearance:none;box-sizing:border-box;height:46px;min-height:46px;font:600 16px/1.4 var(--body);color:#203f49;background:#fff9e9;border-color:#819d94;padding:8px 12px}
body.game-mode .game-research .mastery-option{align-items:stretch;background:#fff9e9;border-color:#94aaa0;border-radius:6px;padding:14px;gap:8px}
body.game-mode .game-research .mastery-option>strong{font:700 22px/1.3 var(--body);color:#203f49}
body.game-mode .game-research .mastery-option>small{font:600 12px/1.5 var(--body);color:#34535b}
body.game-mode .game-research .mastery-option p{margin:0}
body.game-mode .game-research .mastery-option .mastery-scope{font-size:12px;line-height:1.5}
body.game-mode .game-research .mastery-option .mastery-cost{font-weight:700}
body.game-mode .game-research .research-console .button{min-height:46px;white-space:normal;font:700 14px/1.4 var(--body)}
body.game-mode .game-research .mastery-next{margin-top:16px;width:100%}
body.game-mode .game-research .research-section-nav>a{min-height:44px;font-size:12px}
body.game-mode .game-classic .console-loadout{display:flex;flex-direction:column;gap:10px;min-width:0;border-top:1px solid #829eaa;padding-top:14px}
body.game-mode .game-classic .console-loadout>strong{font:700 16px/1.4 var(--body);color:#fff8e7}
body.game-mode .game-classic .console-loadout p{margin:0;font-size:14px;line-height:1.5}
body.game-mode .game-classic .console-loadout small{font-size:12px;line-height:1.5}
body.game-mode .game-classic .console-loadout button{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-height:48px;width:100%;padding:10px;text-align:left;background:#142f3c;border:1px solid #8ca6b2;border-radius:5px;color:#fff8e7;font:700 14px/1.4 var(--body);white-space:normal}
body.game-mode .game-classic .console-loadout button[aria-pressed=true]{background:#345d63;border-color:#ffcf7a}

/* Research decisions keep progress and irreversible hunt costs readable. */
body.game-mode .game-research .research-contract{align-items:stretch;border-radius:6px;background:#fff9e9;border-color:#94aaa0;gap:8px}
body.game-mode .game-research .research-contract.ready{background:#fff0bc;border-color:#977124}
body.game-mode .game-research .research-contract>small{font:600 14px/1.6 var(--body);color:#34535b;margin:0 0 6px}
body.game-mode .game-research .research-contract h3{font-size:20px}
body.game-mode .game-research .research-contract p{margin:0}
body.game-mode .game-research .research-console h2 small{font:600 14px/1.5 var(--body);color:#34535b;display:inline-block}
body.game-mode .game-research .hunt-decision{display:flex;flex-direction:column;gap:12px;padding:14px;background:#fff9e9;border:1px solid #94aaa0;border-radius:6px;min-width:0}
body.game-mode .game-research .hunt-decision h3{font-size:20px;margin:0}
body.game-mode .game-research .hunt-decision p{margin:0}
body.game-mode .game-research .hunt-decision .hunt-cost{font-weight:700}
/* Between-wave care keeps the selected companion, stock and quota together. */
body.game-mode .expedition-care{color:#fff4dc}
body.game-mode .expedition-care .care-picker{grid-template-columns:repeat(3,minmax(0,1fr))}
body.game-mode .expedition-care .care-picker>button{min-width:0;min-height:100px;padding:9px 5px}
body.game-mode .expedition-care .care-picker strong{font:700 16px/1.3 var(--body);overflow-wrap:anywhere}
body.game-mode .expedition-care .care-picker small,body.game-mode .expedition-care .care-status>span{font:500 14px/1.5 var(--body);color:#e1ecdc}
body.game-mode .expedition-care .care-status{flex-wrap:wrap;gap:6px 12px}
body.game-mode .expedition-care .care-action strong{font:700 16px/1.4 var(--body);color:#fff4dc}
body.game-mode .expedition-care .care-action small{font:500 14px/1.5 var(--body);color:#e1ecdc;background:none;border:0;border-radius:0;padding:0;margin:0;letter-spacing:0;white-space:normal}
body.game-mode .expedition-care .care-action:disabled{opacity:1;background:#263e49;border-color:#81969d}
body.game-mode .expedition-care .care-reason,body.game-mode .expedition-care .supply-fine,body.game-mode .expedition-care .notice{font:500 14px/1.5 var(--body);color:#e1ecdc}
body.game-mode .expedition-care .care-moves{border-color:#81969d}
body.game-mode .expedition-care .care-moves-heading,body.game-mode .expedition-care .care-move{font:500 14px/1.5 var(--body);color:#e1ecdc;flex-wrap:wrap;gap:4px 12px}
body.game-mode .expedition-care .care-move>span{font-variant-numeric:tabular-nums}
@media(max-width:500px){body.game-mode .expedition-care .care-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Chronicle decisions keep their consequences beside readable native actions. */
body.game-mode .game-journey .journey-encounter .encounter-intro h2{font:700 26px/1.2 var(--body);letter-spacing:0;overflow-wrap:break-word}
body.game-mode .game-journey .journey-encounter .adventure-eyebrow{font:700 11px/1.4 var(--body);letter-spacing:.5px;color:#365661}
body.game-mode .game-journey .journey-story-details{margin-top:8px;clear:both}
body.game-mode .game-journey .journey-story-details summary{font:650 14px/1.4 var(--body);color:#254957;cursor:pointer;min-height:44px;align-content:center}
body.game-mode .game-journey .journey-story-details p{font:500 14px/1.5 var(--body);color:#284b55;margin:8px 0}
body.game-mode .game-journey .journey-story-details small{display:block;font:500 14px/1.5 var(--body);color:#365661;border-top:1px solid #8da29a;padding-top:8px}
body.game-mode .game-journey .encounter-choice{min-height:44px;padding:12px;gap:10px;grid-template-columns:22px minmax(0,1fr) 10px}
body.game-mode .game-journey .encounter-choice__body>strong{font:700 18px/1.25 var(--body);color:#173e4c}
body.game-mode .game-journey .encounter-choice__body>span{font:500 14px/1.5 var(--body);color:#284b55}
body.game-mode .game-journey .encounter-choice__cost{font:700 14px/1.4 var(--body);color:#58400e;letter-spacing:0}
body.game-mode .game-journey .encounter-choice__reason{font:650 14px/1.5 var(--body);color:#77352c}
body.game-mode .game-journey .encounter-choice:disabled{opacity:1;background:#e1e7df;border-color:#899d97}
@media(max-width:650px){
 body.game-mode .game-journey .encounter-story{display:flow-root}
 body.game-mode .game-journey .encounter-illustration{float:right;width:64px;height:72px;margin:0 0 8px 12px}
 body.game-mode .game-journey .encounter-illustration .encounter-creature{width:64px;height:64px;bottom:3px}
 body.game-mode .game-journey .encounter-intro{padding:0}
 body.game-mode .game-journey .journey-encounter .encounter-intro h2{font-size:22px;margin-top:6px}
 body.game-mode .game-journey .encounter-choices{gap:12px;clear:both}
}
@media(min-width:651px) and (max-height:500px){
 body.game-mode .game-journey .encounter-story{grid-template-columns:64px minmax(0,1fr);gap:12px}
 body.game-mode .game-journey .encounter-illustration{height:76px}
 body.game-mode .game-journey .encounter-illustration .encounter-creature{width:70px;height:70px}
 body.game-mode .game-journey .journey-encounter .encounter-intro h2{font-size:22px}
}

/* Recovery drafts describe stock and restrictions at the point of commitment. */
body.game-mode .game-loot .run-reward--recovery .loot-choice__text small,
body.game-mode .game-loot .run-reward--recovery .loot-choice__text b{font-size:14px;line-height:1.45;color:#294b50;text-transform:none}


/* Daily commitment and local records remain readable at phone sizes. */
body.game-mode .game-daily .daily-banner{padding:12px 38px 12px 14px}
body.game-mode .game-daily .daily-banner .adventure-eyebrow{font:700 14px/1.4 var(--body);letter-spacing:0;color:#edf4db}
body.game-mode .game-daily .daily-banner>strong{font:600 28px/1.05 var(--pixel);margin-top:5px;color:#fff3cf}
body.game-mode .game-daily .daily-emblem{right:10px;top:14px;font-size:22px}
body.game-mode .game-daily .daily-founders{padding:12px 0;gap:6px}
body.game-mode .game-daily .daily-founders .sprite{width:64px;height:64px}
body.game-mode .game-daily .daily-founders strong{font-size:22px;line-height:1.15;margin:3px 0 5px}
body.game-mode .game-daily .daily-founders small{font:600 14px/1.4 var(--body);gap:4px}
body.game-mode .game-daily .daily-founders .type-tag{font-size:11px;line-height:1.2}
body.game-mode .game-daily .daily-console p,
body.game-mode .game-daily .daily-reward>span,
body.game-mode .game-daily .daily-reward>strong{font:500 14px/1.45 var(--body);color:#294b42}
body.game-mode .game-daily .daily-console .daily-summary{margin:12px 0}
body.game-mode .game-daily .daily-console .daily-reward{margin:12px 0;padding:11px;gap:4px}
body.game-mode .game-daily .daily-reward>strong{font-weight:800;color:#514020;letter-spacing:0}
body.game-mode .game-daily .daily-launch{min-height:46px;font:800 14px/1.4 var(--body);white-space:normal}
body.game-mode .game-daily .daily-more-rules{margin-top:12px;border-top:1px solid #a8b9a3}
body.game-mode .game-daily .daily-more-rules summary{padding:12px 0;min-height:46px;font:700 14px/1.4 var(--body);color:#284b44;cursor:pointer}
body.game-mode .game-daily .daily-record-labels,
body.game-mode .game-daily .daily-record-row>span>strong,
body.game-mode .game-daily .daily-record-row>span>small,
body.game-mode .game-daily .daily-record-row>b>small{font:600 14px/1.4 var(--body);color:#294b42;text-transform:none}
body.game-mode .game-daily .daily-record-row{grid-template-columns:minmax(0,1fr) 64px 64px;gap:6px}
body.game-mode .game-daily .daily-record-labels{align-items:start}
body.game-mode .game-daily .daily-records h2{font:600 27px/1.1 var(--pixel);color:#294b42}
body.game-mode .game-daily .adventure-empty{padding:18px 12px;gap:8px}
body.game-mode .game-daily .adventure-empty>strong{font:700 18px/1.3 var(--body);color:#294b42}
@media(max-width:650px){
 body.game-mode .game-daily .daily-banner>strong{font-size:26px}
 body.game-mode .game-daily .daily-founders .sprite{width:48px;height:48px}
 body.game-mode .game-daily .daily-founders strong{font-size:20px}
}

/* Sector exits keep recovery facts and the next fight ahead of old discoveries. */
body.game-mode .game-biome-window .sector-recovery{color:#edf3f5;font:400 14px/1.5 var(--body)}
body.game-mode .game-biome-window .sector-recovery p{margin:0 0 10px}
body.game-mode .game-biome-window .sector-recovery strong{color:#fff5d7;font-weight:700}
body.game-mode .game-biome-window .sector-recovery .game-loot-tools{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
body.game-mode .game-biome-window .sector-recovery .button{min-height:44px;font:700 12px/1.4 var(--body);padding:9px 11px}
body.game-mode .game-biome-window .game-route-choices>button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;min-height:105px;padding:14px;text-align:left}
body.game-mode .game-biome-window .game-route-choices .route-preview{display:none}
body.game-mode .game-biome-window .game-route-choices>button>strong{grid-column:1/-1}
body.game-mode .game-biome-window .game-route-choices>button>small{grid-column:1/-1;margin:0;font:400 14px/1.5 var(--body);color:#365560}
body.game-mode .game-biome-window .game-route-choices>button>b{grid-column:1/-1;position:static;font:700 14px/1.5 var(--body);color:#28534e}

body.game-mode .game-biome-window .sector-recovery .game-loot-tools{flex-wrap:nowrap}
body.game-mode .game-biome-window .sector-recovery .button{min-width:0;white-space:normal}

@media(min-width:701px) and (max-height:500px){
 body.game-mode .game-biome-window .game-window__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:start;align-items:start;gap:14px 16px}
 body.game-mode .game-biome-window .sector-recovery{grid-column:1;grid-row:1;min-width:0}
 body.game-mode .game-biome-window .game-route-choices{grid-column:2;grid-row:1;margin:0;min-width:0}
 body.game-mode .game-biome-window .earned-notices{grid-column:1/-1}
}

/* Trial commitment keeps the selected party and finite recovery readable. */
body.game-mode .game-activities .game-window__body{background:#fff9e9}
body.game-mode .activity-console{color:#162d38}
body.game-mode .activity-console .depth-intro{font:400 14px/1.5 var(--body);color:#344c57;margin:0 0 12px}
body.game-mode .activity-preparation{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
body.game-mode .activity-card{background:#edf0e5;border-color:#859d91;gap:10px;padding:15px}
body.game-mode .activity-card.locked{background:#e5e8e1}
body.game-mode .activity-card h2{font:700 25px/1.2 var(--body);color:#162d38}
body.game-mode .activity-card .depth-eyebrow{font:700 11px/1.4 var(--body);letter-spacing:.4px;color:#435a65}
body.game-mode .activity-card p,body.game-mode .activity-card>small{font:400 14px/1.5 var(--body);color:#344c57;margin:0;overflow-wrap:anywhere}
body.game-mode .activity-card .activity-entry-party{padding:10px;border-left:3px solid #52796f;background:#fff9e9;width:100%;box-sizing:border-box;color:#162d38}
body.game-mode .activity-card .activity-first-foe{font-weight:700;color:#162d38}
body.game-mode .activity-roster{width:100%;min-width:0}
body.game-mode .activity-roster summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font:700 14px/1.4 var(--body);color:#234e60;text-decoration:underline;list-style:none}
body.game-mode .activity-roster summary:before{content:'▸';margin-right:8px}
body.game-mode .activity-roster[open] summary:before{content:'▾'}
body.game-mode .activity-roster ol{padding:0;margin:6px 0;list-style:none;display:grid;gap:8px}
body.game-mode .activity-roster li{display:flex;align-items:center;gap:9px;font:700 16px/1.4 var(--body);color:#162d38;min-width:0}
body.game-mode .activity-roster li>span{min-width:0;overflow-wrap:anywhere}
body.game-mode .activity-roster .sprite{width:44px;height:44px;object-fit:contain;image-rendering:pixelated;flex:0 0 44px}
body.game-mode .activity-roster small{display:block;font:400 14px/1.4 var(--body);color:#344c57}
body.game-mode .activity-card .button{font:800 14px/1.4 var(--body);min-height:46px;margin-top:0}
body.game-mode .activity-card .activity-prepare,body.game-mode .activity-return{font:600 14px/1.4 var(--body);min-height:44px;color:#234e60;text-decoration:underline;white-space:normal}
body.game-mode .activity-return{display:block;margin-top:18px}
body.game-mode .activity-card .activity-requirement{color:#68451f}
@media(max-width:600px){body.game-mode .activity-preparation{display:grid;grid-template-columns:1fr}body.game-mode .activity-card{gap:9px;padding:12px}}

/* Compact habitat preparation keeps the chosen destination and departure together. */
body.game-mode .habitat-phone-nav{display:none}
@media(max-width:700px){
 body.game-mode .game-habitat .habitat-console--established{display:flex;flex-direction:column;gap:12px;height:auto}
 body.game-mode .game-habitat .habitat-phone-nav{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;position:sticky;top:0;z-index:5;padding:0 0 10px;background:#142c39;border-bottom:1px solid #829eaa}
 body.game-mode .game-habitat .habitat-phone-nav button{min-height:48px;padding:8px;font:600 14px/1.35 var(--body);border:1px solid #8ca6b2;border-radius:6px;background:#244653;color:#fff8e7}
 body.game-mode .game-habitat .habitat-phone-nav button[aria-pressed=true]{background:#ffce78;color:#182e36;border-color:#ffe4ab}
 body.game-mode .game-habitat .habitat-console--established[data-habitat-section=destinations]>.habitat-console__preview,
 body.game-mode .game-habitat .habitat-console--established[data-habitat-section=review]>.habitat-console__list{display:none}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__list{display:grid;grid-template-columns:1fr;overflow:visible}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__preview{overflow:hidden;max-height:none}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__landscape{min-height:120px;padding:12px}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__landscape .sprite{width:60px;height:60px}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__landscape h2{font-size:24px;line-height:1.2;margin-top:3px}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__preview>p{padding:12px 14px;font-size:14px;line-height:1.5}
}
@media(max-width:700px) and (max-height:500px){
 body.game-mode .game-habitat .habitat-console--established .habitat-console__landscape{min-height:82px;padding:8px 12px}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__landscape .sprite{width:38px;height:38px}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__landscape h2{font-size:21px}
 body.game-mode .game-habitat .habitat-console--established .habitat-console__preview>p{padding:0;font-size:14px}
}
