@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(./baloo-2-devanagari-500-normal-Ddzk8H1G.woff2) format("woff2"),url(./baloo-2-devanagari-500-normal-BGpOhOmM.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(./baloo-2-vietnamese-500-normal-Cj5RGu3k.woff2) format("woff2"),url(./baloo-2-vietnamese-500-normal-ClyrcyJC.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(./baloo-2-latin-ext-500-normal-Ba7mhTsk.woff2) format("woff2"),url(./baloo-2-latin-ext-500-normal-D1XZow3C.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(./baloo-2-latin-500-normal-CmLZ27r7.woff2) format("woff2"),url(./baloo-2-latin-500-normal-BSdEhq8m.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(./baloo-2-devanagari-700-normal-D37Te3iF.woff2) format("woff2"),url(./baloo-2-devanagari-700-normal-CEIF4sJg.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(./baloo-2-vietnamese-700-normal-h4tlcePq.woff2) format("woff2"),url(./baloo-2-vietnamese-700-normal-DoF59Mjc.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(./baloo-2-latin-ext-700-normal-Mlh7kdab.woff2) format("woff2"),url(./baloo-2-latin-ext-700-normal-D6LeXASg.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(./baloo-2-latin-700-normal-CqTg7A15.woff2) format("woff2"),url(./baloo-2-latin-700-normal-Ld3Zm3l2.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(./kanit-thai-400-normal-D80Pglro.woff2) format("woff2"),url(./kanit-thai-400-normal-D2nliXKa.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(./kanit-vietnamese-400-normal-DRI8YWyb.woff2) format("woff2"),url(./kanit-vietnamese-400-normal-dow6Bnto.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(./kanit-latin-ext-400-normal-B2xPf58u.woff2) format("woff2"),url(./kanit-latin-ext-400-normal-CHvNKHHD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(./kanit-latin-400-normal-BUlsQXH3.woff2) format("woff2"),url(./kanit-latin-400-normal-HVZWrfev.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(./kanit-thai-600-normal-Bj6oiaDc.woff2) format("woff2"),url(./kanit-thai-600-normal-wbTlPO7I.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(./kanit-vietnamese-600-normal-Bi7fw3I4.woff2) format("woff2"),url(./kanit-vietnamese-600-normal-DXCRAa_8.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(./kanit-latin-ext-600-normal-DAX3wtuq.woff2) format("woff2"),url(./kanit-latin-ext-600-normal-BBDzoLaj.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(./kanit-latin-600-normal-0lS78yAd.woff2) format("woff2"),url(./kanit-latin-600-normal-DlacpeTg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(./kanit-thai-700-normal-BPu_EjOu.woff2) format("woff2"),url(./kanit-thai-700-normal-BFFnaoRZ.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(./kanit-vietnamese-700-normal-CdlTihzi.woff2) format("woff2"),url(./kanit-vietnamese-700-normal-BlUBAAZx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(./kanit-latin-ext-700-normal-CcNUUlTS.woff2) format("woff2"),url(./kanit-latin-ext-700-normal-2PbN0JCr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(./kanit-latin-700-normal-xfKc2BN3.woff2) format("woff2"),url(./kanit-latin-700-normal-CZbzRMIr.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #4a3f55;--ink-soft: #7a6f8a;--paper: #fff7ec;--paper-2: #ffeed8;--card: #ffffff;--coral: #ff8fab;--tangerine: #ffb35c;--sunshine: #ffd93d;--lime: #9bde7e;--mint: #5fd4b0;--sky: #6ecbf5;--periwinkle: #8e9bff;--lilac: #c79bf2;--shadow: 0 6px 0 rgba(74, 63, 85, .14);--radius: 24px;--font-display: "Baloo 2", "Kanit", sans-serif;--font-body: "Kanit", "Baloo 2", sans-serif}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--ink);background:linear-gradient(180deg,var(--paper) 0%,#eaf6ff 100%);overscroll-behavior:none;user-select:none;-webkit-user-select:none}html[data-lang=en] body{font-family:var(--font-display)}button{font-family:inherit;color:inherit;border:none;background:none;cursor:pointer;touch-action:manipulation}.menu-screen{min-height:100%;max-width:460px;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:18px;overflow-y:auto}.menu-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.version-tag{margin-top:auto;text-align:center;font-size:12px;opacity:.45;-webkit-user-select:none;user-select:none}.title-hero{text-align:center;margin-top:4vh}.title-critters{font-size:34px;letter-spacing:12px}.title-critter{display:inline-block;animation:bob 1.8s ease-in-out infinite}.tc-2{animation-delay:.3s}.tc-3{animation-delay:.6s}.game-title{font-family:var(--font-display);font-size:clamp(44px,13vw,60px);font-weight:700;line-height:1.05;background:linear-gradient(90deg,var(--coral),var(--tangerine),var(--sky),var(--lilac));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 0 rgba(74,63,85,.18))}.game-tagline{margin-top:6px;font-size:17px;color:var(--ink-soft)}.how-card{background:var(--card);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px}.how-title{font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px;color:var(--ink-soft)}.how-line{font-size:16px}.how-line-expert{font-size:13px;color:var(--ink-soft);border-top:2px dashed #f0e6da;padding-top:8px}.best-strip{text-align:center;background:var(--paper-2);border-radius:16px;padding:10px;font-size:16px}.menu-actions{margin-top:auto;display:flex;flex-direction:column;gap:12px}.button-row{display:flex;gap:12px}.button-row>*{flex:1}.big-button{font-family:var(--font-display);font-size:24px;font-weight:700;padding:18px;border-radius:28px;background:var(--card);box-shadow:var(--shadow);transition:transform .08s ease}.big-button:active{transform:translateY(3px) scale(.99)}.play-button{background:linear-gradient(180deg,var(--sunshine),var(--tangerine));color:#5c421b}.soft-button{font-size:17px;font-weight:600;padding:13px 16px;border-radius:20px;background:var(--card);box-shadow:var(--shadow);transition:transform .08s ease}.soft-button:active{transform:translateY(3px)}.chip-button{font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;background:var(--card);box-shadow:var(--shadow)}.danger-button{color:#d14b6a}.danger-armed{background:#ffe1e8;animation:shake-x .4s ease}.lang-toggle{display:flex;background:var(--card);border-radius:999px;box-shadow:var(--shadow);overflow:hidden}.lang-option{font-size:13px;font-weight:600;padding:8px 12px;color:var(--ink-soft)}.lang-option-on{background:var(--sky);color:#133c52}.results-title,.stats-title{font-family:var(--font-display);text-align:center;font-size:34px;margin-top:2vh}.record-badge{align-self:center;background:linear-gradient(90deg,var(--sunshine),var(--coral));color:#5c2b3a;font-weight:700;padding:8px 20px;border-radius:999px;box-shadow:var(--shadow);animation:pop-in .45s cubic-bezier(.34,1.56,.64,1)}.score-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;padding:18px}.score-card-label{font-size:14px;text-transform:uppercase;letter-spacing:1px;color:var(--ink-soft)}.score-card-value{font-family:var(--font-display);font-size:52px;font-weight:700;line-height:1.1}.is-record{color:#e8862d}.result-rows{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px 18px}.result-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;font-size:16px}.result-row+.result-row{border-top:2px dashed #f0e6da}.stats-empty{text-align:center;color:var(--ink-soft);margin-top:6vh;font-size:17px}.skill-list{display:flex;flex-direction:column;gap:12px}.skill-row{background:var(--card);border-radius:20px;box-shadow:var(--shadow);padding:12px 16px}.skill-head{display:flex;justify-content:space-between;align-items:baseline}.skill-name{font-weight:600;font-size:15px}.skill-value{font-family:var(--font-display);font-size:20px}.skill-bar{margin-top:6px;height:12px;border-radius:999px;background:var(--paper-2);overflow:hidden}.skill-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--mint),var(--sky));transition:width .6s cubic-bezier(.34,1.56,.64,1)}.skill-desc{margin-top:6px;font-size:12.5px;color:var(--ink-soft)}.play-screen{height:100%;display:flex;flex-direction:column;padding:max(10px,env(safe-area-inset-top)) 0 max(12px,env(safe-area-inset-bottom));max-width:560px;margin:0 auto;width:100%}.hud{display:flex;align-items:center;justify-content:space-between;padding:4px 16px}.hud-hearts{position:relative;display:flex;align-items:center;gap:4px;font-size:24px}.hud-hearts-shake{animation:hud-shake .18s ease}.heart-slot{position:relative;display:inline-block}.heart-icon{display:block;width:1em;height:1em;fill:currentColor}.heart{color:var(--coral);display:inline-block;animation:pop-in .3s cubic-bezier(.34,1.56,.64,1)}.heart-empty{color:#4a3f552e}.heart-break-fx{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.heart-breaking{position:absolute;top:0;right:0;bottom:0;left:0;color:var(--coral);animation:heart-shatter .38s cubic-bezier(.36,0,.66,1) forwards}.heart-shard{position:absolute;left:50%;top:50%;width:5px;height:5px;border-radius:2px;background:#ff3b60;animation:shard-fly .4s ease-out forwards}.heart-minus{position:absolute;left:100%;top:-4px;margin-left:8px;font-size:13px;font-weight:700;letter-spacing:0;color:#d14b6a;white-space:nowrap;animation:heart-minus-float .55s ease-out forwards}.damage-vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none;box-shadow:inset 0 0 90px 26px #ff3c5a80;animation:vignette-fade .38s ease-out forwards}.hud-score,.hud-pool{text-align:center}.hud-pool-label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:var(--ink-soft)}.hud-pool-value{display:block;font-family:var(--font-display);font-size:18px;font-weight:700;line-height:1.1;animation:pool-pop .3s cubic-bezier(.34,1.56,.64,1)}.hud-score-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--ink-soft)}.hud-score-value{font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1}.hud-time{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--ink-soft);min-width:52px;text-align:right}.rule-slot{position:relative;min-height:34px;display:flex;justify-content:center;padding:0 16px}.rule-chip{display:flex;align-items:center;gap:8px;background:var(--periwinkle);color:#fff;border-radius:999px;padding:5px 14px;font-size:13px;box-shadow:var(--shadow);animation:pop-in .35s cubic-bezier(.34,1.56,.64,1)}.rule-chip-name{font-weight:700}.rule-chip-desc{opacity:.85;font-size:12px}.rule-chip-timer{background:#ffffff40;border-radius:999px;min-width:22px;text-align:center;font-weight:700}.rule-splash{position:absolute;top:40px;left:50%;transform:translate(-50%);z-index:30;text-align:center;background:var(--card);border-radius:20px;box-shadow:var(--shadow);padding:12px 26px;animation:splash 2.4s ease forwards;pointer-events:none;white-space:nowrap}.rule-splash-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--periwinkle)}.rule-splash-rule{font-family:var(--font-display);font-size:22px;font-weight:700}.rule-splash-desc{display:block;font-size:13px;font-weight:400;color:var(--ink-soft)}.stage-host{position:relative;flex:1;min-height:0;overflow:hidden;border-radius:26px;margin:6px 12px;box-shadow:inset 0 0 0 4px #4a3f551a}.stage-host canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block}.countdown{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-display);font-size:110px;font-weight:700;color:#fff;-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;text-shadow:0 6px 0 rgba(74,63,85,.2);animation:count-pop .8s cubic-bezier(.34,1.56,.64,1);pointer-events:none;z-index:20}.feedback-popup{position:absolute;top:16%;left:30%;transform:translate(-50%);z-index:25;text-align:center;pointer-events:none;animation:float-up .9s ease forwards}.feedback-text{display:block;font-family:var(--font-display);font-size:34px;font-weight:700;color:#fff;-webkit-text-stroke:2.5px var(--ink);paint-order:stroke fill}.feedback-good .feedback-text{color:var(--lime)}.feedback-great .feedback-text{color:var(--sunshine);font-size:40px}.feedback-bad .feedback-text{color:var(--coral)}.feedback-perfect{animation:float-up 1.15s ease forwards}.feedback-perfect .feedback-text{color:var(--sunshine);font-size:44px;-webkit-text-stroke:3px var(--ink);text-shadow:0 0 18px rgba(255,217,61,.9),0 4px 0 rgba(74,63,85,.25);animation:perfect-slam .5s cubic-bezier(.22,1.6,.36,1)}.feedback-chain-lost{display:block;font-size:14px;font-weight:700;color:#d14b6a;background:#ffffffd9;border-radius:999px;padding:2px 12px;margin-top:4px}.feedback-sub{display:block;font-size:15px;font-weight:700;color:var(--ink);background:#ffffffd9;border-radius:999px;padding:2px 12px;margin-top:4px}.play-footer{display:flex;flex-direction:column;gap:8px;padding:4px 16px 0}.chain-meter{display:flex;align-items:center;gap:10px;min-height:26px;padding:0 6px}.chain-label{display:flex;align-items:baseline;gap:7px}.chain-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--ink-soft);white-space:nowrap}.chain-count{font-family:var(--font-display);font-weight:700;font-size:19px;line-height:1;color:var(--tier-color);min-width:44px}.chain-count-on{animation:chain-tick .22s ease}.chain-bar{flex:1;height:10px;border-radius:999px;background:#4a3f551a;overflow:hidden}.chain-bar-fill{height:100%;border-radius:999px;background:var(--tier-color);transition:width .25s ease}.chain-flow-2 .chain-bar-fill,.chain-flow-3 .chain-bar-fill,.chain-flow-4 .chain-bar-fill{box-shadow:0 0 10px var(--tier-color)}.chain-bar-max{animation:chain-max-pulse 1.1s ease-in-out infinite}.chain-bar-snapped{animation:chain-snap .3s ease}.chain-tier{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--ink-soft);min-width:64px;text-align:right;white-space:nowrap}.chain-tier-on{color:var(--tier-color);animation:pop-in .3s cubic-bezier(.34,1.56,.64,1)}.flow-1 .stage-host{box-shadow:inset 0 0 0 4px #6ecbf566,0 0 16px #6ecbf559}.flow-2 .stage-host{box-shadow:inset 0 0 0 4px #c79bf280,0 0 22px #c79bf280}.flow-3 .stage-host{animation:flow-breathe-3 2s ease-in-out infinite}.flow-4 .stage-host{animation:flow-breathe-4 1.3s ease-in-out infinite}.play-buttons{display:flex;gap:10px;align-items:stretch}.play-buttons .tap-button{flex:1;min-width:0}.flash-pass-button{flex:0 0 auto;width:104px;min-height:96px;border-radius:26px;background:var(--card);color:var(--ink-soft);font-family:var(--font-display);font-size:14px;font-weight:700;line-height:1.15;box-shadow:0 6px #4a3f5524;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px;transition:transform .06s ease,box-shadow .06s ease}.flash-pass-button:active{transform:translateY(4px);box-shadow:0 2px #4a3f5524}.flash-pass-button:disabled{filter:saturate(.4) brightness(1.05)}.flash-pass-bolt{font-size:20px}.tap-button{font-family:var(--font-display);font-size:27px;font-weight:700;min-height:96px;border-radius:32px;background:linear-gradient(180deg,var(--sky),#4db4e8);color:#0e3a52;box-shadow:0 8px #3391c4;display:flex;align-items:center;justify-content:center;gap:12px;transition:transform .06s ease,box-shadow .06s ease;animation:button-bounce .25s ease}.tap-button:active{transform:translateY(6px);box-shadow:0 2px #3391c4}.tap-button:disabled{filter:saturate(.4) brightness(1.05)}.tap-button-eyes{font-size:32px}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pop-in{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}@keyframes count-pop{0%{transform:scale(.3);opacity:0}55%{transform:scale(1.15);opacity:1}to{transform:scale(1)}}@keyframes float-up{0%{transform:translate(-50%,14px) scale(.6);opacity:0}20%{transform:translate(-50%) scale(1.08);opacity:1}70%{opacity:1}to{transform:translate(-50%,-26px) scale(1);opacity:0}}@keyframes splash{0%{transform:translate(-50%) scale(.5);opacity:0}12%{transform:translate(-50%) scale(1.06);opacity:1}80%{transform:translate(-50%) scale(1);opacity:1}to{transform:translate(-50%) scale(.94);opacity:0}}@keyframes shake-x{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes button-bounce{0%{transform:scale(1)}40%{transform:scale(.96)}to{transform:scale(1)}}@keyframes heart-shatter{0%{transform:scale(1);opacity:1}35%{transform:scale(1.45);color:#ff1f4b;filter:drop-shadow(0 0 8px rgba(255,31,75,.85));opacity:1}60%{transform:scale(1.15) rotate(-8deg);color:#ff1f4b}to{transform:scale(.25) rotate(14deg);opacity:0}}@keyframes shard-fly{0%{transform:translate(-50%,-50%);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(170deg);opacity:0}}@keyframes hud-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}50%{transform:translate(3px)}75%{transform:translate(-2px)}}@keyframes heart-minus-float{0%{transform:translateY(6px);opacity:0}25%{transform:translateY(0);opacity:1}70%{opacity:1}to{transform:translateY(-14px);opacity:0}}@keyframes vignette-fade{0%{opacity:1}to{opacity:0}}@keyframes chain-snap{0%{transform:translate(0);box-shadow:0 0 0 2px #ff3c5acc,0 0 14px #ff3c5a99}25%{transform:translate(-5px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}to{transform:translate(0)}}@keyframes pool-pop{0%{transform:scale(1.35);color:var(--mint)}to{transform:scale(1)}}@keyframes chain-tick{0%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes chain-max-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.45)}}@keyframes perfect-slam{0%{transform:scale(2.4);opacity:0}45%{transform:scale(.92);opacity:1}to{transform:scale(1)}}@keyframes flow-breathe-3{0%,to{box-shadow:inset 0 0 0 4px #ff8fab80,0 0 20px #ff8fab73}50%{box-shadow:inset 0 0 0 4px #ff8fabbf,0 0 34px #ff8fabb3}}@keyframes flow-breathe-4{0%,to{box-shadow:inset 0 0 0 4px #ffd93d99,0 0 26px #ffd93d8c,0 0 60px #ffb35c59}50%{box-shadow:inset 0 0 0 5px #ffd93de6,0 0 46px #ffd93dd9,0 0 90px #ffb35c8c}}.name-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:grid;place-items:center;padding:20px;background:linear-gradient(180deg,var(--paper) 0%,#eaf6ff 100%)}.name-card{width:min(380px,100%);background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 24px;text-align:center;display:flex;flex-direction:column;gap:10px}.name-emoji{font-size:44px;animation:bob 1.8s ease-in-out infinite}.name-card h1{font-family:var(--font-display);font-size:30px}.name-card p{color:var(--ink-soft)}.name-input{font:inherit;font-size:18px;text-align:center;color:var(--ink);background:var(--paper-2);border:3px solid transparent;border-radius:16px;padding:12px 14px;outline:none}.name-input:focus{border-color:var(--sky)}.name-continue:disabled{filter:saturate(.3) brightness(1.05)}.board{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.board-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.board-title{font-family:var(--font-display);font-weight:700;font-size:16px}.board-tabs{display:flex;background:var(--paper-2);border-radius:999px;overflow:hidden}.board-tab{font-size:12.5px;font-weight:600;padding:6px 12px;color:var(--ink-soft)}.board-tab-on{background:var(--sky);color:#133c52}.board-note{text-align:center;color:var(--ink-soft);font-size:14px;padding:10px 0}.board-rows{list-style:none;display:flex;flex-direction:column}.board-row{display:flex;align-items:center;gap:10px;padding:7px 6px;border-radius:12px;font-size:15px}.board-row-me{background:#fff3d6;box-shadow:inset 0 0 0 2px var(--sunshine)}.board-rank{font-family:var(--font-display);font-weight:700;min-width:26px;color:var(--ink-soft)}.board-row:nth-child(1) .board-rank{color:#e8a200}.board-row:nth-child(2) .board-rank{color:#9aa2b0}.board-row:nth-child(3) .board-rank{color:#c07a3c}.board-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-score{font-family:var(--font-display)}.board-me{text-align:center;font-size:14px;background:var(--paper-2);border-radius:999px;padding:6px 12px}.board-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;display:grid;place-items:center;padding:20px;background:#4a3f5559;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.board-sheet{width:min(420px,100%);max-height:86vh;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.board-close{width:100%}.receipt-strip{text-align:center;background:#e8f6ff;border-radius:16px;padding:10px;font-size:15px;animation:pop-in .35s cubic-bezier(.34,1.56,.64,1)}
