@font-face{font-family:'Russo One';src:url('./fonts/RussoOne-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Special Elite';src:url('./fonts/SpecialElite-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--display-font:'Russo One','Arial Narrow',sans-serif;--archive-font:'Special Elite','Courier New',monospace;--menu-ink:#ddd3b5;--menu-red:#ae4935;--panel:#34392b;--paper:#e7ddba}
body,#game{font-family:var(--archive-font);color:var(--paper)}
#game .game-title,#game .startup-title{font-family:var(--display-font);font-weight:400;font-size:clamp(68px,8.4vw,124px);line-height:.95;letter-spacing:.012em;color:#d6c8a1;text-shadow:2px 3px #080a08,-1px 0 #8c856d}
#game .game-title span,#game .startup-title span{color:#a83f30;font-size:.85em;letter-spacing:.15em;margin-top:10px}
#game .menu-overline,#game .menu-note,#game .menu-header,#game .menu-header small,#game .menu-nav-label,#game .menu-footer,#game .menu-footer small,#game .menu-audio-note,#game .dialog-kicker,#game .boot-header,#game .boot-footer,#game .boot-loading p{font-family:var(--archive-font)}
#game .menu-overline{color:#ba9c75;letter-spacing:.13em}
#game .menu-note{font-size:16px;line-height:1.6;color:#ccc1a6}
#game .menu-content{padding-top:28px;padding-bottom:28px}
#game .menu-options{width:min(380px,100%);margin-top:24px}
#game .menu-secondary{display:grid;gap:7px;border-bottom:1px solid #88734d66;padding:12px 0}
#game .menu-nav-label{color:#b5a27a}
#game button,#game a.menu-link{
 font-family:var(--archive-font);font-weight:400;letter-spacing:.045em;
 color:#e5dab7;border:1px solid #867851;border-top-color:#a29468;border-bottom:3px solid #171b14;border-radius:2px;
 background-color:#353c2c;
 background-image:repeating-linear-gradient(174deg,transparent 0 18px,#ddd1a80c 19px,transparent 20px 31px),radial-gradient(ellipse at 0 100%,#874f3059,transparent 37%),radial-gradient(ellipse at 100% 0,#161b1480,transparent 52%),linear-gradient(#535943,#333a2d 49%,#282f24 51%,#3b4231);
 box-shadow:inset 0 0 0 2px #14191080,inset 0 4px 7px #d2c69a15,0 3px 0 #080d09,0 6px 14px #0005;
 text-shadow:0 1px 1px #000;min-height:44px;line-height:1.45;
 transition:filter .15s,box-shadow .15s;
}
#game button:hover,#game a.menu-link:hover{filter:brightness(1.17);color:#fff1cc}
#game button:active,#game a.menu-link:active{box-shadow:inset 0 3px 8px #000b,0 1px 0 #080d09;filter:brightness(.92)}
#game button:focus-visible,#game a:focus-visible,#game input:focus-visible,#game textarea:focus-visible{outline:2px solid #efcf7e;outline-offset:4px}
#game button:disabled{filter:grayscale(.7);opacity:.55;cursor:default}
#game #start,#game .start-button,#game #hatchGrip,#game .climb{background-color:#69392d;background-image:repeating-linear-gradient(175deg,transparent 0 17px,#eac69c10 18px,transparent 19px 33px),radial-gradient(ellipse at 0 100%,#bd82524d,transparent 43%),linear-gradient(#814d3a,#623328 48%,#47281f 51%,#663b2c);border-color:#ac8760 #7c5d3d #251b15;color:#f1e3bd}
#game .main-choice{font-family:var(--display-font);font-size:17px;font-weight:400;letter-spacing:.035em;padding:17px 20px}
#game .menu-link{font-size:16px;padding:11px 15px}
#game .menu-secondary .menu-link::before{font-family:var(--archive-font);color:#b7a47b;font-size:12px}
#game .menu-audio{padding:10px 14px;width:100%;margin-top:10px;font-size:14px}
#game .menu-audio-note{margin-top:12px;color:#b2a98e}
#game button[aria-pressed=true]{border-color:#d2b775;color:#ffe8a3;box-shadow:inset 0 3px 9px #070b08,0 1px #a28b5a;background-color:#48492c}
#game .menu-dialog,#game .install-sheet,#game #hatchControl,#game #liftRide,#game #cookingPanel{background:repeating-linear-gradient(0deg,#b6ad8303 0 1px,transparent 1px 5px),linear-gradient(120deg,#34392cfb,#1b221cfa);border:1px solid #8a7953;border-top:4px solid #794531;border-radius:2px;box-shadow:inset 0 0 0 3px #0d130d,0 20px 75px #000b;color:#ded4b6}
#game .menu-dialog h2,#game .pause-card h2,#game .result-title,#game .install-sheet h2{font-family:var(--display-font);font-weight:400;letter-spacing:.025em;line-height:1.2;color:#d9ca9e;text-transform:uppercase}
#game .menu-dialog h2{font-size:clamp(25px,4vw,38px)}
#game .menu-dialog p,#game .menu-dialog dd,#game .menu-setting span,#game .inventory-list,#game .dialog-note{font-family:var(--archive-font);line-height:1.65;color:#d3ccb5}
#game .close-dialog{padding:8px 12px;font-size:14px;margin-bottom:12px}
#game .dialog-kicker{color:#d1a67e;clear:both}
#game .logo{font-family:var(--display-font);font-size:23px;letter-spacing:.04em;color:#d8cda9}#game .logo b{color:#ad5941}
#game .altitude,#game .fine strong,#game #liftCountdown{font-family:var(--display-font);font-weight:400;color:#e8dab7}
#game .world-time,#game .location,#game .stage,#game .hatch-status,#game .status,#game .controls-hint,#game .yard-actions>span,#game #mapWrap>span{font-family:var(--archive-font);color:#d5ceb5}
#game .status,#game #mapWrap{background:linear-gradient(120deg,#303629ed,#171e17df);border:1px solid #8a795365;border-radius:1px;box-shadow:inset 0 0 0 2px #080e0866}
#game .bar{background:#080d08;border-bottom:1px solid #787153;height:4px}#game .bar>span{background:#b3ae75}
#game #joystick{background:radial-gradient(circle,#343b2aa6,#151c17b8);border:2px solid #7b7858;box-shadow:inset 0 3px 14px #0008}
#game #stickKnob{background:radial-gradient(circle at 36% 28%,#77785b,#373d2d 70%);border:2px solid #979373;box-shadow:0 5px 8px #0009}
#game #feedback{font-family:var(--archive-font);background:#222a20ed;border:1px solid #8d7850;border-radius:1px;color:#e6d8b5}
#game input,#game textarea{font-family:var(--archive-font);border-radius:1px;color:#e9dfb8;background:#10180f;border-color:#827657}
#game .menu-footer .install-link{padding:6px 10px;font-size:12px}
@media(max-width:700px){#game .game-title,#game .startup-title{font-size:clamp(58px,15.8vw,92px)}#game .menu-content{padding-top:24px;padding-bottom:22px}#game .menu-secondary{grid-template-columns:1fr 1fr}#game .menu-link{font-size:14px;padding:10px}#game .main-choice{font-size:15px}#game .menu-note{font-size:15px}#game .menu-audio{font-size:13px}#game .menu-dialog h2{font-size:27px}#game .logo{font-size:20px}#game .settings button{letter-spacing:0}}
@media(max-height:600px){#game .menu-content{padding-top:20px;padding-bottom:20px}#game .game-title{font-size:64px}#game .menu-options{margin-top:12px}#game .menu-note{font-size:14px;margin-top:18px}#game .menu-audio-note{display:none}#game .menu-secondary{gap:5px;padding:8px 0}#game .menu-link{padding:8px 12px}#game .main-choice{padding:12px 16px}}
@media(prefers-reduced-motion:reduce){#game button,#game a.menu-link{transition:none}}
/* Keep the archive header outside the title block, including short windows. */
#intro.main-menu{align-items:stretch;justify-content:flex-start}
#game .menu-header,#game .menu-footer{flex:none;width:100%;box-sizing:border-box}
#game .menu-content{flex:1 0 auto;min-height:0;box-sizing:border-box}
@media(min-width:701px) and (max-height:850px){#game .menu-header{padding-top:24px}#game .game-title{font-size:76px}#game .menu-content{padding-top:20px;padding-bottom:18px}#game .menu-overline{margin-bottom:16px}#game .menu-note{margin:18px 0 10px;font-size:15px}#game .menu-evidence{display:none}#game .menu-options{margin-top:15px}#game .menu-audio-note{display:none}#game .menu-secondary{padding:9px 0;margin-bottom:8px}#game .main-choice{padding:12px 18px;min-height:48px}#game .menu-footer{padding-top:12px;padding-bottom:18px}}

/* Center the menu and retain heavier button labels. */
#game .menu-content{align-self:center;margin-left:auto;margin-right:auto;text-align:center;align-items:center;padding-left:24px;padding-right:24px;width:min(700px,100%)}
#game .menu-content .game-title,#game .menu-content .menu-note,#game .menu-options{text-align:center}
#game .menu-content .game-title{transform-origin:center}
#game .menu-overline,#game .menu-evidence{justify-content:center}
#game .menu-options{margin-left:auto;margin-right:auto}
#game button,#game a.menu-link,#game .main-choice{font-weight:700}
#game .menu-options button,#game .menu-options a.menu-link{font-family:var(--display-font);font-weight:700;text-align:center;letter-spacing:.025em;justify-content:center}
#game .menu-audio-note{margin-left:0}
@media(max-height:550px) and (min-width:600px){#game .menu-content{width:100%;grid-template-columns:1fr 1fr;padding-left:5vw;padding-right:5vw}}
