.game-player{--gp-lime:var(--tg-lime,#c6f96a);--gp-muted:var(--tg-muted,#a2aca1);color:var(--tg-text);background:var(--tg-surface);border:1px solid var(--tg-line);border-radius:var(--tg-radius-card);box-sizing:border-box;width:min(100%,720px);font-family:var(--tg-font-body);margin:auto;padding:32px;box-shadow:0 28px 100px #0007}.game-player *{box-sizing:border-box}.game-player button{font:inherit;cursor:pointer}.game-player button:focus-visible{outline:3px solid var(--gp-lime);outline-offset:4px}.game-player button:disabled,.game-player .gp-primary[aria-disabled=true]{cursor:default}.gp-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px;display:flex}.gp-header h2{font-family:var(--tg-font-display);letter-spacing:-.04em;margin:9px 0 0;font-size:clamp(28px,3.5vw,40px);font-weight:800;line-height:1.1}.gp-eyebrow{font-family:var(--tg-font-mono);letter-spacing:1.5px;color:#adc2b5;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.gp-eyebrow i{background:var(--gp-lime);border-radius:50%;width:5px;height:5px}.gp-close{border:1px solid var(--tg-line);background:var(--tg-surface-raised);color:#c5d0c9;border-radius:13px;place-items:center;width:42px;height:42px;line-height:30px;display:grid;font-size:25px!important}.gp-close:hover{background:#2d3a31}.gp-stats{border:1px solid var(--tg-line);background:var(--tg-bg);border-radius:20px;grid-template-columns:repeat(3,1fr);padding:22px 0;display:grid}.gp-stats>div{flex-direction:column;gap:6px;padding:0 20px;display:flex}.gp-stats>div+div{border-inline-start:1px solid #2b3830}.gp-stats span{font-family:var(--tg-font-mono);color:var(--gp-muted);font-size:12px}.gp-stats strong{font-family:var(--tg-font-display);letter-spacing:-.5px;font-size:30px}.gp-stats small{color:#72857c;font-size:13px;font-weight:400}.gp-lime{color:var(--gp-lime)!important}.gp-stats .gp-small-stat{letter-spacing:-.2px;font-size:16px;line-height:29px}.gp-instructions{color:var(--tg-muted);margin:22px 0;font-size:14px;line-height:1.8}.gp-keyboard-help{margin-top:4px;font-size:12px;display:block}.gp-card-grid{grid-template-columns:repeat(4,1fr);gap:12px;max-width:540px;margin:0 auto;display:grid}.gp-memory-card{aspect-ratio:1.12;perspective:800px;background:0 0;border:0;border-radius:10px;padding:0;position:relative}.gp-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .4s;display:block;position:relative}.gp-memory-card.is-open .gp-card-inner{transform:rotateY(180deg)}.gp-card-back,.gp-card-face{backface-visibility:hidden;border:1px solid #385445;border-radius:10px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.gp-card-back{background:linear-gradient(135deg,#c6f96a16,#0000 48%),linear-gradient(315deg,#c4b5fa12,#0000 52%),#18271e;border-color:#576b42;box-shadow:inset 0 0 0 4px #122016,0 3px 8px #0002}.gp-card-back:before{content:"";pointer-events:none;border:1px solid #c6f96a25;border-radius:5px;position:absolute;inset:6px}.gp-card-back>svg{width:52%;max-width:64px;height:62%;max-height:64px;position:relative}.gp-memory-card:hover:not([aria-disabled=true]) .gp-card-back{border-color:var(--gp-lime);background:linear-gradient(135deg,#c6f96a25,#0000 48%),linear-gradient(315deg,#c4b5fa18,#0000 52%),#203324}.gp-card-face{background:#24342e;font-size:44px;transform:rotateY(180deg)}.gp-card-face small{font-size:13px;position:absolute;top:7px;left:10px}.gp-card-face small:last-child{inset:auto 10px 7px auto;transform:rotate(180deg)}.gp-memory-card.is-matched .gp-card-face{background:#263d2c;border-color:#8dc45c;box-shadow:inset 0 0 25px #a2ef3310}.gp-memory-card .gp-card-face[data-tg-card-suit=true]{background:#f5f2e9}.gp-memory-card[aria-disabled=true]{cursor:default}.gp-match-badge{border:2px solid var(--tg-surface);background:var(--gp-lime);color:#14221a;pointer-events:none;border-radius:50%;place-items:center;width:23px;height:23px;display:grid;position:absolute;inset-block-start:-5px;inset-inline-end:-5px}.gp-game-footer{border-top:1px solid #2b3730;justify-content:space-between;align-items:center;gap:18px;min-height:67px;margin-top:23px;padding-top:20px;display:flex}.gp-game-footer>div{flex-direction:column;gap:6px;min-width:0;display:flex}.gp-game-footer strong{font-size:16px;font-weight:650}.gp-game-footer>div>span{color:#95a59a;font-size:13px;line-height:1.5}.gp-primary,.gp-secondary{border-radius:var(--tg-radius-control);white-space:nowrap;border:0;flex-shrink:0;justify-content:center;align-items:center;gap:14px;height:48px;padding:0 20px;transition:background .2s,transform .2s;display:flex;font-size:14px!important;font-weight:750!important}.gp-primary{background:var(--gp-lime);color:#14221a}.gp-primary:hover:not(:disabled):not([aria-disabled=true]){background:#d0ff8f;transform:translateY(-1px)}.gp-primary:disabled,.gp-primary[aria-disabled=true]{opacity:.6}.gp-secondary{background:var(--tg-surface-raised);color:var(--tg-text);border:1px solid #3b453c}.gp-secondary:hover{background:#2d4234}.gp-primary>span,.gp-secondary>span{font-size:18px;font-weight:400}.gp-bowling-scene{background:radial-gradient(at 50% 5%,#33472c 0,#14291e 35%,#0b1713 75%);border:1px solid #344333;border-radius:14px;height:290px;position:relative;overflow:hidden}.gp-lane-sign{text-align:center;color:#b6f782;letter-spacing:4px;text-shadow:0 0 15px #b6f76055;font-size:13px;font-weight:800;position:absolute;top:13px;left:0;right:0}.gp-lane-sign>span{color:#c2cdd7}.gp-lane{clip-path:polygon(30% 0,70% 0,100% 100%,0 100%);background:linear-gradient(90deg,#314a24 0,#8fb354 2%,#344b2c 3% 7%,#7e7e4b 8%,#b2ab74 50%,#7e7e4b 92%,#344b2c 93% 97%,#8fb354 98%,#314a24 100%);width:62%;height:224px;position:absolute;bottom:-10px;left:19%;box-shadow:inset 0 0 40px #20352588}.gp-lane-lines{opacity:.8;background:repeating-linear-gradient(89deg,#0000 0 18px,#38422620 19px 20px);position:absolute;inset:0}.gp-pin-area{width:30%;height:65px;position:absolute;top:12px;left:35%}.gp-pin{transform-origin:bottom;background:linear-gradient(90deg,#9ca798,#f9fff2 46%,#ccd8c5);border-radius:45% 45% 42% 42%;width:11px;height:27px;transition:transform .35s,opacity .35s;position:absolute;box-shadow:2px 5px 4px #26391c77}.gp-pin:before{content:"";background:#fffcec;border-radius:50%;width:5px;height:8px;position:absolute;top:0;left:3px}.gp-pin:after{content:"";background:#ed6653;height:4px;position:absolute;top:7px;left:3px;right:3px;box-shadow:0 3px #f3f4da}.gp-pin.is-fallen{opacity:.35}.gp-lane-arrows{text-align:center;color:#41533499;word-spacing:11px;font-size:17px;position:absolute;top:100px;left:25%;right:25%}.gp-lane-arrows span{vertical-align:10px}.gp-bowling-ball{background:radial-gradient(circle at 30% 25%,#ccff81,#83c53a 35%,#345e15 78%);border-radius:50%;width:50px;height:50px;position:absolute;bottom:17px;left:calc(50% - 25px);transform:translate(0)scale(1);box-shadow:9px 13px 13px #14290c99,inset -6px -5px 10px #20360966}.gp-bowling-ball i{background:#1b3915;border-radius:50%;width:5px;height:6px;position:absolute;top:10px;left:17px;box-shadow:inset 1px 1px 2px #000}.gp-bowling-ball i:nth-child(2){top:10px;left:26px}.gp-bowling-ball i:nth-child(3){width:6px;height:7px;top:21px;left:22px}.gp-phase-rolling .gp-bowling-ball{animation:.9s ease-in forwards gp-roll}.gp-phase-result .gp-bowling-ball,.gp-phase-finished .gp-bowling-ball{opacity:0}.gp-roll-result{pointer-events:none;text-shadow:0 2px 14px #000b;flex-direction:column;align-items:center;gap:5px;animation:.25s ease-out gp-result;display:flex;position:absolute;inset:75px 0 auto}.gp-roll-result strong{letter-spacing:-1.5px;color:#e3ffa5;font-size:38px;font-style:italic}.gp-roll-result>span{color:#eff8d8;background:#14251bba;border:1px solid #58713f77;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:700}.gp-round-scoreboard{flex-direction:column;gap:6px;display:flex;position:absolute;top:46px;right:13px}.gp-round-scoreboard>div{background:#0d1c15bb;border:1px solid #344531;border-radius:5px;justify-content:space-between;align-items:center;gap:10px;width:56px;padding:6px 9px;display:flex}.gp-round-scoreboard small{color:#95a38f;font-size:9px}.gp-round-scoreboard strong{color:#667e5d;font-size:12px}.gp-round-scoreboard .is-played strong{color:var(--gp-lime)}.gp-aim-control{margin-top:17px}.gp-aim-label{color:#9fac9e;justify-content:space-between;margin-bottom:9px;font-size:10px;display:flex}.gp-aim-label span:last-child{color:var(--gp-lime)}.gp-aim-meter{background:linear-gradient(90deg,#364530,#628843 30%,#a9d75e 43% 57%,#628843 70%,#364530 100%);border:1px solid #566645;border-radius:7px;height:13px;position:relative;overflow:visible}.gp-perfect-zone{background:#c6ff75;border-left:1px solid #e2ffad;border-right:1px solid #e2ffad;width:14%;position:absolute;top:0;bottom:0;left:43%;box-shadow:0 0 13px #bbf76255}.gp-aim-pointer{background:#fff;border-radius:3px;width:4px;height:23px;position:absolute;top:-6px;transform:translate(-50%);box-shadow:0 1px 6px #0008}@keyframes gp-roll{0%{transform:translate(0)scale(1)}90%{opacity:1}to{transform:translate(var(--roll-offset), -151px) scale(.32);opacity:0}}@keyframes gp-result{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (max-width:600px){.game-player{border-radius:24px;padding:22px}.gp-header{margin-bottom:20px}.gp-header h2{font-size:29px}.gp-eyebrow{letter-spacing:1px;font-size:10px}.gp-stats{padding:14px 0}.gp-stats>div{padding:0 12px}.gp-stats span{font-size:10px}.gp-stats strong{font-size:25px}.gp-stats .gp-small-stat{font-size:13px}.gp-stats small{font-size:10px}.gp-card-grid{gap:9px}.gp-memory-card{aspect-ratio:.88}.gp-card-face{font-size:35px}.gp-game-footer{align-items:flex-start;gap:12px}.gp-game-footer strong{font-size:14px}.gp-game-footer>div>span{font-size:12px}.gp-primary,.gp-secondary{gap:9px;height:46px;padding:0 14px;font-size:13px!important}.gp-bowling-scene{height:260px}.gp-lane{width:82%;height:207px;left:9%}.gp-pin{width:9px;height:24px}.gp-pin:before{left:2px}.gp-pin:after{left:2px;right:2px}.gp-lane-arrows{word-spacing:5px}.gp-round-scoreboard{top:39px;right:8px}.gp-round-scoreboard>div{width:45px;padding:5px 6px}.gp-roll-result strong{font-size:32px}.gp-roll-result{top:75px}.gp-instructions{font-size:13px}}@media (prefers-reduced-motion:reduce){.gp-card-inner,.gp-pin,.gp-primary{transition:none}.gp-roll-result{animation:none}.gp-phase-rolling .gp-bowling-ball{animation-duration:.1s}}@media (max-width:420px){.game-player{padding:20px 18px}.gp-game-footer{flex-wrap:wrap}.gp-primary,.gp-secondary,.gp-game-footer>div{width:100%}.gp-stats>div{padding-left:9px;padding-right:9px}.gp-stats strong{font-size:23px}}html[dir=rtl] .game-player .tg-directional-icon{transform:scaleX(-1)}.game-player--table{background:0 0;border:0;padding:0;overflow:visible}.game-player--roulette{width:100%;min-width:0;background:0 0!important;padding:0!important;display:block!important}
.sc-stage{aspect-ratio:480/560;border:1px solid var(--tg-line);background:#0d1412;border-radius:20px;width:min(100%,480px);max-height:62dvh;margin:22px auto 0;position:relative;overflow:hidden}.sc-canvas{touch-action:none;cursor:none;width:100%;height:100%;display:block}.sc-overlay{text-align:center;background:#0d1412c7;place-content:center;justify-items:center;gap:12px;padding:24px;display:grid;position:absolute;inset:0}.sc-overlay strong{font-family:var(--tg-font-display);letter-spacing:-.5px;font-size:30px}.sc-overlay p{max-width:30ch;color:var(--tg-muted);margin:0;line-height:1.5}.sc-overlay .gp-primary{margin-top:8px}.sc-combo{color:#ffd36d;font:700 13px/1 var(--tg-font-mono);pointer-events:none;background:#ffd36d24;border:1px solid #ffd36d73;border-radius:999px;padding:6px 12px;position:absolute;top:12px;right:14px}@media (max-width:600px){.sc-stage{border-radius:16px;margin-top:16px}}.gp-stats .sc-lives{color:#ff88b6;align-items:center;gap:4px;display:inline-flex}.gp-stats .sc-lives .sc-life-empty{color:#6b5560;font-size:inherit}
.generated-player{width:100%;font-family:var(--tg-font-body);background:var(--tg-surface);color:var(--tg-text);border-radius:var(--tg-radius-card);padding:clamp(24px,3vw,36px)}.generated-player-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.generated-player-header>div>span{color:#c4b5fa;font-family:var(--tg-font-mono);letter-spacing:.13em;align-items:center;gap:6px;font-size:13px;display:flex}.generated-player-header h2{letter-spacing:-.04em;overflow-wrap:anywhere;margin-top:10px;font-size:clamp(28px,3vw,38px);font-weight:800;line-height:1.1}.generated-player-instructions{color:#acb8a4;white-space:pre-wrap;max-height:120px;margin-bottom:17px;font-size:15px;line-height:1.8;overflow:auto}.generated-player-stage{border:1px solid var(--tg-line);background:#0d120f;border-radius:20px;width:100%;height:min(58vh,600px);min-height:300px;overflow:hidden}.generated-player-stage iframe{border:0;width:100%;height:100%;display:block}.generated-player-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:17px;display:flex}.generated-player-toolbar>span{color:#c6f96a;align-items:center;gap:7px;font-size:13px;display:flex}.generated-player-note{color:#83937b;margin-top:15px;font-size:13px;line-height:1.7}.generated-player-empty{color:#b0bfaa;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:280px;display:flex}.generated-player-warning{color:#e8c58b;padding:12px 0 0;font-size:13px;line-height:1.7}.generated-player-exit{color:#b4a6d5;align-items:center;gap:7px;margin-top:22px;font-size:13px;display:flex}@media (max-width:520px){.generated-player{padding:22px}.generated-player-header h2{font-size:28px}.generated-player-stage{height:52vh;min-height:330px}}.generated-player .generated-player-header h2{margin-top:10px}.generated-player-toolbar .button{border-radius:var(--tg-radius-control);min-height:48px}.generated-player-exit{min-height:44px}.generated-player-exit:focus-visible{outline:2px solid var(--tg-lime);outline-offset:4px;border-radius:8px}@media (max-width:520px){.generated-player-header{gap:12px}.generated-player-instructions{font-size:14px}.generated-player-toolbar{align-items:stretch}.generated-player-toolbar>.button{width:100%}.generated-player-stage{border-radius:14px}}html[dir=rtl] .generated-player .tg-directional-icon{transform:scaleX(-1)}
.game-share{color:#f4f3e8;background:#102d26;border:1px solid #c6f96a35;border-radius:16px;min-width:0;margin-block:16px}.game-share summary{cursor:pointer;border-radius:12px;align-items:center;gap:10px;width:fit-content;padding:13px 16px;font-weight:700;display:flex}.game-share summary::marker{content:""}.game-share summary::-webkit-details-marker{display:none}.game-share summary:after{content:"+";color:#c6f96a;margin-inline-start:8px}.game-share[open] summary:after{content:"−"}.game-share-body{overflow-wrap:anywhere;padding:0 16px 14px}.game-share-body p{margin-block:8px 12px;line-height:1.6}.game-share-prompt{font-weight:600}.game-share-actions,.game-share-networks{flex-wrap:wrap;gap:8px;margin-block:12px;display:flex}.game-share button,.game-share a{color:#f4f3e8;min-height:44px;font:inherit;cursor:pointer;background:#173c31;border:1px solid #c6f96a66;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;text-decoration:none;display:inline-flex}.game-share button:hover,.game-share a:hover{background:#27513d}.game-share button[aria-disabled=true]{opacity:.65;cursor:wait}.game-share summary:focus-visible,.game-share button:focus-visible,.game-share a:focus-visible,.game-share textarea:focus-visible{outline-offset:3px;outline:3px solid #c6f96a}.game-share-help,.game-share-caption{color:#d0dbd2;font-size:.875rem}.game-share-caption{gap:8px;display:grid}.game-share textarea{box-sizing:border-box;resize:vertical;color:#f4f3e8;width:100%;min-width:0;min-height:100px;font:inherit;background:#0a211c;border:1px solid #c6f96a55;border-radius:10px;padding:12px;line-height:1.6}.game-share .game-share-status:empty{margin:0}.game-share--score{border-color:#c6f96a88}@media (max-width:420px){.game-share-actions>button{flex:auto}.game-share-networks>a{flex:40%}}
