:root{--ink:#1d2326;--paper:#fbf8f0;--red:#d8433a}#ui{pointer-events:none;color:var(--ink);font-family:Patrick Hand,system-ui,sans-serif;position:fixed;inset:0;overflow:hidden}#ui button{font:inherit;cursor:pointer;pointer-events:auto}#passport{opacity:0;width:min(560px,80vw);height:104px;transition:opacity .8s;position:absolute;top:6px;left:50%;translate:-50%}.started #passport,#passport.show{opacity:1}#ui:has(#end-card.show:not(.done)) #passport{opacity:0}#ui:has(#end-card.show:not(.done)) #passport .stamp{pointer-events:none}#ui:has(#end-card.done) #passport{z-index:1}#passport .line{border-top:3px dashed var(--paper);filter:drop-shadow(0 1px #00000040);position:absolute;top:50%;left:0;right:0}#passport .stamp{width:44px;height:44px;color:inherit;pointer-events:none;-webkit-tap-highlight-color:transparent;scroll-snap-align:center;background:0 0;border:0;margin:0;padding:0;position:absolute;top:50%}#passport .stamp.hi{translate:-50% calc(-50% - 24px)}#passport .stamp.lo{translate:-50% calc(24px - 50%)}#passport .stamp:not(:disabled){pointer-events:auto}#passport .stamp .disc{border:3px solid var(--paper);background:#ffffff1f;border-radius:50%;transition:scale .12s;position:absolute;inset:2px}#passport .stamp.small .disc{border-width:2px;inset:10px}#passport .stamp:hover .disc{scale:1.12}#passport .stamp:focus-visible{outline:3px solid var(--red);outline-offset:0;border-radius:50%}#passport .stamp svg{color:#b8263a;opacity:0;width:calc(100% + 8px);height:calc(100% + 8px);transition:opacity .15s,scale .35s cubic-bezier(.2,1.6,.4,1),rotate .35s;position:absolute;inset:-4px;rotate:-14deg;scale:1.8}#passport .stamp.inked .disc{background:var(--paper)}#passport .stamp.inked svg{opacity:1;scale:1;rotate:var(--tilt,-6deg)}#passport .stamp.small svg .ring{display:none}#passport .stamp .name{white-space:nowrap;pointer-events:none;color:var(--paper);text-shadow:1px 1px 0 var(--ink), -1px -1px 0 var(--ink), 1px -1px 0 var(--ink), -1px 1px 0 var(--ink);font-size:18px;line-height:20px;position:absolute;left:50%;translate:-50%}#passport .stamp.hi .name{bottom:100%}#passport .stamp.lo .name{top:100%}#passport .me{border:2.5px solid var(--paper);background:#a5704f;border-radius:50%;width:30px;height:30px;position:absolute;top:50%;left:0;translate:-50% -50%;box-shadow:inset 0 9px #1b1715}#title-card{max-width:70vw;color:var(--paper);text-transform:uppercase;letter-spacing:.04em;opacity:0;text-shadow:2px 2px 0 var(--ink), -1px -1px 0 var(--ink), 1px -1px 0 var(--ink), -1px 1px 0 var(--ink);font-size:clamp(22px,3.2vw,40px);line-height:1.05;transition:opacity .7s,translate .7s;position:absolute;top:124px;left:4vw;translate:0 12px}#title-card.show{opacity:1;translate:0}#caption{opacity:0;width:min(680px,88vw);transition:opacity .35s;position:absolute;bottom:5vh;left:50%;translate:-50%}#caption.show{opacity:1}#caption .tag{background:var(--red);color:#fff;letter-spacing:.06em;text-transform:uppercase;border:2px solid var(--ink);border-bottom:0;margin-left:16px;padding:2px 12px 0;font-size:17px;display:inline-block;transform:skew(-6deg)}#caption p{background:var(--paper);border:2.5px solid var(--ink);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:3.2em;margin:0;padding:12px 18px 10px;font-size:clamp(18px,2vw,23px);line-height:1.25;display:-webkit-box;overflow:hidden;box-shadow:4px 4px #14191a59}#caption .w{color:var(--ink);border-radius:3px;padding:0 1px;transition:color .12s,background-color .12s}#caption .w.next{opacity:.4}#caption .w.said{opacity:1}#caption .w.now{opacity:1;background:linear-gradient(#0000 12%,#ffd640bf 12% 92%,#0000 92%)}#controls{align-items:center;gap:10px;display:flex;position:absolute;top:18px;right:4vw}#controls.hidden{display:none}#controls .tally{color:var(--paper);text-shadow:1px 1px 0 var(--ink);opacity:0;visibility:hidden;align-items:center;gap:8px;font-size:18px;transition:opacity .8s,visibility 0s .8s;display:flex}#controls .tally.on{opacity:1;visibility:visible;transition:opacity .8s}#controls .tally .boxes{gap:4px;display:flex}#controls .tally i{border:2px solid var(--ink);width:16px;height:20px;box-shadow:1.5px 1.5px 0 var(--ink);background:#f4ecdc59;position:relative}#controls .tally i:after{content:"";opacity:0;background:linear-gradient(transparent 38%, var(--red) 38%, var(--red) 58%, transparent 58%), #c9a66b;transition:opacity .3s,transform .3s cubic-bezier(.3,1.6,.5,1);position:absolute;inset:2px;transform:scale(.4)}#controls .tally i.full:after{opacity:1;transform:none}#controls .tally i.glow{animation:2.2s ease-out packet-glow}@keyframes packet-glow{0%{box-shadow:1.5px 1.5px 0 var(--ink), 0 0 0 0 #ffd64000}18%{box-shadow:1.5px 1.5px 0 var(--ink), 0 0 14px 6px #ffd640f2;background:#ffe28ce6}to{box-shadow:1.5px 1.5px 0 var(--ink), 0 0 0 0 #ffd64000}}#speed-btn,#pause-btn,#skip-btn,#again-btn{letter-spacing:.06em;text-transform:uppercase;background:var(--paper);color:var(--ink);border:2.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);padding:6px 16px 3px;font-size:18px}#skip-btn{display:none;position:fixed;bottom:5vh;right:4vw}#skip-btn.show{display:block}#speed-btn:active,#pause-btn:active,#skip-btn:active,#again-btn:active{box-shadow:1px 1px 0 var(--ink);translate:2px 2px}#controls button:focus-visible,#start-btn:focus-visible,#again-btn:focus-visible{outline:3px solid var(--red);outline-offset:3px}#start{pointer-events:none;transition:opacity 1s;position:absolute;inset:0}#start.gone{opacity:0;visibility:hidden;transition:opacity 1s,visibility 0s 1s}#start .head{color:var(--paper);text-shadow:3px 3px 0 var(--ink), -1.5px -1.5px 0 var(--ink), 1.5px -1.5px 0 var(--ink), -1.5px 1.5px 0 var(--ink);position:absolute;top:7vh;left:5vw}#start h1{text-transform:uppercase;margin:0;font-size:clamp(56px,9vw,120px);font-weight:400;line-height:.9}#start .sub{margin:8px 0 0;font-size:clamp(20px,2.2vw,28px)}#start .go{text-align:center;width:min(560px,90vw);position:absolute;bottom:8vh;left:50%;translate:-50%}#start-btn{letter-spacing:.08em;text-transform:uppercase;background:var(--paper);color:var(--ink);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);padding:10px 46px 6px;font-size:30px;transition:translate .12s,box-shadow .12s}#start-btn:hover:not(:disabled){box-shadow:7px 7px 0 var(--ink);translate:-2px -2px}#start-btn:active:not(:disabled){box-shadow:2px 2px 0 var(--ink);translate:3px 3px}#start-btn:disabled{opacity:.6;cursor:default}#start.gone #start-btn{pointer-events:none}#start .pick{margin-inline:8px;min-height:44px;color:var(--paper);text-shadow:1px 1px 0 var(--ink);text-underline-offset:5px;pointer-events:auto;margin-top:10px;font-size:20px;line-height:44px;-webkit-text-decoration:underline wavy;text-decoration:underline wavy;text-decoration-thickness:1px;display:inline-block}#start.gone .pick{pointer-events:none}#start .pick:focus-visible{outline:3px solid var(--red);outline-offset:3px}#start .hint{color:var(--paper);text-shadow:1px 1px 0 var(--ink);margin:14px 0 0;font-size:19px}#scroll-hint{color:var(--paper);text-shadow:1px 1px 0 var(--ink);opacity:0;font-size:22px;transition:opacity .6s;position:absolute;bottom:calc(5vh + 150px);left:50%;translate:-50%}#scroll-hint.show{opacity:1}#scroll-hint.bob{animation:1.6s ease-in-out infinite pp-bob}@keyframes pp-bob{50%{translate:-50% 6px}}#end-card{color:var(--paper);visibility:hidden;position:absolute;inset:0}#end-card.show{visibility:visible}#end-card .black{opacity:0;background:#000;position:absolute;inset:0}#end-card .credits{text-align:center;width:min(720px,92vw);position:absolute;top:4vh;left:50%;translate:-50%}#end-card .credit{text-shadow:2px 2px 0 var(--ink), -1px -1px 0 var(--ink), 1px -1px 0 var(--ink), -1px 1px 0 var(--ink), 0 0 12px #0006;opacity:0;margin:0;font-size:clamp(20px,2.2vw,27px);line-height:1.3;position:absolute;top:0;left:0;right:0}#end-card .credit.big{font-size:clamp(28px,3.4vw,42px)}#end-card .credit span,#end-card .credit i{opacity:0;font-style:normal}#end-card .last{flex-direction:column;justify-content:center;align-items:center;gap:28px;display:flex;position:absolute;inset:0}#end-card .peace{opacity:0;margin:0;font-size:clamp(34px,5vw,64px)}#end-card #again-btn,#end-card .full{opacity:0;pointer-events:none}#end-card.show .black{animation:end-in 3s ease var(--in) forwards}#end-card.show .credit{animation:end-in 1.4s ease var(--in) forwards, end-out 1.4s ease var(--out) forwards}#end-card.show .credit span,#end-card.show .credit i{animation:end-in 1.2s ease var(--in) forwards}#end-card.show .peace{animation:end-in 2.4s ease var(--in) forwards}#end-card.show #again-btn,#end-card.show .full{animation:end-in 1.2s ease var(--in) forwards;pointer-events:auto}@keyframes end-in{0%{opacity:0}to{opacity:1}}@keyframes end-out{0%{opacity:1}to{opacity:0}}#end-card .full{color:var(--paper);text-underline-offset:5px;font-size:19px;-webkit-text-decoration:underline wavy;text-decoration:underline wavy;text-decoration-thickness:1px}#end-card .full:focus-visible{outline:3px solid var(--red);outline-offset:3px}#wipe{background:var(--paper);border-left:6px solid var(--ink);border-right:6px solid var(--ink);pointer-events:none;position:absolute;inset:-10vh -30vw;transform:skew(-12deg)translate(calc(-130vw - 26vh))}#wipe.go{transition:transform .9s cubic-bezier(.7,0,.3,1);transform:skew(-12deg)translate(calc(130vw + 26vh))}@media (width<=600px){#caption{width:82vw}#caption p{min-height:2.5em}#title-card{top:auto;bottom:calc(5vh + 5em)}#skip-btn{bottom:calc(5vh + 7em)}#scroll-hint{bottom:calc(5vh + 5em + 80px)}#passport{width:88vw;top:62px}}@media (width>=601px) and (width<=1100px){#passport{width:min(560px,92vw - 340px);left:4vw;translate:none}}@media (height<=500px){#caption{bottom:3vh}#caption p{min-height:1.25em;padding:8px 16px 6px}#skip-btn{bottom:calc(3vh + 4.4em)}}@media (prefers-reduced-motion:reduce){#scroll-hint.bob{animation:none}#controls .tally i.glow{animation-duration:10ms}#title-card,#passport .stamp svg{transition:opacity .2s}}@media (width<=420px){#passport .stamp .name{letter-spacing:-.01em;font-size:15px}}#start .pick[hidden]{display:none}
