:root{--font:"DM Sans", system-ui, sans-serif;--font-title:"Kalam", "DM Sans", cursive;--ink:#1d2326;--paper:#fbf8f0;--red:#d8433a}#ui{pointer-events:none;font-family:var(--font);color:var(--ink);font-weight:600;position:fixed;inset:0;overflow:hidden}#ui button{font:inherit;cursor:pointer;pointer-events:auto}#passport{opacity:0;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;width:min(560px,80vw);height:104px;transition:opacity .8s;position:absolute;top:6px;left:50%;overflow:auto hidden;translate:-50%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000)}#passport::-webkit-scrollbar{display:none}.started #passport,#passport.show{opacity:1;pointer-events:auto}#ui:has(#end-card.show:not(.done)) #passport{opacity:0;pointer-events:none}#ui:has(#end-card.show:not(.done)) #passport .stamp{pointer-events:none}#ui:has(#end-card.done) #passport{z-index:1}#passport .track{height:100%;position:relative}#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;background:0 0;border:0;margin:0;padding:0;position:absolute;top:50%}#passport .stamp.hi{translate:-50% calc(-50% - 27px)}#passport .stamp.lo{translate:-50% calc(27px - 50%)}#passport .stamp:not(:disabled){pointer-events:auto}#passport .stamp .disc{font-family:var(--font);border:2.5px solid var(--paper);color:var(--paper);text-shadow:1px 1px #00000059;background:#ffffff24;border-radius:50%;place-items:center;font-size:17px;font-weight:700;line-height:1;transition:scale .12s;display:grid;position:absolute;inset:3px}#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{opacity:0;width:calc(100% + 6px);height:calc(100% + 6px);transition:opacity .15s,scale .35s cubic-bezier(.2,1.6,.4,1),rotate .35s;position:absolute;inset:-3px;rotate:-14deg;scale:1.8}#passport .stamp.inked .disc{text-shadow:none;background:0 0;border-color:#0000}#passport .stamp.inked svg{opacity:1;scale:1;rotate:var(--tilt,-6deg)}#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);pointer-events:none;background:#a5704f;border-radius:50%;width:25px;height:25px;position:absolute;top:50%;left:0;translate:-50% -50%;box-shadow:inset 0 7px #1b1715}#title-card{max-width:70vw;color:var(--paper);text-transform:uppercase;letter-spacing:.04em;font-family:var(--font-title);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);font-weight:700;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);font-weight:400;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,#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}#speed-btn:active,#pause-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;--glow:0 0 18px #00000073, 0 0 4px #00000059;transition:opacity 1s;position:absolute;inset:0}#start.gone{opacity:0;visibility:hidden;transition:opacity 1s,visibility 0s 1s}#start:before{content:"";background:radial-gradient(70% 45% at 50% 40%,#00000038,#0000 70%),linear-gradient(#0000 60%,#00000052);position:absolute;inset:0}#start .head{text-align:center;width:min(900px,92vw);color:var(--paper);text-shadow:var(--glow);position:absolute;top:40%;left:50%;translate:-50% -50%}#start h1{font-family:var(--font-title);text-transform:uppercase;text-shadow:0 0 28px #00000073,0 0 6px #0000004d;margin:0;font-size:clamp(56px,10vw,128px);font-weight:700;line-height:.9}#start .sub{margin:14px 0 0;font-size:clamp(19px,2vw,26px);font-weight:500;line-height:1.35}#start .sub span{display:block}#start .sub span+span{letter-spacing:.08em;opacity:.9;font-size:.8em}#start .go{text-align:center;width:min(560px,92vw);position:absolute;bottom:7vh;left:50%;translate:-50%}#start-btn{background:var(--paper);min-height:52px;color:var(--ink);border:0;border-radius:999px;padding:14px 34px;font-size:20px;font-weight:600;transition:background .2s,scale .15s}#start-btn .len{color:#6f6d68;font-weight:500}#start-btn:hover:not(:disabled){background:#fff}#start-btn:active:not(:disabled){scale:.97}#start-btn:disabled{opacity:.7;cursor:default}#start.gone #start-btn{pointer-events:none}#start .hint{color:var(--paper);text-shadow:var(--glow);margin:12px 0 0;font-size:15px;font-weight:500}#start .picks{margin:6px 0 0}#start .pick{min-height:40px;color:var(--paper);text-shadow:var(--glow);text-underline-offset:4px;pointer-events:auto;margin-inline:8px;font-size:15px;font-weight:500;line-height:40px;-webkit-text-decoration:underline #f7f5f080;text-decoration:underline #f7f5f080;text-decoration-thickness:1px;display:inline-block}#start .pick:hover{text-decoration-color:currentColor}#start .pick .len{white-space:pre;opacity:.8;display:inline-block}#start.gone .pick{pointer-events:none}#start .pick:focus-visible{outline:3px solid var(--red);outline-offset:3px}#start .pick[hidden]{display:none}#start .where{letter-spacing:.08em;text-transform:uppercase;color:var(--paper);text-shadow:var(--glow);opacity:0;margin:0;font-size:13px;font-weight:500;transition:opacity .6s;position:absolute;bottom:3vh;left:4vw}#start .where.on{opacity:.85}#end-card{color:var(--paper);visibility:hidden;--glow:0 0 16px #00000080, 0 0 4px #00000059;position:absolute;inset:0}#end-card.show{visibility:visible}#end-card .shade{opacity:0;--in:.5s;background:radial-gradient(80% 55% at 50% 30%,#0006,#0000 75%),linear-gradient(#0000 70%,#00000059);position:absolute;inset:0}#end-card .cards{text-align:center;width:min(760px,92vw);position:absolute;top:30%;left:50%;translate:-50% -50%}#end-card .card{opacity:0;text-shadow:var(--glow);flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:0;right:0;translate:0 -50%}#end-card .card p{margin:0;font-size:clamp(18px,2vw,24px);font-weight:500}#end-card .card .big{font-family:var(--font-title);font-size:clamp(34px,5vw,60px);font-weight:700;line-height:1.05}#end-card .title .big+p{margin-top:10px}#end-card .card img{filter:drop-shadow(0 0 10px #00000073);height:auto;display:block}#end-card .talks{translate:0 -64%}#end-card .atecha{width:clamp(100px,10vw,124px)}#end-card .talks p{margin:8px 0 12px;font-size:clamp(20px,2.4vw,28px)}#end-card .talks p span{opacity:.85;font-size:.75em}#end-card .teja{width:clamp(170px,18vw,210px)}#end-card .peace .big{text-transform:uppercase;letter-spacing:.04em;font-size:clamp(44px,7vw,88px)}#end-card .ew{pointer-events:auto;margin-top:8px;display:block}#end-card .ew img{width:clamp(220px,34vw,420px)}#end-card .last{flex-direction:column;align-items:center;gap:14px;display:flex;position:absolute;bottom:11vh;left:0;right:0}#end-card .join{color:var(--paper);text-shadow:var(--glow);border-bottom:1.5px solid #f7f5f099;padding-bottom:2px;font-size:20px;font-weight:600;text-decoration:none}#end-card .join:hover{border-bottom-color:currentColor}#end-card #again-btn{letter-spacing:0;text-transform:none;box-shadow:none;border:0;border-radius:999px;padding:11px 26px;font-size:17px;font-weight:600}#end-card .full{color:var(--paper);text-shadow:var(--glow);text-underline-offset:4px;font-size:15px;font-weight:500}#end-card .by{text-align:center;letter-spacing:.06em;color:var(--paper);text-shadow:var(--glow);opacity:0;margin:0;font-size:12px;font-weight:500;position:absolute;bottom:3vh;left:0;right:0}#end-card .join,#end-card #again-btn,#end-card .full{opacity:0;pointer-events:none}#end-card a:focus-visible{outline:3px solid var(--red);outline-offset:3px}#end-card.show .shade,#end-card.show .card,#end-card.show .by{animation:end-in 1.6s ease var(--in) forwards}#end-card.show .card.goes{animation:end-in 1.6s ease var(--in) forwards, end-out 1.4s ease var(--out) forwards}#end-card.show .join,#end-card.show #again-btn,#end-card.show .full{animation:end-in 1.2s ease var(--in) forwards;pointer-events:auto}#end-card.show .by{animation-name:end-by}@keyframes end-in{0%{opacity:0}to{opacity:1}}@keyframes end-out{0%{opacity:1}to{opacity:0}}@keyframes end-by{0%{opacity:0}to{opacity:.75}}@media (height<=560px){#end-card .cards{top:34%}#end-card .last{flex-flow:wrap;justify-content:center;bottom:9vh}}#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))}#wipe.leave,#wipe.cover{transform:skew(-12deg)translate(0)}#wipe.leave{transition:transform .45s cubic-bezier(.7,0,1,1)}#wipe.off{transition:transform .45s cubic-bezier(0,0,.3,1);transform:skew(-12deg)translate(calc(130vw + 26vh))}@media (width<=600px){#caption{width:92vw}#caption p{min-height:2.5em;padding:10px 14px 8px;font-size:17px}#title-card{top:auto;bottom:calc(5vh + 5em)}#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}}@media (prefers-reduced-motion:reduce){#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}}@media (width<=374px){#caption p{-webkit-line-clamp:3;line-clamp:3;font-size:16px}}
