.ag-game-g2048 .g48-board{--gap:clamp(8px,2.2vw,14px);aspect-ratio:1;width:min(100%,500px);padding:var(--gap);background:color-mix(in srgb,var(--line) 26%,var(--panel));touch-action:none;-webkit-user-select:none;user-select:none;outline-offset:6px;border-radius:20px;position:relative;box-shadow:inset 0 2px #ffffff0d,0 24px 60px -34px #000000b3}:root[data-theme=light] .ag-game-g2048 .g48-board{background:#c9cee3;box-shadow:0 20px 50px -34px #0d143373}.ag-game-g2048 .g48-grid{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));width:100%;height:100%;display:grid}.ag-game-g2048 .g48-slot{background:color-mix(in srgb,var(--bg) 70%,var(--panel));border-radius:12px}:root[data-theme=light] .ag-game-g2048 .g48-slot{background:#dfe3f1}.ag-game-g2048 .g48-layer{inset:var(--gap);position:absolute}.ag-game-g2048 .g48-tile{width:calc((100% - 3 * var(--gap)) / 4);height:calc((100% - 3 * var(--gap)) / 4);translate:calc(var(--c) * (100% + var(--gap))) calc(var(--r) * (100% + var(--gap)));z-index:1;transition:translate .11s ease-in-out;position:absolute;top:0;left:0}.ag-game-g2048 .g48-tile span{background:var(--tile-bg,var(--panel-soft));width:100%;height:100%;color:var(--tile-ink,var(--ink));font-family:var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-weight:800;font-size:calc(var(--fs,1) * min(2.6rem,9vw));box-shadow:var(--tile-glow,none),inset 0 -3px 0 #00000024;border-radius:12px;place-items:center;line-height:1;display:grid}.ag-game-g2048 .g48-tile[data-len="3"]{--fs:.82}.ag-game-g2048 .g48-tile[data-len="4"]{--fs:.64}.ag-game-g2048 .g48-tile[data-len="5"]{--fs:.52}.ag-game-g2048 .g48-tile[data-len="6"]{--fs:.44}.ag-game-g2048 .g48-tile[data-v="2"]{--tile-bg:#27315f}.ag-game-g2048 .g48-tile[data-v="4"]{--tile-bg:#3a4684}:root[data-theme=light] .ag-game-g2048 .g48-tile[data-v="2"]{--tile-bg:#fff}:root[data-theme=light] .ag-game-g2048 .g48-tile[data-v="4"]{--tile-bg:#e4e8fb}.ag-game-g2048 .g48-tile[data-v="8"]{--tile-bg:#8fb8ff;--tile-ink:#0b0f26}.ag-game-g2048 .g48-tile[data-v="16"]{--tile-bg:#3dd5f3;--tile-ink:#0b0f26}.ag-game-g2048 .g48-tile[data-v="32"]{--tile-bg:#6ee7a8;--tile-ink:#0b0f26}.ag-game-g2048 .g48-tile[data-v="64"]{--tile-bg:#b39cf6;--tile-ink:#0b0f26}.ag-game-g2048 .g48-tile[data-v="128"]{--tile-bg:#f0a6d6;--tile-ink:#0b0f26;--tile-glow:0 0 18px -4px #f0a6d6}.ag-game-g2048 .g48-tile[data-v="256"]{--tile-bg:#ff9a85;--tile-ink:#0b0f26;--tile-glow:0 0 20px -4px #ff9a85}.ag-game-g2048 .g48-tile[data-v="512"]{--tile-bg:#ffa45c;--tile-ink:#0b0f26;--tile-glow:0 0 24px -4px #ffa45c}.ag-game-g2048 .g48-tile[data-v="1024"]{--tile-bg:#f4c76b;--tile-ink:#0b0f26;--tile-glow:0 0 28px -2px #f4c76b}.ag-game-g2048 .g48-tile[data-v="2048"]{--tile-bg:linear-gradient(135deg,#ffe29a,#f4c76b 55%,#ffa45c);--tile-ink:#0b0f26;--tile-glow:0 0 34px 0 #f4c76b}.ag-game-g2048 .g48-tile[data-v=super]{--tile-bg:linear-gradient(135deg,#ff7a90,#b39cf6);--tile-ink:#0b0f26;--tile-glow:0 0 34px 0 #b39cf6}.ag-game-g2048 .g48-tile.is-new span{animation:.18s ease-out 20ms backwards g48-appear}.ag-game-g2048 .g48-tile.is-merged{z-index:2}.ag-game-g2048 .g48-tile.is-merged span{animation:.2s ease-out g48-pop}@keyframes g48-appear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes g48-pop{0%{transform:scale(1)}45%{transform:scale(1.16)}to{transform:scale(1)}}.ag-game-g2048 .g48-board.nudge-left{animation:.18s g48-nl}.ag-game-g2048 .g48-board.nudge-right{animation:.18s g48-nr}.ag-game-g2048 .g48-board.nudge-up{animation:.18s g48-nu}.ag-game-g2048 .g48-board.nudge-down{animation:.18s g48-nd}@keyframes g48-nl{50%{transform:translate(-5px)}}@keyframes g48-nr{50%{transform:translate(5px)}}@keyframes g48-nu{50%{transform:translateY(-5px)}}@keyframes g48-nd{50%{transform:translateY(5px)}}.ag-game-g2048 .ag-stat dd.g48-bump{animation:.25s g48-bump}@keyframes g48-bump{40%{color:var(--cat);transform:translateY(-3px)}}.ag-game-g2048 .g48-pad{width:min(100%,500px);display:none}@media (hover:none),(width<=700px){.ag-game-g2048 .g48-pad{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.ag-game-g2048 .g48-pad .ag-btn{min-width:0;min-height:48px}}@media (width<=700px){.ag-game-g2048 .g48-slot,.ag-game-g2048 .g48-tile span{border-radius:9px}}@media (prefers-reduced-motion:reduce){.ag-game-g2048 .g48-tile{transition:none}.ag-game-g2048 .g48-tile span,.ag-game-g2048 .g48-board,.ag-game-g2048 .ag-stat dd{animation:none!important}}.ag-game-g2048 .ag-result-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
