@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#303269;font-synthesis:none;background:#9ee9ff;font-family:Fredoka Variable,Arial Rounded MT Bold,sans-serif}*{box-sizing:border-box}body{margin:0;overflow:hidden}button{font:inherit;cursor:pointer;touch-action:manipulation;color:inherit}button:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #5433c8}[hidden]{display:none!important}.game{isolation:isolate;background:radial-gradient(at 50% 12%,#cbf6ff,#0000 55%),linear-gradient(#85dcff 0%,#c4f6ff 70%,#fcf5b2);width:100vw;height:100dvh;position:relative;overflow:hidden}#world,#effects{position:absolute;inset:0}#world canvas{touch-action:manipulation;width:100%;height:100%;display:block}#effects{pointer-events:none;z-index:2;overflow:hidden}.masthead{pointer-events:none;z-index:3;width:max-content;max-width:calc(100vw - 196px);position:absolute;top:clamp(18px,2.4vh,28px);left:clamp(18px,2vw,36px)}h1{letter-spacing:-.045em;color:#fff0a4;filter:drop-shadow(0 5px #4c3483)drop-shadow(0 7px 4px #36589945);transform-origin:0;paint-order:stroke fill;-webkit-text-stroke:.09em #fffdf5;align-items:center;gap:.17em;margin:0;font-size:clamp(34px,min(5vw,6vh),70px);font-weight:700;line-height:.95;display:flex;transform:rotate(-2deg)}h1 span:first-child{color:#fd6a94}h1 span:last-child{color:#ffb32f}#prompt{color:#504577;background:#fffdf4;border-radius:22px;width:max-content;max-width:100%;margin:10px 0 0;padding:6px 13px;font-size:clamp(13px,1.4vw,17px);font-weight:570;box-shadow:0 3px #529dc632}.tools{z-index:3;gap:8px;display:flex;position:absolute;top:18px;right:18px}.tools button,.close{background:#fffdf4;border:2px solid #fff;border-radius:15px;place-items:center;width:42px;height:42px;font-size:24px;line-height:1;display:grid;box-shadow:0 4px #527c9f45}.tools #open-menu{width:auto;padding-inline:12px;font-size:15px;font-weight:650}.tools button[aria-pressed=false]{color:#77708b;text-decoration:line-through}#pad-badge{color:#286953;background:#fffdf1;border-radius:30px;padding:5px 9px;font-size:12px;position:absolute;top:57px;right:18px}.deck{text-align:center;z-index:3;width:max-content;max-width:96vw;position:absolute;bottom:clamp(10px,2.5vh,26px);left:50%;transform:translate(-50%)}.start-menu{text-align:center;color:#413265;isolation:isolate;background:radial-gradient(at 50% 30%,#fff9e9 5%,#f8efe4 40%,#0000 80%),linear-gradient(135deg,#c5edfa,#eae0f6 70%,#f6dce6);place-items:center;padding:54px 5vw 55px;display:grid;position:absolute;inset:0;overflow:auto}.menu-garden{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.menu-bunting{transform-origin:0 0;pointer-events:none;border-top:2px solid #9d87a4;gap:10px;padding-top:2px;display:flex;position:absolute;top:0;left:3%;transform:rotate(-9deg)}.menu-bunting i{clip-path:polygon(0 0,100% 0,50% 100%);background:#e8a3b7;width:28px;height:35px;display:block}.menu-bunting i:nth-child(3n+2){background:#efd080}.menu-bunting i:nth-child(3n){background:#a6cbb7}.menu-content{width:min(100%,1160px);position:relative}.menu-hero{text-align:left;justify-content:center;align-items:center;gap:clamp(20px,5vw,90px);margin:0 auto 10px;display:flex}.menu-welcome{max-width:650px}#menu-title{color:#df6392;letter-spacing:-.035em;filter:drop-shadow(0 4px #64438a)drop-shadow(0 8px 5px #765c8b25);font-size:clamp(64px,min(10vw,13vh),150px);line-height:1.02;display:block;transform:rotate(-2deg)}#menu-title span{color:#7954b6;display:block}.menu-character{flex-shrink:0;position:relative}#elyse{pointer-events:none;width:clamp(160px,23vw,310px);height:clamp(230px,37vh,390px);margin:0;position:relative}#elyse:before{content:"";filter:blur(3px);background:#927baa22;border-radius:50%;width:60%;height:12px;position:absolute;bottom:0;left:20%}#elyse img{object-fit:contain;filter:drop-shadow(0 8px 8px #80669e20);width:100%;height:100%;display:block;position:relative}.hello-bubble{z-index:1;background:#fffbed;border:2px solid #fffef8;border-radius:20px 20px 3px;padding:10px 17px;font-size:clamp(16px,1.6vw,23px);font-weight:600;position:absolute;top:5%;left:-24%;transform:rotate(-9deg);box-shadow:0 4px #b8a4c329}.hello-bubble b{color:#eeb642}.character-spark{color:#dfb251;font-size:35px;position:absolute}.spark-one{top:28%;right:0;transform:rotate(12deg)}.spark-two{font-size:26px;bottom:20%;left:5%}#menu-prompt{justify-content:center;align-items:center;gap:18px;margin:15px 0 23px;font-size:clamp(19px,2.5vh,28px);font-weight:580;display:flex}#menu-prompt:before,#menu-prompt:after{content:"";background:#b8a0cb55;border-radius:2px;width:50px;height:2px}.mode{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.7vw,26px);display:grid}.mode button{background:var(--menu-tint,#fff0c7);min-width:0;min-height:clamp(120px,20vh,200px);box-shadow:0 7px 0 var(--menu-edge,#d8c396),0 12px 18px #70547d12;border:3px solid #fffbed;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:18px 8px 20px;font-size:clamp(16px,1.65vw,25px);font-weight:620;line-height:1.06;transition:transform .18s ease-out,box-shadow .18s ease-out;display:flex;position:relative}.mode button span{place-items:center;font-size:clamp(40px,7vh,75px);line-height:1.1;display:grid;position:relative}.mode button[data-mode=band]{--menu-tint:#e8ddfa;--menu-edge:#c4afd9}.mode button[data-mode=moles]{--menu-tint:#e7f0c9;--menu-edge:#bdcc9c}.mode button[data-mode=balloons]{--menu-tint:#fbd8e2;--menu-edge:#dcaebd}.mode button[data-mode=duet]{--menu-tint:#d4edf4;--menu-edge:#a9cbd8}.mode button:hover{transform:translateY(-4px)}.mode button[aria-pressed=true]{border-color:#fffbed;transform:translateY(-7px);box-shadow:0 0 0 4px #8054b8,0 9px 0 4px #684794,0 16px 24px #6f4e8b25}.mode button[aria-pressed=true]:after{content:"★";color:#ffedaa;background:#8054b8;border:2px solid #fffbed;border-radius:50%;place-items:center;width:30px;height:30px;font-size:17px;display:grid;position:absolute;top:-16px;right:10px}.mode button[aria-pressed=true]:focus-visible{outline-offset:9px}.menu-actions{margin-top:28px}#play-selected{color:#fff8ee;background:#7650af;border:3px solid #fff8ee;border-radius:40px;padding:.6em 1.7em;font-size:clamp(19px,2.8vh,29px);font-weight:650;transition:transform .15s ease-out;box-shadow:0 5px #513779,0 9px 15px #63427c20}#play-selected:hover{background:#68429e;transform:translateY(-2px)}.menu-actions p{color:#665574;margin:17px 0 0;font-size:clamp(12px,1.6vh,17px);font-weight:450}.menu-actions kbd{font:inherit;font-weight:600}@media (height<=650px) and (width>=701px){.start-menu{padding-top:42px;padding-bottom:25px}#elyse{height:30vh;min-height:150px}#menu-title{font-size:clamp(48px,11vh,85px)}.menu-hero{margin-bottom:0}#menu-prompt{margin:8px 0 16px}.mode button{gap:7px;min-height:105px;padding:12px 6px}.mode button span{font-size:36px}.menu-actions{margin-top:20px}.menu-actions p{margin-top:12px}}@media (width<=700px){.start-menu{place-items:start center;padding:75px 22px 70px}.menu-hero{justify-content:space-between;gap:0}.menu-welcome{max-width:66%}#menu-title{font-size:clamp(44px,11vw,72px)}#elyse{width:32vw;max-width:200px;height:230px}.hello-bubble{padding:6px 10px;font-size:13px;top:0;left:-20%}.character-spark{font-size:22px}.spark-two{display:none}#menu-prompt{gap:10px;margin:22px 0;font-size:20px}#menu-prompt:before,#menu-prompt:after{width:24px}.mode{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.mode button{gap:10px;min-height:145px;padding:16px 8px;font-size:18px}.mode button span{font-size:50px}.mode button:last-child{flex-direction:row;grid-column:1/-1;gap:18px;min-height:95px}.menu-garden{position:fixed}.menu-actions p{max-width:300px;margin:17px auto 0;line-height:1.7}}@media (prefers-reduced-motion:reduce){.mode button,#play-selected{transition:none}}.gentle .mode button,.gentle #play-selected{transition:none}.mode button:before,#play-selected:before{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:linear-gradient(110deg,#0000 35%,#fffbed00 43%,#fffbed70 50%,#fffbed00 57%,#0000 65%) 100% 0/350% 100%;position:absolute;inset:0}#play-selected{position:relative}.menu-clouds{transform-box:fill-box;transform-origin:50%}.menu-flower-stem{transform-box:view-box;transform-origin:0 0}#elyse img{transform-origin:50% 96%}.menu-bunting i{transform-origin:50% 0}@keyframes home-cloud-drift{0%,to{transform:translate(-9px)}50%{transform:translate(12px)}}@keyframes home-character-sway{0%,to{transform:rotate(-.65deg)}50%{transform:rotate(.65deg)}}@keyframes home-sparkle{0%,to{opacity:.45;transform:scale(.85)rotate(-8deg)}50%{opacity:1;transform:scale(1.1)rotate(8deg)}}@keyframes home-flower-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes home-flag-sway{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes home-bubble-float{0%,to{transform:translateY(0)rotate(-9deg)}50%{transform:translateY(-4px)rotate(-7deg)}}@keyframes home-shimmer{0%,68%{opacity:0;background-position:100% 0}72%{opacity:.65}89%{opacity:.65}94%,to{opacity:0;background-position:0 0}}@media (prefers-reduced-motion:no-preference){.game:not(.gentle) .menu-clouds{animation:22s ease-in-out infinite home-cloud-drift}.game:not(.gentle) #elyse img{animation:7s ease-in-out infinite home-character-sway}.game:not(.gentle) .character-spark{animation:4.8s ease-in-out infinite home-sparkle}.game:not(.gentle) .spark-two{animation-delay:-2.4s}.game:not(.gentle) .hello-bubble{animation:6s ease-in-out infinite home-bubble-float}.game:not(.gentle) .menu-flower-stem{animation:6s ease-in-out infinite home-flower-sway}.game:not(.gentle) .menu-bunting i{animation:5s ease-in-out infinite home-flag-sway}.game:not(.gentle) .menu-bunting i:nth-child(2n){animation-delay:-2s}.game:not(.gentle) .mode button[aria-pressed=true]:before,.game:not(.gentle) #play-selected:before{animation:9s ease-in-out infinite home-shimmer}.game:not(.gentle) #play-selected:before{animation-delay:2s}}.start-menu[hidden] *,.start-menu[hidden] :before{animation-play-state:paused!important}.game:has(#settings[open]) .start-menu *{animation-play-state:paused!important}.game:has(#settings[open]) .start-menu :before{animation-play-state:paused!important}.pads{background:#fff7dfea;border:2px solid #fffdf1;border-radius:24px;gap:clamp(4px,1vw,12px);padding:8px;display:flex;box-shadow:0 7px #38764250,0 12px 22px #406e4740}.eight-pads .pad{--edge:color-mix(in srgb,var(--key),#4b296b 35%);width:clamp(45px,9vw,90px)}.eight-pads .copy-next,#duet-cue .copy-next{outline-offset:2px;outline:4px solid #fff8d9;box-shadow:0 0 0 8px #6945af,0 0 24px #f8ed79}#duet-stage{z-index:1;pointer-events:none;width:min(86vw,95vh,920px);position:absolute;top:53%;left:50%;transform:translate(-50%,-50%)}#duet-stage svg{width:100%;display:block;overflow:visible}#duet-cue{z-index:1;gap:clamp(8px,1.6vw,19px);display:flex;position:absolute;top:-9%;left:50%;transform:translate(-50%)}#duet-cue b{background:var(--key);color:#35264d;border:2px solid #fff9ea;border-radius:.32em;place-items:center;width:1.4em;height:1.4em;font:800 clamp(21px,min(5.2vh,7vw),64px)/1 system-ui,sans-serif;display:grid;box-shadow:0 4px #57348870}#duet-cue .copied{color:#305a37;background:#e1f9ac}.duet-shadow{fill:#71482b;opacity:.2}.duet-cat{--fur:#ffbc83;--trim:#ba744d;--bow:#63dec7;--reach:36px;--tilt:9deg}.mat-cat{--fur:#cbb1ed;--trim:#9273bb;--bow:#ffdb68;--reach:-36px;--tilt:-9deg}.duet-body{transform-origin:0 45px;transition:transform .22s ease-out}.duet-paw{fill:#fff0d7;stroke:#55365e;stroke-width:1.8px;stroke-linecap:round}.duet-arm{visibility:hidden;fill:none;stroke:var(--fur);stroke-width:12px;stroke-linecap:round}.duet-stars{fill:#fff1a4;stroke:#a5652f;stroke-width:1.2px;opacity:0;transform-origin:140px 53px}.duet-words .burst-word{--y:16%;font-size:clamp(17px,min(4.6vw,5vh),48px)}.duet-words [data-player=keyboard]{--x:19%;--color:#9d4c25}.duet-words [data-player=mat]{--x:81%;--color:#7950a3}.duet-words [data-player=both]{--x:50%;--y:74%;--color:#8051ae}.duet-labels{text-align:center;grid-template-columns:37% 37%;justify-content:space-between;display:grid}.duet-labels span{color:#583a68;background:#fff9e7;border:2px solid #fff9e7;border-radius:1em;justify-self:center;padding:.23em .67em;font-size:clamp(12px,min(3.1vh,4vw),28px);font-weight:660;box-shadow:0 3px #6a44764a}#duet-stage:is([data-phase=lead][data-leader=keyboard],[data-phase=copy][data-leader=mat]) .duet-labels span:first-child,#duet-stage:is([data-phase=lead][data-leader=mat],[data-phase=copy][data-leader=keyboard]) .duet-labels span:last-child{color:#45296d;background:#ffe182;border-color:#724d9e}#duet-stage[data-phase=lead][data-leader=keyboard] .keyboard-cat,#duet-stage[data-phase=lead][data-leader=mat] .mat-cat{--pose:translateY(-5px) scale(1.04)}#duet-stage[data-phase=copy][data-leader=mat] .keyboard-cat,#duet-stage[data-phase=copy][data-leader=keyboard] .mat-cat{--pose:rotate(var(--tilt))}.duet-body{transform:var(--pose,none)}.game:not(.gentle) #duet-stage[data-moves="1"][data-leader=keyboard] .keyboard-cat .duet-body,.game:not(.gentle) #duet-stage[data-moves="1"][data-leader=mat] .mat-cat .duet-body{animation:.26s ease-out duet-perk}.game:not(.gentle) #duet-stage[data-moves="2"][data-leader=keyboard] .keyboard-cat .duet-body,.game:not(.gentle) #duet-stage[data-moves="2"][data-leader=mat] .mat-cat .duet-body{animation:.26s ease-out duet-nod}@keyframes duet-perk{50%{transform:translateY(-12px)scale(1.07)}}@keyframes duet-nod{50%{transform:translateY(-12px)scale(1.07)}}#duet-stage[data-phase=win] .duet-body{transform:rotate(var(--tilt))}#duet-stage[data-phase=win] .duet-arm{visibility:visible}#duet-stage[data-phase=win] .duet-paw{transform:translate(var(--reach),-24px)}#duet-stage[data-phase=win] .duet-stars{opacity:1}.game:not(.gentle) #duet-stage[data-phase=win] .duet-paw{animation:.24s ease-out both duet-high-five}.game:not(.gentle) #duet-stage[data-phase=win] .duet-arm{stroke-dasharray:1;animation:.24s ease-out both duet-reach}.game:not(.gentle) #duet-stage[data-phase=win] .duet-stars{animation:.42s ease-out .15s both duet-stars}.gentle .duet-body{transition:none}@keyframes duet-high-five{0%{transform:translate(0)}}@keyframes duet-reach{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes duet-stars{0%{opacity:0;transform:scale(.45)}to{opacity:1;transform:scale(1)}}@media (height<=520px) and (orientation:landscape){#duet-stage{width:min(80vw,83vh);top:58%}}.pad{background:var(--key);width:clamp(49px,13vw,90px);height:clamp(48px,8.5vh,76px);box-shadow:inset 0 2px 0 #fff9,0 4px 0 var(--edge);-webkit-user-select:none;user-select:none;border:0;border-radius:15px;align-content:center;place-items:center;gap:3px;transition:transform .15s,box-shadow .15s;display:grid}.pad b{font-family:system-ui,sans-serif;font-size:clamp(20px,4vh,32px);line-height:.85}.pad span{font-size:clamp(10px,2vh,14px);font-weight:660}.pad:is(:active,.hit){box-shadow:inset 0 2px 0 #fff9,0 0 0 var(--edge);transform:translateY(4px)scale(.95)}.pig{--key:#ffb4cf;--edge:#e16b9e}.cow{--key:#bfa7ff;--edge:#9073db}.party{--key:#ffdf79;--edge:#e5a530}.chick{--key:#a9ebff;--edge:#60b9de}.mix{--key:#bceca1;--edge:#75b95c}.hint{letter-spacing:.13em;color:#253e39;text-shadow:0 1px 2px #e9ffb9;margin:11px auto 0;font-size:clamp(8px,1.8vw,11px);font-weight:690}.hint i{margin:0 3px;font-style:normal}.burst-word{left:var(--x);top:var(--y);white-space:nowrap;color:var(--color);paint-order:stroke fill;-webkit-text-stroke:.14em #fffbe8;filter:drop-shadow(0 4px #493476);font-size:clamp(25px,5.2vw,68px);font-weight:700;animation:.8s ease-out both word;position:absolute;transform:translate(-50%,-50%)}@keyframes word{0%{opacity:0;transform:translate(-50%,-20%)scale(.55)rotate(-13deg)}17%{opacity:1;transform:translate(-50%,-50%)scale(1.12)rotate(7deg)}65%{opacity:1}to{opacity:0;transform:translate(-50%,-135%)scale(.9)rotate(-7deg)}}.gentle .burst-word{animation-name:gentle-word}@keyframes gentle-word{0%,78%{opacity:1}to{opacity:0}}dialog{background:#fff9e9;border:3px solid #fff;border-radius:24px;width:min(440px,100vw - 24px);max-height:94dvh;padding:24px;box-shadow:0 7px #53418a,0 22px 60px #28185458}dialog::backdrop{background:#25214d87}dialog h2{margin:0 44px 8px 0;font-size:30px}dialog p{line-height:1.45}.close{position:absolute;top:12px;right:12px}.device{background:#eee7ff;border-radius:12px;min-height:58px;padding:12px}.setup-actions{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.setup-actions button{color:#fff;background:#6245ad;border:0;border-radius:14px;padding:7px 14px}.setup-actions button:disabled{opacity:.45;cursor:default}.small{margin-bottom:0;font-size:13px}#error{z-index:4;text-align:center;background:#fff9ec;border-radius:18px;width:min(90%,360px);padding:20px;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}@media (width<=620px){.tools{gap:5px;top:9px;right:9px}.tools button{border-radius:11px;width:32px;height:32px;font-size:20px}.tools svg{width:17px}.masthead{max-width:calc(100vw - 36px);top:54px}#pad-badge{top:34px;right:9px}}@media (height<=520px) and (orientation:landscape){.masthead{top:8px}#prompt{margin-top:5px;padding-block:4px}.deck{bottom:7px}.pads{padding:5px}.pad{height:40px}.hint{display:none}}.setting{margin:8px 0;display:block}.setting small{color:#655781;margin-left:1.45em;display:block}#target-stage{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.target-mode .hint{margin-top:0}.mole-field{background:#fff1c7ee;border:3px solid #fff8dc;border-radius:clamp(16px,3.4vh,34px);grid-template:repeat(3,minmax(0,1fr))/repeat(3,minmax(0,1fr));gap:clamp(5px,1.35vh,17px);width:min(68vw,91vh,980px);padding:clamp(6px,1.2vh,15px);display:grid;position:absolute;top:23%;bottom:6%;left:50%;transform:translate(-50%);box-shadow:0 8px #48715465,0 16px 30px #3759434d}.mole-tile,.mole-home{border:2px solid #ffffffa0;border-radius:clamp(10px,2vh,22px);min-width:0;min-height:0;position:relative}.mole-tile{pointer-events:auto;background:linear-gradient(145deg,color-mix(in srgb,var(--target-color),#fff6d7 50%),var(--target-color));overflow:hidden;box-shadow:inset 0 -5px #652e7226}.mole-home{text-align:center;color:#77645c;background:#e1d2a9;border-style:dashed;grid-area:2/2;place-content:center;gap:3px;font-size:clamp(11px,2vh,22px);font-weight:620;display:grid}.mole-home b{color:#a69368;font-size:2em;line-height:1}.mole-burrow{z-index:1;background:radial-gradient(at 50% 120%,#93553c,#502e3e 72%);border:clamp(4px,1vh,11px) solid #c88250;border-radius:50%;height:29%;position:absolute;bottom:9%;left:14%;right:14%;box-shadow:0 3px #60375345,inset 0 4px 7px #3f1e36}.mole-face{z-index:2;transform-origin:bottom;opacity:0;width:85%;height:85%;transition:transform .26s cubic-bezier(.28,1.55,.45,1),opacity .13s;position:absolute;bottom:15%;left:50%;transform:translate(-50%,73%)scale(.8,.36)}.mole-face svg{width:100%;height:100%;display:block}.mole-tile.is-up .mole-face{opacity:1;transform:translate(-50%)scale(1)}.mole-tile.is-up{border-color:#fffdf3;box-shadow:inset 0 0 0 3px #fff6bb,0 0 16px #ffe576}.mole-dirt,.mole-grip{z-index:3;pointer-events:none;visibility:hidden;position:absolute}.mole-dirt{height:22%;bottom:28%;left:27%;right:27%}.mole-dirt i{--toss:-80%;background:#a26847;border-top:2px solid #ffd495;border-radius:44% 36% 42% 29%;width:22%;height:42%;position:absolute;bottom:8%;left:12%;transform:rotate(-26deg)}.mole-dirt i:nth-child(2){--toss:15%;width:17%;bottom:44%;left:40%}.mole-dirt i:nth-child(3){--toss:80%;left:72%;transform:rotate(28deg)}.is-rustling .mole-dirt,.is-clinging .mole-grip{visibility:visible}.is-rustling .mole-burrow{border-top-color:#ffcf86}.game:not(.gentle) .is-rustling .mole-dirt i{animation:.22s ease-out both mole-crumble}.mole-grip{justify-content:space-between;height:12%;display:flex;bottom:26%;left:29%;right:29%}.mole-grip:before,.mole-grip:after{content:"";background:repeating-linear-gradient(90deg,#e8a979 0 25%,#b96e50 25% 30%);border:2px solid #8d4f46;border-radius:65% 65% 45% 45%;width:29%;height:100%;box-shadow:0 2px #502e3e70}.game:not(.gentle) .is-clinging .mole-face{transition-duration:.13s}@keyframes mole-crumble{0%{opacity:.45;transform:translateY(90%)scale(.65)}to{transform:translate(var(--toss),-75%) rotate(45deg);opacity:1}}.target-symbol{color:#392756;font:800 clamp(22px,4.5vh,56px)/1 system-ui,sans-serif}.mole-tile .target-symbol{z-index:3;background:#fff8e9;border-radius:29%;place-items:center;width:1.32em;height:1.32em;font-size:clamp(18px,3.4vh,40px);display:grid;position:absolute;top:7%;right:5%;box-shadow:0 2px #48315e40}.balloon-field{position:absolute;inset:0}.float-balloon{pointer-events:auto;will-change:transform;transform-origin:50% 12%;background:0 0;border:0;justify-items:center;width:clamp(45px,min(10.4vw,15vh),178px);padding:0;display:grid;position:absolute;top:0}.float-balloon:disabled{pointer-events:none}.balloon-shell{aspect-ratio:.84;border:3px solid color-mix(in srgb,var(--target-color),#60318d 22%);background:radial-gradient(ellipse at 32% 25%,#fff8ebc9 0%,transparent 36%),radial-gradient(ellipse at 40% 32%,var(--target-color) 35%,color-mix(in srgb,var(--target-color),#623382 42%) 100%);border-radius:50% 50% 47% 47%/45% 45% 55% 55%;place-items:center;width:100%;display:grid;position:relative;box-shadow:0 6px 12px #34345b45,inset -7px -12px 17px #59306134,inset -3px 3px #fff7dd6b}.balloon-spark{color:#fff9dc;text-shadow:0 0 9px #fff1da;font:700 clamp(12px,3vh,34px)/1 system-ui,sans-serif;position:absolute;top:14%;right:13%;transform:rotate(18deg)}.float-balloon:nth-child(2n) .balloon-spark{top:auto;bottom:16%;right:18%}.balloon-shell:after{content:"";background:var(--target-color);clip-path:polygon(50% 0,100% 100%,0 100%);width:20px;height:17px;position:absolute;bottom:-13px}.balloon-shell .target-symbol{z-index:1;background:#fffdf0;border:2px solid #fff;border-radius:50%;place-items:center;width:1.48em;height:1.48em;font-size:clamp(20px,min(5.2vw,7vh),78px);display:grid;box-shadow:0 4px #55355e37}.game:has(#mash-mode:checked) .balloon-shell .target-symbol{display:none}.balloon-string{filter:drop-shadow(1px 1px 1px #7655805c);width:24%;height:clamp(14px,5vh,58px);margin-top:9px}.float-balloon.is-popping .balloon-shell{border-radius:46% 53% 50% 48%/60% 42% 58%;transition:transform 85ms ease-out,border-radius 85ms ease-out;transform:scale(1.13,.79)skew(-9deg)}.bit-3.falling-bit.balloon-scrap{background:linear-gradient(150deg,currentColor 30%,#fff3da 49%,currentColor 67%);border-bottom:3px solid #66346e6b;border-radius:75% 18% 72% 12%;width:clamp(18px,3.5vh,39px);height:clamp(12px,2.3vh,27px)}.dropped-string{transform-origin:50% 10%;animation:.7s ease-in both drop-string;position:absolute}@keyframes drop-string{0%{transform:rotate(-8deg)}44%{opacity:1;transform:translate(13px,21px)rotate(32deg)}to{opacity:0;transform:translate(-25px,135px)rotate(-50deg)}}.balloon-mode #target-stage{background:radial-gradient(at 50% 2%,#fff9d666,#0000 55%)}.target-burst{width:0;height:0;position:absolute}.burst-bit,.burst-ring,.target-pop-word{display:block;position:absolute}.burst-bit{background:currentColor;border-radius:3px;width:clamp(8px,1.35vh,19px);height:clamp(8px,1.5vh,22px);animation:.84s cubic-bezier(.12,.72,.33,1) both target-bit;box-shadow:0 1px 2px #6742714f}.bit-0{width:auto;height:auto;box-shadow:none;text-shadow:0 2px #8456a4;background:0 0;font:900 clamp(16px,3.3vh,40px)/1 system-ui}.bit-1{border-radius:50%}.bit-2{border:2px solid #fff5e87a;height:.62em}.bit-3{width:.62em;height:1.3em}.falling-bit{animation:none}.bit-3.falling-bit{background:linear-gradient(95deg,currentColor 25%,#fff5dc 45%,currentColor 70%);border-radius:24% 12% 30%}.burst-ring{width:140px;height:140px;box-shadow:0 0 0 6px var(--target-color),inset 0 0 0 3px #fff9ed;border:8px solid #fff7d0;border-radius:50%;animation:.57s ease-out both target-ring;top:-70px;left:-70px}.ring-echo{box-shadow:none;border:3px dashed #fff8e5;animation-delay:75ms}.target-pop-word{white-space:nowrap;color:#6b3aa8;paint-order:stroke fill;-webkit-text-stroke:.13em #fff8e4;filter:drop-shadow(0 4px #5b387e);font-size:clamp(30px,8vh,104px);line-height:1;animation:.88s ease-out both target-word;top:0;left:0}@keyframes target-bit{0%{opacity:1;transform:scale(.25)}78%{opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(var(--spin));opacity:0}}@keyframes target-ring{0%{opacity:1;transform:scale(.22)}to{opacity:0;transform:scale(2.65)}}@keyframes target-word{0%{transform:translate(-50%,-38%)scale(.55)rotate(-9deg)}20%{transform:translate(-50%,-66%)scale(1.15)rotate(5deg)}73%{opacity:1}to{opacity:0;transform:translate(-50%,-104%)scale(.96)}}.gentle .mole-face{transition:none}.gentle .target-pop-word{animation:.7s linear both gentle-word;transform:translate(-50%,-55%)}@media (width<=620px){.mole-field{width:min(94vw,76vh)}}@media (height<=520px) and (orientation:landscape){.mole-field{top:27%;bottom:13%}}.mole-pupil,.mole-paw,.mole-brow-left{transform-box:fill-box;transform-origin:50%}.mole-wink,.mole-tongue,.mole-smirk,.mole-gasp,[data-face=tongue] .mole-grin,[data-face=smirk] .mole-grin,[data-face=bonked] .mole-grin,[data-face=giggle] .mole-eye,[data-face=tongue] .mole-eye-right{display:none}[data-face=tongue] .mole-tongue,[data-face=smirk] .mole-smirk,[data-face=bonked] .mole-gasp,:is([data-face=tongue],[data-face=giggle]) .mole-wink{display:inline}[data-face=tongue] .mole-wink{clip-path:inset(0 0 0 52%)}[data-face=smirk] .mole-pupil{transform:translate(-6px)}[data-face=smirk] .mole-brow-left{transform:translateY(-5px)rotate(-11deg)}[data-face=bonked] .mole-eye{transform-box:fill-box;transform-origin:50%;transform:scale(1.12)}.mole-taunt{z-index:3;opacity:0;pointer-events:none;color:#673588;background:#fff7d4;border:2px solid #fff;border-radius:.55em;padding:.25em .4em;font-size:clamp(11px,2.2vh,26px);font-weight:700;position:absolute;top:8%;left:5%;transform:rotate(-8deg);box-shadow:0 3px #642e6550}.mole-tile.is-up .mole-taunt:not(:empty){opacity:1}.mole-tile.has-prank .mole-taunt{font-size:clamp(10px,1.8vh,22px);top:auto;bottom:5%}.mole-prop{pointer-events:none;width:55%;position:absolute;top:-2%;left:50%;transform:translate(-50%)rotate(-13deg)}.mole-prop svg{width:100%;height:auto}.mole-tile.is-bonked .mole-prop{visibility:hidden}.tossed-prop{filter:drop-shadow(0 4px 1px #51365755);position:absolute}.game:not(.gentle) .mole-tile.is-up[data-face=tongue] svg{animation:.35s ease-in-out infinite alternate mole-wag}.game:not(.gentle) .mole-tile.is-up[data-face=giggle] svg{animation:.24s ease-in-out infinite alternate mole-giggle}.game:not(.gentle) .mole-tile.is-up[data-face=smirk] .mole-paw{animation:.42s ease-in-out infinite alternate mole-wave}.game:not(.gentle) .mole-tile.is-bonked .mole-face{animation:.32s ease-in both mole-bonk}@keyframes mole-wag{0%{transform:rotate(-8deg)}to{transform:rotate(8deg)}}@keyframes mole-giggle{0%{transform:translateY(-5%)scale(.96,1.05)}to{transform:scale(1.08,.89)}}@keyframes mole-wave{0%{transform:translateY(-19px)rotate(19deg)}to{transform:translate(4px,-27px)rotate(-21deg)}}@keyframes mole-bonk{0%{opacity:1;transform:translate(-50%)}30%{opacity:1;transform:translate(-50%,12%)rotate(13deg)scale(1.16,.72)}to{opacity:0;transform:translate(-50%,78%)rotate(-18deg)scale(.75,.48)}}.disco-mode{background:#201037}.disco-mode h1{filter:drop-shadow(0 5px #5f348b)drop-shadow(0 8px 14px #eb5dff70)}.disco-mode h1 span:first-child{color:#f983dc}.disco-mode h1 span:last-child{color:#83edff}.disco-mode #prompt{color:#573475;background:#f9e7ff}.disco-mode .hint{color:#fff0fd;text-shadow:0 2px 3px #3c175b}#rhythm-stage{z-index:2;pointer-events:none;--ring-size:max(3.4rem,calc(var(--ball-size) + 14px));--note-size:clamp(34px,min(9vh,13vw),74px);--travel:calc(50vw - var(--note-size) / 2 - clamp(12px,2vw,32px));width:0;height:0;position:absolute}#rhythm-stage:before{content:"";top:-2px;left:calc(var(--ring-size) / 2);width:calc(var(--travel) - var(--ring-size) / 2);background:linear-gradient(90deg,#c9acfd,#a988e073 80%,#0000);border-radius:9px;height:4px;position:absolute}.rhythm-zone,.rhythm-cue,.rhythm-feedback{position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.rhythm-zone{width:var(--ring-size);aspect-ratio:1;border:3px solid #d4b9ff;border-radius:50%;box-shadow:0 0 14px #b185ed8c,inset 0 0 9px #b185ed8c}.rhythm-zone.is-ready{border-color:#ffe48d;box-shadow:0 0 0 3px #633e94,0 0 21px #ffd886}.rhythm-cue{width:var(--note-size);aspect-ratio:1;background:var(--cue-color);color:#392050;box-shadow:0 4px 0 #4d2b77,0 0 16px color-mix(in srgb,var(--cue-color),transparent 35%);font:800 calc(var(--note-size) * .65)/1 system-ui,sans-serif;transform:translate(calc(-50% + var(--travel) * var(--offset)), -50%);border:3px solid #fff5eb;border-radius:29%;place-items:center;display:grid}.rhythm-cue+.rhythm-cue{opacity:.65}.rhythm-feedback{width:var(--ring-size);aspect-ratio:1;animation:.58s ease-out both rhythm-hit}.rhythm-feedback svg{fill:none;stroke:#ffe38a;stroke-width:5px;stroke-linecap:round;filter:drop-shadow(0 0 5px #ef92ff);width:100%;animation:.58s ease-out both rhythm-sparks;display:block;overflow:visible}.rhythm-feedback strong{color:#ffe694;paint-order:stroke fill;-webkit-text-stroke:.13em #613a94;filter:drop-shadow(0 3px #492b73);font-size:clamp(22px,min(5vw,7vh),68px);line-height:1;position:absolute;top:50%;right:calc(100% + .4em);transform:translateY(-50%)rotate(-8deg)}.gentle .rhythm-feedback svg{animation:none;transform:scale(1.22)}@keyframes rhythm-hit{0%,58%{opacity:1}to{opacity:0}}@keyframes rhythm-sparks{0%{transform:scale(1.04)}to{transform:scale(2.1)}}#disco-track{z-index:3;color:#fff1fd;pointer-events:none;background:#291344c9;border:1px solid #ffffff40;border-radius:20px;max-width:calc(100% - 36px);margin:0;padding:7px 13px;font-size:clamp(13px,1.4vw,18px);font-weight:550;position:absolute;top:clamp(135px,19vh,180px);left:clamp(18px,2vw,36px)}.farm-party{pointer-events:none;z-index:2;gap:clamp(12px,2vw,28px);display:flex;position:absolute;bottom:clamp(20px,4vh,44px);left:50%;transform:translate(-50%)}.farm-badge{aspect-ratio:1;background:oklch(97% .025 90);border:3px dashed oklch(65% .08 300);border-radius:50%;place-items:center;width:clamp(54px,8vw,86px);display:grid;position:relative;box-shadow:0 4px oklch(45% .06 300/.18)}.farm-badge>span{filter:grayscale(.8);opacity:.65;font-size:clamp(28px,4vw,47px)}.farm-badge b{color:oklch(52% .08 300);paint-order:stroke fill;-webkit-text-stroke:4px oklch(98% .025 90);font-size:30px;line-height:1;position:absolute;bottom:-8px;right:-6px}.farm-badge.earned{background:oklch(94% .1 95);border-style:solid;border-color:oklch(78% .16 85)}.farm-badge.earned>span{filter:none;opacity:1}.farm-badge.earned b{color:oklch(67% .16 70)}.farm-party.celebrating .farm-badge{box-shadow:0 0 0 5px oklch(94% .1 95/.65)}.game:has(.deck:not([hidden])) .farm-party{top:clamp(118px,20vh,170px);bottom:auto}
