@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rammetto One;font-style:normal;font-display:swap;font-weight:400;src:url(./rammetto-one-latin-ext-400-normal-Bi_jp7a5.woff2)format("woff2"),url(./rammetto-one-latin-ext-400-normal-BLacBoYx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rammetto One;font-style:normal;font-display:swap;font-weight:400;src:url(./rammetto-one-latin-400-normal-CykdZk98.woff2)format("woff2"),url(./rammetto-one-latin-400-normal-CQ8elGQ7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--u:1px;--ink:#1f2433;--bone:#fff7df;--bone-deep:#e3b767;--amber:#ffd34d;--amber-deep:#e89a1c;--fern:#3fbf6b;--fern-deep:#1e7d4f;--lava:#ff6b57;--sky:#3fa9e0;--letters:"Fredoka Variable", "Fredoka", system-ui, sans-serif;--display:"Rammetto One", "Fredoka Variable", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--ink);height:100%;color:var(--ink);font-family:var(--letters);font-size:calc(var(--u) * 18);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}[hidden]{display:none!important}#scene{width:100%;height:100%;display:block;position:fixed;inset:0}#app,.screen{position:fixed;inset:0}#app{pointer-events:none}#app button,#map,#dialog,.keyboard{pointer-events:auto}h1,h2,p{margin:0}kbd{border:calc(var(--u) * 2.5) solid var(--ink);border-bottom-width:calc(var(--u) * 5);border-radius:calc(var(--u) * 8);background:var(--bone);min-width:1.5em;font:600 1em/1.35 var(--letters);text-align:center;margin:0 .08em;padding:0 .35em;display:inline-block}.btn,.chip{border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 16);background:var(--bone);box-shadow:0 calc(var(--u) * 5) 0 var(--ink);color:var(--ink);font:600 calc(var(--u) * 20) / 1.1 var(--letters)}.btn{padding:calc(var(--u) * 12) calc(var(--u) * 22);cursor:pointer;transition:transform 80ms,box-shadow 80ms}.btn:hover{transform:translateY(calc(var(--u) * -1.5));box-shadow:0 calc(var(--u) * 6.5) 0 var(--ink)}.btn:active{transform:translateY(calc(var(--u) * 4));box-shadow:0 calc(var(--u) * 1) 0 var(--ink)}.btn.primary{background:var(--amber)}.btn.icon{width:calc(var(--u) * 52);height:calc(var(--u) * 48);flex:none;place-items:center;padding:0;display:grid}.btn svg,.chip svg{width:calc(var(--u) * 24);height:calc(var(--u) * 24);fill:currentColor}:focus-visible{outline:calc(var(--u) * 4) solid var(--sky);outline-offset:calc(var(--u) * 3)}.chip{align-items:center;gap:calc(var(--u) * 8);height:calc(var(--u) * 48);padding:0 calc(var(--u) * 16);white-space:nowrap;display:flex}.actions{gap:calc(var(--u) * 12);flex-wrap:wrap;display:flex}.logo{left:var(--snack-x);bottom:calc(100% - var(--snack-y) + var(--tile) * .5 + var(--u) * 40);font:calc(var(--u) * 112) / .86 var(--display);letter-spacing:.01em;color:var(--bone);-webkit-text-stroke:calc(var(--u) * 14) var(--ink);paint-order:stroke fill;filter:drop-shadow(0 calc(var(--u) * 8) 0 var(--ink));display:grid;position:absolute}.logo span{width:max-content;display:block;transform:rotate(-3deg)}.logo span:last-child{color:var(--amber);margin-left:calc(var(--u) * 46)}.logo .logo-owner{margin:0 0 calc(var(--u) * 4) calc(var(--u) * -18);padding:calc(var(--u) * 7) calc(var(--u) * 16) calc(var(--u) * 9);border:calc(var(--u) * 4) solid var(--ink);border-radius:calc(var(--u) * 14);background:var(--lava);color:var(--bone);font-size:calc(var(--u) * 34);-webkit-text-stroke:0;z-index:1;line-height:1;transform:rotate(-9deg)}.title-panel{left:var(--snack-x);top:calc(var(--snack-y) + var(--tile) * .5 + var(--u) * 36);gap:calc(var(--u) * 20);display:grid;position:absolute}.title-tip{font:600 calc(var(--u) * 26) / 1.2 var(--letters);color:var(--ink);background:var(--bone);border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 16);padding:calc(var(--u) * 10) calc(var(--u) * 18);width:max-content}.hud{align-items:center;gap:calc(var(--u) * 12);padding:calc(var(--u) * 14) calc(var(--u) * 18);display:flex;position:absolute;top:0;left:0;right:0}.place{font-size:calc(var(--u) * 17);flex-direction:column;justify-content:center;align-items:flex-start;gap:0}.place span{font-weight:450;font-size:calc(var(--u) * 14);opacity:.75}.meter{height:calc(var(--u) * 40);border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 20);background:var(--bone);box-shadow:0 calc(var(--u) * 5) 0 var(--ink);flex:1;position:relative;overflow:hidden}#meter-fill{background:repeating-linear-gradient(-55deg, #7fdc9b 0 calc(var(--u) * 14), #9be8b1 calc(var(--u) * 14) calc(var(--u) * 28));border-right:calc(var(--u) * 3) solid var(--ink);width:0;height:100%;transition:width .3s cubic-bezier(.3,1.4,.5,1)}#meter-text{font:600 calc(var(--u) * 18) / 1 var(--letters);place-items:center;display:grid;position:absolute;inset:0}.roar-meter span:first-child{font-size:calc(var(--u) * 16)}#roars{gap:calc(var(--u) * 5);display:flex}#roars i{width:calc(var(--u) * 14);height:calc(var(--u) * 20);border:calc(var(--u) * 2.5) solid var(--ink);border-radius:calc(var(--u) * 3) calc(var(--u) * 3) 50% 50%;background:#fff;transition:background .15s,transform .2s cubic-bezier(.3,2,.5,1)}#roars i.on{background:var(--lava);transform:scale(1.15)}.streak{min-width:calc(var(--u) * 132);font-weight:450;font-size:calc(var(--u) * 16);justify-content:center}.streak b{font-size:calc(var(--u) * 24);font-weight:700}.streak.hot{background:var(--amber)}#caption{left:var(--snack-x);top:calc(var(--snack-y) + var(--tile) * .5 + var(--u) * 34);max-width:calc(100% - var(--snack-x) - var(--u) * 20);padding:calc(var(--u) * 8) calc(var(--u) * 16) calc(var(--u) * 10);border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 16);background:var(--bone);position:absolute}.caption-text{font:600 calc(var(--u) * 30) / 1.15 var(--letters);letter-spacing:.05em;white-space:pre-wrap}.caption-text s{opacity:.3;text-decoration:none}.caption-note{font-size:calc(var(--u) * 17);margin-top:calc(var(--u) * 2);font-weight:450}#toast{left:var(--snack-x);bottom:calc(100% - var(--snack-y) + var(--tile) * .5 + var(--u) * 24);padding:calc(var(--u) * 8) calc(var(--u) * 16);border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 16);background:var(--amber);font:600 calc(var(--u) * 20) / 1.3 var(--letters);opacity:0;position:absolute}#toast.show{animation:4.2s both toast}@keyframes toast{0%{opacity:0;transform:translateY(calc(var(--u) * 10))}6%,86%{opacity:1;transform:none}to{opacity:0}}#kb-dock{pointer-events:none;justify-content:center;display:flex;position:absolute;bottom:0;left:0;right:0}.keyboard{gap:calc(var(--u) * 7);padding:calc(var(--u) * 14) calc(var(--u) * 20) calc(var(--u) * 10);border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 24) calc(var(--u) * 24) 0 0;background:#2d3550;border-bottom:0;display:grid}.kb-row{gap:calc(var(--u) * 7);display:flex}.kb-row-1{padding-left:calc(var(--u) * 20)}.kb-row-2{padding-left:calc(var(--u) * 46)}.kb-row-3{justify-content:center}.key{width:calc(var(--u) * 47);height:calc(var(--u) * 42);border-radius:calc(var(--u) * 9);background:var(--k,var(--bone));box-shadow:0 calc(var(--u) * 4) 0 #161b2b;font:600 calc(var(--u) * 20) / 1 var(--letters);color:var(--ink);cursor:pointer;place-items:center;display:grid;position:relative}.f1{--k:#ffc2c2}.f2{--k:#ffd9ae}.f3{--k:#fff0a3}.f4{--k:#c9efb0}.f5{--k:#b0ead8}.f6{--k:#b8dbff}.f7{--k:#d3c8ff}.f8{--k:#f6c3ec}.thumb{--k:#e6e9f2;width:calc(var(--u) * 300);font-size:calc(var(--u) * 15);font-weight:450}.key.spare{opacity:.35}.key.bump:after{content:"";bottom:calc(var(--u) * 5);width:calc(var(--u) * 14);height:calc(var(--u) * 3);background:var(--ink);opacity:.55;border-radius:2px;position:absolute}.key.want{z-index:1;background:var(--amber);outline:calc(var(--u) * 3.5) solid #fff;animation:.9s ease-in-out infinite want}@keyframes want{0%,to{box-shadow:0 calc(var(--u) * 4) 0 #161b2b, 0 0 0 calc(var(--u) * 5) #ffd34d59;transform:scale(1.08)}50%{box-shadow:0 calc(var(--u) * 4) 0 #161b2b, 0 0 0 calc(var(--u) * 11) #ffd34d33;transform:scale(1.2)}}.key.hit{animation:.22s key-hit}.key.miss{animation:.4s key-miss}@keyframes key-hit{0%{transform:translateY(calc(var(--u) * 4));background:var(--fern);box-shadow:none}}@keyframes key-miss{0%,60%{background:var(--lava)}20%{transform:translateX(calc(var(--u) * -4))}40%{transform:translateX(calc(var(--u) * 4))}}.kb-hint{height:calc(var(--u) * 20);color:var(--bone);font-size:calc(var(--u) * 16);text-align:center;font-weight:450}#map{gap:calc(var(--u) * 12);padding:calc(var(--u) * 16) calc(var(--u) * 22) calc(var(--u) * 18);background:var(--ink);flex-direction:column;display:flex;overflow-y:auto}.map-bar{align-items:center;gap:calc(var(--u) * 14);flex-wrap:wrap;display:flex}.map-bar .btn,.map-bar .chip,.swatch,.level-disc{box-shadow:0 calc(var(--u) * 4) 0 #0c0f1a}.map-bar h1{font:calc(var(--u) * 34) / 1 var(--display);color:var(--bone);margin-right:auto}.star-count svg{fill:var(--amber-deep)}.star-count span{opacity:.7;font-weight:450}.colors{gap:calc(var(--u) * 7);display:flex}.swatch{width:calc(var(--u) * 36);height:calc(var(--u) * 36);border:calc(var(--u) * 3) solid var(--ink);background:linear-gradient(160deg, var(--c) 62%, var(--c2) 62%);outline:calc(var(--u) * 2) solid #fff7df40;font:700 calc(var(--u) * 13) / 1 var(--letters);color:var(--bone);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.swatch.picked{outline:calc(var(--u) * 4) solid var(--bone)}.swatch:disabled{cursor:default;background:#3a425c}.frenzy{padding:calc(var(--u) * 7) calc(var(--u) * 18);background:var(--lava);text-align:left;display:grid}.frenzy small{font-size:calc(var(--u) * 13);font-weight:450}.worlds{gap:calc(var(--u) * 10);grid-auto-rows:minmax(calc(var(--u) * 112), 1fr);flex:1;display:grid}.world{grid-template-columns:calc(var(--u) * 210) 1fr;border-radius:calc(var(--u) * 20);background:radial-gradient(70% 150% at 22% 150%, var(--land) 59.5%, transparent 60%), radial-gradient(60% 130% at 82% 150%, var(--land) 59.5%, transparent 60%), var(--sky);color:var(--on);align-items:center;display:grid;overflow:hidden}.world header{padding-left:calc(var(--u) * 24)}.world h2{font:calc(var(--u) * 25) / 1.1 var(--display)}.world header p{font-size:calc(var(--u) * 16);margin-top:calc(var(--u) * 4);font-weight:500}.levels{padding:0 calc(var(--u) * 10) 0 0;grid-template-columns:repeat(6,1fr);margin:0;list-style:none;display:grid}.level{justify-items:center;gap:calc(var(--u) * 3);width:100%;padding:calc(var(--u) * 6) 0;border-radius:calc(var(--u) * 14);color:inherit;font:600 calc(var(--u) * 15) / 1.1 var(--letters);cursor:pointer;background:0 0;border:0;display:grid}.level-disc{width:calc(var(--u) * 50);height:calc(var(--u) * 46);border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 15);background:var(--bone);color:var(--ink);font:700 calc(var(--u) * 22) / 1 var(--letters);place-items:center;transition:transform .1s;display:grid}.level:focus-visible{outline:none}.level:focus-visible .level-disc{outline:calc(var(--u) * 4) solid var(--sky);outline-offset:calc(var(--u) * 3)}.level:hover:not(:disabled) .level-disc{transform:translateY(calc(var(--u) * -3)) rotate(-4deg)}.level.done .level-disc{background:var(--fern)}.level.next .level-disc{background:var(--amber);animation:1.1s ease-in-out infinite next}@keyframes next{50%{transform:translateY(calc(var(--u) * -5))}}.level:disabled{cursor:default}.level.locked .level-disc{background:#fff7df73}.level.locked .level-name{opacity:.6}.level-disc svg{width:calc(var(--u) * 20);height:calc(var(--u) * 20);fill:var(--ink);opacity:.6}.level-stars{height:calc(var(--u) * 16);display:flex}.star svg{width:calc(var(--u) * 16);height:calc(var(--u) * 16);fill:#1f243347;stroke:var(--ink);stroke-width:1.6px;stroke-linejoin:round}.star.on svg{fill:var(--amber)}.level-keys{margin-top:calc(var(--u) * -6);margin-left:calc(var(--u) * 74);font-size:calc(var(--u) * 12);color:var(--ink);position:absolute;transform:rotate(8deg)}.level-keys kbd{border-width:calc(var(--u) * 2);border-bottom-width:calc(var(--u) * 3.5);text-transform:uppercase;background:#fff}#dialog{background:#14182873;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.panel{width:min(calc(var(--u) * 540), 94vw);padding:calc(var(--u) * 28) calc(var(--u) * 34) calc(var(--u) * 32);border:calc(var(--u) * 4) solid var(--ink);border-radius:calc(var(--u) * 30);background:var(--bone);box-shadow:0 calc(var(--u) * 10) 0 var(--ink);text-align:center;animation:.32s cubic-bezier(.3,1.5,.5,1) panel}@media (aspect-ratio>=4/3){#play:not([hidden])~#dialog{padding-right:max(calc(var(--u) * 40), calc(50vw - var(--u) * 560));justify-items:end}}@keyframes panel{0%{transform:scale(.8) translateY(calc(var(--u) * 30));opacity:0}}.panel h2{font:calc(var(--u) * 42) / 1.1 var(--display)}.big-stars{justify-content:center;gap:calc(var(--u) * 6);margin:calc(var(--u) * 14) 0 calc(var(--u) * 6);display:flex}.big-stars .star svg{width:calc(var(--u) * 84);height:calc(var(--u) * 84);stroke-width:1.3px}.big-stars .star:nth-child(2){margin-top:calc(var(--u) * -12)}.big-stars .star.on{animation:.45s cubic-bezier(.3,1.8,.5,1) both star}.big-stars .star:first-child{animation-delay:.35s}.big-stars .star:nth-child(2){animation-delay:.67s}.big-stars .star:nth-child(3){animation-delay:.99s}@keyframes star{0%{transform:scale(0)rotate(-40deg)}}.big-number{font:700 calc(var(--u) * 92) / 1 var(--letters);margin:calc(var(--u) * 8) 0}.big-number small{font-size:calc(var(--u) * 24);margin-left:calc(var(--u) * 8);font-weight:500}.stats{margin:calc(var(--u) * 12) 0;border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 18);background:#fff;grid-template-columns:repeat(3,1fr);display:grid}.stats div+div{border-left:calc(var(--u) * 3) solid var(--ink)}.stats div{padding:calc(var(--u) * 10) calc(var(--u) * 6)}.stats dt{font-size:calc(var(--u) * 15);opacity:.7;font-weight:500}.stats dd{font:700 calc(var(--u) * 36) / 1.1 var(--letters);margin:0}.stats small{font-size:calc(var(--u) * 13);font-weight:450;display:block}.tip,.unlock{font-size:calc(var(--u) * 18);text-wrap:balance;font-weight:450}.unlock{margin-top:calc(var(--u) * 10);padding:calc(var(--u) * 8) calc(var(--u) * 12);border-radius:calc(var(--u) * 12);background:var(--amber);font-weight:600}.panel .actions{margin-top:calc(var(--u) * 22);justify-content:center}.settings{gap:calc(var(--u) * 12);margin-top:calc(var(--u) * 18);text-align:left;display:grid}.switch{align-items:center;gap:calc(var(--u) * 14);cursor:pointer;font-weight:600;font-size:calc(var(--u) * 20);display:flex}.switch small{font-size:calc(var(--u) * 15);opacity:.75;font-weight:450;display:block}.switch input{opacity:0;position:absolute}.switch i{width:calc(var(--u) * 58);height:calc(var(--u) * 32);border:calc(var(--u) * 3) solid var(--ink);border-radius:calc(var(--u) * 16);background:#cfc7ae;flex:none;transition:background .12s;position:relative}.switch i:after{content:"";top:calc(var(--u) * 2);left:calc(var(--u) * 2);width:calc(var(--u) * 22);height:calc(var(--u) * 22);background:var(--ink);border-radius:50%;transition:transform .16s cubic-bezier(.3,1.6,.5,1);position:absolute}.switch input:checked+i{background:var(--fern)}.switch input:checked+i:after{transform:translateX(calc(var(--u) * 26))}.switch input:focus-visible+i{outline:calc(var(--u) * 4) solid var(--sky);outline-offset:calc(var(--u) * 3)}@media (aspect-ratio<=4/5){.logo{left:calc(var(--u) * 28);font-size:calc(var(--u) * 104);top:9vh;bottom:auto}.title-panel,#toast,#caption{left:calc(var(--u) * 24);max-width:calc(100% - var(--u) * 48)}.title-tip{font-size:calc(var(--u) * 24)}.place{display:none}.world{padding:calc(var(--u) * 12) 0 calc(var(--u) * 6);grid-template-columns:1fr}.world header{align-items:baseline;gap:calc(var(--u) * 12);padding-bottom:calc(var(--u) * 6);display:flex}.levels{padding:0 calc(var(--u) * 6)}.map-bar h1{width:60%}}@media (prefers-reduced-motion:reduce){.key.want,.level.next .level-disc,.panel,.big-stars .star.on{animation:none}}
