*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;background:radial-gradient(260px 140px at 8% 20%,#0a0401bf 0%,#0000 100%),radial-gradient(200px 100px at 92% 65%,#080300a6 0%,#0000 100%),radial-gradient(300px 180px at 55% 88%,#0c05018c 0%,#0000 100%),radial-gradient(400px 120px at 50% 48%,#a05a1e2e 0%,#0000 100%),linear-gradient(185deg,#140702 0%,#2e1508 12%,#5a3018 28%,#7a4422 44%,#6a3818 60%,#3e1c08 76%,#160803 100%);justify-content:center;align-items:center;min-height:100dvh;font-family:Nunito,Segoe UI,sans-serif;display:flex;position:relative;overflow:hidden}body:before{content:"";pointer-events:none;z-index:0;background:repeating-linear-gradient(#0000 0 55px,#0000000b 55px 56px);position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(28px 18px at 6% 40%,#1e0e05b3 60%,#0000 100%),radial-gradient(18px 12px at 9% 72%,#190b0499 60%,#0000 100%),radial-gradient(22px 14px at 93% 28%,#1c0c0499 60%,#0000 100%),radial-gradient(34px 20px at 88% 55%,#140903b3 60%,#0000 100%),radial-gradient(16px 10px at 78% 82%,#200e0580 60%,#0000 100%),radial-gradient(24px 15px at 20% 85%,#160a0399 60%,#0000 100%);position:fixed;inset:0}#root{z-index:1;position:relative}:root{--hole-w:130px;--hole-h:145px;--gap:14px;--board-pad:22px;--title-size:3.5rem;--stat-size:2.2rem;--label-size:.7rem;--mole-size:calc(var(--hole-w) * .6);--potion-size:calc(var(--hole-w) * .58)}@media (height<=820px) and (orientation:landscape){:root{--hole-w:100px;--hole-h:112px;--gap:10px;--board-pad:14px;--title-size:2rem;--stat-size:1.7rem;--label-size:.62rem}}@media (width<=700px){:root{--hole-w:100px;--hole-h:112px;--gap:10px;--board-pad:16px;--title-size:2.6rem;--stat-size:1.9rem;--label-size:.65rem}}@media (width<=480px){:root{--hole-w:88px;--hole-h:98px;--gap:8px;--board-pad:12px;--title-size:2.2rem;--stat-size:1.6rem;--label-size:.6rem}}@media (width<=360px){:root{--hole-w:72px;--hole-h:80px;--gap:6px;--board-pad:10px;--title-size:1.8rem;--stat-size:1.4rem;--label-size:.55rem}}.game-container{isolation:isolate;flex-direction:column;align-items:center;gap:16px;padding:24px 28px;display:flex;position:relative}@media (height<=820px) and (orientation:landscape){.game-container{gap:10px;padding:12px 20px}}@media (width<=480px){.game-container{gap:12px;padding:16px 12px}}.fur-title{width:420px;max-width:92vw;height:auto}@media (width<=700px){.fur-title{width:320px}}@media (width<=480px){.fur-title{width:260px}}@media (width<=360px){.fur-title{width:210px}}@media (height<=820px) and (orientation:landscape){.fur-title{width:260px}}.scoreboard{background:#00000073;border:2px solid #ffffff1a;border-radius:18px;display:flex;overflow:hidden}.stat{flex-direction:column;align-items:center;gap:2px;padding:10px 18px 8px;display:flex}@media (width<=480px){.stat{padding:8px 12px 6px}}.stat+.stat{border-left:1px solid #ffffff1a}.stat-label{font-size:var(--label-size);color:#ffffff8c;text-transform:uppercase;letter-spacing:2px;font-weight:700}.stat-value{font-size:var(--stat-size);color:#fff;text-align:center;min-width:2.5ch;font-weight:900;line-height:1;transition:color .4s}.level-next{color:#fff6;letter-spacing:.3px;white-space:nowrap;margin-top:2px;font-size:.58rem}.timer-bar-track{background:#ffffff2e;border-radius:3px;width:60px;height:5px;margin-top:5px;overflow:hidden}@media (width<=480px){.timer-bar-track{width:44px}}.timer-bar-fill{border-radius:3px;height:100%;transition:width 1s linear,background-color .5s}.boost-slot{justify-content:center;align-items:center;height:46px;display:flex}.boost-indicator{background:#7828c859;border:2px solid #be6eff8c;border-radius:50px;align-items:center;gap:8px;padding:7px 16px;animation:.55s ease-in-out infinite alternate boostGlow;display:flex}.boost-icon{font-size:1.2rem;line-height:1}.boost-badge{color:#d08bff;text-shadow:0 0 10px #c878ffcc;font-size:1.4rem;font-weight:900}.boost-timer{color:#ffffffbf;min-width:2ch;font-size:.9rem;font-weight:700}.boost-bar-track{background:#ffffff2e;border-radius:3px;width:50px;height:5px;overflow:hidden}.boost-bar-fill{background:#c070ff;border-radius:3px;height:100%;transition:width 1s linear}@keyframes boostGlow{0%{box-shadow:0 0 8px #8c3cff4d}to{box-shadow:0 0 22px #c864ffa6}}.board{padding:var(--board-pad);background:linear-gradient(175deg,#6b3c1c 0%,#4a2710 100%);border:2px solid #351508;border-radius:24px;box-shadow:0 10px #271205,0 16px 36px #000000a6,inset 0 1px #ffffff14}.grid{grid-template-columns:repeat(3, var(--hole-w));grid-template-rows:repeat(3, var(--hole-h));gap:var(--gap);display:grid}.hole{width:var(--hole-w);height:var(--hole-h);cursor:pointer;touch-action:manipulation;position:relative}.hole:before{content:"";bottom:calc(var(--hole-h) * .193);width:calc(var(--hole-w) * .738);height:calc(var(--hole-h) * .469);z-index:1;background:radial-gradient(#020100 30%,#0e0600 100%);border-radius:50%;position:absolute;left:50%;transform:translate(-50%);box-shadow:inset 0 4px 14px #000000f2}.mole-area{bottom:calc(var(--hole-h) * .448);height:calc(var(--hole-h) * .69);z-index:2;position:absolute;left:0;right:0;overflow:hidden}.mole,.potion{-webkit-user-select:none;user-select:none;pointer-events:none;line-height:1;transition:transform .22s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:0;left:50%;transform:translate(-50%)translateY(110%)}.mole{width:var(--mole-size);font-size:var(--mole-size);filter:drop-shadow(0 6px 8px #0000008c)}.potion{font-size:var(--potion-size)}.has-mole .mole{transform:translate(-50%)translateY(0%)}.smashed .mole{transition:transform 80ms cubic-bezier(.25,.46,.45,.94);transform:translate(-50%)translateY(-18%)scale(1.3)}.has-potion .potion{animation:.75s ease-in-out infinite alternate potionPulse;transform:translate(-50%)translateY(0%)}@keyframes potionPulse{0%{filter:drop-shadow(0 0 8px #aa50ffcc)}to{filter:drop-shadow(0 0 22px #dc8cff)brightness(1.2)}}.trap{font-size:var(--potion-size);-webkit-user-select:none;user-select:none;pointer-events:none;line-height:1;transition:transform .22s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:0;left:50%;transform:translate(-50%)translateY(110%)}.has-trap .trap{animation:.65s ease-in-out infinite alternate trapPulse;transform:translate(-50%)translateY(0%)}@keyframes trapPulse{0%{filter:drop-shadow(0 0 8px #ff3232d9)}to{filter:drop-shadow(0 0 24px #ff5a5a)brightness(1.15)}}.has-trap .dirt-mound{animation:.65s ease-in-out infinite alternate dirtTrap}@keyframes dirtTrap{0%{box-shadow:inset 0 -10px 22px #0006,0 0 14px #dc282880}to{box-shadow:inset 0 -10px 22px #0006,0 0 32px #ff4646e6}}.dirt-mound{width:var(--hole-w);height:calc(var(--hole-h) * .497);z-index:3;background:radial-gradient(at 50% 28%,#c08048 0%,#9b6030 35%,#6e4020 65%,#4a2c0e 100%);border-radius:50%;transition:filter .15s,box-shadow .3s;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:inset 0 -10px 22px #0006,inset 0 4px 10px #ffffff12,0 8px 16px #0000008c}.hole:hover .dirt-mound{filter:brightness(1.12)}.smashed .dirt-mound{filter:brightness(1.2)}.has-potion .dirt-mound{animation:.75s ease-in-out infinite alternate dirtGlow}@keyframes dirtGlow{0%{box-shadow:inset 0 -10px 22px #0006,0 0 14px #9632f080}to{box-shadow:inset 0 -10px 22px #0006,0 0 32px #c864ffd9}}.score-popup{color:gold;text-shadow:2px 2px #0006,0 0 14px #ffc800b3;z-index:10;pointer-events:none;font-size:2rem;font-weight:900;animation:.7s ease-out forwards floatUp;position:absolute;top:18px;left:50%}.boost-popup{color:#d08bff;text-shadow:2px 2px #0006,0 0 18px #c864ffe6;font-size:2.4rem}.trap-popup{color:#f55;text-shadow:2px 2px #0006,0 0 18px #ff3c3ce6;font-size:2.4rem}.mole-tongue{transform-box:fill-box;transform-origin:50% 0;animation:.45s cubic-bezier(.34,1.56,.64,1) both tongueOut}@keyframes tongueOut{0%{opacity:0;transform:scaleY(0)rotate(0)}22%{opacity:1;transform:scaleY(1.3)rotate(-12deg)}42%{transform:scaleY(.9)rotate(14deg)}60%{transform:scaleY(1.05)rotate(-10deg)}76%{transform:scaleY(1)rotate(8deg)}90%{transform:scaleY(1)rotate(-5deg)}to{opacity:1;transform:scaleY(1)rotate(3deg)}}@keyframes floatUp{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-80px)}}.levelup-notif{color:gold;text-shadow:3px 3px #00000080,0 0 30px #ffd200cc;pointer-events:none;z-index:100;white-space:nowrap;font-size:clamp(2rem,6vw,3.5rem);font-weight:900;animation:1.4s ease-out forwards levelUpPop;position:fixed;top:50%;left:50%}@keyframes levelUpPop{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}25%{opacity:1;transform:translate(-50%,-50%)scale(1.25)}55%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-60%)scale(1)}}.overlay{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000009e;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:absolute;inset:0}.result{text-align:center}.result-score{color:#fff;text-shadow:0 4px 14px #00000080;font-size:clamp(3rem,8vw,5rem);font-weight:900;line-height:1}.result-label{color:#ffffffa6;letter-spacing:1px;text-transform:uppercase;margin-top:6px;font-size:.9rem}.result-level{color:#ffffff80;margin-top:8px;font-size:.95rem}.new-best{color:gold;text-shadow:0 2px 8px #0006;margin-top:12px;font-size:1.1rem;font-weight:700}.start-btn{color:#fff;cursor:pointer;touch-action:manipulation;letter-spacing:1px;background:linear-gradient(#ff7c38 0%,#e04e12 100%);border:none;border-radius:50px;padding:14px 48px;font-family:inherit;font-size:clamp(1.2rem,3.5vw,1.5rem);font-weight:900;transition:transform .1s,box-shadow .1s;box-shadow:0 7px #a83006,0 10px 26px #00000073}.start-btn:hover{transform:translateY(-3px);box-shadow:0 10px #a83006,0 14px 30px #00000073}.start-btn:active{transform:translateY(3px);box-shadow:0 4px #a83006,0 5px 14px #00000059}.record-stat{cursor:pointer}.cheat-level{color:#ff8c00;animation:.55s ease-in-out infinite alternate cheatPulse}@keyframes cheatPulse{0%{text-shadow:0 0 6px #ff8c0080}to{text-shadow:0 0 22px #ffb400;opacity:.85}}.copyright{color:#ffdcaa38;letter-spacing:.1em;pointer-events:none;white-space:nowrap;z-index:2;font-size:.6rem;font-weight:600;position:fixed;bottom:8px;left:50%;transform:translate(-50%)}
