:root{--ink:#2b2038;--ink-soft:#5c4f6e;--paper:#fffdf7;--red:#ff4d4d;--orange:#ff7a3d;--yellow:#ffc12e;--gold:#ffd34d;--green:#5cd65c;--teal:#1fc9c0;--blue:#2fa8ff;--deep-blue:#1b3e66;--purple:#a45cff;--pink:#ff6fc4;--sky-top:#7fd4ff;--sky-bottom:#cdf3ff;--sea:#1e8ad6;--sea-deep:#12629c;--radius:28px;--radius-sm:18px;--radius-xs:12px;--radius-pill:999px;--drop-sm:0 4px 0 #2b203847;--drop-md:0 6px 0 #2b203852;--drop-lg:0 8px 0 #2b203857;--shadow-soft:0 8px 18px #1b3e6629;--shadow-pop:0 10px 0 #2b203838;--shadow-lift:0 16px 30px #1b3e6638;--shadow-card:0 6px 0 #2b20382e, 0 18px 38px #1b3e6638;--spring:cubic-bezier(.2, 1.6, .4, 1);--focus-ring:var(--accent,#2fa8ff);--sans:system-ui, -apple-system, "Segoe UI", "Segoe UI Variable", Roboto, "Helvetica Neue", Arial, sans-serif;font:18px/1.4 var(--sans);color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100svh;margin:0;padding:0}body{background:var(--sky-bottom);-webkit-tap-highlight-color:transparent;overflow-x:hidden}#root{isolation:isolate}h1,h2,h3{letter-spacing:-.02em;color:var(--ink);margin:0;font-weight:900}p{margin:0}button{cursor:pointer;font-family:inherit}button:focus-visible,[role=tab]:focus-visible,a:focus-visible{outline:4px solid var(--ink);outline-offset:4px}input{font-family:inherit}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.screen{width:100%;min-height:100svh;padding:24px 16px 48px;position:relative;overflow:hidden}.screen--center{place-items:center;display:grid}.sky{background:radial-gradient(circle at 50% 120%, #ffe9a8 0%, transparent 55%), linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bottom) 60%, #ffe9c4 100%)}.clouds{pointer-events:none;position:absolute;inset:0;overflow:hidden}.cloud{opacity:.9;background:#fff;border-radius:999px;width:160px;height:56px;animation:46s linear infinite drift;position:absolute;box-shadow:46px -22px 0 -6px #fff,-44px -14px 0 -12px #fff,0 14px 22px #1b3e6629}.cloud--far{opacity:.5}.cloud--1{animation-duration:52s;top:8%;left:-20%}.cloud--2{animation-duration:68s;animation-delay:-12s;top:22%;left:-40%;transform:scale(.7)}.cloud--3{animation-duration:84s;animation-delay:-30s;top:4%;left:-60%;transform:scale(1.25)}.cloud--4{animation-duration:60s;animation-delay:-44s;top:34%;left:-30%;transform:scale(.55)}.cloud--5{animation-duration:74s;animation-delay:-58s;top:15%;left:-50%;transform:scale(.85)}@keyframes drift{0%{translate:0}to{translate:190vw}}.sun{background:radial-gradient(circle at 35% 35%, #fff6c2, var(--gold) 60%, #ffab2e);border-radius:50%;width:130px;height:130px;animation:5s ease-in-out infinite pulse;position:absolute;top:5%;right:7%;box-shadow:0 0 90px 30px #ffd34d99}.sun--soft{opacity:.9;box-shadow:0 0 120px 44px #ffd34d73}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.shore{pointer-events:none;height:min(38vh,320px);position:absolute;inset:auto 0 0;overflow:hidden}.shore__water{background:linear-gradient(180deg, color-mix(in srgb, var(--sea,#1e8ad6) 55%, #fff) 0%, var(--sea,#1e8ad6) 38%, var(--sea-deep,#12629c) 100%);opacity:.8;position:absolute;inset:42% 0 0;-webkit-mask-image:linear-gradient(#0000 0%,#000 18%);mask-image:linear-gradient(#0000 0%,#000 18%)}.shore__isle{filter:drop-shadow(0 12px 14px #092d4b52);animation:7s ease-in-out infinite floatIsle;position:absolute;bottom:4%}.shore__isle--left{opacity:.95;left:2%}.shore__isle--right{opacity:.8;animation-delay:-3.5s;bottom:12%;right:1%}@keyframes floatIsle{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@media (width<=900px){.shore__isle{opacity:.45}}.logo-quest{padding:0 6px 4px;display:inline-block;position:relative;overflow:hidden}.logo-quest__word{animation:4.4s ease-in-out infinite logoFloat;display:inline-block}.logo-quest__word--2{animation-delay:-2.2s}@keyframes logoFloat{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-6px)rotate(1deg)}}.logo-quest__shine{background:linear-gradient(90deg,#0000,#ffffffd9,#0000);width:42%;height:150%;animation:9s ease-in-out infinite logoShine;position:absolute;top:-20%;left:-60%;rotate:16deg}@keyframes logoShine{0%,62%,to{opacity:0;transform:translate(0)}66%{opacity:1}84%,99%{opacity:0;transform:translate(420%)}}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);border-radius:var(--radius-pill);background:#2fa8ff1f;padding:5px 16px;font-size:.85rem;font-weight:900}.card--hero{gap:14px;padding-top:26px}.lede--hero{max-width:30ch;font-size:1.15rem;font-weight:700}.wizard{z-index:1;place-items:center;min-height:calc(100svh - 72px);display:grid;position:relative}.card{background:var(--paper);border:5px solid var(--ink);border-radius:var(--radius);width:min(560px,94vw);box-shadow:var(--shadow-card);text-align:center;justify-items:center;gap:18px;padding:32px 28px;display:grid;position:relative;overflow:hidden}.card--wide{width:min(920px,96vw)}.title-mega{text-shadow:0 4px #fff,0 8px #2b203838;color:var(--blue);font-size:clamp(2.2rem,7vw,4rem);line-height:1}.title-mega__alt{color:var(--pink)}.title-big{font-size:clamp(1.4rem,4vw,2.1rem);line-height:1.1}.lede{color:var(--ink-soft);max-width:46ch;font-size:1.05rem}.grownup-note{border:3px dashed var(--ink);border-radius:var(--radius-sm);color:var(--ink);background:#fff2c9;padding:10px 16px;font-size:.95rem}.error-note{border:3px solid var(--red);border-radius:var(--radius-sm);color:#a11d1d;background:#ffe1e1;padding:8px 16px;font-weight:800;animation:.5s shake}.code-plate{letter-spacing:.08em;border:5px solid var(--ink);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);background:linear-gradient(#fff,#ffeec2);padding:14px 24px;font-size:clamp(1.6rem,6vw,2.6rem);font-weight:900;animation:.5s cubic-bezier(.2,1.6,.4,1) both popin}.btn{border:4px solid var(--ink);border-radius:var(--radius-pill);background:var(--yellow);min-height:56px;color:var(--ink);box-shadow:var(--drop-md), var(--shadow-soft);transition:transform .16s var(--spring), box-shadow .16s var(--spring), filter .15s ease;padding:14px 26px;font-size:1.05rem;font-weight:900}.btn:hover{filter:brightness(1.06);box-shadow:0 8px 0 #2b203852, var(--shadow-lift);transform:translateY(-2px)}.btn:active{transition-duration:60ms;transform:translateY(5px);box-shadow:0 1px #2b203859}.btn:focus-visible{box-shadow:var(--drop-md), 0 0 0 9px #ffffff8c}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:0 6px #2b203833}.btn--huge{background:linear-gradient(180deg, #ffe071, var(--yellow));min-height:68px;padding:18px 34px;font-size:clamp(1.05rem,2.6vw,1.35rem)}.btn--ghost{background:#fff;min-height:52px;font-size:1rem;box-shadow:0 5px #2b203840}.row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.text-input{text-align:center;border:5px solid var(--ink);border-radius:var(--radius-sm);width:min(420px,100%);color:var(--ink);background:#fff;padding:16px 18px;font-size:1.35rem;font-weight:800}.text-input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 5px #2fa8ff59}.stepdots{gap:8px;display:flex}.stepdots__dot{border:2px solid var(--ink);background:#e3ddef;border-radius:50%;width:12px;height:12px}.stepdots__dot--on{background:var(--green)}.age-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;width:100%;display:grid}.age-card{border:5px solid var(--ink);border-radius:var(--radius-sm);background:#fff;justify-items:center;gap:4px;padding:18px 12px;transition:transform .12s,background .12s;display:grid;box-shadow:0 6px #2b203840}.age-card:hover{transform:translateY(-3px)}.age-card--on{background:linear-gradient(#d7ffd7,#a9f5a9);transform:translateY(-3px)scale(1.03)}.age-card__emoji{font-size:2.2rem}.age-card__range{font-size:1.5rem;font-weight:900}.age-card__label{color:var(--ink-soft);font-size:1.05rem;font-weight:800}.age-card__blurb{color:var(--ink-soft);font-size:.85rem}.grade-grid{grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:12px;width:100%;margin-bottom:6px;display:grid}.grade-grid--big{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.grade-grid--older{grid-template-columns:repeat(4,1fr);max-width:320px;margin:4px auto 6px}.grade-card{min-height:72px;color:var(--ink);border:5px solid var(--ink);border-radius:var(--radius-sm);background:#fff;place-items:center;padding:10px;font-size:1.9rem;font-weight:900;transition:transform .12s,background .12s;display:grid;box-shadow:0 6px #2b203840}.grade-grid--big .grade-card{min-height:92px;font-size:2.4rem}.grade-card--small{border-width:4px;min-height:54px;font-size:1.3rem}.grade-card:hover{transform:translateY(-3px)}.grade-card--on{background:linear-gradient(#d7ffd7,#a9f5a9);transform:translateY(-3px)scale(1.04)}.btn--small{padding:8px 16px;font-size:.95rem}.gu-badge--grade{background:linear-gradient(#fff2c9,#ffe08a)}.gu-subject-grades{gap:10px;width:100%;margin-top:10px;display:grid}.gu-subject-row{border:3px solid var(--ink);border-radius:var(--radius-sm);background:#ffffffb3;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.gu-subject-row__name{text-align:left;min-width:7.5rem;font-weight:900}.gu-subject-row__current{color:var(--ink-soft);font-size:.9rem}.gu-subject-row select{font:inherit;border:3px solid var(--ink);border-radius:var(--radius-sm);background:#fff;padding:6px 10px;font-weight:800}.saved-hero{filter:drop-shadow(0 12px #2b20382e)}.loader{justify-items:center;gap:18px;display:grid}.loader__ball{background:radial-gradient(circle at 35% 30%, #fff, var(--red) 70%);border:4px solid var(--ink);border-radius:50%;width:46px;height:46px;animation:.75s cubic-bezier(.5,0,.5,1) infinite alternate bounce}.loader__text{color:var(--ink);font-weight:800}@keyframes bounce{0%{transform:translateY(0)scaleY(1)}to{transform:translateY(-34px)scaleY(1.08)}}.qi-avatar{display:block;overflow:visible}.qi-avatar--animated{animation:2.6s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-9px)rotate(1.5deg)}}.avatar-creator{grid-template-columns:minmax(220px,1fr) minmax(280px,1.35fr);align-items:start;gap:22px;width:100%;display:grid}@media (width<=720px){.avatar-creator{grid-template-columns:1fr}}.avatar-creator__stage{border:5px solid var(--ink);border-radius:var(--radius);background:linear-gradient(#d8f3ff,#fff3d0);justify-items:center;gap:12px;padding:18px;display:grid;position:relative}.avatar-creator__glow{aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#ffffffe6,#0000 65%);border-radius:50%;width:70%;position:absolute;top:22%}.avatar-creator__shuffle{position:relative}.avatar-creator__panel{align-content:start;gap:14px;display:grid}.avatar-creator__tabs{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chip{border:4px solid var(--ink);background:#fff;border-radius:999px;align-items:center;gap:6px;min-height:48px;padding:10px 14px;font-size:.95rem;font-weight:800;display:inline-flex;box-shadow:0 4px #2b203840}.chip--on{background:linear-gradient(#b9e6ff,#7fd0ff);transform:translateY(-2px)}.avatar-creator__options{flex-wrap:wrap;justify-content:center;gap:12px;min-height:120px;display:flex}.swatch{border:5px solid var(--ink);border-radius:20px;width:62px;height:62px;transition:transform .12s;position:relative;box-shadow:0 5px #2b20384d}.swatch:hover{transform:translateY(-3px)}.swatch--on{transform:translateY(-4px)scale(1.08)}.swatch__tick{color:#fff;text-shadow:0 0 4px #000000b3;place-items:center;font-size:1.6rem;font-weight:900;display:grid;position:absolute;inset:0}.part-btn{border:4px solid var(--ink);border-radius:var(--radius-sm);background:#fff;justify-items:center;gap:4px;padding:8px 10px 10px;transition:transform .12s,background .12s;display:grid;box-shadow:0 5px #2b203840}.part-btn:hover{transform:translateY(-3px)}.part-btn--on{background:linear-gradient(#fff0b3,#ffdc66);transform:translateY(-4px)scale(1.05)}.part-btn__art{place-items:start center;width:72px;height:72px;display:grid;overflow:hidden}.part-btn__label{font-size:.85rem;font-weight:800}.avatar-creator--big .chip{min-height:58px;padding:12px 18px;font-size:1.1rem}.avatar-creator--big .swatch{width:78px;height:78px}.avatar-creator--big .part-btn__art{width:92px;height:92px}.avatar-creator--big .part-btn__label{font-size:1rem}.pin{justify-items:center;gap:16px;display:grid}.pin--shake{animation:.55s shake}.pin__dots{gap:12px;display:flex}.pin__dot{border:4px dashed var(--ink);width:54px;height:54px;color:var(--ink);background:#fff;border-radius:18px;place-items:center;font-size:1.6rem;display:grid}.pin__dot--on{background:linear-gradient(#d7ffd7,#a9f5a9);border-style:solid;animation:.25s cubic-bezier(.2,1.8,.4,1) popin}.keypad{grid-template-columns:repeat(3,1fr);gap:12px;width:min(320px,90vw);display:grid}.key{border:4px solid var(--ink);min-height:74px;color:var(--ink);background:linear-gradient(#fff,#eef2ff);border-radius:20px;font-size:1.9rem;font-weight:900;transition:transform 80ms,box-shadow 80ms;box-shadow:0 6px #2b20384d}.key:active{transform:translateY(5px);box-shadow:0 1px #2b20384d}.key--soft{background:linear-gradient(#ffe9e9,#ffd0d0);font-size:1.1rem}.picgrid{grid-template-columns:repeat(4,1fr);gap:14px;width:min(420px,92vw);display:grid}.picbtn{aspect-ratio:1;border:5px solid var(--ink);border-radius:22px;font-size:2.2rem;transition:transform 80ms,box-shadow 80ms;box-shadow:0 6px #2b20384d}.picbtn:active{transform:translateY(5px);box-shadow:0 1px #2b20384d}.pin--big .pin__dot{width:68px;height:68px;font-size:2rem}.pin--big .key{min-height:86px;font-size:2.2rem}.pin--big .picgrid{grid-template-columns:repeat(2,1fr);width:min(400px,92vw)}.pin--big .picbtn{font-size:3rem}.confetti{pointer-events:none;z-index:5;position:absolute;inset:0;overflow:hidden}.confetti__bit{animation-name:fall;animation-timing-function:linear;animation-iteration-count:1;animation-fill-mode:forwards;position:absolute;top:-24px}@keyframes fall{0%{opacity:1;transform:translateY(-10vh)rotate(0)}to{opacity:.85;transform:translateY(105vh)rotate(720deg)}}.profiles{z-index:1;justify-items:center;gap:28px;padding-top:4vh;display:grid;position:relative}.profile-grid{flex-wrap:wrap;justify-content:center;gap:26px;display:flex}.profile-card{background:linear-gradient(180deg, #fff 0%, var(--paper) 58%, var(--card-sky,#eef7ff) 100%);border:6px solid var(--ink);border-radius:var(--radius);width:210px;box-shadow:var(--shadow-card);transition:transform .22s var(--spring), box-shadow .22s ease;justify-items:center;gap:8px;padding:20px 22px 16px;display:grid;position:relative;overflow:hidden}.profile-card:before{content:"";border-radius:inherit;background:linear-gradient(155deg, var(--card-accent,var(--blue)), var(--card-accent-2,var(--teal)) 55%, var(--card-accent,var(--blue)));-webkit-mask-composite:xor;opacity:.9;pointer-events:none;padding:5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.profile-card:hover,.profile-card:focus-visible{box-shadow:var(--shadow-card), 0 0 0 6px #ffffff80;transform:translateY(-8px)rotate(-1.5deg)scale(1.03)}.profile-card:active{transform:translateY(-2px)scale(.99)}.profile-card__ring{background:radial-gradient(circle at 50% 32%, var(--card-glow,#fff6c2) 0%, transparent 64%);opacity:.85;pointer-events:none;border-radius:22px;position:absolute;inset:12px}.profile-card__art{place-items:center;animation:3.6s ease-in-out infinite cardBob;display:grid;position:relative}.profile-grid>:nth-child(3n+2) .profile-card__art{animation-delay:-1.2s}.profile-grid>:nth-child(3n+3) .profile-card__art{animation-delay:-2.4s}@keyframes cardBob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-7px)rotate(1.5deg)}}.profile-card__shine{pointer-events:none;background:linear-gradient(90deg,#0000,#ffffffbf,#0000);width:60%;height:220%;position:absolute;top:-60%;left:-140%;rotate:18deg}.profile-card:hover .profile-card__shine,.profile-card:focus-visible .profile-card__shine{animation:.75s ease-out cardShine}@keyframes cardShine{0%{transform:translate(0)}to{transform:translate(430%)}}.profile-card__name{color:var(--ink);padding-bottom:4px;font-size:1.5rem;font-weight:900;position:relative}.profile-card__name:after{content:"";background:linear-gradient(90deg, var(--card-accent,var(--blue)), var(--card-accent-2,var(--teal)));border-radius:999px;height:4px;position:absolute;bottom:0;left:8%;right:8%}.float-in{animation:.5s cubic-bezier(.2,1.6,.4,1) both popin}.celebrate{justify-items:center;gap:18px;animation:.5s cubic-bezier(.2,1.7,.4,1) both popin;display:grid}.sheet-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1b3e668c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.sheet{text-align:center;background:var(--paper);border:6px solid var(--ink);border-radius:var(--radius);width:min(520px,96vw);max-height:94svh;box-shadow:var(--shadow-card);justify-items:center;gap:14px;padding:26px 22px;display:grid;position:relative;overflow-y:auto}.sheet--big{width:min(600px,96vw)}.sheet__close{border:4px solid var(--ink);width:48px;height:48px;color:var(--ink);background:#fff;border-radius:50%;font-size:1.2rem;font-weight:900;position:absolute;top:12px;right:12px}.pause-note{justify-items:center;gap:14px;display:grid}.pause-note__emoji{font-size:3.4rem}.map{background:linear-gradient(180deg, var(--sky-top) 0%, #b6e9ff 30%, #dff6ff 41%, var(--sea) 47%, var(--sea) 66%, var(--sea-deep) 100%);width:100%;height:100svh;position:relative;overflow:hidden}.map__sky{pointer-events:none;height:48%;position:absolute;inset:0 0 auto;overflow:hidden}.map__haze{pointer-events:none;background:linear-gradient(#0000 0%,#ffffff6b 55%,#fff0 100%);height:14%;position:absolute;inset:36% 0 auto}.map__ocean{pointer-events:none;position:absolute;inset:43% 0 0;overflow:hidden}.map .sun{width:118px;height:118px;top:4%;right:8%;box-shadow:0 0 70px 26px #ffd34d73}.sun-rays{opacity:.6;will-change:transform;background:repeating-conic-gradient(#ffffff26 0deg 7deg,#0000 7deg 22deg);border-radius:50%;width:62vmin;height:62vmin;animation:120s linear infinite sunSweep;position:absolute;top:8%;right:12%;translate:50% -50%;-webkit-mask-image:radial-gradient(circle,#000 12%,#0000 68%);mask-image:radial-gradient(circle,#000 12%,#0000 68%)}@keyframes sunSweep{to{rotate:360deg}}.sea-shimmer{will-change:transform;background:repeating-linear-gradient(108deg,#ffffff24 0 2px,#0000 2px 26px);animation:26s linear infinite shimmerDrift;position:absolute;inset:-10% -30% 0;-webkit-mask-image:linear-gradient(#000000d9,#0000 78%);mask-image:linear-gradient(#000000d9,#0000 78%)}@keyframes shimmerDrift{0%{transform:translate(0)}to{transform:translate(52px)}}.wave{filter:blur(1px);background:linear-gradient(90deg,#0000,#ffffff4d 22%,#ffffff57 76%,#0000);border-radius:50%;width:124%;height:26px;animation:7s ease-in-out infinite sway;position:absolute;left:-12%}.wave--1{animation-duration:9s;top:8%}.wave--2{opacity:.68;animation-duration:13s;animation-delay:-3s;top:33%}.wave--3{opacity:.45;animation-duration:11s;animation-delay:-6s;top:63%}@keyframes sway{0%,to{transform:translate(-3%)scaleX(1)}50%{transform:translate(3%)scaleX(1.04)}}.sea-sparkle{clip-path:polygon(50% 0%,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0% 50%,38% 38%);opacity:0;background:#fffffff2;width:12px;height:12px;margin:-6px 0 0 -6px;animation:7s ease-in-out infinite seaSparkle;position:absolute}@keyframes seaSparkle{0%,72%,to{opacity:0;transform:scale(.4)}80%{opacity:.9;transform:scale(1)}90%{opacity:0;transform:scale(.6)}}.sea-splash{opacity:0;border:3px solid #ffffffd9;border-radius:50%;width:46px;height:16px;animation:17s ease-out infinite seaSplash;position:absolute}.sea-splash--1{top:40%;left:36%}.sea-splash--2{animation-delay:-9s;top:74%;left:71%}@keyframes seaSplash{0%,88%,to{opacity:0;transform:scale(.2)}90%{opacity:.9;transform:scale(.35)}97%{opacity:0;transform:scale(1.5)}}.sea-boat{filter:drop-shadow(0 6px 5px #092d4b59);animation:96s linear infinite boatDrift;position:absolute;top:6%;left:-12%}.sea-boat svg{transform-origin:50% 80%;animation:4.5s ease-in-out infinite boatBob;display:block}@keyframes boatDrift{0%{transform:translate(0)}to{transform:translate(128vw)}}@keyframes boatBob{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-5px)rotate(3deg)}}.sky-birds{opacity:.55;animation:64s linear infinite birdsCross;position:absolute;top:26%;left:-14%}.sky-birds svg{display:block}.sky-birds__flap{transform-box:fill-box;transform-origin:50% 100%;animation:1.1s ease-in-out infinite birdFlap}@keyframes birdsCross{0%{transform:translate(0)}50%{transform:translate(64vw,-6vh)}to{transform:translate(130vw,2vh)}}@keyframes birdFlap{0%,to{transform:scaleY(1)}50%{transform:scaleY(.55)}}.map__trail{pointer-events:none;position:absolute;inset:0}.trail-dot{background:radial-gradient(circle at 40% 35%, #fff, var(--gold) 78%);opacity:.85;border:2px solid #2b2038bf;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;animation:2.6s ease-in-out infinite trailFlow;position:absolute;box-shadow:0 2px 4px #092d4b59}@keyframes trailFlow{0%,65%,to{opacity:.6;transform:scale(.85)}25%{opacity:1;transform:scale(1.45)}}.island{transition:transform .22s var(--spring);background:0 0;border:none;justify-items:center;gap:6px;padding:0;animation:4.5s ease-in-out infinite floaty;display:grid;position:absolute;translate:-50% -50%}.island:hover{z-index:4;transform:scale(1.08)rotate(-1deg)}.island:active{transform:scale(1.01)}.island:focus-visible{z-index:4}.island__halo{aspect-ratio:1;background:radial-gradient(circle, var(--island-accent,#fff) 0%, transparent 65%);opacity:.5;filter:blur(8px);pointer-events:none;border-radius:50%;width:82%;animation:3.4s ease-in-out infinite pulse;position:absolute;top:26%}.island__ripple{opacity:0;pointer-events:none;border:3px solid #ffffff8c;border-radius:50%;width:60%;height:26px;animation:6s ease-out infinite islandRipple;position:absolute;top:68%;left:50%;translate:-50%}.island__ripple--2{animation-delay:-3s}@keyframes islandRipple{0%{opacity:0;transform:scale(.65)}20%{opacity:.7}to{opacity:0;transform:scale(1.55)}}.island__reflection{background:radial-gradient(ellipse at 50% 0%, var(--island-primary,#fff) 0%, transparent 72%);opacity:.35;filter:blur(7px);pointer-events:none;border-radius:50%;width:66%;height:42px;animation:5.5s ease-in-out infinite reflectionWobble;position:absolute;top:70%;left:50%;translate:-50%}@keyframes reflectionWobble{0%,to{transform:scaleX(1)scaleY(1)}50%{transform:scaleX(1.06)scaleY(.88)}}.island-art{filter:drop-shadow(0 12px 10px #092d4b66);position:relative}.ia-foam{transform-origin:100px 139px;animation:6.5s ease-in-out infinite iaFoam}@keyframes iaFoam{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.2;transform:scale(1.035)}}.ia-frond{transform-origin:62px 50px;animation:5.2s ease-in-out infinite iaFrond}@keyframes iaFrond{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}.ia-flag{animation:2.8s ease-in-out infinite iaFlag}@keyframes iaFlag{0%,to{transform:rotate(-5deg)scaleX(1)}50%{transform:rotate(5deg)scaleX(.88)}}.ia-shake{animation:6s ease-in-out infinite iaShake}@keyframes iaShake{0%,76%,to{transform:rotate(0)}81%{transform:rotate(-12deg)}86%{transform:rotate(10deg)}91%{transform:rotate(-5deg)}}.ia-window{animation:3.4s ease-in-out infinite iaWindow}@keyframes iaWindow{0%,to{opacity:1}45%{opacity:.55}60%{opacity:.95}}.ia-pennant{animation:2.4s ease-in-out infinite iaPennant}@keyframes iaPennant{0%,to{transform:scaleX(1)skewY(0)}50%{transform:scaleX(.82)skewY(-6deg)}}.ia-checker{animation:3.2s ease-in-out infinite iaChecker}@keyframes iaChecker{0%,to{transform:skewY(0)scaleX(1)}50%{transform:skewY(-3.5deg)scaleX(.96)}}.ia-kart{animation:4.6s ease-in-out infinite iaKart}@keyframes iaKart{0%,to{transform:translate(0)translateY(0)}50%{transform:translate(6px)translateY(-1px)}}.ia-cog{animation:12s linear infinite iaCog}.ia-cog--rev{animation-direction:reverse}@keyframes iaCog{to{transform:rotate(360deg)}}.ia-clockhand{animation:24s linear infinite iaCog}.island__plate{background:linear-gradient(180deg, #fff, var(--paper));border:5px solid var(--ink);max-width:250px;box-shadow:0 6px 0 #2b203859, var(--shadow-soft);border-radius:999px;gap:2px;padding:8px 18px;display:grid;position:relative}.island__title{color:var(--island-deep,var(--ink));font-size:1.15rem;font-weight:900}.island__tagline{color:var(--ink-soft);font-size:.8rem;font-weight:700}@keyframes floaty{0%,to{translate:-50% -50%}50%{translate:-50% calc(-50% - 14px)}}.map__banner{color:#fff;text-shadow:3px 3px 0 var(--ink), -2px 2px 0 var(--ink), 2px -2px 0 var(--ink), -2px -2px 0 var(--ink), 0 8px 0 #2b20384d;pointer-events:none;font-size:clamp(1.4rem,4vw,2.4rem);animation:.6s cubic-bezier(.2,1.7,.4,1) both popin;position:absolute;top:18px;left:50%;translate:-50%}.hud{z-index:6;position:absolute;top:16px;left:16px}.hud__player{background:var(--paper);border:5px solid var(--ink);border-radius:999px;align-items:center;gap:12px;padding:8px 20px 8px 10px;display:flex;box-shadow:0 6px #2b203859}.hud__avatar{border:4px solid var(--ink);background:linear-gradient(#d8f3ff,#ffe9a8);border-radius:50%;place-items:center;width:64px;height:64px;display:grid;overflow:hidden}.hud__meta{display:grid}.hud__name{font-size:1.15rem;font-weight:900}.hud__coins{color:#b8860b;align-items:center;gap:6px;font-weight:900;display:flex}.coin{background:radial-gradient(circle at 35% 30%, #fff3b0, var(--gold) 65%, #e2a400);border:3px solid var(--ink);border-radius:50%;width:22px;height:22px;animation:2.6s linear infinite spinCoin}@keyframes spinCoin{0%,to{transform:rotateY(0)scaleX(1)}50%{transform:rotateY(180deg)scaleX(.35)}}.hud__streak{color:var(--orange);margin-left:6px}.switch-player{z-index:6;position:absolute;top:18px;right:16px}.island-page{background:radial-gradient(circle at 50% 0%, var(--island-accent) 0%, transparent 60%), linear-gradient(180deg, var(--island-primary) 0%, var(--island-deep) 100%)}.island-page__rays{pointer-events:none;background:repeating-conic-gradient(at 50% 30%,#ffffff29 0deg 10deg,#0000 10deg 20deg);height:130%;animation:60s linear infinite spin;position:absolute;inset:-30% -30% auto}@keyframes spin{to{transform:rotate(360deg)}}.island-page__card{z-index:1}.island-page__art{filter:drop-shadow(0 14px 10px #092d4b59)}.island-page__theme{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-weight:900}.island-page__buddy{filter:drop-shadow(0 10px #2b203826)}.soon-badge{color:#fff;background:linear-gradient(180deg, var(--pink), var(--purple));border:5px solid var(--ink);border-radius:999px;padding:12px 30px;font-size:clamp(1.3rem,4vw,2rem);font-weight:900;animation:2.2s ease-in-out infinite wiggle;transform:rotate(-3deg);box-shadow:0 8px #2b203859}@keyframes wiggle{0%,to{transform:rotate(-3deg)scale(1)}50%{transform:rotate(3deg)scale(1.05)}}.pop{animation:.45s cubic-bezier(.2,1.6,.4,1) both popin}@keyframes popin{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(9px)}60%{transform:translate(-7px)}80%{transform:translate(5px)}}@media (width<=640px){.island{scale:.66}.hud__player{padding:6px 14px 6px 8px}.hud__avatar{width:52px;height:52px}.profile-card{width:168px}}.pin__hint{color:var(--ink-soft);opacity:.85;font-size:.9rem;font-weight:800}.pin--big .pin__hint{font-size:1.05rem}.picbtn{position:relative}.picbtn__key{min-width:22px;height:22px;color:var(--ink);border:2px solid var(--ink);background:#ffffffeb;border-radius:8px;place-items:center;padding:0 4px;font-size:.8rem;font-weight:900;line-height:1;display:grid;position:absolute;top:5px;left:5px;box-shadow:0 2px #2b203859}.pin--big .picbtn__key{border-radius:10px;min-width:30px;height:30px;font-size:1.05rem}.creator-note{text-align:center;max-width:46ch;color:var(--ink-soft);border:3px dashed var(--gold);border-radius:var(--radius-sm);background:#fff8dd;margin:4px auto 0;padding:10px 14px;font-size:.92rem;font-weight:800}.grownups-link{color:var(--deep-blue);min-height:0;box-shadow:none;opacity:.8;background:#ffffffb3;border:3px solid #2b203840;border-radius:999px;margin-top:18px;padding:8px 18px;font-size:.92rem;font-weight:800;transition:opacity .15s,transform .12s}.grownups-link:hover{opacity:1;transform:translateY(-2px)}.grownups{z-index:1;justify-items:center;gap:22px;padding:24px 0 48px;display:grid;position:relative}.gate__emoji{font-size:3.2rem}.flash-note{color:#1d7a4b;background:#dcffe9;border:4px solid #1d7a4b;border-radius:999px;padding:10px 22px;font-weight:900;animation:.45s cubic-bezier(.2,1.6,.4,1) both popin}.gu-list{gap:16px;width:100%;display:grid}.gu-child{border:4px solid var(--ink);border-radius:var(--radius-sm);background:#fff;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 16px;display:flex;box-shadow:0 6px #2b203838}.gu-child__info{flex:140px;justify-items:start;gap:6px;display:grid}.gu-child__name{font-size:1.3rem;font-weight:900}.gu-badge{color:var(--ink);background:var(--gold);border:3px solid var(--ink);border-radius:999px;padding:3px 12px;font-size:.8rem;font-weight:900}.gu-child__actions{flex-wrap:wrap;gap:10px;display:flex}.gu-member{border:4px solid var(--ink);border-radius:var(--radius-sm);background:#fff;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 16px;display:flex;box-shadow:0 6px #2b203838}.gu-badge--owner{background:linear-gradient(#ffe6ff,#f0b6ff)}.gu-add-grownup{border-top:3px dashed var(--ink);justify-items:center;gap:12px;width:100%;margin-top:16px;padding-top:16px;display:grid}@media (width<=640px){.gu-child{justify-content:center}.gu-child__info{text-align:center;justify-items:center}}.mute-btn{z-index:40;background:var(--paper);border:4px solid var(--ink);border-radius:50%;place-items:center;width:56px;height:56px;font-size:1.5rem;line-height:1;transition:transform .1s,box-shadow .1s;display:grid;position:fixed;bottom:16px;right:16px;box-shadow:0 5px #2b203859}.mute-btn:active{transform:translateY(4px);box-shadow:0 1px #2b203859}.mute-btn--off{background:#ffe1e1}.starter-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:14px;width:100%;display:grid}.starter-card{border:5px solid var(--ink);border-radius:var(--radius-sm);background:#fff;justify-items:center;gap:4px;padding:10px 6px 12px;transition:transform .12s;display:grid;box-shadow:0 6px #2b203840}.starter-card:hover{transform:translateY(-4px)rotate(-1.5deg)}.starter-card__art{background:linear-gradient(180deg, var(--sky-bottom,#cdf3ff), var(--sky-glow,#ffe9a8));border:4px solid var(--ink);border-radius:50%;place-items:center;width:96px;height:96px;display:grid;overflow:hidden}.starter-card--scratch .starter-card__art{background:linear-gradient(#fff,#eee7ff);font-size:2.6rem}.starter-card__label{color:var(--ink-soft);font-size:.9rem;font-weight:900}.level-path{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:18px;width:100%;display:flex}.level-node{border:5px solid var(--ink);border-radius:var(--radius-sm);background:linear-gradient(#fffdf5,#ffeec9);justify-items:center;gap:6px;width:150px;padding:14px 10px 16px;transition:transform .12s;display:grid;position:relative;box-shadow:0 7px #2b20384d}.level-node:hover{transform:translateY(-4px)scale(1.03)}.level-node__badge{color:#fff;background:linear-gradient(180deg, var(--island-accent,#ffd34d), var(--island-primary,#ff7a3d));border:4px solid var(--ink);border-radius:50%;place-items:center;width:54px;height:54px;font-size:1.3rem;font-weight:900;display:grid}.level-node__name{font-size:1.05rem;font-weight:900}.level-node__stars{letter-spacing:2px;color:#ffb703;text-shadow:0 2px #2b203840;font-size:1.35rem;line-height:1}.level-node__star--off{opacity:.25}.level-node__go{color:var(--ink-soft);font-size:.85rem;font-weight:900}.island-hud{color:#b8860b;background:var(--paper);border:4px solid var(--ink);border-radius:999px;align-items:center;gap:10px;padding:8px 20px;font-size:1.15rem;font-weight:900;display:flex;box-shadow:0 5px #2b20384d}.race-stage{z-index:50;background:#1b1030;position:fixed;inset:0}.level-celebrate{z-index:60;background:#1b1030b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.avatar-creator--starters{justify-items:center;gap:14px;width:100%;display:grid}:root[data-theme] .sky{background:radial-gradient(circle at 50% 120%, var(--sky-glow) 0%, transparent 55%), linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bottom) 60%, var(--sky-haze) 100%)}:root[data-theme] .map{background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-mid) 30%, var(--sky-bottom) 41%, var(--sea) 47%, var(--sea) 66%, var(--sea-deep) 100%)}:root[data-theme] .map__haze{background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--sky-glow) 60%, transparent) 55%, transparent 100%)}:root[data-theme] .btn{background:var(--btn-bg)}:root[data-theme] .btn--huge{background:linear-gradient(180deg, var(--btn-top), var(--btn-bg))}:root[data-theme] .btn--ghost{background:#fff}:root[data-theme] .title-mega{color:var(--accent)}:root[data-theme] .title-mega__alt{color:var(--accent-2)}:root[data-theme] .text-input:focus{border-color:var(--accent)}:root[data-theme] .hud__avatar{background:linear-gradient(180deg, var(--sky-bottom), var(--sky-glow))}:root[data-theme=galaxy] .sun-rays{opacity:.22}:root[data-theme=galaxy] .sky:before,:root[data-theme=galaxy] .map:before{content:"";pointer-events:none;opacity:.85;background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff 50%,#0000 50%),radial-gradient(1.5px 1.5px at 68% 9%,#fff 50%,#0000 50%),radial-gradient(2px 2px at 34% 31%,#ffe9a8 50%,#0000 50%),radial-gradient(1.5px 1.5px at 84% 24%,#fff 50%,#0000 50%),radial-gradient(1.5px 1.5px at 52% 6%,#fff 50%,#0000 50%),radial-gradient(2px 2px at 22% 41%,#cfe3ff 50%,#0000 50%);animation:4s ease-in-out infinite twinkle;position:absolute;inset:0}@keyframes twinkle{0%,to{opacity:.85}50%{opacity:.45}}.theme-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;width:100%;display:grid}.theme-card{border:5px solid var(--ink);border-radius:var(--radius-sm);background:#fff;justify-items:center;gap:8px;padding:12px 10px 14px;transition:transform .12s;display:grid;box-shadow:0 6px #2b203840}.theme-card:hover{transform:translateY(-3px)}.theme-card--on{box-shadow:0 6px 0 #2b203840, 0 0 0 5px var(--gold);transform:translateY(-3px)scale(1.03)}.theme-card__label{font-size:1rem;font-weight:900}.theme-mini{border:4px solid var(--ink);border-radius:12px;width:100%;height:78px;position:relative;overflow:hidden}.theme-mini__sky{position:absolute;inset:0 0 42%}.theme-mini__sun{border-radius:50%;width:16px;height:16px;position:absolute;top:8px;right:10px}.theme-mini__sea{position:absolute;inset:58% 0 0}.theme-mini__pill{border:3px solid var(--ink);border-radius:999px;width:54%;height:18px;position:absolute;bottom:8px;left:50%;translate:-50%}[data-hints=off] .qi-hint,[data-hints=off] .island__cue,[data-hints=off] .walker__tip,[data-hints=off] .garage__hint{display:none!important}.qi-settings-btn{z-index:40;align-items:center;gap:10px;display:flex;position:fixed;bottom:16px;right:16px}.qi-settings-btn button{background:var(--paper);border:4px solid var(--ink);cursor:pointer;border-radius:50%;place-items:center;width:56px;height:56px;font-size:1.5rem;line-height:1;transition:transform .1s,box-shadow .1s;display:grid;box-shadow:0 5px #2b203859}.qi-settings-btn button:active{transform:translateY(4px);box-shadow:0 1px #2b203859}.qi-settings-btn button:focus-visible{outline:4px solid var(--blue);outline-offset:3px}.qi-settings-btn__quick--off{background:#ffe1e1}.qi-settings-btn__open{background:var(--gold)}.qi-settings{z-index:90;position:fixed;inset:0}.qi-settings__scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;background:#1b3e6673;border:0;width:100%;height:100%;padding:0;animation:.16s ease-out qiSettingsFade;position:absolute;inset:0}.qi-settings__sheet{background:var(--paper);border-left:6px solid var(--ink);width:min(420px,100%);box-shadow:var(--shadow-card);flex-direction:column;gap:16px;padding:20px 20px 32px;animation:.2s cubic-bezier(.2,1.1,.4,1) qiSettingsSlide;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto}.qi-settings__sheet:focus{outline:none}@keyframes qiSettingsFade{0%{opacity:0}}@keyframes qiSettingsSlide{0%{opacity:0;transform:translate(24px)}}@media (prefers-reduced-motion:reduce){.qi-settings__scrim,.qi-settings__sheet{animation:none}}.qi-settings__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.qi-settings__title{margin:0;font-size:1.6rem}.qi-settings__close{border:4px solid var(--ink);cursor:pointer;background:#fff;border-radius:50%;flex:none;place-items:center;width:52px;height:52px;font-size:1.3rem;display:grid;box-shadow:0 4px #2b20384d}.qi-settings__close:active{transform:translateY(3px);box-shadow:0 1px #2b20384d}.qi-settings__row{border:5px solid var(--ink);border-radius:var(--radius-sm);background:#fff;gap:10px;padding:14px;display:grid;box-shadow:0 6px #2b203838}.qi-settings__row[data-off=true]{background:#f2eff6}.qi-settings__rowhead{align-items:center;gap:12px;display:flex}.qi-settings__icon{font-size:1.9rem;line-height:1}.qi-settings__label{flex:auto;font-size:1.25rem;font-weight:800}.qi-settings__note{color:var(--ink-soft);margin:0;font-size:.92rem}.qi-settings__note--foot{text-align:center;padding:0 4px}.qi-settings__slider{align-items:center;gap:8px;display:flex}.qi-settings__quiet,.qi-settings__loud{font-size:1.05rem;line-height:1}.qi-settings__percent{text-align:right;min-width:3.4em;color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:800}.qi-settings__slider input[type=range]{min-width:0;height:44px;accent-color:var(--blue);cursor:pointer;background:0 0;flex:auto;margin:0}.qi-settings__slider input[type=range]:disabled{opacity:.4;cursor:default}.qi-settings__slider input[type=range]:focus-visible{outline:4px solid var(--blue);outline-offset:2px;border-radius:999px}.qi-toggle{cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:8px;padding:4px;display:flex}.qi-toggle__track{border:4px solid var(--ink);background:#d7d0e0;border-radius:999px;width:76px;height:44px;transition:background .15s;display:block;position:relative}.qi-toggle[aria-checked=true] .qi-toggle__track{background:var(--green)}.qi-toggle__knob{border:3px solid var(--ink);background:#fff;border-radius:50%;width:32px;height:32px;transition:transform .15s cubic-bezier(.2,1.1,.4,1);position:absolute;top:2px;left:2px}.qi-toggle[aria-checked=true] .qi-toggle__knob{transform:translate(32px)}.qi-toggle__word{min-width:3ch;color:var(--ink-soft);font-size:.9rem;font-weight:900}.qi-toggle:focus-visible{outline:4px solid var(--blue);outline-offset:2px;border-radius:999px}@media (prefers-reduced-motion:reduce){.qi-toggle__knob,.qi-toggle__track{transition:none}}.legal{min-height:100svh;font:17px/1.65 var(--sans);color:var(--ink);background:linear-gradient(#eaf6ff 0%,#f7f3ea 100%);padding:clamp(16px,4vw,48px) 16px clamp(32px,6vw,72px)}.legal__sheet{background:var(--paper);border-radius:var(--radius-sm);max-width:44rem;box-shadow:var(--shadow-soft);margin:0 auto;padding:clamp(20px,4vw,44px) clamp(18px,4vw,48px) clamp(24px,4vw,40px)}.legal__eyebrow{letter-spacing:.04em;color:var(--ink-soft);text-transform:uppercase;font-size:.85rem;font-weight:800}.legal__title{letter-spacing:-.02em;margin-top:4px;font-size:clamp(2rem,6vw,2.75rem);font-weight:900}.legal__lede{color:var(--ink-soft);margin-top:12px;font-size:1.075rem}.legal__stamp{color:var(--ink-soft);border-bottom:2px dashed #e2ddea;margin-top:10px;padding-bottom:16px;font-size:.85rem}.legal__h2{color:var(--deep-blue);margin-top:34px;margin-bottom:10px;font-size:1.3rem;font-weight:900}.legal p+p{margin-top:12px}.legal__list{margin:10px 0 0;padding-left:1.2em}.legal__list li{margin-bottom:10px}.legal a{color:#1668b8;font-weight:700}.legal__mail{word-break:break-all}.legal__todo{border-radius:var(--radius-xs);background:#fff5d6;border:2px dashed #e0a800;margin-top:12px;padding:12px 14px;font-size:.95rem;font-weight:600}.legal__todo code{background:#2b203814;border-radius:4px;padding:1px 5px;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,Menlo,Consolas,monospace;font-size:.88em}.legal__foot{color:var(--ink-soft);border-top:2px dashed #e2ddea;margin-top:40px;padding-top:18px;font-size:.9rem}.legal__nav{flex-wrap:wrap;gap:18px;margin-top:16px;display:flex}.legal-footer{z-index:2;border-radius:var(--radius-pill);max-width:calc(100% - 24px);color:var(--ink-soft);background:#fffdf7d1;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 12px;margin:0;padding:4px 14px;font-size:.8rem;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.legal-footer a{color:var(--ink-soft);text-underline-offset:3px;font-weight:700;text-decoration-thickness:1px}.legal-footer a:hover{color:var(--ink)}.adm{--adm-line:#e2ddea;--adm-bg:#f7f5fa;background:var(--adm-bg);min-height:100svh;font:15px/1.5 var(--sans);color:var(--ink);padding:24px clamp(12px,3vw,40px) 64px}.adm-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;max-width:1360px;margin:0 auto 20px;display:flex}.adm-top__actions{gap:8px;display:flex}.adm-h1{letter-spacing:-.01em;font-size:1.5rem;font-weight:800}.adm-sub{color:var(--ink-soft);margin-top:4px;font-size:.875rem}.adm-card{border:1px solid var(--adm-line);background:#fff;border-radius:10px;max-width:1360px;margin:0 auto 20px;padding:16px 18px 18px;box-shadow:0 1px 2px #2b20380f}.adm-card__head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.adm-h2{font-size:1.075rem;font-weight:800}.adm-count{background:var(--adm-bg);border:1px solid var(--adm-line);color:var(--ink-soft);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 8px;font-size:.8rem}.adm-scroll{overflow-x:auto}.adm-table{border-collapse:collapse;width:100%;font-size:.875rem}.adm-table th,.adm-table td{text-align:left;border-bottom:1px solid var(--adm-line);vertical-align:middle;white-space:nowrap;padding:8px 10px}.adm-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);border-bottom-width:2px;font-size:.72rem;font-weight:700}.adm-table tbody tr:last-child td{border-bottom:none}.adm-table tbody tr:hover{background:#fbfaff}.adm-strong{font-weight:700}.adm-muted{color:var(--ink-soft)}.adm-num{text-align:right;font-variant-numeric:tabular-nums}.adm-actions{gap:6px;display:flex}.adm-code{background:var(--adm-bg);border:1px solid var(--adm-line);letter-spacing:.02em;border-radius:5px;padding:2px 6px;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,Menlo,Consolas,monospace;font-size:.82rem}.adm-pill{text-transform:capitalize;border:1px solid #0000;border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:700;display:inline-block}.adm-pill--active,.adm-pill--open{color:#1c6b38;background:#e6f8ec;border-color:#b6e6c6}.adm-pill--trial{color:#1a4b82;background:#eaf3ff;border-color:#bcd8f8}.adm-pill--suspended{color:#902323;background:#ffeaea;border-color:#f6c2c2}.adm-pill--redeemed{color:#4a2f8a;background:#f0ecfb;border-color:#d6cbf2}.adm-pill--join{color:#1d5a8a;background:#e8f4ff;border-color:#b9dbf7}.adm-pill--expired{border-color:var(--adm-line);color:var(--ink-soft);background:#f2f0f4}.adm-btn{border:1px solid var(--adm-line);color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:7px;padding:6px 12px;font-size:.82rem;font-weight:600}.adm-btn:hover:not(:disabled){background:var(--adm-bg);border-color:#cdc6d8}.adm-btn:disabled{opacity:.5;cursor:default}.adm-btn--primary{background:var(--deep-blue);border-color:var(--deep-blue);color:#fff}.adm-btn--primary:hover:not(:disabled){background:#16365a;border-color:#16365a}.adm-btn--danger{color:#902323;border-color:#edc9c9}.adm-btn--danger:hover:not(:disabled){background:#fff4f4;border-color:#e2a9a9}.adm-btn--primary.adm-btn--danger{color:#fff;background:#902323;border-color:#902323}.adm-btn--primary.adm-btn--danger:hover:not(:disabled){background:#741c1c}.adm-input{border:1px solid var(--adm-line);font:inherit;color:var(--ink);background:#fff;border-radius:7px;min-width:0;padding:6px 10px;font-size:.875rem}.adm-input:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.adm-input--search{width:min(280px,100%);margin-left:auto}.adm-input--code{letter-spacing:.04em;width:160px;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,Menlo,Consolas,monospace}.adm-form{background:var(--adm-bg);border:1px solid var(--adm-line);border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:14px;padding:12px;display:flex}.adm-field{flex-direction:column;gap:4px;display:flex}.adm-field--grow{flex:220px}.adm-field__row{gap:6px;display:flex}.adm-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);font-size:.72rem;font-weight:700}.adm-error{color:#902323;font-size:.82rem;font-weight:600}.adm-error--block{background:#ffeaea;border:1px solid #f6c2c2;border-radius:8px;max-width:1360px;margin:0 auto 16px;padding:10px 12px}.adm-flash{color:#1c6b38;margin:4px 0 10px;font-size:.82rem;font-weight:600}.adm-empty{color:var(--ink-soft);padding:14px 2px;font-size:.9rem}.adm-note{color:var(--ink-soft);margin-top:12px;font-size:.8rem}.adm-note--foot{max-width:1360px;margin:0 auto}.adm-confirm{background:#fffaf0;border:1px solid #f0dcae;border-radius:8px;margin-top:14px;padding:12px 14px;font-size:.875rem}.adm-confirm__row{gap:8px;margin-top:10px;display:flex}.adm-danger{background:#fff5f5;border:2px solid #d94a4a;border-radius:8px;margin-top:14px;padding:14px 16px;font-size:.875rem}.adm-danger__title{color:#902323;margin:0 0 8px;font-size:.95rem;font-weight:700}.adm-danger .adm-field{margin-top:10px}.adm-btn--nuke{margin-left:8px}.adm--gate{place-items:center;padding-top:6vh;display:grid}.adm-mfa{border:1px solid var(--adm-line);text-align:left;background:#fff;border-radius:12px;width:min(420px,100%);padding:22px 24px 20px;box-shadow:0 2px 10px #2b203814}.adm-mfa__title{letter-spacing:-.01em;font-size:1.25rem;font-weight:800}.adm-mfa__lede{color:var(--ink-soft);margin-top:6px;font-size:.9rem}.adm-mfa__qr{border:1px solid var(--adm-line);background:#fff;border-radius:10px;justify-content:center;margin:16px 0 4px;padding:12px;display:flex}.adm-mfa__qr img{width:200px;height:200px;display:block}.adm-mfa__secret{flex-direction:column;gap:4px;margin:12px 0 4px;display:flex}.adm-code--secret{word-break:break-all;white-space:normal;-webkit-user-select:all;user-select:all;padding:7px 9px;font-size:.8rem;line-height:1.5}.adm-mfa__form{gap:10px;margin-top:16px;display:grid}.adm-mfa__form .adm-btn{width:100%;padding:9px 12px}.adm-input--otp{letter-spacing:.28em;text-align:center;width:100%;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,Menlo,Consolas,monospace;font-size:1.15rem}.adm-mfa__row{gap:8px;margin-top:14px;display:flex}.adm-mfa .adm-error{margin-top:8px}.adm-mfa__bail{font:inherit;color:var(--ink-soft);text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;margin-top:16px;padding:0;font-size:.82rem;font-weight:600;text-decoration:underline;display:block}.adm-mfa__bail:hover:not(:disabled){color:var(--ink)}.adm-mfa__bail:disabled{opacity:.5;cursor:default}.adm-mfa-badge{color:#1c6b38;white-space:nowrap;cursor:default;background:#e6f8ec;border:1px solid #b6e6c6;border-radius:999px;margin-left:4px;padding:1px 8px;font-size:.75rem;font-weight:700;display:inline-block}.adm-mfa-badge__note{opacity:.8;font-weight:600}@media (width<=640px){.adm-mfa-badge__note{display:none}}.nm-city__card{max-width:900px}.nm-districts{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.9rem;width:100%;margin:1rem 0;display:grid}.nm-district{--nm-district:#3dc98a;border:5px solid var(--ink);background:color-mix(in srgb, var(--nm-district) 26%, var(--paper));min-height:168px;box-shadow:0 6px 0 var(--ink);cursor:pointer;text-align:center;border-radius:22px;flex-direction:column;align-items:center;gap:.25rem;padding:1rem .8rem;transition:transform .12s,box-shadow .12s;display:flex}.nm-district:hover:not(:disabled),.nm-district:focus-visible{box-shadow:0 9px 0 var(--ink);transform:translateY(-3px)}.nm-district:active:not(:disabled){box-shadow:0 3px 0 var(--ink);transform:translateY(3px)}.nm-district:disabled{opacity:.6;cursor:default}.nm-district__emoji{font-size:2.6rem;line-height:1}.nm-district__name{color:var(--ink);font-size:1.25rem;font-weight:900}.nm-district__tag{color:var(--ink-soft);font-size:.85rem}.nm-district--spot{box-shadow:0 0 0 4px color-mix(in srgb, var(--nm-district) 55%, #fff)}.nm-district__spot{border:2px solid var(--ink);color:var(--ink);background:#fff5cc;border-radius:999px;padding:2px 9px;font-size:.78rem;font-weight:900}.nm-district__meta{color:var(--ink-soft);margin-top:auto;font-size:.85rem;font-weight:800}.nm-district--soon{box-shadow:none;filter:grayscale(.7);cursor:default;background:#e8e4ee;border-style:dashed}.nm-topics{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.8rem;width:100%;margin:.8rem 0 1rem;display:grid}.nm-topic{border:4px solid var(--ink);background:var(--paper);box-shadow:0 5px 0 var(--ink);text-align:left;border-radius:20px;flex-direction:column;gap:.35rem;padding:.8rem;display:flex}.nm-topic__head{align-items:center;gap:.5rem;display:flex}.nm-topic__emoji{font-size:1.8rem}.nm-topic__name{font-size:1.15rem;font-weight:900}.nm-topic__blurb{color:var(--ink-soft);margin:0;font-size:.88rem}.nm-topic__suggest{color:#8a6a1f;margin:0;font-size:.82rem;font-weight:800}.nm-topic__row{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.nm-node{border:4px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;background:#fff5db;border-radius:16px;flex-direction:column;align-items:center;gap:.15rem;padding:.6rem .4rem;transition:transform .1s;display:flex}.nm-node--game{background:#d8f5e8}.nm-node--done{background:#cfeeff}.nm-node:hover:not(:disabled){transform:translateY(-2px)}.nm-node:disabled{opacity:.65;cursor:default}.nm-node--locked{filter:grayscale(.6)}.nm-node__badge{font-size:1.7rem}.nm-node__name{font-size:.95rem;font-weight:900}.nm-node__stars{color:#ffb703;letter-spacing:1px;font-size:1rem}.nm-node__go{color:var(--ink-soft);font-size:.75rem;font-weight:800}.nm-shop,.nm-game{--nm-district:#3dc98a;--nm-cell:22px;background:radial-gradient(circle at 20% 0%, color-mix(in srgb, var(--nm-district) 35%, #fffdf7), #fffdf7 60%);width:100%;min-height:100vh;padding:1rem;position:relative;overflow-y:auto}.nm-shop__inner,.nm-game__inner{flex-direction:column;align-items:center;gap:.6rem;max-width:760px;margin:0 auto;display:flex}.nm-shop--easy,.nm-game--easy{font-size:1.1em}.nm-shop__head{text-align:center;width:100%}.nm-leave{border:3px solid var(--ink);background:var(--paper);cursor:pointer;border-radius:999px;padding:.35rem .9rem;font-weight:800}.nm-eyebrow{color:var(--ink-soft);letter-spacing:.5px;margin:.4rem 0 0;font-weight:900}.nm-shop__title{color:var(--ink);margin:.1rem 0 0;font-size:2rem;font-weight:900}.nm-panel{background:var(--paper);border:5px solid var(--ink);width:100%;box-shadow:0 8px 0 var(--ink);text-align:center;border-radius:26px;flex-direction:column;align-items:center;gap:.6rem;padding:1rem;display:flex}.nm-crest{font-size:3rem}.nm-blurb{color:var(--ink);max-width:44ch;margin:0;font-size:1.05rem;font-weight:700}.nm-step{color:var(--ink-soft);margin:0;font-size:.85rem;font-weight:800}.nm-subtitle{margin:0;font-size:1.45rem;font-weight:900}.nm-nofail{color:var(--ink-soft);margin:0;font-size:.9rem;font-weight:700}.nm-enter{color:var(--ink-soft);margin:0;font-size:.78rem}.nm-why{border:3px dashed var(--ink);background:#fff8e2;border-radius:16px;max-width:46ch;margin:0;padding:.6rem .9rem;font-size:1rem;font-weight:800}.nm-pips{gap:6px;margin-top:.4rem;display:flex}.nm-pip{border:2px solid var(--ink);background:0 0;border-radius:50%;width:12px;height:12px}.nm-pip--on{background:var(--nm-district)}.nm-stage{flex-direction:column;align-items:center;gap:.7rem;width:100%;display:flex}.nm-counter{width:var(--nm-cell);height:var(--nm-cell);background:0 0;border:2px solid #4a4f63;border-radius:50%;display:inline-block}.nm-counter--on{background:#2f7fd6;border-color:#24608f}.nm-counter--ghost{opacity:.5;background:0 0;border-style:dashed}.nm-block{width:var(--nm-cell);height:var(--nm-cell);background:0 0;border:2px solid #4a4f63;border-radius:3px;display:inline-block}.nm-block--on{background:#e0733a;border-color:#a34f22}.nm-row{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.nm-groups{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.nm-group{grid-template-columns:repeat(2, var(--nm-cell));border:2px dashed #4a4f63;border-radius:10px;gap:5px;padding:8px;display:grid}.nm-array{flex-direction:column;align-items:center;gap:4px;display:flex}.nm-array__row{gap:4px;display:grid}.nm-array__row--split{margin-top:12px}.nm-frame{background:#fff;border:3px solid #4a4f63;border-radius:6px;grid-template-columns:repeat(5,34px);grid-auto-rows:34px;gap:4px;padding:6px;display:grid}.nm-cell{background:#fff;border:2px solid #9aa0b0;border-radius:4px}.nm-cell--on{background:#2f7fd6;border-color:#24608f}.nm-cell--new{background:#7fc4ff;border-color:#24608f}.nm-cell--btn{cursor:pointer;padding:0}.nm-cell--btn:disabled{cursor:default}.nm-line{width:100%;max-width:640px;height:74px;margin:0 auto;position:relative}.nm-line__rail{background:#4a4f63;height:4px;position:absolute;top:34px;left:0;right:0}.nm-line__tick{background:#4a4f63;width:2px;height:10px;position:absolute;top:28px;transform:translate(-1px)}.nm-line__tick--major{width:3px;height:22px;top:22px}.nm-line__label{color:#4a4f63;font-size:.75rem;font-weight:700;position:absolute;top:48px;transform:translate(-50%)}.nm-line__mark{background:#e0733a;width:4px;height:30px;position:absolute;top:18px;transform:translate(-2px)}.nm-line__walker{transition:left .18s ease-out;position:absolute;top:2px;transform:translate(-50%)}.nm-line__walkernum{color:#fff;text-align:center;background:#2f7fd6;border:2px solid #24608f;border-radius:6px;min-width:30px;padding:2px 5px;font-size:.95rem;font-weight:900;display:inline-block}.nm-count{color:var(--ink);margin:0;font-size:2.6rem;font-weight:900;line-height:1}.nm-equation{color:var(--ink);letter-spacing:1px;margin:0;font-size:1.9rem;font-weight:900}.nm-bridge{border:3px solid var(--ink);background:#fbfbff;border-radius:18px;flex-direction:column;align-items:center;gap:.3rem;width:100%;padding:.8rem;display:flex}.nm-bridge__arrow{color:var(--ink-soft);font-size:1.6rem}.nm-drop{font-size:1.1rem}.nm-ninetable{border-collapse:collapse;font-size:1.25rem;font-weight:900}.nm-ninetable td{color:#b9b3c4;padding:2px 7px}.nm-ninetable__row--on td{color:var(--ink)}.nm-ninetable__tens{color:#2f7fd6!important}.nm-ninetable__ones{color:#e0733a!important}.nm-ninetable__sum{font-size:.9rem;font-weight:700}.nm-secret{max-width:44ch;margin:0;font-weight:800}.nm-hands{justify-content:center;gap:5px;display:flex}.nm-finger{cursor:pointer;background:#fff;border:3px solid #4a4f63;border-radius:10px;width:20px;height:54px;padding:0}.nm-finger--gap{margin-left:22px}.nm-finger--folded{background:#cfcfd8;align-self:flex-end;height:20px}.nm-finger--tens{background:#2f7fd6}.nm-finger--ones{background:#e0733a}.nm-picks{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.nm-pick{border:4px solid var(--ink);min-width:88px;box-shadow:0 4px 0 var(--ink);cursor:pointer;background:#fff5db;border-radius:16px;padding:.7rem 1rem;font-size:1.4rem;font-weight:900}.nm-pick--right{background:#b9f0cf}.nm-pick--wobble{animation:.42s nm-wobble}.nm-machine{flex-direction:column;align-items:center;gap:.2rem;min-height:84px;display:flex}.nm-machine__body{font-size:3rem;line-height:1}.nm-machine__gears{flex-wrap:wrap;justify-content:center;gap:3px;max-width:420px;display:flex}.nm-gear{opacity:.18;filter:grayscale();font-size:1.4rem;transition:opacity .2s}.nm-gear--on{opacity:1;filter:none}.nm-gear--spin{animation:.8s linear infinite nm-spin}.nm-power{border:4px solid var(--ink);background:#eae6f0;border-radius:999px;width:100%;max-width:520px;height:26px;position:relative;overflow:hidden}.nm-power__fill{background:var(--nm-district);height:100%;transition:width .35s ease-out}.nm-power__star{color:#ffb703;text-shadow:0 0 2px #6b4c00;font-size:1.1rem;position:absolute;top:-3px;transform:translate(-50%)}.nm-round{color:var(--ink-soft);margin:0;font-weight:900}.nm-problem{border:5px solid var(--ink);background:var(--paper);box-shadow:0 6px 0 var(--ink);border-radius:22px;align-items:center;gap:1rem;min-height:96px;padding:.7rem 1.4rem;display:flex}.nm-problem--wobble{animation:.42s nm-wobble}.nm-problem__text{letter-spacing:2px;color:var(--ink);font-size:clamp(2rem,7vw,3.4rem);font-weight:900}.nm-problem__entry{border-bottom:6px solid var(--ink);color:#1c6fbf;text-align:center;min-width:96px;min-height:62px;padding:0 .5rem;font-size:clamp(2rem,7vw,3.4rem);font-weight:900}.nm-pad{grid-template-columns:repeat(3,1fr);gap:.5rem;width:100%;max-width:380px;display:grid}.nm-key{border:4px solid var(--ink);background:var(--paper);box-shadow:0 4px 0 var(--ink);cursor:pointer;border-radius:16px;padding:.7rem 0;font-size:1.7rem;font-weight:900}.nm-key:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.nm-key:disabled{opacity:.5;cursor:default}.nm-key--go{background:var(--nm-district);grid-column:1/-1;font-size:1.35rem}.nm-stars{color:#ffb703;letter-spacing:4px;margin:0;font-size:3rem}.nm-hint{z-index:40;background:#2b20388c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.nm-hint .nm-panel{max-width:460px}.nm-hint__row{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.nm-hint__go{background:#ffe08a}@keyframes nm-spin{to{transform:rotate(360deg)}}@keyframes nm-wobble{0%,to{transform:translate(0)}20%{transform:translate(-8px)}45%{transform:translate(7px)}70%{transform:translate(-4px)}}@media (prefers-reduced-motion:reduce){.nm-gear--spin,.nm-pick--wobble,.nm-problem--wobble{animation:none}}@media (width<=520px){.nm-shop,.nm-game{--nm-cell:17px}.nm-topic__row{grid-template-columns:1fr}}.nm-gradepick{border:4px solid var(--ink);width:100%;box-shadow:0 5px 0 var(--ink);background:#fff8e6;border-radius:20px;flex-direction:column;align-items:center;gap:.35rem;padding:.7rem .8rem;display:flex}.nm-gradepick__title{color:var(--ink);margin:0;font-size:1.15rem;font-weight:900}.nm-gradepick__row{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.nm-gradepick__note{color:var(--ink-soft);margin:0;font-size:.82rem}.nm-gradechip{border:4px solid var(--ink);min-width:58px;color:var(--ink);cursor:pointer;box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:999px;padding:.5rem .9rem;font-size:1.3rem;font-weight:900;transition:transform .1s,box-shadow .1s,background .1s}.nm-gradechip--all{letter-spacing:.5px;font-size:1rem}.nm-gradechip:hover,.nm-gradechip:focus-visible{box-shadow:0 6px 0 var(--ink);transform:translateY(-2px)}.nm-gradechip--on{box-shadow:0 2px 0 var(--ink);background:#ffd447;transform:translateY(2px)}.nm-topic__grade{border:2px solid var(--ink);color:var(--ink-soft);white-space:nowrap;background:#fff;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.7rem;font-weight:900}.nm-fracwrap{flex-direction:column;align-items:center;gap:4px;width:100%;max-width:460px;display:flex}.nm-fracbar{background:#fff;border:3px solid #4a4f63;border-radius:4px;width:100%;height:54px;display:flex;overflow:hidden}.nm-fracpart{background:0 0;border-right:2px solid #4a4f63;flex:1 1 0;min-width:0;padding:0}.nm-fracpart:last-child{border-right:none}.nm-fracpart--on{background:#2f7fd6}.nm-fracpart--btn{cursor:pointer}.nm-fracpart--btn:disabled{cursor:default}.nm-fraclabel{color:#4a4f63;font-size:1.05rem;font-weight:900}.nm-fracpair{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.nm-line--frac{max-width:520px}.nm-baseten{--nm-bt-unit:12px;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:14px;min-height:42px;display:flex}.nm-bt-col{align-items:flex-start;gap:6px;display:flex}.nm-bt-flat{grid-template-columns:repeat(10, var(--nm-bt-unit));grid-auto-rows:var(--nm-bt-unit);border:2px solid #4a4f63;border-radius:3px;gap:1px;padding:2px;display:grid}.nm-bt-rod{grid-template-columns:var(--nm-bt-unit);grid-auto-rows:var(--nm-bt-unit);border:2px solid #4a4f63;border-radius:3px;gap:1px;padding:2px;display:grid}.nm-bt-ones{max-width:calc(var(--nm-bt-unit) * 5 + 30px);flex-wrap:wrap;align-content:flex-start;gap:1px;padding:2px;display:flex}.nm-bt-unit{width:var(--nm-bt-unit);height:var(--nm-bt-unit);background:0 0;border:1px solid #4a4f63;display:block}.nm-bt-unit--on{background:#e0733a;border-color:#a34f22}.nm-btrow{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.nm-problem--long .nm-problem__text{letter-spacing:1px;font-size:clamp(1.5rem,5vw,2.4rem)}.nm-problem--long .nm-problem__entry{min-width:78px;min-height:54px;font-size:clamp(1.6rem,5vw,2.6rem)}.nm-problem--xlong{text-align:center;flex-direction:column;gap:.4rem}.nm-problem--xlong .nm-problem__text{letter-spacing:0;font-size:clamp(1.05rem,3.2vw,1.45rem);line-height:1.3}.nm-problem--xlong .nm-problem__entry{min-width:96px;min-height:52px;font-size:clamp(1.8rem,5vw,2.6rem)}.adv-screen{background:radial-gradient(circle at 50% -10%, #ffe9a8 0%, transparent 48%), linear-gradient(180deg, var(--sky-top) 0%, #cdf3ff 46%, #ffe9c4 100%);flex-direction:column;align-items:center;gap:18px;height:auto;min-height:100svh;display:flex;overflow:visible}.adv-screen--boss{background:linear-gradient(#2a2050 0%,#4a3a78 60%,#8a6bb0 100%);justify-content:center}.adv-top{justify-content:space-between;align-items:center;gap:16px;width:min(880px,100%);display:flex}.adv-purse{border-radius:var(--radius-pill);background:var(--paper);border:4px solid var(--ink);box-shadow:var(--drop-sm);color:var(--ink);align-items:center;gap:8px;margin:0;padding:8px 18px;font-size:1.15rem;font-weight:800;display:flex}.adv-purse .coin{flex:none}.adv-compass-slot{flex-direction:column;align-items:center;gap:2px;display:flex}.adv-compass svg{filter:drop-shadow(0 6px #2b203838)}.adv-compass__label{color:var(--ink-soft);letter-spacing:.02em;margin:0;font-size:.85rem;font-weight:800}.adv-compass__wedge--set{animation:adv-shard-in .6s var(--spring) both;transform-origin:60px 60px}@keyframes adv-shard-in{0%{opacity:0;transform:scale(.2)rotate(-40deg)}to{opacity:1;transform:scale(1)rotate(0)}}.adv-compass__needle{transform-origin:60px 60px;animation:6s ease-in-out infinite adv-needle-settle}.adv-compass__needle--lost{animation:3.2s ease-in-out infinite adv-needle-lost}@keyframes adv-needle-settle{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes adv-needle-lost{0%{transform:rotate(-40deg)}35%{transform:rotate(120deg)}70%{transform:rotate(-90deg)}to{transform:rotate(-40deg)}}.adv-board{border-radius:var(--radius);width:min(880px,100%);box-shadow:var(--shadow-card);color:var(--ink);background:repeating-linear-gradient(112deg,#784c200d 0 6px,#0000 6px 13px),linear-gradient(#d9a86a 0%,#c99555 100%);border:7px solid #8a5a2b;padding:26px 24px 30px;position:relative}.adv-board__pin{background:radial-gradient(circle at 34% 30%, #ff9d9d, var(--red));border:3px solid var(--ink);border-radius:50%;width:20px;height:20px;position:absolute;top:12px;box-shadow:0 3px #2b20384d}.adv-board__pin--l{left:16px}.adv-board__pin--r{background:radial-gradient(circle at 34% 30%, #9fe6ff, var(--blue));right:16px}.adv-board__title{text-align:center;color:#4a2c10;text-shadow:0 2px #fffdf766;margin:0 0 2px;font-size:clamp(1.8rem,4vw,2.6rem)}.adv-board__chapter{text-align:center;color:#4a2c10;letter-spacing:.03em;margin:0 0 10px;font-size:1.05rem;font-weight:800}.adv-ribbon{border-radius:var(--radius-sm);border:4px solid var(--ink);max-width:62ch;box-shadow:var(--drop-sm);text-align:center;background:linear-gradient(#fffdf7 0%,#fff4d6 100%);margin:0 auto 16px;padding:12px 18px;font-size:1.02rem;line-height:1.45}.adv-story{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:start;gap:16px;margin-bottom:18px;display:grid}@media (width<=720px){.adv-story{grid-template-columns:1fr}}.adv-panel{border-radius:var(--radius-sm);border:5px solid var(--ink);box-shadow:var(--drop-md);background:#0a2a4a;margin:0;overflow:hidden}.adv-panel__art{width:100%;height:auto;display:block}.adv-panel__caption{background:var(--ink);color:var(--paper);text-align:center;padding:6px 10px;font-size:.85rem}.adv-story__beats{flex-direction:column;gap:8px;display:flex}.adv-story__more{background:#fffdf7d9;align-self:flex-start}.adv-beat{border-radius:var(--radius-sm);border-left:6px solid var(--gold);animation:adv-beat-in .45s var(--spring) both;background:#fffdf7eb;margin:0;padding:10px 14px;font-size:1rem;line-height:1.45}.adv-beat--muted{border-left-color:var(--teal);background:#fffdf799;font-style:italic}@keyframes adv-beat-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.adv-accept{margin:0 auto;display:block}.adv-missions{flex-direction:column;gap:10px;margin:0 0 18px;padding:0;list-style:none;display:flex}.adv-mission{border-radius:var(--radius-sm);border:4px solid var(--ink);box-shadow:var(--drop-sm);background:linear-gradient(#fffdf7 0%,#fff8e8 100%);align-items:center;gap:14px;padding:12px 16px;display:flex}.adv-mission--collected{opacity:.92;background:linear-gradient(#eafce9 0%,#d3f5d1 100%)}.adv-mission--ready{background:linear-gradient(#fff8d8 0%,#ffe9a1 100%);border-color:#b07d00;animation:1.9s ease-in-out infinite adv-ready-pulse}@keyframes adv-ready-pulse{0%,to{box-shadow:var(--drop-sm)}50%{box-shadow:0 4px #2b203847,0 0 22px #ffd34dd9}}.adv-mission__mark{text-align:center;flex:none;width:44px;font-size:1.9rem;line-height:1}.adv-mission__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.adv-mission__title{font-size:1.05rem;font-weight:800;line-height:1.25}.adv-mission__where{color:var(--ink-soft);font-size:.85rem}.adv-mission__btn{flex:none}.adv-mission__btn--collect{background:var(--gold);color:#4a2c10;animation:1.1s ease-in-out infinite adv-bob}@keyframes adv-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.adv-mission__done{color:#2f7a52;flex:none;font-size:.95rem;font-weight:800}.adv-bosscard{border-radius:var(--radius);background:#2b20381f;border:5px dashed #2b203873;align-items:center;gap:16px;padding:16px 18px;display:flex}.adv-bosscard--open{border-style:solid;border-color:var(--ink);color:var(--paper);background:linear-gradient(#3b2a6b 0%,#6b4aa8 100%);animation:2.6s ease-in-out infinite adv-boss-loom;box-shadow:0 6px #2b203859,0 0 30px #a45cff80}@keyframes adv-boss-loom{0%,to{transform:scale(1)}50%{transform:scale(1.014)}}.adv-bosscard__face{flex:none;font-size:2.6rem;line-height:1}.adv-bosscard__body{flex:1;min-width:0}.adv-bosscard__name{margin:0;font-size:1.25rem;font-weight:800}.adv-bosscard__hint{opacity:.85;margin:2px 0 0;font-size:.9rem}.adv-bosscard__btn{flex:none}.adv-shards{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.adv-shards__item{border-radius:var(--radius-sm);border:4px solid var(--ink);box-shadow:var(--drop-sm);background:linear-gradient(#fff8d8 0%,#ffe9a1 100%);align-items:center;gap:14px;padding:12px 16px;font-size:1.02rem;display:flex}.adv-shards__gem{flex:none;font-size:1.9rem;line-height:1}.adv-shards__from{opacity:.7}.adv-tease{border-radius:var(--radius-sm);opacity:.85;background:#2b203829;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:14px;margin-top:18px;padding:14px;display:grid}@media (width<=620px){.adv-tease{grid-template-columns:1fr}}.adv-tease .adv-panel{filter:saturate(.65)brightness(.9)}.adv-tease__tag{letter-spacing:.08em;text-transform:uppercase;color:#4a2c10;margin:0;font-size:.8rem;font-weight:800}.adv-tease__title{margin:2px 0 4px;font-size:1.25rem;font-weight:800}.adv-tease__ribbon{margin:0;font-size:.95rem;line-height:1.4}.adv-boss{border-radius:var(--radius);border:6px solid var(--gold);width:min(680px,100%);box-shadow:var(--shadow-card);text-align:center;color:var(--ink);animation:adv-boss-in .5s var(--spring) both;background:linear-gradient(#fffdf7 0%,#fff1d4 100%);margin:auto;padding:26px 26px 30px;position:relative}@keyframes adv-boss-in{0%{opacity:0;transform:scale(.9)translateY(14px)}to{opacity:1;transform:none}}.adv-boss .adv-panel{max-width:340px;margin:0 auto 14px}.adv-boss__tag{border-radius:var(--radius-pill);background:var(--ink);color:var(--gold);letter-spacing:.06em;margin:0;padding:5px 18px;font-weight:800;display:inline-block}.adv-boss__name{margin:8px 0 12px;font-size:clamp(1.6rem,4vw,2.3rem)}.adv-boss__line{text-align:left;max-width:56ch;margin:0 auto 10px;font-size:1.02rem;line-height:1.5}.adv-boss__line--finale{color:#4a3a70;font-style:italic}.adv-boss__pick{margin:14px 0 6px}.adv-boss__picklabel{margin:0 0 6px;font-weight:800}.adv-boss__pickrow{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.adv-boss__actions{flex-direction:column;align-items:center;gap:10px;margin-top:18px;display:flex}.adv-boss__stars{justify-content:center;gap:10px;margin:6px 0 12px;display:flex}.adv-boss__star{color:var(--gold);opacity:.22;font-size:3rem;line-height:1}.adv-boss__star[data-on=true]{opacity:1;animation:adv-star-pop .5s var(--spring) both}@keyframes adv-star-pop{0%{transform:scale(.2)rotate(-30deg)}to{transform:scale(1)}}.adv-boss__coins{margin:12px 0 18px;font-size:1.35rem;font-weight:800}.adv-boss__bonus{color:var(--ink-soft);font-size:.9rem;font-weight:700}.adv-boss--won{border-color:var(--green)}.adv-boss__stage{z-index:20;background:#1b1030;position:fixed;inset:0}.adv-boss__ribbon{z-index:30;border-radius:var(--radius-pill);border:3px solid var(--gold);color:var(--gold);letter-spacing:.02em;white-space:nowrap;pointer-events:none;background:#2b2038d1;margin:0;padding:6px 20px;font-size:.95rem;font-weight:800;position:absolute;top:10px;left:50%;transform:translate(-50%)}.adv-signpost{z-index:6;cursor:pointer;filter:drop-shadow(0 6px 8px #1b3e664d);transition:transform .18s var(--spring);background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:0;animation:5s ease-in-out infinite adv-signpost-sway;display:flex;position:absolute;top:42%;left:7%}.adv-signpost:hover,.adv-signpost:focus-visible{transform:scale(1.07)rotate(-2deg)}@keyframes adv-signpost-sway{0%,to{rotate:-1.5deg}50%{rotate:1.5deg}}.adv-signpost__plate{border-radius:var(--radius-pill);background:var(--paper);border:3px solid var(--ink);color:var(--ink);white-space:nowrap;padding:3px 12px;font-size:.8rem;font-weight:800}.adv-signpost__bubble{border-radius:var(--radius-pill);background:var(--red);border:3px solid var(--paper);color:#fff;place-items:center;min-width:30px;height:30px;padding:0 7px;font-size:.95rem;font-weight:800;animation:1.4s ease-in-out infinite adv-bubble-pop;display:grid;position:absolute;top:-6px;right:-6px}@keyframes adv-bubble-pop{0%,to{transform:scale(1)}50%{transform:scale(1.16)}}@media (width<=640px){.adv-signpost{top:30%;left:4%;scale:.78}}@media (prefers-reduced-motion:reduce){.adv-signpost,.adv-signpost__bubble,.adv-mission--ready,.adv-mission__btn--collect,.adv-bosscard--open,.adv-compass__needle,.adv-compass__needle--lost{animation:none}}.walker{z-index:3;pointer-events:none;place-items:center;width:76px;height:76px;display:grid;position:absolute;translate:-50% -62%}.walker__wake{opacity:.45;background:radial-gradient(#ffffffbf,#fff0 70%);border-radius:50%;width:60px;height:16px;transition:opacity .25s;position:absolute;bottom:-6px;transform:scale(.85)}.walker[data-moving=true] .walker__wake{opacity:.9;animation:.75s ease-out infinite walkerWake}@keyframes walkerWake{0%{opacity:.85;transform:scale(.6)}to{opacity:0;transform:scale(1.5)}}.walker__body{transform-origin:50% 90%;filter:drop-shadow(0 6px 4px #092d4b73);place-items:center;animation:2.6s ease-in-out infinite walkerIdle;display:grid}.walker[data-facing=left] .walker__body{scale:-1 1}.walker[data-moving=true] .walker__body{animation:.42s ease-in-out infinite walkerWaddle}@keyframes walkerIdle{0%,to{translate:0}50%{translate:0 -4px}}@keyframes walkerWaddle{0%{translate:0;rotate:-5deg}25%{translate:0 -7px;rotate:0deg}50%{translate:0;rotate:5deg}75%{translate:0 -7px;rotate:0deg}to{translate:0;rotate:-5deg}}.walker__tip{white-space:nowrap;color:var(--ink);background:var(--paper);border:4px solid var(--ink);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:900;animation:.4s cubic-bezier(.2,1.7,.4,1) both popin,2.4s ease-in-out .4s infinite walkerTipFloat;position:absolute;bottom:100%;left:50%;translate:-50% -6px;box-shadow:0 5px #2b203859}@keyframes walkerTipFloat{0%,to{translate:-50% -6px}50%{translate:-50% -13px}}.island--near{z-index:4}.island--near .island-art{filter:drop-shadow(0 14px 12px #092d4b73) drop-shadow(0 0 18px var(--island-accent,#fff));transition:scale .22s cubic-bezier(.2,1.6,.4,1);scale:1.09}.island--near .island__halo{opacity:.95;animation-duration:1.4s}.island--near .island__plate{border-color:var(--island-deep,var(--ink));box-shadow:0 6px 0 #2b203859, 0 0 0 4px var(--island-accent,#fff)}.island__cue{white-space:nowrap;color:#fff;background:linear-gradient(180deg, var(--pink), var(--purple));border:4px solid var(--ink);pointer-events:none;border-radius:999px;padding:7px 16px;font-size:.95rem;font-weight:900;animation:.35s cubic-bezier(.2,1.7,.4,1) both popin,1.5s ease-in-out .35s infinite walkerCueFloat;position:absolute;bottom:100%;left:50%;translate:-50% -4px;box-shadow:0 6px #2b203859}@keyframes walkerCueFloat{0%,to{translate:-50% -4px}50%{translate:-50% -14px}}@media (prefers-reduced-motion:reduce){.walker__body,.walker[data-moving=true] .walker__body,.walker[data-moving=true] .walker__wake,.walker__tip,.island__cue{animation:none}}@media (width<=640px){.walker{width:60px;height:60px}}.my-stuff{align-content:start;justify-items:center;gap:18px;padding-bottom:64px;display:grid}.my-stuff__top{z-index:2;justify-content:space-between;align-items:center;gap:12px;width:min(920px,96vw);display:flex;position:relative}.my-stuff__wallet{color:#8a5a00;border:5px solid var(--ink);border-radius:var(--radius-pill);box-shadow:var(--drop-md);background:linear-gradient(#fff6d8,#ffe9a8);align-items:center;gap:10px;padding:8px 22px 8px 14px;font-size:1.5rem;font-weight:900;display:inline-flex}.my-stuff__hero{z-index:1;justify-items:center;gap:4px;display:grid;position:relative}.my-stuff__glow{pointer-events:none;background:radial-gradient(circle,#ffffffd9,#fff0 68%);border-radius:50%;width:220px;height:220px;position:absolute;top:-14px}.my-stuff__hero .qi-avatar{filter:drop-shadow(0 10px 6px #092d4b59)}.my-stuff__hero .title-big,.my-stuff__save{text-shadow:0 2px #fffdf7,0 -2px #fffdf7,2px 0 #fffdf7,-2px 0 #fffdf7,0 4px 12px #fffc}.my-stuff__save{color:#237a48;min-height:1.4em;font-weight:900}.my-stuff__tabs{z-index:1;flex-wrap:wrap;justify-content:center;gap:10px;width:min(920px,96vw);display:flex;position:relative}.my-tab{min-width:116px;color:var(--ink);background:var(--paper);border:5px solid var(--ink);border-radius:var(--radius-sm);box-shadow:var(--drop-md);transition:transform .16s var(--spring), box-shadow .16s var(--spring), background .16s ease;justify-items:center;gap:2px;padding:10px 16px;font-size:.95rem;font-weight:900;display:grid}.my-tab:hover{transform:translateY(-2px)}.my-tab--on{background:linear-gradient(180deg, var(--btn-top,#ffe071), var(--btn-bg,#ffc12e));box-shadow:var(--drop-lg), 0 0 0 4px #fff9;transform:translateY(-3px)}.my-tab__icon{font-size:1.7rem;line-height:1}.my-stuff__panel{z-index:1;gap:20px;position:relative}.shop{gap:18px;width:100%;display:grid}.shop__tabs{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.shop__grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;width:100%;display:grid}.shop--big .shop__grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}.shop-card{background:var(--paper);border:5px solid var(--ink);border-radius:var(--radius-sm);box-shadow:var(--drop-md);transition:transform .16s var(--spring), box-shadow .16s var(--spring);align-content:start;justify-items:center;gap:6px;padding:12px 10px 14px;display:grid}.shop-card:hover{box-shadow:var(--drop-lg), var(--shadow-lift);transform:translateY(-4px)}.shop-card:active{box-shadow:var(--drop-sm);transform:translateY(2px)}.shop-card__art{border-radius:var(--radius-xs);background:linear-gradient(#eaf7ff,#fff7e2);place-items:center;width:100%;min-height:104px;display:grid;overflow:hidden}.shop--big .shop-card__art{min-height:124px}.shop-card__name{text-align:center;font-size:.95rem;font-weight:900;line-height:1.15}.shop--big .shop-card__name{font-size:1.1rem}.shop-card__price{color:#8a5a00;border:3px solid var(--ink);border-radius:var(--radius-pill);background:linear-gradient(#fff6d8,#ffe9a8);align-items:center;gap:6px;padding:3px 12px 3px 8px;font-weight:900;display:inline-flex}.shop-card__price--soon{color:var(--ink-soft);background:#f2eee6}.shop-card__tag{color:var(--ink-soft);font-size:.85rem;font-weight:900}.shop-card__tag--owned,.shop-card__tag--on{color:#2f8f5b}.shop-card--owned{background:linear-gradient(#f2fff4,#fffdf7)}.shop-card--on{box-shadow:var(--drop-md), 0 0 0 4px #5cd65c;background:linear-gradient(#e6ffe9,#fffdf7)}.kart-preview{filter:drop-shadow(0 6px 4px #092d4b4d);max-width:100%;height:auto}.trail-stage{justify-content:center;align-items:center;gap:4px;width:100%;display:flex;overflow:hidden}.trail-stage .kart-preview{flex:none}.trail-preview{flex:none;align-items:center;gap:3px;display:inline-flex}.trail-preview__bit{border:2px solid var(--ink);animation:1.1s ease-in-out infinite trailBit;display:inline-block}@keyframes trailBit{0%,to{opacity:.55;transform:translateY(0)scale(.9)}50%{opacity:1;transform:translateY(-6px)scale(1.1)}}.qi-pet--bob{animation:1.6s ease-in-out infinite petBob}@keyframes petBob{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-7px)rotate(3deg)}}.try-on{z-index:40;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.try-on__scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1b3e6673;border:0;padding:0;position:absolute;inset:0}.try-on__card{text-align:center;background:var(--paper);border:6px solid var(--ink);border-radius:var(--radius);width:min(460px,94vw);max-height:92svh;box-shadow:var(--shadow-card);justify-items:center;gap:14px;padding:26px 22px;display:grid;position:relative;overflow:auto}.try-on__stage{border-radius:var(--radius-sm);border:4px solid var(--ink);background:linear-gradient(#eaf7ff,#fff7e2);place-items:center;width:100%;min-height:190px;display:grid}.try-on__cost{color:#8a5a00;align-items:center;gap:8px;font-size:1.5rem;font-weight:900;display:inline-flex}.try-on__balance{color:var(--ink-soft);font-size:.95rem;font-weight:800}.try-on__yay{color:#2f8f5b;font-size:1.3rem;font-weight:900}.try-on__soon{color:#7a5a12;border:4px dashed var(--ink);border-radius:var(--radius-sm);background:#fff2c9;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:12px 18px;font-weight:900;display:inline-flex}.hud__link{background:var(--paper);border:5px solid var(--ink);text-align:left;transition:transform .16s var(--spring), box-shadow .16s var(--spring);border-radius:999px;align-items:center;gap:12px;padding:8px 20px 8px 10px;display:flex;box-shadow:0 6px #2b203859}.hud__link:hover{box-shadow:0 9px 0 #2b203859, var(--shadow-lift);transform:translateY(-3px)}.hud__link:active{transform:translateY(3px);box-shadow:0 2px #2b203859}.hud__cta{color:#fff;background:linear-gradient(180deg, var(--pink), var(--purple));border:3px solid var(--ink);border-radius:999px;justify-self:start;align-items:center;gap:4px;margin-top:2px;padding:1px 10px;font-size:.78rem;font-weight:900;animation:2.4s ease-in-out infinite hudCtaPulse;display:inline-flex}@keyframes hudCtaPulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.map-pet{z-index:3;pointer-events:none;filter:drop-shadow(0 5px 3px #092d4b66);place-items:center;width:46px;height:46px;display:grid;position:absolute;translate:-50% -60%}.map-pet__body{place-items:center;animation:1.6s ease-in-out infinite petBob;display:grid}.map-pet[data-facing=left] .map-pet__body{scale:-1 1}@media (width<=640px){.map-pet{width:38px;height:38px}.my-tab{min-width:92px}.my-tab__label{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.map-pet__body,.qi-pet--bob,.trail-preview__bit,.hud__cta{animation:none}}.level-path--world1{gap:12px;max-width:780px}.level-node--garage{background:linear-gradient(#eef4ff,#d7e6ff);width:118px;padding:12px 8px 14px}.level-node--garage .level-node__badge{background:linear-gradient(#9fc3ff,#5a8ede);width:44px;height:44px}.level-node--locked{filter:grayscale(.75);opacity:.55;cursor:not-allowed}.level-node--locked:hover{transform:none}.level-node--garage.level-node--done{background:linear-gradient(#e6fff0,#c6f2d8)}.level-node--garage.level-node--done .level-node__badge{background:linear-gradient(#7ce8ad,#3ddc84)}.level-node--locked .level-node__go{color:#a8391f}.level-node__keys{letter-spacing:2px;color:#2f5aa8;font-size:.95rem;font-weight:900}.kb{--kb-key:34px;--kb-gap:4px;--kb-cols:10.32;--kb-rows:4;width:calc(var(--kb-cols) * var(--kb-key) + (var(--kb-cols) - 1) * var(--kb-gap));height:calc(var(--kb-rows) * var(--kb-key) + (var(--kb-rows) - 1) * var(--kb-gap));flex:none;max-width:100%;margin:10px auto 14px;position:relative}.kb[data-world="2"]{--kb-key:26px;--kb-gap:3px}.kb__key--wide{letter-spacing:0;white-space:nowrap;font-size:.5rem;overflow:hidden}.kb__key{height:var(--kb-key);background:color-mix(in srgb, var(--kb-color) 32%, #fff);color:var(--ink);border:2px solid #2b203873;border-radius:8px;place-items:center;font-size:.85rem;font-weight:900;transition:transform .12s,background .12s;display:grid;position:absolute}.kb__key--bump:after{content:"";background:#2b203880;border-radius:3px;width:12px;height:3px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.kb__key--space{height:20px}.kb__key--new{background:color-mix(in srgb, var(--kb-color) 62%, #fff);animation:1.4s ease-in-out infinite kb-pulse}.kb__key--next{background:var(--kb-color);border-color:var(--ink);z-index:2;transform:scale(1.18);box-shadow:0 0 0 3px #fff,0 4px #2b20384d}@keyframes kb-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.kb-legend{color:var(--ink-soft);flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:0 0 14px;padding:0;font-size:.8rem;font-weight:700;list-style:none;display:flex}.kb-legend li{align-items:center;gap:6px;display:flex}.kb-legend__dot{border:2px solid #2b203866;border-radius:50%;width:12px;height:12px}.hands{width:min(420px,100%);height:auto;margin:4px auto 2px;display:block;overflow:visible}.hands__arrow{animation:1.1s linear infinite hands-crawl}@keyframes hands-crawl{to{stroke-dashoffset:-14px}}.hands__finger--reach{transform-origin:50% 100%;animation:1.8s ease-in-out infinite hands-reach}@keyframes hands-reach{0%,to{transform:translateY(4px)}50%{transform:translateY(-3px)}}.hands__key--target{transform-box:fill-box;transform-origin:50%;animation:1.4s ease-in-out infinite kb-pulse}.posture{width:min(320px,100%);height:auto;margin:2px auto;display:block}@media (prefers-reduced-motion:reduce){.hands__arrow,.hands__finger--reach,.hands__key--target,.kb__key--new,.garage__bigkey{animation:none}}.garage{color:var(--ink);font-family:var(--sans,"Trebuchet MS", Verdana, Geneva, sans-serif);background:linear-gradient(#2b1b4d 0%,#3f2a6d 55%,#5a4290 100%);position:absolute;inset:0;overflow-y:auto}.garage__inner{justify-items:center;gap:22px;width:min(720px,100%);margin:0 auto;padding:20px 20px 56px;display:grid}.garage__head{text-align:center;color:#fff;justify-items:center;gap:8px;width:100%;display:grid;position:relative}.garage__head .garage__title{color:#fff;text-shadow:0 3px #00000059}.garage__leave{color:#fff;font:inherit;cursor:pointer;background:#e8443f;border:3px solid #fff;border-radius:999px;justify-self:start;margin-bottom:10px;padding:8px 16px;font-weight:900;box-shadow:0 4px #00000040}.garage__eyebrow{letter-spacing:1px;color:#ffd54a;background:#00000047;border-radius:999px;margin:0;padding:5px 16px;font-size:.95rem;font-weight:900;line-height:1.4}.garage__title{margin:0;font-size:clamp(1.45rem,3.6vw,2.1rem);line-height:1.25}.garage__panel{border-radius:var(--radius,28px);text-align:center;background:linear-gradient(#fffdf5,#ffeec9);border:5px solid #ffd54a;justify-items:center;gap:14px;width:100%;padding:26px 22px 30px;display:grid;box-shadow:0 12px #00000040}.garage__blurb{max-width:46ch;margin:0;font-size:1.05rem;line-height:1.4}.garage__newkeys{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:0;font-weight:900;display:flex}.garage__chip{border:3px solid var(--ink);width:36px;height:36px;color:var(--ink);border-radius:10px;place-items:center;font-weight:900;display:grid}.garage__subtitle{margin:0;font-size:clamp(1.2rem,3.4vw,1.6rem);line-height:1.15}.garage__bumps{border:3px solid var(--ink);background:#fff3c9;border-radius:999px;max-width:46ch;margin:0;padding:8px 16px;font-size:.98rem;font-weight:900;line-height:1.3}.garage__posture{border-radius:var(--radius-sm,18px);background:#fffdf7;border:3px dashed #2b203859;justify-items:center;width:100%;padding:10px;display:grid}.garage__step{letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:.9rem;font-weight:900}.garage__bigkey{border:6px solid var(--ink);width:108px;height:108px;color:var(--ink);border-radius:22px;place-items:center;font-size:3.6rem;font-weight:900;animation:.32s ease-out garage-pop;display:grid;box-shadow:0 8px #2b20384d}@keyframes garage-pop{0%{transform:scale(.82)rotate(-6deg)}60%{transform:scale(1.08)rotate(3deg)}to{transform:scale(1)rotate(0)}}.garage__hint{max-width:42ch;margin:0;font-size:1.05rem;font-weight:700;line-height:1.35}.garage__reps{gap:10px;display:flex}.garage__rep{border:3px solid var(--ink);background:#fff;border-radius:50%;width:20px;height:20px}.garage__rep--on{background:#3ddc84;animation:.3s ease-out garage-pop}.garage__nofail{color:var(--ink-soft);margin:0;font-size:.9rem}.garage__ask{min-height:2.4rem;color:var(--ink);margin:0;font-size:clamp(1.5rem,4vw,2rem);font-weight:900;line-height:1.2}.garage__enter{letter-spacing:.5px;color:var(--ink-soft);opacity:.85;margin:2px 0 0;font-size:.85rem;font-weight:900}.garage__word{letter-spacing:1px;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px;margin:4px 0;font-size:2.6rem;font-weight:900;display:flex}.garage__word-ask{letter-spacing:0;color:var(--ink-soft);margin-right:10px;font-size:1.05rem;font-weight:900}.garage__char{color:#3a3f52;opacity:.55}.garage__char--done{color:#1f9d4d;opacity:1}.garage__char--next{opacity:1;text-underline-offset:6px;text-decoration:underline}.level-path__world{letter-spacing:.5px;text-align:center;width:100%;color:var(--ink,#2b2038);opacity:.85;flex:1 0 100%;margin:18px 0 2px;font-size:1.15rem;font-weight:900}.level-path__world:first-child{margin-top:0}.garage__shift{flex-wrap:wrap;justify-content:center;gap:14px;margin:6px 0 10px;display:flex}.garage__shift-card{background:#ffffff8c;border:3px solid #2b203824;border-radius:20px;flex:320px;max-width:460px;margin:0;padding:10px 10px 4px}.garage__shift-cap{justify-content:center;align-items:center;gap:12px;margin-bottom:4px;display:flex}.garage__shift-char{color:#fff;background:#2b2038;border-radius:14px;place-items:center;min-width:52px;height:52px;padding:0 10px;font-size:1.9rem;font-weight:900;display:grid}.garage__shift-rule{text-align:left;font-size:1rem;font-weight:900;line-height:1.15}.garage__shift-rule small{opacity:.7;font-size:.78rem;font-weight:700}.garage__shift-rulebox{background:#fff6d0;border:3px dashed #2b203840;border-radius:18px;max-width:640px;margin:0 auto 14px;padding:10px 16px;font-size:1rem;font-weight:700;line-height:1.35}.garage__bigkey{position:relative}.garage__bigkey-shift{opacity:.75;font-size:.34em;line-height:1;position:absolute;top:.1em;left:.18em}.hands__badge{transform-box:fill-box;transform-origin:50%;animation:1.6s ease-in-out infinite kb-pulse}@media (prefers-reduced-motion:reduce){.hands__badge{animation:none}}.garage__trophy{font-size:3.4rem}.garage__accuracy{margin:0;font-size:1.1rem;font-weight:900}@media (width<=520px){.kb{--kb-key:26px;--kb-gap:3px}.garage__word{font-size:2rem}}.level-node--lesson{background:linear-gradient(#f6efff,#e2d3ff);width:128px;padding:12px 8px 14px}.level-node--lesson .level-node__badge{background:linear-gradient(#c9a6ff,#8a5cf0);width:44px;height:44px}.level-node--lesson.level-node--done{background:linear-gradient(#e6fff0,#c6f2d8)}.level-node--lesson.level-node--done .level-node__badge{background:linear-gradient(#7ce8ad,#3ddc84)}.level-node__words{color:#5b2a9b;font-size:.9rem;font-weight:900;line-height:1.3}.spellbook,.potion{color:#f7f0ff;background:radial-gradient(circle at 50% 8%,#ffd67a38,#0000 55%),linear-gradient(#2a1550 0%,#1b1030 60%,#150c28 100%);position:absolute;inset:0;overflow-y:auto}.spellbook__inner,.potion__inner{text-align:center;justify-items:center;gap:14px;width:min(720px,100%);margin:0 auto;padding:18px 18px 48px;display:grid}.spellbook__head{justify-items:center;gap:4px;width:100%;display:grid}.spellbook__leave{color:#f7f0ff;cursor:pointer;background:#ffffff1f;border:3px solid #ffffff59;border-radius:999px;justify-self:start;padding:8px 16px;font-family:inherit;font-size:.95rem;font-weight:900}.spellbook__leave:hover{background:#fff3}.spellbook__eyebrow{letter-spacing:1px;color:#ffd6a6;margin:6px 0 0;font-size:.95rem;font-weight:900}.spellbook__title{margin:0;font-size:clamp(1.6rem,5vw,2.3rem);line-height:1.1}.spellbook__panel{background:#ffffff12;border:4px solid #ffffff2e;border-radius:28px;justify-items:center;gap:14px;width:100%;padding:22px 18px 26px;display:grid;box-shadow:inset 0 0 60px #ffc87814}.spellbook__panel--done{border-color:#ffd54a;box-shadow:inset 0 0 70px #ffd54a29}.spellbook__crest{font-size:3.4rem;line-height:1;animation:3.6s ease-in-out infinite fr-float}.spellbook__step{letter-spacing:1px;text-transform:uppercase;color:#c9b6ee;margin:0;font-size:.9rem;font-weight:900}.spellbook__subtitle{margin:0;font-size:clamp(1.2rem,4vw,1.7rem);line-height:1.2}.spellbook__blurb{color:#e6dcff;max-width:34rem;margin:0;font-size:1.05rem;line-height:1.45}.spellbook--easy .spellbook__blurb,.potion--easy .spellbook__blurb{font-size:1.2rem}.spellbook__nofail{color:#bda9e6;margin:0;font-size:.95rem}.spellbook__enter{letter-spacing:1px;color:#a08fcc;margin:-4px 0 0;font-size:.85rem;font-weight:900}.spellbook__card{color:#2b1b4d;cursor:pointer;background:linear-gradient(#fffdf5,#ffeec9);border:6px solid #ffd54a;border-radius:32px;justify-items:center;gap:6px;padding:22px 34px;font-family:inherit;transition:transform .12s;display:grid;box-shadow:0 10px #0000004d}.spellbook__card:hover{transform:translateY(-4px)scale(1.03)}.spellbook__card--still{cursor:default}.spellbook__card--still:hover{transform:none}.spellbook__emoji{font-size:clamp(4rem,18vw,6.5rem);line-height:1}.spellbook__english{color:#5b2a9b;font-size:1.15rem;font-weight:900}.spellbook__fallback{gap:2px;margin:0;font-size:1.6rem;display:grid}.spellbook__fallback strong{color:#ffd54a;font-size:1.8rem}.spellbook__say{letter-spacing:1px;color:#a9f2e0;font-size:1rem;font-weight:900}.spellbook__scroll{background:linear-gradient(#fff8e6,#f4e2b8);border:5px solid #b98a3a;border-radius:18px;gap:4px;padding:16px 30px;animation:.24s fr-pop;display:grid;box-shadow:0 8px #00000047}.spellbook__french{color:#4a2b0d;font-size:clamp(1.9rem,7vw,3rem);font-weight:900;line-height:1.1}.spellbook__scroll .spellbook__say{color:#7a5a2a}.spellbook__choices{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.spellbook__choice,.potion__choice{cursor:pointer;background:linear-gradient(#fffdf5,#ffe9cf);border:5px solid #2b1b4d;border-radius:26px;place-items:center;width:116px;height:116px;font-size:3.4rem;line-height:1;transition:transform .12s,opacity .25s;display:grid;box-shadow:0 8px #00000052}.spellbook--easy .spellbook__choice,.potion--easy .potion__choice{width:132px;height:132px;font-size:4rem}.spellbook__choice:hover,.potion__choice:hover:not(:disabled){transform:translateY(-5px)scale(1.05)}.spellbook__words{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;font-size:1.8rem;display:flex}.spellbook__recap{flex-wrap:wrap;justify-content:center;gap:10px;margin:0;display:flex}.spellbook__recap-item{background:#ffffff1a;border-radius:14px;justify-items:center;gap:2px;padding:8px 12px;font-size:.95rem;font-weight:900;display:grid}.spellbook__recap-emoji{font-size:1.7rem}.spellbook__stars{letter-spacing:6px;color:#ffb703;text-shadow:0 3px #0000004d;margin:0;font-size:3.4rem}.spellbook__progress{justify-content:center;gap:7px;display:flex}.spellbook__pip{background:#ffffff38;border-radius:50%;width:12px;height:12px}.spellbook__pip--on{background:#ffd54a}.spellbook__page{color:#a08fcc;margin:0;font-size:.85rem;font-weight:900}.fr-voicenote{color:#ffe7c2;background:#ffbe5a24;border:3px solid #ffbe5a66;border-radius:16px;max-width:34rem;margin:0;padding:10px 14px;font-size:.9rem;line-height:1.4}.fr-say{font-size:1rem}.potion__cauldron{place-items:center;width:100%;height:132px;display:grid;position:relative}.potion__pot{filter:drop-shadow(0 0 22px #8cffd259);font-size:5.4rem;line-height:1}.potion__drop{font-size:2.6rem;animation:.85s cubic-bezier(.5,0,.75,1) forwards fr-drop;position:absolute;top:0}.potion__bubbles{gap:12px;display:flex;position:absolute;bottom:18px}.potion__bubbles i{opacity:0;background:#aaffe0bf;border-radius:50%;width:12px;height:12px;animation:.9s ease-out forwards fr-bubble}.potion__bubbles i:nth-child(2){animation-delay:.12s}.potion__bubbles i:nth-child(3){animation-delay:.24s}.potion__bubbles i:nth-child(4){animation-delay:.36s}.potion__bubbles i:nth-child(5){animation-delay:.48s}.potion__ask{margin:0;font-size:clamp(1.15rem,4vw,1.6rem);font-weight:900}.potion__word{gap:2px;margin:0;display:grid}.potion__word strong{color:#ffd54a;font-size:clamp(1.8rem,6vw,2.6rem)}.potion__choices{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.potion__choice--dim{opacity:.32;filter:grayscale(.7)}.potion__choice--gone{opacity:0;transform:translateY(-30px)scale(.6)}.potion__choice--wobble{animation:.42s fr-wobble}.potion__shelf{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.potion__vial{background:#ffffff1a;border:2px solid #fff3;border-radius:10px;place-items:center;width:34px;height:34px;font-size:1.2rem;display:grid}.potion__vial--on{background:#ffd54a38;border-color:#ffd54a}.potion--done .potion__inner{align-content:center;min-height:100%}@keyframes fr-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes fr-pop{0%{transform:scale(.9)}to{transform:scale(1)}}@keyframes fr-drop{0%{opacity:1;transform:translateY(-40px)scale(1.1)rotate(0)}70%{opacity:1;transform:translateY(58px)scale(.72)rotate(180deg)}to{opacity:0;transform:translateY(70px)scale(.2)rotate(240deg)}}@keyframes fr-bubble{0%{opacity:0;transform:translateY(0)scale(.5)}35%{opacity:.95}to{opacity:0;transform:translateY(-58px)scale(1.15)}}@keyframes fr-wobble{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-8px)rotate(-5deg)}75%{transform:translate(8px)rotate(5deg)}}.fr-face{place-items:center;font-size:3.2rem;line-height:1;display:grid}.fr-face--big{font-size:clamp(4rem,16vw,6rem)}.fr-face--swatch{background:var(--fr-swatch,#888);border:4px solid #2b1b4dbf;border-radius:50%;width:3rem;height:3rem;box-shadow:inset 0 -6px 12px #00000038}.fr-face--big.fr-face--swatch{border-width:6px;width:clamp(4.5rem,18vw,7rem);height:clamp(4.5rem,18vw,7rem)}.fr-face--numeral{font-variant-numeric:tabular-nums;color:#2b1b4d;font-weight:900}.fr-face--big.fr-face--numeral{color:#ffd54a;text-shadow:0 4px #0000004d}.spellbook__card .fr-face--big.fr-face--numeral{color:#5b2a9b;text-shadow:none}.fr-instruction{color:#ffe7c2;max-width:32rem;margin:0;font-size:clamp(1.1rem,3.6vw,1.45rem);font-weight:900;line-height:1.25}.fr-scene{background:#ffffff1a;border:4px solid #ffffff3d;border-radius:24px;justify-items:center;gap:8px;max-width:32rem;padding:16px 22px;display:grid}.fr-scene__emoji{font-size:3rem;line-height:1}.fr-scene__prompt{color:#fff;margin:0;font-size:clamp(1.05rem,3.4vw,1.35rem);line-height:1.35}.fr-wordchoices,.fr-sitchoices{flex-wrap:wrap;justify-content:center;gap:14px;width:100%;display:flex}.fr-wordcard{transition:transform .12s,opacity .25s;display:flex;position:relative}.fr-wordcard__main{color:#2b1b4d;cursor:pointer;background:linear-gradient(#fffdf5,#ffe9cf);border:5px solid #2b1b4d;border-radius:22px;justify-items:center;gap:2px;min-width:150px;padding:14px 44px 14px 18px;font-family:inherit;display:grid;box-shadow:0 8px #00000052}.fr-wordcard__french{font-size:clamp(1.25rem,4.4vw,1.7rem);font-weight:900;line-height:1.1}.fr-wordcard__english{color:#2b1b4d94;font-size:.85rem;font-weight:700}.fr-wordcard__say{cursor:pointer;background:#ffd54a;border:3px solid #2b1b4d;border-radius:50%;place-items:center;width:34px;height:34px;font-size:1.05rem;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.fr-wordcard:hover{transform:translateY(-4px)scale(1.03)}.fr-wordcard--dim{opacity:.32;filter:grayscale(.7)}.fr-wordcard--gone{opacity:0;transform:translateY(-30px)scale(.6)}.fr-wordcard--wobble{animation:.42s fr-wobble}.fr-sitcard{color:#2b1b4d;cursor:pointer;background:linear-gradient(#fffdf5,#ffe9cf);border:5px solid #2b1b4d;border-radius:22px;justify-items:center;gap:6px;width:190px;padding:14px 12px;font-family:inherit;font-size:.95rem;line-height:1.3;transition:transform .12s,opacity .25s;display:grid;box-shadow:0 8px #00000052}.spellbook--easy .fr-sitcard,.potion--easy .fr-sitcard{width:210px;font-size:1.05rem}.fr-sitcard:hover:not(:disabled){transform:translateY(-4px)scale(1.03)}.fr-sitcard__scene{font-size:2.2rem;line-height:1}.fr-sitcard__prompt{font-weight:700}.spellbook__card--phrase{padding:18px 30px}.spellbook__card-lead{letter-spacing:1px;text-transform:uppercase;color:#8a6a3a;font-size:.9rem;font-weight:900}.spellbook__card--phrase .spellbook__french{color:#2b1b4d}.spellbook__card--phrase .spellbook__say{color:#7a5a2a}.spellbook__gloss{color:#2b1b4d8c;font-size:.9rem;font-weight:700}.spellbook__scroll .spellbook__gloss,.spellbook__card--phrase .spellbook__gloss{color:#4a2b0d99}.spellbook__panel>.spellbook__fallback .spellbook__gloss,.spellbook__recap-item .spellbook__gloss,.fr-mic__english{color:#ffffff9e}.potion__prompt{place-items:center;padding:6px 0;display:grid}.fr-mic{justify-items:center;gap:12px;width:100%;display:grid;position:relative}.fr-mic__big{font-size:4rem;line-height:1;animation:3.2s ease-in-out infinite fr-float}.fr-mic__face{place-items:center;display:grid}.fr-mic__word{background:#ffffff14;border:4px solid #fff3;border-radius:22px;justify-items:center;gap:2px;padding:12px 26px;transition:border-color .25s,background .25s;display:grid}.fr-mic__word .spellbook__french{color:#fff8e6}.fr-mic__word--good{background:#3ddc8438;border-color:#3ddc84;animation:.3s fr-pop}.fr-mic__english{font-size:.9rem;font-weight:700}.fr-mic__go{min-width:15rem}.fr-mic__listening{color:#a9f2e0;align-items:center;gap:10px;margin:0;font-size:1.15rem;font-weight:900;display:flex}.fr-mic__pulse{background:#ff6b6b;border-radius:50%;width:16px;height:16px;animation:1s ease-in-out infinite fr-pulse}.fr-mic__row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.fr-mic__again,.fr-mic__good,.fr-mic__passed{margin:0;font-size:1.3rem;font-weight:900}.fr-mic__good{color:#7ce8ad;font-size:1.8rem}.fr-mic__passed{color:#ffd54a}.fr-mic__again{color:#ffe7c2}.fr-mic__skip{color:#a08fcc;cursor:pointer;background:0 0;border:none;padding:6px 14px;font-family:inherit;font-size:.85rem;font-weight:900;text-decoration:underline}@keyframes fr-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.45)}}.gu-mic-note{max-width:42rem;color:var(--ink-soft);margin:10px auto 0;font-size:.9rem;line-height:1.45}.btn--toggled{background:linear-gradient(#7ce8ad,#3ddc84)}@media (prefers-reduced-motion:reduce){.fr-mic__big,.fr-mic__pulse,.spellbook__crest,.potion__drop,.potion__bubbles i,.potion__choice--wobble,.spellbook__scroll{animation:none}}.level-node--game{width:132px}.level-node--game .level-node__badge{background:linear-gradient(#ffd9a6,#ff9b4a);font-size:1.5rem}.level-node--game.level-node--done .level-node__badge{background:linear-gradient(#7ce8ad,#3ddc84)}.lg-stage{color:var(--lg-ink,#f7f0ff);background:var(--lg-deep,#1b1029);position:absolute;inset:0;overflow:hidden auto}.spellbook.lg-stage,.potion.lg-stage{background:var(--lg-deep,#1b1029)}.lg-stage__inner{z-index:2;text-align:center;justify-items:center;gap:12px;width:min(860px,100%);margin:0 auto;padding:16px 16px 44px;display:grid;position:relative}.lg-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.lg-scene{width:100%;height:100%}.lg-hud{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;width:100%;display:grid}.lg-hud .spellbook__leave{grid-column:1}.lg-hud .spellbook__eyebrow{grid-column:2;margin:0}.lg-hud__count{color:var(--lg-ink);background:#00000047;border-radius:999px;grid-column:3;justify-self:end;margin:0;padding:6px 14px;font-size:.95rem;font-weight:900}.lg-ask{background:var(--lg-panel);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:4px solid #fff3;border-radius:24px;justify-items:center;gap:10px;width:100%;padding:12px 14px;display:grid}.lg-ask__caught{animation:.3s lg-pop}.lg-ask__face{place-items:center;display:grid}.lg-parallax--far{animation:22s ease-in-out infinite lg-sway}.lg-parallax--mid{animation:15s ease-in-out infinite reverse lg-sway}@keyframes lg-sway{0%,to{transform:translate(-6px)}50%{transform:translate(6px)}}.lg-flame{transform-origin:bottom;animation:.55s ease-in-out infinite alternate lg-flicker}.lg-flame--1{animation-duration:.42s}.lg-flame--2{animation-duration:.67s}@keyframes lg-flicker{0%{opacity:.85;transform:scale(.9,.86)translate(-1px)}to{opacity:1;transform:scale(1.08,1.14)translate(1px)}}.lg-flicker-glow{animation:2.3s ease-in-out infinite lg-glowpulse}@keyframes lg-glowpulse{0%,to{opacity:.75}50%{opacity:1}}.lg-twinkle circle{animation:3.4s ease-in-out infinite lg-twinkle}.lg-twinkle circle:nth-child(2){animation-delay:1.1s}.lg-twinkle circle:nth-child(3){animation-delay:2.2s}@keyframes lg-twinkle{0%,to{opacity:.25}50%{opacity:1}}.lg-motes>*{animation:9s linear infinite lg-mote}@keyframes lg-mote{0%{opacity:0;transform:translateY(0)rotate(0)}15%{opacity:.8}85%{opacity:.6}to{opacity:0;transform:translateY(-140px)rotate(220deg)}}.lg-papel{animation:3.1s ease-in-out infinite lg-flutter}@keyframes lg-flutter{0%,to{transform:rotate(-4deg)skew(-3deg)}50%{transform:rotate(4deg)skew(3deg)}}.lg-bulb{animation:2.6s ease-in-out infinite lg-bulbpulse}@keyframes lg-bulbpulse{0%,to{opacity:.7}50%{opacity:1}}.lg-sunpulse{animation:6s ease-in-out infinite lg-glowpulse}.lg-sky{border:4px solid #ffffff2e;border-radius:26px;width:100%;height:clamp(280px,42vh,400px);position:relative;overflow:hidden;box-shadow:inset 0 0 70px #00000059;container-type:inline-size}.lg-flyer{top:calc(4% + var(--lg-lane) * 23%);cursor:pointer;animation:lg-drift var(--lg-lap) linear infinite;animation-delay:var(--lg-offset);background:0 0;border:0;padding:0;position:absolute;left:0}@keyframes lg-drift{0%{transform:translate(-160px)}to{transform:translate(100cqw)}}.lg-flyer--dim{opacity:.42}.lg-flyer--fade{opacity:.18;transition:opacity .3s}.lg-catch[data-settling=true] .lg-flyer{animation-play-state:paused}.lg-carrier{place-items:center;width:132px;height:132px;animation:2.4s ease-in-out infinite lg-bob;display:grid;position:relative}.lg-stage--easy .lg-carrier{width:150px;height:150px}@keyframes lg-bob{0%,to{transform:translateY(-7px)rotate(-2deg)}50%{transform:translateY(7px)rotate(2deg)}}.lg-carrier__art{place-items:center;display:grid;position:absolute;inset:0}.lg-carrier__art>svg{filter:drop-shadow(0 6px 10px #00000059);width:100%;height:100%}.lg-carrier__slot{z-index:2;place-items:center;max-width:118px;display:grid;position:relative;transform:translateY(20px)}.lg-carrier--caught{animation:.85s forwards lg-caught}@keyframes lg-caught{0%{transform:scale(1)}35%{filter:brightness(1.4);transform:scale(1.28)rotate(6deg)}to{opacity:0;transform:scale(.2)translateY(200px)}}.lg-carrier--nope{animation:.5s lg-nope}@keyframes lg-nope{0%,to{transform:rotate(0)}25%{transform:rotate(-11deg)translateY(6px)}75%{transform:rotate(11deg)translateY(6px)}}.lg-flyer__word{background:#fffdf5f2;border:3px solid #00000059;border-radius:14px;gap:1px;padding:5px 10px;display:grid;box-shadow:0 4px #00000040}.lg-flyer__target{color:#35204d;font-size:1.15rem;font-weight:900;line-height:1.05}.lg-stage--easy .lg-flyer__target{font-size:1.3rem}.lg-flyer__gloss{color:#7a6a92;font-size:.72rem;font-weight:700}.lg-combo{z-index:5;color:var(--lg-accent);text-shadow:0 3px 0 #00000073, 0 0 24px var(--lg-glow);pointer-events:none;margin:0;font-size:clamp(1.8rem,6vw,2.8rem);font-weight:900;animation:1s forwards lg-combo;position:absolute;top:40%;left:50%}.lg-combo--inline{animation:.5s lg-pop;position:static}@keyframes lg-combo{0%{opacity:0;transform:translate(-50%)scale(.5)}25%{opacity:1;transform:translate(-50%,-14px)scale(1.15)}to{opacity:0;transform:translate(-50%,-70px)scale(1)}}.lg-shelf{justify-items:center;gap:6px;width:100%;display:grid}.lg-shelf__label{letter-spacing:1px;text-transform:uppercase;color:var(--lg-accent);font-size:.85rem;font-weight:900}.lg-shelf__row{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.lg-shelf__slot{background:#00000038;border:2px dashed #ffffff40;border-radius:12px;place-items:center;width:40px;height:40px;font-size:1.4rem;display:grid}.lg-shelf__slot--on{border-style:solid;border-color:var(--lg-accent);background:#ffffff29;animation:.35s lg-pop}.lg-speakwell{width:100%}.lg-build{width:100%;padding-bottom:6px;position:relative}.lg-build__svg{width:100%;height:auto;display:block}.lg-build__cloth{transition:fill .5s}.lg-build__row{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:6px;width:88%;display:flex;position:absolute;bottom:22%;left:6%}.lg-build__piece{animation:4s ease-in-out infinite lg-float;animation-delay:var(--lg-piece-delay,0s)}.lg-build__piece--land{animation:.7s lg-land}@keyframes lg-land{0%{opacity:0;transform:translateY(-120px)scale(.4)rotate(-20deg)}60%{opacity:1;transform:translateY(8px)scale(1.15)}to{transform:none}}@keyframes lg-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.lg-piece{justify-items:center;gap:1px;display:grid}.lg-piece>svg{width:46px;height:auto}.lg-piece--guest>svg{width:54px}.lg-piece__prop{justify-items:center;gap:0;display:grid}.lg-piece__propface{filter:drop-shadow(0 3px 3px #0000004d);font-size:1.9rem;line-height:1;animation:2.4s ease-in-out infinite alternate lg-prop-bob}.lg-piece__stand{width:52px;height:auto;margin-top:-4px}@keyframes lg-prop-bob{0%{transform:translateY(0)}to{transform:translateY(-3px)}}.lg-piece__tag{color:#2b1b4d;background:#ffffffe6;border-radius:8px;padding:1px 6px;font-size:.68rem;font-weight:900}.lg-piece__cluster{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:1px;max-width:130px;display:flex}.lg-piece__unit>svg{width:15px;height:auto}.lg-piece__flame{transform-origin:bottom;animation:.6s ease-in-out infinite alternate lg-flicker}.lg-showpiece{width:100%}.lg-track{gap:6px;width:100%;display:grid}.lg-track__rail{background:#0000004d;border:3px solid #ffffff47;border-radius:999px;height:16px;position:relative}.lg-track__fill{background:linear-gradient(90deg, var(--lg-primary), var(--lg-accent));border-radius:999px;height:100%;transition:width .7s cubic-bezier(.34,1.4,.64,1)}.lg-track__stop{filter:grayscale(.7);font-size:1.1rem;transition:filter .4s;position:absolute;top:-12px;transform:translate(-50%)}.lg-track__stop--done{filter:none}.lg-track__walker{transition:left .7s cubic-bezier(.34,1.4,.64,1);position:absolute;top:-46px;transform:translate(-50%)}.lg-track__label{color:var(--lg-accent);margin:0;font-size:.85rem;font-weight:900}.lg-npc{background:var(--lg-panel);border:4px solid #fff3;border-radius:26px;grid-template-columns:auto 1fr;align-items:center;gap:12px;width:100%;padding:12px;display:grid}.lg-npc__art{width:92px;animation:3.4s ease-in-out infinite lg-float;display:block}.lg-npc__art>svg{width:100%;height:auto}.lg-bubble{color:#2b1b4d;background:#fffdf5;border:4px solid #0000004d;border-radius:22px;justify-items:center;gap:6px;padding:14px 16px;animation:.3s lg-pop;display:grid;position:relative}.lg-bubble:before{content:"";border-top:12px solid #0000;border-bottom:12px solid #0000;border-right:16px solid #0000004d;width:0;height:0;position:absolute;top:50%;left:-16px;transform:translateY(-50%)}.lg-bubble--good{border-color:var(--lg-good);background:#e8ffe9}.lg-bubble__who{letter-spacing:1px;text-transform:uppercase;color:#7a6a92;margin:0;font-size:.8rem;font-weight:900}.lg-bubble__scene{font-size:2.4rem;line-height:1}.lg-bubble__text{margin:0;font-size:1.1rem;font-weight:700;line-height:1.35}.lg-stage--easy .lg-bubble__text{font-size:1.25rem}.lg-bubble__word{color:#4a2b0d;gap:2px;margin:0;font-size:1.7rem;font-weight:900;display:grid}.lg-bubble__word .spellbook__say{color:#7a5a2a}.lg-bubble__face{place-items:center;display:grid}.lg-picker__cards{flex-wrap:wrap;justify-content:center;gap:16px;width:100%;display:flex}.lg-picker__card{color:#2b1b4d;border:6px solid var(--lg-primary);cursor:pointer;background:linear-gradient(#fffdf5,#ffeec9);border-radius:28px;justify-items:center;gap:6px;width:min(260px,80vw);padding:20px 16px;font-family:inherit;transition:transform .14s;display:grid;box-shadow:0 10px #0000004d}.lg-picker__card:hover{transform:translateY(-6px)scale(1.03)}.lg-picker__emoji{font-size:3.4rem;line-height:1;animation:3.2s ease-in-out infinite lg-float}.lg-picker__title{font-size:1.3rem;font-weight:900}.lg-picker__blurb{color:#5b4a72;font-size:.92rem;line-height:1.35}@keyframes lg-pop{0%{opacity:0;transform:scale(.7)}70%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}.level-node--boss{width:148px}.level-node--boss .level-node__badge{background:linear-gradient(#ffe9a6,#f0a92c);font-size:1.7rem;box-shadow:0 0 0 3px #ffe9a68c}.level-node--boss.level-node--done .level-node__badge{background:linear-gradient(#fff3c4,#ffc93d);animation:2.6s ease-in-out infinite alternate lg-boss-shine}@keyframes lg-boss-shine{0%{box-shadow:0 0 0 3px #ffe9a673}to{box-shadow:0 0 18px 5px #ffc93dbf}}.lg-boss__panel{background:linear-gradient(#201434f2,#140c22f5);border-width:3px;border-color:#ffcf7abf;max-width:760px;margin:0 auto;box-shadow:0 10px #00000040,0 0 30px #ffcf7a40}.lg-boss__panel .spellbook__title{color:var(--lg-ink,#f3ecff);text-shadow:0 2px 6px #0000008c}.lg-boss__crest{font-size:3.4rem;line-height:1;animation:3s ease-in-out infinite alternate lg-boss-float}.lg-boss__crest--big{font-size:4.6rem}@keyframes lg-boss-float{0%{transform:translateY(0)rotate(-2deg)}to{transform:translateY(-8px)rotate(2deg)}}.lg-boss__who{color:var(--lg-accent);margin:.1rem 0 .4rem;font-size:1.05rem;font-weight:800}.lg-boss__rules{text-align:left;background:#0000002e;border-radius:14px;gap:.35rem;max-width:30rem;margin:.6rem auto .9rem;padding:.7rem 1rem;font-size:.98rem;font-weight:700;list-style:none;display:grid}.lg-boss__rules strong{color:var(--lg-glow);font-size:1.15rem}.lg-boss__pips{flex-wrap:wrap;justify-content:center;gap:6px;margin:.2rem 0 .5rem;display:flex}.lg-boss__pip{background:#ffffff38;border:2px solid #ffffff59;border-radius:50%;width:16px;height:16px}.lg-boss__pip--done{background:var(--lg-glow);border-color:var(--lg-glow)}.lg-boss__pip--now{background:var(--lg-accent);border-color:#fff;transform:scale(1.25)}.lg-boss__reward{color:#7a3a18;background:linear-gradient(#fff3c4,#ffc93d);border-radius:14px;margin:.4rem 0;padding:.5rem 1rem;font-size:1.25rem;font-weight:900;display:inline-block}.lg-boss__coach{opacity:.92;margin:.3rem 0 .6rem;font-size:1.02rem;font-weight:700}.lg-boss__train{background:#ffffff24;border-radius:14px;max-width:28rem;margin:.5rem auto .8rem;padding:.7rem 1rem}.lg-boss__trainhead{letter-spacing:.03em;text-transform:uppercase;opacity:.85;margin:0 0 .35rem;font-size:.95rem;font-weight:900}.lg-boss__train ul{gap:.3rem;margin:0;padding:0;font-size:1.1rem;font-weight:800;list-style:none;display:grid}.potion__choice--right{box-shadow:0 0 0 4px var(--lg-glow)}.lg-boss .fr-say[disabled]{opacity:.55;cursor:default}[data-skin=fiesta] .lg-boss__who{color:#c43c6b}[data-skin=fiesta] .lg-boss__rules{color:#4a2c14;background:#7a3a181f}[data-skin=fiesta] .lg-boss__rules strong{color:#c43c6b}[data-skin=fiesta] .lg-boss__train{color:#4a2c14;background:#7a3a181f}[data-skin=fiesta] .lg-boss__coach{color:#4a2c14}[data-skin=fiesta] .spellbook__panel,[data-skin=fiesta] .lg-ask,[data-skin=fiesta] .lg-npc{color:#2a1607;background:#fff8ecf0;border-color:#7a3a1859;box-shadow:0 8px #7a3a1840}[data-skin=fiesta] .spellbook__blurb,[data-skin=fiesta] .lg-bubble__text{color:#4a2c14}[data-skin=fiesta] .spellbook__eyebrow,[data-skin=fiesta] .lg-shelf__label,[data-skin=fiesta] .lg-track__label{color:#fff3d0;text-shadow:0 2px 4px #5a280ab3}[data-skin=fiesta] .spellbook__step,[data-skin=fiesta] .spellbook__nofail,[data-skin=fiesta] .spellbook__enter,[data-skin=fiesta] .spellbook__page{color:#7a4a24}[data-skin=fiesta] .spellbook__title,[data-skin=fiesta] .spellbook__subtitle{color:#fff6e6;text-shadow:0 3px 6px #5a280abf}[data-skin=fiesta] .spellbook__panel .spellbook__title,[data-skin=fiesta] .spellbook__panel .spellbook__subtitle{color:#7a3a18;text-shadow:none}[data-skin=fiesta] .spellbook__say{color:#1c7a6f}[data-skin=fiesta] .spellbook__fallback strong,[data-skin=fiesta] .spellbook__english{color:#c43c6b}[data-skin=fiesta] .fr-voicenote{color:#5a2f10;background:#ffe8beeb;border-color:#c43c6b66}[data-skin=fiesta] .spellbook__leave{color:#fff6e6;background:#7a3a1880;border-color:#fff6e680}[data-skin=fiesta] .spellbook__recap-item{color:#3a1f0c;background:#fff8ece6}[data-skin=fiesta] .lg-hud__count{color:#fff6e6;background:#7a3a188c}[data-skin=fiesta] .lg-sky{border-color:#fff6e680;box-shadow:inset 0 0 60px #7a3a184d}[data-skin=fiesta] .spellbook__pip--on{background:#c43c6b}@media (prefers-reduced-motion:reduce){.lg-parallax--far,.lg-parallax--mid,.lg-flame,.lg-flicker-glow,.lg-twinkle circle,.lg-motes>*,.lg-papel,.lg-bulb,.lg-sunpulse,.lg-carrier,.lg-build__piece,.lg-npc__art,.lg-picker__emoji,.lg-piece__flame,.lg-piece__propface,.lg-boss__crest,.level-node--boss.level-node--done .level-node__badge{animation:none!important}.lg-flyer{animation-duration:calc(var(--lg-lap) * 2.4)!important}.lg-combo,.lg-shelf__slot--on,.lg-bubble,.lg-ask__caught{animation:none!important}}.screen--scroll{overflow:hidden auto}.screen--scroll .wizard{align-content:safe center;padding-bottom:2.5rem}.cloud-gate{text-align:left;max-width:30rem}.cloud-gate .title-big,.cloud-gate .eyebrow,.cloud-gate .lede{text-align:center}.cloud-gate__foot{opacity:.85;margin-top:1rem;font-size:.85rem}.cloud-tabs{background:#00000012;border-radius:999px;gap:.4rem;margin:1rem 0 1.2rem;padding:.3rem;display:flex}.cloud-tab{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;flex:1;padding:.65rem .5rem;font-weight:700;transition:background .16s,transform .16s}.cloud-tab:hover{transform:translateY(-1px)}.cloud-tab--on{background:#fff;box-shadow:0 2px 8px #0000001f}.cloud-field{margin-bottom:.9rem;display:block}.cloud-field__label{margin-bottom:.3rem;font-size:.95rem;font-weight:700;display:block}.cloud-field .text-input{box-sizing:border-box;width:100%}.cloud-field__hint{opacity:.75;margin-top:.25rem;font-size:.8rem;display:block}.link-btn{font:inherit;color:inherit;text-underline-offset:.2em;opacity:.8;cursor:pointer;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:700;text-decoration:underline}.link-btn:hover{opacity:1}.cloud-gate__forgot{margin:-.4rem 0 .4rem;display:block}.auth-notice{max-width:28rem}.operator-hint{color:inherit;background:#0000000f;border-radius:1rem;margin:.2rem 0 1rem;padding:.7rem .9rem;font-size:.9rem;font-weight:700;line-height:1.35;text-decoration:none;display:block}.operator-hint:hover{background:#0000001a}.consent{cursor:pointer;background:#0000000d;border-radius:1rem;align-items:flex-start;gap:.6rem;margin:1rem 0 .4rem;padding:.8rem;display:flex}.consent__box{width:1.35rem;height:1.35rem;accent-color:var(--accent,#4aabf7);cursor:pointer;flex:none;margin-top:.1rem}.consent__text{font-size:.92rem;line-height:1.4}.consent__text a{color:inherit;font-weight:700}.migrate-list{gap:.5rem;width:100%;max-width:26rem;margin:1.2rem auto;padding:0;list-style:none;display:grid}.migrate-row{background:#0000000d;border-radius:1rem;align-items:center;gap:.8rem;padding:.5rem .8rem;display:flex}.migrate-row__name{text-align:left;flex:1;font-weight:800}.migrate-row__status{white-space:nowrap;font-size:.9rem;font-weight:700}.suspended{max-width:28rem}.suspended__art{justify-content:center;margin-bottom:.5rem;display:flex}
