@font-face{font-family:Harbor;src:url(/assets/BarlowCondensed-Bold.ttf)format("truetype");font-weight:700;font-display:block}@font-face{font-family:Deck;src:url(/assets/Barlow-SemiBold.ttf)format("truetype");font-weight:600;font-display:block}:root{color:#f3f5e9;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);background:#102e43;font-family:Deck,Arial,sans-serif}*{box-sizing:border-box}html,body{overscroll-behavior:none;width:100%;height:100%;margin:0;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none}#game{touch-action:none;outline:none;width:100%;height:100%;display:block}#boot{z-index:10;opacity:1;background:#050b10;transition:opacity .65s;position:fixed;inset:0}#boot [hidden]{display:none!important}.opening-cinema{z-index:1;opacity:1;background:#050b10;transition:opacity .6s;position:absolute;inset:0}.opening-cinema video{object-fit:contain;object-position:center;pointer-events:none;width:100%;height:100%;transition:opacity .65s;display:block;position:absolute;inset:0}#studio-video{opacity:1}#game-intro-video,#boot[data-picture=game] #studio-video{opacity:0}#boot[data-picture=game] #game-intro-video{opacity:1}#boot[data-picture=fallback] .opening-cinema{opacity:0}.launch-flash{z-index:2;pointer-events:none;opacity:0;background:radial-gradient(at 65% 42%,#fffef3 0%,#fff2ca 38%,#ccece1 75%,#91cbd9 100%);position:absolute;inset:0}#boot[data-flash=active] .launch-flash{animation:.6s ease-out both harbor-handoff}@keyframes harbor-handoff{0%{opacity:0}22%{opacity:.92}to{opacity:0}}#launch-gate{z-index:3;text-align:center;background:#050b10db;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:76px 24px;display:flex;position:absolute;inset:0}#launch-gate p{margin:0;font:700 clamp(22px,3vw,34px) Harbor,sans-serif}#launch-gate span{max-width:34ch;font-size:16px;line-height:1.4}#boot button{color:#102e43;cursor:pointer;touch-action:manipulation;background:#f47a38;border:2px solid #f3f5e9;border-radius:8px;min-width:80px;min-height:48px;padding:10px 18px;font:700 21px/1.1 Harbor,sans-serif;box-shadow:0 3px 12px #050b1066}#boot button:focus-visible{outline-offset:4px;outline:3px dashed #f3cd66}#boot button:active{box-shadow:0 1px #050b10}#boot #launch-skip{z-index:5;top:max(14px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));color:#f3f5e9;letter-spacing:.06em;background:#102e43e8;align-items:center;gap:12px;display:flex;position:absolute}#launch-skip span{color:#f3cd66;font-size:28px;line-height:.6}#boot button.launch-secondary{color:#f3f5e9;background:#102e43c9;border-color:#f3f5e966;font-size:16px}#boot button:disabled{opacity:.5;cursor:default}.launch-toolbar{z-index:4;padding:32px max(20px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));color:#f3f5e9;background:linear-gradient(#0000,#050b10d9);align-items:center;gap:24px;display:flex;position:absolute;bottom:0;left:0;right:0}.launch-loading{flex:1;min-width:0;max-width:420px}#launch-status{text-shadow:0 1px 4px #050b10;margin:0 0 7px;font-size:13px;line-height:1.3}.launch-progress-row{align-items:center;gap:12px;display:flex}#launch-progress{appearance:none;color:#f47a38;accent-color:#f47a38;background:#365568;border:0;border-radius:3px;flex:1;min-width:0;height:4px;display:block;overflow:hidden}#launch-progress::-webkit-progress-bar{background:#365568}#launch-progress::-webkit-progress-value{background:#f47a38}#launch-progress::-moz-progress-bar{background:#f47a38}#launch-percent{color:#f3cd66;width:4ch;font:700 14px Harbor,sans-serif}#boot[data-ready=true][data-stage=playing] .launch-progress-row,#boot[data-ready=true][data-stage=starting] .launch-progress-row{visibility:hidden}.launch-actions{align-items:center;gap:12px;margin-left:auto;display:flex}#game-reveal{color:#102e43;background:#102e43;position:absolute;inset:0}.launch-scenery{object-fit:cover;width:100%;height:100%;display:block}.launch-wordmark{text-align:center;opacity:1;width:43%;position:absolute;top:max(16px,3.5%);left:16%}.launch-presenter{margin:0 0 9px;font:700 clamp(13px,1.4vw,19px)/1.2 Harbor,sans-serif}.launch-wordmark h1{margin:0;font:700 clamp(42px,6.2vw,80px)/1.08 Harbor,sans-serif}.launch-wordmark h1 span{margin-bottom:4px;font-size:clamp(19px,2.2vw,28px);display:block}#boot[data-stage=leaving]{opacity:0}#boot[data-stage=loading] .launch-toolbar,#boot[data-stage=error] .launch-toolbar{background:#102e43f5}#boot.reduced-motion,#boot.reduced-motion .opening-cinema,#boot.reduced-motion video{transition:none}#boot.reduced-motion .launch-flash{animation:none;display:none}@media (width<=700px) and (orientation:landscape){.launch-toolbar{padding-top:24px;padding-bottom:max(10px, env(safe-area-inset-bottom));gap:12px}#launch-status{font-size:12px}#boot button{min-height:48px;padding:10px 14px;font-size:19px}#boot button.launch-secondary{font-size:15px}.launch-actions{gap:9px}}@media (orientation:portrait){.launch-toolbar{gap:16px}.launch-loading{max-width:230px}#game-reveal .launch-scenery{object-fit:contain}.launch-wordmark{color:#f3f5e9;width:90%;top:max(40px,12%);left:5%}.launch-presenter{color:#f3cd66;font-size:16px}.launch-wordmark h1{font-size:clamp(44px,10vw,64px)}}@media (prefers-reduced-motion:reduce){#boot,.opening-cinema,.opening-cinema video{transition:none}#boot .launch-flash{animation:none;display:none}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}noscript{text-align:center;font-size:24px;position:fixed;inset:35% 15%}#launch-arcade{color:#f3f5e9;text-underline-offset:4px;align-items:center;min-height:48px;padding:10px 12px;font:700 16px/1.2 Deck,sans-serif;display:inline-flex}#launch-arcade[hidden]{display:none}#launch-arcade:focus-visible{outline-offset:4px;outline:3px dashed #f3cd66}#boot[data-stage=error] .launch-actions{flex-wrap:wrap;justify-content:flex-end}@media (width<=600px){#boot[data-stage=error] .launch-toolbar{flex-direction:column;align-items:stretch}#boot[data-stage=error] .launch-actions{justify-content:flex-start;margin-left:0}}
