:root{--menu-ink:#e4e0d5;--menu-red:#aa302b;--display-font:'FF Confidential','Courier New',monospace}
#intro.main-menu{display:flex;flex-direction:column;isolation:isolate;padding:0;overflow:auto;background:linear-gradient(90deg,#030708f7 0%,#030708db 32%,#03070835 72%),linear-gradient(0deg,#020607f5,transparent 60%);color:var(--menu-ink);min-height:100%;scrollbar-width:thin}
.main-menu::before{content:'';position:absolute;inset:20px;border:1px solid #b8b7a51c;pointer-events:none;z-index:2}
.menu-header{position:relative;display:flex;justify-content:space-between;align-items:start;gap:24px;padding:max(36px,env(safe-area-inset-top)) 5.5vw 0;font:12px/1.6 monospace;letter-spacing:.13em;z-index:3;color:#d4d0c3}
.menu-header small{display:block;font:11px/1.8 monospace;letter-spacing:.08em;color:#828b88;margin-top:4px}.camera-label{text-align:right}.camera-label i,.boot-live i{display:inline-block;width:5px;height:5px;margin:0 8px 2px 0;background:#bd3e34;box-shadow:0 0 12px #c3333066;animation:record-breathe 4s ease-in-out infinite}.camera-label small{font-size:15px;letter-spacing:.16em;color:#b3bab3;font-variant-numeric:tabular-nums}
.menu-content{position:relative;z-index:3;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:36px 0 36px 8vw;width:min(700px,62vw);min-height:620px}
.main-menu .menu-overline{display:flex;align-items:center;gap:12px;margin:0 0 22px;font:12px/1.5 monospace;color:#aba99a;letter-spacing:.16em}.menu-overline>span{width:24px;height:1px;background:#b74239}
.main-menu .game-title{font:700 clamp(82px,9.8vw,146px)/.78 var(--display-font);letter-spacing:-.08em;transform:rotate(-1.3deg);transform-origin:left;color:#e4e0d5;margin:0;text-shadow:1px 2px 0 #000;animation:title-breach 18s 7s infinite;max-width:100%}.main-menu .game-title span{display:block;color:#a6352c;letter-spacing:.12em;font-size:.78em;margin:17px 0 0 3px;text-shadow:1px 2px 0 #000,0 0 40px #8b171b20}
.main-menu .menu-note{font:14px/1.7 monospace;letter-spacing:.01em;margin:27px 0 17px;color:#c0c2b8;max-width:440px}.menu-evidence{display:flex;align-items:center;gap:12px;font:10px/1.5 monospace;letter-spacing:.11em;color:#878f85}.menu-evidence i{height:9px;width:1px;background:#586059}
.menu-options{width:min(355px,100%);margin-top:32px}.menu-nav-label{display:block;font:10px/1.5 monospace;letter-spacing:.2em;color:#777f78;margin-bottom:10px}
.menu-link{position:relative;display:block;width:100%;min-height:44px;padding:10px 13px;text-align:left;text-decoration:none;border:0;border-left:1px solid transparent;border-radius:0;box-shadow:none;background:none;color:#bfc4bd;font:400 15px/1.5 Arial,sans-serif;letter-spacing:.025em;transition:background .2s,color .2s,border-color .2s;touch-action:manipulation}.menu-link:hover,.menu-link:focus-visible{transform:none;color:#fff6e9;border-left-color:#c95c4a;background:linear-gradient(90deg,#9d342428,transparent)}.menu-link:focus-visible,.menu-audio:focus-visible{outline:1px solid #d7bfb2;outline-offset:4px}
.main-menu .main-choice{min-height:56px;display:flex;align-items:center;justify-content:space-between;padding:15px 19px;background:#d9d5c8;color:#121816;font-size:16px;font-weight:700;letter-spacing:.01em;border:1px solid #ede7d2;box-shadow:0 4px 30px #0005}.main-menu .main-choice::after{content:'↗';font:24px/1 monospace;margin-left:12px}.main-menu .main-choice:hover,.main-menu .main-choice:focus-visible{background:#eee8d5;color:#101512;border-color:#fff4d8}.main-menu .main-choice:disabled{background:#363a34;color:#8a9287;border-color:#565f52;cursor:wait}.continue-choice{border:1px solid #8c92765c;color:#dfdcca;margin-bottom:8px}
.menu-secondary{border-bottom:1px solid #88947a2c;padding:10px 0;margin-bottom:16px}.menu-secondary .menu-link::before{content:attr(data-index);display:inline-block;width:30px;font:10px monospace;color:#788378}.training-link small{font:11px monospace;color:#899486;margin-left:15px}
.menu-audio{display:flex;align-items:center;gap:11px;min-height:44px;border:0;border-radius:0;padding:8px 12px;background:none;color:#c4c9be;font:13px monospace;text-align:left;touch-action:manipulation}.menu-audio:hover{color:#f0e6d1;background:#bac4a00b}.menu-audio-note{display:block;font:11px/1.6 monospace;color:#838d82;margin:2px 0 0 12px}.audio-bars{display:flex;align-items:center;gap:2px;width:16px;height:16px}.audio-bars i{width:2px;background:#ba6750;height:3px}.menu-audio[aria-pressed=true] .audio-bars i{animation:audio-bar 1.8s ease-in-out infinite}.audio-bars i:nth-child(2){animation-delay:-.7s!important}.audio-bars i:nth-child(3){animation-delay:-1.1s!important}.audio-bars i:nth-child(4){animation-delay:-.3s!important}
.menu-scene-caption{position:absolute;z-index:1;right:8vw;bottom:24vh;display:flex;flex-direction:column;align-items:flex-end;gap:14px;pointer-events:none;text-shadow:0 2px 12px #000}.menu-scene-caption>span{font:10px/1.6 monospace;letter-spacing:.13em;color:#a7b0a3}.menu-scene-caption b{font:400 clamp(15px,1.6vw,22px)/1.4 var(--display-font);letter-spacing:.12em;color:#c5c5b5;animation:caption-breathe 12s ease-in-out infinite}.menu-scene-caption .signal-level{letter-spacing:.1em;color:#b35b49;opacity:.6}
.menu-footer{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 5.5vw max(30px,env(safe-area-inset-bottom));font:10px/1.5 monospace;color:#929b8d;letter-spacing:.05em}.menu-authors{font-size:10px;color:#6f7c6f}.menu-authors small{display:block;font:12px/1.5 monospace;margin-top:5px;color:#adb4a6;letter-spacing:0}.menu-footer-links{display:flex;gap:24px;align-items:center}.menu-footer a,.menu-footer .install-link{color:#a0ab9d;font:12px/1.5 monospace;text-underline-offset:4px}.menu-footer .menu-fiction{font-size:10px;color:#697b6c;letter-spacing:0}
.menu-texture{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:.13;background:repeating-linear-gradient(0deg,transparent 0 3px,#dae8cf13 3px 4px);mix-blend-mode:screen}.menu-scan{position:absolute;top:-10%;left:0;right:0;height:11%;pointer-events:none;z-index:2;background:linear-gradient(transparent,#adb5a406,transparent);animation:scan-pass 17s linear infinite}
.menu-dialog{background:#0b1010fa;color:var(--menu-ink);border:1px solid #81888345;border-top:2px solid #842c27;padding:40px;width:min(560px,calc(100vw - 36px));max-height:84dvh;overflow:auto;box-shadow:0 25px 90px #000a;border-radius:0}.menu-dialog::backdrop{background:#020405c7;backdrop-filter:blur(6px)}.dialog-kicker{display:block;font:12px/1.5 monospace;letter-spacing:.16em;color:#ac7567}.menu-dialog h2,.pause-card h2{font:400 48px/1.1 var(--display-font);letter-spacing:.015em;margin:20px 0 30px;color:#ddd9ce}.close-dialog{float:right;background:transparent;border:0;color:#b8bcb3;font-size:14px;min-height:44px;padding:0 0 10px 16px;touch-action:manipulation}.control-list{margin:0}.control-list>div{padding:12px 0;border-top:1px solid #79847b30}.control-list dt{font-size:14px;font-weight:700;color:#c7cdc5}.control-list dd{margin:5px 0 0;font-size:14px;line-height:1.5;color:#a9b3aa}.menu-dialog .dialog-note{font:14px/1.7 Arial,sans-serif;margin:24px 0 0;color:#a8aea4}.menu-setting{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:20px 0;border-top:1px solid #79847b30}.menu-setting strong{display:block;font-size:16px;font-weight:500}.menu-setting span{display:block;font-size:14px;line-height:1.5;color:#a2aea0;margin-top:5px}.setting-toggle{border:1px solid #818a7e6b;border-radius:0;padding:11px 14px;min-width:100px;background:#101815;color:#a4ae9e;font-size:14px;min-height:44px}.setting-toggle[aria-pressed=true]{border-color:#b7bd9a;color:#e1e6cc;background:#30392b}
.startup{position:absolute;inset:0;z-index:40;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;color:#d9d8d0;background:radial-gradient(ellipse at 60% 40%,#17201a4d,transparent 65%),#020504}.boot-frame{position:absolute;inset:24px;border:1px solid #aeb49a20;pointer-events:none}.boot-frame::after{content:'';position:absolute;left:0;right:0;top:45%;height:1px;background:#a4b0910d;box-shadow:0 3px #a4b09109}.boot-header,.boot-footer{position:relative;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:43px 6vw;color:#81917d;font:11px/1.6 monospace;letter-spacing:.12em}.boot-live{color:#b09988}.boot-footer{padding-top:0;padding-bottom:max(38px,env(safe-area-inset-bottom));min-height:80px}.boot-footer small{display:block;color:#5f705e;letter-spacing:.14em;font-size:10px;margin-top:5px}
.startup-center{width:min(530px,80vw);margin:auto;text-align:center;position:relative}.startup-place{display:block;font:10px/1.6 monospace;letter-spacing:.16em;color:#879080;margin:0 0 35px;animation:credit-reveal 2.2s both}.boot-prologue{height:25px;margin-bottom:35px;position:relative;font:14px/1.5 monospace;letter-spacing:.04em;color:#bcbca9}.boot-prologue span{position:absolute;inset:0;opacity:0;animation:boot-phrase 1.1s both}.boot-prologue span:nth-child(2){animation-delay:1.1s}.boot-prologue span:nth-child(3){animation:boot-final 1.2s 2.2s both;color:#c79b85}
.startup-title{font:700 clamp(66px,10vw,132px)/.82 var(--display-font);letter-spacing:-.05em;animation:signal-arrive 1.2s 1.7s both;transform:rotate(-1deg)}.startup-title span{display:block;font-size:.77em;letter-spacing:.15em;margin-top:12px;color:#a5342c}.startup-rule{height:2px;width:min(320px,100%);background:#4a53433b;margin:38px auto 12px}.startup-rule i{display:block;background:#ad473b;width:0;height:100%;transition:width .4s ease;box-shadow:0 0 16px #ce4e2630}.boot-loading{width:min(320px,100%);margin:auto;display:flex;justify-content:space-between;align-items:center;gap:10px}.startup .boot-loading p{margin:0;font:11px/1.5 monospace;color:#8f9b86;letter-spacing:0}.boot-loading>span{font:11px/1.5 monospace;color:#aab19b;white-space:nowrap}.startup #skipStartup{position:static;background:none;border:1px solid #75836942;border-radius:0;min-height:44px;padding:10px 15px;color:#b6bdab;font:12px/1.5 monospace;letter-spacing:0;touch-action:manipulation}.startup #skipStartup:hover{background:#71805a12;color:#efe8d8}.startup.leaving{animation:startup-away 1.1s ease forwards;pointer-events:none}.startup.leaving .startup-center{animation:startup-center-away .8s both}
#entryFade{position:absolute;inset:0;background:#020304;z-index:30;pointer-events:none;animation:enter-world 1.15s ease-out forwards}
#pauseScreen{background:#030708e0;backdrop-filter:blur(7px)}.pause-card{width:min(350px,80vw);text-align:left;border-left:1px solid #9c4738;padding-left:28px}.pause-card h2{font-size:72px;margin:20px 0 34px}.pause-card .menu-link{width:100%;margin:10px 0}.pause-card .main-choice{color:#e8dac4}.screen .result-title{font-family:var(--display-font);font-weight:400;letter-spacing:-.02em}.logo{font-family:var(--display-font);font-weight:400;letter-spacing:.03em;font-size:24px}.logo b{font-weight:400}
@keyframes credit-reveal{0%,15%{opacity:0}35%,70%{opacity:1}100%{opacity:.65}}@keyframes boot-phrase{0%{opacity:0;transform:translateY(5px)}20%,75%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-4px)}}@keyframes boot-final{from{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}@keyframes signal-arrive{0%{opacity:0;transform:translateY(8px) rotate(-1deg);filter:blur(8px)}35%{opacity:.7;filter:blur(2px)}45%{opacity:.4;transform:translateX(2px) rotate(-1deg)}60%,100%{opacity:1;transform:rotate(-1deg);filter:blur(0)}}@keyframes startup-away{to{opacity:0}}@keyframes startup-center-away{to{opacity:0;transform:scale(1.025)}}@keyframes enter-world{from{opacity:1}to{opacity:0}}@keyframes title-breach{0%,94%,96%,100%{filter:none;transform:rotate(-1.3deg)}94.4%{filter:drop-shadow(2px 0 #8a3323);transform:translateX(1px) rotate(-1.3deg)}94.8%{filter:drop-shadow(-1px 0 #64877b)}95.1%{transform:rotate(-1.3deg)}}@keyframes record-breathe{0%,100%{opacity:.4}50%{opacity:1}}@keyframes caption-breathe{0%,100%{opacity:.35}45%,65%{opacity:.85}}@keyframes scan-pass{to{transform:translateY(110vh)}}@keyframes audio-bar{0%,100%{height:3px}50%{height:13px}}
@media(min-width:1100px) and (min-height:850px){.menu-content{padding-top:55px;padding-bottom:55px}.menu-options{margin-top:40px}}
@media(max-width:700px){#intro.main-menu{background:linear-gradient(90deg,#030708b8,#03070822),linear-gradient(0deg,#030708fa 0%,#030708e3 37%,#03070855 83%,#030708b8);min-height:100%;}.main-menu::before{inset:12px}.menu-header{padding:max(26px,env(safe-area-inset-top)) 24px 0;gap:12px;font-size:11px}.menu-header small{font-size:9px;letter-spacing:.025em}.menu-header .camera-label{white-space:nowrap}.camera-label small{font-size:12px}.menu-content{width:100%;min-height:0;padding:48px 8vw 26px;justify-content:center;flex:1}.main-menu .menu-overline{font-size:11px;margin:0 0 18px}.main-menu .game-title{font-size:clamp(72px,21vw,110px)}.main-menu .game-title span{margin-top:12px}.main-menu .menu-note{font-size:13px;line-height:1.6;margin:23px 0 13px;max-width:none}.menu-evidence{font-size:9px;gap:9px}.menu-options{width:100%;margin-top:25px}.menu-nav-label{display:none}.menu-secondary{display:grid;grid-template-columns:1fr 1fr;padding:9px 0 7px;margin-bottom:7px}.menu-secondary .training-link{grid-column:1/-1}.menu-secondary .menu-link{font-size:14px;padding:9px 8px}.menu-secondary .menu-link::before{width:23px}.menu-audio{font-size:12px;padding-left:8px}.menu-audio-note{font-size:10px;margin:0 0 0 8px}.menu-scene-caption{display:none}.menu-footer{padding:10px 24px max(23px,env(safe-area-inset-bottom));gap:12px;flex-wrap:wrap;border-top:1px solid #7d8b7422;margin:0 12px}.menu-authors{font-size:9px}.menu-authors small{font-size:10px}.menu-footer-links{gap:16px}.menu-footer a,.menu-footer .install-link{font-size:11px}.menu-footer .menu-fiction{display:none}.menu-dialog{padding:25px}.menu-dialog h2{font-size:40px}.menu-setting{gap:12px}.boot-frame{inset:14px}.boot-header{padding:max(30px,env(safe-area-inset-top)) 27px 30px;font-size:9px;letter-spacing:.04em}.boot-footer{padding:20px 27px max(27px,env(safe-area-inset-bottom));font-size:9px;letter-spacing:.05em}.startup-place{font-size:9px;letter-spacing:.06em;margin-bottom:32px}.boot-prologue{font-size:12px}.startup-title{font-size:clamp(64px,19vw,110px)}.startup #skipStartup{padding:9px 11px;font-size:11px}}
@media(max-height:740px) and (max-width:700px){.menu-content{padding-top:26px;padding-bottom:16px}.main-menu .game-title{font-size:68px}.main-menu .menu-overline{margin-bottom:13px}.main-menu .menu-note{margin-top:19px;margin-bottom:10px}.menu-options{margin-top:18px}.menu-evidence{display:none}.menu-audio-note{display:none}.menu-footer{padding-top:8px}.menu-header{padding-top:23px}.main-menu .main-choice{min-height:50px}.menu-link{min-height:44px}}
@media(max-height:550px) and (min-width:600px){.menu-content{width:100%;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding:25px 7vw 15px;align-items:center}.menu-options{margin:0;max-width:370px}.main-menu .game-title{font-size:clamp(60px,10vw,88px)}.main-menu .menu-overline{font-size:10px;margin-bottom:15px}.main-menu .menu-note{font-size:12px;margin:20px 0 0}.menu-evidence,.menu-scene-caption,.menu-nav-label,.menu-audio-note{display:none}.menu-header{padding-top:22px}.menu-header small{display:none}.menu-secondary{padding:3px 0;margin-bottom:4px}.menu-link{min-height:40px;padding-top:8px;padding-bottom:8px}.main-menu .main-choice{min-height:48px}.menu-footer{padding-top:8px;padding-bottom:20px}.menu-footer .menu-fiction{display:none}.startup-center{width:min(500px,70vw)}.startup-title{font-size:74px}.startup-place{margin-bottom:13px}.boot-prologue{margin-bottom:16px;height:20px}.startup-rule{margin-top:20px}.boot-header{padding-top:23px;padding-bottom:13px}.boot-footer{min-height:50px;padding:12px 6vw 22px}.pause-card h2{font-size:55px;margin:12px 0 25px}}
@media(prefers-reduced-motion:reduce){.startup-title,.startup-place,.boot-prologue span,.startup.leaving,.startup.leaving .startup-center,.game-title,.menu-scan,.camera-label i,.boot-live i,.audio-bars i,.menu-scene-caption b,#entryFade{animation:none!important;transition:none!important}.boot-prologue span{display:none}.boot-prologue span:last-child{display:block;opacity:1}.startup-title,.startup-place{opacity:1}.menu-link,.startup-rule i{transition:none}}
.reduced-motion .startup-title,.reduced-motion .startup-place,.reduced-motion .boot-prologue span,.reduced-motion .startup.leaving,.reduced-motion .startup.leaving .startup-center,.reduced-motion .game-title,.reduced-motion .menu-scan,.reduced-motion .camera-label i,.reduced-motion .boot-live i,.reduced-motion .audio-bars i,.reduced-motion .menu-scene-caption b,.reduced-motion #entryFade{animation:none!important;transition:none!important}.reduced-motion .boot-prologue span{display:none}.reduced-motion .boot-prologue span:last-child{display:block;opacity:1}.reduced-motion .startup-title,.reduced-motion .startup-place{opacity:1}
.install-link{padding:0;background:none;border:0;color:#939b95;font:12px/1.5 'Courier New',monospace;text-decoration:underline;text-underline-offset:4px;min-height:44px;touch-action:manipulation}.install-sheet{position:fixed;inset:auto 0 0;margin:0 auto;width:min(520px,100%);max-width:100%;max-height:85dvh;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;padding:25px 26px max(24px,env(safe-area-inset-bottom));background:#101618;color:#e8e7df;border:1px solid #4e5350;border-bottom:0;border-top:2px solid #ab3a31;border-radius:18px 18px 0 0;box-shadow:0 -15px 65px #0009;text-align:left}.install-sheet::backdrop{background:#0007}.install-close{position:absolute;right:12px;top:10px;min-width:44px;min-height:44px;background:none;border:0;font:28px/1 Arial,sans-serif;color:#c6ccc5;touch-action:manipulation}.install-heading{display:flex;gap:13px;align-items:center;padding-right:30px}.install-heading img{border-radius:11px;flex:none}.install-heading span{font:11px/1.4 'Courier New',monospace;letter-spacing:.09em;color:#a6ada5}.install-sheet h2{font:600 21px/1.25 Arial,sans-serif;margin:5px 0 0;color:#efede5}.install-sheet p{font:14px/1.5 Arial,sans-serif;color:#a7b1a8;margin:17px 0}.install-sheet ol{padding-left:24px;margin:18px 0 22px;font:16px/1.5 Arial,sans-serif}.install-sheet li{padding-left:5px;margin:13px 0}.install-sheet li::marker{color:#cf7567;font-weight:700}.install-sheet small{display:block;font-size:13px;line-height:1.5;color:#aab3aa;margin-top:3px}.install-sheet svg{display:inline-block;vertical-align:middle;margin:0 2px;color:#d0d9d2}.install-done{width:100%;min-height:46px;border:1px solid #8b4b40;border-radius:6px;background:#392622;color:#f1e7db;font-weight:600;touch-action:manipulation}@media(max-height:540px){.install-sheet{max-height:90dvh;padding-top:18px}.install-sheet li{margin:9px 0}}

/* Temporary distressed type until the licensed FF Confidential webfont is supplied. */
.game-title,.startup-title{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='173' height='91'%3E%3Crect width='173' height='91' fill='white'/%3E%3Cpath d='M7 12h3v1H7zM34 57h2v2h-2zM68 23h4v1h-4zM103 71h3v2h-3zM136 38h5v1h-5zM163 83h2v2h-2zM28 32h1v3h-1zM87 47h3v1h-3z' fill='black'/%3E%3C/svg%3E");mask-mode:luminance;mask-repeat:repeat}

#intro.main-menu,.menu-dialog{touch-action:pan-y;overscroll-behavior:contain}

#game .tribute-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow-y:auto;padding:clamp(24px,5vw,38px)}
#game .tribute-dialog h2{font-size:clamp(26px,5vw,36px);line-height:1.2;margin:16px 0 22px}
#game .tribute-dialog p{font-size:1rem;line-height:1.65;margin:0 0 18px;letter-spacing:normal}
#game .tribute-dialog .dialog-kicker{font-size:12px}
#game .tribute-dialog .start-button{width:100%;min-height:48px;margin-top:6px}
