@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap";:root{color:#e8e5d5;font-synthesis:none;--cream:#e9e3cd;--muted:#859994;--red:#ef7858;--line:#ffffff12;--mint:#a9c4b2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#111b21;font-family:DM Sans,Arial,sans-serif;font-weight:400}*{box-sizing:border-box}body{background:radial-gradient(at 50% 40%,#243a3b 0,#131f26 65%,#10191f 100%);min-width:320px;min-height:100vh;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline-offset:5px;outline:2px solid #f7c77c}button{transition:background .18s,border-color .18s,transform .18s}button:hover:not(:disabled){filter:brightness(1.09)}a{color:inherit;text-decoration:none}.hidden{display:none!important}.masthead{justify-content:space-between;align-items:center;gap:20px;max-width:1440px;height:98px;margin:auto;padding:0 48px;display:flex}.brand{letter-spacing:.06em;align-items:center;gap:12px;font-size:13px;font-weight:800;display:flex}.brand-icon{background:var(--red);color:#1d292b;letter-spacing:-.1em;place-items:center;width:37px;height:39px;padding-right:3px;font-family:Barlow Condensed,Impact,sans-serif;font-size:25px;font-weight:800;display:grid;transform:skew(-6deg)}.brand small{color:var(--muted);letter-spacing:.24em;margin-top:5px;font:9px monospace;display:block}.masthead-center{letter-spacing:.13em;color:#94a69e;align-items:center;gap:9px;font:9px monospace;display:flex}.live-dot{background:#b9c3a4;border-radius:50%;width:5px;height:5px;box-shadow:0 0 8px #b9c3a435}nav{align-items:center;gap:7px;display:flex}nav button{color:#9eb0a8;background:0 0;border:1px solid #0000;padding:8px 10px;font-size:16px}nav button span{margin-left:5px;font-size:11px}nav button:hover{border-color:var(--line);background:#ffffff08}main{max-width:1440px;margin:auto;padding:0 48px 22px}.game-frame{aspect-ratio:16/9;isolation:isolate;background:#132932;border:1px solid #718c763d;border-radius:5px 5px 0 0;width:100%;position:relative;overflow:hidden;box-shadow:0 25px 100px #0005;container-type:inline-size}#game{position:absolute;inset:0}#game canvas{image-rendering:pixelated;touch-action:none;display:block}.grain{pointer-events:none;z-index:1;opacity:.15;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#061e2722 3px 4px);position:absolute;inset:0}#selection{z-index:2;position:absolute;inset:0}.selection-wash{pointer-events:none;background:linear-gradient(90deg,#142830f5 0%,#142830e8 34%,#14283060 64%,#14283000 90%),linear-gradient(#0e242d00 60%,#0e242d 100%);position:absolute;inset:0}.intro-copy{max-width:57%;position:absolute;top:6%;left:4.5%}.intro-kicker{letter-spacing:.18em;color:#b4c1b0;align-items:center;gap:10px;font:700 clamp(8px,.88cqw,12px) monospace;display:flex}.intro-kicker>span{background:var(--red);width:6px;height:6px;display:block}h1{letter-spacing:-.025em;text-shadow:0 4px #081f2430;margin:2.2cqw 0 1.45cqw;font-family:Barlow Condensed,Impact,Arial Narrow,sans-serif;font-size:8.9cqw;font-weight:800;line-height:.91}h1 em{color:#f17e59;font-style:normal}.intro-copy>p{color:#bdc9bc;margin:0;font-size:1.32cqw;line-height:1.65}.intro-detail{letter-spacing:.1em;color:#91a79e;align-items:center;gap:12px;margin-top:1.9cqw;font:700 .64cqw monospace;display:flex}.intro-detail>span{color:#ddbea1;letter-spacing:-.1em;font-size:1.5cqw}.scene-caption{text-align:right;flex-direction:column;gap:3px;display:flex;position:absolute;top:5.6%;right:6.2%}.scene-caption>span{letter-spacing:.12em;color:#d9cdae;font:700 .67cqw monospace}.scene-caption strong{color:#e7d9b5;font:700 4cqw Barlow Condensed,Impact,sans-serif}.scene-caption small{color:#c1c8ae;font-size:.76cqw}.cast{position:absolute;bottom:4.1%;left:4.5%;right:4.5%}.cast-heading{letter-spacing:.11em;color:#e1d9bd;justify-content:space-between;margin-bottom:1cqw;font:700 .7cqw monospace;display:flex}.cast-heading>span:last-child{color:#8da59b}.character-cards{grid-template-columns:repeat(3,1fr);gap:1.3cqw;display:grid}.character-card{text-align:left;border:1px solid #7a9b7955;border-top:2px solid var(--person-color);background:#193037eb;border-radius:2px;align-items:center;gap:1.05cqw;min-height:8.2cqw;padding:1.1cqw 1.2cqw;display:flex;position:relative;box-shadow:0 6px 14px #0a1b2533}.character-card:hover:not(:disabled){border-color:var(--person-color);background:#2e4749;transform:translateY(-4px)}.card-portrait{background:linear-gradient(0deg, color-mix(in srgb, var(--person-color) 13%, transparent), transparent);flex-shrink:0;place-items:center;width:4.5cqw;height:5.8cqw;display:grid}.card-portrait img{height:100%;image-rendering:pixelated}.card-text{flex-direction:column;gap:.4cqw;display:flex}.eyebrow{letter-spacing:.13em;color:#97afa2;font:700 9px monospace}.card-text .eyebrow{letter-spacing:.07em;color:var(--person-color);font-size:.61cqw}.card-text strong{letter-spacing:.02em;font:700 2.2cqw Barlow Condensed,Impact,sans-serif}.card-location{color:#9aafa4;margin-top:.2cqw;font:700 .63cqw monospace}.card-arrow{color:var(--person-color);font-size:1.55cqw;position:absolute;top:1.1cqw;right:1.1cqw}.character-card.complete{opacity:.5;background:#15332e}.cast-note{text-align:center;color:#91a99c;letter-spacing:.03em;margin:1.2cqw 0 0;font:10px monospace}.resume-button{background:var(--red);color:#202d30;border:1px solid #ed9772;border-radius:2px;justify-content:space-between;align-items:center;gap:22px;padding:12px 17px;font-size:12px;font-weight:800;display:flex}.intro-copy .resume-button{margin-top:1.5cqw;padding:.9cqw 1.3cqw;font-size:1cqw}.cast>.resume-button{margin:12px auto 0}.game-footer{background:#18292f;border:1px solid #718c763d;border-top:0;border-radius:0 0 5px 5px;align-items:center;gap:22px;min-height:90px;padding:12px 22px;display:flex}.journey{align-items:center;gap:10px;display:flex}.journey-person{text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:5px 8px;display:flex;position:relative}.journey-person img{object-fit:contain;width:27px;height:41px;image-rendering:pixelated;opacity:.4}.journey-person>span{color:#9caf9f;font-size:12px;font-weight:700}.journey-person small{letter-spacing:.05em;color:#647d75;white-space:nowrap;margin-top:6px;font:7px monospace;display:block}.journey-person.active{background:#b6c3a70c;border-color:#e3b77266}.journey-person.active img,.journey-person.arrived img{opacity:1}.journey-person.active>span{color:#dfd6b9}.journey-person .check{color:#b6d0a4;font-size:9px;position:absolute;top:0;right:0}.route-end{color:#476761;white-space:nowrap;font-size:16px}.route-end span{color:#bbbc92;margin-left:5px;font-size:22px}.inventory{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:6px;display:flex}.inventory>.eyebrow{text-align:right;width:100%;margin-bottom:2px;font-size:7px}.empty-bag{color:#718e83;font:10px monospace}.bag-item{color:#c6c9ac;background:#273e3b;border:1px solid #7d967632;border-radius:3px;padding:6px 9px;font-size:10px}#points-button{border:1px solid var(--line);color:#b1bdab;white-space:nowrap;background:0 0;padding:8px;font-size:15px}#points-button span{font-size:10px}.points{border:1px solid var(--line);background:#1b3237;border-top:0;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px;display:flex}.points button{text-align:left;background:#28423f;border:1px solid #82987655;padding:10px 13px;font-size:11px}.points button span{color:#e0bb7d;margin-left:18px}.page-footer{color:#6e897f;letter-spacing:.1em;justify-content:space-between;align-items:center;gap:10px;margin-top:20px;font:8px monospace;display:flex}.page-footer>span:last-child{letter-spacing:0;font-size:9px}kbd{font:inherit;color:#bdc5ad;border:1px solid #91a68c38;border-radius:2px;padding:3px 6px;font-size:10px}.footer-separator{color:#3e6158;margin:0 9px}#hud{z-index:2;pointer-events:none;padding:2.5%;position:absolute;inset:0}.location-tag{text-shadow:0 2px 5px #000;align-items:center;gap:12px;font:700 .77cqw monospace;display:flex}.location-tag>span:first-child{color:#1e383b;background:#d9d3ae;padding:5px 8px}.location-tag>span:last-child{color:#d2dac1;letter-spacing:.11em}.objective-card{background:#152b31ee;border:1px solid #83998038;border-left:2px solid #e7bc73;align-items:center;gap:10px;max-width:43%;margin-top:1.2cqw;padding:1cqw 1.3cqw;display:flex;box-shadow:0 5px 20px #0d252733}.objective-card p{color:#e8e0c4;margin:5px 0 0;font-size:1.1cqw;line-height:1.5}.objective-icon{color:#edc27e;font-size:28px}.screening-tag{color:#c5cdb2;letter-spacing:.05em;background:#183239bf;border:1px solid #b4ae7430;align-items:center;gap:14px;padding:10px 14px;font:700 .7cqw monospace;display:flex;position:absolute;top:2.5%;right:2.5%}.screening-tag big{color:#efdab2;margin-top:1px;font:700 2.5cqw Barlow Condensed,Impact,sans-serif;display:block}.ticket-icon{color:#efb973;font-size:27px}.context-row{justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;bottom:3%;left:2.5%;right:2.5%}.context-row>span{color:#c7d0bb;background:#142d32cf;padding:9px 12px;font:9px monospace}.context-row button{pointer-events:auto;color:#e5dabe;background:#183137f2;border:1px solid #aeb9936e;border-bottom:3px solid #718e76;align-items:center;gap:10px;min-width:170px;padding:10px 14px;font-size:11px;display:flex}.context-row button:disabled{opacity:.45;border-color:#718e7655}.context-row button kbd{color:#263e3c;background:#d7d0a7;border:none;padding:4px 7px;font-weight:700}#dialogue{z-index:5;background:#132b32f7;border:1px solid #a3b19066;border-top:2px solid #dcb87a;border-radius:3px;gap:22px;padding:22px 25px;display:flex;position:absolute;bottom:5%;left:5%;right:5%;box-shadow:0 10px 60px #071a2299}.dialog-portrait{border-bottom:2px solid var(--person-color);background:linear-gradient(#0000,#9aa57e22);flex-shrink:0;align-self:stretch;place-items:center;width:64px;min-height:89px;display:grid}.dialog-portrait img{width:56px;image-rendering:pixelated}.dialog-portrait>span{color:#b5b998;font-family:serif;font-size:38px}.dialog-copy .eyebrow{color:#e6be7c;font-size:10px}.dialog-copy p{color:#dedfc8;max-width:760px;margin:9px 0 17px;font-size:14px;line-height:1.7}.answers{flex-wrap:wrap;gap:8px;display:flex}.answer{text-align:left;color:#bfcbb5;background:0 0;border:1px solid #a4b19147;padding:10px 14px;font-size:11px}.answer.primary{color:#20383a;background:#daca9f;border-color:#daca9f;font-weight:700}.answer:hover{transform:translateY(-1px)}#toast{z-index:7;opacity:0;color:#28413e;letter-spacing:.06em;text-align:center;pointer-events:none;white-space:nowrap;background:#eddbab;border:1px solid #f8e9bb;max-width:85%;padding:12px 20px;font:700 10px monospace;transition:opacity .25s,transform .25s;position:absolute;top:25%;left:50%;transform:translate(-50%,-10px);box-shadow:0 4px 30px #0005}#toast.visible{opacity:1;transform:translate(-50%)}#loading{z-index:10;letter-spacing:.1em;color:#e0ce9f;background:#182e36;flex-direction:column;justify-content:center;align-items:center;gap:17px;font:14px monospace;display:flex;position:absolute;inset:0}#loading span{color:#8aa798;letter-spacing:0;font:11px sans-serif}#ending{z-index:3;pointer-events:none;position:absolute;inset:0}.ending-top{background:#193037ef;border-left:2px solid #d0b17b;max-width:35%;padding:18px 20px;position:absolute;top:5%;left:5%}.ending-top h2{color:#efdbc0;margin:10px 0;font:700 4cqw/.97 Barlow Condensed,Impact,sans-serif}.ending-top p{color:#a8bdaa;font-size:1cqw;line-height:1.6}.ending-bottom{background:#173039f0;border:1px solid #b0b99155;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;display:flex;position:absolute;bottom:5%;left:5%;right:5%}.ending-bottom p{color:#d3d5b9;margin-bottom:0;font-size:12px}.ending-bottom button{pointer-events:auto}.ending-bottom b{color:#e8ba7a;font-size:10px}dialog{color:#d7dec9;background:#1d343b;border:1px solid #9aaa8866;border-radius:4px;width:min(520px,90vw);padding:35px;box-shadow:0 20px 100px #0008}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#071923cc}dialog h2{color:#ecdcba;margin:15px 0;font:700 38px Barlow Condensed,Impact,sans-serif}dialog p{color:#b1c3b1;font-size:13px;line-height:1.75}.close-modal{color:#aec3ae;background:0 0;border:0;font-size:25px;position:absolute;top:10px;right:15px}.help-grid{grid-template-columns:1fr 1fr;gap:22px 25px;margin:26px 0;display:grid}.help-grid b{color:#ebc483;margin-bottom:6px;font-size:12px;display:block}.help-grid span{color:#b5c2ac;font-size:12px;line-height:1.5}.small{font-size:11px!important}.subtle-button{color:#d19978;background:0 0;border:0;border-bottom:1px solid #c9896244;margin-top:10px;padding:6px 0;font-size:11px}@media (width>=1600px){.masthead{height:115px}main{padding-bottom:40px}}@media (width<=1050px){.masthead{height:78px;padding:0 24px}.masthead-center{display:none}main{padding:0 24px 20px}.game-footer{gap:10px;padding:10px}.journey{gap:0}.journey-person{gap:5px;padding:4px}.journey-person>span{font-size:10px}.journey-person small{font-size:6px}.journey-person img{width:22px;height:34px}.route-end{display:none}.empty-bag{font-size:8px}.inventory{gap:3px}.bag-item{padding:5px 6px;font-size:8px}.page-footer>span:first-child{font-size:7px}.context-row>span{font-size:8px}.dialog-copy p{font-size:12px}#dialogue{gap:13px;padding:17px 20px}.dialog-portrait{width:48px}.dialog-portrait img{width:42px}.answer{padding:8px 10px;font-size:10px}.cast-note{font-size:8px}}@media (width<=680px){.masthead{height:65px;padding:0 14px}.brand{gap:8px;font-size:10px}.brand-icon{width:29px;height:31px;font-size:21px}.brand small{font-size:7px}nav{gap:0}nav button{padding:7px}nav button span{display:none}main{padding:0 12px 14px}.game-frame:has(#selection:not(.hidden)){aspect-ratio:auto;height:620px}.game-frame:has(#selection:not(.hidden)) #game{height:310px;top:70px}.selection-wash{background:linear-gradient(90deg,#142830ce,#14283020),linear-gradient(#14283000 20%,#142830 65%)}.intro-copy{max-width:90%;top:5%;left:6%}.intro-kicker{font-size:8px}h1{margin:22px 0 15px;font-size:61px}.intro-copy>p{font-size:12px}.intro-detail{display:none}.scene-caption{gap:4px;top:36%;right:7%}.scene-caption>span{font-size:7px}.scene-caption strong{font-size:30px}.scene-caption small{display:none}.cast{bottom:4%;left:6%;right:6%}.cast-heading{letter-spacing:0;gap:8px;margin-bottom:12px;font-size:7px}.character-cards{grid-template-columns:1fr;gap:8px}.character-card{gap:16px;min-height:70px;padding:10px 14px}.card-portrait{width:38px;height:48px}.card-text .eyebrow{font-size:7px}.card-text{gap:2px}.card-text strong{font-size:23px}.card-location{font-size:7px}.card-arrow{font-size:21px;top:22px;right:16px}.cast-note{margin-top:13px;font-size:8px}.intro-copy .resume-button{margin-top:13px;padding:9px 12px;font-size:10px}.game-footer{flex-wrap:wrap;gap:10px;padding:10px 9px}.journey{flex:1;justify-content:space-between}.journey-person{gap:5px;padding:3px 4px}.journey-person img{width:22px;height:33px}.journey-person>span{font-size:10px}.journey-person small{letter-spacing:0;font-size:5px}.inventory{flex-basis:100%;justify-content:flex-start}.inventory>.eyebrow{width:auto;margin-right:5px;font-size:6px}.empty-bag,.bag-item{font-size:8px}.page-footer{justify-content:center;margin-top:13px}.page-footer>span:first-child{display:none}.page-footer>span:last-child{font-size:8px}.game-frame:not(:has(#selection:not(.hidden))){aspect-ratio:1;overflow:visible}.game-frame:not(:has(#selection:not(.hidden))) #game{inset:50px 0 45px}.grain{display:none}#hud{padding:12px}.location-tag{gap:6px;font-size:7px}.location-tag>span:first-child{padding:4px 5px}.location-tag>span:last-child{letter-spacing:0}.objective-card{gap:6px;max-width:calc(100% - 80px);margin-top:7px;padding:6px 8px}.objective-icon{font-size:20px}.objective-card .eyebrow{font-size:5px}.objective-card p{margin:3px 0 0;font-size:9px;line-height:1.4}.screening-tag{gap:4px;padding:5px 7px;font-size:6px;top:41px;right:12px}.ticket-icon{display:none}.screening-tag big{font-size:21px}.context-row{bottom:12px;left:12px;right:12px}.context-row>span{display:none}.context-row button{min-width:0;margin-left:auto;padding:6px 9px;font-size:9px}.context-row button kbd{font-size:8px}.context-row:before{content:"TAP TO WALK";color:#86a89c;font:7px monospace}#dialogue{gap:10px;max-height:90%;padding:13px 12px;bottom:8px;left:8px;right:8px;overflow-y:auto}.dialog-portrait{width:29px;min-height:60px}.dialog-portrait img{width:28px}.dialog-portrait>span{font-size:22px}.dialog-copy .eyebrow{font-size:8px}.dialog-copy p{margin:7px 0 10px;font-size:11px;line-height:1.5}.answers{gap:5px}.answer{padding:8px;font-size:9px}.points{justify-content:flex-start}.points button{padding:9px;font-size:10px}#points-button{padding:5px 7px;font-size:13px;position:static}#points-button span{font-size:8px}#toast{white-space:normal;width:max-content;padding:10px 12px;font-size:8px;top:32%}.ending-top{max-width:70%;padding:9px 12px;top:12px;left:12px}.ending-top .eyebrow{font-size:7px}.ending-top h2{margin:5px 0;font-size:27px}.ending-top p{margin:5px 0;font-size:9px}.ending-bottom{gap:10px;padding:11px;bottom:8px;left:8px;right:8px}.ending-bottom .eyebrow{font-size:6px}.ending-bottom p{margin-top:4px;font-size:8px}.ending-bottom b{font-size:7px}.ending-bottom button{padding:10px;font-size:9px}.cast>.resume-button{margin-top:10px;padding:9px;font-size:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.luifa-game .screening-tag{display:none}#luifa-status{z-index:3;pointer-events:none;background:#152b32f0;border:1px solid #bba77c55;max-width:43%;padding:10px 13px;position:absolute;top:3%;right:2.5%;box-shadow:0 8px 26px #071b2433}.snack-counters{justify-content:space-between;gap:17px;display:flex}.snack-counters>span{grid-template-columns:27px auto;align-items:center;gap:1px 6px;display:grid}.snack-counters img{width:27px;height:27px;image-rendering:pixelated;grid-row:span 2}.snack-counters b{color:#eed3a4;font:700 12px monospace}.snack-counters small{color:#a9bca8;font:8px monospace}.rail-delay{color:#bcc6ab;border-top:1px solid #a8b08830;align-items:center;gap:12px;margin-top:8px;padding-top:8px;font:8px monospace;display:flex}.rail-delay b{color:#eea180;font-size:12px}.rail-delay span{letter-spacing:.05em;font-size:6px}.combat-stats{color:#b1c2b0;border-top:1px solid #a8b08830;flex-wrap:wrap;gap:7px 16px;margin-top:8px;padding-top:8px;font:8px monospace;display:flex}.combat-stats>span:first-child{justify-content:space-between;align-items:center;width:100%;display:flex}.combat-stats b{color:#edaa87;letter-spacing:4px;font-size:15px}#combat-controls{z-index:4;gap:7px;display:flex;position:absolute;bottom:3%;left:2.5%}#combat-controls button{color:#ead6b2;background:#1a333af2;border:1px solid #ceba8790;border-bottom:3px solid #9a895f;padding:10px 11px;font-size:10px}#combat-controls kbd{margin-right:6px;font-size:8px}.luifa-game .context-row>span{display:none}.luifa-game .context-row{justify-content:flex-end}#crew-dialog{width:min(880px,94vw)}.crew-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.crew-grid article{border-top:2px solid var(--person-color);padding-top:16px}.crew-portrait{background:linear-gradient(#0000,#89a48b22);border-bottom:1px solid #9ead8233;justify-content:center;align-items:flex-end;height:215px;display:flex}.crew-portrait img{height:210px;image-rendering:pixelated}.crew-grid h3{color:var(--person-color);margin:14px 0 6px;font:700 29px Barlow Condensed,Impact,sans-serif}@media (width<=1050px){#luifa-status{max-width:44%;padding:8px}.snack-counters{gap:9px}.snack-counters>span{grid-template-columns:21px auto;gap:1px 4px}.snack-counters img{width:21px;height:21px}.snack-counters b{font-size:10px}.snack-counters small{font-size:7px}.rail-delay span{display:none}.combat-stats{font-size:7px}.combat-stats b{letter-spacing:2px;font-size:12px}#combat-controls button{padding:8px;font-size:9px}#combat-controls kbd{margin-right:4px;font-size:7px}}.luifa-game .objective-card{padding:.7cqw 1cqw}@media (width<=680px){.game-frame.luifa-game:not(:has(#selection:not(.hidden))){aspect-ratio:auto;height:550px}.game-frame.luifa-game:not(:has(#selection:not(.hidden))) #game{inset:105px 0 130px}.luifa-game .objective-card{max-width:100%}.luifa-game .objective-card p{font-size:10px}.luifa-game #luifa-status{max-width:100%;padding:9px 10px;inset:auto 12px 98px}.snack-counters{gap:8px}.snack-counters>span{grid-template-columns:26px auto}.snack-counters img{width:26px;height:26px}.snack-counters b{font-size:11px}.snack-counters small{font-size:8px}.rail-delay span{font-size:6px;display:block}.combat-stats{gap:4px 12px;margin-top:6px;padding-top:6px;font-size:7px}.combat-stats b{font-size:12px}#combat-controls{gap:6px;bottom:51px;left:12px;right:12px}#combat-controls button{flex:1;padding:10px 5px;font-size:9px}#combat-controls kbd{display:none}.crew-grid{grid-template-columns:1fr;gap:15px}.crew-grid article{grid-template-columns:90px 1fr;column-gap:16px;padding-top:12px;display:grid}.crew-portrait{grid-row:span 3;height:150px}.crew-portrait img{height:145px}.crew-grid h3{margin:8px 0 5px}.crew-grid p{margin-top:8px;font-size:10px}#crew-dialog{padding:25px}#crew-dialog h2{font-size:30px}}@media (width>=681px){.masthead,main{max-width:min(1440px,177.778svh - 245.334px)}.masthead{height:76px}.game-footer{min-height:72px}.page-footer{margin-top:15px}main{padding-bottom:15px}}@media (width>=681px) and (height<=760px){.masthead-center{display:none}.game-footer{gap:9px;padding:8px 10px}.journey{gap:0}.journey-person{gap:5px;padding:3px 4px}.journey-person>span{font-size:10px}.journey-person small{font-size:6px}.journey-person img{width:22px;height:33px}.route-end{display:none}.empty-bag,.bag-item{font-size:8px}.page-footer>span:first-child{font-size:6px}.page-footer>span:last-child{font-size:8px}.card-text .eyebrow,.card-location,.cast-heading{font-size:7px}.cast-note{font-size:8px}.dialog-copy p{font-size:12px}.dialog-copy .eyebrow{font-size:9px}#dialogue{gap:12px;padding:16px 18px}.dialog-portrait{width:43px}.dialog-portrait img{width:40px}.answer{padding:8px 10px;font-size:10px}.context-row>span{font-size:8px}}#dialogue{color:#203340;z-index:20;background:#f3ecd3;border:5px solid #253a46;border-radius:12px;outline:3px solid #e8d39d;gap:24px;max-height:calc(100% - 35px);padding:24px 28px;bottom:20px;left:22px;right:22px;overflow-y:auto;box-shadow:inset 0 0 0 3px #b5b3a3,0 9px #0f222b,0 18px 60px #0007}.dialog-portrait{background:#d4d3bf;border:2px solid #8b998b;border-radius:5px;align-self:flex-start;width:92px;min-height:126px}.dialog-portrait img{width:86px}.dialog-portrait>span{color:#4c636a;font-size:52px}.dialog-copy{min-width:0}.dialog-copy .eyebrow{letter-spacing:.06em;color:#50645f;font:800 16px DM Sans,Arial,sans-serif}.dialog-copy p{color:#20333e;max-width:none;margin:12px 0 17px;font:500 clamp(19px,1.7vw,25px)/1.45 DM Sans,Arial,sans-serif}.answers{grid-template-columns:1fr;gap:7px;display:grid}.answer,.answer.primary{color:#344951;min-height:46px;box-shadow:none;background:#e8e1c8;border:2px solid #0000;border-radius:5px;padding:10px 15px 10px 37px;font:600 19px/1.3 DM Sans,Arial,sans-serif;position:relative}.answer.selected,.answer:focus-visible{color:#fff2cc;background:#243d49;border-color:#deac62;outline:none}.answer.selected:before{content:"▶";color:#ffd995;font-size:14px;position:absolute;top:13px;left:13px}.answer:hover{border-color:#b09159;transform:none}.dialog-keys{color:#657268;align-items:center;gap:7px;margin-top:13px;font:600 14px DM Sans,Arial,sans-serif;display:flex}.dialog-keys kbd{color:#354b53;background:#ddd8bf;border:1px solid #abb19f;border-bottom:3px solid #8e9c90;border-radius:3px;padding:3px 7px;font-size:13px}.dialog-keys>span{color:#344e59;margin-left:auto}#control-guide{color:#243b43;background:#e7d7ac;border:1px solid #bb9e67;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 22px;padding:17px 20px;font-size:14px;line-height:1.4;display:flex}#control-guide>b{letter-spacing:.07em;font:800 13px monospace}#control-guide>span{align-items:center;gap:6px;display:inline-flex}#control-guide kbd{color:#203a43;background:#f4eedb;border:1px solid #647b77;border-bottom:3px solid #536b69;border-radius:4px;padding:5px 8px;font:700 13px monospace}#combat-controls{gap:10px;bottom:19px;left:24px}#combat-controls button{color:#f4e5bb;background:#203e49;border:2px solid #b3b69a;min-height:46px;padding:10px 14px;font-size:15px}#combat-controls kbd{color:#fff2cd;background:#49656a;padding:4px;font-size:12px;display:inline-block}.context-row button{min-height:44px;font-size:14px}.context-row button kbd{font-size:13px}.points button{min-height:44px;font-size:15px}.objective-card p{font-size:clamp(14px,1.2vw,18px)}.objective-card .eyebrow{font-size:10px}.location-tag{font-size:11px}#luifa-status{max-width:44%;font-size:13px}.snack-counters b{font-size:17px}.snack-counters small{font-size:11px}.combat-stats{font:12px DM Sans,Arial,sans-serif}.combat-stats b{font-size:16px}.rail-delay{font-size:12px}.rail-delay span{font-size:9px}.chase-shortcut{color:#263b40;background:#e7bd78;border:1px solid #f3d7a3;border-radius:3px;margin:13px auto 0;padding:11px 19px;font-size:15px;font-weight:700;display:block}.chase-shortcut span{margin-left:22px}.chase-shortcut:hover{background:#f2d6a4}.cast-note{font-size:12px}#race-panel{pointer-events:none;z-index:3;position:absolute;inset:0}#race-boss{background:#293544ed;border-left:4px solid #d6a158;flex-direction:column;gap:3px;padding:12px 18px;display:flex;position:absolute;top:19px;left:25px;box-shadow:0 7px #121f29aa}#race-boss>span{letter-spacing:.13em;color:#e4b173;font:700 11px monospace}#race-boss strong{color:#f4e5c3;letter-spacing:.03em;font:800 30px Barlow Condensed,Impact,sans-serif}#race-boss small{color:#c6c3af;font-size:11px}.boss-reveal{animation:.3s 3 alternate boss-pulse}@keyframes boss-pulse{to{border-color:#ffe3a2;transform:scale(1.06)}}#race-status{color:#f1d895;background:#203841f2;border:1px solid #a6b9a16b;border-bottom:3px solid #d8b571;grid-template-columns:repeat(3,auto);gap:5px 24px;min-width:43%;padding:14px 20px;font:700 24px monospace;display:grid;position:absolute;top:19px;right:25px}#race-status small{letter-spacing:.07em;color:#becdbe;margin-top:6px;font:700 10px DM Sans,Arial,sans-serif;display:block}.race-hearts{color:#efa082;font-size:21px}.race-money{color:#ffdb77}.race-progress{background:#112b36;grid-column:1/-1;height:5px;margin-top:7px}.race-progress i{background:#a8c99d;height:100%;transition:width .5s linear;display:block}#race-tax{text-align:center;color:#f2d6a4;text-shadow:0 2px 3px #13242c;font:700 14px monospace;position:absolute;top:133px;left:25px;right:25px}#lane-controls{pointer-events:auto;grid-template-columns:repeat(3,1fr);gap:10px;display:grid;position:absolute;bottom:16px;left:20%;right:20%}#lane-controls button{color:#c4d3c4;background:#203f4aef;border:2px solid #6a8b86;border-bottom-width:5px;border-radius:6px;min-height:65px;padding:10px 13px;font-size:17px;font-weight:800}#lane-controls button small{color:#abbfad;margin-top:5px;font:700 10px monospace;display:block}#lane-controls button[aria-pressed=true]{color:#203b44;background:#e0ca93;border-color:#ffe6af}#lane-controls button[aria-pressed=true] small{color:#39575b}#lane-controls button[data-danger=tax]{border-color:#edbd62}#lane-controls button[data-danger=obstacle]{border-color:#d98b77}#lane-controls button[data-danger=tax] small{color:#e8b44e}#lane-controls button[data-danger=obstacle] small{color:#d87d67}@media (width<=900px){#dialogue{gap:15px;padding:18px}.dialog-portrait{width:68px;min-height:105px}.dialog-portrait img{width:66px}.dialog-copy p{font-size:19px}.answer{font-size:17px}#race-boss strong{font-size:24px}#race-status{gap:5px 12px;font-size:20px}.race-hearts{font-size:16px}#lane-controls{left:12%;right:12%}#control-guide{justify-content:flex-start;font-size:13px}.context-row button{max-width:33%;font-size:12px}#combat-controls button{padding:8px;font-size:13px}#combat-controls kbd{font-size:10px}}@media (width<=680px){#dialogue{border-width:4px;gap:10px;max-height:calc(100% - 28px);padding:17px 14px;display:block;bottom:13px;left:10px;right:10px}.dialog-portrait{float:left;width:48px;min-height:70px;margin:0 10px 7px 0}.dialog-portrait img{width:46px}.dialog-copy .eyebrow{letter-spacing:.035em;font-size:13px}.dialog-copy p{margin:10px 0 15px;font-size:18px;line-height:1.4}.answers{clear:both;gap:7px}.answer,.answer.primary{min-height:46px;padding:10px 9px 10px 29px;font-size:16px}.answer.selected:before{font-size:12px;left:9px}.dialog-keys{gap:5px;font-size:12px}.dialog-keys kbd{padding:2px 5px;font-size:11px}#control-guide{gap:10px 13px;padding:12px;font-size:12px}#control-guide>b{width:100%;font-size:12px}#control-guide kbd{padding:4px 6px;font-size:11px}.cast-note{font-size:10px}.chase-shortcut{width:100%;margin-top:9px;padding:10px;font-size:13px}#combat-controls{gap:6px;bottom:49px;left:12px;right:12px}#combat-controls button{min-height:47px;padding:7px 3px;font-size:12px}#combat-controls kbd{background:0 0;margin-bottom:3px;padding:0;font-size:10px;display:block}.context-row button{max-width:100%;min-height:36px;font-size:12px}.context-row:before{font-size:10px}.points button{min-height:44px;font-size:14px}.location-tag{gap:6px;font-size:9px}.luifa-game .objective-card p{font-size:13px}.objective-card .eyebrow{font-size:9px}#luifa-status{max-width:100%}.snack-counters b{font-size:16px}.snack-counters small{font-size:10px}.combat-stats{font-size:11px}.combat-stats b{font-size:14px}.rail-delay{font-size:11px}.rail-delay span{font-size:8px}.game-frame.chase-game{aspect-ratio:auto;height:620px}.chase-game #game{inset:129px 0 85px}.chase-game #race-boss{box-shadow:none;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 10px;display:grid;top:12px;left:12px;right:12px}.chase-game #race-boss>span{grid-column:1/-1;font-size:9px}.chase-game #race-boss strong{font-size:23px}.chase-game #race-boss small{align-self:center;font-size:8px}#race-status{gap:5px 13px;min-width:0;padding:10px 12px;font-size:19px;top:85px;left:12px;right:12px}.race-hearts{font-size:16px}#race-status small{margin-top:4px;font-size:8px}#race-tax{font-size:10px;top:176px;left:8px;right:8px}#lane-controls{gap:7px;bottom:14px;left:12px;right:12px}#lane-controls button{min-height:61px;padding:8px 5px;font-size:14px}#lane-controls button small{font-size:8px}.game-frame:has(#selection:not(.hidden)){min-height:675px}}#toast{text-align:center;max-width:85%;padding:12px 18px;font:700 clamp(13px,1.1vw,17px)/1.4 monospace}@media (width<=680px){.game-frame.chase-game{height:510px}.chase-game #game{inset:195px 0 88px}}.character-card{grid-template-columns:68px minmax(0,1fr);gap:15px;min-height:112px;padding:12px 22px 12px 12px;display:grid;overflow:hidden}.card-portrait{justify-content:center;align-items:center;width:68px;min-width:0;height:92px;display:flex;overflow:hidden}.card-portrait img{object-fit:contain;flex:none;max-width:100%;display:block;width:61px!important;height:92px!important}.card-text{gap:5px;min-width:0}.card-text strong{font-size:32px;line-height:1}.card-text .eyebrow{font-size:10px;line-height:1.35}.card-location{font-size:10px;line-height:1.3}.card-arrow{font-size:23px;top:10px;right:10px}.character-card.complete{opacity:.75}.selection-actions{justify-content:space-between;align-items:center;gap:18px;margin-top:16px;display:flex}.selection-actions>span{color:#adbcae;font:12px monospace}.selection-actions .chase-shortcut{flex-shrink:0;margin:0}.cast{bottom:4%}.cast-heading{font-size:11px}.intro-copy>p{font-size:clamp(15px,1.4vw,20px)}.scene-caption>span{font-size:12px}.scene-caption small{max-width:270px;font-size:11px;line-height:1.5}.scene-caption strong{font-size:54px}.intro-copy .resume-button{max-width:95%;margin-top:14px;font-size:13px}#stage-status{z-index:4;pointer-events:none;color:#efe4c8;background:linear-gradient(#112732f5,#142b34f2 80%,#142b3400);padding:16px 24px 10px;position:absolute;top:0;left:0;right:0}.stage-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.stage-heading>span{letter-spacing:.08em;color:#b2c3b1;font:700 12px monospace}.stage-heading>strong{letter-spacing:.05em;font:700 25px Barlow Condensed,Impact,sans-serif}.stage-info{color:#efc681;margin-top:5px;font:700 16px monospace}.stage-info+p{color:#c5d0c1;margin:6px 0 8px;font-size:14px}.stage-progress{background:#b5c6aa28;height:4px}.stage-progress i{background:#e6be7c;height:4px;transition:width .15s;display:block}#touch-controls{touch-action:none;-webkit-user-select:none;user-select:none;background:#18333f;border:1px solid #4e6b70;flex-wrap:wrap;justify-content:center;gap:9px;padding:13px;display:flex}#touch-controls button,#story-next button{color:#f1e4bc;touch-action:none;background:#284b56;border:2px solid #a1b3a2;border-radius:5px;min-width:66px;min-height:48px;padding:11px 19px;font:700 14px monospace}#touch-controls button.pressed{color:#19313b;background:#e3b975;transform:translateY(2px)}#touch-controls button[data-control=KeyJ]{background:#874f41;border-color:#e39c6e}#touch-controls button[data-control=KeyK]{background:#526956}#story-next{background:#142935;justify-content:center;padding:10px;display:flex}#chapter-picker{background:#152c35;border:1px solid #5e797055;margin-top:16px;padding:12px 18px}#chapter-picker summary{cursor:pointer;color:#afc3b2;font-size:14px}#chapter-picker>div{flex-wrap:wrap;gap:9px;margin-top:14px;display:flex}#chapter-picker button{background:#29424b;border:1px solid #6b817b;border-radius:4px;min-height:44px;padding:10px 14px;font-size:14px}.volume-label{align-items:center;gap:18px;margin:18px 0;display:flex}#music-volume{width:190px}#music-status{text-align:right;overflow-wrap:anywhere;max-width:58%;font-size:11px}.dialog-portrait{flex:none;justify-content:center;align-items:center;display:flex;overflow:hidden}.dialog-portrait img{object-fit:contain;max-width:100%;width:86px!important;height:129px!important}.dialog-copy{flex:1}.game-footer{min-height:95px}.journey-person{cursor:default}.masthead{padding-left:32px;padding-right:32px}.masthead-center{display:none}@media (width<=1000px){.character-card{grid-template-columns:50px minmax(0,1fr);gap:9px;min-height:92px;padding:9px 18px 9px 8px}.card-portrait{width:50px;height:75px}.card-portrait img{width:50px!important;height:75px!important}.card-text strong{font-size:27px}.card-text .eyebrow{font-size:8px}.card-location{font-size:9px}.selection-actions>span,.scene-caption>span{font-size:10px}.scene-caption small{font-size:9px}.stage-heading>strong{font-size:22px}.stage-info{font-size:14px}.stage-info+p{font-size:12px}}@media (width<=680px){.masthead{flex-wrap:wrap;gap:8px;height:auto;min-height:80px;padding:13px 12px}.masthead .brand{font-size:11px}.masthead nav{gap:0}.masthead nav button{padding:8px}.masthead nav button span{display:none}main{padding:0 10px 18px}.title-game{aspect-ratio:auto;height:760px}.title-game #game{height:330px;inset:0 0 auto}.title-game .intro-copy{max-width:85%;top:25px;left:22px}.title-game h1{margin:18px 0 12px;font-size:64px}.title-game .intro-copy>p{font-size:15px}.title-game .intro-kicker{font-size:9px}.title-game .scene-caption{text-align:left;flex-flow:wrap;align-items:center;gap:6px 16px;top:287px;left:22px;right:22px}.title-game .scene-caption>span{font-size:11px}.title-game .scene-caption strong{font-size:30px}.title-game .scene-caption small{font-size:10px}.title-game .cast{bottom:18px;left:16px;right:16px}.character-cards{grid-template-columns:1fr;gap:9px}.character-card{grid-template-columns:49px minmax(0,1fr);gap:16px;min-height:84px;padding:6px 30px 6px 12px}.card-portrait{width:46px;height:69px}.card-portrait img{width:46px!important;height:69px!important}.card-text .eyebrow{font-size:9px}.card-text strong{font-size:28px}.card-location{font-size:10px}.cast-heading{gap:15px;font-size:9px}.selection-actions{flex-direction:column;gap:10px;margin-top:12px}.selection-actions .chase-shortcut{width:100%;padding:12px;font-size:13px}.selection-actions>span{font-size:10px}.intro-copy .resume-button{min-height:40px;margin-top:12px;font-size:11px}.story-game{aspect-ratio:auto;height:450px}.story-game #game{inset:120px 0 10px}.story-game #stage-status{padding:14px 12px 10px}.stage-heading{flex-direction:column;align-items:flex-start;gap:4px}.stage-heading>span{font-size:10px}.stage-heading>strong{font-size:22px}.stage-info{font-size:12px;line-height:1.45}.stage-info+p{margin:4px 0 6px;font-size:12px;line-height:1.4}#touch-controls{gap:6px;padding:10px 6px}#touch-controls button{min-width:47px;min-height:48px;padding:9px 13px;font-size:11px}#control-guide{justify-content:flex-start;gap:6px;padding:12px;font-size:13px}#control-guide>span{line-height:1.5;display:block}#dialogue{border-width:3px;gap:10px;max-height:calc(100% - 25px);padding:16px 14px;bottom:12px;left:9px;right:9px}.dialog-portrait{width:46px;min-height:74px}.dialog-portrait img{width:44px!important;height:66px!important}.dialog-copy p{margin:9px 0 12px;font-size:17px;line-height:1.4}.dialog-copy .eyebrow{font-size:12px}.answer{min-height:44px;font-size:16px}.dialog-keys{flex-wrap:wrap;font-size:11px}.dialog-keys kbd{font-size:10px}.game-footer{min-height:80px}.journey-person img{width:26px;height:39px}.journey-person>span{font-size:14px}.journey-person small{font-size:8px}.inventory{display:none}.page-footer{gap:10px}.page-footer>span:first-child{font-size:8px}#music-status{max-width:60%;font-size:9px}.ending-top h2{font-size:50px}.ending-top p{font-size:16px}.ending-bottom{flex-wrap:wrap;gap:12px}}@media (prefers-reduced-motion:reduce){button{transition:none}.grain{display:none}}@media (width>=681px){main,.masthead{max-width:1440px}.title-game{min-height:555px}.title-game .intro-copy{max-width:52%}.title-game h1{font-size:clamp(68px,8.6cqw,120px)}.title-game .scene-caption{background:#132932bb;border-left:2px solid #d9ba79;padding:12px 15px;right:4.5%}.title-game .cast{bottom:4%}.title-game .intro-copy>p{line-height:1.45}}@media (width<=680px){.game-frame.title-game:has(#selection:not(.hidden)){height:820px}.game-frame.title-game:has(#selection:not(.hidden)) #game{height:300px;top:50px}.title-game .scene-caption{background:#172d37e6;border-left:2px solid #dbb87d;grid-template-columns:1fr auto;padding:10px;display:grid;top:304px}.title-game .scene-caption small{grid-column:1/-1;font-size:10px;display:block}.title-game .cast{bottom:22px}.title-game .cast-heading{margin-bottom:10px}}.concert-game #stage-status{background:#11232cc9;padding:10px 20px}.concert-game #stage-status .stage-info,.concert-game #stage-status p,.concert-game #stage-status .stage-progress{display:none}.concert-game .stage-heading>strong{font-size:18px}@media (width<=680px){.concert-game #game{inset:60px 0 10px}.concert-game .stage-heading>strong{font-size:16px}}.stage-briefing{color:#293b3e;background:#dfcd9f;border:1px solid #9d8c64;margin:14px 0 8px;padding:14px 18px}.stage-briefing>b{letter-spacing:1.4px;margin-bottom:12px;font:700 12px monospace;display:block}.stage-briefing>div{grid-template-columns:1fr 1fr;gap:10px 20px;display:grid}.stage-briefing span{align-items:center;gap:10px;font-size:16px;line-height:1.35;display:flex}.stage-briefing kbd{color:#f2dfb0;white-space:nowrap;background:#213a41;border-radius:3px;padding:6px 8px;font:700 13px monospace}.stage-briefing small{color:#52605a;margin-top:14px;font-size:12px;display:block}#dialogue.with-briefing{max-height:96%;bottom:2%;overflow-y:auto}#dialogue.with-briefing .dialog-portrait{align-self:end}.title-game .scene-caption{top:16%}.title-game .selection-wash{background:linear-gradient(90deg,#102730ed 0%,#102730b8 33%,#10273000 67%),linear-gradient(#10273000 58%,#102730f0 100%)}#stage-status[data-stage=lukas] .stage-info{font-size:15px}#stage-status[data-stage=chase] .stage-info{color:#f1c674}@media (width<=680px){.stage-briefing{margin-top:8px;padding:10px}.stage-briefing>div{grid-template-columns:1fr;gap:7px}.stage-briefing span{font-size:13px}.stage-briefing kbd{padding:4px 6px;font-size:11px}#dialogue.with-briefing .dialog-portrait{display:none}#dialogue.with-briefing{grid-template-columns:1fr}.title-game .scene-caption{top:304px}}.reunion-dialog .dialog-portrait{background:#213a42;align-self:center;width:258px;min-height:165px;padding:12px 6px}.reunion-portraits{color:#efdab1;align-items:end;gap:7px;display:flex}.reunion-portraits>div{justify-items:center;gap:10px;display:grid}.reunion-portraits b{font:700 12px monospace}.reunion-portraits img{width:73px!important;height:110px!important}@media (width>=681px){.title-game .scene-caption{grid-template-columns:1fr auto;align-items:center;gap:4px 14px;padding:9px 12px;display:grid;top:4%}.title-game .scene-caption strong{font-size:28px}.title-game .scene-caption small{grid-column:1/-1}}@media (width<=680px){#dialogue.reunion-dialog{flex-direction:column;gap:12px}.reunion-dialog .dialog-portrait{width:228px;min-height:125px;padding:5px;display:flex}.reunion-portraits img{width:59px!important;height:89px!important}#dialogue.with-briefing .answers{z-index:2;background:#f3ecd3;padding:8px 0 2px;position:sticky;bottom:0;box-shadow:0 -6px 10px #f3ecd3}#dialogue.with-briefing .dialog-keys{display:none}#dialogue.with-briefing #dialog-text{font-size:15px;line-height:1.4}.stage-briefing small{display:none}.game-frame.title-game:has(#selection:not(.hidden)){height:920px}.game-frame.title-game:has(#selection:not(.hidden)) #game{height:250px;top:190px}.title-game .scene-caption{top:410px}}#dialogue.boss-dialog{gap:16px;padding:14px 22px;bottom:4%;left:14%;right:14%}#dialogue.boss-dialog .dialog-portrait{display:none}#dialogue.boss-dialog .dialog-copy p{white-space:pre-line;margin:7px 0 12px;font-size:clamp(18px,1.8vw,24px)}#dialogue.boss-dialog .dialog-keys{margin-top:8px}@media (width<=650px){#dialogue.boss-dialog{padding:10px 14px;left:3%;right:3%}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand-icon{background:0 0;width:48px;height:48px;padding:0;transform:none}.brand-icon img{width:48px;height:48px;image-rendering:pixelated}nav button{color:#d5dfd4;min-height:44px}nav button span{font-size:13px}#music-button{border:1px solid #75918480;border-radius:4px}#music-button[aria-pressed=true]{color:#d6edce;background:#7caa8720}body.title-screen #app{--title-width:min(1344px, calc(100vw - 48px), max(1048px, calc((100svh - 154px) * 16 / 9)));flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:24px;display:flex}body.title-screen .masthead,body.title-screen main{width:var(--title-width);max-width:none;margin:0;padding:0}body.title-screen .masthead{flex:none;height:64px;margin-bottom:12px}body.title-screen .masthead-center{display:none}body.title-screen .game-frame.title-game{min-height:0}body.title-screen .game-footer{display:none}body.title-screen #chapter-picker{background:0 0;border:0;margin-top:10px;padding:0}body.title-screen #chapter-picker summary{color:#b0c0b8;width:fit-content;margin:auto;font-size:12px;line-height:20px}body.title-screen #chapter-picker[open]{padding-bottom:8px}.title-game .intro-copy>.resume-button{margin-top:12px}#help-dialog{width:min(520px,94vw);padding:30px}#help-dialog h2{margin:12px 0 22px;font-size:36px}.quick-controls{gap:16px;display:grid}.quick-controls>div{grid-template-columns:135px 1fr;align-items:center;gap:16px;display:grid}.quick-controls kbd{color:#193239;background:#e9dfc0;border:1px solid #f6efda;border-radius:3px;width:fit-content;padding:7px 10px;font:700 13px monospace;box-shadow:0 3px #839280}.quick-controls span{color:#e3e7db;font-size:16px;line-height:1.35}#help-dialog .help-note{color:#b7c9bb;margin:20px 0;font-size:13px;line-height:1.5}.audio-settings{border-top:1px solid #79908455;grid-template-columns:1fr auto;align-items:center;gap:12px;padding-top:14px;display:grid}.audio-settings .volume-label{gap:8px;margin:0;font-size:14px;display:grid}.audio-settings #music-volume{accent-color:#d9bd85;width:100%;max-width:220px}#sound-button{color:#dce6d4;background:#233d43;border:1px solid #7b9283;border-radius:4px;min-height:44px;padding:10px 12px;font-size:13px}.audio-settings small{color:#adbdaf;grid-column:1/-1;font-size:12px}.help-return{color:#18303a;background:#e4c48c;border:1px solid #f4dca9;border-radius:4px;width:100%;min-height:48px;margin-top:24px;font-size:18px;font-weight:700}#help-dialog #reset-button{min-height:32px;margin:18px auto 0;font-size:13px;display:block}.crew-grid p{font-size:16px;line-height:1.5}.crew-grid .eyebrow{font-size:11px}@media (width>=681px){.title-game h1{margin:18px 0;font-size:clamp(60px,8.2cqw,110px)}.title-game .intro-copy{max-width:48%;top:5%}.title-game .intro-copy>p{font-size:clamp(14px,1.4cqw,19px)}.title-game .scene-caption strong{font-size:24px}.title-game .character-card{min-height:90px}}@media (width>=681px) and (height<=850px){body.title-screen #app{--title-width:min(1344px, calc(100vw - 40px), max(1048px, calc((100svh - 130px) * 16 / 9)));padding:12px 20px}body.title-screen .masthead{height:54px;margin-bottom:8px}.title-game .intro-kicker{font-size:9px}.title-game h1{margin:12px 0;font-size:clamp(58px,7.7cqw,100px)}.title-game .intro-copy>.resume-button{margin-top:8px;padding:7px 12px;font-size:12px}}@media (width>=681px) and (width<=1000px){body.title-screen #app{--title-width:calc(100vw - 32px);padding:16px}body.title-screen .masthead{height:60px}.brand{gap:8px;font-size:11px}.brand small{font-size:7px}nav{gap:3px}nav button{padding:6px}nav button span{font-size:12px}.title-game .game-frame{min-height:0}.title-game .intro-copy{max-width:50%}.title-game h1{margin:12px 0;font-size:8cqw}.title-game .scene-caption{font-size:8px}.title-game .intro-copy>.resume-button{margin-top:8px;padding:6px 10px;font-size:11px}}@media (width<=680px){body.title-screen #app{--title-width:100%;padding:12px;display:block}body.title-screen .masthead{justify-content:center;gap:12px;height:auto;min-height:104px;margin:0 0 12px;padding:0}.brand-icon,.brand-icon img{width:36px;height:36px}.masthead nav{flex-wrap:wrap;justify-content:center}.masthead nav button span{font-size:12px;display:inline}.masthead nav button{padding:7px}.game-frame.title-game:has(#selection:not(.hidden)){height:1000px}.game-frame.title-game:has(#selection:not(.hidden)) #game{height:280px;top:270px}.title-game .intro-copy{top:24px}.title-game h1{margin:14px 0 12px}.title-game .scene-caption{top:510px}.title-game .intro-copy>.resume-button{margin-top:10px;font-size:12px}#help-dialog{padding:25px 20px}.quick-controls>div{grid-template-columns:115px 1fr;gap:12px}.quick-controls kbd{font-size:11px}.quick-controls span,.crew-grid p{font-size:14px}}@media (width>=681px) and (width<=1000px){body.title-screen .game-frame.title-game{aspect-ratio:auto;height:520px}.game-frame.title-game #game{height:56.25cqw;inset:0 0 auto}}@media (width>=1001px) and (height<=850px){.title-game .character-card{grid-template-columns:58px minmax(0,1fr);gap:12px;padding:8px 22px 8px 10px}.title-game .card-portrait{width:58px;height:80px}.title-game .card-portrait img{width:53px!important;height:80px!important}}.title-game .selection-actions{min-height:44px}.title-game .selection-actions .resume-button{flex-shrink:0;min-height:44px;margin:0 0 0 auto;padding:10px 17px;font-size:15px}@media (width<=680px){.title-game .selection-actions .resume-button{width:100%;font-size:13px}}#dialogue.controls-dialog{width:min(660px,92%);max-height:90%;padding:24px 28px;display:block;bottom:5%;left:50%;right:auto;transform:translate(-50%)}#dialogue.controls-dialog .dialog-portrait,#dialogue.controls-dialog #dialog-text,#dialogue.controls-dialog .dialog-keys{display:none}#dialogue.controls-dialog .stage-briefing{background:0 0;border:0;margin:22px 0;padding:0}#dialogue.controls-dialog .stage-briefing>div{grid-template-columns:1fr;gap:14px}#dialogue.controls-dialog .stage-briefing span{grid-template-columns:135px 1fr;align-items:center;gap:14px;font-size:17px;display:grid}#dialogue.controls-dialog .stage-briefing kbd{width:fit-content;margin:0;font-size:13px}#dialogue.controls-dialog .answer{text-align:center}@media (width<=680px){#dialogue.controls-dialog{padding:16px;bottom:4%}#dialogue.controls-dialog .stage-briefing{margin:14px 0}#dialogue.controls-dialog .stage-briefing>div{gap:12px}#dialogue.controls-dialog .stage-briefing span{grid-template-columns:102px 1fr;gap:10px;font-size:14px}#dialogue.controls-dialog .stage-briefing kbd{font-size:10px}}#dialogue,#dialogue.boss-dialog,#dialogue.controls-dialog{gap:20px;width:min(800px,100% - 40px);max-height:calc(100% - 40px);padding:24px;inset:50% auto auto 50%;transform:translate(-50%,-50%)}#dialogue .dialog-copy{flex:1}#dialogue .dialog-copy p{font-size:clamp(19px,1.6vw,24px);line-height:1.5}#dialogue .answers{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}#dialogue.choice-dialog .answers{flex-direction:column;align-items:flex-start}#dialogue .answer,#dialogue .dialog-back{white-space:normal;text-align:center;flex:0 auto;width:auto;max-width:100%;min-height:44px;padding:10px 18px;font:600 17px/1.3 DM Sans,Arial,sans-serif}#dialogue .answer.selected:before{display:none}#dialogue.choice-dialog .answer{text-align:left}#dialogue .dialog-back{color:#425a5f;background:0 0;border:2px solid #94a195;border-radius:5px}#dialogue .dialog-back:hover,#dialogue .dialog-back:focus-visible{outline-offset:2px;background:#dedbc5;outline:2px solid #60756d}#dialogue .dialog-keys{justify-content:flex-end}#dialogue .dialog-keys>span{margin-left:auto;font:600 13px DM Sans,Arial,sans-serif}#dialogue.controls-dialog{width:min(620px,100% - 40px)}#dialogue.reunion-dialog .dialog-portrait{flex-shrink:0}#stage-status[data-stage=vicky],#stage-status.health-hud{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px 18px;padding:12px 24px 8px;display:grid}#stage-status[data-stage=vicky] .stage-heading,#stage-status.health-hud .stage-heading{flex-direction:column;align-items:flex-start;gap:3px}#stage-status[data-stage=vicky] .stage-heading>strong,#stage-status.health-hud .stage-heading>strong{font-size:22px}.vicky-health{background:#0e252cf5;border:2px solid #caaa6f;border-radius:8px;padding:8px 15px 10px;box-shadow:0 3px #07181e}.vicky-health>div:first-child{letter-spacing:.08em;color:#ebddbb;justify-content:space-between;align-items:center;margin-bottom:5px;font:700 12px DM Sans,Arial,sans-serif;display:flex}.vicky-health>div:first-child strong{font-size:14px}.vicky-hearts{gap:7px;display:flex}.vicky-heart{width:30px;height:27px;display:block;overflow:visible}.vicky-heart.full{fill:#ffc77b;filter:drop-shadow(0 2px #805d36)}.vicky-heart.empty{fill:#30464d;stroke:#687d7c;stroke-width:.6px}.vicky-health.danger{border-color:#f18c77}.vicky-health.danger .vicky-heart.full{fill:#ff8b71}.vicky-wings{text-align:right;justify-self:end;max-width:210px}.vicky-wings span{color:#9cafad;letter-spacing:.12em;margin-bottom:5px;font:700 11px DM Sans,Arial,sans-serif;display:block}.vicky-wings strong{color:#dbceaa;font:700 15px DM Sans,Arial,sans-serif}#stage-status[data-stage=vicky] .vicky-goal,#stage-status.health-hud .vicky-goal{color:#bdccc3;text-align:center;grid-column:1/-1;margin:0;font-size:13px}#stage-status[data-stage=vicky] .stage-progress,#stage-status.health-hud .stage-progress{grid-column:1/-1}.stage-values{text-align:right;color:#dbceaa;justify-self:end;max-width:300px;font:700 14px/1.5 DM Sans,Arial,sans-serif}#stage-status.health-hud[data-hurt=true] .vicky-health{background:#602e2e;border-color:#ff937a}@media (width<=680px){#dialogue,#dialogue.boss-dialog,#dialogue.controls-dialog{gap:12px;width:calc(100% - 26px);max-height:calc(100% - 26px);padding:17px 14px}#dialogue .dialog-copy p{font-size:17px;line-height:1.45}#dialogue .dialog-portrait{width:46px;min-height:74px}#dialogue .answer,#dialogue .dialog-back{padding:9px 12px;font-size:15px}#dialogue .dialog-keys{gap:4px;font-size:10px}#dialogue .dialog-keys>span{font-size:10px}#dialogue.reunion-dialog .dialog-portrait{width:228px;min-height:110px}#stage-status[data-stage=vicky],#stage-status.health-hud{grid-template-columns:1fr auto;gap:7px 10px;padding:9px 12px}#stage-status[data-stage=vicky] .stage-heading,#stage-status.health-hud .stage-heading{flex-direction:row;grid-column:1/-1;align-items:center}#stage-status[data-stage=vicky] .stage-heading>strong,#stage-status.health-hud .stage-heading>strong{letter-spacing:.02em;font-size:18px}.vicky-health{justify-self:start;padding:5px 9px 7px}.vicky-health>div:first-child{margin-bottom:4px;font-size:10px}.vicky-health>div:first-child strong{font-size:12px}.vicky-hearts{gap:5px}.vicky-heart{width:22px;height:20px}.vicky-wings{max-width:120px}.vicky-wings strong{font-size:12px}.vicky-wings span{font-size:9px}#stage-status[data-stage=vicky] .vicky-goal,#stage-status.health-hud .vicky-goal{font-size:11px}.stage-values{max-width:120px;font-size:11px}}.masthead nav #music-button{white-space:nowrap;flex:0 0 100px;justify-content:center;width:100px;min-width:100px;padding-inline:8px}.title-game h1.flag-title{letter-spacing:-.015em;margin:14px 0 18px;font-size:clamp(58px,7.6cqw,100px);line-height:.88}.flag-title{text-shadow:none}#selection:focus{outline:none}.flag-title>span{-webkit-text-stroke:0;text-shadow:1px 1px #a9aea1,2px 2px #a9aea1,3px 3px #81928c,4px 4px #81928c,5px 5px #596f72,6px 6px #596f72,7px 7px #10232b,8px 8px #10232b;width:fit-content;display:block}.flag-title .title-black{color:#090a0b}.flag-title .title-red{color:#ee343b}.flag-title .title-gold{color:#ffce38}@media (width<=680px){.title-game h1.flag-title{margin:14px 0;font-size:64px}}body.opening-screen #app{visibility:hidden;pointer-events:none;position:fixed;inset:0}#start-screen{place-items:center;min-height:100svh;padding:24px;display:grid}.opening-card{aspect-ratio:16/9;isolation:isolate;background:#182f3c;border:1px solid #597375;width:min(1280px,100%,177.778svh - 85.3333px);min-height:470px;position:relative;overflow:hidden;box-shadow:0 24px 90px #050e1660;container-type:inline-size}.opening-skyline{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.opening-shade{background:linear-gradient(90deg,#10252bf2 0%,#10252bbb 28%,#10252b10 61%,#0000 77%);position:absolute;inset:0}.opening-copy{z-index:2;width:43%;position:absolute;top:9%;left:7%}.opening-kicker{color:#c5ccba;letter-spacing:.17em;margin:0;font:700 clamp(9px,1cqw,13px) monospace}.opening-copy h1{letter-spacing:-.015em;margin:22px 0 20px;font-size:clamp(70px,10cqw,132px);line-height:.86}.opening-tagline{color:#d2d6c5;max-width:25em;margin:0;font-size:clamp(13px,1.5cqw,19px);line-height:1.5}#play-button{color:#172f37;background:#f0d491;border:2px solid #fff0bc;border-radius:3px;justify-content:center;align-items:center;gap:18px;min-width:184px;min-height:58px;margin-top:25px;padding:10px 28px;font-size:25px;font-weight:800;display:inline-flex}#play-button>span{font-size:18px}#play-button:hover{background:#ffe7a5}#play-button:focus-visible{outline-offset:6px;outline:2px solid #f3d390}.opening-key{color:#b0c1b7;margin-top:14px;font-size:11px;display:block}.opening-key kbd{border:1px solid #9daf9a;border-radius:2px;margin-right:4px;padding:3px 5px;font:700 10px monospace}.opening-trio{justify-content:center;align-items:end;display:flex;position:absolute;bottom:11%;left:53%;right:8%}.opening-friend{width:33.333%;height:auto;image-rendering:pixelated;filter:drop-shadow(0 4px #10232b65);animation:2.6s ease-in-out infinite alternate opening-breathe}.opening-vicky{animation-delay:-.8s}.opening-lukas{animation-delay:-1.6s}.opening-sign{color:#c7bea1;text-align:right;letter-spacing:.14em;font:700 11px monospace;position:absolute;bottom:3%;right:8%}.opening-sign small{color:#809b9c;letter-spacing:.12em;margin-top:5px;font-size:8px;display:block}@keyframes opening-breathe{to{transform:translateY(-3px)}}@media (width>=681px) and (height<=750px){#start-screen{padding:16px}.opening-card{width:min(1280px,100%,177.778svh - 56.8889px);min-height:430px}.opening-copy{top:7%}.opening-copy h1{margin:16px 0 12px;font-size:9.5cqw}#play-button{min-height:50px;margin-top:16px;font-size:22px}}@media (width<=680px){#start-screen{padding:12px}.opening-card{aspect-ratio:auto;width:min(440px,100%);height:calc(100svh - 24px);min-height:730px;max-height:900px}.opening-skyline{object-fit:cover;object-position:right;width:100%;height:47%;inset:auto auto 0 0}.opening-shade{background:linear-gradient(#182e3a 0% 42%,#182e3a00 64%)}.opening-copy{width:auto;top:28px;left:28px;right:28px}.opening-copy h1{margin:18px 0 15px;font-size:86px;line-height:.85}.opening-kicker{letter-spacing:.1em;font-size:9px}.opening-tagline{max-width:250px;font-size:14px}#play-button{min-width:160px;min-height:52px;margin-top:20px;font-size:23px}.opening-key{display:none}.opening-trio{bottom:5.5%;left:12%;right:12%}.opening-sign{font-size:9px;bottom:1.5%;right:6%}.opening-sign small{display:none}}@media (prefers-reduced-motion:reduce){.opening-friend{animation:none}}#stage-status[data-stage=vicky2] .stage-info{color:#cae5c3;font-size:clamp(16px,1.8cqw,23px)}#stage-status[data-stage=vicky2] p{font-size:clamp(14px,1.6cqw,20px);font-weight:700}#stage-status[data-stage=vicky2][data-police=warning],#stage-status[data-stage=vicky2][data-police=rush]{background:#3c3030f2;border-bottom:4px solid #eeaa70}#stage-status[data-stage=vicky2][data-police=warning] p,#stage-status[data-stage=vicky2][data-police=rush] p{color:#ffe1a6}#luifa-health{z-index:4;pointer-events:none;position:absolute;top:12px;left:50%;transform:translate(-50%)}.ice-game .objective-card{max-width:39%}@media (width>=681px) and (width<=1200px){.ice-game .objective-card{margin-top:60px}}@media (width<=680px){#luifa-health{top:42px}.ice-game .objective-card{max-width:calc(100% - 24px);margin-top:76px}}
