body.tetris.pp{overscroll-behavior:none}html.tetris:has(body.pp){overscroll-behavior:none}.pp-stage.t-stage{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;flex:auto;align-items:center;min-height:0;padding:16px;container-type:size}@media (orientation:landscape){.pp-stage.t-stage{--stage-fit:760px}}@media (orientation:portrait){.pp-stage.t-stage{--stage-fit:824px}}@media (width<=630px){.pp-stage.t-stage{--stage-fit:min(776px, 2 * 100vw - 150px, 100vw + 268px)}}.pp-card.t-card{--card-pad:24px;--gap:12px;--key:52px;--pad-h:0px;--pad-gap:0px;--avail-w:calc(100cqw - 2 * var(--card-pad));--avail-h:calc(100cqh - 2 * var(--card-pad) - var(--pad-h) - var(--pad-gap));--cell-fit:min(var(--cell-max,34px), (var(--avail-w) - var(--gap) - 84px) / 10, var(--avail-h) / 20);--cell:var(--cell-fit);--board-w:calc(10 * var(--cell));--board-h:calc(20 * var(--cell));--side:clamp(84px, var(--avail-w) - var(--board-w) - var(--gap), 156px);box-sizing:border-box;grid-template-columns:var(--board-w) var(--side);gap:var(--gap);width:auto;height:calc(var(--board-h) + 2 * var(--card-pad) + var(--pad-h) + var(--pad-gap));padding:var(--card-pad);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"well next""well info""pad pad";align-items:stretch;display:grid}@supports (width:round(down, 1px, 1px)){.pp-card.t-card{--cell:round(down, var(--cell-fit), 1px)}}@media (pointer:coarse){.pp-card.t-card{--pad-h:var(--key);--pad-gap:var(--gap)}}@container (width<=599px){.pp-card.t-card{--card-pad:0px;background:0 0;border:none;border-radius:0}}@container (height<=520px){.pp-card.t-card{--gap:8px;--key:46px}}.t-well{width:var(--board-w);height:var(--board-h);border-radius:calc(var(--cell) * .3);background:#efe4cf;grid-area:well;position:relative;overflow:hidden;box-shadow:0 0 0 4px #dccbad}.t-board{width:100%;height:100%;display:block}.t-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#faf4e8c7;justify-content:center;align-items:center;padding:0 8%;animation:.2s ease-out t-fade-in;display:flex;position:absolute;inset:0}.t-overlay[hidden]{display:none}@keyframes t-fade-in{0%{opacity:0}to{opacity:1}}.t-overlay-card{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.t-overlay-title{font-family:Bricolage Grotesque,sans-serif;font-weight:800;font-size:clamp(20px, calc(var(--cell) * 1.15), 34px);letter-spacing:-.02em;color:#241f1a;text-wrap:balance;margin:0;line-height:1.1}.t-overlay-text{color:#574f45;text-wrap:balance;max-width:22ch;margin:0;font-size:15px;line-height:1.4}.t-overlay-btn,.t-overlay-btn:hover{min-height:48px;box-shadow:none;background:var(--accent);color:var(--game-accent-ink,#fff);cursor:pointer;touch-action:manipulation;border:none;border-radius:12px;margin-top:10px;padding:0 26px;font-family:Instrument Sans,system-ui,sans-serif;font-size:16px;font-weight:600;transition:none}.t-overlay-btn:hover{filter:brightness(.95)}.t-callout{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.t-callout-text{font-family:Bricolage Grotesque,sans-serif;font-weight:800;font-size:clamp(16px, calc(var(--cell) * .85), 26px);letter-spacing:-.01em;color:#6b3d82;text-align:center;background:#ffffffeb;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:8px 14px;line-height:1.1;animation:1.1s ease-out forwards t-callout;display:flex;box-shadow:0 8px 22px #241f1a24}.t-callout-text span+span{color:#574f45;font-size:.72em}@keyframes t-callout{0%{opacity:0;transform:scale(.8)}12%{opacity:1;transform:scale(1.04)}22%{transform:scale(1)}75%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-30%)}}.t-side{gap:var(--gap);flex-direction:column;min-width:0;min-height:0;display:flex}.t-side-next{grid-area:next}.t-side-info{grid-area:info}.t-box{background:#f2ebdd;border-radius:12px;flex-direction:column;align-items:stretch;gap:4px;padding:8px;display:flex}.t-box-label{letter-spacing:.1em;text-transform:uppercase;text-align:center;color:#6f6557;font-family:Space Mono,monospace;font-size:11px;font-weight:700}.t-next,.t-hold{width:100%;display:block}.t-next{height:calc(var(--cell) * 4.8)}.t-hold{height:calc(var(--cell) * 1.6)}.t-actions{grid-template-columns:1fr 1fr;gap:8px;height:44px;display:grid}.t-icon-btn,.t-icon-btn:hover{min-width:0;box-shadow:none;color:#574f45;cursor:pointer;touch-action:manipulation;background:#fff;border:1px solid #eadfce;border-radius:12px;justify-content:center;align-items:center;padding:0;transition:none;display:flex}@media (hover:hover) and (pointer:fine){.t-icon-btn:hover:not(:disabled){border-color:var(--accent);color:#241f1a}}.t-icon-btn:disabled{color:#c9bfb1;cursor:default}.pp-newgame.t-new{white-space:nowrap;touch-action:manipulation;justify-content:center;align-items:center;min-width:0;padding:0;display:flex}.t-new-label{display:none}.t-icon-btn svg,.t-key svg,.t-new-icon{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.t-fill{fill:currentColor;stroke-width:1.6px}.t-stats{flex:0 auto;grid-template-rows:repeat(3,minmax(0,52px));align-content:start;gap:6px;min-height:0;display:grid}.pp-stat.t-stat{flex-direction:column;justify-content:center;min-width:0;min-height:0;padding:0 8px;display:flex;position:relative;overflow:hidden;container-type:inline-size}.t-stat .pp-stat-value{font-size:min(20px, 100cqi / (var(--chars,1) * .62));white-space:nowrap;line-height:22px}.t-gain{z-index:1;color:#774290;text-shadow:0 1px #fff;pointer-events:none;font-family:Bricolage Grotesque,sans-serif;font-size:16px;font-weight:800;animation:.8s ease-out forwards t-gain;position:absolute;bottom:100%;left:50%}@keyframes t-gain{0%{opacity:1;transform:translate(-50%,40%)}to{opacity:0;transform:translate(-50%,-60%)}}.t-hint{color:#6f6557;margin:0;font-size:13px;line-height:1.45}@media (pointer:coarse){.t-hint{display:none}}.t-pad{display:none}@media (pointer:coarse){.t-pad{height:var(--key);grid-area:pad;grid-template-columns:repeat(3,minmax(0,1fr)) .35fr repeat(3,minmax(0,1fr));gap:8px;display:grid}.t-pad-move,.t-pad-act{display:contents}.t-pad-act>:first-child{grid-column:5}}.t-pad .t-key,.t-pad .t-key:hover{min-width:0;height:var(--key);color:#574f45;cursor:pointer;touch-action:none;background:#fff;border:1px solid #eadfce;border-radius:14px;justify-content:center;align-items:center;padding:0;font-family:Instrument Sans,system-ui,sans-serif;font-size:15px;font-weight:600;transition:transform 60ms,background-color 60ms;display:flex;box-shadow:inset 0 -3px #efe6d6}.t-pad .t-key.is-pressed{box-shadow:none;background:#f2ebdd;transform:translateY(2px)}.t-pad .t-key-drop,.t-pad .t-key-drop:hover{background:var(--accent);color:#fff;border-color:#0000;box-shadow:inset 0 -3px #0000002e}.t-pad .t-key-drop.is-pressed{background:var(--accent);filter:brightness(.9)}.t-icon-btn:focus-visible,.pp-newgame.t-new:focus-visible,.t-key:focus-visible,.t-overlay-btn:focus-visible{outline-offset:2px;outline:3px solid #241f1a}.t-sr-only,.t-sprites{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.t-gain,.t-callout{display:none}.t-overlay{animation:none}}@container (aspect-ratio>=1) and (width>=560px){.pp-card.t-card{--side:180px;--avail-w:calc(100cqw - 2 * var(--card-pad) - 2 * var(--side) - 2 * var(--gap));--avail-h:calc(100cqh - 2 * var(--card-pad));--cell-fit:min(var(--cell-max,34px), var(--avail-w) / 10, var(--avail-h) / 20);grid-template-columns:var(--side) var(--board-w) var(--side);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"info well next""info well next"}.pp-newgame.t-new{padding:0 12px}.t-new-icon{display:none}.t-new-label{display:inline}.t-actions{grid-template-columns:44px 1fr}@media (pointer:coarse){.pp-card.t-card{--pad-h:0px;--pad-gap:0px;grid-template-areas:"info well next""move well act"}.t-pad{display:contents}.t-pad-move,.t-pad-act{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.t-pad-move{grid-area:move}.t-pad-act{grid-area:act}.t-pad-act>:first-child{grid-column:auto}}}@container (aspect-ratio>=1) and (width>=560px) and (height<=480px){.pp-card.t-card{--card-pad:0px;--side:156px;--gap:10px;--key:44px;background:0 0;border:none;border-radius:0}.t-hint{display:none}.t-next{height:110px}.t-hold{height:44px}}@media (height<=480px){body.tetris .pp-stage.t-stage{padding-top:8px;padding-bottom:8px}}@media (width<=599px){.pp-stage.t-stage{padding:12px}}body.pp.immersive .pp-stage.t-stage{padding:72px 16px 24px}body.pp.immersive .pp-card.t-card{--card-pad:16px;--cell-max:40px;background:#fff;border:1px solid #eadfce;border-radius:22px}@media (orientation:landscape) and (height<=480px){body.pp.immersive .pp-stage.t-stage{padding:12px 136px 12px 16px}body.pp.immersive .pp-card.t-card{--card-pad:10px}}.celebration-icon:has(.t-go-piece){background:0 0}.t-go-piece{grid-auto-rows:20px;gap:2px;display:grid}.t-cols-2{grid-template-columns:repeat(2,20px)}.t-cols-3{grid-template-columns:repeat(3,20px)}.t-cols-4{grid-template-columns:repeat(4,20px)}.t-go-block.is-on{background:var(--face);box-shadow:inset 0 -3px 0 var(--lip);border-radius:4px}.t-kind-I{--face:#2a9bb5;--lip:#1e7489}.t-kind-O{--face:#e0a92e;--lip:#b5831a}.t-kind-T{--face:#9b59b6;--lip:#774290}.t-kind-S{--face:#3aa865;--lip:#2a7f4b}.t-kind-Z{--face:#d0453a;--lip:#a3312a}.t-kind-J{--face:#4a6fc0;--lip:#36549a}.t-kind-L{--face:#e07a2e;--lip:#b35c1d}
