.match-result-backdrop{z-index:60;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom))}.match-result{text-align:center;background:radial-gradient(at 50% 0,#39543b,#123026 65%);border:1px solid #d1ae63;border-radius:22px;width:min(460px,100%);max-height:calc(100dvh - 32px);padding:24px 28px 18px;overflow-y:auto;box-shadow:0 20px 80px #0009,inset 0 0 0 5px #cfac6612}.match-result.defeat{background:radial-gradient(at 50% 0,#414745,#172b26 65%);border-color:#b8b3a2}.match-result .eyebrow{margin:0;font-size:10px}.match-result-art{justify-content:center;align-items:flex-end;height:130px;margin:8px auto 12px;display:flex;position:relative}.match-result-art .result-avatar{object-fit:contain;filter:drop-shadow(0 7px 10px #0006);width:110px;height:130px}.match-result-art .result-trophy{object-fit:contain;z-index:1;width:60px;height:70px;margin-left:-14px}.match-result h2{color:#ffe4a4;font:26px/1.25 Rye,Georgia,serif}.match-result.defeat h2{color:#f1e4cc}.match-result #match-result-reason{overflow-wrap:anywhere;margin:12px 0 6px;font:16px/1.45 Bree,Georgia,serif}.match-result-winner{color:#d1d6c7;overflow-wrap:anywhere;font:12px/1.5 Roboto,sans-serif}.match-result-scores{border-block:1px solid #c4b48540;grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0 12px;padding:14px 0;display:grid}.match-result-scores>div{flex-direction:column;gap:3px;padding:0 8px;display:flex}.match-result-scores>div+div{border-left:1px solid #c4b48540}.match-result-scores span{overflow-wrap:anywhere;font:12px/1.4 Bree,Georgia,serif}.match-result-scores strong{font:34px/1.2 Alfa,Georgia,serif}.match-result-scores small{color:#c8cfbc;font-size:10px}.match-result-scores .winner strong{color:#f3cf7b}.match-result-pot{color:#ebd6a4;overflow-wrap:anywhere;margin:12px 0 18px;font:13px/1.5 Bree,Georgia,serif}.match-result>button{min-height:46px}.match-result>button+button{margin-top:5px;font:13px Roboto,sans-serif}@media (width<=480px){.match-result{padding:20px 18px 12px}.match-result h2{font-size:23px}}@media (height<=700px){.match-result-art{height:85px;margin:4px auto 8px}.match-result-art .result-avatar{height:85px}.match-result-art .result-trophy{height:55px}.match-result-scores{margin:10px 0;padding:8px 0}}.game-page.play-focused .trick{grid-template-rows:134px 134px}.game-page .sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.game-page.play-focused .game-table{min-height:800px;max-height:none}.game-page.play-focused .tricks{top:43%}.game-page.has-decision .game-table,.game-page.has-dialogue .game-table{min-height:980px}.game-page.has-decision .tricks,.game-page.has-dialogue .tricks{top:55%}.call-decision{z-index:8;text-align:center;flex-direction:column;align-items:center;gap:5px;width:min(620px,94%);display:flex;position:absolute;top:127px;left:50%;transform:translate(-50%)}.call-decision p{color:#fff1cb;text-shadow:0 2px 4px #000;margin:0;font:16px Bree,serif}.call-decision p b{color:#ffda8c}.call-decision p span{margin-top:5px;font:12px Roboto,sans-serif;display:block}.pending-call-asset{object-fit:contain;filter:drop-shadow(0 5px 7px #0009);width:250px;height:84px}.response-actions{justify-content:center;gap:14px;width:100%;display:flex}.game-page .response-button{filter:drop-shadow(0 0 5px #ffd98190)drop-shadow(0 5px 5px #0008);background:0 0;border:0;border-radius:24px;flex:0 216px;width:216px;height:72px;padding:0;transition:filter .15s,transform .15s}.response-button img{object-fit:contain;width:100%;height:100%;display:block}.game-page .response-button:hover:not(:disabled){filter:brightness(1.16)drop-shadow(0 0 7px #ffe4ac);transform:translateY(-2px)}.game-page .response-button:active:not(:disabled){transform:translateY(2px)}.game-page .response-button:focus-visible{outline-offset:4px;outline:3px solid #fff0aa}.game-page .response-button:disabled{opacity:.5;filter:grayscale(.4)}.call-raises{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.game-page .call-raises button{color:#f5e1ad;background:#0c251eef;border:1px solid #bb9c61;border-radius:8px;min-height:40px;padding:8px 12px;font:13px Bree}.game-page.play-focused .actions .chant-action{background:0 0;border:0;border-radius:16px;flex-grow:0;width:156px;min-height:52px;padding:0}.chant-action img{object-fit:contain;width:100%;height:52px;display:block}.game-page .turn-clock.urgent svg{animation:none}.game-page.has-decision .table-status,.game-page.has-timeout .table-status{visibility:hidden}.game-page.has-dialogue .gesture-reaction{display:none}.timeout-notice{text-align:center;color:#ffe2a2;z-index:7;background:#0c271bf2;border-radius:8px;width:65%;padding:6px 10px;font:13px Bree;position:absolute;bottom:205px;left:50%;transform:translate(-50%)}.tanto-result{z-index:9;max-width:245px;position:absolute;top:135px;right:18px}.game-page .tanto-summary{color:#f4dc9c;text-align:left;background:#102c22dd;border:1px solid #b7955655;border-radius:10px;padding:10px 12px;font:13px/1.5 Bree}.game-page .tanto-result.expanded{text-align:center;width:min(650px,95%);max-width:none;top:126px;left:50%;right:auto;transform:translate(-50%)}.tanto-result header{color:#ffe2a0;text-shadow:0 2px 4px #000;justify-content:center;align-items:center;gap:15px;display:flex}.tanto-result header strong{font:18px Alfa}.tanto-result header span{font:12px Bree}.tanto-speakers{gap:12px;margin-top:12px;display:flex}.tanto-speaker{flex:1;align-items:center;min-width:0;padding-top:12px;display:flex;position:relative}.speaking-avatar{object-fit:contain;filter:drop-shadow(0 4px 4px #0008);z-index:1;width:90px;height:112px}.speech-bubble{color:#302215;min-height:120px;text-shadow:none;background-repeat:no-repeat;background-size:100% 100%;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;margin-left:-12px;padding:13px 13px 38px;display:flex}.speech-bubble span{overflow-wrap:anywhere;max-width:100%;font:10px Roboto}.speech-bubble strong{font:19px Bree}.game-page .speech-bubble small{overflow-wrap:anywhere;color:#4c3018;font:12px Bree}.tanto-winner{color:#ffe0a1;background:#0b241ce6;border-radius:8px;width:fit-content;max-width:100%;margin:12px auto 0;padding:8px 12px;font:15px Bree}.declined-result{color:#f1e2bd;font:17px Bree}.game-page .tanto-close{color:#ffe2a0;background:#193c2e;border:1px solid #997949;border-radius:8px;margin-top:8px;padding:7px 12px}.game-page.has-decision .tanto-result:not(.expanded){top:65px;right:180px}.game-page.has-dialogue.has-decision .game-table{min-height:1170px}.game-page.has-dialogue.has-decision .call-decision{top:350px}.game-page.has-dialogue.has-decision .tricks{top:63%}@media (width<=1100px){.game-page .tanto-result:not(.expanded){max-width:175px;top:125px;right:12px}.game-page.has-decision .tanto-result:not(.expanded){max-width:160px;top:15px;right:15px}}@media (width<=700px){.game-page.play-focused .game-table{min-height:670px}.game-page.play-focused .trick{grid-template-rows:108px 108px;gap:6px}.game-page.play-focused .tricks{top:38%}.game-page.has-decision .game-table,.game-page.has-dialogue .game-table{min-height:880px}.game-page.has-decision .tricks,.game-page.has-dialogue .tricks{top:51%}.game-page .call-decision{gap:5px;width:calc(100% - 20px);top:128px}.call-decision p{font-size:13px}.call-decision p span{font-size:11px}.pending-call-asset{width:192px;height:64px}.response-actions{gap:8px}.game-page .response-button{flex:144px;width:144px;max-width:180px;height:54px;min-height:48px}.game-page .call-raises button{padding:6px 9px;font-size:11px}.game-page.play-focused .turn-clock{z-index:10;background:#0c281dee;border-radius:18px;gap:3px;padding:3px 6px;display:flex;top:103px;bottom:auto;right:10px}.game-page .turn-clock svg{display:none}.game-page .turn-clock b{font-size:14px}.game-page .turn-clock span{font-size:8px}.game-page .tanto-result.expanded{width:calc(100% - 18px);top:132px}.tanto-result header{gap:9px}.tanto-result header strong{font-size:14px}.tanto-result header span{font-size:10px}.tanto-speakers{gap:7px;margin-top:7px}.tanto-speaker{flex-direction:column-reverse;padding:0}.speaking-avatar{align-self:flex-start;width:68px;height:84px;margin-top:-12px;margin-left:12px}.speech-bubble{width:100%;min-height:112px;margin:0;padding:10px 12px 35px}.speech-bubble strong{font-size:18px}.speech-bubble span{font-size:9px}.speech-bubble small{font-size:11px}.tanto-winner{margin-top:0;padding:6px 9px;font-size:12px}.game-page.has-dialogue .tricks{top:58%}.game-page .tanto-result:not(.expanded){max-width:230px;top:99px;left:12px;right:auto}.game-page .tanto-summary{padding:5px 8px;font-size:10px}.game-page.has-decision .tanto-result:not(.expanded){max-width:215px;top:97px;left:10px}.game-page .timeout-notice{width:65%;font-size:10px;bottom:162px;left:65%}.game-page.has-dialogue.has-decision .game-table{min-height:1110px}.game-page.has-dialogue.has-decision .call-decision{top:397px}.game-page.has-dialogue.has-decision .tricks{top:66%}.game-page.play-focused .actions .chant-action{width:144px;min-height:48px;padding:0}}.game-page.reduced .response-button{transition:none;transform:none!important}@media (prefers-reduced-motion:reduce){.game-page .response-button{transition:none;transform:none!important}}.topbar.table-topbar{display:none}.game-page.play-focused.portrait-table{--played-height:116px;--hand-height:180px;--dock-left:154px;max-width:760px;padding:6px 12px 10px}.game-page.play-focused.portrait-table .game-heading{gap:10px;height:42px;margin:0 4px 6px}.game-page.play-focused.portrait-table .game-heading h1{font-size:14px}.game-page.play-focused.portrait-table .game-heading .eyebrow{font-size:8px}.game-page.play-focused.portrait-table .game-heading button{min-height:40px;padding:8px;font-size:11px}.game-page.play-focused.portrait-table .game-table{background-position:50%;background-size:auto 100%;border:1px solid #c9a55f42;border-radius:28px;height:calc(100dvh - 64px);min-height:760px;max-height:980px;box-shadow:0 15px 70px #0008,inset 0 0 90px #0006}.game-page.play-focused.portrait-table .game-table:before{background:linear-gradient(#071b1455,#0000 25% 68%,#071b14c9)}.game-page.play-focused.portrait-table .table-player{z-index:4;width:114px;display:block}.game-page.play-focused.portrait-table .table-player.rival{top:12px;bottom:auto;left:50%;transform:translate(-50%)}.game-page.play-focused.portrait-table .table-player.self{top:auto;bottom:16px;left:16px}.game-page.play-focused.portrait-table .player-identity{text-align:center;flex-direction:column;align-items:center;gap:0;max-width:none;display:flex}.game-page.play-focused.portrait-table .player-identity .portrait{width:72px;height:84px}.game-page.play-focused.portrait-table .player-identity strong{text-overflow:ellipsis;white-space:nowrap;max-width:114px;font-size:13px;line-height:1.3;overflow:hidden}.game-page.play-focused.portrait-table .player-identity small{font-size:9px;line-height:1.5}.game-page.play-focused.portrait-table .player-score{align-items:center;gap:3px;min-width:54px;min-height:44px;position:absolute;top:-2px;left:86px}.game-page.play-focused.portrait-table .player-score .houses svg{width:35px;height:35px}.game-page.play-focused.portrait-table .player-score b{font:16px Bree}.game-page.play-focused.portrait-table .table-signature{text-align:center;color:#f5dda0;text-shadow:0 2px 3px #000;margin:0 -10px 8px;font:19px/1.2 Rye,Georgia,serif;display:block}.game-page.play-focused.portrait-table .self .player-score{top:34px}.game-page.play-focused.portrait-table .rival-hand{gap:0;top:128px;left:50%}.game-page.play-focused.portrait-table .rival-hand img{height:46px;margin:0 -5px}.game-page.play-focused.portrait-table .rival-hand img:first-child{transform:rotate(-12deg)}.game-page.play-focused.portrait-table .rival-hand img:last-child{transform:rotate(12deg)}.game-page.play-focused.portrait-table .pot{flex-direction:column;gap:0;top:14px;right:14px}.game-page.play-focused.portrait-table .pot img{object-fit:contain;width:48px;height:43px}.game-page.play-focused.portrait-table .pot span{letter-spacing:1px;font-size:8px}.game-page.play-focused.portrait-table .pot b{font-size:14px}.game-page.play-focused.portrait-table .tricks{gap:18px;width:min(410px,100% - 42px);top:190px;left:50%;transform:translate(-50%)}.game-page.play-focused.portrait-table .trick{grid-template-rows:repeat(2, var(--played-height));gap:14px}.game-page.play-focused.portrait-table .played-card{height:var(--played-height)}.game-page.play-focused.portrait-table .empty-card-slot{height:calc(var(--played-height) - 4px);width:calc(var(--played-height) * .61);opacity:.45;background:0 0}.game-page.play-focused.portrait-table .own-hand{width:max-content;transition:transform var(--play-duration) ease, opacity var(--play-duration) ease, filter var(--play-duration) ease;opacity:.52;filter:saturate(.65)brightness(.78);z-index:3;gap:8px;bottom:218px;left:50%;transform:translate(-50%)}.game-page.play-focused.portrait-table .own-hand[data-playable=true]{opacity:1;filter:saturate(1.08)brightness(1.07)drop-shadow(0 0 7px #f0cc7c38);transform:translate(-50%,-12px)}.game-page.play-focused.portrait-table .own-hand img{height:var(--hand-height);filter:none}.game-page.play-focused.portrait-table .own-hand button{opacity:1}.game-page.play-focused.portrait-table .table-status,.game-page.play-focused.portrait-table .timeout-notice{text-align:center;width:max-content;max-width:92%;padding:4px 9px;font:13px/1.4 Bree;top:auto;bottom:151px;left:50%;transform:translate(-50%)}.game-page.play-focused.portrait-table .game-controls{display:contents}.game-page.play-focused.portrait-table .hand-info{text-shadow:0 2px 3px #000;min-width:0;font:10px Bree;position:absolute;top:107px;left:14px}.game-page.play-focused.portrait-table .hand-info span{margin-top:2px;font-size:9px}.game-page.play-focused.portrait-table .game-controls>button{z-index:5;background:#10281edf;width:40px;min-width:0;height:40px;min-height:40px;padding:0;font:25px Bree;position:absolute;top:14px;left:14px}.game-page.play-focused.portrait-table .game-controls>button:last-child{top:60px}.game-page.play-focused.portrait-table .actions,.game-page.play-focused.portrait-table .call-decision{left:var(--dock-left);z-index:7;justify-content:center;align-items:center;gap:6px;width:auto;margin:0;position:absolute;top:auto;bottom:14px;right:14px;transform:none}.game-page.play-focused.portrait-table .actions{align-content:center;min-height:105px}.game-page.play-focused.portrait-table .actions button{min-height:44px;padding:8px;font-size:12px}.game-page.play-focused.portrait-table .actions .chant-action{width:132px;min-height:44px;padding:0}.game-page.play-focused.portrait-table .chant-action img{height:44px}.game-page.play-focused.portrait-table .call-decision{animation:decision-open var(--play-duration) ease-out both;background:linear-gradient(145deg,#244435f7,#0d271ffb);border:1px solid #caa662;border-radius:16px;gap:4px;padding:10px;box-shadow:inset 0 0 0 3px #cba75d16,0 7px 20px #0006}.game-page.play-focused.portrait-table .call-decision p{padding-right:32px;font-size:12px;line-height:1.25}.game-page.play-focused.portrait-table .call-decision p span{margin-top:2px;font-size:10px}.game-page.play-focused.portrait-table .response-button{flex:1 1 0;width:50%;max-width:190px;height:54px;min-height:44px}.game-page.play-focused.portrait-table .call-raises{gap:4px}.game-page.play-focused.portrait-table .call-raises button{min-height:44px;padding:4px 8px;font-size:11px}.game-page.play-focused.portrait-table.has-decision .actions:not(:has(button)){display:none}.game-page.play-focused.portrait-table.has-decision .actions:has(button){bottom:200px}.game-page.play-focused.portrait-table .turn-clock{z-index:9;text-align:center;background:0 0;grid-template-columns:38px;gap:0;padding:0;display:grid;inset:95px 14px auto auto}.game-page.play-focused.portrait-table .turn-clock svg{width:38px;height:38px;display:block}.game-page.play-focused.portrait-table .turn-clock b{font-size:13px}.game-page.play-focused.portrait-table .turn-clock span{font-size:8px}.game-page.play-focused.portrait-table .turn-clock small{display:none}.game-page.play-focused.portrait-table .scorebook{z-index:20;max-width:calc(100% - 24px);max-height:calc(100% - 180px);inset:155px auto auto 50%;transform:translate(-50%)}.game-page.play-focused.portrait-table .tanto-result:not(.expanded){max-width:200px;top:148px;left:auto;right:12px}.game-page.play-focused.portrait-table .tanto-summary{padding:5px 7px;font-size:10px}.game-page.play-focused.portrait-table .tanto-result.expanded{background:#123328f5;border:1px solid #c6a15e70;border-radius:15px;width:calc(100% - 28px);padding:12px;top:182px;left:50%;right:auto;box-shadow:0 8px 30px #0006}.game-page.play-focused.portrait-table .gesture-reaction{width:94px;height:118px;top:-10px;left:94px}.game-page.play-focused.portrait-table .rival .gesture-reaction{top:15px;left:-85px}.game-page.play-focused.portrait-table .battle-notice{top:40%}.game-page.play-focused.portrait-table .gestures{z-index:25;background:#102e25f5;grid-template-columns:repeat(4,1fr);width:min(690px,100% - 20px);max-height:55dvh;position:fixed;bottom:12px;left:50%;overflow-y:auto;transform:translate(-50%)}@keyframes decision-open{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}.game-page.play-focused.portrait-table.reduced .own-hand,.game-page.play-focused.portrait-table.reduced .own-hand[data-playable=true]{transition:none;transform:translate(-50%)}.game-page.play-focused.portrait-table.reduced .call-decision{animation:none}.game-page.play-focused.portrait-table.reduced .own-hand button,.game-page.play-focused.portrait-table.reduced .own-hand button:hover:not(:disabled){transition:none;transform:none}@media (width<=600px){.game-page.play-focused.portrait-table{--played-height:98px;--hand-height:145px;--dock-left:112px;padding:4px 0 0}.game-page.play-focused.portrait-table .game-table{border-radius:18px 18px 0 0;height:calc(100dvh - 52px);min-height:688px}.game-page.play-focused.portrait-table .game-heading{height:40px;margin:0 8px 4px}.game-page.play-focused.portrait-table .table-player{width:90px}.game-page.play-focused.portrait-table .table-player.self{bottom:14px;left:5px}.game-page.play-focused.portrait-table .player-identity .portrait{width:60px;height:70px}.game-page.play-focused.portrait-table .player-identity strong{max-width:90px;font-size:11px}.game-page.play-focused.portrait-table .player-identity small{font-size:8px}.game-page.play-focused.portrait-table .player-score{gap:0;min-width:44px;top:-4px;left:69px}.game-page.play-focused.portrait-table .player-score .houses svg{width:28px;height:28px}.game-page.play-focused.portrait-table .player-score b{font-size:13px}.game-page.play-focused.portrait-table .table-signature{margin:0 0 7px;font-size:15px}.game-page.play-focused.portrait-table .self .player-score{top:25px}.game-page.play-focused.portrait-table .rival-hand{top:111px}.game-page.play-focused.portrait-table .rival-hand img{height:40px}.game-page.play-focused.portrait-table .tricks{gap:14px;width:calc(100% - 116px);top:167px}.game-page.play-focused.portrait-table .trick{gap:12px}.game-page.play-focused.portrait-table .own-hand{gap:5px;bottom:204px}.game-page.play-focused.portrait-table .table-status{text-align:center;width:calc(100% - 32px);max-width:none;font-size:12px;bottom:174px;left:16px;transform:none}.game-page.play-focused.portrait-table .actions,.game-page.play-focused.portrait-table .call-decision{bottom:12px;right:7px}.game-page.play-focused.portrait-table .actions{gap:3px;min-height:100px}.game-page.play-focused.portrait-table .actions .chant-action{width:108px}.game-page.play-focused.portrait-table .call-decision{border-radius:12px;gap:2px;padding:7px}.game-page.play-focused.portrait-table .call-decision p{font-size:10px}.game-page.play-focused.portrait-table .call-decision p span{font-size:9px}.game-page.play-focused.portrait-table .response-button{height:46px}.game-page.play-focused.portrait-table .call-raises button{min-height:44px;font-size:10px}.game-page.play-focused.portrait-table .pending-call-asset{width:112px;height:30px}.game-page.play-focused.portrait-table .pot{width:48px;top:208px;right:8px}.game-page.play-focused.portrait-table .pot img{width:35px;height:32px}.game-page.play-focused.portrait-table .pot span{font-size:7px}.game-page.play-focused.portrait-table .pot b{font-size:12px}.game-page.play-focused.portrait-table .hand-info{font-size:9px;top:110px;left:9px}.game-page.play-focused.portrait-table .hand-info span{font-size:8px}.game-page.play-focused.portrait-table .game-controls>button{left:9px}.game-page.play-focused.portrait-table .turn-clock{top:82px;right:12px}.game-page.play-focused.portrait-table.has-decision .turn-clock{bottom:139px;right:15px}.game-page.play-focused.portrait-table .tanto-result.expanded{padding:8px;top:161px}.game-page.play-focused.portrait-table .tanto-result:not(.expanded){max-width:170px;top:146px}}@media (height<=760px) and (width<=600px){.game-page.play-focused.portrait-table{--played-height:70px;--hand-height:124px}.game-page.play-focused.portrait-table .game-table{min-height:620px}.game-page.play-focused.portrait-table .tricks{top:137px}.game-page.play-focused.portrait-table .own-hand{bottom:188px}.game-page.play-focused.portrait-table .table-status{bottom:156px}.game-page.play-focused.portrait-table .rival-hand{top:98px}.game-page.play-focused.portrait-table .rival-hand img{height:30px}.game-page.play-focused.portrait-table .trick{gap:8px}}.game-page.play-focused.portrait-table .call-decision{width:min(440px,100% - 24px);box-shadow:none;background:0 0;border:0;border-radius:0;gap:7px;padding:0;inset:42% auto auto 50%;transform:translate(-50%,-30%)}.game-page.play-focused.portrait-table .call-decision p{overflow-wrap:anywhere;text-shadow:0 2px 3px #000,0 0 8px #000;max-width:100%;padding:0;font-size:14px}.game-page.play-focused.portrait-table .call-decision p span{font-size:12px}.game-page.play-focused.portrait-table .call-decision p b{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:150px;display:inline-block;overflow:hidden}.game-page.play-focused.portrait-table .pending-call-asset{width:154px;height:46px}.game-page.play-focused.portrait-table .response-actions{gap:12px}.game-page.play-focused.portrait-table .response-button{max-width:210px;height:66px}.game-page.play-focused.portrait-table .actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;min-height:100px;display:grid;bottom:14px}.game-page.play-focused.portrait-table.has-decision .actions:has(button){grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;min-height:100px;display:grid;bottom:14px}.game-page.play-focused.portrait-table .actions .chant-action{filter:drop-shadow(0 3px 4px #0009);background:0 0;border:0;border-radius:18px;justify-self:center;width:100%;min-width:0;max-width:190px;min-height:44px;padding:0}.game-page.play-focused.portrait-table .actions .chant-action:only-child{grid-column:1/-1}.game-page.play-focused.portrait-table .actions .chant-action img{height:52px}.game-page.play-focused.portrait-table .actions .chant-action:hover:not(:disabled){filter:brightness(1.15)drop-shadow(0 2px 5px #e8c87577)}.game-page.play-focused.portrait-table .actions .chant-action:focus-visible{outline-offset:3px;outline:3px solid #fff0aa}.game-page.play-focused.portrait-table.has-decision .turn-clock{top:100px;bottom:auto;right:14px}.game-page.play-focused.portrait-table.has-decision .tricks{gap:12px;width:min(430px,100% - 110px)}.game-page.play-focused.portrait-table.has-decision .trick{grid-template-rows:80px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.game-page.play-focused.portrait-table.has-decision .played-card,.game-page.play-focused.portrait-table.has-decision .empty-card-slot{object-fit:contain;max-width:100%;height:80px}.game-page.play-focused.portrait-table.has-decision .own-hand{bottom:190px}@media (width<=600px){.game-page.play-focused.portrait-table .call-decision{gap:5px}.game-page.play-focused.portrait-table .call-decision p{font-size:12px}.game-page.play-focused.portrait-table .call-decision p span{font-size:10px}.game-page.play-focused.portrait-table .call-decision p b{max-width:90px}.game-page.play-focused.portrait-table .pending-call-asset{width:132px;height:38px}.game-page.play-focused.portrait-table .response-actions{gap:10px}.game-page.play-focused.portrait-table .response-button{height:52px}.game-page.play-focused.portrait-table .actions{gap:3px 5px;bottom:12px}.game-page.play-focused.portrait-table.has-decision .actions:has(button){gap:3px 5px;bottom:12px}.game-page.play-focused.portrait-table .actions .chant-action img{height:44px}.game-page.play-focused.portrait-table.has-decision .tricks{gap:8px;width:calc(100% - 78px);top:162px;left:calc(50% - 16px)}.game-page.play-focused.portrait-table.has-decision .trick{grid-template-rows:55px;gap:3px}.game-page.play-focused.portrait-table.has-decision .played-card,.game-page.play-focused.portrait-table.has-decision .empty-card-slot{height:55px}.game-page.play-focused.portrait-table.has-decision .own-hand img{height:126px}.game-page.play-focused.portrait-table.has-decision .own-hand{bottom:166px}.game-page.play-focused.portrait-table.has-decision .turn-clock{top:82px;right:12px}}@media (height<=760px) and (width<=600px){.game-page.play-focused.portrait-table .call-decision{top:38%}.game-page.play-focused.portrait-table.has-decision .tricks{top:137px}.game-page.play-focused.portrait-table.has-decision .own-hand img{height:110px}}.game-page.play-focused.portrait-table.art-table{--hand-height:clamp(110px, 18.2dvh, 180px);isolation:isolate;max-width:min(640px,60dvh);min-height:100dvh;padding:0;position:relative}.game-page.play-focused.portrait-table.art-table:before{content:"";z-index:-1;pointer-events:none;background-image:var(--table-background);filter:blur(12px)saturate(.4)contrast(.65)brightness(.25);background-position:50%;background-size:220%;position:fixed;inset:-24px}.game-page.play-focused.portrait-table.art-table .game-table{background-size:100% 100%;border:0;border-radius:0;height:100dvh;min-height:640px;max-height:none}.game-page.play-focused.portrait-table.art-table .table-home{z-index:8;color:#f6d481;background:#171d19ed;border:1px solid #c5af7770;border-radius:10px;width:40px;height:44px;padding:8px;position:absolute;top:44%;right:3%}.game-page.play-focused.portrait-table.art-table .table-home svg{width:100%;height:100%}.game-page.play-focused.portrait-table.art-table .table-home:focus-visible{outline-offset:3px;outline:3px solid #ffe9a3}.game-page.play-focused.portrait-table.art-table .table-reconnecting{z-index:10;color:#ffdf94;background:#211a10ed;border-radius:8px;margin:0;padding:5px 10px;font:12px Bree,Georgia,serif;position:absolute;top:1%;left:50%;transform:translate(-50%)}.game-page.play-focused.portrait-table.art-table .game-table:before{background:linear-gradient(#0002,#0000 25% 75%,#0003)}.game-page.play-focused.portrait-table.art-table .corner-score{color:#f8d88a;text-shadow:0 2px 3px #000;z-index:5;grid-template-columns:auto auto;justify-items:center;gap:3px;width:25%;min-width:0;display:grid;position:absolute;top:7%;left:7%}.game-page.play-focused.portrait-table.art-table .score-theirs{color:#fff0c4;left:auto;right:7%}.game-page.play-focused.portrait-table.art-table .score-team{letter-spacing:1px;grid-column:1/-1;font:11px/1.4 Alfa,Georgia,serif}.game-page.play-focused.portrait-table.art-table .houses.compact{display:block}.game-page.play-focused.portrait-table.art-table .corner-score .houses svg{width:clamp(44px,6dvh,64px);height:clamp(44px,6dvh,64px)}.game-page.play-focused.portrait-table.art-table .score-total{flex-direction:column;align-items:center;display:flex}.game-page.play-focused.portrait-table.art-table .score-total b{font:clamp(28px,4dvh,42px)/1.1 Alfa,Georgia,serif}.game-page.play-focused.portrait-table.art-table .score-total small{opacity:.7;margin-left:3px;font:13px Bree,Georgia,serif}.game-page.play-focused.portrait-table.art-table .table-player.rival{width:34%;top:3%}.game-page.play-focused.portrait-table.art-table .player-identity .portrait{width:clamp(78px,14dvh,138px);height:clamp(90px,16.25dvh,160px)}.game-page.play-focused.portrait-table.art-table .player-identity strong{font:15px/1.3 Bree,Georgia,serif}.game-page.play-focused.portrait-table.art-table .rival-hand{top:25%}.game-page.play-focused.portrait-table.art-table .rival-hand img{height:clamp(52px,8dvh,88px)}.game-page.play-focused.portrait-table.art-table .tricks{justify-content:center;gap:8px;width:90%;display:flex;top:34%;left:50%}.game-page.play-focused.portrait-table.art-table .trick{flex:0 calc(33.3333% - 5.33333px);grid-template-rows:14px clamp(70px,11dvh,116px);grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.game-page.play-focused.portrait-table.art-table .trick:not(:has(.played-card)){display:none}.game-page.play-focused.portrait-table.art-table .trick:has(.empty-card-slot){grid-template-columns:1fr}.game-page.play-focused.portrait-table.art-table .played-slot:has(.empty-card-slot){display:none}.game-page.play-focused.portrait-table.art-table .trick>header{letter-spacing:1px;color:#f5dba0;grid-column:1/-1;font:10px/14px Bree,Georgia,serif}.game-page.play-focused.portrait-table.art-table .played-card,.game-page.play-focused.portrait-table.art-table .empty-card-slot{object-fit:contain;max-width:100%;height:clamp(70px,11dvh,116px)}.game-page.play-focused.portrait-table.art-table .empty-card-slot{visibility:hidden}.game-page.play-focused.portrait-table.art-table .played-card{filter:drop-shadow(0 5px 4px #000a);transform:none}.game-page.play-focused.portrait-table.art-table .played-card img{object-fit:contain;max-width:100%}.game-page.play-focused.portrait-table.art-table .just-played.from-self{animation-name:table-throw-own}.game-page.play-focused.portrait-table.art-table .just-played.from-rival{animation-name:table-throw-rival}@keyframes table-throw-own{0%{opacity:0;transform:translate(16px,110px)rotate(12deg)}to{opacity:1;transform:none}}@keyframes table-throw-rival{0%{opacity:0;transform:translate(-16px,-110px)rotate(-12deg)}to{opacity:1;transform:none}}.game-page.play-focused.portrait-table.art-table .own-hand{gap:2px;top:42%;bottom:auto}.game-page.play-focused.portrait-table.art-table .own-hand img{height:var(--hand-height)}.game-page.play-focused.portrait-table.art-table.has-played-cards .own-hand{top:48%}.game-page.play-focused.portrait-table.art-table.has-played-cards .own-hand img{height:clamp(82px,13dvh,130px)}.game-page.play-focused.portrait-table.art-table.has-played-cards .table-home,.game-page.play-focused.portrait-table.art-table.has-played-cards .game-controls>button{top:49%}.game-page.play-focused.portrait-table.art-table.has-played-cards .game-controls>button:last-child{top:56%}.game-page.play-focused.portrait-table.art-table .call-decision{gap:6px;width:83%;inset:63% auto auto 50%;transform:translate(-50%)}.game-page.play-focused.portrait-table.art-table .call-decision p{color:#ffe9b3;background:linear-gradient(100deg,#510a0bed,#80160bef,#510a0bed);border-block:1px solid #d4aa53;border-radius:14px 3px;width:100%;padding:8px 7px;font:15px/1.4 Alfa,Georgia,serif;box-shadow:0 3px 8px #0006,inset 0 0 0 3px #d6ac5520}.game-page.play-focused.portrait-table.art-table .call-decision p b{max-width:125px}.game-page.play-focused.portrait-table.art-table .call-decision p span{font:12px/1.4 Bree,Georgia,serif}.game-page.play-focused.portrait-table.art-table .pending-call-asset{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.game-page.play-focused.portrait-table.art-table .response-actions{gap:10px}.game-page.play-focused.portrait-table.art-table .response-button{height:58px}.game-page.play-focused.portrait-table.art-table .actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;min-height:44px;inset:69% 10% auto}.game-page.play-focused.portrait-table.art-table.has-decision .actions:has(button){grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;min-height:44px;inset:69% 10% auto}.game-page.play-focused.portrait-table.art-table.has-decision .actions:has(button){top:77%}.game-page.play-focused.portrait-table.art-table.has-decision .own-hand{opacity:.95;filter:none}.game-page.play-focused.portrait-table.art-table .actions .chant-action img{height:44px}.game-page.play-focused.portrait-table.art-table .turn-actions{grid-template-rows:repeat(3,44px);grid-template-areas:".truco.""real envido falta"".fold.";gap:2px 5px;top:64%}.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=truco],.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=retruco],.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=vale_cuatro]{grid-area:truco}.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=envido],.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=flor]{grid-area:envido}.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=real_envido]{grid-area:real}.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=falta_envido]{grid-area:falta}.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=fold]{grid-area:fold}.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=truco],.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=retruco],.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=vale_cuatro],.game-page.play-focused.portrait-table.art-table .turn-actions [data-action=fold]{width:min(150px,40vw);max-width:none}.game-page.play-focused.portrait-table.art-table .turn-actions>button:not([data-action]){grid-column:1/-1}.game-page.play-focused.portrait-table.art-table .turn-clock{grid-template-columns:58px;top:22%;bottom:auto;right:10%}.game-page.play-focused.portrait-table.art-table .turn-clock svg{width:58px;height:58px}.game-page.play-focused.portrait-table.art-table .turn-clock b{color:#ffebae;font:24px Alfa,Georgia,serif}.game-page.play-focused.portrait-table.art-table .turn-clock span{color:#ffebae;margin-top:4px;font:12px/1.3 Alfa,Georgia,serif}.game-page.play-focused.portrait-table.art-table .turn-clock .clock-track{stroke:#fff0c448}.game-page.play-focused.portrait-table.art-table .turn-clock .clock-progress{stroke:#f7d584}.game-page.play-focused.portrait-table.art-table .table-player.self{width:100px;top:84%;bottom:auto;left:8%}.game-page.play-focused.portrait-table.art-table .self .portrait{width:clamp(44px,8.5dvh,88px);height:clamp(51px,9.9dvh,102px)}.game-page.play-focused.portrait-table.art-table .table-signature{margin-bottom:3px;font-size:13px}.game-page.play-focused.portrait-table.art-table .pot{width:66px;top:auto;bottom:2.5%;right:10%}.game-page.play-focused.portrait-table.art-table .pot img{width:62px;height:54px}.game-page.play-focused.portrait-table.art-table .pot b{font:19px Alfa,Georgia,serif}.game-page.play-focused.portrait-table.art-table .hand-info{top:23%;left:10%}.game-page.play-focused.portrait-table.art-table .game-controls>button{background:#171d19d9;width:34px;min-height:44px;top:44%;left:3%}.game-page.play-focused.portrait-table.art-table .game-controls>button:last-child{top:51%}.game-page.play-focused.portrait-table.art-table .table-status,.game-page.play-focused.portrait-table.art-table .timeout-notice{min-height:0;padding:2px 6px;top:61%;bottom:auto}@media (width<=600px){.game-page.play-focused.portrait-table.art-table{max-width:100%}.game-page.play-focused.portrait-table.art-table .player-identity strong{font-size:12px}.game-page.play-focused.portrait-table.art-table .score-team{letter-spacing:.5px;font-size:10px}.game-page.play-focused.portrait-table.art-table .call-decision p{padding:5px;font-size:12px}.game-page.play-focused.portrait-table.art-table .call-decision p b{max-width:90px}.game-page.play-focused.portrait-table.art-table .call-decision p span{font-size:11px}.game-page.play-focused.portrait-table.art-table .response-button{height:48px}.game-page.play-focused.portrait-table.art-table .turn-clock{grid-template-columns:48px}.game-page.play-focused.portrait-table.art-table .turn-clock svg{width:48px;height:48px}.game-page.play-focused.portrait-table.art-table .turn-clock b{font-size:21px}.game-page.play-focused.portrait-table.art-table .turn-clock span{font-size:10px}.game-page.play-focused.portrait-table.art-table .table-player.self{width:85px}.game-page.play-focused.portrait-table.art-table .table-signature{font-size:12px}}@media (height<=760px) and (width<=600px){.game-page.play-focused.portrait-table.art-table .turn-actions{row-gap:1px}.game-page.play-focused.portrait-table.art-table.has-played-cards .own-hand{top:48%}.game-page.play-focused.portrait-table.art-table .table-status,.game-page.play-focused.portrait-table.art-table .timeout-notice{padding:2px 6px;font-size:10px;line-height:1.4}.game-page.play-focused.portrait-table.art-table .table-player.self{top:85%}.game-page.play-focused.portrait-table.art-table.has-decision .actions:has(button){top:78%}.game-page.play-focused.portrait-table.art-table .own-hand{top:42%}.game-page.play-focused.portrait-table.art-table .call-decision{top:61.5%}.game-page.play-focused.portrait-table.art-table .pot img{width:40px;height:34px}.game-page.play-focused.portrait-table.art-table .pot b{font-size:16px}.game-page.play-focused.portrait-table.art-table .self .portrait{width:44px;height:51px}.game-page.play-focused.portrait-table.art-table .self .player-identity strong,.game-page.play-focused.portrait-table.art-table .self .table-signature{font-size:10px}}.opening-splash{color:#f0dfb9;text-align:center;background:radial-gradient(at 50% 44%,#284c36 0%,#163328 42%,#0d211c 82%);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:32px 20px;display:flex;overflow:hidden}.opening-eyebrow{letter-spacing:.34em;color:#c7aa71;font:11px/1.5 Roboto,sans-serif}.opening-splash h1{text-shadow:0 3px #091b16,0 0 36px #d8b96718;margin:10px 0 0;font:400 clamp(34px,7vw,60px)/1.2 Rye,Georgia,serif}.opening-deck{isolation:isolate;width:280px;height:230px;margin:25px 0 9px;position:relative}.opening-deck:after{content:"";filter:blur(10px);z-index:-1;background:#05130f60;border-radius:50%;height:18px;position:absolute;bottom:18px;left:22%;right:22%}.opening-packet{filter:drop-shadow(0 7px 5px #06140e50);transform-origin:50% 75%;width:200px;height:auto;animation:opening-shuffle-front var(--shuffle-duration) ease-in-out infinite;position:absolute;top:0;left:40px}.opening-packet-back{animation-name:opening-shuffle-back;transform:translate(-7px,-5px)rotate(-9deg)}.opening-packet-front{transform:translate(7px,5px)rotate(7deg)}.opening-status{margin:0;font:22px/1.5 Bree,Georgia,serif}.opening-caption{color:#c6c9ae;margin:6px 0 0;font:13px/1.5 Roboto,sans-serif}@keyframes opening-shuffle-front{0%,to{z-index:2;transform:translate(7px,5px)rotate(7deg)}28%{z-index:2;transform:translate(59px,-14px)rotate(19deg)}49%{z-index:2}50%,70%{z-index:0;transform:translate(-7px,-5px)rotate(-9deg)}85%{z-index:0;transform:translate(-48px,-19px)rotate(-19deg)}}@keyframes opening-shuffle-back{0%,to{z-index:1;transform:translate(-7px,-5px)rotate(-9deg)}28%{z-index:1;transform:translate(-59px,7px)rotate(-19deg)}50%,70%{z-index:1;transform:translate(7px,5px)rotate(7deg)}85%{z-index:1;transform:translate(48px,7px)rotate(19deg)}}.opening-splash[data-reduced-motion=true] .opening-packet{animation:none}@media (prefers-reduced-motion:reduce){.opening-splash[data-reduced-motion=system] .opening-packet{animation:none}}@media (height<=500px){.opening-splash{padding:20px}.opening-splash h1{font-size:34px}.opening-deck{height:170px;margin:5px 0}.opening-packet{width:145px;left:67.5px}}@font-face{font-display:swap;font-family:Rye;src:url(/fonts/Rye/Rye-Regular.ttf)}@font-face{font-display:swap;font-family:Changa One;font-style:normal;font-weight:400;src:url(/fonts/Changa_One/ChangaOne-Regular.ttf)format("truetype")}@font-face{font-display:swap;font-family:Changa One;font-style:italic;font-weight:400;src:url(/fonts/Changa_One/ChangaOne-Italic.ttf)format("truetype")}@font-face{font-display:swap;font-family:Alfa;src:url(/fonts/Alfa_Slab_One/AlfaSlabOne-Regular.ttf)}@font-face{font-display:swap;font-family:Bree;src:url(/fonts/Bree_Serif/BreeSerif-Regular.ttf)}@font-face{font-display:swap;font-family:Roboto;src:url(/fonts/Roboto/Roboto-VariableFont_wdth,wght.ttf);font-weight:100 900}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{color:#f0e5ce;background:#101e19 radial-gradient(at top,#243f31aa,#0000 65%);margin:0;font:15px/1.6 Roboto,Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button,a{touch-action:manipulation}button{color:inherit;background:#1b362e;border:1px solid #d6b47045;border-radius:7px;padding:11px 18px;font-family:Alfa,Georgia,serif;transition:background .15s,transform .15s}button:hover:not(:disabled){background:#335142}button:active:not(:disabled){transform:translateY(1px)}:focus-visible{outline-offset:4px;outline:3px solid #f3cc76}a{color:#eed098}h1,h2,h3,p{margin:0}h1,h2{font-family:Rye,Georgia,serif;font-weight:400;line-height:1.25}h1{font-size:36px}h2{font-size:27px}h3{font-family:Bree,Georgia,serif;font-size:23px;font-weight:400}p{margin:10px 0}small{color:#b6beae;font-size:12px;line-height:1.5}img{object-fit:contain;max-width:100%}input,select{color:#f5ecd8;outline-offset:2px;background:#0d211b;border:1px solid #8d9a7855;border-radius:6px;width:100%;min-height:46px;padding:11px 13px}input::placeholder{color:#a7b09c}input[type=checkbox]{accent-color:#cfaa63;width:20px;min-height:20px}input[type=range]{accent-color:#dbb568;padding:0}label{flex-direction:column;gap:7px;margin:14px 0;font-size:13px;font-weight:500;display:flex}label small{font-weight:400}fieldset{border:0;min-width:0;margin:18px 0 26px;padding:0}legend{margin-bottom:12px;font-size:14px;font-weight:600}form{min-width:0}.primary{color:#202a1c;background:#d9b46c;border-color:#e9ce93;padding:13px 22px;box-shadow:inset 0 1px #fff5,0 3px #886735}.primary:hover:not(:disabled){background:#efd08b}.secondary{background:#1c342b;border-color:#c8ad6c80}.quiet{background:0 0;border-color:#0000;font-family:Roboto,sans-serif}.text-button{color:#edc77b;text-underline-offset:4px;background:0 0;border:0;border-radius:0;padding:0;font-family:Bree,serif;text-decoration:underline}.full{width:100%}.muted{color:#b7beae}.eyebrow{letter-spacing:2.4px;color:#d3b777;margin-bottom:13px;font-size:10px;font-weight:700;display:block}.panel{background:linear-gradient(130deg,#243c2f,#192e26);border:1px solid #d6b47045;border-radius:12px;box-shadow:0 14px 50px #0003}.tag{color:#e3d1a8;letter-spacing:1px;background:#152e25ed;border:1px solid #bba4706b;border-radius:4px;padding:5px 11px;font-size:10px;display:inline-block}.topbar{z-index:5;background:#12281ff0;border-bottom:1px solid #c0a06730;justify-content:space-between;align-items:center;height:96px;padding:0 max(5vw,24px);display:flex;position:relative}.brand{color:#e7c486;text-align:center;background:0 0;border:none;padding:0;font-family:Rye,serif;font-size:25px;line-height:1.3}.brand span{letter-spacing:4px;color:#c3b798;margin-top:8px;font:8px Roboto;display:block}.topbar-note{letter-spacing:2.5px;color:#b2bca9;font-size:9px}.topbar nav{align-items:center;gap:22px;display:flex}.wallet{color:#e6c178;align-items:center;gap:7px;font-family:Alfa;font-size:18px;display:flex}.wallet img{width:28px;height:28px}.profile-link{background:0 0;border:0;align-items:center;gap:10px;padding:0;font-family:Bree;display:flex}.portrait{flex-shrink:0;place-items:center;width:100px;height:115px;display:grid;position:relative}.portrait>img:first-child{z-index:1;object-fit:contain;width:83%;height:90%;position:relative}.portrait .portrait-frame{z-index:0;width:100%;height:100%;position:absolute;inset:0}.portrait>span{font-family:Rye;font-size:40px}.profile-link .portrait{width:44px;height:49px}.access{background:linear-gradient(90deg,#10231bd9,#10251ba6 40%,#0e211bc9),url(/assets/lobby/fondos/salon.png) 50%/cover;grid-template-columns:1.1fr 1fr;gap:8%;min-height:760px;padding:70px max(7vw,24px) 75px;display:grid}.welcome{align-self:start;max-width:560px;padding-top:45px}.welcome h1{color:#e2c185;font-size:52px}.welcome h1 span{color:#f2e5c9;margin-top:20px;font-size:38px;line-height:1.42;display:block}.welcome p{color:#d2d4bd;margin:26px 0;font-family:Bree;font-size:20px;line-height:1.5}.welcome-cards{width:360px;height:240px;margin:28px 0 8px;position:relative}.welcome-cards img{filter:drop-shadow(0 10px 10px #0006);transform-origin:50% 120%;height:208px;position:absolute;bottom:0}.welcome-cards img:first-child{left:38px;transform:rotate(-19deg)}.welcome-cards img:nth-child(2){bottom:12px;left:130px;transform:rotate(-2deg)}.welcome-cards img:nth-child(3){left:217px;transform:rotate(17deg)}.welcome-foot{letter-spacing:2.2px;color:#c1bb9f;font-size:9px}.access-panel{background:linear-gradient(150deg,#263d2fec,#152b23f5);align-self:start;width:100%;max-width:505px;padding:38px;position:relative;box-shadow:0 12px 80px #0007}.access-panel:before{content:"";border-top:1px solid #c0a2664d;position:absolute;top:8px;left:8px;right:8px}.access-panel h2{font-size:25px}.access-panel>.muted{margin-bottom:26px;font-size:13px}.google-button{color:#26362b;background:#f6f1e7;border-radius:6px;justify-content:center;align-items:center;gap:15px;width:100%;padding:13px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.google-button b{color:#386ac3;font-family:Arial;font-size:20px}.google-button.disabled{opacity:.55;cursor:not-allowed}.access-panel>small{text-align:center;margin-top:10px;display:block}.divider{color:#aaa992;align-items:center;gap:14px;margin:25px 0 15px;font-size:11px;display:flex}.divider:before,.divider:after{content:"";border-top:1px solid #b8af8940;flex:1}.password-field{position:relative}.password-field input{padding-right:72px}.password-field button{font-size:12px;position:absolute;top:0;right:0}.access-panel form>.primary{justify-content:space-between;margin-top:15px;font-size:14px;display:flex}.switch-auth{text-align:center;margin:25px 0;font-size:12px}.switch-auth button{margin-left:5px;font-size:14px}.access-note{text-align:center;color:#c1bda4;border-top:1px solid #b9a47835;padding-top:20px;font-size:11px;line-height:1.8}.access-note span{color:#debf7e;font-size:22px;display:block}.site-footer{color:#a9b09b;border-top:1px solid #b9a47830;justify-content:space-between;align-items:center;gap:18px;padding:32px max(5vw,24px);font-size:12px;display:flex}.site-footer>span{color:#c7b382;font-family:Rye;font-size:13px}.page{max-width:1380px;margin:auto;padding:42px max(4vw,22px) 65px}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.section-heading p{color:#b5bfaa;font-size:14px}.lobby-banner{background:linear-gradient(90deg,#16372bf5,#153329bd),url(/assets/lobby/fondos/salon.png) 50% 42%/cover;border:1px solid #baa46a50;border-radius:12px;justify-content:space-between;min-height:260px;padding:44px;display:flex;position:relative;overflow:hidden}.lobby-banner h1{font-size:43px}.lobby-banner p{color:#d0d5bb;margin:15px 0 25px}.lobby-banner>img{filter:drop-shadow(0 12px 14px #0005);width:185px;margin-right:7%;transform:rotate(8deg)}.lobby-toolbar{justify-content:space-between;align-items:center;margin:36px 0 22px;display:flex}.lobby-toolbar .eyebrow{margin-bottom:6px}.lobby-toolbar h2{font-size:26px}.count{color:#ede5c9;vertical-align:middle;background:#496147;border-radius:20px;padding:4px 9px;font:13px Roboto}.lobby-layout{grid-template-columns:minmax(0,1fr) 290px;gap:26px;display:grid}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.room-card{background:#23382b;border:1px solid #bdad7538;border-radius:10px;overflow:hidden}.room-art{background:#1c2a20;height:166px;position:relative;overflow:hidden}.room-art>img{object-fit:cover;width:100%;height:100%}.room-art .tag{position:absolute;top:12px;left:12px}.room-details{padding:20px}.room-details p{color:#c5c8b1;margin:4px 0 17px;font-size:12px}.room-details p span{color:#ae945b;margin:0 5px}.room-bottom{justify-content:space-between;align-items:center;gap:8px;display:flex}.room-bottom>strong{color:#e8c675;align-items:center;gap:6px;font-family:Alfa;font-size:18px;display:flex}.room-bottom img{width:27px;height:27px}.room-bottom button{padding:9px 15px;font-size:12px}.invite-panel{height:fit-content;padding:25px}.invite-panel h3{font-size:25px}.invite-panel>p{font-size:13px}.invite-panel input,.invite-panel button{font-size:12px}.house-rule{text-align:center;color:#b9c1ab;border-top:1px solid #bdad753b;margin-top:24px;padding-top:24px;font-size:12px}.house-rule img{width:90px;height:90px}.house-rule b{color:#d3c494;font-weight:500}.pagination{justify-content:center;align-items:center;gap:20px;margin-top:26px;font-size:12px;display:flex}.empty-state{text-align:center;color:#cad0bd;border:1px dashed #b4aa7159;border-radius:10px;padding:38px 24px}.empty-state>img{width:85px;height:95px}.empty-state p{margin:10px 0 20px;font-size:13px}.profile-layout{grid-template-columns:280px minmax(0,1fr);gap:25px;display:grid}.profile-preview{text-align:center;height:fit-content;padding:28px;position:sticky;top:22px}.profile-preview .portrait{width:180px;height:210px;margin:auto}.profile-preview h2{overflow-wrap:anywhere;font-size:21px}.profile-preview p{overflow-wrap:anywhere;font-size:12px}.profile-preview .primary{margin:28px 0 16px;font-size:12px}.profile-preview .text-button{font-size:13px}.profile-fields{padding:30px}.profile-fields>h2{margin-top:40px;font-size:25px}.avatar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.avatar-option{background:#142b22;flex-direction:column;align-items:center;min-width:0;padding:8px;font-family:Bree;font-size:12px;line-height:1.3;display:flex}.avatar-option img{width:100%;height:112px}.avatar-option span{overflow-wrap:anywhere;margin:7px 0}.selected{box-shadow:0 0 0 1px #dabc7390;background:#3c4e2f!important;border-color:#e3bf79!important}.design-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.design-grid button{flex-direction:column;align-items:center;min-width:0;padding:7px;font-family:Bree;font-size:13px;display:flex}.design-grid img{object-fit:contain;width:100%;height:88px}.design-grid.tables img{object-fit:cover;border-radius:4px}.design-grid.cardBacks img{height:100px}.design-grid span{margin:5px 0 1px}.design-grid.frames{grid-template-columns:repeat(4,minmax(0,1fr))}.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:20;background:#06130ee0;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.create-modal{width:100%;max-width:960px;max-height:92dvh;padding:30px;overflow-y:auto;box-shadow:0 25px 100px #0009}.modal-header,.modal-footer{justify-content:space-between;align-items:center;gap:20px;display:flex}.modal-header h2{font-size:27px}.modal-header .eyebrow{margin-bottom:6px}.modal-footer{border-top:1px solid #ccbb783b;padding-top:22px}.create-layout{grid-template-columns:.85fr 1.15fr;gap:35px;margin:20px 0;display:grid}.segmented{flex-wrap:wrap;gap:7px;display:flex}.segmented button{flex:1;padding:11px;font-size:12px}.check{flex-direction:row;align-items:center;gap:12px;margin:20px 0}.stakes button{min-width:64px}.create-layout>div,.create-modal fieldset{min-width:0}.create-modal .stakes{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.create-modal .stakes button{min-width:0;min-height:44px}.create-modal .stakes button:last-child{grid-column:1/-1}.table-preview{background-position:50%;background-size:cover;border:1px solid #ac956955;border-radius:10px;justify-content:center;align-items:center;gap:22px;height:185px;padding:22px;display:flex}.table-preview img{filter:drop-shadow(2px 5px 5px #0009);height:135px;transform:rotate(-10deg)}.table-preview p{text-shadow:0 2px 4px #000;font-family:Bree;font-size:18px}.waiting-table{background-position:50%;background-size:cover;border-radius:22px;justify-content:space-around;align-items:center;min-height:440px;padding:40px;display:flex;position:relative;box-shadow:inset 0 0 80px #0005,0 10px 40px #0005}.waiting-player{text-align:center;flex:1}.waiting-player .portrait{width:175px;height:200px;margin:auto}.waiting-player h2{margin:12px;font-size:23px}.waiting-deck{height:150px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(8deg)}.empty-seat{color:#efdeac;border:2px dashed #e3d6a380;border-radius:50%;place-items:center;width:150px;height:150px;margin:25px auto;font-size:50px;display:grid}.waiting-footer{justify-content:space-between;align-items:center;gap:25px;max-width:760px;margin:25px auto 0;padding:25px;display:flex}.waiting-footer small{display:block}.waiting-footer input{letter-spacing:2px;font-family:monospace}.game-page{max-width:1340px;margin:auto;padding:18px 25px 35px}.game-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px;display:flex}.game-heading h1{font:20px Bree}.game-heading .eyebrow{margin:0;font-size:9px}.connection{color:#d9b67a;font-size:12px}.connection.online{color:#a8c69a}.game-table{background-position:50%;background-size:cover;border-radius:22px;height:min(66vw,680px);min-height:520px;position:relative;overflow:hidden;box-shadow:inset 0 0 50px #0005,0 15px 45px #0004}.table-player{z-index:2;align-items:center;gap:12px;display:flex;position:absolute}.table-player.rival{top:24px;left:35px}.table-player.self{bottom:24px;left:35px}.player-identity{align-items:center;gap:12px;display:flex}.player-identity strong{text-shadow:0 2px 3px #000;font:18px Bree;display:block}.player-identity small{text-shadow:0 1px 3px #000;color:#e5dfc9;font-size:11px;display:block}.table-player .portrait{width:85px;height:100px}.table-player.active .portrait{filter:drop-shadow(0 0 8px #ecbd64a0)}.player-score{box-shadow:none;filter:drop-shadow(0 1px 2px #000);border:0;align-items:center;gap:6px;padding:0;font-size:13px;display:flex;background:0 0!important}.houses{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.houses svg{filter:drop-shadow(0 1px 1px #0009);width:48px;height:48px}.houses.compact{display:block}.score-stroke{stroke-dasharray:1;stroke-dashoffset:0}@keyframes draw-point{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.rival-hand{gap:6px;display:flex;position:absolute;top:30px;left:50%;transform:translate(-50%)}.rival-hand img{filter:drop-shadow(0 5px 5px #0006);height:97px}.pot{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:20px;right:35px}.pot img{width:86px;height:75px}.pot span{letter-spacing:2px;color:#f2deaa;font-size:9px}.pot b{letter-spacing:0;font:16px Alfa}.score-area{z-index:6;position:absolute;bottom:18px;right:24px}.score-button{color:#f2e6bb;text-shadow:0 2px 3px #000;border:0;align-items:center;gap:5px;padding:3px;font-size:10px;display:flex;background:0 0!important}.score-button span:not(.houses){max-width:85px}.scorebook{background:#123329f5;border:1px solid #c6ad6b;border-radius:10px;min-width:270px;max-height:400px;padding:18px;position:absolute;bottom:60px;right:0;overflow:auto;box-shadow:0 12px 30px #0006}.scorebook header{justify-content:space-between;align-items:center;gap:15px;display:flex}.scorebook header button{padding:5px 8px;font:11px Roboto}.scorebook>div{margin-top:18px}.scorebook strong{letter-spacing:1px;color:#e2ca94;font-size:11px}.scorebook .houses{margin-top:10px}.tricks{gap:20px;display:flex;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.trick{min-width:90px;min-height:150px;position:relative}.trick>img{filter:drop-shadow(0 6px 6px #0007);width:82px;height:132px;position:absolute}.trick .opponent-play{top:0;left:-5px;transform:rotate(-9deg)}.trick .own-play{top:35px;left:20px;transform:rotate(8deg)}.trick .parda{z-index:2;width:75px;height:35px;top:122px;left:0}.table-status{text-align:center;color:#fff2d1;text-shadow:0 2px 4px #000;width:max-content;max-width:70%;font:17px Bree;position:absolute;top:67%;left:50%;transform:translate(-50%,-50%)}.own-hand{align-items:flex-end;gap:12px;display:flex;position:absolute;bottom:25px;left:50%;transform:translate(-50%)}.own-hand button{filter:drop-shadow(0 6px 7px #0008);border:0;padding:0;transition:transform .15s;background:0 0!important}.own-hand button:disabled{opacity:.9}.own-hand button:hover:not(:disabled){transform:translateY(-14px)}.own-hand img{height:155px;display:block}.game-controls{align-items:center;gap:20px;margin-top:20px;display:flex}.hand-info{min-width:120px;font:16px Bree}.hand-info span{color:#b9bea9;margin-top:5px;font:11px Roboto;display:block}.actions{flex-wrap:wrap;flex:1;gap:8px;display:flex}.actions button{padding:10px 13px;font-size:12px}.game-controls>button{font-size:12px}.call-art{max-width:190px;height:80px;animation:.3s ease-out call-in;position:absolute;top:45%;right:20px}.gesture-reaction{object-fit:contain;z-index:7;filter:drop-shadow(0 3px 8px #0007);width:125px;height:155px;animation:.25s ease-out call-in;position:absolute;top:-55px;left:75px}.rival .gesture-reaction{top:30px;left:100px}.gestures{grid-template-columns:repeat(8,1fr);gap:6px;margin:20px auto;padding:15px;display:grid}.gestures button{flex-direction:column;align-items:center;padding:5px;font:12px Bree;display:flex}.gestures img{width:100%;height:95px}.confirm{max-width:460px;padding:30px}.confirm p{margin:18px 0 25px}.confirm button{margin:5px}.error-banner{color:#ffead6;z-index:30;background:#543124;border:1px solid #bc8059;justify-content:space-between;align-items:center;gap:15px;padding:12px 25px;font-size:14px;display:flex;position:relative}.error-banner button{flex-shrink:0}.skip-link{z-index:50;color:#123225;background:#fff;padding:15px;position:absolute;top:-100px;left:20px}.skip-link:focus{top:10px}.tabs{flex-wrap:wrap;gap:7px;margin:25px 0;display:flex}.tabs button{font:13px Bree}.library-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.library-grid figure{background:#243c30;border:1px solid #b1a37555;border-radius:8px;margin:0;overflow:hidden}.art-checker{background:linear-gradient(90deg,#20392d 50%,#b8b391 50%);height:220px;padding:12px}.art-checker img{object-fit:contain;width:100%;height:100%}.library-grid figcaption{overflow-wrap:anywhere;padding:10px;font-size:11px}@keyframes call-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.reduced .gesture-reaction,.reduced .call-art{animation:none}.reduced .own-hand button:hover{transform:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.call-art,.gesture-reaction{animation:none}}@media (width>=1500px){.access{padding-left:calc(50vw - 625px);padding-right:calc(50vw - 625px)}}@media (width<=1000px){.access{gap:5%;padding:45px 5%}.welcome h1{font-size:40px}.welcome h1 span{font-size:30px}.access-panel{padding:28px}.welcome-cards{transform-origin:0;width:300px;transform:scale(.85)}.lobby-layout{grid-template-columns:minmax(0,1fr) 255px}.rooms-grid{gap:15px}.room-details{padding:15px}.room-bottom button{font-size:10px}.profile-layout{grid-template-columns:230px 1fr}.profile-preview{padding:20px}.profile-preview .portrait{width:140px;height:165px}.game-table{height:600px}.table-player.self{bottom:160px;left:20px}.table-player.rival{top:25px;left:20px}.player-identity{gap:6px}.player-identity strong{font-size:15px}.table-player .portrait{width:65px;height:78px}.player-score .houses svg{width:36px}.own-hand img{height:150px}.score-area{bottom:25px;right:15px}.own-hand{left:45%}.create-layout{gap:24px}.library-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=700px){h1{font-size:27px}h2{font-size:23px}.topbar{height:76px;padding:0 18px}.brand{font-size:20px}.brand span{letter-spacing:2.3px;font-size:7px}.topbar-note{text-align:right;max-width:100px;font-size:8px;line-height:1.7}.topbar nav{gap:10px}.nav-salon{display:none}.wallet{gap:2px;font-size:14px}.wallet img{width:21px;height:21px}.profile-link span{display:none}.profile-link .portrait{width:34px;height:40px}.logout{padding:5px;font-size:11px}.access{background-position:30%;flex-direction:column;gap:28px;min-height:0;padding:28px 20px 40px;display:flex}.welcome{text-align:center;max-width:none;padding:0}.welcome>.eyebrow{margin-bottom:10px;font-size:8px}.welcome h1{font-size:29px}.welcome h1 span{margin-top:10px;font-size:23px;line-height:1.4}.welcome h1 span br{display:none}.welcome>p{margin:10px 0;font-size:15px}.welcome-cards,.welcome-foot{display:none}.access-panel{max-width:480px;margin:auto;padding:26px 23px}.access-panel h2{font-size:22px}.access-panel .eyebrow{font-size:8px}.site-footer{text-align:center;flex-direction:column;gap:4px;padding:25px 20px}.site-footer p{margin:4px}.page{padding:25px 18px 40px}.section-heading{align-items:flex-start;gap:12px}.section-heading>button{padding:10px;font-size:10px}.section-heading .eyebrow{letter-spacing:1.5px;font-size:8px}.section-heading p{font-size:12px}.lobby-banner{min-height:240px;padding:28px 22px}.lobby-banner h1{font-size:30px}.lobby-banner .eyebrow{font-size:8px}.lobby-banner p{max-width:225px;font-size:13px}.lobby-banner>img{opacity:.8;width:104px;margin:0;position:absolute;bottom:7px;right:-22px}.lobby-banner .primary{z-index:1;font-size:12px;position:relative}.lobby-layout{flex-direction:column;display:flex}.lobby-toolbar h2{font-size:22px}.lobby-toolbar button{padding:8px 12px;font-size:11px}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.room-art{height:115px}.room-art .tag{padding:4px 5px;font-size:7px;top:7px;left:7px}.room-details{padding:12px}.room-details h3{font-size:20px}.room-details p{min-height:35px;font-size:10px}.room-bottom{flex-direction:column;align-items:stretch;gap:12px}.room-bottom>strong{font-size:17px}.room-bottom button{padding:9px 6px;font-size:11px}.invite-panel{padding:25px}.invite-panel .house-rule{text-align:left;align-items:center;gap:20px;display:flex}.house-rule img{width:65px}.profile-layout{flex-direction:column;display:flex}.profile-preview{position:static}.profile-fields{padding:20px}.profile-preview .portrait{width:130px;height:155px}.profile-preview .primary{max-width:300px;margin:20px auto;display:block}.avatar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.avatar-option{padding:4px;font-size:10px}.avatar-option img{height:82px}.profile-fields>.muted{font-size:12px}.design-grid{gap:7px}.design-grid img{height:67px}.design-grid button{padding:5px;font-size:11px}.design-grid.cardBacks img{height:83px}.modal-backdrop{padding:10px}.create-modal{max-height:95dvh;padding:22px 18px}.modal-header h2{font-size:23px}.create-layout{flex-direction:column;gap:0;display:flex}.table-preview{height:145px}.table-preview img{height:112px}.modal-footer{flex-direction:column;align-items:stretch;gap:16px}.modal-footer small{font-size:11px}.waiting-table{border-radius:15px;min-height:360px;padding:24px 10px}.waiting-player .portrait{width:110px;height:130px}.waiting-player h2{margin:10px 2px;font-size:18px}.waiting-player p{font-size:11px}.waiting-player .tag{padding:5px;font-size:8px}.empty-seat{width:95px;height:95px;margin:18px auto 27px;font-size:32px}.waiting-deck{height:65px;top:85%;left:50%}.waiting-footer{flex-direction:column;align-items:stretch;gap:20px;padding:22px}.game-page{padding:13px 8px 25px}.game-heading{gap:5px;padding:0 6px}.game-heading h1{font-size:15px}.game-heading .eyebrow{letter-spacing:1px;font-size:7px}.game-heading>button{padding:8px;font-size:10px}.connection{font-size:10px}.game-table{background-size:auto 100%;border-radius:13px;height:calc(100dvh - 270px);min-height:590px;max-height:700px}.table-player.rival{top:10px;left:10px}.table-player.self{bottom:151px;left:10px}.player-identity{flex-direction:column;align-items:flex-start;gap:0}.table-player .portrait{width:60px;height:71px}.player-identity strong{overflow-wrap:anywhere;max-width:105px;font-size:12px}.player-identity small{font-size:9px}.table-player{align-items:flex-start;gap:0}.player-score{gap:0;position:absolute;top:12px;left:62px}.player-score .houses svg{width:32px;height:32px}.player-score b{font-size:10px}.rival-hand{gap:3px;top:30px;left:57%}.rival-hand img{max-width:43px;height:70px}.pot{gap:0;top:125px;right:8px}.pot img{width:66px;height:60px}.pot span{font-size:8px}.pot b{font-size:13px}.tricks{gap:10px;top:42%;left:46%}.trick{min-width:66px;min-height:130px}.trick>img{width:62px;height:100px}.trick .own-play{top:28px;left:9px}.trick .parda{width:55px;top:98px}.table-status{max-width:76%;font-size:13px;top:63%}.own-hand{gap:7px;bottom:15px;left:50%}.own-hand img{height:123px}.score-area{bottom:151px;right:6px}.score-button{flex-direction:column;gap:0}.score-button>.houses{display:none}.score-button span:not(.houses){max-width:80px;font-size:9px}.scorebook{min-width:250px;max-width:calc(100vw - 40px);bottom:50px;right:0}.call-art{max-width:100px;height:53px;top:52%;right:12px}.game-controls{flex-wrap:wrap;gap:10px;margin-top:15px;padding:0 6px}.hand-info{flex:1;font-size:14px}.actions{flex-basis:100%;order:3;gap:6px}.actions button{padding:10px;font-size:11px}.game-controls>button{padding:8px 14px;font-size:11px}.gestures{grid-template-columns:repeat(4,1fr);gap:5px;padding:10px}.gestures img{height:80px}.gesture-reaction{width:100px;height:130px;top:-80px;left:35px}.rival .gesture-reaction{top:20px;left:80px}.error-banner{flex-wrap:wrap;padding:10px 15px;font-size:12px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.art-checker{height:180px}.tabs button{font-size:12px}.confirm{padding:24px}.confirm h2{font-size:22px}.confirm button{font-size:12px}}.resume-banner{justify-content:space-between;align-items:center;gap:15px;max-width:1200px;margin:25px auto 0;padding:20px;display:flex}.game-table>.scorebook{z-index:12;bottom:110px;right:18px}.scorebook:before{content:"";z-index:-1;position:absolute;inset:-12px}.coin-flight{pointer-events:none;z-index:9;position:absolute;inset:0}.coin-flight img{width:25px;height:25px;animation-duration:var(--flight-time,1s);animation-timing-function:ease-in-out;animation-fill-mode:both;position:absolute}.coin-flight.entry img{animation-name:coin-entry}.coin-flight.payout img{animation-name:coin-payout}.coin-flight.to-self{--recipient-y:84%}.coin-flight.to-rival{--recipient-y:12%}@keyframes coin-entry{0%{left:12%;top:var(--origin-y,84%);opacity:0;transform:scale(.7)}15%{opacity:1}90%{opacity:1}to{opacity:0;top:10%;left:91%;transform:scale(.5)}}@keyframes coin-payout{0%{opacity:0;top:10%;left:91%;transform:scale(.5)}15%{opacity:1}90%{opacity:1}to{left:12%;top:var(--recipient-y,84%);opacity:0;transform:scale(1)}}.reduced .coin-flight img{animation-name:coin-fade}@keyframes coin-fade{0%,to{opacity:0;top:10%;left:90%}50%{opacity:1;top:10%;left:90%}}.coin-flight.entry img:nth-child(2n){--origin-y:12%}body .welcome>p,body .access-panel>.muted,body .access-panel small,body .access-panel .switch-auth,body .access-note,body .section-heading p,body .lobby-banner p,body .empty-state p,body .invite-panel>.muted,body .house-rule p,body .modal-footer small,body .waiting-player p,body .waiting-footer p,body .waiting-footer small,body .profile-fields>.muted,body .site-footer p,body .opening-splash .opening-caption{font-family:Changa One,sans-serif;font-weight:700}.play-focused{max-width:1480px;padding-top:12px}.play-focused .game-table{isolation:isolate;height:calc(100dvh - 245px);min-height:720px;max-height:850px}.play-focused .game-table:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#0000 20%,#07180d22 78%);position:absolute;inset:0}.play-focused .tricks{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;width:570px;display:grid;top:43%;left:50%;transform:translate(-50%,-50%)}.play-focused .trick{text-align:center;isolation:isolate;grid-template-rows:25px 134px 134px 25px;gap:9px;min-width:0;min-height:0;display:grid;position:relative}.trick>header{letter-spacing:2px;color:#f1e4c1;text-shadow:0 2px 4px #000;justify-content:center;align-items:center;gap:7px;font:10px Roboto,sans-serif;display:flex}.trick>header span{color:#f2cc7b;font:12px Alfa}.trick>footer{letter-spacing:1px;color:#e0d8bc;text-shadow:0 2px 4px #000;padding-top:2px;font:10px Bree,serif}.trick.won>footer{color:#f9d075}.trick.lost>footer{color:#f2c8b2}.played-slot{place-items:center;min-width:0;min-height:0;display:grid}.played-card{z-index:1;filter:drop-shadow(0 6px 5px #0007);height:134px;position:relative;transform:rotate(-3deg)}.played-card.from-self{transform:rotate(3deg)}.played-card img{width:auto;max-width:none;height:100%;display:block}.empty-card-slot{color:#f1dfb135;background:#05170c0c;border:1px dashed #f4dd9b55;border-radius:7px;place-items:center;width:79px;height:126px;font-size:24px;display:grid;box-shadow:inset 0 0 20px #0001}.winning-card:after{content:"";pointer-events:none;border:2px solid #f5d27e;border-radius:7px;position:absolute;inset:-5px;box-shadow:0 0 17px #f2c46945}.just-played.from-self{animation:throw-own var(--play-duration,.42s) cubic-bezier(.16, .8, .3, 1) both}.just-played.from-rival{animation:throw-rival var(--play-duration,.42s) cubic-bezier(.16, .8, .3, 1) both}.just-played.winning-card:after{animation:win-impact calc(var(--play-duration,.42s) * 1.7) ease-out both}@keyframes throw-own{0%{opacity:0;transform:translate(25px,150px)rotate(18deg)scale(1.1)}60%{opacity:1}to{opacity:1;transform:rotate(3deg)}}@keyframes throw-rival{0%{opacity:0;transform:translate(-20px,-160px)rotate(-18deg)scale(.8)}60%{opacity:1}to{opacity:1;transform:rotate(-3deg)}}@keyframes win-impact{0%,50%{opacity:0;transform:scale(1.12)}65%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.play-focused .own-hand{gap:16px;width:max-content;bottom:17px;left:50%}.play-focused .own-hand img{width:auto;max-width:none;height:195px}.play-focused .own-hand button{opacity:1;flex-shrink:0}.play-focused .own-hand button:disabled img{filter:brightness(.9)}.your-turn .own-hand button:not(:disabled){filter:drop-shadow(0 6px 9px #0009)drop-shadow(0 0 4px #f4d28e70)}.play-focused .own-hand button:focus-visible{outline-offset:6px;border-radius:9px;outline:3px solid #ffe7a4}.dealt-card{animation:deal-card calc(var(--play-duration,.42s) * 1.25) cubic-bezier(.2, .7, .2, 1) both}.dealt-card:nth-child(2){animation-delay:70ms}.dealt-card:nth-child(3){animation-delay:.14s}@keyframes deal-card{0%{opacity:0;transform:translateY(70px)rotate(-9deg)}to{opacity:1;transform:translateY(0)rotate(0)}}.play-focused .rival-hand{gap:9px;top:20px;left:50%}.play-focused .rival-hand img{height:99px}.play-focused .table-status{letter-spacing:.2px;color:#f3ead0;background:#102b1b40;border-radius:20px;max-width:70%;min-height:25px;padding:3px 12px;font:17px Bree;top:auto;bottom:227px;left:50%;transform:translate(-50%)}.play-focused .table-status.act-now{color:#ffe7a2}.your-turn .table-status:before{content:"◆";color:#f3c974;margin-right:8px;animation:1.8s ease-in-out infinite turn-nudge;display:inline-block}@keyframes turn-nudge{50%{opacity:.4;transform:scale(.8)}}.turn-clock{color:#f6dc9d;text-shadow:0 2px 4px #000;grid-template-columns:52px 100px;align-items:center;gap:9px;display:grid;position:absolute;top:180px;left:30px}.turn-clock svg{grid-area:1/1;width:52px;height:52px;transform:rotate(-90deg)}.turn-clock circle{fill:#0e241b44;stroke-width:2.7px;stroke-linecap:round}.clock-track{stroke:#eee2bb30}.clock-progress{stroke:#e8c16c;transition:stroke-dashoffset 1s linear}.turn-clock b{text-align:center;z-index:1;grid-area:1/1;font:18px Alfa}.turn-clock span{letter-spacing:1px;font:11px Alfa}.turn-clock small{letter-spacing:0;color:#dfd8bd;margin-top:5px;font:9px Roboto;display:block}.turn-clock.theirs{opacity:.65}.turn-clock.theirs .clock-progress{stroke:#e2dfca}.turn-clock.urgent{color:#ffcf96}.turn-clock.urgent svg{filter:drop-shadow(0 0 5px #ffad53);animation:1s ease-in-out infinite clock-pulse}@keyframes clock-pulse{50%{opacity:.5}}.battle-notice{z-index:10;pointer-events:none;text-shadow:0 4px 8px #000;min-width:290px;animation:canto-arrive var(--play-duration,.42s) cubic-bezier(.2, 1.4, .3, 1) both;background:radial-gradient(#0c291af5,#0c291acf 55%,#0000 75%);flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:18px 28px;display:flex;position:absolute;top:43%;left:50%;transform:translate(-50%,-50%)}.battle-notice small{color:#fff1cd;text-shadow:0 2px 3px #000;font:16px Bree}.battle-notice strong{color:#f3cf7c;white-space:nowrap;font:32px Alfa;transform:rotate(-4deg)}.battle-notice.loss strong{color:#f1b492}.battle-notice img{filter:drop-shadow(0 5px 6px #0008);max-width:340px;height:108px}@keyframes canto-arrive{0%{opacity:0;transform:translate(-50%,-40%)scale(.55)rotate(-7deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}}.play-focused .table-player.self{bottom:30px;left:24px}.play-focused .table-player.rival{top:20px;left:24px}.play-focused .table-player.active .portrait{filter:drop-shadow(0 0 9px #edc56f)}.play-focused .pot{top:22px;right:28px}.play-focused .game-controls{gap:12px;margin-top:14px}.play-focused .actions button{min-height:47px;padding:12px 17px;font-size:14px}.play-focused .sound-toggle{min-width:106px;font:11px Roboto}.play-focused .gesture-reaction{z-index:11}.play-focused .scorebook{z-index:15}.play-focused.between-hands .table-status{color:#f3cf7c}.play-focused .trick.resolved .empty-card-slot{opacity:.3}.play-focused.reduced .just-played,.play-focused.reduced .dealt-card,.play-focused.reduced .battle-notice,.play-focused.reduced .winning-card:after,.play-focused.reduced .turn-clock svg,.play-focused.reduced .table-status:before{animation:none!important}.play-focused.reduced .clock-progress{transition:none}@media (width<=1100px){.play-focused .tricks{gap:30px;width:470px}.turn-clock{text-align:center;grid-template-columns:46px;gap:0;top:155px;left:18px}.turn-clock svg{width:46px;height:46px}.turn-clock span{font-size:9px}.turn-clock small{display:none}.play-focused .table-player.self{bottom:225px}.play-focused .table-player.self .player-identity{max-width:160px}.play-focused .table-player.self .portrait{width:64px;height:75px}.play-focused .own-hand img{height:187px}}@media (width<=700px){.play-focused{padding:10px 6px 24px}.play-focused .game-heading{margin-bottom:10px}.play-focused .game-table{background-size:auto 100%;height:calc(100dvh - 180px);min-height:660px;max-height:780px}.play-focused .tricks{gap:10px;width:calc(100% - 46px);max-width:420px;top:39%;left:50%}.play-focused .trick{grid-template-rows:19px 108px 108px 22px;gap:6px}.trick>header{letter-spacing:.6px;gap:4px;font-size:8px}.trick>header span{font-size:9px}.trick>footer{letter-spacing:.4px;font-size:9px}.played-card{height:106px}.empty-card-slot{width:63px;height:101px;font-size:18px}.winning-card:after{border-width:1.5px;inset:-3px}.play-focused .rival-hand{gap:5px;top:19px;left:58%}.play-focused .rival-hand img{max-width:none;height:76px}.play-focused .own-hand{gap:10px;bottom:17px;left:50%}.play-focused .own-hand img{height:148px}.play-focused .table-player.rival{top:10px;left:10px}.play-focused .table-player.self{bottom:186px;left:10px}.play-focused .table-player.self .portrait{width:52px;height:61px}.play-focused .player-identity strong{max-width:104px;font-size:11px}.play-focused .player-identity small{font-size:8px}.play-focused .player-score{top:14px;left:60px}.play-focused .table-status{background:#08271b77;border-radius:6px;max-width:62%;padding:4px 5px;font-size:12px;line-height:1.4;bottom:174px;left:61%}.turn-clock{grid-template-columns:41px;gap:0;inset:auto 13px 219px auto}.turn-clock svg{width:41px;height:41px}.turn-clock b{font-size:14px}.turn-clock span{letter-spacing:.6px;margin-top:2px;font-size:8px}.play-focused .pot{z-index:2;flex-direction:row;gap:4px;top:90px;right:9px}.play-focused .pot img{width:37px;height:35px}.play-focused .pot span{letter-spacing:.5px;font-size:7px}.play-focused .pot b{font-size:12px}.battle-notice{min-width:220px;padding:15px;top:39%}.battle-notice strong{font-size:25px}.battle-notice small{font-size:14px}.battle-notice img{max-width:270px;height:86px}.play-focused .game-controls{gap:8px;padding:0 5px}.play-focused .hand-info{min-width:95px}.play-focused .sound-toggle{min-width:0;padding:8px;font-size:10px}.play-focused .actions{gap:7px}.play-focused .actions button{flex-grow:1;min-height:45px;padding:11px 12px;font-size:12px}.play-focused .game-table>.scorebook{max-height:350px;bottom:178px;right:12px}.play-focused .own-hand button:hover:not(:disabled){transform:translateY(-7px)}}@media (prefers-reduced-motion:reduce){.play-focused .just-played,.play-focused .dealt-card,.play-focused .battle-notice,.play-focused .winning-card:after,.play-focused .turn-clock svg,.play-focused .table-status:before{animation:none!important}.clock-progress{transition:none}}
