@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#23333f;--ink-soft:#5d707d;--ink-faint:#23333f1f;--cream:#fff7ea;--card:#fff;--sky-top:#7fcdf2;--sky-low:#d9f2fc;--grass:#8fdc7f;--grass-deep:#5bbf63;--sun:#ffc93c;--sun-deep:#f2a516;--berry:#ff6b6b;--plum:#8b6cef;--good:#3cc072;--good-deep:#2a9d58;--glow:#ffd84d;--world:#0f7b74;--world-soft:color-mix(in srgb, var(--world) 14%, white);--touch-min:92px;--radius-l:32px;--radius-m:22px;--radius-s:14px;--press:0 7px 0 #23333f29;--press-low:0 2px 0 #23333f29;--lift:0 14px 30px #23333f29;--font:"Fredoka Variable", "Fredoka", "Varela Round", system-ui, sans-serif;--spring:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);background:var(--cream);color:var(--ink);overscroll-behavior:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;font-weight:500;overflow:hidden}#root{flex-direction:column;display:flex}button{font:inherit;color:inherit;cursor:pointer;min-width:var(--touch-min);min-height:var(--touch-min);background:0 0;border:none;padding:0}button:active:not(:disabled){scale:.96}:where(.reach){position:relative}.reach:after{content:"";inset:calc(var(--reach,8px) * -1);border-radius:inherit;position:absolute}button:focus-visible{outline:4px solid var(--plum);outline-offset:4px}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}button:has(>.art){place-items:center;display:grid}.route{flex-direction:column;flex:1;min-height:0;animation:.22s route-in;display:flex}@keyframes route-in{0%{opacity:0;transform:scale(.985)}}.screen{min-height:0;padding:max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@keyframes wobble{0%,to{transform:rotate(0)}20%{transform:rotate(-6deg)}45%{transform:rotate(5deg)}70%{transform:rotate(-3deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10%)}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes glow{0%,to{box-shadow:var(--press), 0 0 0 0 #ffd84de6}50%{box-shadow:var(--press), 0 0 0 14px #ffd84d73}}@keyframes guide-idle{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-4%)rotate(-2deg)}}@keyframes float{0%,to{transform:translateY(0) rotate(var(--tilt,0deg))}50%{transform:translateY(-8px) rotate(var(--tilt,0deg))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.gate{z-index:60;background:#23333f8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.gate__card{background:var(--card);width:min(100%,520px);box-shadow:var(--lift);text-align:center;font-family:var(--font);border-radius:30px;flex-direction:column;gap:18px;padding:28px;display:flex}.gate__title{margin:0;font-size:26px}.gate__ask{margin:0;font-size:20px;line-height:1.5}.gate__ask strong{color:var(--plum);font-size:26px;display:block}.gate__options{direction:ltr;grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.gate__option{background:#f3f0ff;border-radius:16px;min-width:0;min-height:64px;font-size:26px;font-weight:700;box-shadow:inset 0 0 0 2px #8b6cef40}.gate__wrong{color:var(--berry);margin:0;font-weight:600}.gate__back{background:var(--good);color:#fff;min-height:72px;box-shadow:0 6px 0 var(--good-deep);border-radius:999px;font-size:22px;font-weight:700}.scene{z-index:0;pointer-events:none;background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-low) 58%, #f3fbff 100%);position:absolute;inset:0;overflow:hidden}.scene--game{background:linear-gradient(180deg, #e9f7fd 0%, var(--cream) 70%)}.scene__sun{top:5%;aspect-ratio:1;background:radial-gradient(circle, #fff3b0 0%, var(--sun) 60%, #ffc93c00 72%);border-radius:50%;width:clamp(70px,13vmin,130px);position:absolute;inset-inline-end:7%}.scene--game .scene__sun{opacity:.35}.scene__cloud{filter:drop-shadow(0 4px #fff6);background:#ffffffe6;border-radius:999px;width:clamp(110px,20vmin,210px);height:clamp(36px,6vmin,66px);animation:70s linear infinite drift;position:absolute}.scene__cloud:before,.scene__cloud:after{content:"";background:inherit;border-radius:50%;position:absolute}.scene__cloud:before{top:-60%;width:46%;height:130%;inset-inline-start:18%}.scene__cloud:after{top:-40%;width:34%;height:100%;inset-inline-start:52%}.scene__cloud--a{top:14%;left:-20%}.scene__cloud--b{animation-duration:95s;animation-delay:-40s;top:30%;left:-40%;transform:scale(.7)}.scene__cloud--c{animation-duration:120s;animation-delay:-80s;top:8%;left:-30%;transform:scale(.55)}.scene--game .scene__cloud{opacity:.5}@keyframes drift{0%{translate:0}to{translate:160vw}}.scene__hills{inset-inline:0;width:100%;height:26vh;position:absolute;bottom:0}.scene__hill--back{fill:color-mix(in srgb, var(--grass) 70%, var(--world) 12%);opacity:.75}.scene__hill--front{fill:var(--grass)}.scene--world .scene__hill--front{fill:color-mix(in srgb, var(--grass) 75%, var(--world) 25%)}.scene--game .scene__hills{opacity:.35;height:14vh}.scene--night{background:linear-gradient(#1c2850 0%,#33467a 62%,#4a5c8e 100%)}.scene--night .scene__sun{background:radial-gradient(circle at 40% 40%,#fffbe8 0%,#f2e9c0 56%,#f2e9c000 72%)}.scene--night .scene__cloud{opacity:.12}.scene--night .scene__hill--back{fill:#2a3961;opacity:1}.scene--night .scene__hill--front{fill:#212e51}.scene__star{background:#fff8d6;border-radius:50%;width:6px;height:6px;animation:3.6s ease-in-out infinite twinkle;position:absolute;box-shadow:0 0 6px 2px #fff8d68c}@keyframes twinkle{0%,to{opacity:.9}50%{opacity:.3}}.hello{justify-content:center;align-items:center}.hello__body{z-index:1;flex-direction:column;align-items:center;gap:clamp(10px,2.4vmin,22px);display:flex;position:relative}.hello__avatar{--a:clamp(120px, 26vmin, 220px);width:var(--a);height:var(--a);padding:calc(var(--a) * .1);background:radial-gradient(circle at 40% 35%, #fff, var(--sun) 75%);box-shadow:0 8px 0 var(--sun-deep), var(--lift);animation:pop-in .6s var(--spring);border-radius:50%;display:block}.hello__avatar .art{animation:3s ease-in-out infinite guide-idle}.hello__name{color:var(--ink);text-shadow:0 3px #fff,0 0 18px #ffffffe6;margin:0;font-size:clamp(40px,9vmin,76px);font-weight:700}.hello__play{background:var(--good);color:#fff;width:clamp(130px,26vmin,210px);height:clamp(130px,26vmin,210px);box-shadow:0 10px 0 var(--good-deep), var(--lift);border-radius:50%;place-items:center;animation:1.6s ease-in-out infinite breathe;display:grid}.hello__play .icon{width:50%;height:50%;margin-inline-start:0;translate:6%}.hello__play:active{box-shadow:0 4px 0 var(--good-deep);transform:translateY(6px)}.hello__switch{z-index:1;bottom:max(16px, env(safe-area-inset-bottom));min-height:56px;color:var(--ink-soft);background:#fffc;border-radius:999px;align-items:center;gap:8px;padding:0 20px;font-size:18px;font-weight:600;display:flex;position:absolute;inset-inline-start:16px}.hello__switch .icon{width:26px;height:26px}.face{--talk:0;width:100%;height:100%;display:block;position:relative}.face--talking{transform:translateY(calc(var(--talk) * -3%)) scale(calc(1 + var(--talk) * .03), calc(1 + var(--talk) * .06));transform-origin:50% 90%}.face__parts{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.face__mouth{transform-box:fill-box;transform-origin:50% 0;transform:scale(calc(.7 + var(--talk) * .3), var(--talk))}.face--talking .face__mouth{transform:scale(calc(.7 + var(--talk) * .3), calc(.12 + var(--talk) * .88))}.face__cover{opacity:0}.face--talking .face__cover,.face--open .face__cover,.face--laugh .face__cover{opacity:1}.face__chin{transform:translateY(calc(var(--talk) * var(--drop)))}.face--open .face__chin{transform:translateY(var(--drop));transition:transform .18s ease-out}.face__lid{transform-box:fill-box;transform-origin:50% 0;animation:blink var(--blink,4.5s) ease-in-out infinite;transform:scaleY(0)}.face__eye+.face__eye .face__lid{animation-delay:20ms}@keyframes blink{0%,93%,to{transform:scaleY(0)}95.5%{transform:scaleY(1)}}.face__smile{fill:none;stroke:#2e2f2f;stroke-width:1.7px;stroke-linecap:round;opacity:0}.face--happy .face__lid{animation:none;transform:scaleY(1)}.face--happy .face__smile{opacity:1}@media (prefers-reduced-motion:reduce){.face--talking{transform:none}}.face--open .face__mouth{transition:transform .18s ease-out;transform:scale(1)}.face--chomp .face__mouth{animation:.62s ease-in-out chomp}@keyframes chomp{0%{transform:scale(1)}25%{transform:scale(.85,.12)}50%{transform:scale(.95,.7)}75%{transform:scale(.85,.1)}to{transform:scale(.7,0)}}.face--chomp .face__lid{animation:none;transform:scaleY(1)}.face--chomp .face__smile{opacity:1}.face--laugh .face__mouth{animation:.2s ease-in-out infinite alternate laugh}@keyframes laugh{0%{transform:scale(.85,.45)}to{transform:scale(1)}}.feed-flyer{z-index:70;border-radius:var(--radius-l);background:var(--card);box-shadow:var(--lift);pointer-events:none;place-items:center;display:grid;position:fixed}.face--asleep .face__lid,.face--yawn .face__lid{animation:none;transform:scaleY(1)}.face--asleep .face__smile{opacity:1;transform-box:fill-box;transform-origin:50%;transform:scaleY(-1)}.face--yawn .face__smile{opacity:1}.face--yawn .face__mouth{animation:1.6s ease-in-out both yawn}@keyframes yawn{0%{transform:scale(.7,0)}35%,70%{transform:scale(.85,1.35)}to{transform:scale(.7,0)}}.wear--head{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.wear--icon{width:100%;height:100%;display:block;overflow:visible}.creature{aspect-ratio:100/130;max-width:100%;height:100%;margin-inline:auto;display:block;position:relative}.creature__layer{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.creature__head{display:block;position:absolute}.creature__arm{transition:transform .35s var(--spring)}.creature__tail{animation:1.8s ease-in-out infinite tail-swish}.creature__torso{transform-origin:50px 126px;animation:3.4s ease-in-out infinite breathe-body}.creature--idle .creature__arm--l{animation:3.2s ease-in-out infinite sway-l}.creature--idle .creature__arm--r{animation:3.2s ease-in-out infinite sway-r}.creature--talk .creature__arm--l{animation:.9s ease-in-out infinite present}.creature--happy .creature__arm--l{transform:rotate(150deg)}.creature--happy .creature__arm--r{transform:rotate(-150deg)}.creature--think .creature__arm--r{transform:rotate(150deg)}.creature--wave .creature__arm--r{animation:.42s ease-in-out infinite alternate wave}.creature--dance{transform-origin:50% 100%;animation:.46s ease-in-out infinite alternate dance-bounce}.creature--dance .creature__arm--l{animation:.92s ease-in-out infinite dance-l}.creature--dance .creature__arm--r{animation:.92s ease-in-out infinite dance-r}.creature--giggle{transform-origin:50% 100%;animation:.2s ease-in-out infinite alternate giggle-wriggle}.creature--giggle .creature__arm--l{animation:.2s ease-in-out infinite alternate hug-l}.creature--giggle .creature__arm--r{animation:.2s ease-in-out infinite alternate hug-r}.creature--yawn .creature__arm--l{animation:1.6s ease-in-out both stretch-l}.creature--yawn .creature__arm--r{animation:1.6s ease-in-out both stretch-r}.creature--sleep .creature__torso,.creature--sleep .creature__tail{animation-duration:5.5s}.creature--sleep .creature__arm--l{transform:rotate(-30deg)}.creature--sleep .creature__arm--r{transform:rotate(30deg)}.creature--happy .creature__wing.creature__arm--l{transform:rotate(75deg)}.creature--happy .creature__wing.creature__arm--r{transform:rotate(-75deg)}.creature--think .creature__wing.creature__arm--r{transform:rotate(38deg)}.creature--talk .creature__wing.creature__arm--l{animation:.9s ease-in-out infinite wing-present}.creature--wave .creature__wing.creature__arm--r{animation:.42s ease-in-out infinite alternate wing-wave}.creature--dance .creature__wing.creature__arm--l{animation:.46s ease-in-out infinite alternate wing-flap-l}.creature--dance .creature__wing.creature__arm--r{animation:.46s ease-in-out infinite alternate wing-flap-r}.creature--giggle .creature__wing.creature__arm--l{animation:.2s ease-in-out infinite alternate wing-titter-l}.creature--giggle .creature__wing.creature__arm--r{animation:.2s ease-in-out infinite alternate wing-titter-r}.creature--yawn .creature__wing.creature__arm--l{animation-name:wing-stretch-l}.creature--yawn .creature__wing.creature__arm--r{animation-name:wing-stretch-r}.creature--sleep .creature__wing.creature__arm--l{transform:rotate(-12deg)}.creature--sleep .creature__wing.creature__arm--r{transform:rotate(12deg)}@keyframes giggle-wriggle{0%{transform:rotate(-3deg)scale(1.02,.97)}to{transform:rotate(3deg)scale(.98,1.03)}}@keyframes hug-l{0%{transform:rotate(-28deg)}to{transform:rotate(-44deg)}}@keyframes hug-r{0%{transform:rotate(28deg)}to{transform:rotate(44deg)}}@keyframes wing-titter-l{0%{transform:rotate(4deg)}to{transform:rotate(28deg)}}@keyframes wing-titter-r{0%{transform:rotate(-4deg)}to{transform:rotate(-28deg)}}@keyframes tail-swish{0%,to{transform:rotate(0)}50%{transform:rotate(-10deg)}}@keyframes breathe-body{0%,to{transform:scale(1)}50%{transform:scale(1.015,1.03)}}@keyframes sway-l{0%,to{transform:rotate(0)}50%{transform:rotate(6deg)}}@keyframes sway-r{0%,to{transform:rotate(0)}50%{transform:rotate(-6deg)}}@keyframes present{0%,to{transform:rotate(35deg)}50%{transform:rotate(70deg)}}@keyframes wave{0%{transform:rotate(-125deg)}to{transform:rotate(-165deg)}}@keyframes dance-bounce{0%{transform:translateY(0)rotate(-4deg)}to{transform:translateY(-5%)rotate(4deg)}}@keyframes dance-l{0%,to{transform:rotate(150deg)}50%{transform:rotate(30deg)}}@keyframes dance-r{0%,to{transform:rotate(-30deg)}50%{transform:rotate(-150deg)}}@keyframes wing-present{0%,to{transform:rotate(18deg)}50%{transform:rotate(42deg)}}@keyframes wing-wave{0%{transform:rotate(-55deg)}to{transform:rotate(-90deg)}}@keyframes wing-flap-l{0%{transform:rotate(10deg)}to{transform:rotate(80deg)}}@keyframes wing-flap-r{0%{transform:rotate(-10deg)}to{transform:rotate(-80deg)}}@keyframes stretch-l{0%,to{transform:rotate(0)}40%,70%{transform:rotate(160deg)}}@keyframes stretch-r{0%,to{transform:rotate(0)}40%,70%{transform:rotate(-160deg)}}@keyframes wing-stretch-l{0%,to{transform:rotate(0)}40%,70%{transform:rotate(80deg)}}@keyframes wing-stretch-r{0%,to{transform:rotate(0)}40%,70%{transform:rotate(-80deg)}}.stars{gap:2px;display:inline-flex}.stars__star{color:#dde3e8;filter:drop-shadow(0 1px #23333f2e);width:1em;height:1em}.stars__star .icon{width:100%;height:100%}.stars__star--on{color:var(--sun);filter:drop-shadow(0 2px 0 var(--sun-deep))}.tenframes{direction:ltr;flex-wrap:wrap;justify-content:center;gap:clamp(6px,1.4vmin,12px);display:inline-flex}.tenframe{grid-template-columns:repeat(5, var(--cell,clamp(30px, 6vmin, 54px)));grid-auto-rows:var(--cell,clamp(30px, 6vmin, 54px));background:#fff;border-radius:12px;gap:3px;padding:5px;display:grid;box-shadow:inset 0 0 0 3px #23333f1f}.tenframes[data-frames="2"] .tenframe,.tenframes[data-frames="3"] .tenframe{--cell:clamp(22px, 4.6vmin, 40px)}.tenframes[data-frames="4"] .tenframe,.tenframes[data-frames="5"] .tenframe,.tenframes[data-frames="6"] .tenframe,.tenframes[data-frames="7"] .tenframe,.tenframes[data-frames="8"] .tenframe,.tenframes[data-frames="9"] .tenframe,.tenframes[data-frames="10"] .tenframe{--cell:clamp(12px, 2.6vmin, 22px)}.tenframe__cell{background:#23333f0d;border-radius:8px;place-items:center;padding:2px;display:grid}.tenframe__cell--filled{opacity:.25;transition:opacity .2s}.tenframe__cell--on{opacity:1;animation:pop-in .35s var(--spring)}.tenframe__dot{background:var(--world);border-radius:50%;width:82%;height:82%;box-shadow:inset 0 -3px #0000002e}.confetti{pointer-events:none;z-index:30;position:absolute;inset:0;overflow:hidden}.confetti__bit{border-radius:3px;width:10px;height:16px;animation:linear forwards confetti-fall;position:absolute;top:-5%}.confetti__bit--wide{width:16px;height:9px}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:.8;transform:translateY(110vh)rotate(720deg)}}.sparkles{pointer-events:none;z-index:5;width:0;height:0;position:absolute;inset:50% auto auto 50%}.sparkles__bit{width:26px;height:26px;color:var(--glow);filter:drop-shadow(0 2px 0 var(--sun-deep));margin:-13px;animation:.7s ease-out forwards sparkle-out;position:absolute}.sparkles__bit .icon{width:100%;height:100%}@keyframes sparkle-out{0%{transform:rotate(var(--a)) translateY(0) scale(.3);opacity:1}to{transform:rotate(var(--a)) translateY(-90px) scale(1);opacity:0}}.hand-hint{pointer-events:none;z-index:6;filter:drop-shadow(0 4px 4px #0003);width:clamp(48px,9vmin,76px);height:clamp(48px,9vmin,76px);margin-left:calc(clamp(48px,9vmin,76px)/-2);animation:1s ease-in-out infinite hand-tap;position:absolute;bottom:-18%;left:50%}@keyframes hand-tap{0%,to{transform:translateY(0)}50%{transform:translateY(-22%)}}.parent-btn{min-width:0;min-height:48px;color:var(--ink-soft);-webkit-touch-callout:none;touch-action:none;background:#ffffffeb;border-radius:999px;align-items:center;gap:6px;padding:6px 14px 6px 8px;font-size:16px;font-weight:600;display:inline-flex;position:relative;box-shadow:0 3px #23333f1a}.parent-btn__icon{place-items:center;width:32px;height:32px;display:grid;position:relative}.parent-btn__icon .icon{width:24px;height:24px}.parent-btn__ring{position:absolute;inset:0;transform:rotate(-90deg)}.parent-btn__ring circle{fill:none;stroke:var(--plum);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px}.parent-btn--holding .parent-btn__ring circle{animation:1.2s linear forwards parent-ring}@keyframes parent-ring{to{stroke-dashoffset:0}}.parent-btn__hint{background:var(--ink);color:#fff;white-space:nowrap;z-index:20;border-radius:10px;padding:6px 12px;font-size:14px;animation:.15s fade-in;position:absolute;top:calc(100% + 8px);left:50%;translate:-50%}@keyframes fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.parent-btn--holding .parent-btn__ring circle{animation-duration:1.2s!important}}.home{align-items:center}.home__top{z-index:2;flex:none;justify-content:space-between;align-items:center;width:100%;display:flex;position:relative}.home__me{min-height:0;box-shadow:var(--press);background:#ffffffd9;border-radius:999px;align-items:center;gap:10px;padding:6px 18px 6px 6px;display:flex}.home__avatar{background:var(--sun);border-radius:50%;width:clamp(54px,10vmin,80px);height:clamp(54px,10vmin,80px);padding:6px;display:block}.home__name{font-size:clamp(22px,4.4vmin,36px);font-weight:600}.home__end{--end-gap:clamp(8px, 2vmin, 16px);align-items:center;gap:var(--end-gap);display:flex}.home__stickers{background:var(--plum);color:#fff;border-radius:28px;place-items:center;width:clamp(76px,13vmin,104px);height:clamp(76px,13vmin,104px);display:grid;position:relative;box-shadow:0 7px #6a4fd1}.home__stickers .icon{width:60%;height:60%}.home__sticker-count{top:-10px;background:var(--sun);min-width:38px;height:38px;color:var(--ink);box-shadow:0 3px 0 var(--sun-deep);border-radius:999px;place-items:center;padding:0 8px;font-size:20px;font-weight:700;display:grid;position:absolute;inset-inline-start:calc(-1 * min(10px, var(--end-gap) - 2px))}.home__doors{z-index:1;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));align-content:center;gap:clamp(12px,3vmin,30px);width:min(100%,1100px);min-height:0;padding:10px 0 30px;display:grid;position:relative}.door{--world-soft:color-mix(in srgb, var(--world) 16%, white);background:var(--card);min-height:0;box-shadow:0 10px 0 var(--world), 0 18px 34px #23333f2e;animation:pop-in .5s var(--spring) both;border-radius:40px;flex-direction:column;align-items:center;transition:transform .14s,box-shadow .14s;display:flex;position:relative;overflow:hidden}.door:active{box-shadow:0 3px 0 var(--world), 0 8px 16px #23333f29;transform:translateY(7px)}.door__art{background:radial-gradient(circle at 50% 40%, #fff 0%, var(--world-soft) 70%);flex:1;width:100%;min-height:0;padding:12% 16% 6%}.door__art .creature{animation:3.4s ease-in-out infinite guide-idle}.door__badge{top:14px;background:var(--card);min-width:clamp(44px,8vmin,64px);height:clamp(44px,8vmin,64px);color:var(--world);border-radius:999px;place-items:center;padding:0 10px;font-size:clamp(20px,3.8vmin,30px);font-weight:700;display:grid;position:absolute;inset-inline-end:14px;box-shadow:0 3px #23333f1f}.door__badge .art{width:1.3em;height:1.3em}.door__foot{flex-direction:column;align-items:center;gap:4px;width:100%;padding:12px 8px 18px;display:flex}.door__title{color:var(--world);font-size:clamp(24px,5vmin,44px);font-weight:700;line-height:1.1}.door__stars{font-size:clamp(24px,4.6vmin,40px)}@media (orientation:portrait) and (aspect-ratio<=3/4){.home__doors{grid-template-columns:minmax(0,520px);grid-auto-rows:minmax(0,1fr);place-content:stretch center;padding-bottom:70px}.door{flex-direction:row}.door__art{flex:none;width:46%;height:100%;padding:6%}.door__foot{flex:1;justify-content:center;height:100%}.door__badge{inset-inline:10px auto}}@media (orientation:landscape) and (height<=500px){.home__doors{grid-template-rows:minmax(0,1fr);align-content:stretch;padding:8px 0 16px}.door__art{padding:4% 16% 2%}.door__foot{gap:0;padding:4px 8px 10px}.door__title{font-size:24px}.door__stars{font-size:22px}}.round-btn{--size:var(--touch-min);width:var(--size);height:var(--size);min-width:var(--size);min-height:var(--size);background:var(--card);color:var(--ink);box-shadow:var(--press);border-radius:50%;flex:none;place-items:center;transition:transform .12s,box-shadow .12s;display:grid}.round-btn .icon{width:52%;height:52%}.round-btn:active:not(:disabled){box-shadow:var(--press-low);transform:translateY(5px)}.round-btn:disabled{opacity:.4;cursor:default}.round-btn--m{--size:max(var(--touch-min), 64px)}.round-btn--l{--size:max(var(--touch-min), clamp(96px, 14vmin, 140px))}.round-btn--xl{--size:clamp(150px, 26vmin, 230px)}.round-btn--go{background:var(--good);color:#fff;box-shadow:0 7px 0 var(--good-deep)}.round-btn--go:active:not(:disabled){box-shadow:0 2px 0 var(--good-deep)}.round-btn--warm{background:var(--sun);color:var(--ink);box-shadow:0 7px 0 var(--sun-deep)}.round-btn--warm:active:not(:disabled){box-shadow:0 2px 0 var(--sun-deep)}.round-btn--quiet{color:var(--ink-soft);background:#ffffffb3;box-shadow:0 4px #23333f1a}.round-btn--beckon{animation:1.4s ease-in-out infinite breathe}.reward{justify-content:center;align-items:center}.reward__body{z-index:2;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(12px,3vmin,28px);display:flex;position:relative}.reward__guide{width:clamp(110px,22vmin,190px);height:calc(1.3*clamp(110px,22vmin,190px));animation:guide-jump .8s var(--spring) 3;display:grid}@keyframes guide-jump{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-22%)scale(1.06)}70%{transform:translateY(0)scale(1.08,.94)}}.reward__stars{font-size:clamp(48px,10vmin,84px)}.reward__stars--grew .stars__star--on:last-of-type{animation:pop-in .6s var(--spring) .6s both}.reward__gift{--g:clamp(150px, 30vmin, 250px);width:var(--g);height:var(--g);padding:calc(var(--g) * .06);animation:1.6s ease-in-out infinite gift-shake}@keyframes gift-shake{0%,70%,to{transform:rotate(0)scale(1)}76%{transform:rotate(-8deg)scale(1.04)}84%{transform:rotate(7deg)scale(1.06)}92%{transform:rotate(-4deg)scale(1.03)}}.reward__sticker{--s:clamp(160px, 32vmin, 270px);width:var(--s);height:var(--s);padding:calc(var(--s) * .12);animation:sticker-in .8s var(--spring);background:radial-gradient(circle,#fff 0%,#fff6d6 60%,#fff6d600 72%);border-radius:50%}.reward__sticker--champion{box-shadow:0 0 0 8px var(--sun), 0 0 0 13px var(--sun-deep), 0 0 40px 10px #ffc93c8c}@keyframes sticker-in{0%{opacity:0;transform:scale(.2)rotate(-180deg)}to{opacity:1;transform:scale(1)rotate(0)}}.reward__actions{opacity:.35;align-items:center;gap:clamp(20px,5vmin,48px);transition:opacity .3s;display:flex}.reward__actions--ready{opacity:1}@media (orientation:landscape){.reward__body{grid-template-columns:auto auto auto;grid-template-areas:"guide gift actions""stars gift actions";place-content:center;align-items:center;gap:12px clamp(20px,6vw,70px);display:grid}.reward__guide{grid-area:guide;place-self:end center;width:min(200px,30vh);height:min(260px,39vh)}.reward__stars{grid-area:stars;align-self:start}.reward__gift,.reward__sticker{grid-area:gift}.reward__actions{flex-direction:column;grid-area:actions}}@media (orientation:landscape) and (height<=500px){.reward__body{grid-template-columns:auto auto auto;grid-template-areas:"guide gift actions""stars gift actions";place-content:center;align-items:center;gap:10px clamp(20px,6vw,60px);display:grid}.reward__guide{grid-area:guide;place-self:end center;width:100px;height:130px}.reward__stars{grid-area:stars;align-self:start;font-size:40px}.reward__gift,.reward__sticker{--g:min(230px, 58vh);--s:min(240px, 62vh);grid-area:gift}.reward__actions{flex-direction:column;grid-area:actions;gap:16px}.reward__actions .round-btn--xl{--size:min(150px, 40vh)}}.reward__guide{position:relative}.reward__wear{top:-6%;aspect-ratio:1;width:46%;animation:sticker-in .7s var(--spring) both;pointer-events:none;background:#fff;border-radius:50%;padding:8%;position:absolute;inset-inline-end:-28%;box-shadow:0 4px #23333f1f,0 0 0 4px #ffd84d}.reward__tip-btn{z-index:3;top:max(10px, env(safe-area-inset-top));min-width:0;min-height:44px;color:var(--ink-soft);background:#ffffffeb;border-radius:999px;padding:6px 14px;font-size:15px;font-weight:600;position:absolute;inset-inline-start:max(12px, env(safe-area-inset-right));box-shadow:0 3px #23333f1a}.reward__tip-layer{z-index:4;padding:calc(max(10px, env(safe-area-inset-top)) + 54px) 12px 12px;background:#23333f2e;justify-content:center;align-items:flex-start;display:flex;position:absolute;inset:0}.reward__tip{max-width:420px;min-height:0;color:var(--ink);text-align:start;background:#fff;border-radius:18px;flex-direction:column;gap:6px;padding:14px 18px;font-size:17px;line-height:1.5;display:flex;box-shadow:0 8px 24px #23333f2e}.reward__tip strong{color:var(--ink-soft);font-size:15px}.glyph__ink{line-height:1;display:inline-block;position:relative}.gface{--talk:0;pointer-events:none;position:absolute;inset:0}.gface__eye{width:calc(.15em * var(--s,1));height:calc(.15em * var(--s,1));background:#fff;border-radius:50%;animation:4.8s ease-in-out infinite gface-blink;position:absolute;translate:-50% -50%;box-shadow:0 0 0 .012em #23333f}.gface__eye:after{content:"";width:48%;height:48%;animation:7s ease-in-out infinite gface-look;animation-delay:inherit;background:#23333f;border-radius:50%;position:absolute;top:55%;left:50%;translate:-50% -50%}.gface__eye--shut{transition:transform .18s var(--spring);animation:none;transform:scaleY(.14)}.gface__eye{transition:transform .18s var(--spring)}.gface__mouth{width:calc(.11em * var(--s,1));height:calc(.06em * var(--s,1));transform-origin:50% 0;translate:-50%;transform:scale(calc(1 + var(--talk) * .2), calc(1 + var(--talk) * 1.4));background:#5b1d1d;border-radius:.02em .02em .06em .06em;position:absolute;box-shadow:0 0 0 .01em #fff}.gface--talking .gface__mouth{border-radius:50%}@keyframes gface-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}@keyframes gface-look{0%,45%,to{translate:-50% -50%}55%,68%{translate:-25% -45%}78%,88%{translate:-75% -45%}}.glyph{pointer-events:none;place-items:center;width:100%;height:100%;display:grid}.glyph--type{font-size:var(--glyph-size,64px);letter-spacing:-.02em;font-weight:600;line-height:1}.glyph--type[data-len="2"]{font-size:calc(var(--glyph-size,64px) * .82)}.glyph--type[data-len="3"]{font-size:calc(var(--glyph-size,64px) * .66)}.glyph--art,.glyph--swatch{padding:10%}.glyph--swatch svg{width:100%;height:100%}.card{--card-size:clamp(var(--touch-min), 24vmin, 200px);--glyph-size:calc(var(--card-size) * .6);width:var(--card-size);height:var(--card-size);min-width:var(--touch-min);min-height:var(--touch-min);border-radius:var(--radius-l);background:var(--card);color:var(--ink);border:5px solid color-mix(in srgb, var(--world) 70%, white);box-shadow:var(--press);flex:none;place-items:center;transition:transform .12s,box-shadow .12s,background .2s,opacity .2s;display:grid;position:relative}.card--s{--card-size:clamp(var(--touch-min), 17vmin, 140px)}.card--l{--card-size:clamp(140px, 34vmin, 300px)}.card__face{pointer-events:none;place-items:center;width:100%;height:100%;display:grid}.card:active:not(:disabled){box-shadow:var(--press-low);transform:translateY(5px)}.card--right{background:var(--good);border-color:var(--good);color:#fff;box-shadow:0 7px 0 var(--good-deep);animation:pop-in .45s var(--spring);z-index:2}.card--wrong{animation:.5s wobble}.card--hint,.card--point{border-color:var(--glow);animation:1.2s ease-in-out infinite glow}.card--dim{opacity:.45}.card:disabled{cursor:default}.guide{--g:clamp(140px, 26vmin, 220px);width:calc(var(--g) * .77);height:var(--g);border-radius:28px;flex:none;place-items:center;min-width:0;min-height:0;display:grid;position:relative}.guide--l{--g:clamp(160px, 32vmin, 260px)}.guide__body{width:100%;height:100%;animation:3.2s ease-in-out infinite guide-idle;display:block}.guide__ear{inset-inline-start:-8%;background:var(--card);width:clamp(30px,30%,46px);height:clamp(30px,30%,46px);color:var(--ink-soft);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:4%;box-shadow:0 3px #23333f26}.guide__ear .icon{width:62%;height:62%}.guide--talking .guide__body{animation:none}.guide--talking .guide__ear{color:var(--world);animation:.6s ease-in-out infinite breathe}.guide--happy .guide__body{animation:guide-jump .7s var(--spring) 2}.guide--think .guide__body{animation:.9s ease-in-out guide-think}.guide:active{transform:scale(.95)}@keyframes guide-think{0%,to{transform:rotate(0)}30%,70%{transform:rotate(-12deg)}}.bubble{border-radius:var(--radius-m);background:var(--card);box-shadow:var(--press);color:var(--ink);text-wrap:balance;max-width:min(68vw,640px);margin:0;padding:.55em .9em;font-size:clamp(17px,3.2vmin,28px);font-weight:600;line-height:1.25;position:relative}.bubble:before{content:"";inset-inline-start:-12px;border:10px solid #0000;border-inline-end-color:var(--card);border-inline-start:0;margin-top:-10px;position:absolute;top:50%}.bubble strong{color:var(--world)}.stage{z-index:1;flex-direction:column;flex:1;gap:clamp(8px,2vmin,20px);min-height:0;display:flex;position:relative}.stage__head{flex:none;justify-content:center;align-items:center;gap:clamp(14px,3vmin,28px);display:flex}.stage__play{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(12px,3vmin,30px);min-height:0;display:flex;position:relative}.choices{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(12px,3vmin,28px);max-width:100%;display:flex}@media (orientation:landscape){.stage{flex-direction:row}.stage__head{flex-direction:column;justify-content:center;gap:14px;width:clamp(150px,26vw,330px)}.stage__head .guide{--g:clamp(150px, 44vh, 330px)}.stage__head .bubble{text-align:center;max-width:100%}.stage__head .bubble:before{top:-10px;margin-top:0;border:10px solid #0000;border-top:0;border-bottom-color:var(--card);margin-inline-start:-10px;inset-inline-start:50%}}@media (orientation:landscape) and (height<=500px){.stage{padding-top:28px}.stage__head{width:clamp(140px,22vw,210px);padding-top:calc(var(--touch-min) - 18px);justify-content:flex-start;gap:12px}.stage__head .guide{--g:130px}}.blend{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(16px,4vmin,40px);width:100%;min-height:0;display:flex}.blend__word{transition:gap .6s var(--spring);justify-content:center;align-items:center;gap:clamp(14px,4vmin,36px);display:flex}.blend__word--joined{gap:0}.blend__part{--p:clamp(88px, 20vmin, 150px);min-width:var(--p);height:var(--p);padding:0 calc(var(--p) * .14);border-radius:calc(var(--p) * .26);border:5px solid var(--world);background:var(--card);box-shadow:0 6px 0 color-mix(in srgb, var(--world) 70%, black);color:var(--ink);font-size:calc(var(--p) * .52);transition:background-color .2s ease, border-radius .6s var(--spring);place-items:center;font-weight:700;line-height:1;display:grid}.blend__part--read{background:#fff4c2}.blend__part--next{animation:1.4s ease-in-out infinite breathe}.blend__word--joined .blend__part{border-radius:0}.blend__word--joined .blend__part:first-child{border-start-start-radius:calc(var(--p) * .26);border-end-start-radius:calc(var(--p) * .26)}.blend__word--joined .blend__part:last-child{border-start-end-radius:calc(var(--p) * .26);border-end-end-radius:calc(var(--p) * .26)}.blend__word--joined .blend__part+.blend__part{border-inline-start:none}.build{flex-wrap:wrap;flex:1;place-content:center;align-items:center;gap:clamp(14px,4vmin,44px);width:min(100%,980px);min-height:0;display:flex}@media (orientation:portrait){.build{flex-direction:column}}.build__source{--s:clamp(110px, 22vmin, 190px);width:var(--s);height:var(--s);padding:calc(var(--s) * .18);box-shadow:0 8px 0 var(--sun-deep), var(--lift);background:radial-gradient(circle at 40% 35%,#fff8d6,#ffe48a);border-radius:50%;transition:transform .12s;position:relative}.build__source:active{transform:translateY(5px)scale(.97)}.build__plus{top:-6px;background:var(--good);color:#fff;width:46px;height:46px;box-shadow:0 3px 0 var(--good-deep);border-radius:50%;font-size:34px;font-weight:700;line-height:46px;position:absolute;inset-inline-end:-6px}.build__basket{box-shadow:inset 0 0 0 5px #e8c48a, var(--press);background:#fff3df;border-radius:34px;padding:16px 16px 46px;position:relative}.build__basket--done{box-shadow:inset 0 0 0 5px var(--good), 0 7px 0 var(--good-deep)}.build__slots{direction:ltr;grid-template-columns:repeat(5,clamp(46px,8.5vmin,80px));grid-auto-rows:clamp(46px,8.5vmin,80px);gap:6px;display:grid}.build__slot{background:#ffffffb3;border-radius:14px;min-width:0;min-height:0;padding:10%;box-shadow:inset 0 0 0 2px #23333f14}.build__slot--full{animation:drop-in .35s var(--spring);background:#fff}@keyframes drop-in{0%{opacity:0;transform:translateY(-60px)scale(.6)}to{opacity:1;transform:none}}.build__basket-art{width:64px;height:64px;position:absolute;bottom:-26px;left:50%;translate:-50%}.build__count{top:-18px;background:var(--card);min-width:52px;height:52px;box-shadow:var(--press);border-radius:999px;place-items:center;font-size:30px;font-weight:700;display:grid;position:absolute;inset-inline-start:-14px}.clap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(12px,3vmin,28px);width:100%;min-height:0;display:flex}.clap__word{--glyph-size:calc(clamp(96px, 20vmin, 160px) * .6);border:5px solid var(--world);background:var(--card);width:clamp(96px,20vmin,160px);height:clamp(96px,20vmin,160px);box-shadow:0 6px 0 color-mix(in srgb, var(--world) 70%, black);border-radius:26%}.clap__drum{--d:clamp(120px, 26vmin, 210px);width:var(--d);height:var(--d);border-radius:50%;place-items:center;min-width:0;min-height:0;display:grid}.clap__skin{width:100%;height:100%;display:block}.clap__skin--beat{animation:.22s ease-out drum-beat}@keyframes drum-beat{40%{transform:scale(.9,.84)}}.clap__dots{gap:12px;min-height:26px;display:flex}.clap__dot{background:var(--world);width:22px;height:22px;animation:pop-in .25s var(--spring);border-radius:50%}.clap__dot--shown{background:#ffb020}.compare{flex-wrap:wrap;justify-content:center;gap:clamp(14px,4vmin,40px);display:flex}.compare__side{border-radius:var(--radius-l);background:var(--card);box-shadow:var(--press);border:5px solid #0000;padding:clamp(12px,2.6vmin,22px);transition:transform .12s;position:relative}.compare__side:active{transform:translateY(4px)}.compare__side .tenframe{--cell:clamp(34px, 7vmin, 62px)}.compare__side--right{border-color:var(--good);animation:pop-in .45s var(--spring);background:#eafaf0}.compare__side--wrong{animation:.5s wobble}.compare__side--hint{border-color:var(--glow);animation:1.2s ease-in-out infinite glow}.compare__side--dim{opacity:.5}.compare__count{top:-18px;background:var(--good);color:#fff;min-width:50px;height:50px;box-shadow:0 3px 0 var(--good-deep);animation:pop-in .35s var(--spring);border-radius:999px;place-items:center;font-size:28px;font-weight:700;display:grid;position:absolute;inset-inline-end:-14px}.count{flex:1;align-items:stretch;gap:clamp(10px,2.4vmin,24px);width:min(100%,980px);min-height:0;display:flex}.count__field{background:#ffffffb3;border-radius:36px;flex:1;min-height:clamp(160px,34vmin,420px);position:relative;box-shadow:inset 0 0 0 4px #23333f0f;container-type:size}.count__thing{--t:min(clamp(var(--touch-min), 15vmin, 128px), calc(100cqw / var(--cols,3) * .8), calc(100cqh / var(--rows,1) * .8));width:var(--t);height:var(--t);min-width:0;min-height:0;margin:calc(var(--t) / -2) 0 0 calc(var(--t) / -2);padding:calc(var(--t) * .06);transform:rotate(var(--tilt));transition:transform .2s var(--spring);border-radius:50%;position:absolute}.count__thing:active{transform:rotate(var(--tilt)) scale(.92)}.count__thing--frame{--cell:max(8px, min(clamp(12px, 3vmin, 26px), calc((100cqw / var(--cols,3) * .84 - 30px) / 5), calc((100cqh / var(--rows,1) * .78 - 21px) / 2)));border-radius:14px;width:auto;height:auto;margin:0;padding:4px;translate:-50% -50%}.count__thing--counted{z-index:1;transform:rotate(var(--tilt)) scale(1.08)}.count__thing--counted:after{content:"";border-radius:inherit;border:4px solid var(--good);pointer-events:none;position:absolute;inset:-4px}.count__badge{top:-10px;background:var(--good);color:#fff;min-width:38px;height:38px;box-shadow:0 3px 0 var(--good-deep);animation:pop-in .35s var(--spring);transform:rotate(calc(var(--tilt) * -1));border-radius:999px;place-items:center;padding:0 6px;font-size:22px;font-weight:700;display:grid;position:absolute;inset-inline-end:-10px}.count__ten{--cell:clamp(20px, 4.4vmin, 40px);background:#fffc;border-radius:24px;align-self:center;padding:10px;position:relative}.count__ten-label{top:-14px;background:var(--good);color:#fff;border-radius:999px;padding:2px 12px;font-size:22px;font-weight:700;position:absolute;inset-inline-end:-10px}@media (orientation:portrait){.count--teen{flex-direction:column}}.glance{flex:1;place-items:center;width:100%;min-height:0;display:grid}.glance__card{--g:clamp(150px, min(38vmin, 34vh), 300px);width:var(--g);height:var(--g);padding:calc(var(--g) * .08);background:var(--card);border:7px solid var(--world);box-shadow:0 9px 0 color-mix(in srgb, var(--world) 70%, black), var(--lift);border-radius:40px;position:relative}.glance__dots{width:100%;height:100%;fill:var(--world);opacity:0;transition:opacity .12s}.glance__dots--on{opacity:1}.glance__cover{font-size:calc(var(--g) * .5);color:color-mix(in srgb, var(--world) 45%, white);animation:pop-in .35s var(--spring);place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.numline{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(18px,5vmin,48px);width:min(100%,980px);min-height:0;display:flex}.numline__card{--c:clamp(84px, 20vmin, 150px);--glyph-size:calc(var(--c) * .62);width:var(--c);height:var(--c);background:var(--card);color:var(--world);border:6px solid var(--world);box-shadow:0 7px 0 color-mix(in srgb, var(--world) 70%, black);border-radius:28%;place-items:center;display:grid}.numline__track{cursor:pointer;touch-action:none;width:calc(100% - 64px);height:clamp(84px,16vmin,120px);position:relative}.numline__bar{inset-inline:0;background:color-mix(in srgb, var(--world) 70%, #23333f);border-radius:5px;height:10px;position:absolute;top:50%;translate:0 -50%}.numline__end{color:var(--ink);font-size:clamp(22px,4.4vmin,34px);font-weight:700;position:absolute;top:calc(50% + 18px);translate:-50%}.numline__end--start{left:0}.numline__end--finish{left:100%}.numline__end:before{content:"";background:color-mix(in srgb, var(--world) 70%, #23333f);border-radius:3px;width:6px;height:30px;position:absolute;bottom:calc(100% + 2px);left:50%;translate:-50%}.numline__tick{background:color-mix(in srgb, var(--world) 50%, #23333f);border-radius:2px;width:3px;height:18px;position:absolute;top:50%;translate:-50% -50%}.numline__tick--five{width:4px;height:28px}.numline__spot{background:#ffd84d8c;border-radius:50%;width:34px;height:34px;animation:1.2s ease-in-out infinite breathe;position:absolute;top:50%;translate:-50% -50%;box-shadow:0 0 0 4px #ffd84d}.numline__mark{border-inline:13px solid #0000;border-top:22px solid var(--plum);width:0;height:0;position:absolute;bottom:50%;translate:-50%}.numline__mark--right{border-top-color:var(--good)}.numline__label{color:var(--good);font-size:clamp(22px,4.4vmin,34px);font-weight:700;position:absolute;bottom:calc(50% + 26px);translate:-50%}.match__tile{--t:clamp(110px, 24vmin, 190px);--glyph-size:calc(var(--t) * .62);z-index:4;width:var(--t);height:var(--t);border-radius:var(--radius-l);background:var(--card);color:var(--world);border:6px solid var(--world);box-shadow:0 8px 0 color-mix(in srgb, var(--world) 70%, black), var(--lift);touch-action:none;cursor:grab;animation:pop-in .45s var(--spring);place-items:center;display:grid;position:relative}.match__tile--dragging{cursor:grabbing;transition:none;box-shadow:0 18px 30px #23333f40}.match__tile--done{opacity:0;transition:opacity .3s,transform .3s;transform:scale(.6)}.match__zone.card{--card-size:clamp(var(--touch-min), 25vmin, 210px)}.match__zone.card--l{width:auto;min-width:clamp(130px,25vmin,230px);padding:10px}.match__art{width:78%;height:78%;display:block}.meet{flex:1;grid-template-columns:auto auto;grid-template-areas:"hero side""next next";place-content:center;align-items:center;gap:clamp(14px,3.5vmin,36px);width:100%;min-height:0;display:grid}@media (orientation:portrait){.meet{grid-template-columns:auto;grid-template-areas:"hero""side""next";justify-items:center}}.meet__hero{--hero:clamp(150px, 40vmin, 340px);--glyph-size:calc(var(--hero) * .66);width:var(--hero);height:var(--hero);background:var(--card);border:7px solid var(--world);color:var(--world);box-shadow:0 9px 0 color-mix(in srgb, var(--world) 70%, black), var(--lift);animation:pop-in .55s var(--spring);border-radius:40px;grid-area:hero}.meet__hero:active{transform:scale(.97)}.meet__count,.meet__word{grid-area:side;justify-self:center}.meet__word{border-radius:var(--radius-l);box-shadow:var(--press);animation:pop-in .5s var(--spring) .4s both;background:#ffffffd9;flex-direction:column;align-items:center;gap:8px;padding:14px 18px;display:flex}.meet__word-art{width:clamp(90px,22vmin,190px);height:clamp(90px,22vmin,190px);display:block}.meet__word-text{font-size:clamp(22px,4.4vmin,40px);font-weight:600}.meet__next{grid-area:next;justify-self:center}.order__slots{direction:rtl;gap:clamp(8px,2vmin,18px);display:flex}[data-world=numbers] .order__slots,[data-world=numbers] .missing__line{direction:ltr}.order__slot{--s:clamp(70px, 15vmin, 128px);--glyph-size:calc(var(--s) * .58);width:var(--s);height:var(--s);border-radius:var(--radius-m);background:#ffffff8c;border:4px dashed #23333f38;place-items:center;display:grid;position:relative}.order__slot--next{border-color:var(--glow);background:#ffd84d2e;animation:1.4s ease-in-out infinite breathe}.order__slot--filled{border-style:solid;border-color:var(--good);background:var(--card)}.order__glyph{width:100%;height:100%;animation:pop-in .35s var(--spring)}.order__ordinal{top:-12px;background:var(--card);width:28px;height:28px;color:var(--ink-soft);border-radius:50%;place-items:center;font-size:16px;font-weight:700;display:grid;position:absolute;inset-inline-start:-10px;box-shadow:0 2px #23333f26}.missing__line{background:#fff9;border-radius:999px;gap:clamp(6px,1.6vmin,14px);padding:14px 18px;display:flex;position:relative}.missing__line:before{content:"";inset-inline:10px;background:#23333f1f;border-radius:3px;height:6px;margin-top:-3px;position:absolute;top:50%}.missing__cell{z-index:1;position:relative}.missing__cell--gap{border-color:var(--glow);background:#ffd84d33;animation:1.4s ease-in-out infinite breathe}.missing__q{font-size:calc(var(--s) * .55);color:var(--sun-deep);font-weight:700}.onemore{flex:1;place-items:center;width:min(100%,980px);min-height:0;display:grid;container-type:size}.onemore__row{--per:min(var(--n), 5);--pad:clamp(14px, 3vmin, 28px);--t:min(clamp(56px, 15vmin, 128px), calc((100cqw - 2 * var(--pad)) / var(--per) * .8), calc((100cqh - 2 * var(--pad)) / 2 * .8));place-content:center;gap:calc(var(--t) * .18);width:calc(var(--per) * var(--t) + (var(--per) - 1) * var(--t) * .18 + 2 * var(--pad));padding:var(--pad);background:#ffffffb3;border-radius:36px;flex-wrap:wrap;display:flex;box-shadow:inset 0 0 0 4px #23333f0f}.onemore__thing{width:var(--t);height:var(--t);transform:rotate(var(--tilt));display:block;position:relative}.onemore__thing--new{animation:onemore-drop .55s var(--spring) both}.onemore__thing--new:after{content:"";border:4px dashed var(--world);pointer-events:none;border-radius:50%;position:absolute;inset:-6px}.onemore__badge{bottom:-6px;background:var(--world);color:#fff;direction:ltr;border-radius:14px;place-items:center;min-width:28px;height:28px;padding:0 6px;font-size:17px;font-weight:700;display:grid;position:absolute;inset-inline-end:-6px}@keyframes onemore-drop{0%{transform:translateY(-120%) rotate(var(--tilt)) scale(.6);opacity:0}to{transform:rotate(var(--tilt));opacity:1}}.pattern{flex:1;place-items:center;width:min(100%,1000px);min-height:0;display:grid;container-type:size}.pattern__row{--cell:min(clamp(48px, 15vmin, 140px), calc((100cqw - 5 * 10px - 28px) / 6), calc(100cqh * .7));direction:ltr;background:#ffffffb3;border-radius:28px;gap:10px;margin:0;padding:14px;list-style:none;display:flex;box-shadow:inset 0 0 0 4px #23333f0f}.pattern__cell{--glyph-size:calc(var(--cell) * .6);width:var(--cell);height:var(--cell);background:var(--card);transition:transform .2s var(--spring);border-radius:22%;place-items:center;display:grid;box-shadow:0 4px #23333f1a}.pattern__cell--lit{box-shadow:0 0 0 4px var(--world), 0 4px 0 #23333f1a;transform:translateY(-10%)scale(1.06)}.pattern__cell--gap{border:4px dashed color-mix(in srgb, var(--world) 55%, white);box-shadow:none;font-size:calc(var(--cell) * .5);color:color-mix(in srgb, var(--world) 55%, white);background:0 0;font-weight:700}.pattern__cell--filled{border-style:solid;border-color:var(--good);background:var(--card);animation:pop-in .45s var(--spring)}.pop{flex-direction:column;flex:1;align-items:center;gap:10px;width:100%;min-height:0;display:flex}.pop__tally{gap:8px;display:flex}.pop__pip{width:clamp(16px,3vmin,24px);height:clamp(16px,3vmin,24px);transition:background .2s ease, transform .2s var(--spring);background:#23333f1f;border-radius:50%}.pop__pip--on{background:var(--good);transform:scale(1.2)}.pop__field{flex:1;width:min(100%,900px);min-height:0;position:relative;container-type:size}.bubble-btn{--b:max(var(--touch-min), min(170px, 19vmin, calc(100cqh / var(--rows,3) * .9), calc(100cqw / 3 * .9)));--glyph-size:calc(var(--b) * .5);--room-x:max(0px, (100cqw / 3 - var(--b)) * .35);--room-y:max(0px, (100cqh / var(--rows,3) - var(--b) - 8px) * .35);left:calc((var(--col) + .5) / 3 * 100% + var(--jx) * var(--room-x));top:calc((var(--row) + .5) / var(--rows,3) * 100% + var(--jy) * var(--room-y));width:var(--b);height:var(--b);margin:calc(var(--b) / -2) 0 0 calc(var(--b) / -2);background:radial-gradient(circle at 30% 25%, #fffffff2 0 12%, transparent 13%), radial-gradient(circle at 50% 50%, hsl(var(--hue) 85% 92% / .95), hsl(var(--hue) 75% 80% / .9));box-shadow:inset 0 0 0 4px hsl(var(--hue) 60% 70% / .7), 0 8px 18px #23333f24;color:var(--ink);border-radius:50%;transition:transform .15s,opacity .25s;animation:3.4s ease-in-out infinite float;position:absolute}.bubble-btn__face{pointer-events:none;place-items:center;width:100%;height:100%;display:grid}.bubble-btn:active:not(:disabled){scale:.94}.bubble-btn--popped{pointer-events:none;animation:.35s ease-out forwards bubble-pop}.bubble-btn--wrong{animation:.5s wobble}.bubble-btn--hint{box-shadow:inset 0 0 0 5px var(--glow), 0 0 0 10px #ffd84d73}@keyframes bubble-pop{0%{opacity:1;transform:scale(1)}40%{opacity:.9;transform:scale(1.25)}to{opacity:0;transform:scale(.2)}}.sort__item{--t:clamp(120px, 26vmin, 210px);--glyph-size:calc(var(--t) * .6);z-index:4;width:var(--t);height:var(--t);background:var(--card);box-shadow:var(--press), var(--lift);touch-action:none;cursor:grab;animation:pop-in .45s var(--spring);border-radius:50%;place-items:center;display:grid;position:relative}.sort__item--dragging{cursor:grabbing;transition:none;box-shadow:0 20px 34px #23333f40}.sort__item--done{opacity:0;transition:opacity .35s,transform .35s;transform:scale(.5)}.sort__bins{grid-template-columns:repeat(var(--n,3), minmax(0, 1fr));gap:clamp(10px,2.6vmin,24px);width:min(100%,860px);display:grid}.sort__bins[data-count="2"]{--n:2;width:min(100%,600px)}.sort__bin{border-radius:var(--radius-l);background:var(--card);border:5px dashed color-mix(in srgb, var(--world) 55%, white);min-height:clamp(130px,26vmin,230px);box-shadow:var(--press);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px 8px;transition:transform .15s,background .2s;display:flex;position:relative}.sort__bin:active{transform:translateY(4px)}.sort__bin-art{width:clamp(56px,13vmin,110px);height:clamp(56px,13vmin,110px);display:block}.sort__bin-title{text-align:center;font-size:clamp(16px,3.2vmin,26px);font-weight:600;line-height:1.15}.sort__bin--right{background:var(--good);border-style:solid;border-color:var(--good);color:#fff;animation:pop-in .45s var(--spring)}.sort__bin--wrong{animation:.5s wobble}.sort__bin--hint{border-color:var(--glow);border-style:solid;animation:1.2s ease-in-out infinite glow}.sort__bin--dim{opacity:.45}.sound__picture{--p:clamp(150px, 34vmin, 290px);width:var(--p);height:var(--p);padding:calc(var(--p) * .1);background:var(--card);box-shadow:var(--press), var(--lift);animation:pop-in .5s var(--spring);border-radius:40px;position:relative}.sound__ear{inset-inline-end:-10px;background:var(--sun);width:clamp(44px,8vmin,64px);height:clamp(44px,8vmin,64px);color:var(--ink);box-shadow:0 4px 0 var(--sun-deep);border-radius:50%;place-items:center;display:grid;position:absolute;top:-10px}.sound__ear .icon{width:60%;height:60%}.sound__label{background:var(--good);color:#fff;white-space:nowrap;animation:pop-in .4s var(--spring);border-radius:999px;padding:4px 14px;font-size:clamp(18px,3.6vmin,30px);font-weight:600;position:absolute;bottom:-18px;left:50%;translate:-50%}.sum{flex-direction:column;align-items:center;gap:clamp(10px,2.4vmin,22px);max-width:100%;display:flex}.sum__row{direction:ltr;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(8px,2.4vmin,22px);display:flex}.sum__group{border-radius:var(--radius-m);background:#ffffffbf;flex-direction:column;align-items:center;gap:6px;padding:12px;display:flex}.sum__things{grid-template-columns:repeat(var(--cols,5), var(--thing,clamp(30px, 6.2vmin, 58px)));grid-auto-rows:var(--thing,clamp(30px, 6.2vmin, 58px));justify-content:center;gap:4px;display:grid}.sum__thing{width:100%;height:100%;display:block}.sum__thing--arriving{animation:arrive .7s var(--spring) both}.sum__thing--leaving{animation:1.6s ease-in-out .5s both leave}.sum--solved .sum__thing--leaving{opacity:.12}@keyframes arrive{0%{opacity:0;transform:translate(60px)scale(.4)}}@keyframes leave{0%{opacity:1;transform:none}to{opacity:.18;transform:translateY(-14px)rotate(-12deg)}}.sum__n{font-size:clamp(26px,5vmin,44px);font-weight:700}.sum__sign{color:var(--world);font-size:clamp(30px,6vmin,54px);font-weight:700}.sum__q{border-radius:var(--radius-m);border:4px dashed var(--sun-deep);min-width:clamp(56px,11vmin,96px);height:clamp(56px,11vmin,96px);color:var(--sun-deep);background:#ffd84d40;place-items:center;font-size:clamp(30px,6vmin,54px);font-weight:700;display:grid}.sum--solved .sum__q{background:var(--good);border:4px solid var(--good);color:#fff;animation:pop-in .4s var(--spring)}.sum__plates{flex-wrap:wrap;justify-content:center;gap:clamp(8px,2vmin,18px);display:flex}.sum__plate{place-items:center;width:clamp(96px,18vmin,160px);height:clamp(96px,18vmin,160px);display:grid;position:relative}.sum__plate-art{opacity:.9;position:absolute;inset:0}.sum__on-plate{--thing:clamp(22px, 4.4vmin, 38px);flex-wrap:wrap;place-content:center;gap:2px;width:64%;display:flex;position:relative}.sum__plate--side .sum__plate-art{z-index:1;opacity:1;inset:38% 0 0}.sum__plate--side .sum__on-plate{--thing:clamp(20px, 4vmin, 34px);flex-wrap:wrap-reverse;align-content:flex-start;width:auto;position:absolute;inset:0 12% 48%}.sum__plate--glass .sum__plate-art{opacity:1}.sum__plate--glass .sum__on-plate{--thing:clamp(20px, 3.8vmin, 34px);flex-wrap:wrap-reverse;align-content:flex-start;gap:0;width:auto;position:absolute;inset:30% 18% 9%}.sum__on-plate .sum__thing{width:var(--thing);height:var(--thing)}.sum__thing--dealt{animation:pop-in .35s var(--spring)}.sum__pile{max-width:min(90vw,560px);min-height:clamp(70px,12vmin,100px);box-shadow:inset 0 0 0 4px #e8c48a, var(--press);--thing:clamp(30px, 6vmin, 52px);background:#fff3df;border-radius:999px;flex-wrap:wrap;justify-content:center;gap:4px;padding:12px 18px;display:flex;position:relative}.sum__pile .sum__thing{width:var(--thing);height:var(--thing)}.sum__pile--empty{opacity:.4;box-shadow:inset 0 0 0 4px #e8c48a}.sum__equation{align-items:center;gap:10px;font-size:clamp(28px,5.6vmin,50px);font-weight:700;display:flex}.trace-pad__wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;min-height:0;display:flex}.trace-pad{--pad:min(86vw, 58vh, 460px);width:var(--pad);height:var(--pad);background:var(--card);box-shadow:var(--press), var(--lift);touch-action:none;cursor:crosshair;border-radius:36px}.trace-pad--done{animation:pop-in .5s var(--spring)}.trace-pad__rule{stroke:#23333f14;stroke-width:.8px;stroke-dasharray:2 2}.trace-pad__ghost{fill:none;stroke:#23333f24;stroke-width:12px;stroke-linecap:round;stroke-linejoin:round}.trace-pad__ghost--later{stroke:#23333f0f}.trace-pad__ghost--now{stroke:color-mix(in srgb, var(--ink) 35%, white);stroke-dasharray:3 6;animation:1.2s linear infinite ghost-crawl}@keyframes ghost-crawl{to{stroke-dashoffset:-10px}}.trace-pad__ink{fill:none;stroke:var(--ink);stroke-width:12px;stroke-linecap:round;stroke-linejoin:round}.trace-pad--done .trace-pad__ink{stroke:var(--good);filter:drop-shadow(0 0 3px #3cc07280)}.trace-pad__badge circle{fill:#fff;stroke:#23333f4d;stroke-width:1.4px}.trace-pad__badge text{text-anchor:middle;fill:var(--ink-soft);font-size:7px;font-weight:700;font-family:var(--font);pointer-events:none}.trace-pad__badge{opacity:.35}.trace-pad__badge--now{opacity:1}.trace-pad__badge--now circle{fill:var(--sun);stroke:#fff;stroke-width:2px;animation:1.2s ease-in-out infinite badge-pulse}.trace-pad__badge--now text{fill:var(--ink)}@keyframes badge-pulse{0%,to{r:5.5}50%{r:7}}.trace-pad__pen{fill:var(--berry);stroke:#fff;stroke-width:2px;pointer-events:none}.trace-pad__pips{gap:8px;display:flex}.trace-pad__pip{background:#23333f24;border-radius:50%;width:14px;height:14px;transition:background .2s}.trace-pad__pip--on{background:var(--good)}@media (prefers-reduced-motion:reduce){.trace-pad__ghost--now{animation:none}}.vowel{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(14px,3.5vmin,32px);width:100%;min-height:0;display:flex}.vowel__mark{--m:clamp(110px, 24vmin, 200px);justify-content:center;align-items:center;gap:calc(var(--m) * .12);min-width:var(--m);height:var(--m);min-height:0;padding:0 calc(var(--m) * .14);border:6px solid var(--world);background:var(--card);box-shadow:0 7px 0 color-mix(in srgb, var(--world) 70%, black);color:var(--ink);font-size:calc(var(--m) * .5);border-radius:28%;font-weight:700;line-height:1;display:flex}.vowel__mark[data-count="2"]{font-size:calc(var(--m) * .42)}.vowel__examples{justify-content:center;align-items:center;gap:clamp(10px,3vmin,24px);display:flex}.vowel__example{--e:clamp(80px, 15vmin, 120px);width:var(--e);height:var(--e);border:4px solid color-mix(in srgb, var(--world) 55%, white);min-width:0;min-height:0;color:var(--ink);font-size:calc(var(--e) * .42);background:#fff4c2;border-radius:24%;font-weight:700;line-height:1}.vowel__syllable{font-size:calc(var(--card-size) * .4);color:var(--ink);font-weight:700;line-height:1}.session__bar{z-index:2;flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.session__spacer{width:max(var(--touch-min), 64px);flex:none}.session__progress{flex-wrap:wrap;justify-content:center;gap:clamp(4px,1vmin,10px);display:flex}.session__step{color:#23333f24;width:clamp(22px,4.2vmin,38px);height:clamp(22px,4.2vmin,38px);transition:color .3s ease, transform .3s var(--spring)}.session__step .icon{width:100%;height:100%}.session__step--done{color:var(--sun);filter:drop-shadow(0 2px 0 var(--sun-deep))}.session__step--now{color:#ffc93c73;transform:scale(1.18)}.session__leave{z-index:50;background:#23333f73;place-items:center;animation:.2s fade-in;display:grid;position:fixed;inset:0}.session__leave-card{background:var(--cream);box-shadow:var(--lift);animation:pop-in .35s var(--spring);border-radius:40px;align-items:center;gap:clamp(24px,6vmin,60px);padding:clamp(24px,5vmin,48px);display:flex}@media (width<=500px){.session__spacer{display:none}.session__progress{flex:1}.session__step{width:20px;height:20px}}@media (orientation:landscape) and (height<=500px){.session__bar{top:max(10px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));left:max(12px, env(safe-area-inset-left));pointer-events:none;align-items:flex-start;position:absolute}.session__bar .round-btn{pointer-events:auto}.session__progress{padding-top:4px}.session__step{width:20px;height:20px}}.session__opening{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(12px,3vmin,28px);padding:16px;display:flex}.who{align-items:center}.who__top{z-index:2;flex:none;justify-content:space-between;align-items:center;width:100%;display:flex;position:relative}.who__grid{z-index:1;flex-wrap:wrap;flex:1;place-content:center;gap:clamp(14px,3.4vmin,32px);max-width:1000px;min-height:0;padding:12px 4px 24px;display:flex;position:relative;overflow-y:auto}.who__card{background:var(--card);width:clamp(150px,28vmin,240px);box-shadow:0 9px 0 var(--sun-deep), var(--lift);animation:pop-in .45s var(--spring) both;border-radius:36px;flex-direction:column;align-items:center;gap:10px;padding:18px 12px 20px;display:flex}.who__card:active{box-shadow:0 3px 0 var(--sun-deep);transform:translateY(6px)}.who__card--on{outline:5px solid var(--sun);outline-offset:3px}.who__avatar{aspect-ratio:1;background:radial-gradient(circle at 40% 35%, #fff, var(--sun) 75%);border-radius:50%;width:70%;padding:8%;display:block}.who__name{font-size:clamp(24px,5vmin,40px);font-weight:700}.who__card--add{box-shadow:none;background:#fff9;border:4px dashed #23333f40;justify-content:center}.who__card--add:active{box-shadow:none}.who__plus{aspect-ratio:1;width:70%;color:var(--ink-soft);background:#23333f0f;border-radius:50%;place-items:center;font-size:clamp(60px,13vmin,110px);font-weight:600;line-height:1;display:grid}.who__name--add{color:var(--ink-soft);font-size:clamp(18px,3.6vmin,26px)}.cert{aspect-ratio:297/210;width:100%;container-type:inline-size}.cert__paper{color:#23333f;background:#fffaf0;border-radius:2cqw;width:100%;height:100%;padding:2.4cqw;box-shadow:0 1cqw 3cqw #23333f2e}.cert__frame{border:.8cqw solid var(--world);outline:.3cqw solid color-mix(in srgb, var(--world) 40%, white);outline-offset:-2cqw;text-align:center;border-radius:1.4cqw;flex-direction:column;justify-content:center;align-items:center;gap:1.2cqw;height:100%;display:flex}.cert p{margin:0}.cert__trophy{width:11cqw;height:11cqw}.cert__title{color:var(--world);font-size:8cqw;font-weight:700;line-height:1}.cert__name{border-bottom:.4cqw solid color-mix(in srgb, var(--world) 55%, white);min-width:40cqw;padding:0 4cqw .6cqw;font-size:7cqw;font-weight:700;line-height:1.15}.cert__why{font-size:3.4cqw}.cert__foot{color:#55656f;align-items:center;gap:1.6cqw;margin-top:1cqw;font-size:2.4cqw;display:flex}.cert__guide{width:7cqw;height:7cqw}@media print{@page{size:A4 landscape;margin:0}body *{visibility:hidden!important}.cert--printable,.cert--printable *{visibility:visible!important}.cert--printable{width:100vw;height:100vh;position:fixed;inset:0}.cert--printable .cert__paper{box-shadow:none;border-radius:0}}.chest{width:100%;height:100%;display:block;position:relative}.chest__box{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.chest__lid{transform-box:fill-box;transform-origin:50% 100%;transition:transform .35s ease-out}.chest--open .chest__lid{transform:translateY(-18%)rotate(-18deg)scaleY(.55)}.chest__prize{z-index:1;height:90%;animation:.5s ease-out both pop-in;position:absolute;bottom:40%;left:5%;right:5%}.world{padding-bottom:0}.world__top{z-index:3;flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.world__title{box-shadow:var(--press);background:#ffffffd9;border-radius:999px;align-items:center;gap:12px;padding:6px 20px 6px 8px;display:flex}.world__title h1{color:var(--world);margin:0;font-size:clamp(24px,5vmin,40px);font-weight:700}.world__guide{width:clamp(48px,9vmin,70px);height:clamp(48px,9vmin,70px);display:block}.world__scroll{z-index:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;margin:0 calc(-1 * max(12px, env(safe-area-inset-right)));flex:1;position:relative;overflow-y:auto}.world__trail{--n-open:clamp(96px, 17vmin, 140px);--n-locked:clamp(80px, 14vmin, 116px);--n-current:clamp(124px, 22vmin, 180px);--stars:clamp(22px, 4vmin, 32px);--step:calc((var(--n-open) + var(--n-current)) / 2 + var(--stars) + 18px);--unit:calc(var(--step) / 150);width:min(100%,760px);margin:0 auto;position:relative}.world__road{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.world__road path{fill:none;stroke-linecap:round}.world__road-edge{stroke:color-mix(in srgb, var(--world) 45%, #b8a27a);stroke-width:58px;opacity:.35}.world__road-bed{stroke:#f5e6c8;stroke-width:48px}.world__road-dash{stroke:#fff;stroke-width:5px;stroke-dasharray:12 16}.node{--n:var(--n-open);--glyph-size:calc(var(--n) * .3);z-index:2;flex-direction:column;align-items:center;gap:4px;min-width:0;min-height:0;display:flex;position:absolute;translate:-50% -50%}.node__disc{width:var(--n);height:var(--n);background:var(--card);border:6px solid var(--world);box-shadow:0 8px 0 color-mix(in srgb, var(--world) 70%, black), var(--lift);color:var(--world);border-radius:50%;place-items:center;transition:transform .15s;display:grid;position:relative}.node:active .node__disc{transform:translateY(5px)}.node__face{font-size:calc(var(--n) * var(--face,.3));text-align:center;white-space:nowrap;letter-spacing:.04em;font-weight:700;line-height:1}.node__face[data-len="1"]{--face:.46}.node__face[data-len="2"]{--face:.36}.node__face[data-len="4"]{--face:.24}.node__face[data-len="5"],.node__face[data-len="6"]{--face:.2}.node--skill .node__face[data-len="1"]{font-size:calc(var(--n) * .62);letter-spacing:0}.node__stars{font-size:var(--stars);background:#ffffffd9;border-radius:999px;padding:2px 8px}.node--done .node__disc{background:color-mix(in srgb, var(--world) 12%, white)}.node--locked .node__disc{color:#23333f59;background:#ffffffbf;border-color:#23333f2e;box-shadow:0 6px #23333f1f}.node--locked{--n:var(--n-locked)}.node__lock{display:none}.node--current{--n:var(--n-current);z-index:3}.node--current .node__disc{box-shadow:0 8px 0 color-mix(in srgb, var(--world) 70%, black), 0 0 0 10px #ffd84d8c, var(--lift);animation:1.6s ease-in-out infinite breathe}.node__guide{width:calc(var(--n) * .62);height:calc(var(--n) * .8);animation:3s ease-in-out infinite guide-idle;position:absolute;top:0}.node:has(.node__guide:active) .node__disc{transform:none}.node__guide--start{inset-inline-start:calc(var(--n) * -.75)}.node__guide--end{inset-inline-end:calc(var(--n) * -.75)}.node .hand-hint{bottom:auto;left:auto;top:calc(var(--n) * .72);margin-left:0;inset-inline-start:calc(var(--n) * .78)}.world__trail{--chest:max(var(--touch-min,84px), clamp(72px, 13vmin, 100px));--chest-gap:calc(var(--n-open) / 2 + var(--chest) / 2 + 10px)}.world__chest{width:var(--chest);height:var(--chest);z-index:2;animation:2.4s ease-in-out infinite wobble;position:absolute;translate:-50% -50%}.world__chest--open{animation:none}.world__chest:active{transform:scale(.94)}.world__finish{filter:grayscale(.85)opacity(.5);width:clamp(72px,13vmin,110px);height:clamp(72px,13vmin,110px);position:absolute;translate:-50% -50%}.world__finish--won{filter:none;animation:1.4s ease-in-out infinite bounce}.world__end{align-items:center;gap:clamp(8px,2vmin,14px);display:flex}@media (width<=520px){.world__top .round-btn{--size:64px}.world__top{gap:8px}.world__title{gap:8px;padding:4px 14px 4px 6px}.world__guide{width:44px;height:44px}.world__title h1{font-size:22px}}@media (width<=440px){.world__title{padding:4px}.world__title h1{display:none}}button.world__finish{min-width:0;min-height:0;padding:0}.cert-view{z-index:30;background:#23333f73;flex-direction:column;justify-content:center;align-items:center;gap:clamp(12px,3vmin,24px);padding:16px;display:flex;position:absolute;inset:0;container-type:size}.cert-view__page{width:min(100%, 980px, (100cqh - var(--touch-min) - 64px) * 297 / 210)}@media (orientation:landscape) and (height<=500px){.cert-view{flex-direction:row}.cert-view__page{width:min(100cqw - var(--touch-min) - 64px, (100cqh - 32px) * 297 / 210)}}.world__guide.title-guide{border-radius:50%;min-width:0;min-height:0;padding:0;display:grid}.title-guide--giggle{animation:.2s ease-in-out infinite alternate head-giggle}@keyframes head-giggle{0%{transform:rotate(-7deg)scale(1.03,.96)}to{transform:rotate(7deg)scale(.97,1.04)}}.topics__grid{z-index:1;flex:1;grid-template-columns:repeat(auto-fill,minmax(clamp(140px,24vmin,210px),1fr));grid-auto-rows:max-content;align-content:start;gap:clamp(12px,2.6vmin,24px);width:min(100%,1100px);min-height:0;margin:0 auto;padding:18px 4px 40px;display:grid;position:relative;overflow-y:auto}.topic{--world-soft:color-mix(in srgb, var(--world) 16%, white);background:var(--card);box-shadow:0 8px 0 var(--world), 0 14px 26px #23333f26;animation:pop-in .45s var(--spring) both;border-radius:32px;flex-direction:column;align-items:center;gap:6px;padding:14px 10px 16px;transition:transform .14s,box-shadow .14s;display:flex}.topic:active{box-shadow:0 2px 0 var(--world), 0 6px 12px #23333f24;transform:translateY(6px)}.topic__art{aspect-ratio:1;background:radial-gradient(circle at 50% 40%, #fff 0%, var(--world-soft) 75%);border-radius:50%;width:72%;padding:10%;display:block}.topic__title{color:var(--world);text-align:center;font-size:clamp(18px,3.6vmin,28px);font-weight:700;line-height:1.15}.topic__stars{font-size:clamp(20px,3.6vmin,30px)}
