*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#2cb1ea;font-family:Arial,Helvetica,sans-serif;color:#fff}button{font:inherit;cursor:pointer;border:0;touch-action:none;-webkit-tap-highlight-color:transparent;user-select:none;color:inherit}button:focus-visible{outline:3px solid #fff6ad;outline-offset:5px}button:disabled{opacity:.35;cursor:default}#stage{width:100%;height:100%;height:100dvh;position:relative;overflow:hidden;isolation:isolate;touch-action:none}#game,#game canvas{position:absolute;inset:0;display:block}#game{outline:none}.hidden{display:none!important}.panel{position:absolute;inset:0;pointer-events:none}.panel button{pointer-events:auto}.glass{background:linear-gradient(160deg,#f8f9ff5c,#bdc7e533);border:1px solid #f7fbff55;border-radius:20px;box-shadow:inset 0 2px 5px #ffffff32,0 3px 8px #162b3922;text-shadow:0 2px 3px #26323b55;backdrop-filter:blur(3px);font-weight:800;letter-spacing:.02em}.glass:active,.glass.held{background:linear-gradient(160deg,#fff9,#dce9ed66);transform:translateY(2px)}#top-controls{position:absolute;right:max(2.2vw,env(safe-area-inset-right));top:max(2.3vh,env(safe-area-inset-top));display:flex;gap:12px;z-index:25}.round{width:clamp(44px,3.7vw,58px);height:clamp(44px,3.7vw,58px);border-radius:50%;background:#145d8d7a;display:grid;place-items:center;font-size:25px;font-weight:900}.round:hover{background:#135781bc}.round svg{width:25px;height:25px}#hud{position:absolute;top:2.4%;left:50%;transform:translateX(-50%);text-align:center;pointer-events:none}#distance-pill{background:#135c8e91;border-radius:30px;padding:5px 29px;font-size:clamp(24px,2.9vw,42px);font-weight:800;line-height:1.05;min-width:132px;text-shadow:0 2px 3px #153d5d38}#distance-pill small{font-size:.78em}#tag{display:none;margin:8px auto;background:#1260928c;border-radius:16px;font-size:13px;font-weight:800;padding:4px 12px;width:max-content}#stage[data-phase=title] #hud,#stage[data-phase=story] #hud,#stage[data-phase=title] #pause,#stage[data-phase=story] #pause,#stage[data-phase=finale] #pause,#stage[data-phase=complete] #pause{display:none}#stage[data-phase=falling] #tag,#stage[data-phase=choice] #tag{display:block}h1{position:absolute;top:3.8%;left:50%;transform:translateX(-50%) rotate(-3deg);text-align:center;font-family:Arial Black,Arial,sans-serif;font-weight:1000;font-size:clamp(42px,min(9.6vw,17vh),164px);letter-spacing:-.055em;line-height:.84;margin:0;white-space:nowrap;filter:drop-shadow(0 10px 4px #18363344)}h1 span{display:block;color:#fff0c2;text-shadow:0 2px #e8c883,1px 5px #c7a267,2px 8px #87633b,5px 12px #0a6556,7px 15px #084438}h1 strong{display:block;color:#ff743d;font-size:1.4em;letter-spacing:-.055em;text-shadow:0 2px #f58c4d,1px 5px #e45526,2px 9px #9f321b,5px 13px #075b4d,7px 16px #064c40}.title-actions{position:absolute;bottom:3.4%;left:50%;transform:translateX(-50%);text-align:center;width:90%}.play{display:block;margin:0 auto;background:linear-gradient(#00bda0,#009d80 65%,#008a76);border-radius:50px;border:2px solid #6cd0b999;color:#fff1c6;text-shadow:0 3px 2px #35694d66;font-weight:1000;font-size:clamp(32px,4.4vw,62px);padding:5px 58px 9px;box-shadow:inset 0 3px 6px #9be9c979,0 6px 0 #08735e,0 11px 15px #19313533;letter-spacing:-.025em;min-width:230px}.title-actions .play{min-width:clamp(230px,30vw,430px)}.play:active{transform:translateY(4px);box-shadow:inset 0 2px 6px #fff5,0 2px #08735e}.title-actions p{font-weight:800;margin:17px 0 4px;font-size:clamp(12px,1.4vw,20px);letter-spacing:.07em;text-shadow:0 1px 3px #26323b}.title-actions small{display:block;font-size:clamp(10px,1.1vw,15px);letter-spacing:.09em;color:#e4eaf3}.text-button{background:none;font-weight:700;font-size:11px;letter-spacing:.08em;padding:12px;text-shadow:0 1px 4px #26323b80}.text-button:hover{text-decoration:underline}#best-label{font-size:11px;letter-spacing:.07em;color:#fff3cd;position:absolute;right:0;bottom:9px}#play-controls{position:absolute;inset:0;pointer-events:none}#play-controls button{pointer-events:auto;position:absolute;bottom:max(3.2%,env(safe-area-inset-bottom));min-height:clamp(50px,10.5vh,82px)}.lean{width:24%;max-width:292px;font-size:clamp(14px,1.75vw,25px);padding:8px 16px;display:flex;align-items:center;justify-content:space-around;gap:8px}.lean span{font-size:33px;font-weight:400}#lean-left{left:2.2%}#lean-right{right:2.2%}#hop{left:50%;transform:translateX(-50%);background:#e8ecfa12;border:1px solid #e4edff42;border-radius:50%;width:56px;height:56px;font-size:24px;line-height:1;padding:6px}#hop small{display:block;font-size:9px;letter-spacing:.12em;margin-top:3px}#hop:disabled{opacity:.5}#control-tip{position:absolute;bottom:15%;left:50%;transform:translateX(-50%);font-size:14px;letter-spacing:.1em;white-space:nowrap;opacity:.86;text-shadow:0 1px 3px #26323b}#live-status{position:absolute;top:16%;left:50%;transform:translateX(-50%);font-size:clamp(13px,1.4vw,21px);font-weight:800;text-shadow:0 2px 4px #19576d85;letter-spacing:.025em;text-align:center;pointer-events:none;white-space:nowrap}.choice-actions{position:absolute;bottom:4%;left:50%;transform:translateX(-50%);width:min(72%,720px);text-align:center}.choices{display:flex;gap:22px}.choices button{flex:1;font-size:clamp(24px,3vw,42px);padding:12px 12px 10px;line-height:1.1}.choices small{display:block;font-weight:400;font-size:clamp(11px,1.2vw,17px);letter-spacing:0;margin-top:4px}#continue-note{font-size:10px;letter-spacing:.03em;color:#e2e9f6;margin:10px 0 0}#punchline{position:absolute;top:0;left:50%;transform:translateX(-50%) rotate(-1deg);white-space:nowrap;font-size:clamp(42px,7.1vw,108px);letter-spacing:-.04em;text-shadow:1px 3px #dbe7eb,2px 6px #657c89,4px 10px #233c54;line-height:1;margin:2% 0 0;font-weight:1000}#stage[data-phase=finale] #hud{top:18%}#finale-actions{position:absolute;bottom:2.2%;left:50%;transform:translateX(-50%);text-align:center;display:flex;flex-direction:column;align-items:center}#retry{font-size:clamp(24px,3vw,40px);padding:4px 36px;border-radius:30px;white-space:nowrap}#finale-actions>small{margin-top:7px;font-size:10px;letter-spacing:.15em}#back-title{font-size:9px;padding:8px}#skip-finale{position:absolute;right:2%;bottom:2%;font-size:13px}#pause-panel,#complete-panel{background:#153c514b;backdrop-filter:blur(8px);z-index:30;display:grid;place-items:center}.pause-card{background:#164858eb;border:1px solid #d5f7ee55;border-radius:30px;padding:36px;text-align:center;max-width:92%;box-shadow:0 20px 60px #16333c77}.pause-card h2{font-size:clamp(30px,4vw,56px);letter-spacing:-.04em;margin:18px 0 24px}.pause-card small{letter-spacing:.15em;font-size:10px;color:#9edecb}.pause-card p{font-size:12px;margin:23px 0 0}.pause-card .play{font-size:32px;min-width:220px}.story-copy{position:absolute;top:7%;left:50%;transform:translateX(-50%);text-align:center;width:88%;text-shadow:0 2px 4px #31678266}.story-copy>small{font-size:12px;letter-spacing:.2em}.story-copy h2{font-size:clamp(30px,4.5vw,64px);letter-spacing:-.04em;margin:14px 0 6px}.story-copy p{font-size:clamp(13px,1.5vw,20px);margin:0}.story-copy #story-progress{display:flex;gap:7px;justify-content:center;margin-top:20px}.story-copy i{height:5px;width:33px;background:#ffffff40;border-radius:6px}.story-copy i.active{background:#fff1b6}#skip-story{position:absolute;bottom:5%;right:4%;padding:15px 24px;font-size:14px}#hic{position:absolute;top:44%;left:59%;font-size:40px;font-weight:1000;transform:rotate(12deg);text-shadow:2px 3px #267a8377;color:#fff2b3}#loading{position:absolute;inset:0;background:#2eafdc;display:grid;place-content:center;text-align:center;z-index:100}#loading span{font-size:30px;font-weight:900;letter-spacing:-.03em}#loading p{color:#def4ec;font-size:14px}
@media(max-aspect-ratio:3/4){#top-controls{gap:7px;right:3%;top:2%}.round{width:44px;height:44px;font-size:23px}#hud{top:8%}#distance-pill{font-size:27px;padding:6px 24px;min-width:112px}h1{top:10%;font-size:12.4vw}.title-actions{bottom:6%}.title-actions .play{font-size:45px;padding:6px 50px;min-width:205px}.title-actions p{font-size:11px;margin-top:22px}.title-actions small{font-size:9px}.title-actions .text-button{padding-top:22px}#best-label{position:static;margin-top:5px}.lean{width:35%;padding:10px 8px;font-size:13px;gap:4px;border-radius:16px}.lean span{font-size:23px}#play-controls button{bottom:max(6%,env(safe-area-inset-bottom));min-height:52px}#hop{width:48px;height:52px;font-size:20px}#control-tip{bottom:15%;font-size:10px}.choice-actions{width:91%;bottom:7%}.choices{gap:12px}.choices button{font-size:27px;padding:14px 8px}.choices small{font-size:11px}#continue-note{font-size:9px}#live-status{top:19%;font-size:12px}#punchline{top:12%;font-size:12vw}#stage[data-phase=finale] #hud{top:22%}#finale-actions{bottom:6%}#retry{font-size:27px;padding:8px 32px}.story-copy{top:13%}.story-copy h2{font-size:37px}.story-copy p{font-size:15px;line-height:1.4}#skip-story{bottom:7%;right:50%;transform:translateX(50%);white-space:nowrap}#hic{top:45%;left:60%;font-size:32px}.pause-card{padding:28px 20px}#tag{font-size:11px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
@font-face{font-family:Lilita;src:url('assets/LilitaOne-Regular.ttf') format('truetype');font-weight:400;font-display:swap}h1,h1 strong,#punchline,.play,.choices button,#retry,.lean,#distance-pill{font-family:Lilita,Arial,sans-serif;font-weight:400}h1{letter-spacing:-.025em}h1 strong{letter-spacing:-.025em}.choices small{font-family:Arial,Helvetica,sans-serif}.play{letter-spacing:.01em}
@media(max-height:650px) and (max-aspect-ratio:3/4){h1{top:7%}.title-actions{bottom:3%}.title-actions .play{font-size:38px;padding:4px 42px;min-width:190px}.title-actions p{margin-top:13px;font-size:9px}.title-actions small{font-size:8px}.title-actions .text-button{padding:10px;font-size:9px}#best-label{font-size:9px;margin-top:0}#punchline{top:10%}#stage[data-phase=finale] #hud{top:19%}.story-copy{top:10%}.story-copy h2{font-size:30px}.story-copy p{font-size:12px}.choices button{font-size:24px}.choices small{font-size:10px}}
@media(max-height:650px) and (max-aspect-ratio:3/4){#finale-actions{bottom:4.5%}}

/* Zupkit early preview: readable controls and compact phone landscape. */
#zupkit-nav{position:absolute;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));display:flex;gap:8px;z-index:26;font-size:12px;pointer-events:auto}
#zupkit-nav a,#zupkit-nav summary{display:block;color:#fff;text-decoration:none;background:#164858ed;border-radius:12px;padding:12px;min-height:44px;cursor:pointer}
#zupkit-nav details>div{position:absolute;top:48px;left:0;display:grid;gap:4px;min-width:140px}
#zupkit-nav a:focus-visible,#zupkit-nav summary:focus-visible{outline:3px solid #fff6ad;outline-offset:2px}
.title-actions p{font-size:clamp(12px,1.4vw,20px)}
.title-actions small{font-size:clamp(12px,1.1vw,15px);color:#fff}
#release-label{margin-top:8px;font-size:11px;letter-spacing:.04em;color:#fff3cd}
.title-actions .text-button{font-size:12px;min-height:44px}
#lean-left,#lean-right,#hop,#life-button,#death-button,#retry,#skip-story{background:#164858e8;border-color:#d5f7ee80;text-shadow:0 1px 2px #102d37;box-shadow:inset 0 1px 4px #ffffff20,0 3px 8px #162b3922}
#lean-left.held,#lean-right.held,#hop:active,#life-button:active,#death-button:active,#retry:active{background:#216575}
#life-button{font-size:clamp(24px,2.5vw,36px)}
#life-button:disabled{opacity:1;background:#385765;color:#c2cbd0;border-color:#83979f}
#continue-note{font-size:12px;color:#fff;text-shadow:0 1px 3px #173747}
#control-tip{font-size:clamp(12px,1.1vw,16px);letter-spacing:.04em;max-width:96%;white-space:normal;width:max-content;text-align:center}
#live-status{max-width:94%;white-space:normal;width:max-content}
#retry,#back-title,#skip-finale,#skip-story{min-height:44px}
#back-title{font-size:11px}
#no-script{position:absolute;inset:0;z-index:101;background:#164858;display:grid;place-content:center;text-align:center;padding:24px;line-height:1.6}
#no-script a{color:#fff3cd}
@media(max-aspect-ratio:3/4){.title-actions{bottom:4%}.title-actions p{font-size:12px;letter-spacing:.02em}.title-actions small{font-size:12px;letter-spacing:.02em}.title-actions .text-button{padding:12px}.choices button{min-height:88px}.choices small{font-size:12px}#life-button{font-size:25px}#control-tip{bottom:15%;font-size:12px}#release-label{font-size:11px}}
@media(max-height:500px) and (min-aspect-ratio:4/3){h1{top:4%;font-size:min(8vw,16vh)}.title-actions{bottom:2%}.title-actions .play{font-size:34px;min-width:220px;padding:4px 42px}.title-actions p{margin-top:12px;font-size:12px}.title-actions small{font-size:12px;letter-spacing:.03em}#release-label{margin-top:5px;font-size:10px}.title-actions .text-button{padding:8px;min-height:44px}.lean{min-height:50px;font-size:16px}#play-controls button{bottom:max(12px,env(safe-area-inset-bottom))}#control-tip{bottom:80px;font-size:12px}#live-status{top:20%;font-size:13px}.choice-actions{bottom:4%;width:min(78%,660px)}.choices button{min-height:74px;font-size:28px}.choices small{font-size:12px}#continue-note{margin-top:7px}#finale-actions{bottom:3%;left:auto;right:3%;transform:none}#retry{font-size:25px;padding:6px 24px}#back-title{padding:8px}#stage[data-phase=finale] #hud{top:23%}.story-copy{top:4%}.story-copy h2{font-size:32px;margin:10px 0 4px}.story-copy p{font-size:14px}.story-copy #story-progress{margin-top:12px}#skip-story{bottom:6%;padding:12px 20px}.pause-card{padding:20px}.pause-card h2{margin:12px 0 18px;font-size:32px}.pause-card p{margin-top:16px}}
