@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-400-normal-g7Dtegnw.woff2)format("woff2"),url(/assets/figtree-latin-400-normal-BD4aNku5.woff)format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-600-normal-Cv_xCTDl.woff2)format("woff2"),url(/assets/figtree-latin-600-normal-BM_oTo4n.woff)format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/figtree-latin-700-normal-th6qEP7c.woff2)format("woff2"),url(/assets/figtree-latin-700-normal-BCCt2T1q.woff)format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/figtree-latin-800-normal-30yxI7TZ.woff2)format("woff2"),url(/assets/figtree-latin-800-normal-B7vj2UK8.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-700-normal-BOIZVyIN.woff2)format("woff2"),url(/assets/fredoka-latin-700-normal-C8FeHd3X.woff)format("woff")}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{height:100%}body{background:var(--ground);color:var(--ink);font-family:var(--font-ui);font-size:calc(17px * var(--fs));-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2{text-wrap:balance}.muted{color:var(--muted)}.app{max-width:460px;height:100%;margin:0 auto;position:relative;overflow:hidden}.view{padding-block:max(16px, env(safe-area-inset-top,0px)) max(20px, env(safe-area-inset-bottom,0px));padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));flex-direction:column;gap:16px;animation:.24s cubic-bezier(.22,1,.36,1) viewIn;display:flex;position:absolute;inset:0;overflow-y:auto}@keyframes viewIn{0%{opacity:0;transform:translateY(10px)}}.bar{align-items:center;gap:10px;min-height:48px;display:flex}.bar__title{font-weight:800;font-size:calc(20px * var(--fs));flex:auto}.icon-btn{background:var(--surface);cursor:pointer;border:0;border-radius:14px;flex:none;place-items:center;width:48px;height:48px;transition:transform 90ms ease-out;display:grid;box-shadow:inset 0 -3px #00000024}.icon-btn:active{transform:translateY(2px)}.icon-btn svg{width:24px;height:24px;stroke:var(--ink)}.rl-btn__badge{white-space:nowrap}.stack{flex-direction:column;gap:10px;display:flex}.row{gap:10px;display:flex}.row>*{flex:1 1 0;min-width:0}.card{background:var(--surface);border-radius:20px;padding:16px}.home-hero{text-align:center;flex-direction:column;align-items:center;gap:6px;padding-block:12px 4px;display:flex}.logo{font-family:var(--font-display);font-weight:700;font-size:calc(64px * var(--fs));letter-spacing:-1px;gap:2px;line-height:.9;display:flex}.logo .d{color:var(--accent);animation:2.8s cubic-bezier(.34,1.56,.64,1) infinite hop;display:inline-block}@keyframes hop{0%,80%,to{transform:translateY(0)}86%{transform:translateY(-8px)rotate(-6deg)}92%{transform:translateY(0)}}.home-best{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:700}.home-tiles{justify-content:center;gap:8px;margin-top:6px;display:flex}.home-tiles i{border-radius:9px;width:34px;height:34px;display:block}.xpromo{align-items:center;gap:12px;display:flex}.xpromo__art{background:#1e5a4c;border-radius:14px;flex:none;place-items:center;width:52px;height:52px;display:grid}.xpromo__art b{color:#c42f3a;background:#fbf8f1;border-radius:5px;place-items:center;width:26px;height:36px;font:700 15px/1 Georgia,serif;display:grid}.xpromo strong{font-weight:800;display:block}.xpromo span span{font-size:calc(15px * var(--fs));display:block}.xpromo a{color:var(--ink);background:var(--surface-2);border-radius:12px;margin-left:auto;padding:10px 14px;font-weight:800;text-decoration:none}.ad{border-radius:12px;min-height:60px;margin-top:auto;overflow:hidden}.hud{flex:auto;align-items:center;gap:8px;display:flex}.score{background:var(--surface);border-radius:16px;flex-direction:column;flex:1 1 0;align-items:center;min-width:0;padding:6px 12px;display:flex;position:relative}.score span{font-size:calc(13px * var(--fs));letter-spacing:.8px;text-transform:uppercase;color:var(--muted);font-weight:700}.score strong{font-family:var(--font-display);font-size:calc(26px * var(--fs));font-variant-numeric:tabular-nums;font-weight:700;line-height:1.1}.float{font-family:var(--font-display);color:var(--accent);pointer-events:none;font-size:20px;font-style:normal;font-weight:700;animation:.7s ease-out forwards float;position:absolute;top:4px;left:50%}@keyframes float{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-44px)}}.stage{flex:auto;place-items:center;min-height:0;display:grid}.board{--size:min(calc(100vw - 32px), 428px, max(260px, calc(100dvh - 300px)));--n:4;--gap:calc(var(--size) * .03);--cellsize:calc((var(--size) - var(--gap) * (var(--n) + 1)) / var(--n));width:var(--size);height:var(--size);border-radius:calc(var(--size) * .055);background:var(--board);touch-action:none;-webkit-user-select:none;user-select:none;position:relative;box-shadow:inset 0 -6px #0000001f}.cell,.tile{width:var(--cellsize);height:var(--cellsize);border-radius:calc(var(--cellsize) * .17);translate:calc(var(--gap) + var(--c) * (var(--cellsize) + var(--gap))) calc(var(--gap) + var(--r) * (var(--cellsize) + var(--gap)));position:absolute;top:0;left:0}.cell{background:var(--cell)}.tile{font-family:var(--font-display);font-weight:700;font-size:calc(var(--cellsize) * .42 * (1 + (var(--fs) - 1) * .35));font-variant-numeric:tabular-nums;z-index:2;place-items:center;transition:translate .13s cubic-bezier(.3,.7,.4,1);display:grid;box-shadow:inset 0 -4px #0000001f}.tile.small{font-size:calc(var(--cellsize) * .31 * (1 + (var(--fs) - 1) * .35))}.tile.new{animation:.18s cubic-bezier(.22,1,.36,1) .1s backwards born}.tile.merged{z-index:3;animation:.2s cubic-bezier(.22,1,.36,1) .12s backwards pop}.tile.merged.bloom{animation:.2s cubic-bezier(.22,1,.36,1) .12s backwards pop,.6s ease-out .15s bloom}.tile.ghost{z-index:1;animation:10ms linear .13s forwards vanish}@keyframes born{0%{opacity:0;scale:0}}@keyframes pop{0%{opacity:0;scale:.9}15%{opacity:1}55%{scale:1.06}to{scale:1}}@keyframes bloom{0%{box-shadow:0 0 #ffffffbf}to{box-shadow:0 0 0 14px #fff0}}@keyframes vanish{to{opacity:0}}.v1{color:#1b1b3a;background:#fff6e6}.v2{color:#1b1b3a;background:#ffe8b8}.v3{color:#1b1b3a;background:#ffd84d}.v4{color:#1b1b3a;background:#ffb547}.v5{color:#1b1b3a;background:#ff8a5c}.v6{color:#fff;background:#e8434f}.v7{color:#fff;background:#c93a83}.v8{color:#fff;background:#8f4ad8}.v9{color:#fff;background:#4d5ee8}.v10{color:#1b1b3a;background:#2fb5ff}.v11{color:#1b1b3a;background:#3dd6a3;box-shadow:0 0 0 3px #1b1b3a,0 0 24px 6px #3dd6a399}.v12{color:#ffd84d;background:#1b1b3a;box-shadow:0 0 0 3px #ffd84d}.hand{z-index:6;pointer-events:none;width:54px;height:54px;margin-left:-27px;animation:1.6s cubic-bezier(.22,1,.36,1) infinite swipe;position:absolute;top:55%;left:50%}.hand svg{width:100%;height:100%}@keyframes swipe{0%{opacity:0;transform:translate(-60px)}15%{opacity:1}60%{opacity:1;transform:translate(60px)}80%,to{opacity:0;transform:translate(60px)}}.tip{text-align:center;color:var(--muted);min-height:1.4em;font-weight:600}.banner2048{z-index:10;border-radius:inherit;color:#1b1b3a;text-align:center;background:#3dd6a3d6;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex;position:absolute;inset:0}.banner2048 h2{font:700 calc(56px * var(--fs)) / 1 var(--font-display)}.banner2048 p{font-weight:700}.banner2048 .rl-btn{max-width:260px}.end-top{text-align:center;flex-direction:column;align-items:center;gap:10px;padding-top:8px;display:flex}.eyebrow{font-size:calc(13px * var(--fs));letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:800}.end-headline{font-family:var(--font-display);font-size:calc(32px * var(--fs));color:var(--gold);font-weight:700;line-height:1.05}.end-score{font-family:var(--font-display);font-size:calc(64px * var(--fs));font-variant-numeric:tabular-nums;letter-spacing:-1px;font-weight:700;line-height:1}.stamp{animation:.5s cubic-bezier(.2,1.4,.4,1) .75s backwards stamp}@keyframes stamp{0%{opacity:0;transform:scale(1.8)}}.delta{background:var(--gold-soft);color:var(--gold-ink);font-weight:800;font-size:calc(14px * var(--fs));border-radius:999px;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.progress{flex-direction:column;gap:6px;width:100%;max-width:340px;display:flex}.progress__bar{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.progress__bar i{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--gold));height:100%;animation:.9s cubic-bezier(.2,.8,.3,1) .3s backwards fill;display:block}@keyframes fill{0%{width:0}}.progress__lbl{font-size:calc(13px * var(--fs));color:var(--muted);justify-content:space-between;gap:8px;font-weight:700;display:flex}.end-mid{flex-direction:column;align-items:center;gap:14px;margin-block:auto;display:flex}.facts{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.fact{background:var(--surface);font-size:calc(13px * var(--fs));color:var(--muted);border-radius:999px;align-items:baseline;gap:6px;padding:6px 12px;font-weight:700;display:inline-flex}.fact b{color:var(--ink);font-family:var(--font-display);font-size:calc(15px * var(--fs))}.next-goal{text-align:left;background:var(--surface);border-radius:18px;align-items:center;gap:12px;width:100%;max-width:340px;padding:10px 12px;display:flex}.next-goal .tile{width:44px;height:44px;box-shadow:none;border-radius:10px;flex:none;font-size:16px;position:static;translate:none}.next-goal strong{font-size:calc(15px * var(--fs));display:block}.next-goal .muted{font-size:calc(13px * var(--fs));display:block}.end-actions{margin-top:0}.end-actions .rl-btn{white-space:nowrap}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mini{--size:176px;--n:4;--gap:5px;--cellsize:calc((var(--size) - var(--gap) * 5) / 4);width:var(--size);height:var(--size);background:var(--board);border-radius:14px;position:relative}.mini .tile{font-size:calc(var(--cellsize) * .38);box-shadow:none;transition:none}.mini .tile.small{font-size:calc(var(--cellsize) * .28)}.mini .tile.max{z-index:2;box-shadow:0 0 0 3px var(--gold), 0 0 22px 2px #f2b33d8c;animation:1.6s ease-in-out .9s 2 maxPulse}@keyframes maxPulse{50%{box-shadow:0 0 0 3px var(--gold), 0 0 30px 6px #f2b33dbf}}.choices{gap:10px;display:grid}.choice{border:2px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:18px;align-items:center;gap:14px;padding:12px 14px;display:flex}.choice[aria-checked=true]{border-color:var(--gold);background:var(--gold-soft)}.choice:disabled{opacity:.45;cursor:default}.choice strong{font-weight:800;display:block}.choice small{color:var(--muted);font-size:calc(14px * var(--fs));font-weight:600;display:block}.choice__art{flex:none;align-items:center;gap:6px;display:flex}.choice__art .t{width:40px;height:40px;font:700 18px/1 var(--font-display);border-radius:9px;place-items:center;display:grid}.choice__art--icon{width:86px;font:700 24px/1 var(--font-display);justify-content:center;gap:4px}.choice__art--icon svg{width:32px;height:32px}.fine{font-size:calc(14px * var(--fs));color:var(--muted);text-align:center}.group{background:var(--surface);border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.link-row{color:inherit;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;text-decoration:none}.seo{max-width:460px;margin:0 auto;padding:24px 16px}.group>.rl-set+.rl-set{border-top:1px solid var(--line)}.confetti{z-index:45;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}:root[data-reduce] *,:root[data-reduce] :before,:root[data-reduce] :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
