@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=IBM+Plex+Mono:wght@400;500;600&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,Arial,sans-serif;color:#f0e8d5;background:#0b1414;font-synthesis:none;--ink: #091111;--pine: #142320;--paper: #e8dec4;--muted: #b4b4a4;--amber: #e4ad69;--amber-bright: #ffcd86;--line: rgba(232, 222, 196, .22);--mono: "IBM Plex Mono", "Courier New", monospace;--serif: "Cormorant Garamond", Georgia, serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;min-height:100%;margin:0}html{overflow:hidden}body{overflow:hidden;background:#0b1414;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--amber-bright);outline-offset:4px}.hidden,[hidden]{display:none!important}#game,canvas#game{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:0;background:linear-gradient(160deg,#25302d,#08100f)}#grain{position:fixed;inset:0;z-index:80;pointer-events:none;content:"";opacity:.075;background-image:url(/grain.svg);background-size:180px 180px;mix-blend-mode:screen}#vignette{position:fixed;inset:0;z-index:5;pointer-events:none;background:radial-gradient(ellipse at center,transparent 41%,rgba(3,9,9,.24) 100%)}#menu,#overlay,#mission-card,#note,#pause,#ending,#about{position:fixed;inset:0;z-index:40}#menu{display:flex;align-items:center;isolation:isolate;background:#0b1212}#menu:before{position:absolute;inset:0;z-index:0;content:"";background:url(/title-art.webp) right center / cover no-repeat;animation:title-breathe 19s ease-in-out infinite alternate}#menu:after{position:absolute;inset:0;z-index:1;content:"";background:linear-gradient(90deg,rgba(5,11,11,.94) 0%,rgba(7,13,13,.79) 26%,rgba(7,13,13,.32) 57%,transparent 82%),linear-gradient(0deg,rgba(5,11,11,.82),transparent 28%,transparent 75%,rgba(4,9,9,.45))}.menu-inner{position:relative;z-index:2;width:min(690px,56vw);margin:0 0 0 clamp(24px,7vw,144px);padding:48px 0 64px;animation:reveal-up .7s both}.menu-inner:before{position:absolute;top:8px;left:0;width:74px;height:2px;content:"";background:var(--amber);box-shadow:0 0 19px #e4ad698c}.eyebrow,.panel-kicker,.card-kicker,.note-kicker,.menu-meta,.hud-label,.hud-brand,.hud-year,.dialogue-speaker{font:600 .72rem/1.4 var(--mono);letter-spacing:.22em;text-transform:uppercase}.eyebrow{color:var(--amber);margin:0 0 18px}#menu h1{max-width:740px;margin:0;color:#f2e8d2;font:700 clamp(4.6rem,8.7vw,10rem)/.78 var(--serif);letter-spacing:-.045em;text-transform:uppercase;text-shadow:0 5px 34px rgba(0,0,0,.5)}#menu h1 em{color:var(--amber);font-style:normal}.lead{max-width:520px;margin:clamp(26px,4vh,48px) 0 0;color:#d3d0bf;font-size:clamp(.9rem,1.1vw,1.08rem);line-height:1.72;font-weight:500}.menu-actions,.panel-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}.button,.button-secondary,.panel button,#pause button,#ending button,#note button,#mission-card button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 22px;border:1px solid var(--amber);border-radius:0;background:var(--amber);color:#15211d;font:800 .72rem/1.3 Manrope,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s}.button:hover,.panel button:hover,#pause button:hover,#ending button:hover,#note button:hover,#mission-card button:hover{transform:translateY(-2px);background:var(--amber-bright);border-color:var(--amber-bright);box-shadow:0 8px 28px #e4ad6933}.button-secondary,.panel button.secondary,#pause button.secondary,#ending button.secondary,#pause button.button-secondary,#ending button.button-secondary,#overlay button.button-secondary,#mission-card button.button-secondary{border-color:#e7ddc26b;background:#0a131252;color:#e6dec9}.button-secondary:hover,.panel button.secondary:hover,#pause button.secondary:hover,#ending button.secondary:hover{background:#e8dec41f;border-color:var(--paper);color:#fff}.hint,.menu-meta{color:#ebe6cf8c}.hint{margin:26px 0 0;font-size:.76rem;line-height:1.65}.menu-meta{margin-top:18px;font-size:.62rem}#hud{position:fixed;inset:0;z-index:12;pointer-events:none;color:#f4eedf;text-shadow:0 2px 10px #081110}#hud:before,#hud:after{position:absolute;left:0;right:0;content:"";pointer-events:none}#hud:before{top:0;height:170px;background:linear-gradient(#050a0aaa,transparent)}#hud:after{bottom:0;height:155px;background:linear-gradient(transparent,#050a0a99)}.hud-top,.hud-bottom{position:absolute;z-index:1;left:clamp(20px,3vw,46px);right:clamp(20px,3vw,46px);display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.hud-top{top:clamp(18px,3vw,36px)}.hud-bottom{bottom:clamp(20px,3vw,38px);align-items:flex-end}.hud-brand{color:var(--amber);white-space:nowrap}.hud-mission{font:600 clamp(1.18rem,1.9vw,1.65rem)/1 var(--serif);letter-spacing:.02em}.hud-year{color:var(--amber);text-align:right;white-space:nowrap}.hud-objective{position:absolute;z-index:1;top:clamp(68px,7vw,94px);left:clamp(20px,3vw,46px);max-width:min(440px,42vw);display:flex;align-items:flex-start;gap:12px;padding:11px 15px 12px;border-left:2px solid var(--amber);background:#081311a1;box-shadow:0 7px 24px #0000001f;font-size:.79rem;line-height:1.45;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.objective-icon{color:var(--amber);font:1.2rem/1 var(--serif)}.hud-objective small{display:block;margin-bottom:4px;color:var(--amber);font:600 .56rem var(--mono);letter-spacing:.16em}.hud-objective strong{display:block;font-size:.79rem;font-weight:700}#objective-distance{display:block;margin-top:4px;color:#d6c5a5;font:.63rem var(--mono)}.hud-stat{display:flex;flex-direction:column;min-width:93px;padding-left:15px;border-left:2px solid rgba(228,173,105,.8)}.hud-stat:first-child{margin-right:auto}.hud-label{color:#dbb686;font-size:.57rem}.hud-value{font:600 clamp(1.6rem,2.5vw,2.25rem)/1.1 var(--serif);font-variant-numeric:tabular-nums}.hud-progress{height:3px;margin-top:8px;background:#e6dbbb45}.hud-progress>span{display:block;height:100%;background:var(--amber);box-shadow:0 0 9px var(--amber)}#crosshair{position:fixed;top:50%;left:50%;z-index:15;width:27px;height:27px;transform:translate(-50%,-50%);pointer-events:none;opacity:.88;filter:drop-shadow(0 1px 2px #03100f);background:linear-gradient(#f6eacb,#f6eacb) center top / 1px 7px no-repeat,linear-gradient(#f6eacb,#f6eacb) center bottom / 1px 7px no-repeat,linear-gradient(#f6eacb,#f6eacb) left center / 7px 1px no-repeat,linear-gradient(#f6eacb,#f6eacb) right center / 7px 1px no-repeat}#crosshair:after{position:absolute;top:12px;left:12px;width:3px;height:3px;border-radius:50%;background:var(--amber);content:""}#dialogue{position:fixed;z-index:25;bottom:clamp(90px,14vh,142px);left:50%;width:min(720px,calc(100vw - 36px));padding:20px 25px 20px 28px;transform:translate(-50%);border-left:3px solid var(--amber);background:#06100fe3;box-shadow:0 14px 50px #00000047;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);animation:reveal-up .25s both}.dialogue-speaker{display:block;margin-bottom:7px;color:var(--amber);font-size:.64rem}.dialogue-text{margin:0;color:#f2e9d6;font-size:clamp(.92rem,1.1vw,1.08rem);line-height:1.55;font-weight:600}.dialogue-hint{display:block;margin-top:10px;color:#999f94;font:.62rem var(--mono);letter-spacing:.03em}#overlay,#mission-card,#pause,#ending,#note,#about{display:grid;place-items:center;padding:20px;overflow:auto;overflow-x:hidden;background:#030a0ad6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#ending{background:linear-gradient(90deg,#040a0af0,#070e0ec2),url(/title-art.webp) center / cover}#about{z-index:60}#about .about-panel{width:min(740px,100%);max-height:min(88vh,900px);overflow:auto}#about .about-panel,#overlay .panel,.note-sheet{scrollbar-width:thin;scrollbar-color:#9e7a4b rgba(231,218,188,.09)}#about .about-panel::-webkit-scrollbar,#overlay .panel::-webkit-scrollbar,.note-sheet::-webkit-scrollbar{width:6px}#about .about-panel::-webkit-scrollbar-thumb,#overlay .panel::-webkit-scrollbar-thumb,.note-sheet::-webkit-scrollbar-thumb{background:#9e7a4b}#about .about-panel::-webkit-scrollbar-track,#overlay .panel::-webkit-scrollbar-track,.note-sheet::-webkit-scrollbar-track{background:#e7dabc17}#sources-list{margin:25px 0;color:#d1cfbd;font-size:.82rem;line-height:1.7}.source-entry{padding:18px 0 19px;border-top:1px solid rgba(232,222,196,.19)}.source-entry:last-child{border-bottom:1px solid rgba(232,222,196,.19)}.source-entry strong{display:block;color:#f3e8d2;font:600 1.45rem/1.14 var(--serif)}.source-entry p{margin:8px 0 11px;color:#bfc3b2;font-size:.78rem;line-height:1.6}.source-entry a,.fact-sources a{display:inline-flex;align-items:center;margin:4px 16px 4px 0;color:var(--amber-bright);font:600 .62rem/1.5 var(--mono);letter-spacing:.03em;text-decoration:underline;text-decoration-color:#ffcd8673;text-underline-offset:4px}.source-entry a:hover,.fact-sources a:hover{color:#ffe0ac;text-decoration-color:currentColor}.fact-sources{display:flex;flex-wrap:wrap;gap:0 4px;margin-top:17px;padding-top:13px;border-top:1px solid var(--line)}#overlay .panel{max-height:min(88vh,900px);overflow:auto}.panel{position:relative;width:min(610px,100%);padding:clamp(28px,5vw,60px);border:1px solid rgba(232,222,196,.25);background:linear-gradient(145deg,#192824fa,#081211fa);box-shadow:0 26px 80px #00000063,inset 0 0 45px #c68a5006;animation:reveal-up .38s both}.panel:before{position:absolute;top:-1px;left:0;width:60px;height:2px;content:"";background:var(--amber)}.panel-kicker,.card-kicker{display:block;margin:0 0 18px;color:var(--amber)}.panel h2,.card-title{margin:0;color:#f5ecd6;font:600 clamp(2.9rem,5vw,5.1rem)/.91 var(--serif);letter-spacing:-.025em}.panel p,.card-desc{color:#c8c9b9;font-size:.91rem;line-height:1.72}.panel p:last-child{margin-bottom:0}#mission-card .panel{width:min(760px,100%)}.card-desc{max-width:55ch;margin:22px 0 0}#mission-card .panel-actions{margin-top:33px}.note-sheet{position:relative;width:min(630px,100%);max-height:min(88vh,880px);overflow:auto;padding:clamp(30px,5vw,64px);border:1px solid #9f8f6b;background:radial-gradient(circle at 12% 13%,rgba(255,255,244,.8),transparent 35%),repeating-linear-gradient(0deg,transparent 0 21px,rgba(76,63,39,.025) 22px 23px),#e4d8b9;color:#342c20;box-shadow:0 25px 75px #0000008c,inset 0 0 80px #4d361226;transform:rotate(-.35deg);animation:note-in .28s both}.note-sheet:before{position:absolute;inset:12px;content:"";border:1px solid rgba(82,63,34,.27);pointer-events:none}.note-kicker{display:block;margin-bottom:22px;color:#795b35;font-size:.64rem}.note-title{margin:0 0 20px;color:#342a1f;font:700 clamp(2.4rem,5vw,4.4rem)/.95 var(--serif)}.note-body{color:#463c2d;font:500 clamp(1.04rem,1.3vw,1.19rem)/1.62 var(--serif);white-space:pre-line}.note-body p{margin:0 0 14px}.note-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:28px;padding-top:14px;border-top:1px solid rgba(91,72,42,.38);color:#765d41;font:600 .62rem/1.5 var(--mono);letter-spacing:.11em;text-transform:uppercase}#note button{min-height:38px;padding:8px 12px;border-color:#574632;background:#574632;color:#f1e5cc;font-size:.6rem;white-space:nowrap}#note button:hover{border-color:#2f271c;background:#2f271c}#toast{position:absolute;left:50%;bottom:22%;max-width:min(480px,calc(100vw - 36px));transform:translate(-50%);padding:11px 16px;border:1px solid rgba(228,173,105,.4);background:#050e0dd6;color:#f2e8d2;font:600 .74rem/1.45 var(--mono);text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#damage-flash{position:fixed;inset:0;z-index:19;pointer-events:none;opacity:0;background:radial-gradient(circle,transparent 24%,rgba(134,31,25,.5) 100%);transition:opacity .3s}#damage-flash.active{animation:damage .65s ease-out both}.interact-prompt,#interact-prompt{position:fixed;z-index:20;left:50%;bottom:25%;transform:translate(-50%);padding:9px 15px;border:1px solid rgba(230,219,187,.32);background:#071110c7;color:var(--paper);font:600 .7rem var(--mono);letter-spacing:.07em;text-align:center;white-space:nowrap;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.interact-prompt kbd,#interact-prompt kbd{display:inline-block;margin-right:7px;padding:2px 6px;border:1px solid var(--amber);color:var(--amber)}#touch-controls{position:fixed;z-index:18;inset:0;display:none;pointer-events:none;user-select:none;-webkit-user-select:none}#touch-pad{position:absolute;bottom:112px;left:21px;width:108px;height:108px;border:1px solid rgba(240,222,186,.5);border-radius:50%;background:#0814126e;box-shadow:inset 0 0 20px #0000003b,0 8px 24px #0000001a;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);pointer-events:auto;touch-action:none}#touch-pad:before{position:absolute;inset:13px;content:"";border:1px dashed rgba(237,214,176,.3);border-radius:50%;pointer-events:none}#touch-stick{position:absolute;top:50%;left:50%;width:48px;height:48px;transform:translate(-50%,-50%);border:1px solid rgba(255,225,169,.9);border-radius:50%;background:radial-gradient(circle at 35% 30%,#f9c97fa6,#8d5e32ad);box-shadow:0 3px 12px #00000040;pointer-events:none}#touch-controls button{position:absolute;width:54px;height:54px;padding:5px;border:1px solid rgba(238,225,196,.58);border-radius:50%;background:#081211ba;color:#f5e9d0;font:800 .57rem/1.1 Manrope,Arial,sans-serif;letter-spacing:.04em;text-align:center;text-transform:uppercase;box-shadow:0 5px 18px #0000002e;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent}#touch-controls button:active{transform:scale(.92);background:#e4ad697a}#touch-fire{right:22px;bottom:122px;width:78px!important;height:78px!important;border-color:var(--amber)!important;background:#e4ad69e0!important;color:#16221e!important;font-size:.64rem!important;box-shadow:0 0 28px #e4ad692e!important}#touch-fire:active{background:var(--amber-bright)!important}#touch-interact{right:112px;bottom:126px}#touch-reload{right:32px;bottom:216px}#touch-sprint{left:135px;bottom:128px}#touch-pause{top:88px;right:22px;width:42px!important;height:42px!important;font-size:1rem!important}@keyframes title-breathe{0%{transform:scale(1)}to{transform:scale(1.045)}}@keyframes reveal-up{0%{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}@keyframes note-in{0%{opacity:0;transform:rotate(-1deg) scale(.96)}to{opacity:1;transform:rotate(-.35deg) scale(1)}}@keyframes damage{0%{opacity:0}16%{opacity:.95}to{opacity:0}}@media(max-width:780px){#menu{align-items:flex-end}#menu:before{background-position:88% center}#menu:after{background:linear-gradient(0deg,#040a0af7,#040a0ab8 48%,#040a0a2e)}.menu-inner{width:calc(100% - 42px);margin:0 21px 76px;padding-bottom:18px}#menu h1{font-size:clamp(4.4rem,15vw,7.5rem)}.lead{font-size:.87rem;margin-top:23px}.menu-meta{font-size:.55rem}.menu-actions{margin-top:24px}.hud-top{gap:8px}.hud-brand{font-size:.58rem;letter-spacing:.1em}.hud-mission{font-size:1.15rem}.hud-year{font-size:.59rem;letter-spacing:.08em}.hud-objective{top:72px;max-width:calc(100vw - 40px);font-size:.73rem}.hud-bottom{gap:10px}.hud-stat{min-width:70px;padding-left:9px}.hud-value{font-size:1.55rem}#dialogue{bottom:75px;padding:14px 17px}.dialogue-text{font-size:.88rem}}@media(max-width:480px){#menu h1{font-size:clamp(3.9rem,17vw,6rem)}.menu-actions{align-items:stretch}.button,.button-secondary{min-height:44px;padding:10px 15px}.panel-actions{align-items:stretch}.panel-actions>*{flex:1}.panel-actions>button{padding:10px 8px;font-size:.64rem;letter-spacing:.06em;white-space:nowrap}.note-sheet{padding:35px 25px}.note-footer{align-items:flex-start;flex-direction:column}.hud-top{flex-wrap:wrap;align-items:baseline;row-gap:5px}.hud-brand{order:1}.hud-year{order:2}.hud-mission{order:3;flex-basis:100%;font-size:1.14rem;white-space:nowrap}.hud-objective{top:89px}}@media(pointer:coarse){#touch-controls:not(.hidden){display:block}}@media(pointer:coarse)and (max-width:480px){.hud-objective{max-width:calc(100vw - 105px)}}@media(pointer:coarse)and (max-height:650px){#touch-pad{bottom:84px;width:88px;height:88px}#touch-stick{width:40px;height:40px}#touch-fire{bottom:91px;width:70px!important;height:70px!important}#touch-interact{bottom:95px}#touch-reload{bottom:175px}#touch-sprint{bottom:97px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
