
:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;color:#f6f5ef;background:#0b1e26}*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#0b1e26}body{min-height:100dvh;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(180deg,#0718219c 0%,#08151e4b 30%,#04121ceb 92%),url('../airplane/assets/ui/bush-pilot-title.webp') center center/cover no-repeat}
body:after{content:"";pointer-events:none;position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse at 50% 9%,#122f3b08,transparent 54%)}
button,a{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #d6ebac;outline-offset:3px}button[disabled]{cursor:not-allowed}
.screen{position:relative;z-index:1;width:min(1210px,100%);min-height:100dvh;margin:0 auto;padding:clamp(18px,3.7vw,48px);display:flex;flex-direction:column;justify-content:center;gap:clamp(18px,3vh,30px)}[hidden]{display:none!important}
.brand{text-align:center;text-shadow:0 3px 16px #061722b8}.crest{font-size:clamp(26px,4vw,40px);color:#f0efd7;line-height:1}.brand h1{font-size:clamp(41px,6vw,85px);letter-spacing:-.055em;line-height:1.02;margin:2px 0 8px;font-weight:1000}.brand h1 span{color:#e7f2d9}.brand p{color:#e0e7df;font-size:clamp(12px,1.6vw,17px);letter-spacing:.12em;font-weight:720;margin:0}
.language-screen .brand{margin-bottom:clamp(10px,3vh,32px)}.language-card{width:min(560px,100%);margin:0 auto;border:1px solid #e0e9dc55;border-radius:23px;padding:clamp(22px,4vw,35px);background:linear-gradient(160deg,#102e3aef,#081f2bf0);backdrop-filter:blur(10px);box-shadow:0 25px 80px #020d16ac;text-align:center}
.language-card h2{font-size:clamp(22px,3vw,28px);margin:0 0 4px}.language-card>p{margin:0 0 22px;color:#bfd1ce;font-size:13px}.languages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:20px}
.language-option{border:1px solid #b1c7cd77;background:#193a46;border-radius:15px;min-height:110px;color:#f6f6ee;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:border-color .15s,background .15s}.language-option .flag{font-size:35px}.language-option strong{font-size:16px}.language-option small{font-size:11px;color:#c6d4d0}.language-option[aria-pressed="true"]{border:2px solid #d1e8a6;background:#28534e;box-shadow:0 0 0 3px #d0ebb02b}
.primary{border:1px solid #f5daa0;border-radius:13px;background:linear-gradient(#f3c986,#c38d4b);color:#19262d;font-weight:950;letter-spacing:.09em;padding:15px 20px;box-shadow:0 7px 0 #80502a,0 15px 32px #010b13a8}.primary:active{transform:translateY(2px);box-shadow:0 4px 0 #80502a}.language-card .primary{width:100%}
.menu-head{display:flex;justify-content:space-between;align-items:end;gap:12px}.menu-head .brand{text-align:left}.menu-head .brand h1{font-size:clamp(39px,5vw,70px)}.menu-head .brand p{font-size:clamp(11px,1.2vw,14px);letter-spacing:.07em}.change-lang{align-self:flex-start;background:#0d2b35dd;border:1px solid #d6e8da75;color:#eff5e9;border-radius:13px;padding:10px 13px;display:flex;gap:7px;align-items:center;font-size:12px;font-weight:800;white-space:nowrap}
.mode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(9px,1.5vw,17px)}
.mode{min-width:0;border:1px solid #d8e5dd75;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;color:#f8f8f4;text-align:left;text-decoration:none;background:linear-gradient(155deg,#172d39ed,#081924f3);box-shadow:0 14px 45px #0008;position:relative;transition:transform .16s,border-color .16s}.mode:not(.locked):hover{transform:translateY(-3px);border-color:#e3efc5}.mode:focus-visible{outline-offset:4px}.mode-art{height:clamp(117px,15vw,204px);background-position:center;background-size:cover;position:relative}.mode-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#071923 0%,transparent 48%)}.mode-airplane .mode-art{background-image:url('../airplane/assets/ui/bush-pilot-title.webp');background-position:42% 63%}.mode-heli .mode-art{background-image:url('../rescuepilot-card.webp');background-position:52% 51%}
.mode-rally .mode-art{background:linear-gradient(140deg,#5559557d,#0a2029),repeating-linear-gradient(35deg,#534739 0 15px,#243c35 15px 37px)}.mode-boat .mode-art{background:linear-gradient(145deg,#1b475d,#071e2b 65%);border-bottom:1px solid #aecdd62c}.mode-boat .mode-art:before{content:"≋";position:absolute;left:24%;top:6%;font-size:110px;color:#6fa9ac43}
.mode-info{padding:15px 15px 18px;display:flex;flex:1;flex-direction:column;gap:5px}.mode-title{font-weight:950;font-size:clamp(19px,2vw,26px)}.mode-subtitle{font-size:10px;color:#dfc99c;letter-spacing:.15em;font-weight:800}.mode-description{font-size:12px;color:#d4dfdc;line-height:1.4;min-height:48px}.mode-action{font-size:11px;margin-top:auto;padding-top:10px;color:#e9d29b;font-weight:900;letter-spacing:.06em}.mode.locked{opacity:.70;filter:saturate(.37);cursor:not-allowed}.mode.locked .mode-action{color:#bdc9c7}.lock-icon{position:absolute;right:12px;top:12px;border-radius:9px;padding:6px 8px;font-size:21px;background:#091821ce}
.menu-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:center;color:#d4e0da;font-size:11px;text-shadow:0 2px 8px #0009}.menu-bottom strong{color:#f6ead0}
.loading{position:fixed;inset:0;z-index:7;display:grid;place-items:center;background:#061b25f5;text-align:center;padding:20px}.loading strong{font-size:clamp(22px,3vw,33px)}.loading p{font-size:13px;color:#b7d3ce}
@media(max-width:960px){.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-art{height:clamp(90px,19vw,150px)}.mode-description{min-height:30px}.screen{justify-content:flex-start;padding:20px;gap:15px}.menu-head{align-items:center}}
@media(min-width:690px) and (orientation:landscape){.mode-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mode-info{padding:12px}.mode-art{height:clamp(94px,16vw,170px)}.mode-description{min-height:53px}.screen{justify-content:center}}
@media(max-width:560px){.screen{padding:16px 13px}.brand h1{font-size:45px}.menu-head .brand h1{font-size:38px}.mode-info{padding:12px 11px}.mode-art{height:116px}.mode-title{font-size:20px}.mode-description{font-size:11px;min-height:42px}.mode-action{font-size:10px}.change-lang{font-size:10px;padding:9px}.language-option{min-height:100px}}
@media(max-height:480px) and (orientation:landscape){.screen{padding:10px 15px;gap:9px}.menu-head .brand h1{font-size:36px}.menu-head .brand p{font-size:10px}.mode-art{height:95px}.mode-info{padding:8px 10px;gap:2px}.mode-title{font-size:19px}.mode-description{font-size:10px;min-height:33px}.mode-action{padding-top:4px}.menu-bottom{font-size:10px}.language-card{padding:15px}.language-option{min-height:75px}.language-option .flag{font-size:22px}.language-option strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Unified footer and navigation. Styles live here; simulator CSS stays isolated. */
.menu-bottom{margin-top:auto}.footer-actions{display:flex;gap:11px;align-items:center;flex-wrap:wrap}
.footer-action{border:1px solid #bdcfc891;background:#102f3bdf;color:#f7f7ed;text-decoration:none;border-radius:10px;padding:9px 12px;font-weight:750;font-size:12px}
.footer-action:focus-visible{outline:3px solid #d6ebac;outline-offset:3px}
.mode[aria-disabled="true"]{pointer-events:none}
.mode:focus-visible{outline:3px solid #d6ebac}
.credit-screen{width:min(980px,100%);justify-content:flex-start;padding-block:28px 46px}
.credits-header{display:flex;justify-content:space-between;gap:15px;align-items:center}
.credits-main{background:#0a2630eb;border:1px solid #d2e6df60;border-radius:18px;padding:clamp(18px,3vw,32px);box-shadow:0 10px 40px #03101bb8}
.credits-main h2{font-size:clamp(24px,3vw,33px);margin:0 0 8px}
.credits-main .intro{color:#dae6e2;line-height:1.55;margin-bottom:20px;font-size:14px}
.credit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.credit-group{border:1px solid #bad3ce30;background:#183642aa;border-radius:12px;padding:15px}
.credit-group h3{font-size:17px;margin:0 0 10px;color:#f2e4be}.credit-group ul{padding-left:18px;margin:0}
.credit-group li{line-height:1.6;margin:0 0 7px;font-size:13px;color:#deece7}
.credit-group a{color:#d6ead0;text-underline-offset:2px}
.credits-note{margin-top:20px;color:#b9c8c3;font-size:12px;line-height:1.55}
@media(max-width:620px){.credit-grid{grid-template-columns:1fr}.credits-header{flex-wrap:wrap}.footer-actions{width:100%}}
