html.snake,body.snake.pp{overscroll-behavior:none}.pp-stage.s-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.s-stage{--stage-fit:750px}}@media (orientation:portrait){.pp-stage.s-stage{--stage-fit:878px}}@media (width<=630px){.pp-stage.s-stage{--stage-fit:min(812px, 100vw + 222px)}}.pp-card.s-card{--card-pad:24px;--card-border:1px;--hud-h:56px;--hint-h:20px;--stack-gap:16px;--key:52px;--key-gap:8px;--pad-h:0px;--pad-gaps:0;--board:min(var(--board-max,560px), 100cqw - 2 * var(--card-pad) - 2 * var(--card-border), 100cqh - 2 * var(--card-pad) - 2 * var(--card-border) - var(--hud-h) - var(--hint-h) - var(--pad-h) - (2 + var(--pad-gaps)) * var(--stack-gap));box-sizing:border-box;width:calc(var(--board) + 2 * var(--card-pad) + 2 * var(--card-border));padding:var(--card-pad);gap:var(--stack-gap);align-items:stretch}@media (pointer:coarse){.pp-card.s-card{--pad-h:calc(2 * var(--key) + var(--key-gap));--pad-gaps:1}}@container (width<=599px){.pp-card.s-card{--card-pad:0px;--card-border:0px;--hud-h:52px;--stack-gap:12px;background:0 0;border:none;border-radius:0}}@container (height<=560px){.pp-card.s-card{--key:46px;--hud-h:48px;--stack-gap:10px}}.s-hud{height:var(--hud-h);grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) var(--hud-h) auto;gap:8px;display:grid}.pp-stat.s-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}.s-stat .pp-stat-value{font-size:min(22px, 100cqi / (var(--chars,1) * .62));white-space:nowrap;transition:color .3s}.s-stat.is-record{background:#cfeedb}.s-stat.is-record .pp-stat-value{color:#145c33}.s-gain{color:#1f8047;pointer-events:none;font-family:Bricolage Grotesque,sans-serif;font-size:17px;font-weight:800;animation:.75s ease-out forwards s-gain;position:absolute;bottom:100%;left:50%}@keyframes s-gain{0%{opacity:1;transform:translate(-50%,60%)}to{opacity:0;transform:translate(-50%,-40%)}}.s-icon-btn,.s-icon-btn:hover{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:border-color .15s,color .15s;display:flex}.s-icon-btn:hover:not(:disabled){border-color:var(--accent);color:#241f1a}.s-icon-btn:disabled{color:#c9bfb1;cursor:default}.s-sprites{width:0;height:0;position:absolute;overflow:hidden}.s-icon-btn svg,.s-key svg,.s-new-icon{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.s-fill{fill:currentColor;stroke-width:1.6px}.pp-newgame.s-new{white-space:nowrap;touch-action:manipulation;justify-content:center;align-items:center;padding:0 18px;display:flex}.s-new-icon{display:none}@media (pointer:coarse){.s-hud{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.s-hud-pause{display:none}}@container (width<=339px){.s-hud{grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) var(--hud-h) var(--hud-h)}@media (pointer:coarse){.s-hud{grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) var(--hud-h)}}.pp-newgame.s-new{padding:0}.s-new-icon{display:block}.s-new-label{display:none}.pp-stat.s-stat{padding:0 6px}}.s-icon-btn:focus-visible,.pp-newgame.s-new:focus-visible,.s-key:focus-visible,.s-overlay-btn:focus-visible{outline-offset:2px;outline:3px solid #241f1a}.s-play{--ring:calc(var(--board) * .014);box-sizing:border-box;width:var(--board);height:var(--board);padding:var(--ring);border-radius:calc(var(--board) * .03);background:#dccbad;position:relative}.s-board{border-radius:calc(var(--board) * .03 - var(--ring));background:#f1e7d4;width:100%;height:100%;display:block}.s-overlay{border-radius:calc(var(--board) * .03);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#faf4e8b8;justify-content:center;align-items:center;padding:0 8%;animation:.2s ease-out s-fade-in;display:flex;position:absolute;inset:0}.s-overlay[hidden]{display:none}.s-overlay.is-ready{padding-top:calc(var(--board) * .14);-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0;align-items:flex-start}@keyframes s-fade-in{0%{opacity:0}to{opacity:1}}.s-overlay-card{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.s-overlay.is-ready .s-overlay-card{background:#ffffffe6;border-radius:16px;padding:12px 20px;box-shadow:0 6px 20px #241f1a14}.s-overlay-title{font-family:Bricolage Grotesque,sans-serif;font-weight:800;font-size:clamp(22px, calc(var(--board) * .08), 38px);letter-spacing:-.02em;color:#241f1a;margin:0;line-height:1.1}.s-overlay.is-ready .s-overlay-title{font-size:20px}.s-overlay-text{color:#574f45;text-wrap:balance;max-width:26ch;margin:0;font-size:15px;line-height:1.4}.s-overlay-btn,.s-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}.s-overlay-btn:hover{filter:brightness(.95)}.s-overlay-btn[hidden],.s-pad{display:none}@media (pointer:coarse){.s-pad{height:var(--pad-h);grid-template-columns:1fr repeat(3, var(--key)) 1fr;grid-template-rows:repeat(2, var(--key));gap:var(--key-gap);grid-template-areas:". .up. .""pause left down right.";display:grid}}.s-pad .s-key,.s-pad .s-key:hover{width:var(--key);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;transition:transform 60ms,background-color 60ms;display:flex;box-shadow:inset 0 -3px #efe6d6}.s-pad .s-key.is-pressed{box-shadow:none;background:#f2ebdd;transform:translateY(2px)}.s-pad .s-key:disabled{color:#c9bfb1;cursor:default}.s-key-up{grid-area:up}.s-key-left{grid-area:left}.s-key-down{grid-area:down}.s-key-right{grid-area:right}.s-key-pause{grid-area:pause}.s-key-down svg{transform:rotate(180deg)}.s-key-left svg{transform:rotate(-90deg)}.s-key-right svg{transform:rotate(90deg)}.s-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}.s-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}@media (prefers-reduced-motion:reduce){.s-gain{display:none}.s-overlay{animation:none}}.celebration-icon:has(.s-go-head){background:0 0}.s-go-head{background:#2fae62;border-radius:50%;width:60px;height:60px;display:block;position:relative;box-shadow:inset 0 -5px #1f8047}.s-go-head span{background:#fff;border-radius:50%;width:15px;height:15px;position:absolute;top:20px}.s-go-head span:first-child{left:12px}.s-go-head span:last-child{right:12px}.s-go-head span:after{content:"";background:#1d2a20;border-radius:50%;width:8px;height:8px;position:absolute;top:4px;left:4px}.s-go-head.is-over{background:#8d9a8c;box-shadow:inset 0 -5px #6c776b}.s-go-head.is-over span{background:0 0}.s-go-head.is-over span:before,.s-go-head.is-over span:after{content:"";background:#1d2a20;border-radius:2px;width:15px;height:3px;position:absolute;top:6px;left:0;transform:rotate(45deg)}.s-go-head.is-over span:after{transform:rotate(-45deg)}@container (height<=480px) and (aspect-ratio>=5/4){.pp-card.s-card{--card-pad:0px;--card-border:0px;--side-w:164px;--key:48px;--board:min(var(--board-max,560px), 100cqh, 100cqw - 2 * var(--side-w) - 2 * var(--stack-gap));grid-template-columns:var(--side-w) var(--board) var(--side-w);align-items:center;column-gap:var(--stack-gap);background:0 0;border:none;border-radius:0;grid-template-areas:"hud play pad";width:auto;display:grid}.s-hud{grid-area:hud;grid-template-columns:1fr 1fr;grid-auto-rows:52px;height:auto}.pp-stat.s-stat{grid-column:1/-1}.pp-newgame.s-new{padding:0}.s-new-icon{display:block}.s-new-label{display:none}.s-play{grid-area:play}.s-pad{grid-area:pad;grid-template-columns:repeat(3, var(--key));grid-template-rows:repeat(3, var(--key));grid-template-areas:"pause. ."".up.""left down right";justify-content:center;height:auto}.s-hint{display:none}@media (pointer:coarse){.s-hud .pp-newgame.s-new{grid-column:1/-1;padding:0 12px}.s-hud .s-new-icon{display:none}.s-hud .s-new-label{display:inline}}}@media (height<=480px){body.snake .pp-stage.s-stage{padding-top:10px;padding-bottom:10px}}body.pp.immersive .pp-stage.s-stage{padding:72px 16px 24px}body.pp.immersive .pp-card.s-card{--card-pad:16px;--board-max:760px;background:#fff;border:1px solid #eadfce;border-radius:22px}
