@font-face{font-family:Bagel Fat One;font-style:normal;font-display:swap;font-weight:400;src:url(./bagel-fat-one-latin-400-normal-CB1T13M1.woff2)format("woff2"),url(./bagel-fat-one-latin-400-normal-BFAfIXLM.woff)format("woff")}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(./kalam-latin-400-normal-BthBl_aR.woff2)format("woff2"),url(./kalam-latin-400-normal-Bl-H2BUA.woff)format("woff")}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:700;src:url(./kalam-latin-700-normal-D2H-9ISU.woff2)format("woff2"),url(./kalam-latin-700-normal-7TSuSrjP.woff)format("woff")}:root{--ink:#3a1f4b;--ink-soft:#6b5078;--bubblegum:#ff4f81;--sunshine:#ffc93c;--paper:#fff;--sheet:#f6f9ff;--rule:#c7dbf6;--margin:#ff9db7;--display:"Bagel Fat One", "Arial Rounded MT Bold", system-ui, sans-serif;--hand:"Kalam", "Segoe Print", "Bradley Hand", cursive;--sticker-edge:3px solid var(--ink);--sticker-shadow:4px 5px 0 var(--ink);--gutter:max(16px, env(safe-area-inset-left))}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--hand);-webkit-text-size-adjust:100%;background:#ffcb9a;margin:0;font-size:18px;overflow:hidden}#world{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#ui{pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;top:0;bottom:0;left:0;right:0}#ui:before{content:"";pointer-events:none;background:radial-gradient(at 50% 52%,#0000 55%,#3a1f4b33 100%);position:absolute;top:0;bottom:0;left:0;right:0}#ui button,#ui input,#ui dialog,#ui form{pointer-events:auto}.whiteout{opacity:0;background:radial-gradient(circle at 50% 45%,#fff 0%,#fff6ea 55%,#ffe6d2 100%);position:absolute;top:0;bottom:0;left:0;right:0}.button{-webkit-appearance:none;appearance:none;border:var(--sticker-edge);box-shadow:3px 4px 0 var(--ink);background:var(--paper);color:var(--ink);font-family:var(--hand);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;min-height:48px;padding:.62em 1.15em .5em;font-size:1.05rem;font-weight:700;line-height:1.2;transition:transform .12s,box-shadow .12s}.button:hover{box-shadow:4px 5px 0 var(--ink);transform:translate(-1px,-1px)}.button:active{box-shadow:0 0 0 var(--ink);transform:translate(3px,4px)}.button--primary{background:var(--bubblegum);color:#fff}:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.chip{top:max(14px, env(safe-area-inset-top));background:var(--paper);border:var(--sticker-edge);box-shadow:3px 3px 0 var(--ink);opacity:0;border-radius:999px;margin:0;padding:.4em .85em .25em;font-size:.95rem;font-weight:700;transition:opacity .4s;position:absolute}.chip.is-visible{opacity:1}.chip--progress{left:var(--gutter);transform:rotate(-1.5deg)}.chip--hearts{right:max(16px, env(safe-area-inset-right));color:#d81b5b;transform:rotate(1.5deg)}.chip--sound{top:calc(max(14px, env(safe-area-inset-top)) + 46px);right:max(16px, env(safe-area-inset-right));color:var(--ink);font-family:var(--hand);cursor:pointer;visibility:hidden;touch-action:manipulation;font-size:.85rem;line-height:1.2}.chip--sound.is-visible{visibility:visible}.chip--hearts.is-popping{animation:.34s cubic-bezier(.3,1.8,.5,1) pop}@keyframes pop{40%{transform:rotate(-3deg)scale(1.22)}}.hint{left:50%;bottom:max(26px, env(safe-area-inset-bottom));text-align:center;background:var(--sunshine);border:var(--sticker-edge);width:max-content;max-width:calc(100vw - 32px);box-shadow:var(--sticker-shadow);opacity:0;border-radius:16px;margin:0;padding:.5em 1em .35em;font-weight:700;transition:opacity .3s,transform .3s;position:absolute;transform:translate(-50%,16px)rotate(-1deg)}.hint.is-visible{opacity:1;transform:translate(-50%)rotate(-1deg)}.bubble{background:var(--paper);border:var(--sticker-edge);opacity:0;will-change:transform;border-radius:18px;width:max-content;max-width:220px;margin:0;padding:.4em .85em .25em;font-weight:700;transition:opacity .18s;position:absolute;top:0;left:0}.bubble:after{content:"";background:var(--paper);border-right:var(--sticker-edge);border-bottom:var(--sticker-edge);width:16px;height:16px;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)rotate(45deg)scale(.8)}.bubble.is-visible{opacity:1}.title{padding:max(7vh, env(safe-area-inset-top)) var(--gutter) max(6vh, env(safe-area-inset-bottom));text-align:center;flex-direction:column;align-items:center;transition:opacity .5s,transform .5s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.title.is-leaving{opacity:0;transform:translateY(-24px)}.title__for{margin:0 0 .4rem;font-size:clamp(1.3rem,4vw,1.8rem);font-weight:700}.title__heading{max-width:11ch;font-family:var(--display);color:#fff;-webkit-text-stroke:.14em var(--ink);paint-order:stroke fill;letter-spacing:.005em;filter:drop-shadow(5px 6px 0 var(--ink));margin:0;font-size:clamp(3.3rem,min(15vw,15vh),8rem);font-weight:400;line-height:.96;animation:.6s cubic-bezier(.2,1.5,.4,1) both slap;transform:rotate(-2.5deg)}@keyframes slap{0%{opacity:0;transform:rotate(4deg)scale(1.3)}}.menu,.options,.gate{margin-top:auto}.title.is-options{justify-content:center}.title.is-options .title__heading,.title.is-options .title__for{display:none}.title.is-options .options{max-height:88vh;margin-block-start:0;margin-block-end:0}.menu{flex-direction:column;align-items:stretch;gap:14px;width:min(100%,300px);animation:.5s cubic-bezier(.2,1.2,.4,1) .25s both rise;display:flex}.menu .button{min-height:58px;font-size:1.3rem}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}.options{background:var(--paper);border:var(--sticker-edge);width:min(100%,440px);max-height:72vh;box-shadow:var(--sticker-shadow);text-align:left;border-radius:24px;flex-direction:column;gap:14px;padding:18px 20px 20px;animation:.35s cubic-bezier(.2,1.2,.4,1) both rise;display:flex;overflow-y:auto}.options__title{font-family:var(--display);margin:0;font-size:1.8rem;font-weight:400}.options__group{flex-direction:column;gap:8px;display:flex}.options__label{margin:0;font-size:1.05rem;font-weight:700}.options__choices{flex-wrap:wrap;gap:8px;display:flex}.options__choice{flex:1 1 0;min-width:64px;min-height:44px;padding-inline-start:.6em;padding-inline-end:.6em;font-size:1rem}.options__choice.is-active{background:var(--sunshine)}.options__hint{min-height:1.3em;color:var(--ink-soft);margin:0;font-size:.95rem}.options__back{align-self:stretch}.gate{background:var(--paper);border:var(--sticker-edge);width:min(100%,420px);box-shadow:var(--sticker-shadow);border-radius:22px;flex-direction:column;align-items:center;gap:12px;padding:18px;display:flex}.gate__question{font-size:1.15rem;font-weight:700}.gate__input{border:var(--sticker-edge);width:100%;font-family:var(--hand);text-align:center;color:var(--ink);-webkit-user-select:text;user-select:text;border-radius:12px;padding:.6em .8em .45em;font-size:1.15rem}.gate__error{color:#c2134d;min-height:1.3em;margin:0;font-weight:700}.loading{background:linear-gradient(#ffe7c2 0%,#ffd0a0 55%,#ffb98a 100%);place-items:center;transition:opacity .5s;display:grid;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.loading.is-leaving{opacity:0}.loading__sky{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.loading__cloud{background:#ffffffb3;border-radius:999px;height:34px;animation:linear infinite loading-drift;position:absolute}.loading__cloud:before,.loading__cloud:after{content:"";background:inherit;border-radius:50%;position:absolute;bottom:8px}.loading__cloud:before{width:40%;height:150%;left:18%}.loading__cloud:after{width:30%;height:120%;right:14%}.loading__cloud--1{width:120px;animation-duration:38s;animation-delay:-10s;top:14%}.loading__cloud--2{opacity:.8;width:90px;animation-duration:52s;animation-delay:-30s;top:30%}.loading__cloud--3{opacity:.6;width:70px;animation-duration:64s;animation-delay:-4s;top:7%}@keyframes loading-drift{0%{transform:translate(-160px)}to{transform:translate(calc(100vw + 160px))}}.loading__heart{bottom:-2rem;left:var(--x);font-size:var(--size);color:#ff5d8f;opacity:0;animation:loading-float var(--time) ease-in infinite;animation-delay:var(--delay);position:absolute}@keyframes loading-float{0%{opacity:0;transform:translateY(0)translate(0)scale(.6)}15%{opacity:.85}50%{transform:translateY(-45vh)translate(14px)scale(1)}to{opacity:0;transform:translateY(-95vh)translate(-10px)scale(1.1)}}.loading__center{text-align:center;width:min(86vw,460px);color:var(--ink,#3a1f4b);justify-items:center;gap:8px;display:grid;position:relative}.loading__for{letter-spacing:.04em;margin:0;font-size:1.05rem;font-weight:700;animation:.7s both loading-rise}.loading__title{color:#fff;-webkit-text-stroke:7px #3a1f4b;paint-order:stroke fill;margin:0 0 18px;font-family:Bagel Fat One,sans-serif;font-size:clamp(2.4rem,9vw,3.6rem);font-weight:400;line-height:1;animation:.7s .12s both loading-rise}@keyframes loading-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.loading__road{--progress:0;background:#5b4358;border-radius:999px;width:100%;height:16px;margin-top:34px;position:relative;box-shadow:0 3px #3a1f4b}.loading__fill{transform-origin:0;transform:scaleX(var(--progress));background:linear-gradient(90deg,#ff7aa6,#ff4f87);border-radius:999px;position:absolute;top:3px;bottom:3px;left:3px;right:3px}.loading__dashes{opacity:.55;background:repeating-linear-gradient(90deg,#fff1d8 0 10px,#0000 10px 20px);height:2px;position:absolute;top:50%;left:8px;right:8px}.loading__car{width:78px;transform:translateX(calc(var(--progress) * min(86vw, 460px)));margin-left:-39px;position:absolute;bottom:6px;left:0}.loading__bounce{animation:.5s ease-in-out infinite alternate loading-bounce}.loading__carsvg{width:100%;display:block;overflow:visible}.loading__wheel{animation:.6s linear infinite loading-spin}@keyframes loading-bounce{0%{transform:translateY(0)rotate(-1deg)}to{transform:translateY(-3px)rotate(1deg)}}@keyframes loading-spin{to{transform:rotate(360deg)}}.loading__stage{margin:14px 0 0;font-size:1.25rem;font-weight:700}.loading__stage.is-pop{animation:.4s loading-pop}@keyframes loading-pop{0%{opacity:.4;transform:scale(.9)}60%{transform:scale(1.06)}to{opacity:1;transform:none}}.loading__dots i{background:currentColor;border-radius:50%;width:5px;height:5px;margin-left:4px;animation:1.1s ease-in-out infinite loading-dot;display:inline-block}.loading__dots i:nth-child(2){animation-delay:.15s}.loading__dots i:nth-child(3){animation-delay:.3s}@keyframes loading-dot{0%,70%,to{opacity:.4;transform:translateY(0)}35%{opacity:1;transform:translateY(-6px)}}.loading__percent{opacity:.7;margin:0;font-size:.95rem;font-weight:700}.loading__whisper{opacity:.85;min-height:1.4em;margin:2px 0 0;font-size:1.05rem;transition:opacity .22s,transform .22s}.loading__whisper.is-swapping{opacity:0;transform:translateY(6px)}.loading.is-done .loading__car{animation:.7s ease-in .1s forwards loading-zoom}.loading.is-done .loading__dots,.loading.is-done .loading__whisper{opacity:0}@keyframes loading-zoom{to{transform:translateX(calc(var(--progress) * min(86vw, 460px) + 120vw))}}@media (prefers-reduced-motion:reduce){.loading__cloud,.loading__heart,.loading__wheel,.loading__bounce,.loading__dots i{animation:none}.loading__heart{display:none}}.stop-card{left:var(--gutter);bottom:max(16px, env(safe-area-inset-bottom));background:var(--paper);border:var(--sticker-edge);width:min(100vw - 32px,400px);box-shadow:var(--sticker-shadow);visibility:hidden;border-radius:22px 22px 22px 6px;padding:14px 18px 16px;transition:transform .45s cubic-bezier(.25,1.3,.45,1);position:absolute;transform:translateY(calc(100% + 40px))rotate(2deg)}.stop-card.is-visible{visibility:visible;transform:rotate(-.8deg)}.stop-card__date{color:var(--ink-soft);margin:0;font-size:1rem}.stop-card__title{font-family:var(--display);margin:0 0 .55rem;font-size:clamp(1.5rem,5vw,1.9rem);font-weight:400;line-height:1.08}.stop-card__actions{gap:10px;display:flex}.stop-card__actions .button{white-space:nowrap;flex:1 1 0;padding-inline-start:.5em;padding-inline-end:.5em;font-size:clamp(.9rem,4.4vw,1.05rem)}.letter,.lightbox{color:var(--ink)}.letter{--line:34px;width:min(100vw,640px);max-width:100vw;height:100dvh;max-height:100dvh;padding:max(14px, env(safe-area-inset-top)) 12px max(14px, env(safe-area-inset-bottom));background:0 0;border:0;flex-direction:column;align-items:center;gap:14px;margin:0 auto;overflow:hidden}.letter[open]{display:flex}.letter::backdrop{background:#3a1f4b9e}.lightbox::backdrop{background:#3a1f4b9e}.letter[open] .letter__paper{animation:.38s cubic-bezier(.25,1.2,.5,1) unfold}@keyframes unfold{0%{opacity:0;transform:translateY(40px)rotate(2deg)}}.letter__paper{--line:34px;overscroll-behavior:contain;width:100%;min-height:0;padding:var(--line) 22px var(--line) 54px;color:var(--ink);background-color:var(--sheet);background-image:linear-gradient(90deg, transparent 41px, var(--margin) 41px, var(--margin) 43px, transparent 43px), repeating-linear-gradient(transparent 0, transparent calc(var(--line) - 1px), var(--rule) calc(var(--line) - 1px), var(--rule) var(--line));border:var(--sticker-edge);box-shadow:5px 6px 0 var(--ink);font-size:1.16rem;line-height:var(--line);-webkit-user-select:text;user-select:text;background-attachment:local;border-radius:8px;flex:0 auto;overflow-y:auto}.letter__date,.letter__title,.letter__line,.letter__signature{margin:0}.letter__date{color:var(--ink-soft)}.letter__title{font-family:var(--display);font-size:1.8rem;font-weight:400;line-height:var(--line);margin-bottom:var(--line);color:#d81b5b}.letter__line{margin-bottom:var(--line);max-width:62ch}.letter__signature{text-align:right;font-size:1.3rem;font-weight:700}.letter__close{flex:none}.lightbox{background:0 0;border:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;overflow:hidden}.lightbox[open]{place-items:center;display:grid}.lightbox__frame{box-shadow:6px 8px 0 var(--ink);border:var(--sticker-edge);text-align:center;background:#fffdf8;max-width:calc(100vw - 32px);margin:0;padding:14px 14px 8px;animation:.3s cubic-bezier(.25,1.2,.5,1) unfold;transform:rotate(-.7deg)}.lightbox__image{object-fit:contain;width:auto;min-width:min(60vw,300px);max-width:calc(100vw - 68px);height:auto;max-height:calc(100dvh - 190px);margin:0 auto;display:block}.lightbox__caption{padding-top:8px;font-weight:700}.lightbox__close{left:50%;bottom:max(16px, env(safe-area-inset-bottom));position:absolute;translate:-50%}.ending{left:var(--gutter);bottom:max(16px, env(safe-area-inset-bottom));background:var(--paper);border:var(--sticker-edge);width:min(100vw - 32px,430px);box-shadow:var(--sticker-shadow);border-radius:22px 22px 22px 6px;padding:14px 18px 16px;animation:.6s cubic-bezier(.25,1.3,.45,1) both ending-in;position:absolute;transform:rotate(-.8deg)}@keyframes ending-in{0%{transform:translateY(calc(100% + 40px))rotate(2deg)}}.ending__title{font-family:var(--display);color:#d81b5b;margin:0 0 .35rem;font-size:clamp(1.7rem,7vw,2.15rem);font-weight:400;line-height:1.04}.ending__label{color:var(--ink-soft);margin:0}.ending__count{font-family:var(--display);margin:0;font-size:clamp(1.25rem,5.4vw,1.55rem);line-height:1.12}.ending__clock{font-variant-numeric:tabular-nums;margin:.1rem 0 .65rem;font-size:1rem}.ending__actions{flex-wrap:wrap;gap:8px;display:flex}.ending__actions .button{white-space:nowrap;flex:1 1 0;min-height:44px;padding:.45em .4em .35em;font-size:.98rem}.ending__actions .ending__secret{flex-basis:100%;order:-1}.ending__hearts{color:var(--ink-soft);margin:.6rem 0 0;font-size:.95rem;line-height:1.3}.is-fallback,.is-fallback body{background:#ffdcae;height:auto;overflow:auto}.is-fallback #ui{pointer-events:auto;-webkit-user-select:text;user-select:text;position:static}.fallback{padding:40px var(--gutter) 80px;flex-direction:column;align-items:center;gap:28px;display:flex}.fallback__stop{max-width:640px;overflow:visible}.fallback__photos{max-width:420px}.fallback__photos img{width:100%;box-shadow:2px 2px 0 var(--ink);border:6px solid #fff;display:block}@media (max-width:480px){.ending{padding:10px 14px 12px}.ending__title{margin-bottom:.15rem;font-size:1.55rem}.ending__count{white-space:nowrap;font-size:clamp(.98rem,4.9vw,1.2rem)}.ending__clock{white-space:nowrap;margin-bottom:.45rem;font-size:clamp(.78rem,3.8vw,.92rem)}.ending__hearts{margin-top:.4rem;font-size:.84rem}}@media (max-width:480px) and (max-height:640px){.ending__label{display:none}.ending__title{font-size:1.35rem}.ending__actions .button{min-height:40px;font-size:.84rem}.ending__hearts{font-size:.76rem}}@media (max-height:480px){.title{padding-block-start:14px;padding-block-end:14px}.title__heading{max-width:none;font-size:clamp(2.4rem,13vh,4rem)}.stop-card{width:300px;padding:8px 14px 12px}.stop-card__title{margin-bottom:.3rem;font-size:1.3rem}.stop-card .button{min-height:42px;padding:.4em .8em .3em;font-size:.95rem}.ending{width:340px;padding:8px 12px 10px}.ending__title{margin-bottom:.1rem;font-size:1.35rem}.ending__label{display:none}.ending__count{font-size:1.05rem}.ending__clock{margin-bottom:.35rem;font-size:.85rem}.ending__actions .button{min-height:36px;font-size:.82rem}.ending__hearts{margin-top:.3rem;font-size:.78rem}.lightbox__image{min-width:0;max-height:calc(100dvh - 120px)}.lightbox__close{bottom:16px;left:auto;right:16px;translate:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.game{padding:max(16px, env(safe-area-inset-top)) var(--gutter) max(16px, env(safe-area-inset-bottom));pointer-events:auto;background:#3a1f4b61;place-items:center;transition:opacity .3s;animation:.3s both game-in;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.game.is-leaving{opacity:0}@keyframes game-in{0%{opacity:0}}.game__card{--board:min(78vw, 46vh, 340px);background:var(--paper);border:var(--sticker-edge);width:min(100%,420px);box-shadow:var(--sticker-shadow);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:10px;padding:16px 18px 18px;animation:.35s cubic-bezier(.2,1.3,.4,1) both rise;display:flex}.game--deep .game__card{background:#e8fbff}.game--sky .game__card{background:#fff7ee}.game__title{font-family:var(--display);margin:0;font-size:clamp(1.4rem,5vw,1.9rem);font-weight:400;line-height:1.1}.game__hint{min-height:2.6em;color:var(--ink-soft);margin:0;font-size:1rem}.game__area{width:var(--board);min-height:var(--board);place-items:center;display:grid}.game__area.is-won .game__art{width:55%;animation:.7s cubic-bezier(.2,1.6,.4,1) both found}@keyframes found{0%{transform:scale(.2)rotate(-20deg)}}.game__art{aspect-ratio:1;width:100%;display:block}.game__skip{min-height:40px;font-size:.95rem}.game .is-wrong{animation:.4s wrong}@keyframes wrong{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.game__find{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.game__prop{-webkit-appearance:none;appearance:none;border:var(--sticker-edge);box-shadow:3px 4px 0 var(--ink);font-family:var(--hand);color:var(--ink);cursor:pointer;touch-action:manipulation;background:#f6f9ff;border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:8px;display:flex;position:relative}.game__prop .game__art{width:min(100%, calc(var(--board) / 2.6))}.game__prop.is-empty{opacity:.55;box-shadow:none}.game__prop.is-found{background:var(--sunshine)}.game__note{min-height:2.4em;font-size:.85rem;font-weight:700}.game__match{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;display:grid}.game__card-face{-webkit-appearance:none;appearance:none;aspect-ratio:3/4;border:var(--sticker-edge);background:var(--bubblegum);box-shadow:3px 4px 0 var(--ink);color:#fff;font-family:var(--display);cursor:pointer;touch-action:manipulation;border-radius:16px;font-size:clamp(1.8rem,9vw,2.8rem);position:relative}.game__card-face .game__card-front,.game__card-face .game__card-back{place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.game__card-face .game__card-front{color:var(--ink);display:none}.game__card-face.is-up,.game__card-face.is-done{background:#fff}.game__card-face.is-up .game__card-back,.game__card-face.is-done .game__card-back{display:none}.game__card-face.is-up .game__card-front,.game__card-face.is-done .game__card-front{display:grid}.game__card-face.is-done{background:var(--sunshine)}.game__slide{width:var(--board);height:var(--board);background:var(--ink);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;display:grid}.game__tile{touch-action:none;-webkit-appearance:none;appearance:none;cursor:pointer;touch-action:manipulation;background-color:#ffe3ec;background-size:300% 300%;border:0;border-radius:6px}.game__tile.is-empty{cursor:default;background:#3a1f4b}.game__stars{width:var(--board);height:var(--board);border:var(--sticker-edge);background:radial-gradient(circle at 50% 40%,#3b4aa0,#1b2266);border-radius:18px;position:relative;overflow:hidden}.game__star-lines{pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.game__star-lines line{stroke:#ffe58a;stroke-width:1.2px;stroke-linecap:round}.game__star{-webkit-appearance:none;appearance:none;width:44px;height:44px;color:var(--ink);font-family:var(--display);clip-path:polygon(50% 0,62% 35%,98% 38%,69% 59%,79% 95%,50% 74%,21% 95%,31% 59%,2% 38%,38% 35%);cursor:pointer;touch-action:manipulation;background:#ffe58a;border:0;font-size:1.15rem;position:absolute;transform:translate(-50%,-50%)}.game__star.is-lit{filter:drop-shadow(0 0 6px #fff7b8);background:#fff}.game__jelly{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.game__jellyfish{-webkit-appearance:none;appearance:none;border:var(--sticker-edge);opacity:.8;cursor:pointer;touch-action:manipulation;background:#0f3b57;border-radius:20px;padding:10px;transition:transform .15s,box-shadow .15s,opacity .15s}.game__jellyfish .game__art{width:min(100%, calc(var(--board) / 2.8));margin:0 auto}.game__jellyfish.is-glowing{opacity:1;box-shadow:0 0 26px 6px var(--glow);transform:scale(1.08)}.lightbox__step{z-index:2;min-width:52px;margin:0;padding:.2em .5em .35em;font-size:2rem;line-height:1;position:fixed;top:50%;transform:translateY(-50%)}.lightbox__step--previous{left:var(--gutter)}.lightbox__step--next{right:var(--gutter)}.photo-flip{left:50%;top:max(64px, calc(env(safe-area-inset-top) + 56px));background:var(--paper);border:var(--sticker-edge);box-shadow:3px 3px 0 var(--ink);opacity:0;pointer-events:none;border-radius:999px;align-items:center;gap:10px;padding:6px 10px;font-weight:700;transition:opacity .3s,transform .3s;display:flex;position:absolute;transform:translate(-50%)translateY(-20px)}.photo-flip.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.photo-flip .button{min-width:46px;min-height:42px;padding:0 .7em .2em;font-size:1.5rem}.photo-flip__count{text-align:center;min-width:3.6em}.deck{right:var(--gutter);top:max(100px, calc(env(safe-area-inset-top) + 92px));-webkit-appearance:none;appearance:none;cursor:pointer;opacity:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation;width:132px;filter:drop-shadow(3px 4px 0 var(--ink));background:0 0;border:0;padding:0;transition:opacity .5s,transform .5s;position:absolute;transform:translateY(-14px)}.deck.is-visible{opacity:1;transform:none}.deck__body{border:var(--sticker-edge);background:linear-gradient(#ff6b97,#ff4f81 55%,#e63a6e);border-radius:50px 50px 14px 14px;display:block;position:relative;overflow:hidden}.deck__arch{border-bottom:3px solid var(--ink);background:linear-gradient(#fff6e9,#ffe3b8);height:30px;display:block;position:relative}.deck__lights{justify-content:space-between;display:flex;position:absolute;top:4px;bottom:auto;left:10px;right:10px}.deck__light{border:1.5px solid var(--ink);background:#b8a98c;border-radius:50%;width:7px;height:7px}.deck.is-playing .deck__light{animation:1.4s ease-in-out infinite chase}.deck__light:nth-child(2){animation-delay:.2s}.deck__light:nth-child(3){animation-delay:.4s}.deck__light:nth-child(4){animation-delay:.6s}.deck__light:nth-child(5){animation-delay:.8s}.deck__light:nth-child(6){animation-delay:1s}.deck__light:nth-child(7){animation-delay:1.2s}@keyframes chase{0%,to{box-shadow:none;background:#b8a98c}25%{background:#ffc93c;box-shadow:0 0 6px 2px #ffd966}60%{background:#7fdcc0;box-shadow:0 0 6px 2px #a6f0da}}.deck__plate{color:var(--ink);font-family:var(--display);letter-spacing:.12em;text-align:center;text-transform:uppercase;font-size:.62rem;position:absolute;bottom:2px;left:0;right:0}.deck__middle{align-items:stretch;gap:5px;padding:7px 7px 5px;display:flex}.deck__speaker{border:2px solid var(--ink);background:repeating-radial-gradient(circle,#2a1538 0 2px,#4a2a5c 2px 4px);border-radius:8px;flex:0 0 22px;place-items:center;display:grid}.deck__cone{border:1.5px solid var(--ink);background:radial-gradient(circle at 35% 35%,#ffe3b8,#c98f5a);border-radius:50%;width:10px;height:10px}.deck.is-playing .deck__cone{animation:.55s ease-in-out infinite thump}.deck.is-playing .deck__speaker:last-child .deck__cone{animation-delay:.27s}@keyframes thump{50%{transform:scale(1.35)}}.deck__bay{border:2px solid var(--ink);background:linear-gradient(#e9e4dc,#b9b2a6);border-radius:8px;flex:1;padding:3px}.deck__slot{border:2px solid var(--ink);background:#1f0f2b;border-radius:5px;height:44px;display:block;position:relative;overflow:hidden}.deck__base{justify-content:space-between;align-items:flex-end;gap:6px;padding:2px 9px 8px;display:flex}.deck__buttons{gap:4px;display:flex}.deck__key{border:2px solid var(--ink);background:linear-gradient(#fff6e9,#d9d0bd);border-radius:3px;width:12px;height:9px}.deck__key--play{background:#7fdcc0}.deck.is-playing .deck__key--play{transform:translateY(1px);box-shadow:inset 0 2px #00000040}.deck__meter{align-items:flex-end;gap:2px;height:14px;display:flex}.deck__bar{background:#fff6e9;border-radius:1px;width:3px;height:3px}.deck.is-playing .deck__bar{animation:.7s ease-in-out infinite meter}.deck.is-playing .deck__bar:nth-child(2n){background:#ffc93c;animation-duration:.5s;animation-delay:-.2s}.deck.is-playing .deck__bar:nth-child(3n){background:#7fdcc0;animation-duration:.9s;animation-delay:-.4s}.deck.is-playing .deck__bar:nth-child(5n){animation-duration:.6s;animation-delay:-.1s}@keyframes meter{50%{height:14px}}.cassette{border:2px solid var(--ink);background:#fff6e9;border-radius:4px;flex-direction:column;justify-content:space-between;padding:2px 4px 3px;display:flex;position:absolute;top:2px;bottom:2px;left:3px;right:3px}.cassette__label{color:var(--ink);background:#ffe9a8;border-radius:2px;flex-direction:column;align-items:center;padding:1px 2px;line-height:1;display:flex}.cassette__title{white-space:nowrap;font-size:.55rem;font-weight:700}.cassette__artist{white-space:nowrap;color:var(--ink-soft);font-size:.5rem}.cassette__reels{justify-content:space-between;align-items:center;padding:0 2px;display:flex}.cassette__tape{background:#5b3a2a;flex:1;height:3px;margin:0 2px}.cassette__reel{border:2px solid var(--ink);background:conic-gradient(var(--ink) 0 25%, #fff 0 50%, var(--ink) 0 75%, #fff 0);border-radius:50%;width:10px;height:10px}.deck.is-playing .cassette__reel{animation:1.1s linear infinite reel}@keyframes reel{to{transform:rotate(360deg)}}.cassette.is-entering{animation:.7s cubic-bezier(.2,1.2,.4,1) both cassette-in}.cassette.is-leaving{animation:.75s ease-in both cassette-out}@keyframes cassette-in{0%{transform:translateY(150%)rotate(-8deg)}70%{transform:translateY(-6%)}}@keyframes cassette-out{25%{transform:translateY(-18%)}to{opacity:0;transform:translateY(160%)rotate(10deg)}}@media (max-width:600px){.deck{--deck-scale:.55;scale:var(--deck-scale);transform-origin:top;left:calc(50% - 66px);right:auto;top:max(8px, env(safe-area-inset-top))}.deck__speaker{display:none}.deck__slot{height:50px}.cassette__title{font-size:.8rem}.cassette__artist{font-size:.6rem}.cassette__reel{width:8px;height:8px}}@media (max-width:380px){.deck{--deck-scale:.5;left:calc(50% - 66px)}}@media (min-width:900px){.deck{width:200px}.deck__arch{height:38px}.deck__plate{font-size:.8rem}.deck__light{width:9px;height:9px}.deck__speaker{flex-basis:34px}.deck__cone{width:15px;height:15px}.deck__slot{height:66px}.cassette__title{font-size:.74rem}.cassette__artist{font-size:.62rem}.cassette__reel{width:15px;height:15px}.deck__bar{width:4px}}.chevron{position:relative}.chevron:after{content:"";border:solid var(--ink);border-width:0 4px 4px 0;border-radius:2px;width:.55em;height:.55em;position:absolute;top:50%;left:50%}.chevron--left:after{transform:translate(-30%,-50%)rotate(135deg)}.chevron--right:after{transform:translate(-70%,-50%)rotate(-45deg)}.photo-flip .chevron{min-width:52px;font-size:1.4rem}.lightbox__step.chevron{min-width:56px;min-height:56px;font-size:1.8rem;position:fixed}
