.title-screen .title-actions #titlePlaytests{justify-content:start;text-align:left;gap:2px;padding:10px 20px;font-size:12px;min-height:56px;letter-spacing:.04em;border-color:#597d7a}
.title-screen #titlePlaytests small{font-size:10px;font-weight:400;letter-spacing:0;color:#a4bac7}
.title-screen #titlePlaytests:hover{border-color:#dfc595}
.main-menu-open .frame{overflow:hidden}
/* Insets are shared by Ops, battle and full-screen menus. */
:root{--game-safe-top:env(safe-area-inset-top,0px);--game-safe-right:env(safe-area-inset-right,0px);--game-safe-bottom:env(safe-area-inset-bottom,0px);--game-safe-left:env(safe-area-inset-left,0px)}
@media(display-mode:standalone){:root{--game-safe-top:max(24px,env(safe-area-inset-top,0px))}}
/* Shared front end for title, pause and settings screens. */
.game-menu{--menu-ink:#e7eef0;--menu-muted:#9bb1be;--menu-line:#2a4352;--menu-gold:#e9bb6a;color:var(--menu-ink);background:linear-gradient(135deg,#10212d,#09151e 65%);border:1px solid #3a5767;border-radius:18px;padding:30px;width:min(740px,calc(100vw - 32px));max-height:calc(100dvh - 40px);box-sizing:border-box;overflow:auto;box-shadow:0 28px 100px #0009;font:15px/1.55 Inter,system-ui,sans-serif}
.game-menu::backdrop{background:#02080dd9;backdrop-filter:blur(10px)}
.game-menu.menu-wide{width:min(920px,calc(100vw - 32px))}.menu-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.menu-heading h2{font:400 34px/1.15 Georgia,serif;margin:8px 0 0;letter-spacing:-.025em}.menu-kicker{font-size:10px;font-weight:700;letter-spacing:.15em;color:#8dceb8;display:block}.game-menu h3{font-size:17px;margin:0 0 12px}.game-menu p{margin:0 0 16px}.menu-copy{font-size:16px;color:#b8c9d2;max-width:66ch}.game-menu button,.game-menu select{font:600 12px/1.4 Inter,system-ui,sans-serif;color:var(--menu-ink);background:#132b3a;border:1px solid #38586b;border-radius:7px;min-height:46px;padding:12px 16px;cursor:pointer}.game-menu button:hover{background:#1c3a4a;border-color:#658697}.game-menu button:focus-visible,.game-menu input:focus-visible,.game-menu select:focus-visible,.title-screen button:focus-visible,.title-screen a:focus-visible{outline:3px solid #f0ce92;outline-offset:4px}.game-menu button:disabled,.game-menu select:disabled{opacity:.5;cursor:default}.game-menu .menu-primary{background:var(--menu-gold);border-color:var(--menu-gold);color:#261e11;font-weight:800}.game-menu .menu-primary:hover{background:#f6ce8c}.game-menu .menu-danger{color:#ecaaa2;border-color:#754947;background:#2c2022}.game-menu .menu-icon{font-size:22px;min-width:44px;min-height:44px;padding:6px;flex-shrink:0}.pause-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:28px}.menu-actions{display:grid;gap:9px;align-content:start}.menu-actions button{text-align:left;display:flex;justify-content:space-between;align-items:center}.menu-actions .menu-danger{margin-top:14px;background:transparent;font-size:11px}.menu-voyage{padding:22px;border:1px solid var(--menu-line);border-radius:10px;background:#06121a88}.menu-voyage h3{font:400 26px Georgia,serif;margin:12px 0}.menu-voyage p{font-size:13px;color:var(--menu-muted)}.menu-stat-row{display:flex;gap:22px;border-top:1px solid var(--menu-line);padding-top:18px;font-size:11px;color:var(--menu-muted)}.menu-stat-row b{display:block;font-size:22px;font-weight:500;color:#e0eee7}.menu-note{font-size:12px;color:var(--menu-muted);line-height:1.6;margin:14px 0!important}.menu-settings{display:grid;grid-template-columns:1.2fr 1fr;gap:30px}.menu-settings>section>h3{color:#e9bb6a;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.menu-setting{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--menu-line);padding:17px 0}.menu-setting b{font-size:14px;font-weight:600}.menu-setting small{display:block;color:var(--menu-muted);font-size:12px;line-height:1.5;margin-top:4px}.menu-setting select{max-width:150px;min-width:125px;padding:8px}.menu-setting input[type=checkbox]{appearance:none;width:42px;height:26px;flex:0 0 42px;border-radius:20px;background:#293b47;border:1px solid #577080;position:relative;cursor:pointer;margin:0}.menu-setting input[type=checkbox]:before{content:'';position:absolute;left:4px;top:4px;width:16px;height:16px;background:#b1c1ca;border-radius:50%}.menu-setting input:checked{background:#27584a;border-color:#67bb9d}.menu-setting input:checked:before{left:20px;background:#a9e4c9}.menu-rule-summary{border:1px solid var(--menu-line);border-radius:8px;padding:16px;margin-top:22px;font-size:13px}.menu-rule-summary p{margin-top:8px;color:var(--menu-muted)}.menu-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;border-top:1px solid var(--menu-line);padding-top:20px;margin-top:24px}.menu-footer>span{margin-right:auto;color:#91b6a4;font-size:12px}.menu-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.menu-guide article>span{font:32px Georgia,serif;color:#e9bb6a}.menu-guide h3{margin:16px 0 12px}.menu-guide p,.menu-controls p{font-size:14px;color:var(--menu-muted)}.menu-controls{padding:18px 0;border-top:1px solid var(--menu-line);margin-top:18px}.game-menu kbd{font:11px/1.5 monospace;padding:1px 5px;border:1px solid currentColor;border-radius:4px;opacity:.7}.menu-confirm-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:30px}.menu-difficulties{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.game-menu .difficulty-card{display:block;position:relative;text-align:left;min-height:254px;background:#0b1c27;padding:22px 18px;border-color:#2a485b}.difficulty-card .menu-kicker{font-size:8px;color:#87a6b8;min-height:24px}.difficulty-card h3{font:28px Georgia,serif;margin:8px 0 18px}.difficulty-card p{font-size:13px;line-height:1.9;font-weight:400;color:#b4c7d2}.difficulty-card small{font-size:12px;color:#8ca9ba;font-weight:400}.difficulty-check{position:absolute;right:16px;top:16px;font-size:16px}.game-menu .difficulty-card.selected{background:linear-gradient(150deg,#293026,#172520);border-color:#d5b577}.difficulty-card.selected .difficulty-check{color:#e9bb6a}
/* Full-screen title keeps the existing world illustration as the focus. */
.title-screen{position:fixed!important;inset:0;height:100dvh!important;align-items:center!important;overflow:auto;padding:clamp(28px,6vw,84px);box-sizing:border-box;background-position:65% center!important}
.title-screen:after{background:linear-gradient(90deg,#030b13ed 0%,#050d14a1 43%,#07101918 75%),linear-gradient(0deg,#030b13f5,transparent 60%)!important}
.title-screen .title-copy{padding:0;max-width:520px;width:100%}.title-screen .title-copy h1{font:400 clamp(60px,8vw,104px)/.9 Georgia,serif;margin:24px 0;letter-spacing:-.065em}.title-screen .title-copy>p{font-size:15px;line-height:1.7;max-width:36ch;color:#b6cbd6}.title-screen .title-copy>.eyebrow{font-size:10px;letter-spacing:.22em;color:#92cbb6}.title-screen .title-actions{display:grid;gap:10px;max-width:310px;margin-top:32px}.title-screen .title-actions button{font-size:12px;min-height:50px;justify-content:start;padding:0 20px;border-radius:5px;letter-spacing:.04em}.title-screen .title-actions button.primary{background:#ecc175;color:#251e12;border-color:#ecc175}.title-screen .title-actions button:hover{border-color:#dfc595}.title-screen [hidden]{display:none!important}.title-secondary{display:flex;gap:24px;position:relative;z-index:1;margin-top:28px}.title-secondary button,.title-secondary a{background:none;color:#a4bac7;border:0;text-decoration:none;font:11px Inter,system-ui,sans-serif;padding:10px 0;cursor:pointer}.title-secondary button:hover,.title-secondary a:hover{color:#ebd0a0}.title-screen .save-preview{position:absolute;right:clamp(28px,6vw,84px);bottom:90px;z-index:1;width:280px;box-sizing:border-box;padding:22px;border:1px solid #49627277;border-radius:10px;background:#07131dd9;backdrop-filter:blur(12px);color:#dce7eb;font:13px/1.5 Inter,system-ui,sans-serif}.save-preview .menu-kicker{font-size:9px}.save-preview h2{font:26px Georgia,serif;margin:14px 0 8px}.save-preview p{color:#a5becc;margin:6px 0}.save-preview .save-stats{display:flex;gap:18px;border-top:1px solid #3a566755;padding-top:14px;margin-top:16px}.save-preview .save-stats strong{font-size:20px;display:block;color:#dce7eb}.save-preview .save-stats span{font-size:10px;color:#9ab9c8}.title-footer{position:absolute;bottom:25px;left:clamp(28px,6vw,84px);right:clamp(28px,6vw,84px);z-index:1;display:flex;justify-content:space-between;gap:16px;color:#7394a8;font:10px/1.5 Inter,system-ui,sans-serif;letter-spacing:.08em}.title-orbit{position:absolute;right:20%;top:12%;height:220px;width:220px;border:1px solid #a9d1d01c;border-radius:50%;z-index:1;pointer-events:none}.title-orbit:after{content:'';position:absolute;inset:18px;border:1px solid #a9d1d011;border-radius:50%}
html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}
@media(max-width:900px){.title-screen .save-preview{width:230px;right:28px;bottom:85px}.menu-settings{gap:22px}.game-menu{padding:24px}.title-screen .title-copy{max-width:450px}.title-screen .title-copy>p{max-width:32ch}}
@media(max-width:660px){.game-menu{padding:22px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.menu-heading h2{font-size:29px}.pause-layout,.menu-settings,.menu-guide,.menu-difficulties{grid-template-columns:1fr}.pause-layout{gap:20px}.menu-footer{flex-wrap:wrap}.menu-footer>span{flex-basis:100%}.game-menu .difficulty-card{min-height:0;padding:18px}.difficulty-card p{margin-bottom:10px}.difficulty-card .menu-kicker{min-height:0}.difficulty-card h3{margin:8px 0 12px}.title-screen{padding:28px;align-items:start!important}.title-screen .title-copy{margin-top:40px}.title-screen .title-copy h1{font-size:64px}.title-screen .save-preview{position:relative;right:auto;bottom:auto;margin:30px 0 65px;width:100%;max-width:310px;padding:18px}.title-screen .title-actions{margin-top:24px}.title-screen .title-secondary{gap:18px}.title-footer{left:28px;right:28px;position:fixed;background:#061018bb;padding:8px 0;bottom:0}.title-orbit{display:none}}
@media(max-height:620px) and (min-width:661px){.title-screen{padding-block:24px}.title-screen .title-copy h1{font-size:62px;margin:12px 0}.title-screen .title-copy>p{font-size:13px}.title-screen .title-actions{margin-top:16px;gap:6px}.title-screen .title-actions button{min-height:42px}.title-secondary{margin-top:8px}}

.main-menu-open #toast{display:none}

.title-screen{padding-top:max(clamp(28px,6vw,84px),calc(var(--game-safe-top) + 20px));padding-bottom:max(28px,calc(var(--game-safe-bottom) + 20px))}
.game-menu{inset-block:var(--game-safe-top) var(--game-safe-bottom);max-height:calc(100dvh - var(--game-safe-top) - var(--game-safe-bottom) - 40px)}
