@import url('/assets/site.css?v=3');
:root{--paper:#f7f2df;--ink:#192d32;--muted:#53666a;--red:#b63031;--green:#265d48;--line:#c9c3ac}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,sans-serif;line-height:1.55}a{color:var(--green)}button,input,select{font:inherit}button,select,.file-label{border:1px solid var(--line);border-radius:7px;background:#fffdf3;color:var(--ink);padding:.6rem .85rem}button{cursor:pointer}button:hover{border-color:var(--red)}button:disabled{opacity:.5;cursor:default}button[aria-pressed=true]{background:var(--red);color:white}.primary{background:var(--red);color:white;font-weight:750}.project-nav{padding:1rem 3vw;display:flex;flex-wrap:wrap;gap:1.1rem;border-bottom:1px solid var(--line)}.project-nav a{font-weight:650;text-decoration:none}.intro{padding:2.5rem 3vw 1.6rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}h1{font-size:clamp(2rem,4.5vw,4.3rem);line-height:1.08;letter-spacing:-.045em;margin:.3rem 0}h2{font-size:1.3rem;line-height:1.2}h3{font-size:1rem}p{margin:.7rem 0}.eyebrow{font-size:.7rem;letter-spacing:.14em;font-weight:800;color:var(--muted)}.edition{border-left:4px solid var(--red);padding:.5rem 1rem;font-size:.85rem;flex-shrink:0}.play-layout{padding:0 2vw 2rem;display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr) minmax(215px,260px);gap:18px;align-items:start}.panel{border:1px solid var(--line);border-radius:10px;padding:1.1rem;background:#fffcf0;margin-bottom:1rem}.route-panel{max-height:calc(100vh - 25px);overflow:auto;position:sticky;top:12px}.game-column{min-width:0}.game-stage{position:relative;aspect-ratio:4/3;background:#111b21;border:5px solid #192d32;border-radius:10px;overflow:hidden;color:white}#game{width:100%;height:100%}#boot-card{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(1rem,4vw,3rem);background:linear-gradient(145deg,#12292e,#26483f)}#boot-card[hidden]{display:none}#boot-card .eyebrow{color:#c7d3bc}#boot-card h2{font-size:clamp(1.2rem,2.4vw,2rem)}#boot-card p{font-size:.9rem;max-width:45em}#player-status{font-size:.8rem}.toolbar{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;padding:.8rem 0}.volume{display:flex;align-items:center;gap:.5rem;font-size:.8rem;margin-left:auto}.volume input{width:100px}.time-panel{padding:1rem;border:1px solid var(--line);border-radius:10px;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;justify-content:space-between;margin-bottom:1rem}.time-panel>div{display:flex;flex-direction:column;gap:.4rem}.time-panel label{font-size:.75rem}.time-panel p,.time-panel>.check{width:100%;margin:.3rem 0}.time-panel select{padding:.2rem .4rem;margin-left:.4rem}#speed-status{font-size:.85rem;font-weight:650}.small,small{font-size:.78rem;color:var(--muted)}.check{display:flex;gap:.5rem;align-items:center}.cheat{display:flex;gap:.7rem;align-items:flex-start;margin:1.4rem 0}.cheat input{margin-top:.3rem}.cheat small{display:block;margin-top:.4rem}.cheats-panel hr{border:0;border-top:1px solid var(--line);margin:1.5rem 0}.touch-controls{display:flex;gap:1rem;justify-content:space-between;padding:1rem 0;touch-action:none}.dpad{display:grid;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,42px);gap:3px;align-self:center}.dpad button{padding:0}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1;grid-row:2}.dpad button:nth-child(3){grid-column:2;grid-row:2}.dpad button:nth-child(4){grid-column:3;grid-row:2}.face-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:.3rem}.face-buttons button{font-size:.7rem;padding:.5rem .4rem}.file-label{display:inline-block;margin-top:.6rem}.file-label input{display:block;max-width:100%;font-size:.8rem;margin-top:.4rem}summary{cursor:pointer;font-weight:700}footer{padding:2rem 3vw;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}.content{max-width:1140px;margin:auto;padding:2rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.cards a{display:block;text-decoration:none;padding:1.5rem;background:#fffcf0;border:1px solid var(--line);border-radius:10px}.cards h2{color:var(--red)}.hero-capture{image-rendering:pixelated;width:min(100%,640px);border-radius:10px}.play-layout:fullscreen{background:var(--paper);overflow:auto;padding-top:15px}.ejs_parent{width:100%!important;height:100%!important}.ejs_parent canvas{image-rendering:pixelated}
@media(min-width:1600px){.play-layout{grid-template-columns:320px minmax(0,1000px) 270px;justify-content:center}}@media(max-width:1150px){.play-layout{grid-template-columns:230px minmax(0,1fr)}.cheats-panel{grid-column:2}.intro{padding-top:1.5rem}}@media(max-width:760px){.play-layout{display:flex;flex-direction:column;padding:0 12px}.game-column{order:0;width:100%}.route-panel{order:1;width:100%;position:static;max-height:600px}.cheats-panel{order:2;width:100%}.intro{padding:1.5rem 12px}.edition{display:none}.touch-controls{gap:.5rem}.face-buttons{grid-template-columns:repeat(2,1fr)}.volume{margin-left:0}.project-nav{font-size:.8rem;gap:.75rem}.time-panel{justify-content:center}.game-stage{border-width:3px}}
