html.game-2048,body.game-2048.pp{overscroll-behavior:none}.pp-stage.g-stage{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;--stage-fit:710px;flex:auto;align-items:center;min-height:0;padding:16px;container-type:size}@media (width<=630px){.pp-stage.g-stage{--stage-fit:min(652px, 100vw + 100px)}}.pp-card.g-card{--card-pad:24px;--hud-h:56px;--hint-h:20px;--stack-gap:16px;--board:min(var(--board-max,520px), 100cqw - 2 * var(--card-pad), 100cqh - 2 * var(--card-pad) - var(--hud-h) - var(--hint-h) - 2 * var(--stack-gap));box-sizing:border-box;width:calc(var(--board) + 2 * var(--card-pad));padding:var(--card-pad);gap:var(--stack-gap);align-items:stretch}@container (width<=599px){.pp-card.g-card{--card-pad:0px;--hud-h:52px;--stack-gap:14px;background:0 0;border:none;border-radius:0}}.g-hud{height:var(--hud-h);grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) var(--hud-h) auto;gap:8px;display:grid}.pp-stat.g-stat{flex-direction:column;justify-content:center;min-width:0;padding:0 10px;transition:background-color .3s;display:flex;position:relative;container-type:inline-size}.g-stat .pp-stat-value{font-size:min(22px, 100cqi / (var(--chars,1) * .62));white-space:nowrap;transition:color .3s}.g-stat.is-record{background:#f6dfa8}.g-stat.is-record .pp-stat-value{color:#6e4604}.g-gain{color:#a4680a;pointer-events:none;font-family:Bricolage Grotesque,sans-serif;font-size:17px;font-weight:800;animation:.75s ease-out forwards g-gain;position:absolute;bottom:100%;left:50%}@keyframes g-gain{0%{opacity:1;transform:translate(-50%,60%)}to{opacity:0;transform:translate(-50%,-40%)}}.g-undo{color:#574f45;cursor:pointer;touch-action:manipulation;background:#fff;border:1px solid #eadfce;border-radius:12px;justify-content:center;align-items:center;padding:0;display:flex}.g-undo svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.g-undo:hover:not(:disabled){border-color:var(--accent);color:#241f1a}.g-undo:disabled{color:#c9bfb1;cursor:default}.pp-newgame.g-new{white-space:nowrap;touch-action:manipulation;justify-content:center;align-items:center;padding:0 18px;display:flex}.g-new-icon{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;display:none}@container (width<=359px){.g-hud{grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) var(--hud-h) var(--hud-h)}.pp-newgame.g-new{padding:0}.g-new-icon{display:block}.g-new-label{display:none}.pp-stat.g-stat{padding:0 6px}}.g-undo:focus-visible,.pp-newgame.g-new:focus-visible,.g-win-btn:focus-visible{outline-offset:2px;outline:3px solid #241f1a}.g-play{width:var(--board);height:var(--board);position:relative}.g-board{--slide:.11s;--pad:calc(var(--board) * .028);--gap:calc(var(--board) * .028);--tile:calc((var(--board) - 2 * var(--pad) - 3 * var(--gap)) / 4);--radius:calc(var(--tile) * .13);box-sizing:border-box;width:100%;height:100%;padding:var(--pad);border-radius:calc(var(--radius) + var(--pad));background:#dccbad;position:relative}.g-cells{grid-template-columns:repeat(4, var(--tile));grid-auto-rows:var(--tile);gap:var(--gap);display:grid}.g-cell{border-radius:var(--radius);background:#e8dac1}.g-tiles{inset:var(--pad);transition:opacity .4s,filter .4s;position:absolute}.g-board.is-over .g-tiles{opacity:.5;filter:saturate(.5)}.g-tile{width:var(--tile);height:var(--tile);transform:translate(calc(var(--col) * (var(--tile) + var(--gap))), calc(var(--row) * (var(--tile) + var(--gap))));transition:transform var(--slide) cubic-bezier(.25, .8, .35, 1);will-change:transform;position:absolute;top:0;left:0}.g-tile-face{--fs:.46;box-sizing:border-box;border-radius:var(--radius);background:var(--bg);width:100%;height:100%;color:var(--ink);box-shadow:inset 0 calc(var(--tile) * -.05) 0 #3c240824;padding-bottom:calc(var(--tile) * .03);font-family:Bricolage Grotesque,sans-serif;font-weight:800;font-size:calc(var(--tile) * var(--fs));letter-spacing:-.03em;justify-content:center;align-items:center;line-height:1;display:flex}.digits-3 .g-tile-face{--fs:.38}.digits-4 .g-tile-face{--fs:.3}.digits-5 .g-tile-face{--fs:.245}.digits-6 .g-tile-face{--fs:.205}.v-2{--bg:#f8f0e3;--ink:#5b4a37}.v-4{--bg:#eddaae;--ink:#5b4a37}.v-8{--bg:#f2ac5c;--ink:#3f2508}.v-16{--bg:#eb8b3f;--ink:#3f2508}.v-32{--bg:#d8612c;--ink:#fffaf1}.v-64{--bg:#c4462a;--ink:#fffaf1}.v-128{--bg:#f0cf6a;--ink:#4a3207}.v-256{--bg:#ecc350;--ink:#4a3207}.v-512{--bg:#e6b43a;--ink:#452d04}.v-1024{--bg:#dca126;--ink:#3d2703}.v-2048{--bg:#d8951e;--ink:#2e1d02}.v-4096{--bg:#4d3f63;--ink:#fbf3e3}.v-8192{--bg:#2f5561;--ink:#fbf3e3}.v-16384{--bg:#6a2f3f;--ink:#fbf3e3}.v-32768{--bg:#2e3f2c;--ink:#fbf3e3}.v-65536{--bg:#3a2a1e;--ink:#fbf3e3}.v-131072,.v-max{--bg:#1d1916;--ink:#f0cf6a}.v-512 .g-tile-face,.v-1024 .g-tile-face{box-shadow:inset 0 calc(var(--tile) * -.05) 0 #3c240824, 0 0 calc(var(--tile) * .18) #e2a82659}.v-2048 .g-tile-face{box-shadow:inset 0 calc(var(--tile) * -.05) 0 #3c240829, 0 0 calc(var(--tile) * .32) #d8951e99}.g-tile-face.is-new{animation:g-appear .17s ease-out var(--slide) backwards}.g-tile-face.is-merged{animation:g-pop .2s ease-out var(--slide) backwards}.g-tile-face.no-delay{animation-delay:0s}@keyframes g-appear{0%{opacity:0;transform:scale(.35)}to{opacity:1;transform:scale(1)}}@keyframes g-pop{0%{opacity:0;transform:scale(1)}1%{opacity:1;transform:scale(1)}45%{transform:scale(1.14)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.g-board{--slide:0s}.g-tile-face.is-new,.g-tile-face.is-merged,.g-gain{animation:none}.g-gain{display:none}}.celebration-icon:has(.g-go-tile){background:0 0}.g-go-tile{--tile:64px;--radius:calc(var(--tile) * .13);width:var(--tile);height:var(--tile)}.g-win{justify-content:center;align-items:center;gap:calc(var(--board) * .03);text-align:center;border-radius:calc(var(--board) * .06);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);touch-action:manipulation;background:#faeed0e0;flex-direction:column;padding:0 8%;animation:.35s ease-out g-win-in;display:flex;position:absolute;inset:0}.g-win[hidden]{display:none}@keyframes g-win-in{0%{opacity:0}to{opacity:1}}.g-win-title{font-family:Bricolage Grotesque,sans-serif;font-weight:800;font-size:clamp(28px, calc(var(--board) * .1), 48px);letter-spacing:-.03em;color:#3d2703;margin:0;line-height:1.05}.g-win-text{color:#5b4a37;max-width:26ch;margin:0;font-size:16px;line-height:1.4}.g-win-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.g-win-btn{color:#241f1a;cursor:pointer;background:#fff;border:1px solid #e3d3b8;border-radius:12px;min-height:48px;padding:0 22px;font-family:Instrument Sans,system-ui,sans-serif;font-size:16px;font-weight:600}.g-win-btn.g-win-primary{border-color:var(--accent);background:var(--accent);color:var(--game-accent-ink,#fff)}.g-win-btn:hover{filter:brightness(.96)}.g-hint{height:var(--hint-h);font-size:14px;line-height:var(--hint-h);text-align:center;color:#8a7f70;white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.g-hint-keys{display:none}@media (hover:hover) and (pointer:fine){.g-hint-touch{display:none}.g-hint-keys{display:inline}}.g-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}@container (height<=480px) and (aspect-ratio>=5/4){.pp-card.g-card{--card-pad:0px;--side-w:180px;--board:min(var(--board-max,520px), 100cqh, 100cqw - var(--side-w) - var(--stack-gap));background:0 0;border:none;border-radius:0;flex-direction:row;width:auto}.g-hud{width:var(--side-w);height:var(--board);order:2;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:1fr 1fr;align-self:center;max-height:240px}.pp-stat.g-stat{grid-column:1/-1}.g-undo,.pp-newgame.g-new{width:auto}.pp-newgame.g-new{padding:0}.g-new-icon{display:block}.g-new-label,.g-hint{display:none}}@media (height<=480px){body.game-2048 .pp-stage.g-stage{padding-top:10px;padding-bottom:10px}}body.pp.immersive .pp-stage.g-stage{padding:72px 16px 24px}body.pp.immersive .pp-card.g-card{--card-pad:16px;--board-max:720px;background:#fff;border:1px solid #eadfce;border-radius:22px}
