:root{--cream:#fff8ec;--cream-2:#f6ead3;--hedge:#2f5233;--hedge-2:#3f6b43;--ink:#3b2a1a;--ink-soft:#6d5640;--berry:#d6455d;--gold:#f2b632;--sky:#9fd6f0;--shadow:0 10px 30px #281e0a40;--font:var(--font-game), ui-rounded, system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--font);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;background:#000;margin:0}button{color:inherit;font-family:inherit}img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.screen{background-position:bottom;background-size:cover;background-color:var(--sky);flex-direction:column;align-items:center;min-height:100dvh;display:flex}.btn{background:var(--cream);color:var(--hedge);cursor:pointer;touch-action:manipulation;border:0;border-radius:999px;padding:.7rem 1.4rem;font-size:1.05rem;font-weight:700;box-shadow:inset 0 -4px #0000001f,0 3px 8px #00000026}.btn:active{transform:translateY(2px);box-shadow:inset 0 -2px #0000001f}.btn:disabled{opacity:.5}.btn.primary{background:var(--hedge-2);color:#fff}.btn.ghost{box-shadow:inset 0 0 0 2.5px var(--hedge-2);background:0 0}.btn.big{width:100%;padding:.9rem;font-size:1.25rem}.btn.small{padding:.5rem 1rem;font-size:.95rem}.btn.danger-btn{background:var(--berry);color:#fff}.icon-btn{background:var(--cream);width:44px;height:44px;color:var(--hedge);cursor:pointer;border:0;border-radius:50%;font-size:1.6rem;font-weight:700;line-height:1;box-shadow:0 3px 8px #0000002e}.link{color:var(--hedge-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;font-size:1rem;font-weight:700;text-decoration:underline}.splash{inset:calc(-1 * env(safe-area-inset-top)) 0 calc(-1 * env(safe-area-inset-bottom) - 120px);padding-top:env(safe-area-inset-top);padding-bottom:calc(env(safe-area-inset-bottom) + 120px);box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:50;background:#000;outline:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed}.splash-icon{width:min(38vw,170px);animation:.5s ease-in-out infinite alternate bop}.splash-word{clip-path:inset(0 100% 0 0);width:min(72vw,330px);margin-top:18px;animation:1.1s steps(10,end) .3s forwards typein}.splash-games{color:#fff;letter-spacing:.6em;opacity:0;margin:6px 0 0;font-size:.85rem;animation:.5s 1.4s forwards fade}.splash-tap{bottom:calc(max(70px, env(safe-area-inset-bottom) + 40px) + 120px);color:#c8f000;letter-spacing:.25em;opacity:0;margin:0;font-weight:700;animation:.4s 1.6s forwards fade,1.2s ease-in-out 2s infinite pulse;position:absolute}.splash.leaving .splash-icon{animation:.42s ease-in-out scratchjig,.4s cubic-bezier(.3,1.8,.5,1) .42s dropbounce}@keyframes scratchjig{0%,50%{transform:rotate(-14deg)translate(-6px)}25%,75%{transform:rotate(14deg)translate(6px)}to{transform:none}}@keyframes dropbounce{0%{transform:scale(1.25)}to{transform:scale(1)}}.splash.leaving{animation:.4s .75s forwards splashout}.splash.leaving .splash-tap{visibility:hidden}@keyframes bop{0%{transform:rotate(-6deg)translateY(0)}to{transform:rotate(6deg)translateY(-8px)}}@keyframes typein{to{clip-path:inset(0)}}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}@keyframes splashout{to{opacity:0}}.title-screen{justify-content:center;padding:16px}.title-card{background:color-mix(in srgb, var(--cream) 94%, transparent);width:100%;max-width:420px;box-shadow:var(--shadow);text-align:center;border-radius:28px;flex-direction:column;align-items:center;gap:.7rem;padding:1.6rem 1.4rem 1.2rem;display:flex}.title-card h1{color:var(--hedge);letter-spacing:-.5px;margin:0;font-size:3rem;line-height:1}.title-card h1 span{color:#a5703c}.tagline{color:var(--ink-soft);margin:0}.title-family{flex-wrap:wrap;justify-content:center;margin:.4rem 0 .6rem;display:flex}.title-family img{width:64px;height:64px;margin:0 -6px;animation:2.4s ease-in-out infinite hop}.progress-line,.free-line{color:var(--ink-soft);margin:0;font-size:.9rem}.title-links{gap:1.4rem;display:flex}.ip-backdrop{z-index:40;background:#1e28148c;justify-content:center;align-items:center;padding:16px;animation:.25s ease-out fade;display:flex;position:fixed;inset:0}.ip-panel{background:var(--cream);text-align:center;width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:26px;padding:1.2rem 1.3rem 1.1rem;animation:.35s cubic-bezier(.2,1.4,.4,1) rise}.ip-art{justify-content:center;height:96px;display:flex}.ip-art img{width:96px;height:96px;animation:2.2s ease-in-out infinite hop}.ip-art .ip-hog2{margin-left:-14px;animation-delay:.3s}.ip-title{color:var(--hedge);margin:.4rem 0 .3rem;font-size:1.6rem}.ip-text{color:var(--ink-soft);margin:0 0 .9rem;line-height:1.4}.ip-btn{width:100%;font:inherit;background:var(--hedge-2);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:.85rem;font-size:1.2rem;font-weight:700;box-shadow:inset 0 -4px #00000026,0 3px 8px #00000026}.ip-btn:active{transform:translateY(2px)}.ip-link{font:inherit;color:var(--hedge-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:.8rem auto 0;font-weight:700;text-decoration:underline;display:block}.ip-link-soft{opacity:.8;font-size:.9rem}.ip-hint{color:var(--ink-soft);margin:.6rem 0 0;font-size:.85rem}.ip-steps{text-align:left;background:var(--cream-2);border-radius:14px;margin:.8rem 0 0;padding:.6rem .8rem .6rem 2rem;line-height:1.5}.ip-share{border:1px solid var(--ink-soft);border-radius:4px;padding:0 4px;font-size:.8rem;display:inline-block}.ip-status{background:var(--cream-2);color:var(--hedge);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:.7rem;font-weight:700;display:flex}.ip-spin{border:3px solid var(--hedge-2);border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.ip-status-done .ip-spin{border:0;animation:none}@keyframes spin{to{transform:rotate(360deg)}}.topbar{width:100%;max-width:560px;padding:max(10px, env(safe-area-inset-top)) 16px 6px;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;display:grid}.topbar .title{text-align:center;background:var(--cream);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;padding:.45rem .8rem;font-size:1.15rem;font-weight:700;overflow:hidden;box-shadow:0 3px 8px #00000026}.topbar.solid{z-index:3;background:var(--sky);max-width:none;position:sticky;top:0}.hearts{background:var(--cream);border-radius:999px;min-width:44px;padding:.35rem .7rem;font-size:1.25rem;box-shadow:0 3px 8px #00000026}.heart{color:var(--berry);display:inline-block}.heart.lost{color:#d9cbb6;animation:.5s heartbreak}.level{height:100dvh;overflow:hidden}.family-bar{flex-wrap:nowrap;justify-content:center;gap:6px;max-width:560px;padding:4px 12px 8px;display:flex}.member{width:min(42px, calc((100vw - 24px) / var(--n,5) - 6px));height:min(42px, calc((100vw - 24px) / var(--n,5) - 6px));cursor:pointer;border:3px solid;border-radius:50%;padding:2px;transition:transform .15s;box-shadow:0 2px 6px #0000002e}.member img{object-fit:contain;filter:grayscale()brightness(.35)opacity(.55);width:100%;height:100%;transition:filter .4s}.member.found img{filter:none}.member.focus{transform:scale(1.15);box-shadow:0 0 0 3px #fff,0 3px 10px #0000004d}.board-wrap{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;padding:0 10px;display:flex}.board{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 10px 18px #1e1e0a59);cursor:pointer;width:min(100%,560px,100dvh - 260px)}.cross.fox{stroke:#c2410c;opacity:.75}.cross{stroke:#5a3b22;stroke-width:7px;stroke-linecap:round;opacity:.62;pointer-events:none}.hog{pointer-events:none}.hog.pop{animation:.45s cubic-bezier(.3,1.6,.5,1) pop}.is-celebrating .hog{animation:.6s ease-in-out 3 hop}.hl-cell{fill:#ffffff80;stroke:var(--gold);stroke-width:6px;pointer-events:none;animation:1.2s ease-in-out infinite glow}.ghost-cross{stroke:var(--berry);stroke-width:8px;stroke-linecap:round;fill:none;pointer-events:none;animation:1s ease-in-out infinite blink}.ghost-hog{fill:#3f6b4340;stroke:var(--hedge-2);stroke-width:6px;stroke-dasharray:10 8;pointer-events:none;animation:1s ease-in-out infinite blink}.fox-peek{pointer-events:none;animation:1.3s forwards foxpeek}.bottom{width:100%;max-width:560px;padding:8px 16px max(14px, env(safe-area-inset-bottom));align-items:flex-end;min-height:92px;display:flex}.controls{grid-template-columns:1fr auto 1fr;align-items:center;width:100%;display:grid}.timer{background:var(--cream);font-variant-numeric:tabular-nums;border-radius:999px;justify-self:start;padding:.4rem .8rem;font-weight:700;box-shadow:0 3px 8px #00000026}.right-icons{justify-self:end;gap:8px;display:flex}.icon-btn svg{margin:auto;display:block}.hint-btn{background:var(--gold);color:var(--ink);padding:.75rem 2.2rem;font-size:1.15rem}.hint-panel{background:var(--cream);width:100%;box-shadow:var(--shadow);border:3px solid var(--gold);border-radius:20px;padding:.8rem 1rem;animation:.25s rise}.hint-panel p{margin:.3rem 0 .6rem;line-height:1.35}.hint-panel .row{justify-content:flex-end;gap:8px;display:flex}.overlay{z-index:10;background:#1e281473;justify-content:center;align-items:center;padding:16px;animation:.2s fade;display:flex;position:fixed;inset:0}.card{background:var(--cream);width:100%;max-width:420px;max-height:92dvh;box-shadow:var(--shadow);text-align:center;border-radius:26px;padding:1.4rem;animation:.3s cubic-bezier(.3,1.4,.5,1) rise;overflow:auto}.card h2{color:var(--hedge);margin:.2rem 0 .5rem}.card p{line-height:1.4}.card-art{object-fit:contain;width:110px;height:110px}.card-art.big{width:150px;height:150px;animation:2s ease-in-out infinite hop}.eyebrow{color:#a5703c;text-transform:uppercase;letter-spacing:1px;margin:0;font-size:.85rem;font-weight:700}.small-print{color:var(--ink-soft);font-size:.88rem}.actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:.8rem;display:flex}.rules{text-align:left}.rules h2{text-align:center}.rules ul{padding-left:1.2rem;font-weight:700;line-height:1.5}.controls-help{background:var(--cream-2);border-radius:14px;padding:.6rem .8rem}.family-intro{text-align:left;gap:8px;margin:.6rem 0;display:grid}.family-intro div{grid-template-columns:48px 1fr;align-items:center;column-gap:10px;display:grid}.family-intro img{border:3px solid;border-radius:50%;grid-row:span 2;width:48px;height:48px;padding:2px}.family-intro span{color:var(--ink-soft);font-size:.88rem;line-height:1.25}.toggle{text-align:left;border-bottom:1px dashed #e2d3b8;align-items:center;gap:10px;padding:.55rem 0;font-weight:700;display:flex}.toggle input{width:22px;height:22px;accent-color:var(--hedge-2);flex:none}.danger{background:#fde8ea;border-radius:14px;margin-top:.8rem;padding:.4rem .8rem .8rem}.card>.link{margin-top:.8rem}.toast{background:var(--ink);color:#fff;z-index:30;white-space:nowrap;border-radius:999px;padding:.6rem 1.2rem;font-weight:700;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.share-text{width:100%;font:inherit;resize:none;background:#fff;border:2px solid #e2d3b8;border-radius:12px;padding:.6rem}.reunion{z-index:20;background-position:bottom;background-size:cover;justify-content:center;align-items:center;padding:16px;animation:.4s fade;display:flex;position:fixed;inset:0}.reunion-card{background:color-mix(in srgb, var(--cream) 92%, transparent);text-align:center;width:100%;max-width:520px;box-shadow:var(--shadow);border-radius:28px;max-height:96dvh;padding:1.2rem 1rem;overflow:auto}.reunion-card h2{color:var(--hedge);margin:0;font-size:2rem}.reunion-sub{color:var(--ink-soft);margin:.1rem 0 .4rem}.huddle{flex-wrap:wrap;justify-content:center;gap:4px 0;margin:.6rem auto .8rem;display:flex}.huddler{width:calc(100% / var(--per-row));flex-direction:column;align-items:center;max-width:120px;animation:.6s cubic-bezier(.3,1.5,.5,1) both hopin;display:flex}.huddle-name{color:var(--ink-soft);font-size:.78rem;font-weight:700}.cel{aspect-ratio:1;width:100%;position:relative}.cel>img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.stats{color:var(--ink-soft);flex-wrap:wrap;justify-content:center;gap:1.2rem;font-size:.9rem;display:flex}.stats b{color:var(--ink);font-size:1.3rem;display:block}.stats b i,.lvl-hearts i,.reunion i{color:#d9cbb6;font-style:normal}.stats b{color:var(--berry)}.stats span:first-child b,.stats span:last-child b{color:var(--ink)}.best{color:#a5703c;margin:.5rem 0 0;font-weight:700}.cel-burst{animation:.7s both burstpulse}.burst{opacity:0;border:6px dotted #a5703c;border-radius:50%;animation:.8s ease-out both burstring;position:absolute;inset:10%}.cel-split .split-ghost{opacity:0;animation:1.1s both split-l}.cel-split .split-ghost.r{animation-name:split-r}.cel-flop>img{animation:1.2s both flop;animation-delay:inherit}.cel-flop{animation:none}.zzz{color:#5f6576;opacity:0;font-size:.8rem;font-weight:700;animation:2s ease-in-out infinite both zzz;position:absolute;top:-6px;right:-2px}.cel-laps{animation:1.1s ease-in-out both laps}.cel-puff{animation:1.1s cubic-bezier(.3,1.6,.5,1) both puffup}.cel-burrow{clip-path:inset(-60% -60% 0)}.cel-burrow>img{animation:1.2s both burrow;animation-delay:inherit}.cel-roll{animation:1.2s ease-in-out both roll}.cel-launch{animation:1.4s ease-in-out both launch}.cel-launch .flame{opacity:0;width:32%;height:auto;animation:1.4s ease-in-out both flame;inset:72% auto auto 34%}.cel-boing{animation:1.5s both boing}.cel-wobble{animation:1.2s both wobble}.worlds-screen{background:linear-gradient(#9fd6f0,#cfeac0);height:100dvh}.worlds{flex-direction:column;flex:1;gap:12px;width:100%;max-width:560px;padding:8px 16px 40px;display:flex;overflow:auto}.world{background:var(--cream);border-radius:22px;flex:none;overflow:hidden;box-shadow:0 4px 12px #00000026}.world.locked{opacity:.7}.world.locked .world-head{filter:grayscale(.7)}.world-head{cursor:pointer;background-position:50% 70%;background-size:cover;border:0;justify-content:space-between;align-items:flex-end;width:100%;height:96px;padding:10px 12px;display:flex;position:relative}.world-name{background:var(--cream);text-align:left;border-radius:14px;flex-direction:column;padding:.35rem .75rem;font-size:1.1rem;font-weight:700;display:flex}.world-name small{color:var(--ink-soft);font-size:.8rem}.world-hog{width:64px;height:64px}.world-mystery{color:#fff;background:#3b2a1abf;border-radius:50%;place-items:center;width:52px;height:52px;font-size:1.8rem;font-weight:700;display:grid}.levels{grid-template-columns:repeat(4,1fr);gap:8px;padding:12px;display:grid}.lvl{aspect-ratio:1.15;cursor:pointer;background:#fff;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;box-shadow:inset 0 -4px #00000014,0 2px 5px #0000001f}.lvl.done{background:#e3f1d4}.lvl.locked{color:#b9a88f;cursor:default;background:#eee4d3}.lvl-num{font-size:1.35rem;font-weight:700}.lvl-hearts{color:var(--berry);letter-spacing:1px;font-size:.8rem}.lvl-note{color:#a5703c;font-size:.72rem;font-weight:700}@keyframes hop{0%,to{transform:translateY(0)}50%{transform:translateY(-8%)}}@keyframes pop{0%{transform:scale(.2)}to{transform:scale(1)}}@keyframes glow{0%,to{opacity:.55}50%{opacity:1}}@keyframes blink{0%,to{opacity:.35}50%{opacity:.95}}@keyframes foxpeek{0%{opacity:0;transform:scale(.3)rotate(-20deg)}20%{opacity:1;transform:scale(1.05)rotate(4deg)}30%,75%{opacity:1;transform:scale(1)rotate(0)}to{opacity:0;transform:scale(.6)translateY(30px)}}@keyframes heartbreak{0%{color:var(--berry);transform:scale(1.6)}to{transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes hopin{0%{opacity:0;transform:translateY(60px)scale(.6)}to{opacity:1;transform:none}}@keyframes burstpulse{0%,to{transform:scale(1)}40%{transform:scale(1.18)rotate(-6deg)}}@keyframes burstring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}@keyframes split-l{0%{opacity:0;transform:none}30%,60%{opacity:.9;transform:translate(-55%)scale(.75)}to{opacity:0;transform:none}}@keyframes split-r{0%{opacity:0;transform:none}30%,60%{opacity:.9;transform:translate(55%)scale(.75)}to{opacity:0;transform:none}}@keyframes flop{0%{transform:none}30%{transform:scale(1.15,.8)translateY(10%)}60%,to{transform:scale(1.05,.92)translateY(4%)}}@keyframes zzz{0%{opacity:0;transform:translateY(0)}30%{opacity:1}to{opacity:0;transform:translateY(-20px)}}@keyframes laps{0%,to{transform:none}20%{transform:translate(-60%)scaleX(-1)}45%{transform:translate(60%)}70%{transform:translate(-40%)scaleX(-1)}90%{transform:translate(10%)}}@keyframes puffup{0%,to{transform:none}40%,60%{transform:scale(1.45)}}@keyframes burrow{0%,to{transform:none}35%,55%{transform:translateY(100%)}75%{transform:translateY(-14%)}}@keyframes roll{0%,to{transform:none}50%{transform:translate(45%)rotate(360deg)}}@keyframes launch{0%,to{transform:none}45%,55%{transform:translateY(-130%)}}@keyframes flame{0%,to{opacity:0}10%,60%{opacity:1}}@keyframes boing{0%,to{transform:none}15%{transform:translateY(-45%)}30%{transform:scale(1.1,.85)}45%{transform:translateY(-30%)}60%{transform:scale(1.05,.9)}75%{transform:translateY(-15%)}}@keyframes wobble{0%,to{transform:none}20%{transform:skew(12deg)scale(1.08,.94)}40%{transform:skew(-10deg)scale(.95,1.06)}60%{transform:skew(6deg)}80%{transform:skew(-3deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}
@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/b6df7c92285ebcd2-s.0y4xxz2y19qqs.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/eeba9b1ad34c1404-s.0yczt4r3j28ff.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/5d52bd6c4cb3f315-s.p.0ez3bnoxb63ra.woff2)format("woff2");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:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/b6df7c92285ebcd2-s.0y4xxz2y19qqs.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/eeba9b1ad34c1404-s.0yczt4r3j28ff.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/5d52bd6c4cb3f315-s.p.0ez3bnoxb63ra.woff2)format("woff2");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:Fredoka Fallback;src:local(Arial);ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.0%;size-adjust:101.84%}.wHEOYW_className{font-family:Fredoka,Fredoka Fallback;font-style:normal}.wHEOYW_variable{--font-game:"Fredoka", "Fredoka Fallback"}
