.yk-menu--snakes-and-ladders .yk-menu-title{max-width:16ch;letter-spacing:.035em}.snakes-hero-art{position:relative;width:min(230px,72vw);aspect-ratio:1;overflow:hidden;border:1px solid rgba(238,211,145,.56);border-radius:20px;background:url(/assets/snakes/board-surface-v1.webp) center / cover no-repeat;box-shadow:inset 0 0 0 2px #c99a4399,0 25px 55px #0000007a;transform:rotate(2deg)}.snakes-mini-grid{position:absolute;inset:15%;background:linear-gradient(rgba(74,43,28,.26) 1px,transparent 1px),linear-gradient(90deg,rgba(74,43,28,.26) 1px,transparent 1px);background-size:20% 20%,20% 20%}.mini-snake-art,.mini-ladder-art{position:absolute;display:block;background-repeat:no-repeat}.mini-snake-art{inset:14% 18% 17% auto;width:20%;background-image:url(/assets/snakes/snake-characters-v2.webp);background-position:66.666667% 0;background-size:700% 100%;filter:drop-shadow(0 4px 4px rgba(38,14,8,.46));transform:rotate(17deg)}.mini-ladder-art{inset:30% auto 16% 9%;width:48%;background-image:url(/assets/snakes/ladder-styles-v1.webp);background-position:0 0;background-size:300% 200%;filter:drop-shadow(0 4px 4px rgba(38,14,8,.46));transform:rotate(-24deg) scaleX(.55)}.mini-token-art{position:absolute;inset:auto auto 16% 17%;display:grid;place-items:center;width:18%;aspect-ratio:1;border:2px solid #4a2916;border-radius:50%;color:#2b180c;background:radial-gradient(circle at 35% 25%,#ffe6a0,#c48a2e 72%);box-shadow:0 4px 8px #2a110575;font-style:normal}.mini-die-art{position:absolute;inset:17% auto auto 20%;display:grid;grid-template-columns:repeat(2,5px);grid-template-rows:repeat(2,5px);place-content:space-between;width:19%;aspect-ratio:1;padding:8px;border:1px solid #99835e;border-radius:8px;background:linear-gradient(145deg,#fff8e8,#cdb88e);box-shadow:0 5px 8px #2a11056b;font-style:normal}.mini-die-art b{width:5px;height:5px;border-radius:50%;background:#28170d}.mini-die-art b:nth-child(2){grid-area:1 / 2}.mini-die-art b:nth-child(3){grid-area:2 / 1}.snakes-menu-prose{max-width:43ch;margin:0;color:var(--yk-soft);line-height:1.75}.snakes-settings{width:min(100%,390px);padding:0 16px;border:1px solid var(--yk-line);border-radius:16px;background:#190d078f}.snakes-game-screen{position:fixed;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;min-height:100vh;min-height:100dvh;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));overflow:hidden}.snakes-game-top{display:grid;grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr);align-items:center;width:min(100%,640px);min-height:56px;margin:0 auto 4px;padding:2px 4px 6px;border-block-end:1px solid rgba(201,154,67,.2);background:#120a0561;box-shadow:0 8px 24px #00000029;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.snakes-game-home{display:inline-flex;align-items:center;justify-self:start;gap:8px;min-width:44px;min-height:44px;color:var(--yk-brass);text-decoration:none}.snakes-game-home .yk-brand-mark{display:grid;width:30px;height:30px;place-items:center}.snakes-game-home .yk-brand-mark svg{display:block;width:100%;height:100%;filter:drop-shadow(0 3px 10px rgba(0,0,0,.45))}.snakes-game-home b{color:#d8c8a8;font:650 .67rem/1 var(--yk-sans);letter-spacing:.16em;white-space:nowrap}.snakes-game-title{max-width:18ch;margin:0;overflow:hidden;color:var(--yk-ink);font:500 clamp(.88rem,3.2vw,1.04rem) / 1.1 var(--yk-serif);text-align:center;text-overflow:ellipsis;white-space:nowrap}.snakes-game-top .ng-game-menu-button{justify-self:end;width:44px;height:44px;border-radius:12px}.snakes-play-area{display:grid;place-items:center;min-height:0}.snakes-board{position:relative;display:block;width:min(calc(100vw - 16px),calc(100dvh - 210px),640px);aspect-ratio:1;padding:0;overflow:hidden;border:1px solid rgba(238,211,145,.58);border-radius:clamp(10px,2.6vw,18px);background:url(/assets/snakes/board-surface-v1.webp) center / 100% 100% no-repeat;box-shadow:inset 0 0 0 2px #c99a4375,0 20px 48px #0000007a}.snakes-field{position:absolute;inset:7.7%;display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:repeat(10,1fr);width:auto;height:auto;overflow:visible;border:1px solid rgba(73,40,19,.66);background:#f0dcb557;box-shadow:0 0 0 1px #fff4d261,inset 0 0 18px #401f0d2e}.snakes-field:after{position:absolute;inset:0;z-index:4;border:1px solid rgba(73,40,19,.46);background:repeating-linear-gradient(to right,transparent 0 calc(10% - .5px),rgba(74,43,28,.34) calc(10% - .5px) 10%),repeating-linear-gradient(to bottom,transparent 0 calc(10% - .5px),rgba(74,43,28,.34) calc(10% - .5px) 10%);content:"";pointer-events:none}.snakes-cell{position:relative;display:flex;align-items:flex-start;justify-content:flex-start;min-width:0;min-height:0;padding:1px 2px;border:.5px solid rgba(74,43,28,.28);color:#361f13c7;background:#faedd0b3;font:700 clamp(.4rem,1.55vw,.67rem) / 1 var(--yk-sans)}.snakes-cell>span{position:relative;z-index:7;min-width:1.4em;padding:1px;border-radius:2px;background:#fff5db9e;text-align:center;text-shadow:0 1px rgba(255,255,255,.72)}.snakes-cell:nth-child(20n+11),.snakes-cell:nth-child(20n+12),.snakes-cell:nth-child(20n+13),.snakes-cell:nth-child(20n+14),.snakes-cell:nth-child(20n+15),.snakes-cell:nth-child(20n+16),.snakes-cell:nth-child(20n+17),.snakes-cell:nth-child(20n+18),.snakes-cell:nth-child(20n+19),.snakes-cell:nth-child(20n+20){background:#c29b6985}.snakes-cell.is-last{background:#ffeeafe6;box-shadow:inset 0 0 0 2px var(--yk-turquoise)}.snakes-cell.is-start,.snakes-cell.is-finish{color:#fff1c7;background:#4a2b1c}.snakes-cell:is(.is-start,.is-finish)>span{background:#28140a9e;text-shadow:none}.snakes-cell:is(.is-snake-head,.is-snake-tail)>span{color:#6f2432;background:#fff6dae6;box-shadow:0 0 0 1px #7a2434c2;text-shadow:0 1px rgba(255,255,255,.7)}.snakes-cell:is(.is-ladder-foot,.is-ladder-top)>span{color:#145f58;background:#f4efd3eb;box-shadow:0 0 0 1px #1d756dc2;text-shadow:0 1px rgba(255,255,255,.7)}.snakes-cell.is-finish i{position:absolute;inset:50% auto auto 50%;color:var(--yk-turquoise);font-style:normal;font-size:clamp(.55rem,2vw,1.1rem);transform:translate(-50%,-45%)}.snakes-connectors-art,.snakes-endpoints,.snakes-connectors-fallback{position:absolute;inset:0;z-index:2;width:100%;height:100%;overflow:visible;pointer-events:none}.snakes-endpoints{z-index:5}.board-endpoint{position:absolute;left:var(--endpoint-x);top:var(--endpoint-y);display:grid;place-items:center;width:clamp(5px,1.8vw,9px);aspect-ratio:1;border:1.5px solid currentColor;border-radius:50%;box-shadow:0 1px 2px #260f078f;transform:translate(-50%,-50%)}.board-snake-endpoint{color:#7a2434;background:#7a2434}.board-snake-endpoint.is-tail{color:#7a2434;background:#fff0c9eb}.board-ladder-endpoint{color:#1d756d;border-radius:2px;background:#75cfc3}.board-ladder-endpoint.is-top{color:#1d756d;background:#f8e4a7f0;transform:translate(-50%,-50%) rotate(45deg)}.snakes-connectors-fallback{display:none}.board-connector-art{position:absolute;left:var(--connector-x);top:var(--connector-y);display:block;pointer-events:none;transform:translate(-50%,-50%) rotate(var(--connector-angle));transform-origin:center}.board-snake-art{z-index:3;width:calc(var(--connector-length) * .285714%);height:calc(var(--connector-length) * 1%)}.board-ladder-art{z-index:2;width:calc(var(--connector-length) * 1%);height:calc(var(--connector-length) * 1%)}.board-snake-sprite,.board-ladder-sprite{position:absolute;inset:0;display:block;background-repeat:no-repeat;filter:drop-shadow(0 1.2px .8px rgba(34,14,5,.58))}.board-snake-sprite{background-image:url(/assets/snakes/snake-characters-v2.webp);background-size:700% 100%}.board-ladder-sprite{background-image:url(/assets/snakes/ladder-styles-v1.webp);background-size:300% 200%;transform:scaleX(.5)}.ladder-art-0 .board-ladder-sprite{background-position:0 0}.ladder-art-1 .board-ladder-sprite{background-position:50% 0}.ladder-art-2 .board-ladder-sprite{background-position:100% 0}.ladder-art-3 .board-ladder-sprite{background-position:0 100%}.ladder-art-4 .board-ladder-sprite{background-position:50% 100%}.ladder-art-5 .board-ladder-sprite{background-position:100% 100%}.snake-art-0 .board-snake-sprite{background-position:0 0}.snake-art-1 .board-snake-sprite{background-position:16.666667% 0}.snake-art-2 .board-snake-sprite{background-position:33.333333% 0}.snake-art-3 .board-snake-sprite{background-position:50% 0}.snake-art-4 .board-snake-sprite{background-position:66.666667% 0}.snake-art-5 .board-snake-sprite{background-position:83.333333% 0}.snake-art-6 .board-snake-sprite{background-position:100% 0}.board-ladder-art.is-mirrored .board-ladder-sprite{transform:scaleX(-.5)}.board-connector-art.is-active>i{animation:connectorCelebrate .54s ease-out var(--connector-active-delay, 0ms) both}@keyframes connectorCelebrate{0%,to{filter:drop-shadow(0 1.2px .8px rgba(34,14,5,.58)) brightness(1)}42%{filter:drop-shadow(0 0 5px rgba(255,224,125,.95)) brightness(1.3) saturate(1.15)}}.board-ladder{fill:none;stroke:#2b7f79;stroke-width:.68;filter:drop-shadow(0 .4px .25px rgba(25,12,7,.7))}.board-snake path{fill:none;stroke:#4a211d;stroke-width:2.5;filter:drop-shadow(0 .45px .3px rgba(25,12,7,.75))}.board-snake circle:not(.snake-eye){fill:#802f3d;stroke:#4a211d;stroke-width:.45}.board-snake .snake-eye{fill:#f4dfac;stroke:none}.snake-token{position:absolute;z-index:8;left:var(--token-x);top:var(--token-y);display:grid;place-items:center;width:7%;aspect-ratio:1;border:1px solid rgba(48,24,11,.92);border-radius:50%;color:#1a0f08;background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.75),transparent 18%),radial-gradient(circle at 50% 50%,#f7df9e,#b67724 76%);box-shadow:0 2px 5px #1409039e,inset 0 0 0 2px #ffebaa7a,inset 0 -2px 4px #4b200847;font:800 clamp(.35rem,1.8vw,.78rem) / 1 var(--yk-sans);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y)));transition:left .42s cubic-bezier(.2,.75,.25,1),top .42s cubic-bezier(.2,.75,.25,1)}.snake-token.is-moving{transition:none;animation:tokenTravel .7s cubic-bezier(.2,.72,.24,1) both}.snake-token.is-move-pending{left:var(--token-from-x);top:var(--token-from-y);transition:none}.snake-token.is-move-pending.is-off-board{opacity:0}.snake-token.is-moving.via-ladder{animation-name:tokenClimb}.snake-token.is-moving.via-snake{animation-name:tokenSlide}@keyframes tokenTravel{0%{left:var(--token-from-x);top:var(--token-from-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) scale(.82)}56%{left:var(--token-landed-x);top:var(--token-landed-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-58% + var(--cluster-y))) scale(1.16)}to{left:var(--token-x);top:var(--token-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) scale(1)}}@keyframes tokenClimb{0%{left:var(--token-from-x);top:var(--token-from-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) scale(.82)}48%{left:var(--token-landed-x);top:var(--token-landed-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-62% + var(--cluster-y))) scale(1.18)}76%{transform:translate(calc(-50% + var(--cluster-x)),calc(-56% + var(--cluster-y))) scale(1.08)}to{left:var(--token-x);top:var(--token-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) scale(1)}}@keyframes tokenSlide{0%{left:var(--token-from-x);top:var(--token-from-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) rotate(0) scale(.9)}52%{left:var(--token-landed-x);top:var(--token-landed-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) rotate(-14deg) scale(1.12)}78%{transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) rotate(10deg) scale(1.05)}to{left:var(--token-x);top:var(--token-y);transform:translate(calc(-50% + var(--cluster-x)),calc(-50% + var(--cluster-y))) rotate(0) scale(1)}}.snake-token.token-1,.snakes-player.token-1 .snakes-token-shape{background:radial-gradient(circle at 35% 28%,#c8fff7,#49a99f 70%)}.snake-token.token-2,.snakes-player.token-2 .snakes-token-shape{background:radial-gradient(circle at 35% 28%,#ffd9de,#c76777 70%)}.snake-token.token-3,.snakes-player.token-3 .snakes-token-shape{background:radial-gradient(circle at 35% 28%,#e8ddff,#937bc3 70%)}.snakes-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:6px 10px;width:min(100%,640px);margin:7px auto 0}.snakes-player-rail{grid-column:1 / -1;display:grid;grid-template-columns:repeat(var(--players, 2),minmax(0,1fr));grid-auto-flow:column;gap:5px}.snakes-player{display:flex;align-items:center;gap:6px;min-width:0;min-height:38px;padding:5px 7px;border:1px solid rgba(201,154,67,.2);border-radius:10px;color:var(--yk-soft);background:#1a0e08b8;font:600 .62rem/1.1 var(--yk-sans)}.snakes-player.is-active{border-color:#5db8aec7;color:var(--yk-ink)}.snakes-player>span:last-child{display:grid;min-width:0}.snakes-player b,.snakes-player small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snakes-player small{color:var(--yk-soft);font-size:.56rem}.snakes-token-shape{display:grid;place-items:center;flex:0 0 auto;width:21px;height:21px;border-radius:50%;color:#1a0f08;background:#edd08a;font-size:.62rem}.snakes-status{align-self:center;margin:0;color:var(--yk-brass-light);font:600 clamp(.68rem,2.9vw,.82rem) / 1.3 var(--yk-sans)}.snakes-roll{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-width:142px;min-height:56px;padding-block:6px;padding-inline:10px 16px;border:1px solid #f0d58d;border-radius:16px;color:#241306;background:linear-gradient(145deg,rgba(255,255,255,.24),transparent 42%),linear-gradient(180deg,#f0d78e,#b87b22);box-shadow:inset 0 1px #fff7cead,0 8px 22px #be84294d;font:800 .78rem/1 var(--yk-sans);cursor:pointer}.snakes-roll:disabled{cursor:default;filter:saturate(.45);opacity:.58}.snakes-roll.is-rolling:disabled{filter:none;opacity:1}.snakes-die{--die-size: 38px;position:relative;display:block;flex:0 0 auto;width:48px;height:48px;perspective:210px}.snakes-die-hop{position:absolute;inset:5px;transform-style:preserve-3d}.snakes-die-cube{position:absolute;inset:0;width:var(--die-size);height:var(--die-size);transform:var(--die-rest);transform-style:preserve-3d;transition:transform .18s ease-out}.snakes-die-face{position:absolute;inset:0;display:block;overflow:hidden;border:1px solid #9e8a65;border-radius:7px;background:linear-gradient(150deg,rgba(255,255,255,.85),transparent 38%),linear-gradient(145deg,#fff8e7,#d2bd92);box-shadow:inset 0 -3px 5px #5233142e,inset 0 0 0 1px #ffffff5c;backface-visibility:hidden}.snakes-die-face-1{transform:translateZ(calc(var(--die-size) / 2))}.snakes-die-face-6{transform:rotateY(180deg) translateZ(calc(var(--die-size) / 2))}.snakes-die-face-2{transform:rotateY(90deg) translateZ(calc(var(--die-size) / 2))}.snakes-die-face-5{transform:rotateY(-90deg) translateZ(calc(var(--die-size) / 2))}.snakes-die-face-3{transform:rotateX(90deg) translateZ(calc(var(--die-size) / 2))}.snakes-die-face-4{transform:rotateX(-90deg) translateZ(calc(var(--die-size) / 2))}.snakes-die-pip{position:absolute;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#5a3820,#160d07 72%);box-shadow:inset 0 1px 1px #fff3;transform:translate(-50%,-50%)}.pip-tl{left:27%;top:27%}.pip-tr{left:73%;top:27%}.pip-ml{left:27%;top:50%}.pip-mr{left:73%;top:50%}.pip-cc{left:50%;top:50%}.pip-bl{left:27%;top:73%}.pip-br{left:73%;top:73%}.snakes-die-shadow{position:absolute;inset:auto 6px 0;height:8px;border-radius:50%;background:#3218086b;filter:blur(3px);transform:scaleX(.8)}.snakes-roll.is-rolling .snakes-die-cube{animation:snakesDieTumble 1.1s linear infinite}.snakes-roll.is-rolling .snakes-die-shadow{animation:snakesDieShadow 1.1s ease-in-out infinite}.snakes-die.is-tumbling .snakes-die-cube,.snakes-die.is-tumbling .snakes-die-shadow{animation:none;transition:none}.snakes-roll.is-result:disabled{filter:none;opacity:1}.snakes-roll.is-result .snakes-die-cube{animation:snakesDieReveal .34s cubic-bezier(.2,.82,.28,1) both}.snakes-roll.is-result .snakes-die-shadow{animation:snakesDieResultShadow .34s ease-out both}@keyframes snakesDieTumble{0%{transform:translate3d(-6px,-14px,0) rotateX(0) rotateY(0) rotate(0)}40%{transform:translate3d(5px,0,0) rotateX(290deg) rotateY(150deg) rotate(12deg)}70%{transform:translate3d(-3px,-9px,0) rotateX(500deg) rotateY(250deg) rotate(-8deg)}to{transform:translate3d(-6px,-14px,0) rotateX(720deg) rotateY(360deg) rotate(0)}}@keyframes snakesDieShadow{0%,58%{opacity:.2;transform:scaleX(.45)}40%,to{opacity:.72;transform:scaleX(.9)}}@keyframes snakesDieReveal{0%{transform:var(--die-rest)}42%{transform:translate3d(0,-8px,0) scale(1.12) var(--die-rest)}72%{transform:translate3d(0,-4px,0) scale(1.06) var(--die-rest)}to{transform:var(--die-rest)}}@keyframes snakesDieResultShadow{0%{opacity:.72;transform:scaleX(.9)}42%{opacity:.28;transform:scaleX(.58)}to{opacity:.58;transform:scaleX(.82)}}.snakes-result{position:fixed;inset:50% auto auto 50%;z-index:50;display:grid;gap:12px;transform:translate(-50%,-50%);box-shadow:0 30px 90px #000000b3,0 0 0 100vmax #0502019e}html[lang=ckb] :is(.snakes-game-home b,.snakes-game-title,.snakes-cell,.snakes-player,.snakes-status,.snakes-roll){font-family:Tahoma,Noto Sans Arabic,Noto Naskh Arabic,sans-serif;letter-spacing:0}@media(max-width:430px){.snakes-game-top{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}.snakes-game-home b{display:none}.snakes-game-home .yk-brand-mark{width:38px;height:38px}.snakes-player-rail{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}.snakes-player{min-height:32px;padding-block:3px}.snakes-board{width:min(calc(100vw - 16px),calc(100dvh - 224px))}}@media(max-width:360px){.snakes-game-home b{display:none}.snakes-game-home .yk-brand-mark{width:38px;height:38px}}@media(max-height:650px)and (orientation:portrait){.snakes-game-top{min-height:44px}.snakes-game-top .ng-game-menu-button{width:44px;height:44px}.snakes-board{width:min(calc(100vw - 16px),calc(100dvh - 182px))}.snakes-player-rail{display:flex;overflow:hidden}.snakes-player{flex:1 1 0}.snakes-player small{display:none}.snakes-controls{margin-top:4px}}@media(orientation:landscape)and (max-height:620px){.snakes-game-screen{grid-template-columns:minmax(260px,1fr) minmax(220px,.62fr);grid-template-rows:auto 1fr;gap:7px 18px}.snakes-game-top{grid-column:2;grid-row:1;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;width:100%}.snakes-game-home b{display:none}.snakes-play-area{grid-column:1;grid-row:1 / -1}.snakes-board{width:min(100%,calc(100dvh - max(14px,env(safe-area-inset-top)) - max(14px,env(safe-area-inset-bottom))),640px)}.snakes-controls{grid-column:2;grid-row:2;align-self:center;width:100%;grid-template-columns:1fr}.snakes-player-rail{grid-column:1;display:grid;grid-auto-flow:row;grid-template-columns:repeat(2,1fr)}.snakes-status,.snakes-roll{grid-column:1;width:100%}}@media(prefers-reduced-motion:reduce){.snake-token,.snake-token.is-moving,.board-connector-art.is-active>i,.snakes-roll.is-rolling .snakes-die-cube,.snakes-roll.is-rolling .snakes-die-shadow{animation:none;transition:none}}.snakes-game-screen.is-motion-off .snake-token.is-moving,.snakes-game-screen.is-motion-off .board-connector-art.is-active>i,.snakes-game-screen.is-motion-off .snakes-roll.is-rolling .snakes-die-cube,.snakes-game-screen.is-motion-off .snakes-roll.is-rolling .snakes-die-shadow{animation:none;transition:none}@media(forced-colors:active){.snakes-board,.snakes-cell,.snakes-player,.snakes-roll,.snake-token{color:CanvasText;background:Canvas;border:2px solid CanvasText}.snakes-cell.is-last{outline:3px solid Highlight}.snakes-board{background-image:none}.snakes-connectors-art{display:none}.snakes-connectors-fallback{display:block}.board-ladder,.board-snake path,.board-snake circle{stroke:CanvasText}}
