/* Episode 1 registrations; shared layout and navigation live in player/. */
.chapter[data-beat="1"]{--scene-ratio:2}
.chapter[data-sequence="map"]{--scene-ratio:1.366667}
.chapter[data-sequence="reaction"]{--scene-ratio:1.490909}
.dialogue{padding:18px 22px 55px;--bubble-flip:none}
.dialogue::before{background-image:url('/assets/2a9caed53637/dialogue-ddf7725f.svg')}
.chapter[data-beat="1"] .dialogue{width:43%;left:auto;right:3%;top:3%}
.map-dialogues{position:absolute;left:27%;top:3%;width:70%;z-index:3}
.map-dialogues .dialogue{left:0;top:0;width:100%;padding:18px 20px 55px}
.chapter[data-sequence="reaction"] .illustration{transform:none;opacity:var(--wide-opacity,1)}
.chapter[data-sequence="reaction"] .closing-dialogue{width:43%;top:49%;left:5%;padding:55px 20px 20px;--bubble-flip:scale(-1,-1);transition:opacity 250ms ease}
.hand-extension{transform:translateX(var(--hand-x,-170px)) scale(var(--hand-scale,.48));transform-origin:var(--hand-origin,384px 380px);transition:transform 600ms ease}
.pointing-hand{opacity:var(--hand-opacity,0);transition:opacity 200ms ease}
.penguin-layer{opacity:1}.smoke-puff{opacity:0;transform-origin:190px 400px;pointer-events:none}
.final-closeup{position:absolute;inset:0;opacity:var(--closeup-opacity,0);pointer-events:none;background:#22271f}
.final-closeup svg{display:block;width:100%;height:100%}.final-closeup .closeup-portrait{display:none}
@media(max-width:700px){
 .chapter[data-beat="1"] .dialogue,.chapter[data-sequence="reaction"] .closing-dialogue{left:12px;right:auto;top:10px;width:calc(100% - 24px);padding:16px 18px 40px;--bubble-flip:none}
 .map-dialogues{left:12px;top:10px;width:calc(100% - 24px)}.map-dialogues .dialogue{padding:16px 18px 40px}
 .closing-dialogue::before{transform:scaleX(-1)}
 .final-closeup{top:var(--lettering-height,0px)}
}
@media print{.smoke-puff{display:none}}
