.unified-player-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#3b82f633;border:2px solid rgba(59,130,246,.3);color:#fff;font-weight:600;flex-shrink:0;overflow:hidden;transition:all .2s ease-in-out}.unified-player-avatar--xxs{width:16px;height:16px;font-size:8px}.unified-player-avatar--xs{width:20px;height:20px;font-size:10px}.unified-player-avatar--sm{width:24px;height:24px;font-size:12px}.unified-player-avatar--md{width:32px;height:32px;font-size:14px}.unified-player-avatar--lg{width:40px;height:40px;font-size:16px}.unified-player-avatar--cpu{background:#64748b33;border-color:#64748b66}.unified-player-avatar--host{background:#fbbf2433;border-color:#fbbf2466}.unified-player-avatar--me{background:#3b82f64d;border-color:#3b82f680;box-shadow:0 0 0 2px #3b82f633}.unified-player-avatar--online{border-color:#22c55e}.unified-player-avatar--offline{border-color:#ef4444;opacity:.6}.unified-player-avatar--default{border-color:#64748b4d}.unified-player-avatar:hover{transform:scale(1.05);box-shadow:0 2px 8px #0003}.game-result-modal .modal__header{padding:0;margin-bottom:0;justify-content:center}.game-result-modal .modal__title{text-align:center;width:100%;padding-top:clamp(8px,1.2cqh,16px);padding-bottom:clamp(8px,1.2cqh,16px)}.game-result-modal__content{display:flex;flex-direction:column;gap:calc(var(--modal-content-gap) * .6);padding:calc(var(--hand-area-padding-block) * .5) calc(var(--hand-area-padding-inline) * .6);max-height:min(82vh,calc(100vh - 80px));overflow-y:auto}@media (min-width: 1024px){.game-result-modal__content{gap:calc(var(--modal-content-gap) * .85);padding:calc(var(--hand-area-padding-block) * .75) calc(var(--hand-area-padding-inline) * .85);max-height:min(90vh,calc(100vh - 50px))}.game-result-modal__rankings{max-height:clamp(400px,70cqh,600px);gap:calc(var(--modal-list-gap) * 1)}.game-result-modal__rank-item{padding:calc(var(--modal-item-padding-block) * .85) calc(var(--modal-item-padding-inline) * .85);min-height:clamp(48px,7.5cqh,72px);gap:calc(var(--modal-list-gap) * .9)}.game-result-modal__rank-number,.game-result-modal__rank-title,.game-result-modal__player-name{font-size:calc(var(--modal-heading-size) * .9)}}@media (min-width: 1440px){.game-result-modal__content{gap:var(--modal-content-gap);padding:calc(var(--hand-area-padding-block) * .9) var(--hand-area-padding-inline);max-height:min(92vh,calc(100vh - 40px))}.game-result-modal__rankings{max-height:clamp(480px,75cqh,720px);gap:calc(var(--modal-list-gap) * 1.2)}.game-result-modal__rank-item{padding:var(--modal-item-padding-block) var(--modal-item-padding-inline);min-height:clamp(52px,8cqh,80px);gap:var(--modal-list-gap)}.game-result-modal__rank-number,.game-result-modal__rank-title,.game-result-modal__player-name{font-size:var(--modal-heading-size)}}.game-result-modal__header{text-align:center}.game-result-modal__title{font-size:var(--modal-title-size);font-weight:600;color:#fff;margin:0 0 var(--space-sm, clamp(6px, 1cqh, 10px)) 0}.game-result-modal__current-rank{font-size:var(--modal-body-size);color:#c4b5fd;margin:0;font-weight:500}.game-result-modal__rankings{display:flex;flex-direction:column;gap:clamp(3px,.6cqh,8px);max-height:clamp(280px,65cqh,420px);overflow-y:auto;background:#1e293b66;border-radius:clamp(8px,1.2cqh,12px);padding:calc(var(--space-lg, clamp(12px, 2cqh, 20px)) * .6);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.2)}.game-result-modal__rank-item{display:grid;grid-template-columns:minmax(50px,auto) 1fr minmax(65px,auto);align-items:center;gap:calc(var(--modal-list-gap) * .6);padding:clamp(2px,.4cqh,5px) calc(var(--modal-item-padding-inline) * .6);border-radius:clamp(5px,.8cqh,8px);background:#334155cc;border:clamp(1px,.2cqh,2px) solid rgba(59,130,246,.3);box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,1cqh,10px) #0003,inset 0 clamp(1px,.15cqh,2px) 0 #ffffff0d;transition:none;min-height:clamp(36px,5.5cqh,52px)}.game-result-modal__rank-item--current{border-color:#c4b5fd;background:#c4b5fd26;box-shadow:0 0 clamp(8px,1.6cqh,12px) #c4b5fd4d}.game-result-modal__rank-item--rank-1{background:linear-gradient(135deg,#ffd70033,#ffd7001a);border-color:#ffd70080}.game-result-modal__rank-item--rank-2{background:linear-gradient(135deg,#c0c0c033,#c0c0c01a);border-color:#c0c0c080}.game-result-modal__rank-item--rank-3{background:linear-gradient(135deg,#cd7f3233,#cd7f321a);border-color:#cd7f3280}.game-result-modal__rank-number{font-size:clamp(18px,2.6cqh,34px);font-weight:700;color:#60a5fa;min-width:var(--result-modal-points-rank-min-inline, 50px);text-align:center;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2);background:transparent;padding:calc(var( --result-modal-points-rank-padding-block, clamp(4px, .6cqh, 8px) ) * .6) calc(var( --result-modal-points-rank-padding-inline, clamp(4px, .6cqh, 8px) ) * .6);border-radius:clamp(4px,.6cqh,7px);border:none}.game-result-modal__rank-suffix{font-size:.45em;margin-left:.1em}.game-result-modal__rank-item--rank-1 .game-result-modal__rank-number{color:gold;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(255,215,0,.5)}.game-result-modal__rank-item--rank-2 .game-result-modal__rank-number{color:silver;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(192,192,192,.5)}.game-result-modal__rank-item--rank-3 .game-result-modal__rank-number{color:#cd7f32;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(205,127,50,.5)}.game-result-modal__player-block{display:flex;align-items:center;gap:clamp(6px,.9cqh,10px)}.game-result-modal__player-info{display:flex;flex-direction:column;gap:clamp(2px,.3cqh,4px)}.game-result-modal__rank-info{display:flex;align-items:center;gap:clamp(4px,.6cqh,8px)}.game-result-modal__rank-title{font-size:clamp(10px,1.2cqh,14px);font-weight:600;color:#fef3c7;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-result-modal__rank-points{font-size:clamp(9px,1.1cqh,13px);color:#60a5fa;font-weight:600;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-result-modal__player-name{font-size:clamp(12px,1.5cqh,17px);font-weight:600;color:#fff;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-result-modal__total-points{font-size:clamp(14px,2cqh,24px);font-weight:700;color:#60a5fa;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2);letter-spacing:clamp(.1px,.08cqw,.5px);text-align:right;justify-self:end;padding-right:clamp(4px,.7cqh,8px);display:flex;align-items:flex-end;justify-content:flex-end;gap:clamp(2px,.3cqh,4px)}.game-result-modal__points-unit{font-size:.6em;vertical-align:baseline}.game-result-modal__cpu-indicator{font-size:.5em;font-weight:700;color:#94a3b8;background:#94a3b833;padding:clamp(2px,.3cqh,4px) clamp(4px,.6cqh,6px);border-radius:clamp(3px,.5cqh,5px);margin-right:clamp(4px,.6cqh,8px);vertical-align:baseline}.game-result-modal__you-badge{font-size:var(--font-size-sm);color:#c4b5fd;font-weight:400;padding:var(--space-2xs, clamp(2px, .3cqh, 4px)) var(--space-sm, clamp(6px, 1cqw, 10px));background:#c4b5fd33;border-radius:var(--radius-sm, clamp(3px, .5cqh, 6px))}.game-result-modal__match-progress{font-size:var(--modal-body-size);color:#c4b5fd;font-weight:500}.game-result-modal__ready-status{text-align:center;padding:var(--space-md, clamp(8px, 1.4cqh, 12px));background:#22c55e1a;border:var(--border-thin, clamp(1px, .15cqh, 2px)) solid rgba(34,197,94,.3);border-radius:var(--radius-md, clamp(6px, .9cqh, 10px))}.game-result-modal__ready-text{font-size:var(--modal-body-size);color:#22c55e;margin:0;font-weight:500}.game-result-modal__actions{display:flex;justify-content:center;padding-top:var(--space-sm, clamp(6px, 1cqh, 10px))}.game-result-modal__action-buttons{display:grid;grid-template-columns:1fr 2fr;gap:clamp(10px,1.4cqh,16px);width:100%;justify-content:center}.game-result-modal__next-game-button,.game-result-modal__leave-button{max-width:none;width:100%;padding:var(--hand-area-row-gap) calc(var(--hand-area-row-gap) * 2);font-size:var(--modal-heading-size);font-weight:600}.game-result-modal__close-button{min-width:clamp(160px,26cqw,220px);padding:var(--hand-area-row-gap) calc(var(--hand-area-row-gap) * 2);font-size:var(--modal-heading-size);font-weight:600}.game-result-modal__rankings::-webkit-scrollbar{width:var(--rules-scrollbar-width, clamp(6px, .8cqw, 10px))}.game-result-modal__rankings::-webkit-scrollbar-track{background:#3341554d;border-radius:var(--rules-scrollbar-radius, clamp(3px, .5cqh, 6px))}.game-result-modal__rankings::-webkit-scrollbar-thumb{background:#94a3b880;border-radius:var(--rules-scrollbar-radius, clamp(3px, .5cqh, 6px))}.game-result-modal__rankings::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}@media (max-width: 720px){.game-result-modal__content{gap:var(--space-sm, clamp(6px, 1cqh, 10px));padding:var(--space-sm, clamp(6px, 1cqh, 10px));max-height:min(80vh,calc(100vh - 50px))}.game-result-modal__rankings{max-height:min(55vh,calc(100vh - 140px))}.game-result-modal__rank-item{gap:var(--space-xs, clamp(4px, .8cqh, 10px));padding:clamp(6px,1cqh,10px) clamp(6px,1cqh,10px)}.game-result-modal__rank-icon{font-size:calc(var(--modal-heading-size) * 1)}.game-result-modal__rank-number,.game-result-modal__rank-title,.game-result-modal__player-name{font-size:calc(var(--modal-heading-size) * .75)}.game-result-modal__action-buttons{grid-template-columns:1fr}.game-result-modal__next-game-button,.game-result-modal__leave-button,.game-result-modal__close-button{max-width:none;width:100%;font-size:calc(var(--modal-heading-size) * .9);padding:clamp(10px,1.4cqh,14px) clamp(16px,2.4cqh,20px)}}@media (max-height: 640px){.game-result-modal__content{max-height:min(90vh,calc(100vh - 15px));padding:clamp(4px,.6cqh,8px)}.game-result-modal__rankings{max-height:min(50vh,calc(100vh - 140px))}.game-result-modal__rank-icon{font-size:calc(var(--modal-heading-size) * .95)}.game-result-modal__rank-number,.game-result-modal__rank-title,.game-result-modal__player-name{font-size:calc(var(--modal-heading-size) * .7)}}@media (max-width: 480px){.game-result-modal__content{max-height:min(95vh,calc(100vh - 20px));padding:clamp(4px,.6cqh,8px)}.game-result-modal__rankings{max-height:min(60vh,calc(100vh - 130px))}.game-result-modal__rank-item{padding:clamp(6px,1cqh,10px);min-height:auto}}.game-match-result-modal__content{display:flex;flex-direction:column;gap:calc(var(--result-modal-content-gap) * .6);padding:calc(var(--result-modal-content-padding) * .5);max-height:min(75vh,calc(100vh - 100px));overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}@media (min-width: 1024px){.game-match-result-modal__content{gap:calc(var(--result-modal-content-gap) * .85);padding:calc(var(--result-modal-content-padding) * .75);max-height:min(90vh,calc(100vh - 50px))}.game-match-result-modal__title{font-size:clamp(18px,3.8cqh,44px)}.game-match-result-modal__header{padding-bottom:calc(var(--space-lg, clamp(10px, 1.6cqh, 18px)) * .9)}.game-match-result-modal__points-ranking{padding:calc(var(--space-lg, clamp(12px, 2cqh, 20px)) * .9);gap:clamp(5px,.9cqh,11px)}.game-match-result-modal__points-item{padding:clamp(3px,.6cqh,7px) calc(var(--result-modal-points-padding-inline) * .85);min-height:clamp(36px,4.8cqh,64px);gap:calc(var(--result-modal-points-gap) * .9)}.game-match-result-modal__points-rank{font-size:clamp(22px,3.4cqh,44px)}.game-match-result-modal__points-name{font-size:clamp(13px,1.7cqh,19px)}.game-match-result-modal__points-value{font-size:clamp(15px,2.2cqh,26px);padding-right:clamp(6px,.9cqh,12px)}.game-match-result-modal__points-player{gap:clamp(8px,1.2cqh,13px)}}@media (min-width: 1440px){.game-match-result-modal__content{gap:var(--result-modal-content-gap);padding:var(--result-modal-content-padding);max-height:min(92vh,calc(100vh - 40px))}.game-match-result-modal__title{font-size:clamp(20px,4cqh,48px)}.game-match-result-modal__header{padding-bottom:var(--space-lg, clamp(10px, 1.6cqh, 18px))}.game-match-result-modal__points-ranking{padding:var(--space-lg, clamp(12px, 2cqh, 20px));gap:clamp(6px,1cqh,12px)}.game-match-result-modal__points-item{padding:clamp(4px,.6cqh,8px) var(--result-modal-points-padding-inline);min-height:clamp(40px,5.2cqh,72px);gap:var(--result-modal-points-gap)}.game-match-result-modal__points-rank{font-size:clamp(24px,3.6cqh,48px)}.game-match-result-modal__points-name{font-size:clamp(14px,1.8cqh,20px)}.game-match-result-modal__points-value{font-size:clamp(16px,2.4cqh,28px);padding-right:clamp(8px,1.2cqh,16px)}.game-match-result-modal__points-player{gap:clamp(10px,1.4cqh,14px)}}.game-match-result-modal__header{text-align:center;padding-bottom:calc(var(--space-lg, clamp(10px, 1.6cqh, 18px)) * .7)}.game-match-result-modal__header-row{display:flex;flex-direction:var(--result-modal-header-direction);justify-content:space-between;align-items:var(--result-modal-header-align);position:sticky;top:0;background:transparent;z-index:10;padding:var(--space-sm, clamp(6px, 1cqh, 10px)) 0}.game-match-result-modal__title{font-size:clamp(14px,2.6cqh,32px);font-weight:700;color:#fff;margin:0;line-height:1.2;letter-spacing:clamp(.1px,.08cqw,.5px);text-shadow:0 clamp(2px,.3cqh,4px) clamp(4px,.6cqh,8px) rgba(0,0,0,.3);flex:1;text-align:center}.game-match-result-modal__winner{display:inline-flex;align-items:center;justify-content:center;gap:var(--result-modal-winner-gap);padding:var(--result-modal-winner-padding-block) var(--result-modal-winner-padding-inline);background:linear-gradient(135deg,#ffd70040,#ffc10726);border:var(--border-thin, clamp(1px, .2cqh, 2px)) solid rgba(255,215,0,.6);border-radius:var(--radius-lg, clamp(8px, 1.2cqh, 12px));margin-top:var(--space-sm, clamp(6px, 1cqh, 10px));box-shadow:0 clamp(3px,.6cqh,6px) clamp(10px,1.6cqh,16px) #ffd70033,inset 0 clamp(1px,.2cqh,2px) 0 #ffffff1a;animation:winnerPulse 2s ease-in-out infinite}@keyframes winnerPulse{0%,to{box-shadow:0 clamp(3px,.6cqh,6px) clamp(10px,1.6cqh,16px) #ffd70033,inset 0 clamp(1px,.2cqh,2px) 0 #ffffff1a}50%{box-shadow:0 clamp(4px,.8cqh,8px) clamp(16px,2.4cqh,24px) #ffd70066,inset 0 clamp(1px,.2cqh,2px) 0 #ffffff1a}}.game-match-result-modal__winner-label{font-size:calc(16px * var(--ui-font-scale));color:#fff;font-weight:600;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-match-result-modal__winner-name{font-size:var(--result-modal-winner-name-size);color:gold;font-weight:700;text-shadow:0 clamp(2px,.3cqh,4px) clamp(4px,.6cqh,8px) rgba(0,0,0,.3);letter-spacing:clamp(.1px,.08cqw,.5px)}.game-match-result-modal__winner-points{font-size:var(--result-modal-points-name-size);color:gold;font-weight:600;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-match-result-modal__time-info{display:flex;flex-direction:column;gap:clamp(6px,1cqh,10px);padding:var(--result-modal-time-info-padding);background:#33415566;border-radius:clamp(6px,.9cqh,10px);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.2)}.game-match-result-modal__time-item{display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.2cqh,12px);font-size:calc(.9rem * var(--ui-font-scale))}.game-match-result-modal__time-value{color:#e2e8f0;font-weight:600}.game-match-result-modal__sections{display:flex;flex-direction:column;gap:calc(var(--result-modal-content-gap) * 1.6);padding-top:calc(var(--result-modal-content-gap) * .6);padding-bottom:calc(var(--result-modal-content-gap) * .6)}.game-match-result-modal__section{display:flex;flex-direction:column;gap:var(--result-modal-points-gap);background:transparent;border:none;box-shadow:none}.game-match-result-modal__section--supplementary{opacity:.85;margin-top:calc(var(--result-modal-content-gap) * .4)}.game-match-result-modal__section-title{font-size:var(--result-modal-points-name-size);font-weight:600;color:#fff;margin:0 0 var(--space-xs, clamp(4px, .8cqh, 8px)) 0}.game-match-result-modal__section-title--supplementary{font-size:calc(.9rem * var(--ui-font-scale));color:#94a3b8;font-weight:500;opacity:.8}.game-match-result-modal__points-ranking{display:flex;flex-direction:column;gap:clamp(3px,.6cqh,8px);background:#1e293b66;border-radius:clamp(8px,1.2cqh,12px);padding:calc(var(--space-lg, clamp(12px, 2cqh, 20px)) * .6);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.2)}.game-match-result-modal__points-item{display:grid;grid-template-columns:minmax(45px,auto) 1fr minmax(65px,auto);align-items:center;gap:calc(var(--result-modal-points-gap) * .6);padding:clamp(2px,.4cqh,5px) calc(var(--result-modal-points-padding-inline) * .6);min-height:clamp(28px,3.5cqh,48px);border-radius:clamp(5px,.8cqh,8px);background:#334155cc;border:clamp(1px,.2cqh,2px) solid rgba(59,130,246,.3);box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,1cqh,10px) #0003,inset 0 clamp(1px,.15cqh,2px) 0 #ffffff0d;transition:none}.game-match-result-modal__points-item--rank-1{background:linear-gradient(135deg,#ffd70033,#ffd7001a);border-color:#ffd70080}.game-match-result-modal__points-item--rank-1 .game-match-result-modal__points-rank{color:gold;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(255,215,0,.5)}.game-match-result-modal__points-item--rank-2{background:linear-gradient(135deg,#c0c0c033,#c0c0c01a);border-color:#c0c0c080}.game-match-result-modal__points-item--rank-2 .game-match-result-modal__points-rank{color:silver;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(192,192,192,.5)}.game-match-result-modal__points-item--rank-3{background:linear-gradient(135deg,#cd7f3233,#cd7f321a);border-color:#cd7f3280}.game-match-result-modal__points-item--rank-3 .game-match-result-modal__points-rank{color:#cd7f32;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(205,127,50,.5)}.game-match-result-modal__points-rank{font-size:clamp(18px,2.6cqh,34px);font-weight:700;color:#60a5fa;min-width:var(--result-modal-points-rank-min-inline);text-align:center;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2);background:transparent;padding:calc(var(--result-modal-points-rank-padding-block) * .6) calc(var(--result-modal-points-rank-padding-inline) * .6);border-radius:clamp(4px,.6cqh,7px);border:none}.game-match-result-modal__points-rank-suffix{font-size:.45em;margin-left:.1em}.game-match-result-modal__points-player{display:flex;align-items:center;gap:clamp(6px,.9cqh,10px)}.game-match-result-modal__points-name{font-size:clamp(11px,1.3cqh,15px);font-weight:600;color:#fff;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-match-result-modal__points-value{font-size:clamp(12px,1.7cqh,20px);font-weight:700;color:#60a5fa;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2);letter-spacing:clamp(.1px,.08cqw,.5px);text-align:right;justify-self:end;padding-right:clamp(4px,.7cqh,8px);display:flex;align-items:flex-end;justify-content:flex-end;gap:clamp(2px,.3cqh,4px)}.game-match-result-modal__points-unit{font-size:.6em;vertical-align:baseline}.game-match-result-modal__cpu-indicator{font-size:.5em;font-weight:700;color:#94a3b8;background:#94a3b833;padding:clamp(2px,.3cqh,4px) clamp(4px,.6cqh,6px);border-radius:clamp(3px,.5cqh,5px);margin-right:clamp(4px,.6cqh,8px);vertical-align:baseline}.game-match-result-modal__game-results{display:flex;flex-direction:column;gap:var(--result-modal-points-gap);max-height:clamp(260px,60cqh,450px);overflow-y:auto;overflow-x:hidden;padding-right:clamp(3px,.5cqw,6px);scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.game-match-result-modal__game-result{padding:var(--result-modal-game-result-padding);background:#1e293b66;border-radius:clamp(6px,.9cqh,10px);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.15);box-shadow:0 clamp(1px,.2cqh,3px) clamp(4px,.8cqh,8px) #0000001a;transition:all .2s ease}.game-match-result-modal__game-result:hover{background:#1e293b80;border-color:#3b82f640;box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,1cqh,10px) #00000026}.game-match-result-modal__game-result-header{width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--result-modal-game-ranking-gap);padding:var(--result-modal-game-ranking-padding-block) var(--result-modal-game-ranking-padding-inline);background:none;border:none;border-bottom:clamp(1px,.2cqh,2px) solid rgba(59,130,246,.2);color:#e2e8f0;cursor:pointer;text-align:left;transition:background-color .2s ease;margin-bottom:0}.game-match-result-modal__game-header-content{display:flex;flex-direction:column;gap:clamp(4px,.6cqh,6px);flex:1}.game-match-result-modal__game-result-header:hover{background-color:#3b82f614}.game-match-result-modal__expand-icon{color:#64748b;font-size:calc(.7rem * var(--ui-font-scale));margin-left:auto;transition:transform .2s ease;opacity:.7}.game-match-result-modal__game-number{font-size:calc(16px * var(--ui-font-scale));font-weight:600;color:#94a3b8;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2);letter-spacing:clamp(.05px,.05cqw,.3px)}.game-match-result-modal__game-time-range,.game-match-result-modal__game-date{font-size:calc(12px * var(--ui-font-scale));color:#64748b;font-weight:400;opacity:.9}.game-match-result-modal__game-rankings{display:flex;flex-direction:column;gap:var(--result-modal-game-ranking-gap);padding:var(--result-modal-game-ranking-padding-block) var(--result-modal-game-ranking-padding-inline);background:#0f172a33;border-top:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.08)}.game-match-result-modal__game-ranking{display:flex;align-items:center;flex-wrap:var(--result-modal-game-ranking-flex-wrap);gap:var(--result-modal-game-ranking-gap);padding:var(--result-modal-game-ranking-padding-block) var(--result-modal-game-ranking-padding-inline);background:#33415559;border-radius:clamp(5px,.8cqh,8px);font-size:calc(14px * var(--ui-font-scale));border:clamp(1px,.15cqh,2px) solid transparent;transition:all .2s ease}.game-match-result-modal__game-ranking:hover{background:#33415580;border-color:#3b82f626}.game-match-result-modal__game-ranking--current{background:#c4b5fd33;border:clamp(1px,.15cqh,2px) solid rgba(196,181,253,.4);box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,.9cqh,10px) #c4b5fd33}.game-match-result-modal__game-rank{font-weight:600;color:#94a3b8;min-width:clamp(36px,6cqw,50px);text-align:center;font-size:calc(14px * var(--ui-font-scale));text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-match-result-modal__game-player-name{flex:1;color:#cbd5e1;font-weight:500;text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2);font-size:calc(14px * var(--ui-font-scale))}.game-match-result-modal__game-rank-name{color:#64748b;min-width:clamp(60px,10cqw,90px);text-align:center;font-weight:400;font-size:calc(13px * var(--ui-font-scale))}.game-match-result-modal__game-points{font-weight:600;color:#a78bfa;min-width:clamp(44px,8cqw,70px);text-align:right;font-size:calc(14px * var(--ui-font-scale));text-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) rgba(0,0,0,.2)}.game-match-result-modal__close-button{min-width:clamp(140px,20cqw,200px);padding:var(--result-modal-close-padding-block) calc(var(--result-modal-close-padding-inline) * 1.1);font-size:var(--result-modal-close-font-size);font-weight:600;letter-spacing:clamp(.1px,.08cqw,.5px);box-shadow:0 clamp(3px,.5cqh,6px) clamp(10px,1.6cqh,16px) #0003;transition:all .3s ease;white-space:nowrap}.game-match-result-modal__actions{display:flex;justify-content:center;padding-top:var(--space-sm, clamp(6px, 1cqh, 10px))}.game-match-result-modal__close-button:hover{transform:translateY(clamp(-2px,-.3cqh,-4px));box-shadow:0 clamp(4px,.7cqh,8px) clamp(12px,2cqh,20px) #0000004d}.game-match-result-modal__content::-webkit-scrollbar,.game-match-result-modal__game-results::-webkit-scrollbar{width:clamp(6px,.9cqw,10px)}.game-match-result-modal__content::-webkit-scrollbar-track,.game-match-result-modal__game-results::-webkit-scrollbar-track{background:#33415566;border-radius:clamp(3px,.5cqh,6px)}.game-match-result-modal__content::-webkit-scrollbar-thumb,.game-match-result-modal__game-results::-webkit-scrollbar-thumb{background:#94a3b899;border-radius:clamp(3px,.5cqh,6px);border:clamp(1px,.2cqh,2px) solid rgba(51,65,85,.4)}.game-match-result-modal__content::-webkit-scrollbar-thumb:hover,.game-match-result-modal__game-results::-webkit-scrollbar-thumb:hover{background:#94a3b8cc}.game-match-result-modal__error{padding:clamp(16px,2.6cqh,32px);text-align:center;color:#e2e8f0}.game-match-result-modal__error p{margin:clamp(6px,1cqh,10px) 0;font-size:calc(.95rem * var(--ui-font-scale))}@media (max-width: 720px){.game-match-result-modal__content{padding:var(--space-sm, clamp(6px, 1cqh, 10px));max-height:min(80vh,calc(100vh - 50px))}.game-match-result-modal__title{font-size:clamp(14px,2.8cqh,30px)}.game-match-result-modal__header-row{flex-direction:column;gap:var(--space-sm, clamp(6px, 1cqh, 10px));align-items:center;margin-top:0;margin-left:0;margin-right:0;padding-left:0;padding-right:0}.game-match-result-modal__close-button{margin-left:0;width:100%;font-size:clamp(14px,2cqh,18px);padding:clamp(10px,1.4cqh,14px) clamp(16px,2.4cqh,20px)}.game-match-result-modal__winner{flex-direction:column;gap:var(--space-xs, clamp(4px, .8cqh, 8px));text-align:center}.game-match-result-modal__time-item{flex-direction:column;gap:var(--space-2xs, clamp(3px, .6cqh, 6px))}.game-match-result-modal__points-ranking{padding:clamp(8px,1.2cqh,14px);gap:clamp(4px,.8cqh,10px)}.game-match-result-modal__points-item{gap:var(--space-xs, clamp(4px, .8cqh, 10px));padding:clamp(5px,.8cqh,8px) clamp(6px,1cqh,10px);min-height:clamp(28px,3.6cqh,48px)}.game-match-result-modal__points-rank{font-size:clamp(16px,2.4cqh,32px)}.game-match-result-modal__points-name{font-size:clamp(10px,1.3cqh,15px)}.game-match-result-modal__points-value{font-size:clamp(12px,1.6cqh,20px);padding-right:clamp(4px,.8cqh,10px)}.game-match-result-modal__game-results{max-height:min(50vh,calc(100vh - 300px))}.game-match-result-modal__game-result-header{flex-direction:column;align-items:flex-start}.game-match-result-modal__game-ranking{flex-wrap:wrap}.game-match-result-modal__game-rank-name,.game-match-result-modal__game-points{min-width:auto}}@media (max-height: 640px){.game-match-result-modal__content{max-height:min(90vh,calc(100vh - 15px));padding:clamp(4px,.6cqh,8px)}.game-match-result-modal__title{font-size:clamp(12px,2.4cqh,26px)}.game-match-result-modal__points-rank{font-size:clamp(14px,2.2cqh,28px)}.game-match-result-modal__points-name{font-size:clamp(9px,1.2cqh,13px)}.game-match-result-modal__points-value{font-size:clamp(10px,1.4cqh,18px)}.game-match-result-modal__points-item{min-height:clamp(26px,3.2cqh,46px);padding:clamp(3px,.5cqh,6px) clamp(5px,.8cqh,8px)}.game-match-result-modal__game-results{max-height:min(45vh,calc(100vh - 280px))}}@media (max-width: 480px){.game-match-result-modal__content{max-height:min(95vh,calc(100vh - 20px));padding:clamp(4px,.6cqh,8px)}.game-match-result-modal__title{font-size:clamp(14px,2.5cqh,28px)}.game-match-result-modal__points-ranking{padding:clamp(6px,1cqh,12px);gap:clamp(3px,.6cqh,8px)}.game-match-result-modal__points-item{padding:clamp(4px,.6cqh,8px) clamp(6px,1cqh,10px);min-height:clamp(32px,4cqh,56px)}.game-match-result-modal__points-rank{font-size:clamp(18px,2.8cqh,36px)}.game-match-result-modal__points-name{font-size:clamp(11px,1.4cqh,16px)}.game-match-result-modal__points-value{font-size:clamp(12px,1.8cqh,20px)}}.game-match-progress{padding:var(--match-progress-padding);background-color:var(--match-progress-panel-bg);border-radius:var(--match-progress-radius);border:clamp(1px,.15cqh,2px) solid var(--match-progress-border-color)}.game-match-progress__header{display:flex;flex-direction:column;gap:var(--match-progress-header-gap);margin-bottom:var(--match-progress-header-margin-bottom);padding-bottom:var(--match-progress-header-padding-bottom);border-bottom:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.2)}.game-match-progress__header-top{display:flex;justify-content:space-between;align-items:center}.game-match-progress__header h3{margin:0;color:#fff;font-size:var(--match-progress-title-size);font-weight:600}.game-match-progress__game-count{color:#94a3b8;font-size:var(--match-progress-subtitle-size);font-weight:500}.game-match-progress__start-time{color:#64748b;font-size:var(--match-progress-meta-size);font-weight:400}.game-match-progress__content{display:flex;flex-direction:column;gap:var(--match-progress-content-gap)}.game-match-progress__points h4{margin:0 0 var(--match-progress-section-title-margin-end) 0;color:#e2e8f0;font-size:var(--match-progress-section-title-size);font-weight:600}.game-match-progress__points-list{display:flex;flex-direction:column;gap:var(--match-progress-list-gap)}.game-match-progress__points-item{display:flex;align-items:center;flex-wrap:var(--match-progress-points-item-flex-wrap);gap:var(--match-progress-card-gap);padding:var(--match-progress-card-padding);background-color:#0f172a80;border-radius:var(--match-progress-card-radius);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.1);transition:all .2s ease}.game-match-progress__points-item:hover{background-color:#0f172ab3;border-color:#3b82f64d}.game-match-progress__points-item--current{background-color:#3b82f626;border-color:#3b82f666;box-shadow:0 0 clamp(6px,1cqh,10px) #3b82f633}.game-match-progress__points-rank{min-width:var(--match-progress-rank-min-inline);color:#fbbf24;font-weight:600;font-size:var(--match-progress-subtitle-size);display:flex;align-items:center;gap:var(--space-2xs)}.game-match-progress__rank-change{font-size:var(--match-progress-tag-font-size);font-weight:600;padding:var(--match-progress-tag-padding-block) var(--match-progress-tag-padding-inline);border-radius:var(--match-progress-tag-radius);display:inline-flex;align-items:center;gap:calc(var(--space-2xs) / 2)}.game-match-progress__rank-change--up{color:#10b981;background-color:#10b9811a}.game-match-progress__rank-change--down{color:#ef4444;background-color:#ef44441a}.game-match-progress__rank-change--same{color:#94a3b8;background-color:#94a3b81a}.game-match-progress__points-info{flex:1;display:flex;flex-direction:column;gap:var(--space-2xs)}.game-match-progress__points-name{color:#e2e8f0;font-size:var(--match-progress-subtitle-size);display:flex;align-items:center;gap:var(--space-xs)}.game-match-progress__you-badge{background-color:#3b82f633;color:#60a5fa;font-size:var(--match-progress-tag-font-size);font-weight:600;padding:var(--match-progress-tag-padding-block) var(--match-progress-tag-padding-inline);border-radius:var(--match-progress-tag-radius);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.3)}.game-match-progress__points-value{color:#94a3b8;font-size:var(--match-progress-meta-size);font-weight:500}.game-match-progress__point-changes{display:flex;flex-wrap:wrap;gap:var(--match-progress-point-change-gap);margin-top:var(--match-progress-point-change-gap)}.game-match-progress__point-change{font-size:var(--match-progress-tag-font-size);font-weight:600;padding:var(--match-progress-point-change-padding-block) var(--match-progress-point-change-padding-inline);border-radius:var(--match-progress-tag-radius);display:inline-block}.game-match-progress__point-change--positive{color:#10b981;background-color:#10b9811a}.game-match-progress__point-change--negative{color:#ef4444;background-color:#ef44441a}.game-match-progress__point-change--zero{color:#94a3b8;background-color:#94a3b81a}.game-match-progress__points-previous-rank{color:#64748b;font-size:var(--match-progress-caption-size);margin-left:var(--match-progress-previous-rank-margin-left);margin-top:var(--match-progress-previous-rank-margin-top);width:var(--match-progress-previous-rank-width)}.game-match-progress__game-results{margin-top:var(--match-progress-results-margin-top)}.game-match-progress__game-results h4{margin:0 0 var(--match-progress-section-title-margin-end) 0;color:#e2e8f0;font-size:var(--match-progress-section-title-size);font-weight:600}.game-match-progress__game-results-list{display:flex;flex-direction:column;gap:var(--match-progress-result-gap)}.game-match-progress__game-result{background-color:#0f172a80;border-radius:var(--match-progress-card-radius);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.1);overflow:hidden;transition:all .2s ease}.game-match-progress__game-result--current{border-color:#3b82f666;box-shadow:0 0 clamp(6px,1cqh,10px) #3b82f633}.game-match-progress__game-result-header{width:100%;display:flex;align-items:center;justify-content:space-between;flex-wrap:var(--match-progress-game-result-header-flex-wrap);gap:var(--match-progress-result-header-gap);padding:var(--match-progress-card-padding);background:none;border:none;color:#e2e8f0;cursor:pointer;text-align:left;transition:background-color .2s ease}.game-match-progress__game-result-header:hover{background-color:#3b82f61a}.game-match-progress__game-result-header:not(button){cursor:default}.game-match-progress__game-result-header:not(button):hover{background-color:transparent}.game-match-progress__game-number{font-weight:600;font-size:var(--match-progress-subtitle-size);color:#fff}.game-match-progress__current-badge{background-color:#3b82f633;color:#60a5fa;font-size:var(--match-progress-tag-font-size);font-weight:600;padding:var(--match-progress-tag-padding-block) var(--match-progress-tag-padding-inline);border-radius:var(--match-progress-tag-radius);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.3)}.game-match-progress__game-date{color:#94a3b8;font-size:var(--match-progress-meta-size);margin-left:var(--match-progress-game-date-margin-left);width:var(--match-progress-game-date-width)}.game-match-progress__expand-icon{color:#94a3b8;font-size:var(--match-progress-caption-size);margin-left:var(--space-xs);transition:transform .2s ease}.game-match-progress__game-rankings{padding:var(--match-progress-result-padding);background-color:#0f172a4d;border-top:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.1);display:flex;flex-direction:column;gap:var(--match-progress-result-gap)}.game-match-progress__game-ranking{display:flex;align-items:center;flex-wrap:var(--match-progress-game-ranking-flex-wrap);gap:var(--match-progress-ranking-gap);padding:var(--match-progress-ranking-padding);background-color:#0f172a4d;border-radius:var(--match-progress-tag-radius);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.05);transition:all .2s ease}.game-match-progress__game-ranking:hover{background-color:#0f172a80}.game-match-progress__game-ranking--current{background-color:#3b82f61a;border-color:#3b82f64d}.game-match-progress__game-rank{min-width:var(--match-progress-rank-min-inline);color:#fbbf24;font-weight:600;font-size:var(--match-progress-meta-size)}.game-match-progress__game-player-name{flex:1;color:#e2e8f0;font-size:var(--match-progress-meta-size);display:flex;align-items:center;gap:var(--space-xs)}.game-match-progress__you-badge-small{background-color:#3b82f633;color:#60a5fa;font-size:var(--match-progress-caption-size);font-weight:600;padding:calc(var(--match-progress-tag-padding-block) * .8) calc(var(--match-progress-tag-padding-inline) * .75);border-radius:var(--match-progress-tag-radius);border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.3)}.game-match-progress__game-rank-name{color:#94a3b8;font-size:var(--match-progress-caption-size);min-width:var(--match-progress-ranking-min-inline);text-align:var(--match-progress-ranking-name-align)}.game-match-progress__game-points{color:#94a3b8;font-size:var(--match-progress-caption-size);font-weight:500;min-width:var(--match-progress-ranking-point-min-inline);text-align:var(--match-progress-ranking-point-align)}.game-match-progress__game-progress-info{color:#94a3b8;font-size:var(--match-progress-caption-size);margin-left:auto;margin-right:var(--space-xs)}.game-match-progress__game-section-title{color:#e2e8f0;font-size:var(--match-progress-caption-size);font-weight:600;margin-top:var(--match-progress-section-title-margin-start);margin-bottom:var(--match-progress-section-title-margin-end);padding:var(--match-progress-section-title-padding-block) 0;border-bottom:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.2)}.game-match-progress__game-section-divider{height:clamp(1px,.15cqh,2px);background-color:#3b82f61a;margin:var(--match-progress-divider-margin-block) 0}.game-match-progress__game-status{color:#10b981;font-size:var(--match-progress-tag-font-size);font-weight:600;padding:var(--match-progress-status-padding-block) var(--match-progress-status-padding-inline);border-radius:var(--match-progress-status-radius);background-color:#10b9811a;border:clamp(1px,.15cqh,2px) solid rgba(16,185,129,.2)}.game-match-progress__game-hand-count{color:#94a3b8;font-size:var(--match-progress-caption-size);font-weight:400;margin-left:auto}.game-match-progress__game-status-message{padding:var(--match-progress-result-padding);text-align:center;color:#94a3b8;font-size:var(--match-progress-meta-size);font-style:italic}.game-page{height:100%;max-height:none;min-height:0;width:100%;max-width:100vw;min-width:var(--game-page-min-inline);background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box;transition:background .3s ease;position:relative;flex:1 1 auto}body.revolution .game-page{background:#4a1f1f}.game-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;gap:var(--game-state-gap)}.loading-spinner{width:clamp(40px,calc(50px * var(--size-scale-base, 1)),60px);height:clamp(40px,calc(50px * var(--size-scale-base, 1)),60px);border:calc(4px * var(--border-scale-base, 1)) solid #334155;border-top:calc(4px * var(--border-scale-base, 1)) solid #60a5fa;border-radius:50%;animation:spin 1s linear infinite;transition:width .3s ease,height .3s ease}.game-loading p{font-size:var(--game-state-text-size);color:#e2e8f0;transition:font-size .3s ease}.game-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;gap:var(--game-state-gap);padding:var(--game-state-padding)}.error-title{font-size:var(--game-state-title-size);font-weight:600;color:#fca5a5;margin:0;transition:font-size .3s ease}.game-error p{font-size:var(--game-state-text-size);color:#e2e8f0;text-align:center;max-width:var(--game-state-message-max);margin:0;transition:font-size .3s ease,max-width .3s ease}.error-actions{display:flex;gap:calc(12px * var(--spacing-scale-base, 1));margin-top:var(--game-state-gap)}.retry-button{background:#3b82f6;color:#fff;border:none;padding:var(--game-state-button-padding-block) var(--game-state-button-padding-inline);border-radius:var(--game-state-button-radius);cursor:pointer;font-size:var(--game-state-button-font-size);font-weight:500;transition:background .2s ease,padding .3s ease,font-size .3s ease;min-height:var(--game-state-button-min-height)}.retry-button:hover{background:#2563eb}.back-button{background:#6b7280;color:#fff;border:none;padding:var(--game-state-button-padding-block) var(--game-state-button-padding-inline);border-radius:var(--game-state-button-radius);cursor:pointer;font-size:var(--game-state-button-font-size);font-weight:500;transition:background .2s ease,padding .3s ease,font-size .3s ease;min-height:var(--game-state-button-min-height)}.back-button:hover{background:#4b5563}.game-ended{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;gap:var(--game-state-gap);padding:var(--game-state-padding)}.game-ended-title{font-size:var(--game-state-title-size);font-weight:600;color:#c4b5fd;margin:0;transition:font-size .3s ease}.game-ended-message{font-size:var(--game-state-text-size);color:#e2e8f0;text-align:center;max-width:var(--game-state-message-max);margin:0;transition:font-size .3s ease,max-width .3s ease}.game-ended-countdown{font-size:var(--game-state-subtext-size);color:#94a3b8;text-align:center;margin-top:calc(10px * var(--spacing-scale-base, 1));transition:font-size .3s ease}.game-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;gap:var(--game-state-gap);padding:var(--game-state-padding)}.game-not-found p{font-size:var(--game-state-text-size);color:#e2e8f0;text-align:center;transition:font-size .3s ease}.card{width:var(--card-base-width, clamp(42px, 6.5cqw, 70px));height:var(--card-base-height, clamp(60px, 9.1cqw, 98px));container-type:size;container-name:card;--card-rank-font-size: clamp(11px, 13.5cqh, 26px);--card-suit-font-size: clamp(8px, 9cqh, 18px);--card-corner-font-size: clamp(9px, 11cqh, 22px);--card-suit-large-font-size: clamp(18px, 40cqh, 48px);--card-count-font-size: clamp(10px, 2cqh, 22px);border-radius:var(--card-border-radius-large);box-shadow:0 var(--card-shadow-y) var(--card-shadow-blur) var(--card-shadow-medium);cursor:pointer;transition:all .2s ease,width .3s ease,height .3s ease;position:relative;background:#fff;opacity:1;-webkit-user-select:none;user-select:none;overflow:visible}.card__front,.card__back{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:var(--card-border-radius-large);display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--card-padding);box-sizing:border-box;overflow:hidden}.card__front.card-front-pattern{border:var(--card-border-width) solid var(--card-border-color);background:#fff;opacity:1;box-shadow:none}.card__side-column{display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.card__side-column--left{align-self:flex-start}.card__side-column--right{align-self:flex-end}.card__side-column:not(.card__side-column--joker){position:absolute;width:auto;height:auto;z-index:1}.card__side-column--left:not(.card__side-column--joker){top:var(--card-corner-inset-block);left:var(--card-corner-inset-inline)}.card__side-column--right:not(.card__side-column--joker){bottom:var(--card-corner-inset-block);right:var(--card-corner-inset-inline)}.card__side-column--joker{align-items:center;justify-content:center}.card__side-column--joker.card__side-column--right{transform:rotate(180deg)}.card-rank-pattern--joker{writing-mode:vertical-rl;text-orientation:upright;white-space:normal;font-size:var(--card-joker-font-size)!important;font-weight:700;line-height:.7;letter-spacing:var(--card-joker-letter-spacing);color:#1f2937}.card--small .card-rank-pattern--joker,.card--hand .card-rank-pattern--joker,.card--play .card-rank-pattern--joker{font-size:calc(10px * var(--ui-font-scale))!important}.card__back.card-back-pattern{background:linear-gradient(135deg,#1e293b,#334155);display:flex;align-items:center;justify-content:center;border:var(--card-border-width) solid rgba(248,250,252,.45);box-shadow:inset 0 0 0 clamp(1px,.2cqh,2px) #0f172a99}.play-history-timeline__card.card--face-down .card__back.card-back-pattern{background:linear-gradient(135deg,#1e293b,#334155)}.card__back.card-back-pattern:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.1) 0px,rgba(255,255,255,.1) 2px,transparent 2px,transparent 4px);border-radius:var(--card-border-radius-large)}.card__count{position:relative;z-index:1;color:#fff;font-size:var(--card-count-font-size);font-weight:700}.card__corner{display:flex;flex-direction:column;align-items:center;gap:var(--card-corner-gap);flex-shrink:0;z-index:1}.card__corner--top-left{align-self:flex-start}.card__corner--bottom-right{align-self:flex-end;transform:rotate(180deg)}.card-corner-pattern{font-size:var(--card-corner-font-size);font-weight:700}.card-rank-pattern{font-size:var(--card-rank-font-size);font-weight:700;line-height:1;color:#1f2937;display:block;white-space:nowrap}.card-suit-pattern{font-size:var(--card-suit-font-size);line-height:1;display:block}.card-suit-pattern--red{color:#dc2626}.card-suit-pattern--black{color:#1f2937}.card__center{display:flex;align-items:center;justify-content:center;flex:1;overflow:hidden;min-height:0;position:relative;z-index:0}.card-suit-large-pattern{font-size:var(--card-suit-large-font-size);line-height:1;display:block;text-align:center}.card-suit-large-pattern--red{color:#dc2626}.card-suit-large-pattern--black{color:#1f2937}.card__joker-symbol{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.card__joker-symbol-svg{width:100%;height:100%;max-width:clamp(20px,2.6cqh,28px);max-height:clamp(20px,2.6cqh,28px);color:#dc2626}.card--small .card__joker-symbol-svg{max-width:clamp(14px,2cqh,20px);max-height:clamp(14px,2cqh,20px)}.card--hand .card__joker-symbol-svg{max-width:clamp(18px,2.4cqh,24px);max-height:clamp(18px,2.4cqh,24px)}.card--playable:hover{transform:translateY(calc(var(--card-shadow-y) * -1));box-shadow:0 calc(var(--card-shadow-y) * 2) calc(var(--card-shadow-blur) * 2) #00000040}.card--selected{transform:translateY(calc(var(--card-shadow-y) * -2));box-shadow:0 0 0 var(--card-shadow-y) #3b82f6}.card--disabled{opacity:1;cursor:not-allowed}.card--disabled:hover{transform:none;box-shadow:0 2px 8px var(--card-shadow-medium)}.card--mini{width:var(--card-mini-width, clamp(20px, 3.2cqw, 36px));height:var(--card-mini-height, clamp(28px, 4.5cqw, 50px));--card-mini-text-size: clamp(10px, 42cqh, 22px)}.card--mini .card__front,.card--mini .card__back{padding:0;justify-content:center;align-items:center}.card--mini .card-simple-pattern{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:clamp(1px,.5cqh,4px);font-weight:700;line-height:1;font-size:var(--card-mini-text-size)}.card--mini .card-simple-rank{font-size:var(--card-mini-text-size);color:#1f2937}.card--mini .card-simple-suit{font-size:var(--card-mini-text-size)}.card-simple-pattern--red .card-simple-suit{color:#dc2626}.card-simple-pattern--black .card-simple-suit{color:#1f2937}.card--mini .card__corner,.card--mini .card-suit-large-pattern{display:none}.card--small{width:var(--card-small-width, clamp(34px, 5.2cqw, 58px));height:var(--card-small-height, clamp(48px, 7.3cqw, 82px))}.card--hand{width:var(--card-hand-width);height:var(--card-hand-height)}.card--play{width:var(--played-cards-card-base-width, clamp(70px, 10cqw, 120px));height:var(--played-cards-card-base-height, clamp(98px, 14cqw, 168px))}.card--play .card__joker-symbol-svg{max-width:clamp(28px,4cqh,40px);max-height:clamp(28px,4cqh,40px)}.card--display{cursor:default;opacity:1;pointer-events:none}.card--display:hover{transform:none!important;box-shadow:0 2px 8px var(--card-shadow-medium)!important}.hand{padding:0;min-height:var(--hand-card-min-height);height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;color:#1e293b;overflow:visible;background:transparent;border-radius:0;position:relative;width:100%;margin-top:0;transition:min-height .3s ease}.hand__declared-ranks-bar{width:100%;padding:var(--hand-declared-bar-padding-block) var(--hand-declared-bar-padding-inline);background:#1e293b;border-radius:var(--hand-declared-bar-radius);margin-bottom:var(--hand-declared-bar-margin-bottom);border:clamp(1px,.125cqh,2px) solid #334155}.hand__declared-ranks-bar__face-choice{display:flex;gap:var(--hand-face-button-gap);margin-bottom:clamp(6px,.8cqh,10px);padding-bottom:clamp(6px,.8cqh,10px);border-bottom:clamp(1px,.125cqh,2px) solid #334155}.hand__declared-ranks-bar__face-button{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--hand-face-button-gap);background:#334155;border:calc(1px * var(--border-scale-base, 1)) solid #475569;border-radius:calc(4px * var(--radius-scale-base, 1));color:#e2e8f0;font-size:var(--hand-face-button-font-size);font-weight:600;padding:var(--hand-face-button-padding-block) var(--hand-face-button-padding-inline);cursor:pointer;transition:all .2s ease,padding .3s ease,font-size .3s ease}.hand__declared-ranks-bar__face-button:hover:not(:disabled){background:#475569;border-color:#64748b;transform:translateY(calc(-1px * var(--size-scale-base, 1)))}.hand__declared-ranks-bar__face-button:disabled{opacity:.5;cursor:not-allowed}.hand__declared-ranks-bar__face-button--active{background:#3b82f6;border-color:#3b82f6;color:#fff}.hand__declared-ranks-bar__face-button--active:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.hand__declared-ranks-bar__face-icon{font-size:clamp(14px,1.6cqh,18px);line-height:1}.hand__declared-ranks-bar__title{font-size:var(--hand-face-title-size);font-weight:600;color:#e2e8f0;margin-bottom:clamp(4px,.6cqh,8px)}.hand__declared-ranks-bar__items{display:flex;flex-wrap:wrap;gap:clamp(6px,.8cqh,10px);align-items:center}.hand__declared-ranks-bar__item{display:flex;align-items:center;gap:calc(6px * var(--spacing-scale-base, 1))}.hand__declared-ranks-bar__card-info{font-size:clamp(10px,calc(12px * var(--font-scale-base, 1)),14px);font-weight:600;color:#94a3b8;min-width:clamp(20px,calc(24px * var(--size-scale-base, 1)),28px)}.hand__declared-ranks-bar__rank-button{background:#334155;border:calc(1px * var(--border-scale-base, 1)) solid #475569;border-radius:calc(4px * var(--radius-scale-base, 1));color:#e2e8f0;font-size:var(--hand-rank-button-font-size);font-weight:600;padding:var(--hand-rank-button-padding-block) var(--hand-rank-button-padding-inline);min-width:var(--hand-rank-button-min-inline);cursor:pointer;transition:all .2s ease,padding .3s ease,font-size .3s ease;white-space:nowrap}.hand__declared-ranks-bar__rank-button:hover{background:#475569;border-color:#64748b;transform:translateY(calc(-1px * var(--size-scale-base, 1)))}.hand__declared-ranks-bar__rank-button--set{background:#3b82f6;border-color:#3b82f6;color:#fff}.hand__declared-ranks-bar__rank-button--set:hover{background:#2563eb;border-color:#2563eb}.hand__cards:not(:hover)::-webkit-scrollbar{opacity:.3;transition:opacity .3s ease}.hand__cards:hover::-webkit-scrollbar{opacity:1}.hand__cards{display:flex;flex-direction:row;align-items:flex-end;justify-content:flex-start;padding:calc(var(--hand-cards-padding-block-start) * .6) var(--hand-cards-padding-inline) 0 var(--hand-cards-padding-inline);overflow-x:auto;overflow-y:visible;min-height:var(--hand-card-min-height);height:100%;margin-top:0;gap:0;scrollbar-width:thin;scrollbar-color:#64748b #1e293b;width:100%;box-sizing:border-box;position:relative;background-color:#67341e00;transition:padding .3s ease,min-height .3s ease,overflow-x .3s ease}.hand__cards--no-scroll{overflow-x:hidden;justify-content:center}@container hand-column (max-width: 520px){.hand__cards{padding-left:0;padding-right:0}.hand__cards--no-scroll{justify-content:center}}.hand__cards--overlapping{gap:0}.hand__cards::-webkit-scrollbar{height:var(--hand-cards-scrollbar-height)}.hand__cards::-webkit-scrollbar-track{background:#1e293b;border-radius:calc(3px * var(--radius-scale-base, 1))}.hand__cards::-webkit-scrollbar-thumb{background:#64748b;border-radius:calc(3px * var(--radius-scale-base, 1))}.hand__cards::-webkit-scrollbar-thumb:hover{background:#94a3b8}.hand__card-wrapper{display:flex;flex-direction:column;align-items:center;position:relative;flex-shrink:0;margin-top:0;margin-left:var( --card-margin-left, 0 );z-index:1;transition:margin-left .2s ease}.hand__card-wrapper--dimmed .hand__card{opacity:1;filter:grayscale(1) brightness(.85) contrast(.9)}.hand__card-controls{position:absolute;top:calc(-18px * var(--spacing-scale-base, 1));left:50%;transform:translate(-50%);display:flex;gap:calc(4px * var(--spacing-scale-sm, 1));z-index:20;align-items:center}.hand__face-toggle{background:#334155;border:calc(1px * var(--border-scale-base, 1)) solid #475569;border-radius:calc(4px * var(--radius-scale-base, 1));color:#e2e8f0;font-size:var(--hand-face-toggle-font-size);width:var(--hand-face-toggle-size);height:var(--hand-face-toggle-size);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease,width .3s ease,height .3s ease;padding:0;line-height:1}.hand__face-toggle:hover:not(:disabled){background:#475569;border-color:#64748b;transform:scale(1.1)}.hand__face-toggle:disabled{opacity:.5;cursor:not-allowed}.hand__face-toggle--face-up{background:#3b82f6;border-color:#3b82f6;color:#fff}.hand__face-toggle--face-up:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.hand__face-toggle--face-down{background:#64748b;border-color:#64748b}.hand__face-toggle--face-down:hover:not(:disabled){background:#475569;border-color:#64748b}.hand__declared-rank-toggle{background:#334155;border:calc(1px * var(--border-scale-base, 1)) solid #475569;border-radius:calc(4px * var(--radius-scale-base, 1));color:#e2e8f0;font-size:var(--hand-declared-toggle-font-size);font-weight:600;padding:var(--hand-declared-toggle-padding-block) var(--hand-declared-toggle-padding-inline);min-width:var(--hand-declared-toggle-min-inline);cursor:pointer;transition:all .2s ease,padding .3s ease,font-size .3s ease;white-space:nowrap}.hand__declared-rank-toggle:hover{background:#475569;border-color:#64748b;transform:scale(1.05)}.hand__declared-rank-toggle--set{background:#3b82f6;border-color:#3b82f6;color:#fff}.hand__declared-rank-toggle--set:hover{background:#2563eb;border-color:#2563eb}.hand__declared-rank-label{position:absolute;top:calc(-20px * var(--spacing-scale-base, 1));left:50%;transform:translate(-50%);background:#3b82f6;color:#fff;padding:calc(2px * var(--spacing-scale-sm, 1)) calc(6px * var(--spacing-scale-base, 1));border-radius:calc(4px * var(--radius-scale-base, 1));font-size:clamp(9px,calc(11px * var(--font-scale-base, 1)),13px);font-weight:600;white-space:nowrap;z-index:10;box-shadow:0 calc(2px * var(--size-scale-base, 1)) calc(4px * var(--size-scale-base, 1)) #0003;pointer-events:none}.hand__revealed-label{position:absolute;bottom:clamp(4px,.8cqh,10px);left:50%;transform:translate(-50%);background:#10b981f2;color:#fff;height:clamp(12px,calc(var(--card-hand-height) * .2),36px);min-height:clamp(12px,calc(var(--card-hand-height) * .2),36px);padding:0 clamp(6px,1.6cqw,14px);border-radius:clamp(3px,.7cqh,7px);font-size:clamp(10px,calc(var(--card-hand-height) * .09),16px);font-weight:600;white-space:nowrap;z-index:100;box-shadow:0 calc(2px * var(--size-scale-base, 1)) calc(6px * var(--size-scale-base, 1)) #0006;pointer-events:none;transition:transform .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;gap:clamp(3px,.7cqh,7px);border:clamp(1px,.18cqh,2px) solid rgba(255,255,255,.3);max-width:calc(100% - clamp(8px,1.5cqw,18px));box-sizing:border-box}.hand__revealed-label-icon{width:1em;height:1em;flex:0 0 auto;display:block}.hand__card-wrapper:hover .hand__revealed-label{transform:translate(-50%) translateY(-5px)}.hand__card-wrapper:has(.hand__card.card--selected) .hand__revealed-label{transform:translate(-50%) translateY(-10px)}@media (max-width: 1200px),(max-height: 520px){.hand__revealed-label span{display:none}.hand__revealed-label{padding:clamp(2px,.6cqh,6px);gap:0}}.hand__card{transition:all .2s ease;position:relative;z-index:1;transform:translateY(0);flex-shrink:0;width:var(--card-hand-width);max-width:var(--card-hand-width);height:var(--card-hand-height);margin-top:0}.hand__card-wrapper:hover .hand__card{transform:translateY(var(--hand-card-hover-offset))}.hand__card-wrapper .hand__card.card--selected{transform:translateY(var(--hand-card-selected-offset));box-shadow:0 0 0 2px #3b82f6,0 8px 24px #3b82f680}.hand__card-wrapper:hover .hand__card.card--selected{transform:translateY(var(--hand-card-selected-offset))}.player-info-panel-wrapper{position:fixed;z-index:1000;pointer-events:none}.player-info-panel{position:relative;background:#1e293bf2;border:var(--border-thin, clamp(1px, .15cqh, 2px)) solid rgba(255,255,255,.2);border-radius:var(--radius-md, clamp(6px, .9cqh, 10px));padding:var(--space-sm, clamp(6px, .9cqh, 10px)) var(--space-md, clamp(8px, 1.2cqw, 14px));min-width:clamp(120px,18cqw,160px);box-shadow:0 4px 12px #0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;animation:fadeIn .2s ease-out}.player-info-panel__header{border-bottom:var(--border-thin, clamp(1px, .15cqh, 2px)) solid rgba(255,255,255,.1);padding-bottom:var(--space-xs, clamp(4px, .7cqh, 8px));margin-bottom:var(--space-sm, clamp(6px, 1cqh, 10px))}.player-info-panel__name{font-size:calc(12px * var(--ui-font-scale));font-weight:600;color:#f8fafc}.player-info-panel__content{display:flex;flex-direction:column;gap:var(--space-xs, clamp(4px, .7cqh, 8px))}.player-info-panel__item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm, clamp(6px, 1cqh, 10px))}.player-info-panel__label{display:flex;align-items:center;gap:var(--space-2xs, clamp(3px, .5cqh, 6px));font-size:calc(10px * var(--ui-font-scale));color:#94a3b8}.player-info-panel__value{font-size:calc(11px * var(--ui-font-scale));font-weight:600;color:#f8fafc}.player-info-panel__mini-card{display:flex;align-items:center;justify-content:center;flex-shrink:0}.player-info-panel__mini-card-back{position:relative;width:clamp(10px,1.4cqh,14px);height:clamp(14px,2.2cqh,20px);border-radius:var(--radius-sm, clamp(2px, .3cqh, 4px));background:linear-gradient(135deg,#1e293b,#334155);border:var(--border-thin, clamp(1px, .15cqh, 2px)) solid rgba(255,255,255,.1);box-shadow:0 1px 2px #0000001a}.player-info-panel__mini-card-back:before{content:"";position:absolute;top:clamp(1px,.2cqh,2px);left:clamp(1px,.2cqw,2px);right:clamp(1px,.2cqw,2px);bottom:clamp(1px,.2cqh,2px);border-radius:var(--radius-sm, clamp(1px, .2cqh, 2px));background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.15) 0px,rgba(255,255,255,.15) 1px,transparent 1px,transparent 3px)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.game-player-info-modal-wrapper{max-width:min(40vw,600px)!important;width:40vw!important;min-width:400px}.game-player-info-modal{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:1rem}.game-player-info-modal__avatar-section,.game-player-info-modal__name-section{display:flex;justify-content:center;align-items:center;width:100%}.game-player-info-modal__name{margin:0;font-size:1.5rem;font-weight:600;color:#fff;text-align:center;word-break:break-word}.game-player-info-modal__content{display:flex;flex-direction:column;gap:1rem;width:100%}.game-player-info-modal__item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;background:#1e293b80;border:1px solid rgba(255,255,255,.1);border-radius:.5rem}.game-player-info-modal__label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#94a3b8;font-weight:500}.game-player-info-modal__value{font-size:.875rem;font-weight:600;color:#f8fafc}.game-player-info-modal__mini-card{display:flex;align-items:center;justify-content:center;flex-shrink:0}.game-player-info-modal__mini-card-back{position:relative;width:16px;height:22px;border-radius:4px;background:linear-gradient(135deg,#1e293b,#334155);border:1px solid rgba(255,255,255,.1);box-shadow:0 1px 2px #0000001a}.game-player-info-modal__mini-card-back:before{content:"";position:absolute;top:1px;left:1px;right:1px;bottom:1px;border-radius:3px;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.15) 0px,rgba(255,255,255,.15) 1px,transparent 1px,transparent 3px)}.game-player-info-modal__revealed-indicator{font-size:.75rem;line-height:1}.game-player-info-modal__hand-section{display:flex;flex-direction:column;gap:.75rem;width:100%;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.game-player-info-modal__hand-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#f8fafc}.game-player-info-modal__hand-count{font-size:.75rem;font-weight:500;color:#94a3b8}.game-player-info-modal__hand-cards{display:flex;flex-direction:row;flex-wrap:wrap;gap:.4rem;justify-content:flex-start;align-items:flex-start;padding:.75rem;background:#0f172a80;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);min-height:calc(var(--card-mini-height, clamp(22px, 3.5cqw, 50px)) + 4px + 1.5rem + .5rem);height:calc(var(--card-mini-height, clamp(22px, 3.5cqw, 50px)) + 4px + 1.5rem + .5rem);width:100%;max-height:400px;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.game-player-info-modal__hand-card-wrapper{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:2px;border:2px solid rgba(148,163,184,.4);border-radius:6px;background:#94a3b81a;box-sizing:border-box;width:calc(var(--card-mini-width, clamp(16px, 2.5cqw, 36px)) + 4px);height:calc(var(--card-mini-height, clamp(22px, 3.5cqw, 50px)) + 4px);min-width:20px;min-height:26px}.game-player-info-modal__hand-card{flex-shrink:0;display:block;width:var(--card-mini-width, clamp(16px, 2.5cqw, 36px));height:var(--card-mini-height, clamp(22px, 3.5cqw, 50px));min-width:16px;min-height:22px}.game-player-info-modal__hand-cards::-webkit-scrollbar{height:6px}.game-player-info-modal__hand-cards::-webkit-scrollbar-track{background:#1e293b4d;border-radius:3px}.game-player-info-modal__hand-cards::-webkit-scrollbar-thumb{background:#94a3b880;border-radius:3px}.game-player-info-modal__hand-cards::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}.game-player-card{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:minmax(0,1fr);align-items:stretch;align-content:stretch;container-type:size;--player-card-name-size: clamp(12px, 1.7cqh, 22px);--player-card-doubt-size: clamp(11px, 1.4cqh, 20px);--player-card-meta-size: clamp(10px, 1.2cqh, 16px);--player-card-row-gap: clamp(2px, .4cqh, 6px);--player-card-mini-count-size: clamp(10px, 1.2cqh, 16px);padding:var(--player-card-padding, clamp(1px, .2cqh, 3px));background:#ffffff0d;border:var(--border-thin, clamp(1px, .15cqh, 2px)) solid transparent;border-radius:var(--card-border-radius-large, 8px);transition:all .2s ease;position:relative;overflow:hidden;width:100%;box-sizing:border-box;white-space:nowrap;z-index:1;min-height:var(--player-card-min-height, 28px);gap:var(--player-card-gap, var(--space-2xs, clamp(2px, .3cqh, 4px)))}.game-player-card:hover{border-color:#fff6}.game-player-card--me{border-color:#3b82f699;background:#3b82f61a}.game-player-card__row{display:flex;align-items:center;gap:var(--player-card-row-gap, var(--space-xs, clamp(4px, .7cqh, 8px)));white-space:nowrap;overflow:hidden;min-width:0;min-height:0;height:100%}.game-player-card__avatar{display:flex;align-items:center;justify-content:center;overflow:visible;position:relative;z-index:10;flex-shrink:0}.game-player-card__row--first{justify-content:flex-start;overflow:visible}.game-player-card__row--second{justify-content:flex-end}.game-player-card__row--third{grid-column:1 / -1;min-height:0;justify-content:flex-start}.game-player-card__row--meta{display:none;grid-column:1 / -1;justify-content:flex-start;font-size:var(--player-card-meta-size);color:#cbd5f5;gap:clamp(4px,.6cqh,8px)}.game-player-card__meta-item{display:inline-flex;align-items:center;gap:clamp(4px,.5cqh,8px)}.game-player-card__meta-label{color:#94a3b8;font-weight:600}.game-player-card__meta-value{color:#e2e8f0;font-weight:700}.game-player-card__meta-separator{color:#475569}.game-player-name{font-size:var(--player-card-name-size, 10px);font-weight:500;color:#f8fafc;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.game-doubt-tickets{display:flex;align-items:center;gap:var(--space-2xs, clamp(2px, .4cqh, 5px));font-weight:600;font-size:var(--player-card-doubt-size, 11px);color:#fbbf24;line-height:1.1;white-space:nowrap;flex-shrink:0;min-width:0}.game-mini-card-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.game-mini-card-back-pattern{position:relative;width:var(--player-card-mini-width, var(--mini-card-width, clamp(10px, 1.6cqh, 14px)));height:var(--player-card-mini-height, var(--mini-card-height, clamp(14px, 2.4cqh, 20px)));border-radius:var(--card-border-radius-small, clamp(2px, .3cqh, 4px));background:linear-gradient(135deg,#1e293b,#334155);border:var(--border-thin, clamp(1px, .15cqh, 2px)) solid rgba(255,255,255,.1);box-shadow:0 clamp(1px,.2cqh,2px) clamp(2px,.4cqh,4px) #0000001a;display:flex;align-items:center;justify-content:center;overflow:hidden}.game-mini-card-back-pattern:before{content:"";position:absolute;top:clamp(1px,.2cqh,2px);left:clamp(1px,.2cqw,2px);right:clamp(1px,.2cqw,2px);bottom:clamp(1px,.2cqh,2px);border-radius:calc(var(--card-border-radius-small, 2px) - 1px);background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.15) 0px,rgba(255,255,255,.15) 1px,transparent 1px,transparent 3px);opacity:.6}.game-mini-card-count{position:relative;z-index:1;font-size:var(--player-card-mini-count-size, 10px);font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8);line-height:1;white-space:nowrap}@container (min-height: 56px){.game-player-card__row--meta{display:flex}}@container (min-height: 84px) and (min-width: 180px){.game-player-card{grid-template-rows:auto minmax(0,1fr) auto;--player-card-name-size: clamp(14px, 1.9cqh, 26px);--player-card-doubt-size: clamp(12px, 1.6cqh, 22px);--player-card-meta-size: clamp(11px, 1.3cqh, 18px);--player-card-mini-width: clamp(16px, 4cqh, 34px);--player-card-mini-height: clamp(22px, 5.6cqh, 46px);--player-card-mini-count-size: clamp(12px, 1.4cqh, 18px)}.game-player-card__row--first{align-self:start}.game-player-card__row--second{align-self:stretch;justify-content:center}.game-player-card__row--second .game-doubt-tickets{display:none}.game-player-card__row--meta{display:flex;justify-content:space-between;width:100%}.game-player-card__avatar .unified-player-avatar{width:clamp(26px,3.4cqh,40px);height:clamp(26px,3.4cqh,40px);font-size:clamp(11px,1.5cqh,18px)}}.game-player-list{color:#fff;background:#1e293b;border-radius:clamp(6px,.9cqh,10px);padding:var(--player-list-padding);height:100%;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden;box-sizing:border-box}.game-player-list__header{display:flex;justify-content:space-between;align-items:center;border-bottom:clamp(1px,.15cqh,2px) solid rgba(255,255,255,.1);margin-bottom:var(--player-list-header-margin-bottom);flex-shrink:0}.game-player-list__title{font-size:var(--player-list-title-size);font-weight:600;color:#f8fafc;margin:0}.game-player-list__content{display:flex;flex-direction:column;gap:var(--player-list-content-gap);overflow-y:auto;overflow-x:hidden;flex:1 1 0;min-height:0;justify-content:flex-start;align-items:stretch;scrollbar-width:thin;scrollbar-color:rgba(107,114,128,.5) rgba(30,41,59,.3);scroll-behavior:smooth}.game-player-list__content::-webkit-scrollbar{width:var(--player-list-scrollbar-width)}.game-player-list__content::-webkit-scrollbar-track{background:#1e293b4d;border-radius:clamp(2px,.3cqh,4px)}.game-player-list__content::-webkit-scrollbar-thumb{background:#6b728080;border-radius:clamp(2px,.3cqh,4px);transition:background .2s ease}.game-player-list__content::-webkit-scrollbar-thumb:hover{background:#6b7280b3}.game-player-list__content::-webkit-scrollbar-thumb:active{background:#6b7280e6}.game-player-row{display:grid;grid-template-columns:var(--player-list-indicator-column) 1fr;grid-template-areas:"indicator card";align-items:center;min-height:var(--player-list-row-min-height);flex-shrink:0}.game-player-row__indicator{grid-area:indicator;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(2px,.3cqh,4px);min-height:var(--player-list-row-min-height)}.game-player-row__card{grid-area:card;width:100%}.turn-indicator{display:flex;align-items:center;justify-content:center;width:var(--player-list-indicator-size);height:var(--player-list-indicator-size);border-radius:50%;background:#fbbf2433;border:clamp(1px,.15cqh,2px) solid rgba(251,191,36,.5)}.turn-indicator svg{color:#fbbf24}.play-indicator{display:flex;align-items:center;justify-content:center;width:var(--player-list-indicator-size);height:var(--player-list-indicator-size);border-radius:50%;background:#4ade8033;border:clamp(1px,.15cqh,2px) solid rgba(74,222,128,.5)}.play-indicator svg{color:#4ade80}.pass-indicator{display:flex;align-items:center;justify-content:center;width:var(--player-list-indicator-size);height:var(--player-list-indicator-size);border-radius:50%;background:#94a3b833;border:clamp(1px,.15cqh,2px) solid rgba(148,163,184,.5)}.pass-indicator svg{color:#94a3b8}.through-indicator{display:flex;align-items:center;justify-content:center;width:var(--player-list-indicator-size);height:var(--player-list-indicator-size);border-radius:50%;background:#60a5fa33;border:clamp(1px,.15cqh,2px) solid rgba(96,165,250,.5)}.through-indicator svg{color:#60a5fa}.four-stop-indicator{display:flex;align-items:center;justify-content:center;width:var(--player-list-indicator-size);height:var(--player-list-indicator-size);border-radius:50%;background:#f59e0b33;border:clamp(1px,.15cqh,2px) solid rgba(245,158,11,.5)}.four-stop-indicator svg{color:#f59e0b}.doubt-indicator{display:flex;align-items:center;justify-content:center;width:var(--player-list-indicator-size);height:var(--player-list-indicator-size);border-radius:50%;background:#ef444433;border:clamp(1px,.15cqh,2px) solid rgba(239,68,68,.5)}.doubt-indicator svg{color:#ef4444}.play-history-timeline{display:flex;flex-direction:column;gap:0;padding:var(--play-history-padding);background:transparent;border-radius:0;border:none;width:100%;height:100%;min-height:fit-content;max-height:100%;overflow:hidden;box-sizing:border-box}.play-history-timeline__header{display:flex;align-items:center;padding:0;flex-shrink:0;border-bottom:var(--border-thin, clamp(1px, .125cqh, 2px)) solid rgba(255,255,255,.05)}.play-history-timeline__title{font-size:var(--play-history-title-size);font-weight:600;color:var(--play-history-title-color);letter-spacing:var( --play-history-title-letter-spacing, clamp(.08px, .06cqw, .3px) );text-transform:uppercase}.play-history-timeline__container{flex:1 1 auto;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(107,114,128,.4) rgba(30,41,59,.2);-webkit-overflow-scrolling:touch;box-sizing:border-box;padding:var(--play-history-padding)}.play-history-timeline__container::-webkit-scrollbar{width:clamp(4px,.6cqw,8px);height:auto}.play-history-timeline__container::-webkit-scrollbar-track{background:#1e293b33;border-radius:var(--radius-sm, clamp(3px, .4cqh, 5px))}.play-history-timeline__container::-webkit-scrollbar-thumb{background:#6b728066;border-radius:var(--radius-sm, clamp(3px, .4cqh, 5px));transition:background .2s ease}.play-history-timeline__container::-webkit-scrollbar-thumb:hover{background:#6b728099}.play-history-timeline__content{display:flex;flex-direction:column;gap:calc(var(--play-history-gap) * .5);width:100%;min-height:min-content;box-sizing:border-box}.play-history-timeline__item{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--play-history-card-gap);padding-block:calc(var(--play-history-item-padding-block) * .55);padding-inline:calc(var(--play-history-item-padding-inline) * .75);background:var(--play-history-item-background);border-radius:var(--play-history-item-radius);border:var(--border-thin, clamp(1px, .125cqh, 2px)) solid var(--play-history-item-border-color);box-shadow:var(--play-history-item-shadow);transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0;width:100%;min-height:0;box-sizing:border-box;cursor:default;position:relative}.play-history-timeline__item--latest{border-color:var(--play-history-latest-border-color);background:var(--play-history-latest-background);box-shadow:var(--play-history-latest-shadow)}.play-history-timeline__card-wrapper{display:flex;align-items:center;justify-content:center;position:relative;flex:1 1 auto;min-height:0;flex-shrink:1;overflow:visible;gap:var(--play-history-card-gap);flex-wrap:wrap;width:100%}.play-history-timeline__mini-card{transition:transform .2s cubic-bezier(.4,0,.2,1);flex-shrink:0;will-change:transform;position:relative;display:flex;align-items:center;justify-content:center}.play-history-timeline__declared-rank-on-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var( --play-history-label-font, clamp(8px, .9cqh, 10px) );font-weight:700;line-height:1;color:#1f2937;background:#fff;padding:var(--space-2xs, clamp(2px, .25cqh, 4px)) var(--space-xs, clamp(3px, .4cqw, 5px));border-radius:var(--radius-sm, clamp(3px, .4cqh, 5px));z-index:10;white-space:nowrap;display:block;box-shadow:0 var(--card-shadow-y, clamp(1px, .125cqh, 2px)) var(--card-shadow-blur, clamp(2px, .3cqh, 4px)) #0000004d;pointer-events:none}.play-history-timeline__joker-label-on-card{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);font-size:var( --play-history-label-font, clamp(8px, .9cqh, 10px) );font-weight:700;line-height:1;color:#1f2937;background:#fff;padding:var(--space-2xs, clamp(2px, .25cqh, 4px)) var(--space-xs, clamp(3px, .4cqw, 5px));border-radius:var(--radius-sm, clamp(3px, .4cqh, 5px));z-index:11;white-space:nowrap;display:block;box-shadow:0 var(--card-shadow-y, clamp(1px, .125cqh, 2px)) var(--card-shadow-blur, clamp(2px, .3cqh, 4px)) #0000004d;pointer-events:none}.play-history-timeline__declared-rank-on-card--joker{writing-mode:vertical-rl!important;text-orientation:upright!important;white-space:normal!important;font-size:var( --play-history-joker-font, clamp(7px, .8cqh, 9px) )!important;font-weight:700!important;line-height:.85!important;letter-spacing:var( --play-history-joker-letter-spacing, clamp(-4px, -.5cqh, -2px) )!important;padding-block:var( --play-history-joker-padding-block, clamp(1px, .125cqh, 2px) )!important;padding-inline:var( --play-history-joker-padding-inline, clamp(2px, .25cqw, 3px) )!important;display:inline-block!important;transform:translate(-50%,-50%)!important;color:#1f2937!important;text-align:center!important;vertical-align:middle!important;box-sizing:border-box!important;margin:0!important}.play-history-timeline__more-cards{position:absolute;right:var(--player-seat-indicator-offset, clamp(-8px, -1cqw, -12px));top:50%;transform:translateY(-50%);font-size:var( --play-history-more-font, clamp(6px, .7cqh, 8px) );font-weight:600;color:#e2e8f0;background:#000000bf;padding:var(--space-2xs, clamp(1px, .2cqh, 3px)) var(--space-2xs, clamp(2px, .4cqw, 5px));border-radius:var(--radius-sm, clamp(2px, .3cqh, 4px));z-index:10;border:var(--border-thin, clamp(1px, .125cqh, 2px)) solid rgba(255,255,255,.1);white-space:nowrap}.play-history-timeline__info{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--play-history-info-gap);flex:0 0 auto;min-width:0;overflow:hidden;padding-top:0;margin-top:var(--play-history-info-gap)}.play-history-timeline__player-name{font-size:clamp(8px,.9cqh,11px);font-weight:600;color:var(--play-history-player-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.2;letter-spacing:clamp(.05px,.04cqw,.2px);text-align:center;padding:0;box-sizing:border-box}.play-history-timeline__declared-rank{font-size:clamp(6px,.7cqh,8px);color:#fbbf24;font-weight:600;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.2;letter-spacing:clamp(.05px,.04cqw,.2px)}.play-history-timeline__item--pass{opacity:.7}.play-history-timeline__pass-icon{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:100%;min-height:clamp(30px,4cqh,50px);flex-shrink:0;background:var(--play-history-pass-background);border-radius:clamp(4px,.5cqh,6px);border:clamp(1px,.125cqh,2px) dashed var(--play-history-pass-border-color)}.play-history-timeline__pass-text{font-size:clamp(8px,.9cqh,10px);font-weight:600;color:var(--play-history-pass-text-color);text-transform:uppercase;letter-spacing:clamp(.1px,.08cqw,.5px)}.play-history-timeline__arrow{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--play-history-arrow-color);font-size:var(--play-history-arrow-size);font-weight:600;padding-block:var(--play-history-card-gap);width:100%;box-sizing:border-box;line-height:1;transform:rotate(90deg)}.play-history-timeline__chain{display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:calc(14px * var(--ui-font-scale));padding:0 clamp(3px,.5cqw,6px);height:100%;align-self:stretch;box-sizing:border-box;line-height:1;opacity:.7;transition:opacity .2s ease}.play-history-timeline__chain:hover{opacity:1}.play-history-timeline__item--four-stop{border-color:var(--play-history-four-stop-border-color);background:var(--play-history-four-stop-background);position:relative}.play-history-timeline__item--four-stop.play-history-timeline__item--latest{border-color:#fbbf2499;background:#fbbf2426;box-shadow:0 0 0 clamp(1px,.125cqh,2px) #fbbf244d}.play-history-timeline__item--four-stop-target{border-color:var(--play-history-four-stop-target-border-color);background:var(--play-history-four-stop-target-background);box-shadow:0 0 0 clamp(1px,.125cqh,2px) #dc26264d}.play-history-timeline__four-stop-icon{position:absolute;top:clamp(-6px,-.7cqh,-4px);left:clamp(-6px,-.7cqw,-4px);width:clamp(12px,1.8cqh,18px);height:clamp(12px,1.8cqh,18px);display:flex;align-items:center;justify-content:center;background:#dc2626;border-radius:50%;z-index:10;box-shadow:0 clamp(1px,.15cqh,2px) clamp(2px,.3cqh,4px) #0006;border:clamp(1px,.125cqh,2px) solid rgba(255,255,255,.2)}.play-history-timeline__four-stop-icon-svg{width:clamp(8px,1.2cqh,12px);height:clamp(8px,1.2cqh,12px);color:#fff;stroke:#fff}.play-history-timeline__item--four-stop{position:relative}.play-history-timeline__four-stop-badge{display:none}.play-history-timeline__mini-card .card--mini .card-simple-pattern,.play-history-timeline__mini-card .card--mini .card-simple-rank,.play-history-timeline__mini-card .card--mini .card-simple-suit{font-size:var(--card-mini-text-size)}:root[data-aspect=portrait] .play-history-timeline__card-wrapper{height:calc(100% - clamp(12px,1.8cqh,18px));min-height:clamp(18px,2.8cqh,25px)}.rank-declaration-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;display:flex;align-items:center;justify-content:center;pointer-events:none;width:100%;height:100%;padding:clamp(12px,2cqh,24px);box-sizing:border-box}.rank-declaration-panel__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);pointer-events:auto}.rank-declaration-panel__content{position:relative;background:#1e293b;border:2px solid #475569;border-radius:clamp(12px,1.5cqh,16px);padding:clamp(20px,2.5cqh,32px);max-width:min(100%,800px);width:100%;max-height:100%;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d;pointer-events:auto;z-index:1001}.rank-declaration-panel__header{margin-bottom:clamp(10px,1.5cqh,20px);text-align:center}.rank-declaration-panel__mode-tabs{display:flex;gap:clamp(8px,1cqw,12px);margin-bottom:clamp(12px,1.6cqh,16px);justify-content:center}.rank-declaration-panel__mode-tab{background:#334155;border:1px solid #475569;border-radius:clamp(8px,1cqh,12px);color:#e2e8f0;font-size:clamp(13px,1.6cqh,16px);padding:clamp(8px,1cqh,10px) clamp(14px,2cqw,18px);cursor:pointer;transition:all .2s ease}.rank-declaration-panel__mode-tab--active{background:#0ea5e9;border-color:#0ea5e9;color:#0f172a;font-weight:600}.rank-declaration-panel__mode-panel{background:#283548;border:1px solid #475569;border-radius:clamp(8px,1cqh,12px);padding:clamp(12px,1.6cqh,16px);margin-bottom:clamp(16px,2cqh,20px);overflow-y:auto;max-height:clamp(200px,40cqh,500px);flex:1 1 auto;min-height:0;scrollbar-width:thin;scrollbar-color:#64748b #1e293b}.rank-declaration-panel__mode-panel::-webkit-scrollbar{width:8px}.rank-declaration-panel__mode-panel::-webkit-scrollbar-track{background:#1e293b;border-radius:4px}.rank-declaration-panel__mode-panel::-webkit-scrollbar-thumb{background:#64748b;border-radius:4px}.rank-declaration-panel__mode-panel::-webkit-scrollbar-thumb:hover{background:#94a3b8}.rank-declaration-panel__mode-title{font-size:clamp(13px,1.6cqh,16px);color:#cbd5f5;margin-bottom:clamp(8px,1cqh,12px)}.rank-declaration-panel__mode-row{display:flex;align-items:center;gap:clamp(8px,1cqw,12px);margin-bottom:clamp(10px,1.4cqh,14px);justify-content:center}.rank-declaration-panel__mode-card-row{display:flex;align-items:center;justify-content:center;overflow-x:auto;padding-bottom:clamp(4px,.6cqh,8px);padding-left:clamp(22px,2.2cqw,34px);padding-right:clamp(10px,1.2cqw,18px)}.rank-declaration-panel__mode-card{display:flex;align-items:center;margin-left:clamp(-22px,-2.2cqw,-14px)}.rank-declaration-panel__mode-card:first-child{margin-left:0}.rank-declaration-panel__mode-card .card,.rank-declaration-panel__mode-card-with-rank .card{overflow:hidden}.rank-declaration-panel__simple-card{--card-rank-font-size: clamp(18px, 28cqh, 48px);--card-suit-font-size: clamp(14px, 20cqh, 36px);--card-corner-inset-inline: clamp(2px, .6cqw, 6px);--card-corner-inset-block: 0}.rank-declaration-panel__simple-card .card__side-column--right,.rank-declaration-panel__simple-card .card__center{display:none}.rank-declaration-panel__simple-card .card__side-column--left:not(.card__side-column--joker){top:50%;left:0;transform:translateY(-50%)}.rank-declaration-panel__simple-card .card__corner{align-items:flex-start;gap:clamp(2px,.6cqh,6px)}.rank-declaration-panel__mode-declared{display:flex;align-items:flex-start;overflow-x:auto;padding-bottom:clamp(4px,.6cqh,8px);padding-left:clamp(22px,2.2cqw,34px);padding-right:clamp(10px,1.2cqw,18px)}.rank-declaration-panel__mode-card-with-rank{position:relative;display:flex;align-items:center;margin-left:clamp(-22px,-2.2cqw,-14px)}.rank-declaration-panel__mode-card-with-rank:first-child{margin-left:0}.rank-declaration-panel__mode-rank{display:flex;align-items:center;gap:clamp(4px,.6cqw,8px)}.rank-declaration-panel__mode-arrow{font-size:clamp(14px,1.8cqh,18px);color:#94a3b8;font-weight:600}.rank-declaration-panel__mode-rank-label{font-size:clamp(14px,1.8cqh,18px);font-weight:600;color:#e2e8f0;min-width:clamp(28px,3.5cqw,44px)}.rank-declaration-panel__mode-card-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(12px,1.4cqh,16px);font-weight:600;color:#e2e8f0;text-align:center;min-width:clamp(28px,3.5cqw,44px);text-shadow:0 2px 4px rgba(15,23,42,.8);pointer-events:none}.rank-declaration-panel__mode-buttons{display:flex;flex-wrap:wrap;gap:clamp(6px,.8cqw,10px)}.rank-declaration-panel__title{font-size:clamp(20px,2.5cqh,28px);font-weight:600;color:#e2e8f0}.rank-declaration-panel__subtitle{font-size:clamp(14px,1.8cqh,18px);color:#94a3b8;margin:0}.rank-declaration-panel__error{margin:clamp(8px,1cqh,12px) 0 0;color:#f87171;font-size:clamp(13px,1.6cqh,16px);font-weight:600}.rank-declaration-panel__cards{display:flex;flex-direction:column;gap:clamp(16px,2cqh,24px);margin-bottom:clamp(16px,2cqh,24px);overflow-y:auto;padding-right:clamp(4px,.6cqw,10px)}.rank-declaration-panel__card-item{background:#334155;border:1px solid #475569;border-radius:clamp(8px,1cqh,12px);padding:clamp(12px,1.5cqh,20px)}.rank-declaration-panel__card-row{display:flex;align-items:center;gap:0;flex-wrap:wrap}.rank-declaration-panel__card-visual{display:flex;align-items:center;justify-content:center;min-width:clamp(60px,7cqw,84px)}.rank-declaration-panel__arrow{font-size:clamp(16px,2cqh,20px);color:#94a3b8;font-weight:600;margin:0;margin-right:clamp(4px,.5cqw,8px)}.rank-declaration-panel__rank-buttons{display:flex;flex-wrap:wrap;gap:clamp(6px,.8cqw,10px);flex:1}.rank-declaration-panel__rank-button{background:#475569;border:1px solid #64748b;border-radius:clamp(6px,.8cqh,8px);color:#e2e8f0;font-size:clamp(14px,1.8cqh,18px);padding:clamp(8px,1cqh,12px) clamp(16px,2cqw,24px);cursor:pointer;transition:all .2s ease;min-width:clamp(50px,6cqw,80px)}.rank-declaration-panel__rank-button:hover:not(:disabled){background:#64748b;border-color:#94a3b8;transform:translateY(-2px)}.rank-declaration-panel__rank-button--selected{background:#3b82f6;border-color:#3b82f6;color:#fff;font-weight:600}.rank-declaration-panel__rank-button--selected:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.rank-declaration-panel__card-disabled{font-size:clamp(14px,1.8cqh,18px);color:#94a3b8;font-style:italic;text-align:center;padding:clamp(8px,1cqh,12px)}.rank-declaration-panel__actions{display:flex;justify-content:space-between;gap:clamp(12px,1.5cqw,20px);padding-top:clamp(16px,2cqh,24px);border-top:1px solid #475569;margin-top:auto}.rank-declaration-panel__cancel-button{background:#475569;border:1px solid #64748b;border-radius:clamp(8px,1cqh,12px);color:#e2e8f0;font-size:clamp(16px,2cqh,20px);font-weight:500;padding:clamp(12px,1.5cqh,16px) clamp(24px,3cqw,32px);cursor:pointer;transition:all .2s ease;flex:1}.rank-declaration-panel__cancel-button:hover{background:#64748b;border-color:#94a3b8}.rank-declaration-panel__confirm-button{background:#475569;border:1px solid #64748b;border-radius:clamp(8px,1cqh,12px);color:#64748b;font-size:clamp(16px,2cqh,20px);font-weight:500;padding:clamp(12px,1.5cqh,16px) clamp(24px,3cqw,32px);cursor:not-allowed;transition:all .2s ease;flex:1}.rank-declaration-panel__confirm-button--enabled{background:#3b82f6;border-color:#3b82f6;color:#fff;cursor:pointer}.rank-declaration-panel__confirm-button--enabled:hover{background:#2563eb;border-color:#2563eb}@container game-layout (max-width: 560px){.rank-declaration-panel{padding:clamp(8px,1.2cqh,16px)}.rank-declaration-panel__content{padding:clamp(12px,1.8cqh,20px)}.rank-declaration-panel__header{margin-bottom:clamp(6px,.9cqh,10px)}.rank-declaration-panel__title{font-size:clamp(16px,2cqh,22px)}.rank-declaration-panel__subtitle{font-size:clamp(12px,1.5cqh,16px)}.rank-declaration-panel__mode-tabs{gap:clamp(4px,.6cqw,8px);margin-bottom:clamp(8px,1.2cqh,12px)}.rank-declaration-panel__mode-tab{padding:clamp(6px,.8cqh,8px) clamp(10px,1.5cqw,14px);font-size:clamp(11px,1.4cqh,14px);border-radius:clamp(6px,.8cqh,10px)}.rank-declaration-panel__mode-panel{padding:clamp(8px,1.2cqh,12px);margin-bottom:clamp(10px,1.5cqh,14px);border-radius:clamp(6px,.8cqh,10px);max-height:clamp(150px,35cqh,400px)}.rank-declaration-panel__mode-title{font-size:clamp(11px,1.4cqh,14px);margin-bottom:clamp(6px,.8cqh,10px)}.rank-declaration-panel__mode-row{gap:clamp(4px,.6cqw,8px);margin-bottom:clamp(6px,.9cqh,10px)}.rank-declaration-panel__cards{gap:clamp(10px,1.5cqh,16px);margin-bottom:clamp(10px,1.5cqh,16px)}.rank-declaration-panel__card-item{padding:clamp(8px,1.2cqh,14px);border-radius:clamp(6px,.8cqh,10px)}.rank-declaration-panel__rank-buttons{gap:clamp(4px,.6cqw,8px)}.rank-declaration-panel__rank-button{padding:clamp(6px,.8cqh,10px) clamp(12px,1.8cqw,18px);font-size:clamp(12px,1.6cqh,16px);min-width:clamp(44px,5.5cqw,70px);border-radius:clamp(5px,.7cqh,7px)}.rank-declaration-panel__actions{gap:clamp(8px,1.2cqw,14px);padding-top:clamp(10px,1.5cqh,16px)}.rank-declaration-panel__cancel-button,.rank-declaration-panel__confirm-button{padding:clamp(8px,1.2cqh,12px) clamp(16px,2.4cqw,24px);font-size:clamp(13px,1.8cqh,18px);border-radius:clamp(6px,.8cqh,10px)}}@container game-layout (max-width: 768px){.rank-declaration-panel{padding:clamp(10px,1.5cqh,20px)}.rank-declaration-panel__content{padding:clamp(16px,2.2cqh,26px)}.rank-declaration-panel__header{margin-bottom:clamp(8px,1.2cqh,14px)}.rank-declaration-panel__mode-tabs{gap:clamp(6px,.9cqw,10px);margin-bottom:clamp(10px,1.4cqh,14px)}.rank-declaration-panel__mode-tab{padding:clamp(7px,.9cqh,9px) clamp(12px,1.8cqw,16px);font-size:clamp(12px,1.5cqh,15px)}.rank-declaration-panel__mode-panel{padding:clamp(10px,1.4cqh,14px);margin-bottom:clamp(12px,1.8cqh,18px);max-height:clamp(180px,38cqh,450px)}.rank-declaration-panel__cards{gap:clamp(12px,1.8cqh,20px);margin-bottom:clamp(12px,1.8cqh,20px)}.rank-declaration-panel__card-item{padding:clamp(10px,1.4cqh,16px)}.rank-declaration-panel__rank-buttons{gap:clamp(5px,.7cqw,9px)}.rank-declaration-panel__rank-button{padding:clamp(7px,.9cqh,11px) clamp(14px,1.9cqw,21px);font-size:clamp(13px,1.7cqh,17px)}.rank-declaration-panel__actions{gap:clamp(10px,1.4cqw,18px);padding-top:clamp(12px,1.8cqh,20px)}.rank-declaration-panel__cancel-button,.rank-declaration-panel__confirm-button{padding:clamp(10px,1.4cqh,14px) clamp(20px,2.8cqw,28px);font-size:clamp(14px,1.9cqh,19px)}}.hand-area{display:flex;flex-direction:column;gap:0;padding:0 var(--hand-area-padding-inline) var(--hand-area-padding-block) var(--hand-area-padding-inline);background:#1e293b;border-radius:var(--hand-area-radius, clamp(6px, .8cqh, 10px));height:100%;min-height:0;width:100%;min-width:0;max-width:100%;overflow:hidden;position:relative;box-sizing:border-box;transition:background-color .3s ease,padding .3s ease,gap .3s ease}body.revolution .hand-area{background:#4a1f1f}.hand-area--current-turn{background:#f59e0b26!important;border:var(--hand-area-highlight-border-width) solid rgba(245,158,11,.3);box-shadow:0 0 0 var(--hand-area-highlight-shadow-size) #f59e0b1a;animation:pulse-border 2s ease-in-out 0s infinite;padding-inline:calc(var(--hand-area-padding-inline) * .75);gap:0}body.revolution .hand-area--current-turn{background:#f59e0b26!important;border:var(--hand-area-highlight-border-width) solid rgba(245,158,11,.3)}.hand-area--four-stop-selecting{background:#f59e0b26!important;border:var(--hand-area-highlight-border-width) solid rgba(245,158,11,.3);box-shadow:0 0 0 var(--hand-area-highlight-shadow-size) #f59e0b1a;animation:pulse-border 2s ease-in-out 0s infinite}body.revolution .hand-area--four-stop-selecting{background:#f59e0b26!important;border:var(--hand-area-highlight-border-width) solid rgba(245,158,11,.3)}.hand-area--special-effect-selecting{background:#f59e0b26!important;border:var(--hand-area-highlight-border-width) solid rgba(245,158,11,.3);box-shadow:0 0 0 var(--hand-area-highlight-shadow-size) #f59e0b1a;animation:pulse-border 2s ease-in-out 0s infinite}body.revolution .hand-area--special-effect-selecting{background:#f59e0b26!important;border:var(--hand-area-highlight-border-width) solid rgba(245,158,11,.3)}.hand-area__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;border-radius:var(--hand-area-radius, clamp(6px, .8cqh, 10px));z-index:9999;cursor:pointer;pointer-events:auto}.hand-area__player-info{display:flex;align-items:center;gap:var(--hand-area-row-gap);width:100%;padding:0;margin-bottom:0;flex-shrink:0;justify-content:space-between}.hand-area__player-info-left{display:flex;align-items:center;gap:var(--hand-area-row-gap);flex-shrink:0}.hand-area__player-info-right{display:flex;align-items:center;justify-content:flex-end;flex:0 1 clamp(150px,35%,260px);max-width:50%;min-height:var(--hand-area-player-status-height)}.hand-area__player-info-placeholder{width:100%;min-height:var(--hand-area-player-status-height);visibility:hidden}:root[data-aspect=portrait] .hand-area__player-info{flex-direction:column;align-items:stretch}:root[data-aspect=portrait] .hand-area__player-info-right{width:100%;justify-content:flex-start}.hand-area__player-avatar{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--hand-area-avatar-size);height:var(--hand-area-avatar-size)}.hand-area__player-name{font-size:var(--hand-area-name-font);font-weight:600;color:#f8fafc;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;min-width:0}.hand-area__player-doubt-tickets{display:flex;align-items:center;gap:var(--hand-area-meta-gap);font-size:var(--hand-area-meta-font);color:#fbbf24;flex-shrink:0}.hand-area__player-hand-count{font-size:var(--hand-area-meta-font);color:#94a3b8;flex-shrink:0}.hand-area__four-stop-selecting-info{display:flex;align-items:center;gap:var(--hand-area-row-gap);padding:calc(var(--hand-area-row-gap) / 2) var(--hand-area-padding-inline);width:100%;justify-content:center}.hand-area__four-stop-selecting-info-icon{font-size:var(--hand-area-info-icon-font)}.hand-area__four-stop-selecting-info-text{font-size:var(--hand-area-info-text-font);font-weight:500;color:#fbbf24;white-space:nowrap;animation:text-pulse 2s ease-in-out 0s infinite}@keyframes pulse-border{0%,to{border-color:#f59e0b4d;box-shadow:0 0 #f59e0b66}50%{border-color:#f59e0b99;box-shadow:0 0 0 clamp(2px,.3cqh,4px) #f59e0b1a}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hand-area__normal-card-selecting-info{display:flex;align-items:center;gap:var(--hand-area-row-gap);padding:calc(var(--hand-area-row-gap) / 2) var(--hand-area-padding-inline);width:100%;justify-content:flex-end}.hand-area__normal-card-selecting-info-icon{font-size:clamp(12px,1.4cqh,16px)}.hand-area__normal-card-selecting-info-text{font-size:clamp(9px,1.1cqh,13px);font-weight:500;color:#fbbf24;white-space:nowrap;text-align:right;animation:text-pulse 2s ease-in-out 0s infinite}.hand-area__normal-card-selecting-info-text--warning{color:#f87171}.hand-area__hand{width:100%;overflow-x:visible;overflow-y:hidden;position:relative;flex:1 1 auto;min-width:0;min-height:0;max-height:100%}.hand-area__board-row{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;width:100%;flex:1 1 auto;min-width:0;min-height:0;max-width:100%;align-content:stretch;box-sizing:border-box}.hand-area__hand-column{flex:5 1 0;display:flex;flex-direction:column;gap:0;container-type:size;container-name:hand-column;--card-hand-height: clamp(52px, 72cqh, 280px);--card-hand-width: min(calc(var(--card-hand-height) * .714), 22cqw);--hand-card-min-height: var(--card-hand-height);min-width:0;min-height:0;max-width:100%;box-sizing:border-box}.hand-area__hand-controls{display:flex;flex-direction:column;gap:calc(var(--hand-area-row-gap) * .8);padding:0 var(--hand-area-padding-inline);box-sizing:border-box}.hand-area__side-controls{flex:2 1 0;min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--hand-area-row-gap);align-items:stretch;justify-content:flex-end;align-self:stretch;max-height:100%;overflow-y:auto;box-sizing:border-box;container-type:size;container-name:hand-side-controls}.hand-area__controls{display:flex;flex-direction:column;gap:calc(var(--hand-area-row-gap) * 1.2);align-items:stretch;min-height:0;flex:0 0 auto}.hand-area__controls+.hand-area__action-buttons{margin-top:calc(var(--hand-area-control-gap) * 1.25)}.hand-area__face-and-ranks{display:flex;flex-direction:row;flex-wrap:wrap;gap:calc(var(--hand-area-control-gap) * 1.15);width:100%;align-items:center;margin-top:0}.hand-area__face-and-ranks--hand-row{position:static;margin-top:0;background:transparent}.hand-area__face-and-ranks--pinned{position:sticky;bottom:0;z-index:2;margin-top:auto;background:inherit}.hand-area__controls .hand-area__face-and-ranks--pinned{position:static;margin-top:0}:root[data-aspect=portrait] .hand-area__side-controls{min-width:0}:root[data-aspect=portrait] .hand-area__face-and-ranks{flex-direction:row;flex-wrap:wrap}:root[data-aspect=portrait] .hand-area__action-buttons{width:100%}.hand-area__face-choice{display:flex;flex-shrink:0}.hand-area__face-toggle{display:flex;align-items:center;justify-content:center;background:#334155;border:clamp(2px,.25cqh,4px) solid #475569;border-radius:clamp(6px,.8cqh,10px);color:#e2e8f0;font-size:calc(clamp(15px,2cqh,22px)*1.05);font-weight:600;padding:calc(var(--space-2xs) * 1.35) calc(var(--space-sm) * 1);cursor:pointer;transition:all .2s ease,padding .3s ease,font-size .3s ease;white-space:nowrap;min-width:auto}.hand-area__face-toggle:hover:not(:disabled){background:#475569;border-color:#64748b;transform:translateY(clamp(-1px,-.125cqh,-2px));box-shadow:0 clamp(2px,.25cqh,4px) clamp(4px,.5cqh,8px) #0003}.hand-area__face-toggle:disabled{opacity:.5;cursor:not-allowed}.hand-area__face-toggle--face-up{background:#3b82f6;border-color:#3b82f6;color:#fff}.hand-area__face-toggle--face-up:hover:not(:disabled){background:#2563eb;border-color:#2563eb;box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,.9cqh,12px) #3b82f666}.hand-area__face-toggle--face-down{background:#7c3aed;border-color:#7c3aed;color:#fff}.hand-area__face-toggle--face-down:hover:not(:disabled){background:#6d28d9;border-color:#6d28d9;box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,.9cqh,12px) #7c3aed66}.hand-area__face-toggle--disabled{opacity:.5;cursor:not-allowed}.hand-area__face-toggle--revealed-warning{border-color:#f59e0b!important;background:#78350f!important;position:relative}.hand-area__face-toggle--revealed-warning:after{content:"⚠️";position:absolute;top:clamp(-8px,-1cqh,-6px);right:clamp(-8px,-1cqw,-6px);font-size:clamp(14px,1.6cqh,18px);background:#f59e0b;border-radius:50%;width:clamp(18px,2.6cqh,24px);height:clamp(18px,2.6cqh,24px);display:flex;align-items:center;justify-content:center;box-shadow:0 clamp(2px,.3cqh,4px) clamp(3px,.5cqh,6px) #0000004d}.hand-area__declared-ranks{display:flex;flex:1 1 auto;min-width:0}.hand-area__declared-ranks--inline{flex:1 1 auto}.hand-area__declared-ranks-content{display:flex;flex-wrap:nowrap;gap:clamp(4px,.5cqh,8px);align-items:center;width:100%;overflow-x:auto;padding:0}.hand-area__declared-rank-item{display:flex;align-items:center;justify-content:center;flex-shrink:0}.hand-area__declared-rank-button{background:#334155;border:clamp(1px,.125cqh,2px) solid #475569;border-radius:clamp(4px,.5cqh,6px);color:#e2e8f0;font-size:calc(clamp(15px,2.1cqh,24px)*1.05);font-weight:600;padding:calc(var(--hand-area-row-gap) * .95) calc(var(--hand-area-row-gap) * 1.8);min-width:calc(var(--hand-area-rank-button-min-inline) * 1.35);cursor:pointer;transition:all .2s ease,padding .3s ease,font-size .3s ease;white-space:nowrap}.hand-area__declared-rank-button:hover:not(:disabled){background:#475569;border-color:#64748b;transform:translateY(clamp(-1px,-.125cqh,-2px))}.hand-area__declared-rank-button:disabled{opacity:.5;cursor:not-allowed}.hand-area__declared-rank-button--set{background:#3b82f6;border-color:#3b82f6;color:#fff}.hand-area__declared-rank-button--set:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.hand-area__declared-rank-button--disabled,.hand-area__declared-rank-button:disabled{opacity:.5;cursor:not-allowed;background:#334155;border-color:#475569}.hand-area__declared-rank-button--disabled:hover,.hand-area__declared-rank-button:disabled:hover{background:#334155;border-color:#475569;transform:none}.hand-area__declared-rank-button--set.hand-area__declared-rank-button--disabled,.hand-area__declared-rank-button--set:disabled{background:#3b82f680;border-color:#3b82f680;color:#ffffffb3}.hand-area__action-buttons{display:flex;flex-direction:column;gap:calc(var(--hand-area-row-gap) * .9);flex-shrink:0;flex:0 0 auto;width:100%;align-content:stretch;align-items:stretch;padding:clamp(2px,.4cqh,6px) 0}.hand-area__card-exchange-info{display:flex;flex-direction:column;gap:clamp(2px,.4cqh,6px);padding:clamp(6px,1cqh,10px) clamp(8px,1.4cqh,12px);background:#3b82f61f;border:clamp(1px,.15cqh,2px) solid rgba(59,130,246,.3);border-radius:clamp(6px,.8cqh,10px);color:#e2e8f0;font-size:clamp(11px,1.2cqh,14px);font-weight:600;text-align:center}.hand-area__card-exchange-selected{color:#93c5fd;font-weight:500}.hand-area__reaction-layout{display:flex;flex-direction:column;gap:var(--hand-area-row-gap);width:100%;align-items:stretch}.hand-area__reaction-buttons{display:flex;flex-direction:column;gap:calc(var(--hand-area-row-gap) * 1.25);flex:1 1 auto;align-content:stretch;align-items:stretch}.hand-area__reaction-row{display:flex;gap:calc(var(--hand-area-row-gap) * 1.25);width:100%}.hand-area__reaction-row>.hand-area__action-button{flex:1 1 0;max-width:calc(50% - (var(--hand-area-row-gap) * .7))}.hand-area__reaction-preparing,.hand-area__reaction-waiting{display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.2cqh,12px);width:100%;padding:clamp(8px,1.2cqh,12px) clamp(10px,1.6cqw,14px);background:#0f172aa6;border:clamp(1px,.15cqh,2px) solid rgba(148,163,184,.35);border-radius:clamp(6px,.8cqh,10px);color:#f8fafc;font-size:clamp(12px,1.3cqh,14px);font-weight:500;box-sizing:border-box}.hand-area__reaction-preparing-spinner{width:clamp(10px,1.6cqh,14px);height:clamp(10px,1.6cqh,14px);border-radius:50%;border:clamp(1px,.2cqh,2px) solid rgba(248,250,252,.25);border-top-color:#f8fafce6;animation:spin .9s linear infinite}.hand-area__reaction-preparing-text{color:#f8fafc}.hand-area__action-button{display:flex;align-items:center;justify-content:center;padding:calc(var(--hand-area-button-padding-block) * .9) calc(var(--hand-area-button-padding-inline) * .9);border-radius:clamp(6px,.8cqh,10px);font-size:clamp(var(--hand-area-button-font-size),calc(var(--hand-area-action-button-height) * .45),calc(var(--hand-area-button-font-size) * 2));font-weight:600;line-height:1;cursor:pointer;transition:all .2s ease,padding .3s ease,font-size .3s ease;border:clamp(1px,.125cqh,2px) solid transparent;white-space:nowrap;text-align:center;height:var(--hand-area-action-button-height);min-height:0;width:100%}.hand-area__primary-actions{display:flex;flex-direction:row;gap:calc(var(--hand-area-row-gap) * 1.25);width:100%;flex:1 1 auto;align-content:stretch;align-items:stretch}.hand-area__action-buttons>.hand-area__action-button,.hand-area__primary-actions>.hand-area__action-button,.hand-area__reaction-buttons>.hand-area__action-button{width:100%;min-width:0}.hand-area__primary-actions>.hand-area__action-button{flex:1 1 0;max-width:calc(50% - (var(--hand-area-row-gap) * .7));height:var(--hand-area-action-button-height);min-height:0}.hand-area__pass-row{display:flex;width:100%}.hand-area__pass-row>.hand-area__action-button{height:var(--hand-area-action-button-height);min-height:0}@media (max-height: 720px){.hand-area__primary-actions>.hand-area__action-button,.hand-area__pass-row>.hand-area__action-button{height:min(var(--hand-area-action-button-height),clamp(24px,30.5cqh,80px));font-size:clamp(10px,10.6cqh,24px)}.hand-area__action-button--seven-pass{height:min(var(--hand-area-action-button-height),clamp(24px,30.5cqh,80px));font-size:clamp(10px,10.6cqh,24px);color:#e2e8f0}.hand-area__action-button--seven-pass.hand-area__action-button--enabled{color:#fff!important}.hand-area__seven-pass-text--long{display:none}.hand-area__seven-pass-text--short{display:inline}}.hand-area__seven-pass-text--short{display:none}.hand-area__action-button--play,.hand-area__action-button--play-face-up,.hand-area__action-button--play-face-down{background:#334155;border-color:#475569;color:#e2e8f0}.hand-area__action-button--play-face-down{position:relative;box-shadow:inset 0 0 0 clamp(2px,.3cqh,4px) #0f172a;overflow:hidden}.hand-area__action-button--play:hover:not(:disabled){background:#475569;border-color:#64748b}.hand-area__action-button--play-face-up:hover:not(:disabled),.hand-area__action-button--play-face-down:hover:not(:disabled){background:#475569;border-color:#64748b}.hand-area__action-button--play.hand-area__action-button--enabled,.hand-area__action-button--play-face-up.hand-area__action-button--enabled,.hand-area__action-button--play-face-down.hand-area__action-button--enabled{background:#15803d;border-color:#166534;color:#f8fafc}.hand-area__action-button--play.hand-area__action-button--enabled:hover:not(:disabled){background:#16a34a;border-color:#14532d}.hand-area__action-button--play-face-up.hand-area__action-button--enabled:hover:not(:disabled),.hand-area__action-button--play-face-down.hand-area__action-button--enabled:hover:not(:disabled){background:#16a34a;border-color:#14532d}.hand-area__action-button--pass{background:#334155;border-color:#475569;color:#e2e8f0}.hand-area__action-button--pass:hover:not(:disabled){background:#475569;border-color:#64748b}.hand-area__action-button--pass.hand-area__action-button--enabled{background:#64748b;border-color:#64748b;color:#fff}.hand-area__action-button--pass.hand-area__action-button--enabled:hover:not(:disabled){background:#475569;border-color:#64748b}.hand-area__action-button--seven-pass{background:#334155;border-color:#475569;color:#e2e8f0}.hand-area__action-button--seven-pass:hover:not(:disabled){background:#475569;border-color:#64748b}.hand-area__action-button--seven-pass.hand-area__action-button--enabled{background:#8b5cf6;border-color:#8b5cf6;color:#fff}.hand-area__action-button--seven-pass.hand-area__action-button--enabled:hover:not(:disabled){background:#7c3aed;border-color:#7c3aed}.hand-area__action-button--special-effect{background:#334155;border-color:#475569;color:#e2e8f0}.hand-area__action-button--special-effect:hover:not(:disabled){background:#475569;border-color:#64748b}.hand-area__action-button--special-effect.hand-area__action-button--enabled{background:#3b82f6;border-color:#3b82f6;color:#fff}.hand-area__action-button--special-effect.hand-area__action-button--enabled:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.hand-area__action-button--doubt.hand-area__action-button--enabled{background:#f97316;border-color:#f97316;color:#fff}.hand-area__action-button--doubt.hand-area__action-button--enabled:hover:not(:disabled){background:#ea580c;border-color:#ea580c}.hand-area__action-button--four-stop{background:#7f1d1d;border-color:#b91c1c;color:#fee2e2}.hand-area__action-button--four-stop:hover:not(:disabled){background:#991b1b;border-color:#ef4444}.hand-area__action-button--four-stop.hand-area__action-button--enabled{background:#dc2626;border-color:#ef4444;color:#fff}.hand-area__action-button--four-stop.hand-area__action-button--enabled:hover:not(:disabled){background:#b91c1c;border-color:#f87171}.hand-area__action-button--four-stop:disabled{background:#475569;border-color:#64748b;color:#e2e8f0;opacity:1}.hand-area__action-button--through{background:#3f3f46;border-color:#52525b;color:#e4e4e7}.hand-area__action-button--through:hover:not(:disabled){background:#52525b;border-color:#71717a}.hand-area__action-button--through.hand-area__action-button--enabled{background:#6b7280;border-color:#9ca3af;color:#fff}.hand-area__action-button--through.hand-area__action-button--enabled:hover:not(:disabled){background:#4b5563;border-color:#94a3b8}.hand-area__action-button:disabled{opacity:.5;cursor:not-allowed}.hand-area__seven-pass-actions{display:flex!important;flex-direction:row!important;align-items:center;gap:clamp(8px,1.2cqh,12px);width:100%;margin-left:0}.hand-area__seven-pass-actions>.hand-area__action-button{flex-shrink:0;margin-left:auto}.hand-area__seven-pass-player-selection-buttons{display:flex;flex-direction:row;align-items:center;gap:clamp(8px,1.4cqh,14px);flex:1;min-width:0}.hand-area__seven-pass-player-selection-header{margin-bottom:clamp(6px,1cqh,10px)}.hand-area__seven-pass-player-selection-label{font-size:clamp(12px,1.5cqh,16px);color:#94a3b8;font-weight:600;white-space:nowrap;flex-shrink:0;display:flex;align-items:center;line-height:1;height:100%}.hand-area__seven-pass-player-selection-list{display:flex!important;flex-direction:row!important;flex-wrap:nowrap;gap:clamp(4px,.7cqh,8px);flex:1;min-width:0;overflow-x:auto;align-items:center;height:100%;margin:0!important;padding:0!important}.hand-area__seven-pass-player-button{padding:clamp(6px,.9cqh,10px) clamp(12px,1.6cqw,20px);border-radius:clamp(8px,1cqh,12px);font-size:clamp(12px,1.5cqh,16px);font-weight:600;cursor:pointer;transition:all .2s ease,padding .3s ease,font-size .3s ease;border:clamp(1px,.125cqh,2px) solid #475569;background:#334155;color:#e2e8f0;white-space:nowrap;line-height:1.2;display:flex;align-items:center;justify-content:center}.hand-area__seven-pass-player-button:hover:not(:disabled){background:#475569;border-color:#64748b}.hand-area__seven-pass-player-button--selected{background:#8b5cf6;border-color:#8b5cf6;color:#fff}.hand-area__seven-pass-player-button--selected:hover:not(:disabled){background:#7c3aed;border-color:#7c3aed}.hand-area__seven-pass-player-button:disabled{opacity:.5;cursor:not-allowed}.hand-area__four-stop-info{display:flex;align-items:center;justify-content:center;padding:clamp(4px,.6cqh,8px) clamp(8px,1.2cqw,16px);min-height:var(--hand-area-action-button-height);background:#3b82f61a;border:clamp(1px,.125cqh,2px) solid rgba(59,130,246,.3);border-radius:clamp(6px,.8cqh,10px);font-size:clamp(var(--hand-area-button-font-size),calc(var(--hand-area-action-button-height) * .45),calc(var(--hand-area-button-font-size) * 2));color:#93c5fd;white-space:nowrap}.hand-area__four-stop-count{font-weight:600;text-align:center;width:100%}.hand-area__action{flex:0 0 auto;min-width:clamp(100px,16cqw,140px);max-width:clamp(140px,22cqw,200px)}.hand-area__loading-spinner{font-size:clamp(10px,1.2cqh,14px)}.hand-area__seven-pass-player-selection-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:clamp(10px,1.6cqh,16px)}.hand-area__seven-pass-player-selection{padding:0;background-color:transparent;border-radius:0;color:inherit;max-width:none;width:100%;box-shadow:none;border:none}.hand-area__seven-pass-player-selection-title{font-size:clamp(16px,1.2cqh,20px);font-weight:700;margin-bottom:clamp(12px,2.2cqh,24px);text-align:center}.hand-area__seven-pass-player-selection-list{display:flex;flex-direction:column;gap:clamp(8px,1.2cqh,12px);margin-bottom:clamp(12px,2.2cqh,24px)}.hand-area__seven-pass-player-selection-button{padding:clamp(8px,1.2cqh,12px) clamp(10px,1.6cqw,16px);background-color:#333;color:#fff;border:clamp(1px,.2cqh,2px) solid #555;border-radius:clamp(6px,.9cqh,10px);cursor:pointer;transition:all .2s;font-size:clamp(14px,1cqh,18px);text-align:left}.hand-area__seven-pass-player-selection-button:hover{background-color:#444;border-color:#666}.hand-area__seven-pass-player-selection-cancel{padding:clamp(8px,1.2cqh,12px) clamp(12px,2.2cqw,24px);background-color:#555;color:#fff;border:none;border-radius:clamp(6px,.9cqh,10px);font-size:clamp(14px,1cqh,18px);font-weight:700;cursor:pointer;transition:background-color .2s;width:100%}.hand-area__seven-pass-player-selection-cancel:hover{background-color:#666}:root[data-aspect=portrait] .hand-area__declared-ranks-label{display:none}@container hand-side-controls (max-height: 96px){.hand-area__side-controls .hand-area__action-buttons{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:clamp(2px,.5cqw,6px);padding:0;overflow:hidden;block-size:var(--hand-area-action-button-height);min-block-size:32px}@supports (display: contents){.hand-area__side-controls .hand-area__primary-actions,.hand-area__side-controls .hand-area__pass-row,.hand-area__side-controls .hand-area__reaction-layout,.hand-area__side-controls .hand-area__reaction-buttons,.hand-area__side-controls .hand-area__reaction-row{display:contents}}.hand-area__side-controls .hand-area__primary-actions>.hand-area__action-button{flex:1.4 1 0;width:0;min-width:0;max-width:none}.hand-area__side-controls .hand-area__pass-row>.hand-area__action-button{flex:.7 1 0;width:0;min-width:clamp(60px,15cqw,90px);max-width:none}.hand-area__side-controls .hand-area__four-stop-info{flex:.7 1 0;width:0;min-width:clamp(60px,15cqw,90px);max-width:none;min-height:0;height:100%;white-space:normal;word-break:break-word;overflow-wrap:anywhere;line-height:1.15;padding:clamp(4px,.6cqh,6px) clamp(6px,1.2cqw,10px);font-size:clamp(9px,2.8cqw,12px)}.hand-area__side-controls .hand-area__action-buttons>.hand-area__action-button--seven-pass{flex:1 1 0;width:0;min-width:0;max-width:none}.hand-area__side-controls .hand-area__reaction-layout:has(.hand-area__reaction-waiting) .hand-area__reaction-buttons{display:none}.hand-area__side-controls .hand-area__reaction-waiting{flex:1 1 0;width:0;min-width:0;max-width:none}.hand-area__side-controls .hand-area__action-buttons>.hand-area__action-button:not(.hand-area__action-button--seven-pass),.hand-area__side-controls .hand-area__reaction-buttons>.hand-area__action-button,.hand-area__side-controls .hand-area__reaction-row>.hand-area__action-button{flex:1 1 0;width:0;min-width:0;max-width:none}.hand-area__side-controls .hand-area__action-button{height:100%;min-height:0;white-space:normal;word-break:break-word;overflow-wrap:anywhere;line-height:1.15;text-align:center;padding-inline:clamp(6px,1.2cqw,10px);padding-block:clamp(4px,.9cqh,8px);font-size:clamp(9px,2.8cqw,12px)}.hand-area__side-controls .hand-area__action-button--seven-pass.hand-area__action-button--enabled{color:#fff!important}.hand-area__side-controls .hand-area__action-button--seven-pass{font-size:clamp(10px,3cqw,13px);color:#e2e8f0}.hand-area__side-controls .hand-area__action-button--seven-pass .hand-area__seven-pass-text{display:inline;color:inherit}.hand-area__side-controls .hand-area__action-button--seven-pass .hand-area__seven-pass-text--long{display:none}.hand-area__side-controls .hand-area__action-button--seven-pass .hand-area__seven-pass-text--short{display:inline}}.declared-rank-badge{position:absolute;top:0;left:0;z-index:20;padding:clamp(2px,.3cqh,4px) clamp(3px,.5cqw,6px);font-size:calc(14px * var(--ui-font-scale));font-weight:700;line-height:1;color:#fff;background:#000000b3;border:clamp(1px,.15cqh,2px) solid rgba(255,255,255,.2);border-radius:clamp(3px,.5cqh,5px);white-space:nowrap;pointer-events:none;box-shadow:0 clamp(1px,.15cqh,2px) clamp(2px,.3cqh,4px) #0000004d}.card-stack__declared-rank.declared-rank-badge{padding:clamp(3px,.5cqh,6px) clamp(6px,1cqw,10px);font-size:clamp(18px,calc(22px * var(--font-scale-base, 1)),26px);border-radius:clamp(4px,.7cqh,8px);border-width:clamp(1px,.2cqh,2px);box-shadow:0 clamp(2px,.3cqh,4px) clamp(4px,.6cqh,8px) #0006}.declared-rank-badge--joker{writing-mode:vertical-rl;text-orientation:upright;font-size:calc(11px * var(--ui-font-scale));line-height:.9;letter-spacing:clamp(-3px,-.4cqh,-1px);padding:clamp(1px,.2cqh,2px) clamp(2px,.3cqw,4px);white-space:normal}.card-stack__declared-rank.declared-rank-badge--joker{font-size:clamp(14px,calc(17px * var(--font-scale-base, 1)),20px);padding:clamp(2px,.3cqh,4px) clamp(3px,.5cqw,6px);letter-spacing:clamp(-4px,-.5cqh,-2px)}.card-stack{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;overflow:visible;padding:0;box-sizing:border-box}.card-stack__card-wrapper{position:absolute;transition:opacity .3s ease;animation:cardStackAppear .4s ease-out;transform-origin:center center}.card-stack__card-container{position:relative;transform:scale(var(--card-stack-scale, 1));transform-origin:center center;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.card-stack__card{transition:none;pointer-events:none}@keyframes cardStackAppear{0%{opacity:0;transform:translateY(calc(-20px * var(--size-scale-base, 1))) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.play-info-panel{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--play-info-gap);padding:var(--space-3xs) var(--space-2xs);background:#1e293be6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-md, clamp(6px, .8cqh, 10px));border:var(--border-thin, clamp(1px, .125cqh, 2px)) solid rgba(255,255,255,.2);flex-wrap:nowrap;inline-size:min(var(--play-info-panel-max-width),100%);overflow:hidden;margin:0 auto;position:relative;z-index:6;transition:padding .3s ease,gap .3s ease,border-radius .3s ease}.play-info-panel__row{display:flex;align-items:center;gap:var(--play-info-row-gap);font-size:var(--play-info-font-size, var(--font-sm, clamp(9px, 1.1cqh, 13px)));flex-shrink:0;transition:font-size .3s ease,gap .3s ease;white-space:nowrap}.play-info-panel__separator{color:#fff3;font-size:var(--play-info-font-size, var(--font-sm, clamp(9px, 1.1cqh, 13px)));padding:0 var( --play-info-separator-padding-inline, var(--space-2xs, clamp(3px, .4cqw, 5px)) );flex-shrink:0;transition:font-size .3s ease,padding .3s ease}.play-info-panel__label{color:#94a3b8;font-weight:500;min-width:clamp(35px,4.5cqw,50px);flex-shrink:0;transition:min-width .3s ease}.play-info-panel__value{color:#e2e8f0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.play-info-panel__player-name{color:#60a5fa;font-weight:600}.play-info-panel__declared-ranks{color:#fbbf24;font-weight:600}.play-info-panel__badge{display:inline-block;padding:var( --play-info-badge-padding-block, var(--space-2xs, clamp(2px, .25cqh, 4px)) ) var( --play-info-badge-padding-inline, var(--space-sm, clamp(6px, .8cqw, 10px)) );border-radius:var(--radius-sm, clamp(4px, .5cqh, 6px));font-size:var(--play-info-badge-font-size, var(--font-xs, clamp(8px, 1cqh, 12px)));font-weight:600;white-space:nowrap;transition:padding .3s ease,font-size .3s ease}.play-info-panel__badge--face-up{background:#4ade8033;color:#4ade80;border:var(--border-thin, clamp(1px, .125cqh, 2px)) solid rgba(74,222,128,.3)}.play-info-panel__badge--face-down{background:#facc1533;color:#facc15;border:var(--border-thin, calc(1px * var(--border-scale-base, 1))) solid rgba(250,204,21,.3)}.play-info-panel__badge--play-type{background:#93c5fd33;color:#93c5fd;border:var(--border-thin, calc(1px * var(--border-scale-base, 1))) solid rgba(147,197,253,.3)}:root[data-aspect=portrait] .play-info-panel__label{display:none}.special-effect-cutin{position:absolute;top:0;left:0;right:0;bottom:0;z-index:5;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:fadeIn .3s ease-out}.special-effect-cutin__effects{display:flex;flex-direction:column;gap:clamp(6px,1cqh,10px);align-items:center;justify-content:center}.special-effect-cutin__effect-name{font-size:clamp(24px,4cqh,40px);font-weight:700;color:gold;text-shadow:calc(-1*clamp(.5px,.1cqh,1px)) calc(-1*clamp(.5px,.1cqh,1px)) 0 #525252,clamp(.5px,.1cqh,1px) calc(-1*clamp(.5px,.1cqh,1px)) 0 #525252,calc(-1*clamp(.5px,.1cqh,1px)) clamp(.5px,.1cqh,1px) 0 #525252,clamp(.5px,.1cqh,1px) clamp(.5px,.1cqh,1px) 0 #525252,0 0 clamp(12px,2cqh,20px) rgba(255,215,0,.8),0 0 clamp(24px,4cqh,40px) rgba(255,215,0,.4);animation:slideInScale .5s cubic-bezier(.34,1.56,.64,1),glow 1.5s ease-in-out infinite}.special-effect-cutin__effect-name:nth-child(1){animation-delay:0s,0s}.special-effect-cutin__effect-name:nth-child(2){animation-delay:.2s,.2s}.special-effect-cutin__effect-name:nth-child(3){animation-delay:.4s,.4s}@keyframes slideInScale{0%{transform:scale(.5) translateY(-30px);opacity:0}50%{transform:scale(1.1) translateY(0)}to{transform:scale(1) translateY(0);opacity:1}}@keyframes glow{0%,to{text-shadow:calc(-1*clamp(.5px,.1cqh,1px)) calc(-1*clamp(.5px,.1cqh,1px)) 0 #525252,clamp(.5px,.1cqh,1px) calc(-1*clamp(.5px,.1cqh,1px)) 0 #525252,calc(-1*clamp(.5px,.1cqh,1px)) clamp(.5px,.1cqh,1px) 0 #525252,clamp(.5px,.1cqh,1px) clamp(.5px,.1cqh,1px) 0 #525252,0 0 clamp(12px,2cqh,20px) rgba(255,215,0,.8),0 0 clamp(24px,4cqh,40px) rgba(255,215,0,.4)}50%{text-shadow:calc(-1*clamp(.5px,.1cqh,1px)) calc(-1*clamp(.5px,.1cqh,1px)) 0 #525252,clamp(.5px,.1cqh,1px) calc(-1*clamp(.5px,.1cqh,1px)) 0 #525252,calc(-1*clamp(.5px,.1cqh,1px)) clamp(.5px,.1cqh,1px) 0 #525252,clamp(.5px,.1cqh,1px) clamp(.5px,.1cqh,1px) 0 #525252,0 0 clamp(18px,3cqh,30px) rgba(255,215,0,1),0 0 clamp(36px,6cqh,60px) rgba(255,215,0,.6)}}.turn-order-indicator{position:relative;pointer-events:none;opacity:.7;transition:opacity .3s ease;z-index:-1;height:min(var(--turn-order-max-size),80%);max-height:var(--turn-order-max-size);max-width:min(var(--turn-order-max-size),80%);width:auto;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center}.turn-order-indicator__circle{width:100%;height:100%;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;background:#1e293bb3;border-radius:50%;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:clamp(2px,.3cqh,4px) solid rgba(255,255,255,.15)}.turn-order-indicator--reversed .turn-order-indicator__circle{border-color:#94a3b866;background:#94a3b826}.turn-order-indicator__arrow{width:95%;height:95%;color:#94a3b8;transform-origin:center center}.turn-order-indicator--reversed .turn-order-indicator__arrow{color:#94a3b8}:root[data-aspect=portrait] .turn-order-indicator__circle{border-width:clamp(2px,.3cqh,4px)}.reaction-result{padding:0;margin:0;text-align:center;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:var( --reaction-result-min-height, clamp(48px, 6cqh, 82px) );line-height:1.5;box-sizing:border-box}.reaction-result--visible{visibility:visible;opacity:1}.reaction-result--hidden{visibility:hidden;opacity:0}.reaction-result__message{font-size:var( --reaction-result-font-size, calc(.9rem * var(--ui-font-scale)) );font-weight:500;color:var(--text-primary, #e5e5e5);display:inline-block;animation:fadeIn .2s ease-out}.revolution-indicator{display:flex;align-items:center;justify-content:center;background:#ef4444e6;color:#fff;padding:var(--revolution-indicator-padding-block) var(--revolution-indicator-padding-inline);border-radius:var(--revolution-indicator-radius);font-size:var(--revolution-indicator-font-size);font-weight:700;line-height:1;box-shadow:var(--revolution-indicator-shadow);animation:revolution-pulse 2s infinite;align-self:center}.revolution-indicator__text{font-size:var(--revolution-indicator-font-size);line-height:1}@keyframes revolution-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.jack-back-indicator{display:flex;align-items:center;justify-content:center;gap:var(--hud-gap);background:#3b82f6e6;color:#fff;padding:calc(var(--hud-indicator-padding-block) * 2) calc(var(--hud-indicator-padding-inline) * 1.5);min-width:clamp(80px,20cqw,140px);border-radius:clamp(999px,100cqh,9999px);font-size:var(--hud-indicator-font-size);font-weight:700;line-height:1;box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,1cqh,10px) #3b82f64d;animation:jack-back-pulse 2s infinite;align-self:center}.jack-back-indicator__text{font-size:clamp(9px,1.1cqh,11px);line-height:1}@keyframes jack-back-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.force-face-up-indicator{display:flex;align-items:center;justify-content:center;gap:var(--hud-gap);background:#fbbf24e6;color:#fff;padding:var(--hud-indicator-padding-block) var(--hud-indicator-padding-inline);border-radius:clamp(999px,100cqh,9999px);font-size:var(--hud-indicator-font-size);font-weight:700;line-height:1;box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,1cqh,10px) #fbbf244d;animation:force-face-up-pulse 2s infinite;align-self:center}.force-face-up-indicator__text{font-size:var(--hud-indicator-font-size);line-height:1}@keyframes force-face-up-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.game-state-indicator{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--hud-gap, 6px);flex-shrink:0;padding:0;width:100%;line-height:1}.game-state-indicator--single,.game-state-indicator--multiple{justify-content:center}.timer-progress-bar__container{width:var(--reaction-timer-size);height:var(--reaction-timer-size);position:relative;display:flex;align-items:center;justify-content:center;transition:width .3s ease,height .3s ease}.timer-progress-bar__circle{width:100%;height:100%}.timer-progress-bar__background{stroke:#ffffff1a;stroke-width:var(--reaction-timer-stroke-width)}.timer-progress-bar__progress{stroke:#fbbf24;stroke-width:var(--reaction-timer-stroke-width);stroke-linecap:round;transition:stroke-dashoffset .1s linear;filter:drop-shadow(0 0 var(--reaction-timer-shadow) rgba(251,191,36,.5))}.timer-progress-bar__progress--warning{stroke:#ef4444;filter:drop-shadow(0 0 var(--reaction-timer-shadow) rgba(239,68,68,.6))}.timer-progress-bar__progress--ended{stroke:#9ca3af;filter:none;transition:none}.timer-progress-bar__content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;z-index:10;font-size:var(--reaction-timer-font-size)}.timer-text{position:relative;width:auto;height:auto;display:flex;align-items:center;justify-content:center;z-index:20}.timer-text__content{font-size:var(--reaction-timer-text-size);font-weight:700;color:#fbbf24;line-height:1;text-shadow:0 0 calc(var(--reaction-timer-shadow) * 2) rgba(251,191,36,.6);transition:font-size .3s ease}.timer-text--ended .timer-text__content{color:#9ca3af;text-shadow:0 0 var(--reaction-timer-shadow) rgba(156,163,175,.4)}.timer-markers__container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}.timer-markers__second-border{stroke:#fff3;stroke-width:var( --reaction-timer-marker-thin, clamp(.5px, calc(1px * var(--ui-density-scale)), 1.5px) )}.timer-markers__priority-border{stroke:#ef4444cc;stroke-width:var( --reaction-timer-marker-bold, clamp(1px, calc(2px * var(--ui-density-scale)), 3px) );filter:drop-shadow(0 0 var( --reaction-timer-marker-glow, calc(2px * var(--ui-density-scale)) ) rgba(239,68,68,.6))}.reaction-timer{display:flex;flex-direction:column;align-items:center;justify-content:center;width:var(--reaction-timer-size, clamp(80px, 10cqh, 120px));height:var(--reaction-timer-size, clamp(80px, 10cqh, 120px));margin:0 auto;transition:opacity .2s ease,visibility .2s ease;position:relative;background:#1e293b4d;backdrop-filter:blur(var(--reaction-timer-blur, clamp(6px, .8cqh, 10px)));-webkit-backdrop-filter:blur(var(--reaction-timer-blur, clamp(6px, .8cqh, 10px)));border-radius:50%;padding:var(--reaction-timer-padding, clamp(6px, .8cqh, 10px));box-sizing:border-box}.played-cards-area{grid-area:center;position:relative;display:grid;grid-template-rows:min-content min-content minmax(0,1fr);grid-template-areas:"state" "info" "stack";row-gap:0;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;box-sizing:border-box;overflow:hidden;z-index:var(--played-cards-area-z-index, 10);--card-base-height: var(--played-cards-card-base-height);--card-base-width: var(--played-cards-card-base-width);--card-stack-max-height: calc( 100% * var(--played-cards-stack-height-factor) );--card-stack-max-width: calc(100% * var(--played-cards-stack-width-factor));--card-stack-scale-by-height: calc( var(--card-stack-max-height) / var(--card-base-height) );--card-stack-scale-by-width: calc( var(--card-stack-max-width) / var(--card-base-width) );--card-stack-scale: clamp( var(--played-cards-stack-scale-min, 1), min( var(--card-stack-scale-by-height), var(--card-stack-scale-by-width) ), var(--played-cards-stack-scale-max, 3) )}.played-cards-area__state-strip{grid-area:state;display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;padding:var(--space-2xs) var(--space-xs);min-height:0;max-height:fit-content;flex-shrink:0;box-sizing:border-box;overflow:hidden}.played-cards-area__game-state{pointer-events:none}.played-cards-area__info-strip{grid-area:info;display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;padding:var(--space-3xs) var(--space-2xs);min-height:0;max-height:fit-content;flex-shrink:0;box-sizing:border-box;overflow:hidden}.played-cards-area__play-info-panel{position:relative;top:auto;left:auto;transform:none;min-width:0;width:min(var(--play-info-panel-max-width, 100%),100%);max-width:100%;box-sizing:border-box;overflow:hidden;pointer-events:none}.played-cards-area__stack-stage{grid-area:stack;position:relative;min-height:0;min-width:0;width:100%;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-2xs) var(--space-3xs);overflow:hidden;box-sizing:border-box}.played-cards-area__reaction-timer{position:absolute;bottom:var(--space-xs);right:var(--space-xs);z-index:5;display:flex;align-items:flex-end;justify-content:flex-end;pointer-events:none}.played-cards-area__reaction-timer .reaction-timer{pointer-events:auto}.played-cards-area__turn-indicator{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:1;opacity:.85}.played-cards-area__stack-layer{position:relative;z-index:2;width:min(100%,var(--played-cards-stage-max-inline, 100%));max-width:100%;height:min(100%,var(--played-cards-stage-max-block, 100%));max-height:100%;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:hidden}.played-cards-area__card-stack{position:relative;width:100%;height:100%;max-width:100%;max-height:100%}.played-cards-area__special-effect{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5}.played-cards-area__empty-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;color:#9ca3af;text-align:center;padding:var(--space-xs);box-sizing:border-box;z-index:1}.played-cards-area__empty-state-text{font-size:var(--played-cards-empty-text-size);font-weight:500;opacity:.8}.penalty-deck{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--penalty-deck-gap);padding:var(--penalty-deck-padding);background:#ffffff05;border-radius:var(--penalty-deck-radius);height:auto;width:auto;overflow:visible;box-sizing:border-box;transition:padding .3s ease,gap .3s ease,border-radius .3s ease}.penalty-deck__label{font-size:var(--penalty-deck-label-size);font-weight:600;color:#fbbf24;text-align:center;flex-shrink:0;line-height:1.2;white-space:normal;max-width:100%;transition:font-size .3s ease}.penalty-deck__container{position:relative;width:var(--penalty-deck-card-inline);height:var(--penalty-deck-card-block);aspect-ratio:5 / 7;flex-shrink:0;max-width:100%;max-height:100%;overflow:visible;transition:width .3s ease,height .3s ease}.penalty-deck__card{position:relative;width:100%;height:100%;overflow:visible}.penalty-deck__card-inner{width:100%;height:100%;position:relative}.penalty-deck__card-inner .card__count{position:absolute;top:0;right:0;bottom:0;left:0;font-size:clamp(18px,50cqh,80px)!important;font-weight:700!important;color:#fff!important;text-shadow:0 clamp(2px,.125cqh,4px) clamp(4px,.25cqh,6px) rgba(0,0,0,.5);z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(4px,1.2cqh,10px);transition:font-size .3s ease;line-height:1}.penalty-deck__card-inner .card__count:after{content:"枚";font-size:clamp(10px,18cqh,28px)!important;font-weight:600!important;line-height:1;margin-top:clamp(2px,.6cqh,6px);transition:font-size .3s ease}.game-layout{--played-cards-area-min-height-desktop: clamp(180px, 20cqh, 220px);--played-cards-area-min-height-tablet: clamp(160px, 18cqh, 200px);--played-cards-area-min-height-mobile: clamp(140px, 16cqh, 180px);--play-area-seat-stack-max-height: var(--player-seats-area-height);--play-area-played-min-height: var(--played-cards-area-min-height-desktop);--play-area-main-overflow: visible}.game-layout[data-aspect=standard],:root[data-aspect=standard] .game-layout{--play-area-played-min-height: var(--played-cards-area-min-height-tablet);--play-area-main-overflow: hidden}.game-layout[data-aspect=portrait],:root[data-aspect=portrait] .game-layout{--play-area-played-min-height: var(--played-cards-area-min-height-mobile);--play-area-main-overflow: hidden}.play-area__main-area{--played-cards-area-z-index: 10}.play-area__history-section{grid-area:history;position:relative;width:100%;height:100%;min-height:0;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;background:#ffffff05;border-radius:var(--play-area-history-radius);border-right:var(--border-thin) solid rgba(255,255,255,.08)}.play-area__penalty-deck-section{grid-area:penalty;position:relative;width:100%;height:100%;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-x:hidden;overflow-y:auto;box-sizing:border-box}.play-area__penalty-deck{width:100%;height:auto}:root[data-aspect=standard] .play-area__main-area,:root[data-aspect=portrait] .play-area__main-area{flex-direction:column}.play-area__hand-area{grid-area:hand;position:relative;width:100%;max-width:100%;min-height:0;height:100%;max-height:100%;min-width:0;overflow:hidden;box-sizing:border-box;z-index:15;pointer-events:auto;margin:0;padding:0;background:#1e293b;box-shadow:none;display:flex;flex-direction:column}.play-area__hand-area:before{display:none}.play-area--revolution .play-area__hand-area{background:#3b0d0d;box-shadow:none}.play-area--revolution .play-area__hand-area:before{display:none}.play-area__hand-area>*{position:relative;z-index:1}.play-area__card-stack{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:auto;height:auto}.play-area__notification{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:100;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:clamp(6px,1cqh,10px);max-width:clamp(300px,40cqw,400px);width:auto;margin-top:clamp(-60px,-8cqh,-100px)}.play-area__play-history-timeline{width:100%;height:100%;min-height:fit-content;box-sizing:border-box}:root[data-aspect=portrait] .played-cards{padding:var(--space-xs);gap:var(--space-2xs)}:root[data-aspect=portrait] .play-area__header{padding-bottom:var(--space-2xs)}:root[data-aspect=portrait] .play-area__main-area{gap:var(--space-xs)}.play-area__reaction-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:6;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:fadeIn .3s ease-out}.play-area__reaction-overlay--buttons{align-items:center;padding-top:0;justify-content:center}.play-area__reaction-overlay--buttons .play-area__reaction-ui{margin-top:clamp(150px,21cqh,250px)}.play-area__reaction-ui{position:relative;z-index:1;pointer-events:auto;background:transparent;padding:var(--play-area-reaction-gap) clamp(12px,1.3cqw,20px);animation:slideInFromBottom .3s ease-out;display:flex;flex-direction:column;align-items:center;gap:clamp(12px,1.6cqh,20px);min-width:var(--play-area-reaction-min-width);max-width:clamp(280px,50cqw,500px)}.play-area__reaction-content{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--play-area-reaction-gap);width:100%;padding:clamp(12px,1.6cqh,20px) clamp(16px,2.4cqw,32px)}:root[data-aspect=portrait] .play-area__reaction-content{flex-direction:column;gap:var(--play-area-reaction-gap)}.play-area__action-buttons{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:var(--play-area-reaction-button-gap);flex-wrap:nowrap;flex:1;width:100%;background:#1e293b26;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:clamp(10px,1.2cqh,14px);padding:clamp(6px,.8cqh,10px) clamp(8px,1.2cqw,16px);box-sizing:border-box}.play-area__timer-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:50;width:100%;max-width:clamp(400px,60cqw,600px);display:flex;justify-content:center;pointer-events:none;margin-top:clamp(80px,12cqh,140px)}.play-area__reaction-overlay--result{align-items:center}.play-area__result-container{display:flex;align-items:center;justify-content:center;width:100%;background:#1e293bf2;border-radius:clamp(10px,1.2cqh,14px);padding:clamp(16px,2.4cqh,32px) clamp(20px,3.2cqw,40px);box-shadow:0 clamp(6px,.8cqh,10px) clamp(24px,3.2cqh,40px) #00000080;border:clamp(1px,.125cqh,2px) solid rgba(255,255,255,.1);animation:slideInFromBottom .3s ease-out;min-width:clamp(280px,32cqw,400px);max-width:clamp(400px,50cqw,500px)}.play-area__button{display:flex;align-items:center;justify-content:center;padding:clamp(10px,1.4cqh,18px) clamp(16px,2.4cqw,32px);border:none;border-radius:clamp(6px,.8cqh,10px);font-size:clamp(12px,1.4cqh,16px);font-weight:600;cursor:pointer;transition:all .2s ease;background:#ffffff0d;color:#94a3b8;white-space:nowrap;flex:1;min-width:0;min-height:clamp(40px,4.8cqh,56px);box-shadow:0 clamp(2px,.25cqh,4px) clamp(6px,.8cqh,10px) #0003}.play-area__button:hover:not(:disabled){background:#ffffff1a;transform:translateY(clamp(-2px,-.25cqh,-4px));box-shadow:0 clamp(4px,.5cqh,8px) clamp(10px,1.2cqh,16px) #0000004d}.play-area__button--enabled{opacity:1;color:#f8fafc;cursor:pointer;font-weight:900}.play-area__button--doubt.play-area__button--enabled{background:#fbbf24cc;color:#fff;border:clamp(2px,.25cqh,4px) solid rgba(251,191,36,.8);box-shadow:0 clamp(2px,.25cqh,4px) clamp(6px,.8cqh,10px) #fbbf244d}.play-area__button--doubt.play-area__button--enabled:hover:not(:disabled){background:#fbbf24d9;border-color:#fbbf24e6;box-shadow:0 clamp(4px,.5cqh,8px) clamp(12px,1.6cqh,20px) #fbbf2466}.play-area__button--four-stop.play-area__button--enabled{background:#ef4444cc;color:#fff;border:clamp(2px,.25cqh,4px) solid rgba(239,68,68,.8);box-shadow:0 clamp(2px,.25cqh,4px) clamp(6px,.8cqh,10px) #ef44444d}.play-area__button--four-stop.play-area__button--enabled:hover:not(:disabled){background:#ef4444d9;border-color:#ef4444e6;box-shadow:0 clamp(3px,.5cqh,6px) clamp(10px,1.6cqh,16px) #ef444466}.play-area__button--four-stop:disabled{background:#475569bf;border-color:#64748bd9;color:#e2e8f0;box-shadow:0 clamp(2px,.25cqh,4px) clamp(6px,.8cqh,10px) #0003}.play-area__button--through.play-area__button--enabled{background:#94a3b8cc;color:#fff;border:clamp(2px,.25cqh,4px) solid rgba(148,163,184,.8);box-shadow:0 clamp(2px,.25cqh,4px) clamp(6px,.8cqh,10px) #94a3b84d}.play-area__button--through.play-area__button--enabled:hover:not(:disabled){background:#94a3b8d9;border-color:#94a3b8e6;box-shadow:0 clamp(3px,.5cqh,6px) clamp(10px,1.6cqh,16px) #94a3b866}.play-area__button--disabled{opacity:.4;color:#64748b;cursor:not-allowed;background:#ffffff08;border:clamp(1px,.125cqh,2px) solid rgba(255,255,255,.05)}.play-area__button--disabled:hover{transform:none;background:#ffffff08;border-color:#ffffff0d}.play-area__button:disabled{cursor:not-allowed;opacity:.4}.play-area__button:disabled:hover{transform:none;background:#ffffff08}.play-area__button-text{font-weight:500}.play-area__button--enabled .play-area__button-text{font-weight:700}:root[data-aspect=portrait] .play-area__reaction-ui{max-width:90%}:root[data-aspect=portrait] .play-area__action-buttons{flex-direction:column;width:100%}:root[data-aspect=portrait] .play-area__button{width:100%;min-width:0}.play-area__reaction-preparing{display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.4cqh,12px);width:100%;color:#f8fafce6;font-size:clamp(12px,1.4cqh,16px);font-weight:500;-webkit-user-select:none;user-select:none;padding:clamp(6px,.8cqh,10px) clamp(8px,1.2cqw,16px);background:#1e293b26;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:clamp(10px,1.2cqh,14px);box-sizing:border-box}.play-area__reaction-preparing-spinner{width:clamp(12px,1.4cqh,16px);height:clamp(12px,1.4cqh,16px);border-radius:50%;border:clamp(2px,.25cqh,4px) solid rgba(255,255,255,.2);border-top-color:#fffc;animation:played-cards-spin .9s linear infinite}.play-area__reaction-preparing-text{color:#f8fafce6;font-size:clamp(12px,1.4cqh,16px);font-weight:500}.play-area__reaction-waiting{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:clamp(8px,1.4cqh,12px);color:#f8fafce6;font-size:clamp(12px,1.4cqh,16px);font-weight:500;-webkit-user-select:none;user-select:none;background:#1e293b26;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:clamp(10px,1.2cqh,14px);padding:clamp(6px,.8cqh,10px) clamp(8px,1.2cqw,16px);box-sizing:border-box}.play-area__reaction-waiting-text{color:#f8fafce6;font-size:clamp(12px,1.4cqh,16px);font-weight:500}@keyframes played-cards-spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.special-effect-declaration-area-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:clamp(10px,1.6vh,16px)}.special-effect-declaration-area{padding:clamp(16px,2.6vh,32px);background-color:#000000f2;border-radius:clamp(8px,1.2vh,12px);color:#fff;max-width:clamp(320px,70vw,600px);width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 clamp(8px,1vh,16px) clamp(32px,4vh,48px) #00000080;border:clamp(1px,.2vh,2px) solid rgba(0,102,204,.4)}.special-effect-declaration-area__title{font-size:clamp(16px,2vh,24px);font-weight:700;margin-bottom:clamp(4px,.7vh,8px);text-align:center}.special-effect-declaration-area__description{font-size:clamp(14px,1.8vh,20px);margin-bottom:clamp(8px,1.4vh,16px);text-align:center;color:#ccc}.special-effect-declaration-area__rank-list{display:flex;flex-wrap:wrap;gap:clamp(4px,.7vh,8px);margin-bottom:clamp(8px,1.4vh,16px);justify-content:center}.special-effect-declaration-area__rank-button{padding:clamp(4px,.7vh,8px) clamp(8px,1.4vw,16px);background-color:#333;color:#fff;border:clamp(1px,.2vh,2px) solid #555;border-radius:clamp(3px,.5vh,6px);cursor:pointer;transition:all .2s;font-size:clamp(14px,1.8vh,20px);min-width:clamp(40px,6vw,56px)}.special-effect-declaration-area__rank-button:hover:not(:disabled){background-color:#444;border-color:#666}.special-effect-declaration-area__rank-button--selected{background-color:#06c;border-color:#08f}.special-effect-declaration-area__rank-button:disabled{opacity:.5;cursor:not-allowed}.special-effect-declaration-area__selected-ranks{margin-bottom:clamp(8px,1.4vh,16px);padding:clamp(6px,1.1vh,12px);background-color:#ffffff1a;border-radius:clamp(3px,.5vh,6px)}.special-effect-declaration-area__selected-label{font-size:clamp(14px,1.8vh,20px);margin-bottom:clamp(4px,.7vh,8px);color:#ccc}.special-effect-declaration-area__selected-list{display:flex;flex-wrap:wrap;gap:clamp(4px,.7vh,8px);margin-bottom:clamp(4px,.7vh,8px)}.special-effect-declaration-area__selected-rank{padding:clamp(2px,.4vh,6px) clamp(4px,.7vw,8px);background-color:#06c;border-radius:clamp(3px,.5vh,6px);font-weight:700}.special-effect-declaration-area__selected-count{font-size:clamp(14px,1.8vh,20px);color:gold;text-align:center}.special-effect-declaration-area__confirm-button{padding:clamp(6px,1.1vh,12px) clamp(12px,2.2vw,24px);background-color:#06c;color:#fff;border:none;border-radius:clamp(3px,.5vh,6px);font-size:clamp(14px,1.8vh,20px);font-weight:700;cursor:pointer;transition:background-color .2s;width:100%}.special-effect-declaration-area__confirm-button:hover:not(:disabled){background-color:#0052a3}.special-effect-declaration-area__confirm-button:disabled{background-color:#555;cursor:not-allowed}.game-info-area{display:flex;flex-direction:column;gap:var(--space-xs, clamp(4px, .7cqh, 10px));padding:var(--space-sm, clamp(6px, 1cqh, 14px));background:#1e293b;border-radius:var(--radius-md, clamp(6px, .9cqh, 10px));min-height:0;min-width:0;overflow:hidden;height:100%;max-height:100%;box-sizing:border-box;transition:padding .3s ease,gap .3s ease,border-radius .3s ease}.game-info-area__header{display:flex;justify-content:space-between;align-items:center;border-bottom:var(--border-thin, clamp(1px, .15cqh, 2px)) solid rgba(255,255,255,.1);margin-bottom:var(--space-xs, clamp(4px, .7cqh, 8px));flex-shrink:0;padding-bottom:var(--space-xs, clamp(4px, .7cqh, 8px));height:auto;transition:margin-bottom .3s ease,padding-bottom .3s ease}.game-info-area__title{font-size:var(--font-sm, clamp(9px, calc(12px * var(--font-scale-base, 1)), 14px));font-weight:600;color:#f8fafc;margin:0;transition:font-size .3s ease}.game-info-area__logs-container{flex:1 1 clamp(140px,26cqw,240px);overflow-y:auto;overflow-x:hidden;min-height:0;max-height:100%}.game-info-area__logs-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2xs, clamp(3px, .5cqh, 6px));transition:gap .3s ease}.game-info-area__log-item{display:flex;gap:var(--space-sm, clamp(6px, 1cqh, 10px));font-size:var(--font-xs, clamp(6px, calc(10px * var(--font-scale-sm, 1)), 12px));line-height:1.4;padding:var(--space-2xs, clamp(3px, .5cqh, 6px)) 0;border-bottom:var(--border-thin, clamp(1px, .15cqh, 2px)) solid rgba(255,255,255,.05);transition:font-size .3s ease,padding .3s ease,gap .3s ease}.game-info-area__log-time{color:#94a3b8;font-size:var(--font-xs, clamp(5px, calc(9px * var(--font-scale-sm, 1)), 11px));flex-shrink:0;min-width:clamp(24px,5cqw,60px);transition:font-size .3s ease,min-width .3s ease}.game-info-area__log-message{color:#e2e8f0;flex:1;word-break:break-word}.game-info-area__logs-empty{color:#64748b;font-size:var(--font-xs, clamp(8px, calc(10px * var(--font-scale-sm, 1)), 12px));text-align:center;padding:var(--space-lg, clamp(10px, 2cqh, 20px));transition:font-size .3s ease,padding .3s ease}.game-info-area__logs-container::-webkit-scrollbar{width:clamp(3px,.4cqw,5px)}.game-info-area__logs-container::-webkit-scrollbar-track{background:#ffffff0d;border-radius:var(--radius-sm, clamp(2px, .3cqh, 4px))}.game-info-area__logs-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:var(--radius-sm, clamp(2px, .3cqh, 4px))}.game-info-area__logs-container::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-overlay__content{display:flex;flex-direction:column;align-items:center;gap:clamp(12px,2cqh,20px);color:#fff}.loading-spinner{position:relative;width:clamp(40px,6cqh,60px);height:clamp(40px,6cqh,60px)}.spinner-ring{position:absolute;width:100%;height:100%;border:clamp(3px,.5cqh,4px) solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.spinner-ring:nth-child(2){animation-delay:-.33s;border-top-color:#60a5fa}.spinner-ring:nth-child(3){animation-delay:-.66s;border-top-color:#34d399}@keyframes spin{to{transform:rotate(360deg)}}.loading-message{font-size:calc(16px * var(--ui-font-scale));font-weight:500;text-align:center}.loading-progress{width:clamp(140px,25cqw,200px);display:flex;flex-direction:column;gap:clamp(6px,1cqh,10px)}.progress-bar{width:100%;height:clamp(6px,.9cqh,10px);background:#fff3;border-radius:clamp(3px,.5cqh,5px);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#60a5fa,#34d399);transition:width .3s ease}.progress-text{font-size:calc(12px * var(--ui-font-scale));text-align:center;opacity:.8}.loading-dots{display:flex;gap:clamp(6px,1cqh,10px)}.dot{width:clamp(6px,.9cqh,10px);height:clamp(6px,.9cqh,10px);background:#fff;border-radius:50%;animation:bounce 1.4s infinite ease-in-out}.dot:nth-child(1){animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.player-seats{--player-seats-z-index: 5;--player-seat-z-index-current: 1;--player-seat-indicator-z-index: 2;--player-seat-bg: rgba(30, 41, 59, .8);--player-seat-bg-revolution: #572424;--player-seat-bg-selecting: rgba(245, 158, 11, .15);--player-seat-border-selecting: rgba(245, 158, 11, .3);--player-seat-bg-passed: rgba(148, 163, 184, .2);--player-seat-bg-four-stop: rgba(239, 68, 68, .2);--player-seat-animation-duration: 2s}.player-seats{position:relative;width:100%;height:100%;display:flex;flex-direction:row;gap:min(var(--player-seat-gap),clamp(2px,.35cqh,6px));pointer-events:none;min-height:0;max-height:100%;overflow:visible;box-sizing:border-box;align-items:center}.player-seat{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;pointer-events:auto;min-width:var(--player-seat-min-inline);max-width:none;width:100%;flex:1 1 0;white-space:normal;flex-shrink:1;box-sizing:border-box;height:100%;max-height:100%;overflow:hidden}.player-seats-area--top .player-seats{justify-content:space-between}.player-seats-area--bottom .player-seats{justify-content:space-between;padding-left:0;padding-right:0;gap:var(--player-seat-bottom-gap, var(--player-seat-gap))}.player-seat--current{z-index:var(--player-seat-z-index-current)}.player-seat--selecting-cards{background:var(--player-seat-bg-selecting);border:var(--player-seat-select-border-width) solid var(--player-seat-border-selecting);border-radius:var(--player-seat-select-radius);animation:pulse-border var(--player-seat-animation-duration) ease-in-out infinite}@keyframes pulse-border{0%,to{border-color:var(--player-seat-border-selecting);box-shadow:0 0 #f59e0b66}50%{border-color:#f59e0b99;box-shadow:0 0 0 var(--hand-area-highlight-shadow-size) #f59e0b1a}}.player-seat__indicator-wrapper{position:absolute;left:50%;transform:translate(-50%);z-index:var(--player-seat-indicator-z-index)}.player-seat__indicator-wrapper--top-stack{bottom:var(--player-seat-indicator-offset);top:auto}.player-seat__indicator-wrapper--bottom-stack{top:var(--player-seat-indicator-offset);bottom:auto}.player-seat__indicator{display:flex;align-items:center;justify-content:center;width:var(--player-seat-indicator-size);height:var(--player-seat-indicator-size);padding:var(--player-seat-indicator-padding);box-sizing:border-box;border-radius:50%;background:#000000b3;border:var(--player-seat-indicator-border-width) solid;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.player-seat__indicator--turn{border-color:#fbbf24;background:#fbbf2433}.player-seat__indicator--play{border-color:#4ade80;background:#4ade8033}.player-seat__indicator--four-stop{border-color:#f59e0b;background:#f59e0b33}.player-seat__indicator--four-stop-selecting{border-color:#f59e0b;background:#f59e0b4d;width:auto;min-width:var(--player-seat-four-stop-min-inline);height:var(--player-seat-four-stop-height);padding:0 var(--player-seat-four-stop-padding-inline);border-radius:var(--radius-lg);gap:var(--player-seat-four-stop-gap);animation:pulse var(--player-seat-animation-duration) ease-in-out infinite}.player-seat__indicator--four-stop-selecting .player-seat__indicator-text{font-size:var(--player-seat-four-stop-font);font-weight:600;color:#f59e0b;white-space:nowrap}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.player-seat__indicator--doubt{border-color:#ef4444;background:#ef444433}.player-seat__indicator--through{border-color:#60a5fa;background:#60a5fa33}.player-seat__indicator--pass{border-color:#94a3b8;background:#94a3b833}.player-seat__content{display:grid;grid-template-rows:minmax(0,var(--player-seat-row-first-size, 1fr)) minmax(0,var(--player-seat-row-second-size, 2fr)) minmax(0,var(--player-seat-row-third-size, 1fr));align-items:stretch;justify-items:stretch;gap:var(--player-seat-content-gap);padding:var(--player-seat-content-padding);min-width:var(--player-seat-min-inline);width:100%;height:100%;box-sizing:border-box;background:var(--player-seat-bg);border-radius:var(--player-seat-select-radius);overflow:hidden;container-type:size;--player-seat-avatar-size-local: var(--player-seat-avatar-size);--player-seat-name-font: clamp(11px, 1.5cqh, 17px);--player-seat-meta-label-font: clamp(9px, 1.15cqh, 14px);--player-seat-meta-value-font: clamp(10px, 1.3cqh, 16px);--player-seat-mini-height-local: clamp(18px, 46cqh, 120px);--player-seat-mini-width-local: calc( var(--player-seat-mini-height-local) * .72 );--player-seat-row-first-size: 2fr;--player-seat-row-second-size: 4fr;--player-seat-row-third-size: 1.5fr;--player-seat-pass-font-size-local: clamp(16px, 25cqh, 64px);--player-seat-pass-letter-spacing-local: .06em}body.revolution .player-seat__content{background:var(--player-seat-bg-revolution)}.player-seat--selecting-cards .player-seat__content,body.revolution .player-seat--selecting-cards .player-seat__content{background:var(--player-seat-bg-selecting)}.player-seat--passed .player-seat__content,body.revolution .player-seat--passed .player-seat__content{background:var(--player-seat-bg-passed);opacity:.6}.player-seat--selecting-cards.player-seat--passed .player-seat__content{background:var(--player-seat-bg-selecting);opacity:1}.player-seat--through .player-seat__content,body.revolution .player-seat--through .player-seat__content{background:var(--player-seat-bg-passed);opacity:.6}.player-seat--selecting-cards.player-seat--through .player-seat__content{background:var(--player-seat-bg-selecting);opacity:1}.player-seat--four-stop .player-seat__content,body.revolution .player-seat--four-stop .player-seat__content{background:var(--player-seat-bg-four-stop);opacity:.6}.player-seat--selecting-cards.player-seat--four-stop .player-seat__content{background:var(--player-seat-bg-selecting);opacity:1}.player-seat--doubt .player-seat__content,body.revolution .player-seat--doubt .player-seat__content{background:var(--player-seat-bg-four-stop);opacity:.6}.player-seat--selecting-cards.player-seat--doubt .player-seat__content{background:var(--player-seat-bg-selecting);opacity:1}.player-seat__row{display:flex;align-items:center;gap:var(--player-seat-row-gap);width:100%;box-sizing:border-box;min-height:var(--player-seat-row-min-height, auto)}.player-seat__row--first{min-height:0}.player-seat__row--second{min-height:0;justify-content:center;overflow:hidden;position:relative}.player-seat__row--third{min-height:0;justify-content:space-evenly;gap:clamp(6px,.8cqw,12px)}.player-seat__row--meta-overlay{display:none;position:absolute;left:0;right:0;bottom:0;padding:clamp(2px,.4cqh,6px) clamp(4px,.6cqw,8px);background:linear-gradient(180deg,#0f172a00,#0f172a8c);justify-content:space-evenly;align-items:center;gap:clamp(6px,.8cqw,12px);z-index:3;pointer-events:none}.player-seat__avatar{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--player-seat-avatar-size-local);height:var(--player-seat-avatar-size-local)}.player-seat__name{font-size:var(--player-seat-name-font);font-weight:600;color:#f8fafc;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.player-seat__hand-cards{display:flex;align-items:center;gap:0;flex-wrap:nowrap;justify-content:center;width:100%;max-width:100%;overflow:hidden;padding:0;height:var(--player-seat-mini-height-local);box-sizing:border-box;--player-seat-mini-card-overlap-local: clamp(-24px, -6cqw, -10px)}.player-seat__timer{flex-shrink:0;margin-top:clamp(3px,.4cqh,5px);width:100%}.player-seat__mini-card{flex-shrink:0;margin-left:var(--player-seat-mini-card-overlap-local);transition:transform .2s ease,z-index .2s ease;position:relative}.player-seat__mini-card:first-child{margin-left:0}.player-seat__mini-card:hover{transform:translateY(clamp(-3px,-.4cqh,-5px)) scale(1.15);z-index:10}.player-seat__hand-count-overflow{font-size:clamp(9px,1cqh,12px);color:#94a3b8;padding:clamp(2px,.25cqh,4px) clamp(3px,.4cqw,5px);background:#94a3b833;border-radius:clamp(4px,.5cqh,6px);white-space:nowrap;margin-left:clamp(-6px,-.8cqw,-10px);z-index:5;position:relative}.player-seat__mini-card.card--mini{width:var(--player-seat-mini-width-local);height:var(--player-seat-mini-height-local);font-size:var(--player-seat-mini-card-font-size)}.player-seat__mini-card.card--mini .card__front,.player-seat__mini-card.card--mini .card__back{justify-content:flex-start;align-items:center;padding-left:clamp(2px,.3cqw,4px);padding-right:0;padding-top:0;padding-bottom:0}.player-seat__mini-card.card--mini .card-simple-rank,.player-seat__mini-card.card--mini .card-simple-suit{font-size:clamp(10px,calc(var(--player-seat-mini-height-local) * .7),60px);font-weight:700;line-height:1.1}.player-seat__mini-card.card--mini .card__center{justify-content:flex-start;align-items:center}.player-seat__mini-card.card--mini .card-simple-pattern{justify-content:center;align-items:center;gap:clamp(1px,.3cqh,3px)}.player-seat__hand-cards>.player-seat__mini-card:last-of-type.card--revealed .card__front,.player-seat__hand-cards>.player-seat__mini-card:last-of-type.card--revealed .card__back{justify-content:center;padding-left:0}.player-seat__hand-cards>.player-seat__mini-card:last-of-type.card--revealed .card__center{justify-content:center}.player-seat__doubt-tickets{display:flex;align-items:center;gap:clamp(2px,.25cqh,4px);font-size:clamp(10px,1.2cqh,14px);color:#fbbf24;flex-shrink:0}.player-seat__hand-count{font-size:clamp(10px,1.2cqh,14px);color:#94a3b8;flex-shrink:0}.player-seat__meta-item{display:inline-flex;align-items:center;gap:clamp(4px,.6cqh,8px);white-space:nowrap}.player-seat__meta-icon{display:none;align-items:center;justify-content:center}.player-seat__meta-label{font-size:var(--player-seat-meta-label-font);color:#94a3b8;font-weight:600}.player-seat__meta-value{font-size:var(--player-seat-meta-value-font);color:#f8fafc;font-weight:700}@container (min-height: 90px){.player-seat__content{--player-seat-avatar-size-local: calc( var(--player-seat-avatar-size) * 1.15 );--player-seat-name-font: clamp(14px, 1.85cqh, 21px);--player-seat-meta-label-font: clamp(11px, 1.35cqh, 16px);--player-seat-meta-value-font: clamp(12px, 1.5cqh, 18px);--player-seat-pass-font-size-local: clamp(18px, 25cqh, 72px);--player-seat-row-second-size: 4.5fr;--player-seat-row-third-size: 1.4fr}}@container (min-height: 120px){.player-seat__content{--player-seat-avatar-size-local: calc( var(--player-seat-avatar-size) * 1.3 );--player-seat-name-font: clamp(16px, 2.1cqh, 24px);--player-seat-meta-label-font: clamp(12px, 1.5cqh, 18px);--player-seat-meta-value-font: clamp(13px, 1.7cqh, 20px);--player-seat-pass-font-size-local: clamp(20px, 25cqh, 80px);--player-seat-row-second-size: 5fr;--player-seat-row-third-size: 1.3fr}}@container (max-height: 70px){.player-seat__content{--player-seat-avatar-size-local: calc( var(--player-seat-avatar-size) * .78 );--player-seat-name-font: clamp(5px, .8cqh, 9px);--player-seat-meta-label-font: clamp(7px, .9cqh, 11px);--player-seat-meta-value-font: clamp(8px, 1cqh, 12px);--player-seat-mini-height-local: clamp(14px, 42cqh, 70px);--player-seat-row-first-size: 1.7fr;--player-seat-row-second-size: 4fr;--player-seat-row-third-size: 1.6fr;--player-seat-pass-font-size-local: clamp(14px, 22cqh, 48px)}.player-seat__row--third{display:none}.player-seat__row--meta-overlay{display:flex}.player-seat__meta-item--doubt .player-seat__meta-label{display:none}.player-seat__meta-item--doubt .player-seat__meta-icon{display:inline-flex}}@container (max-height: 85px){.player-seat__hand-cards{--player-seat-mini-card-overlap-local: clamp(-18px, -4.5cqw, -8px)}}@container (max-height: 60px){.player-seat__content{--player-seat-avatar-size-local: calc( var(--player-seat-avatar-size) * .62 );--player-seat-name-font: clamp(4px, .7cqh, 8px);--player-seat-meta-label-font: clamp(6px, .8cqh, 10px);--player-seat-meta-value-font: clamp(7px, .9cqh, 11px);--player-seat-mini-height-local: clamp(12px, 38cqh, 60px);--player-seat-row-first-size: 1.5fr;--player-seat-row-second-size: 4fr;--player-seat-row-third-size: 1.4fr;--player-seat-pass-font-size-local: clamp(12px, 20cqh, 40px)}.player-seat__row--third{display:none}.player-seat__row--meta-overlay{display:flex}.player-seat__meta-item--doubt .player-seat__meta-label{display:none}.player-seat__meta-item--doubt .player-seat__meta-icon{display:inline-flex}}@container (max-width: 140px){.player-seat__content{--player-seat-name-font: clamp(8px, 1.05cqh, 12px);--player-seat-meta-label-font: clamp(7px, .9cqh, 11px);--player-seat-meta-value-font: clamp(8px, 1cqh, 12px);--player-seat-mini-height-local: clamp(12px, 40cqh, 62px)}.player-seat__row--third{display:none}.player-seat__row--meta-overlay{display:flex}.player-seat__meta-item--doubt .player-seat__meta-label{display:none}.player-seat__meta-item--doubt .player-seat__meta-icon{display:inline-flex}}.player-seat__pass-indicator{position:absolute;top:65%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:100%;font-size:var(--player-seat-pass-font-size-local);font-weight:700;color:#fff;text-align:center;letter-spacing:var(--player-seat-pass-letter-spacing-local);line-height:1;padding:0;text-shadow:0 2px 4px rgba(0,0,0,.5);z-index:5;pointer-events:none;white-space:nowrap}.player-seat__through-indicator{color:#94a3b8;font-size:calc(var(--player-seat-pass-font-size-local) * .9);letter-spacing:.05em}.player-seat__four-stop-indicator,.player-seat__doubt-indicator{color:#ef4444}.six-take-card-selection-panel__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--six-take-overlay-backdrop);z-index:9999;pointer-events:auto}.six-take-card-selection-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10000;background:var(--six-take-panel-bg);border:var(--six-take-panel-border-width) solid var(--six-take-panel-border-color);border-radius:var(--six-take-panel-radius);padding:var(--six-take-panel-padding);box-shadow:var(--six-take-panel-shadow);min-width:var(--six-take-panel-min-inline);max-width:var(--six-take-panel-max-inline);max-height:var(--six-take-panel-max-block);overflow-y:auto;pointer-events:auto}.six-take-card-selection-panel__content{display:flex;flex-direction:column;gap:var(--six-take-content-gap)}.six-take-card-selection-panel__title{font-size:var(--six-take-title-size);font-weight:700;margin:0;text-align:center;color:var(--six-take-accent-color)}.six-take-card-selection-panel__subtitle{font-size:var(--six-take-subtitle-size);margin:0;text-align:center;color:#fff;line-height:1.6}.six-take-card-selection-panel__note{font-size:var(--six-take-note-size);color:#94a3b8;font-style:italic}.six-take-card-selection-panel__players{display:flex;flex-direction:column;gap:var(--six-take-players-gap)}.six-take-card-selection-panel__player-group{display:flex;flex-direction:column;gap:var(--six-take-player-group-gap)}.six-take-card-selection-panel__player-name{font-size:var(--six-take-player-name-size);font-weight:700;margin:0;color:var(--six-take-accent-color);padding:var(--six-take-player-name-padding-block) var(--six-take-player-name-padding-inline);background:var(--six-take-accent-bg);border-radius:var(--six-take-player-name-radius);border-left:var(--six-take-player-name-border-width) solid var(--six-take-player-name-border-color)}.six-take-card-selection-panel__hand{display:flex;flex-wrap:wrap;gap:var(--six-take-hand-gap);justify-content:flex-start;padding:var(--six-take-hand-padding);background:var(--six-take-hand-bg);border-radius:var(--six-take-hand-radius);min-height:var(--six-take-hand-min-block)}.six-take-card-selection-panel__card{cursor:pointer;transition:all .2s ease;position:relative;border-radius:var(--six-take-card-radius)}.six-take-card-selection-panel__card:hover{transform:translateY(calc(-1 * var(--six-take-card-hover-translate)))}.six-take-card-selection-panel__card.card--selected{transform:translateY(calc(-1 * var(--six-take-card-hover-translate))) scale(var(--six-take-card-selected-scale));box-shadow:var(--six-take-card-selected-shadow);z-index:10;border-radius:var(--six-take-card-radius)}.six-take-card-selection-panel__card.card--selected.card--face-down{background:linear-gradient(135deg,#3b82f633,#3b82f60d)}.six-take-card-selection-panel__card.card--selected.card--face-down:after{content:"✓";position:absolute;top:clamp(3px,.5cqh,6px);right:clamp(3px,.5cqw,6px);width:var(--six-take-card-checkmark-size);height:var(--six-take-card-checkmark-size);background:var(--six-take-card-checkmark-bg);color:var(--six-take-card-checkmark-color);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--six-take-card-checkmark-font-size);font-weight:700;z-index:20;box-shadow:0 2px 8px #3b82f680;animation:checkmark-appear .3s ease-out}@keyframes checkmark-appear{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.six-take-card-selection-panel__selected-count{font-size:var(--six-take-selected-count-size);color:var(--six-take-selected-count-color);text-align:center;font-weight:700;padding:var(--six-take-selected-count-padding-block) var(--six-take-selected-count-padding-inline);animation:text-pulse 2s ease-in-out infinite}@keyframes text-pulse{0%,to{opacity:.5}50%{opacity:1}}.six-take-card-selection-panel__confirm-button{padding:var(--six-take-confirm-padding-block) var(--six-take-confirm-padding-inline);background-color:var(--six-take-confirm-bg);color:#fff;border:none;border-radius:var(--six-take-card-radius);font-size:var(--six-take-confirm-font-size);font-weight:700;cursor:pointer;transition:background-color .2s;width:100%}.six-take-card-selection-panel__confirm-button:hover{background-color:var(--six-take-confirm-bg-hover)}.six-take-card-selection-panel__confirm-button:disabled{background-color:var(--six-take-confirm-bg-disabled);cursor:not-allowed}.game-log-dialog .modal{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.game-log-dialog .modal__content{padding:0;max-height:var(--game-log-modal-max-height);overflow:hidden;display:flex;flex-direction:column}.game-log-dialog__content{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.game-log-dialog .game-info-area{height:100%;min-height:var(--game-log-panel-min-height);max-height:var(--game-log-panel-max-height);border-radius:0;background:transparent}.game-log-dialog .game-info-area__logs-container{padding:var(--game-log-padding-block) var(--game-log-padding-inline);padding-top:var(--game-log-padding-top-no-title);max-height:calc(var(--game-log-panel-max-height) - var(--game-log-height-offset));overflow-y:auto}.game-log-dialog .game-info-area__log-item{font-size:var(--game-log-item-font-size);padding:var(--game-log-item-padding-block) 0}.game-log-dialog .game-info-area__log-time{font-size:var(--game-log-time-font-size);min-width:var(--game-log-time-min-inline)}.game-log-dialog .game-info-area__log-message{font-size:var(--game-log-message-font-size)}.game-rules-section{width:100%;max-width:var(--home-max-width);margin:0 auto;padding:0 var(--home-section-padding);margin-bottom:var(--home-margin-bottom);box-sizing:border-box;--game-rules-anchor-offset: calc(var(--page-header-height, 70px) + 16px)}.game-rules-section__title{font-size:clamp(1.5rem,5vw,2.5rem);font-weight:700;color:#fff;text-align:center;margin-bottom:2rem;text-shadow:0 2px 4px rgba(0,0,0,.5)}.game-rules-section__container{display:grid;grid-template-rows:auto 1fr;gap:2rem;background:#1e293bcc;border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000004d}.game-rules-section__nav{position:sticky;top:2rem;height:fit-content;z-index:10}.game-rules-section__nav-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem;justify-content:center}.game-rules-section__nav-item{margin:0}.game-rules-section__nav-button{padding:.75rem 1.25rem;background:#3b82f633;border:1px solid rgba(59,130,246,.3);border-radius:8px;color:#e2e8f0;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center;box-sizing:border-box;white-space:nowrap}.game-rules-section__nav-button:hover{background:#3b82f64d;border-color:#3b82f680;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.game-rules-section__nav-button--active{background:#3b82f666;border-color:#3b82f699;color:#fff;font-weight:600}.game-rules-section__content{min-height:400px;background:#0f172ab3;border-radius:12px;padding:2.5rem;box-sizing:border-box;box-shadow:inset 0 2px 8px #0003;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.game-rules-section__content::-webkit-scrollbar{display:none}.game-rules-section__content{-ms-overflow-style:none;scrollbar-width:none}.game-rules-section__loading,.game-rules-section__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#e2e8f0;gap:1rem}.game-rules-section__error{color:#f87171}.game-rules-section__markdown{color:#e2e8f0;line-height:1.9;font-size:1rem;scroll-behavior:smooth;text-align:left;max-width:100%}.game-rules-section__h1{font-size:2rem;font-weight:700;color:#fff;margin-top:0;margin-bottom:2rem;padding-bottom:.75rem;padding-left:0;border-bottom:3px solid rgba(59,130,246,.4);scroll-margin-top:var(--game-rules-anchor-offset);position:relative;text-align:left}.game-rules-section__h1:before{content:"";position:absolute;left:0;bottom:-3px;width:60px;height:3px;background:#3b82f6cc;border-radius:2px}.game-rules-section__h1:hover .game-rules-section__anchor{opacity:1}.game-rules-section__h2{font-size:1.5rem;font-weight:600;color:#e2e8f0;margin-top:2.5rem;margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:2px solid rgba(59,130,246,.25);scroll-margin-top:var(--game-rules-anchor-offset);position:relative;padding-left:.75rem;border-left:3px solid rgba(59,130,246,.3);text-align:left}.game-rules-section__h2:hover .game-rules-section__anchor{opacity:1}.game-rules-section__h3{font-size:1.25rem;font-weight:600;color:#e2e8f0;margin-top:2rem;margin-bottom:1rem;scroll-margin-top:var(--game-rules-anchor-offset);padding-left:.75rem;border-left:2px solid rgba(59,130,246,.2);text-align:left}.game-rules-section__h3:hover .game-rules-section__anchor{opacity:1}.game-rules-section__h4{font-size:1.1rem;font-weight:600;color:#e2e8f0;margin-top:1.5rem;margin-bottom:.75rem;scroll-margin-top:var(--game-rules-anchor-offset);padding-left:.75rem;border-left:2px solid rgba(59,130,246,.16);text-align:left}.game-rules-section__h4:hover .game-rules-section__anchor{opacity:1}.game-rules-section__anchor{position:absolute;left:-1.5rem;top:50%;transform:translateY(-50%);opacity:0;transition:opacity .2s ease;color:#3b82f699;text-decoration:none;font-size:1.2rem;font-weight:400}.game-rules-section__anchor:hover{color:#3b82f6e6}.game-rules-section__p{margin-bottom:1.25rem;color:#e2e8f0;line-height:1.9;text-align:left}.game-rules-section__p strong{color:#fbbf24;font-weight:600}.game-rules-section__ul,.game-rules-section__ol{margin-bottom:1.5rem;padding-left:2.5rem;color:#e2e8f0;text-align:left}.game-rules-section__li{margin-bottom:.75rem;color:#e2e8f0;line-height:1.8;position:relative}.game-rules-section__ul .game-rules-section__li::marker{color:#3b82f699}.game-rules-section__ol .game-rules-section__li::marker{color:#3b82f699;font-weight:600}.game-rules-section__table-wrapper{overflow-x:auto;margin:2rem 0;border-radius:8px;box-shadow:0 4px 12px #0003}.game-rules-section__table{width:100%;border-collapse:collapse;background:#1e293b99;border-radius:8px;overflow:hidden;min-width:300px}.game-rules-section__thead{background:linear-gradient(135deg,#3b82f666,#3b82f64d)}.game-rules-section__th{padding:1rem 1.25rem;text-align:left;font-weight:600;color:#fff;border-bottom:2px solid rgba(59,130,246,.6);font-size:.95rem;letter-spacing:.5px}.game-rules-section__td{padding:.875rem 1.25rem;border-bottom:1px solid rgba(59,130,246,.15);color:#e2e8f0;line-height:1.6}.game-rules-section__tr:last-child .game-rules-section__td{border-bottom:none}.game-rules-section__tr:hover{background:#3b82f61a}.game-rules-section__blockquote{margin:2rem 0;padding:1.25rem 1.75rem;border-left:4px solid rgba(59,130,246,.6);background:#3b82f61f;border-radius:8px;color:#e2e8f0;font-style:italic;box-shadow:0 2px 8px #00000026;line-height:1.8;text-align:left}.game-rules-section__code{background:#0006;padding:.25rem .5rem;border-radius:4px;font-family:Courier New,Consolas,Monaco,monospace;font-size:.9em;color:#fbbf24;border:1px solid rgba(251,191,36,.2)}.game-rules-section__pre{background:#00000080;padding:1.25rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0;border:1px solid rgba(59,130,246,.2);box-shadow:0 2px 8px #0003}.game-rules-section__pre .game-rules-section__code{background:transparent;padding:0;color:#e2e8f0;border:none}.game-rules-section__a{color:#60a5fa;text-decoration:none;border-bottom:1px solid rgba(96,165,250,.4);transition:all .2s ease;font-weight:500}.game-rules-section__a:hover{color:#93c5fd;border-bottom-color:#93c5fdb3;background:#60a5fa1a;padding:0 .125rem;margin:0 -.125rem;border-radius:3px}@media (max-width: 1024px){.game-rules-section__container{gap:1.5rem;padding:1.5rem}.game-rules-section__content{padding:1.5rem}.game-rules-section__anchor{left:-1.25rem;font-size:1.1rem}}@media (max-width: 768px){.game-rules-section__container{gap:1rem;padding:1rem}.game-rules-section__nav{position:sticky;top:1rem}.game-rules-section__nav-list{gap:.5rem}.game-rules-section__nav-button{padding:.5rem .75rem;font-size:.85rem}.game-rules-section__content{padding:1rem}.game-rules-section__h1{font-size:1.5rem;padding-left:0}.game-rules-section__h2{font-size:1.25rem;padding-left:.5rem}.game-rules-section__h3{font-size:1.1rem;padding-left:.5rem}.game-rules-section__h4{font-size:1rem;padding-left:.5rem}.game-rules-section__anchor{left:-1rem;font-size:1rem}.game-rules-section__ul,.game-rules-section__ol{padding-left:1.5rem}.game-rules-section__table-wrapper{margin:1.5rem -1rem;border-radius:0}}@media (max-width: 480px){.game-rules-section{padding:0 1rem}.game-rules-section__container{padding:1rem}.game-rules-section__content{padding:.75rem}.game-rules-section__nav-button{padding:.5rem;font-size:.8rem}.game-rules-section__h1{font-size:1.25rem;margin-bottom:1.5rem}.game-rules-section__h2{font-size:1.1rem;margin-top:2rem}.game-rules-section__h3{font-size:1rem;margin-top:1.5rem}.game-rules-section__h4{font-size:.95rem;margin-top:1.25rem}.game-rules-section__p{font-size:.9rem;margin-bottom:1rem}.game-rules-section__anchor{left:-.75rem;font-size:.9rem}.game-rules-section__table-wrapper{margin:1rem -.75rem}.game-rules-section__th,.game-rules-section__td{padding:.5rem .75rem;font-size:.85rem}}:root{--player-seats-area-z-index: 5}.player-seats-area{position:relative;width:100%;height:100%;min-height:0;z-index:var(--player-seats-area-z-index);overflow:hidden;padding:var(--player-seats-area-padding);box-sizing:border-box;pointer-events:var(--player-seats-area-pointer-events);display:flex;align-items:center;justify-content:center}.player-seats-area--top,.player-seats-area--bottom{flex-shrink:0;overflow:visible}.player-seats-area--top{height:100%;min-height:0}.player-seats-area--bottom{height:100%;min-height:0;margin-bottom:var(--player-seats-area-margin)}.game-notification{position:relative;display:flex;flex-direction:column;gap:var(--notification-gap);max-width:var(--notification-max-inline-size);width:100%;pointer-events:none}.game-notification--fixed{position:fixed;inset-block-start:var(--notification-fixed-inset);inset-inline-end:var(--notification-fixed-inset);z-index:var(--layer-overlay, 1100);width:auto;max-width:var(--notification-max-inline-size);pointer-events:none}:root[data-aspect=portrait] .game-notification--fixed,:root[data-aspect=standard] .game-notification--fixed{inset-inline-start:var(--notification-fixed-inset);inset-inline-end:var(--notification-fixed-inset);width:calc(100% - (var(--notification-fixed-inset) * 2));max-width:none}.notification{display:flex;align-items:flex-start;gap:var(--notification-gap);padding:var(--notification-padding-block) var(--notification-padding-inline);background:#fff;border:var(--notification-border-width, clamp(1px, .125cqh, 2px)) solid #e2e8f0;border-radius:var(--notification-radius, clamp(6px, .5cqh, 10px));box-shadow:0 var(--notification-shadow-y, clamp(4px, .5cqh, 8px)) var(--notification-shadow-blur, clamp(6px, .75cqh, 12px)) -1px #0000001a;cursor:pointer;pointer-events:auto;transition:all .3s ease;animation:slideIn .3s ease-out;position:relative;overflow:hidden}.notification:hover{transform:translate(var(--notification-hover-translate, clamp(-3px, -.4cqw, -5px)));box-shadow:0 clamp(6px,.8cqh,10px) clamp(10px,1.2cqh,16px) -2px #00000026}.notification--info{border-left:var(--notification-accent-width, clamp(3px, .4cqh, 5px)) solid #3b82f6;background:linear-gradient(135deg,#eff6ff,#dbeafe)}.notification--success{border-left:var(--notification-accent-width, clamp(3px, .4cqh, 6px)) solid #10b981;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.notification--warning{border-left:var(--notification-accent-width, clamp(3px, .4cqh, 6px)) solid #f59e0b;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.notification--error{border-left:var(--notification-accent-width, clamp(3px, .4cqh, 6px)) solid #ef4444;background:linear-gradient(135deg,#fef2f2,#fecaca)}.notification__content{flex:1;min-width:0}.notification__title{font-size:var(--notification-title-size);font-weight:600;color:#1e293b;margin-bottom:var(--notification-title-gap, clamp(3px, .4cqh, 5px));line-height:1.2}.notification__message{font-size:var(--notification-message-size);color:#64748b;line-height:1.4;margin-bottom:var(--notification-title-gap, clamp(3px, .4cqh, 5px))}.notification__close{position:absolute;top:var(--notification-close-inset, clamp(6px, .8cqh, 10px));right:var(--notification-close-inset, clamp(6px, .8cqw, 10px));width:var(--notification-close-size);height:var(--notification-close-size);border:none;background:#0000001a;color:#64748b;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--notification-close-font-size);font-weight:700;transition:all .2s ease;flex-shrink:0}.notification__close:hover{background:#0003;color:#1e293b}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeInUp{0%{transform:translate(-50%,-40%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.played-cards__notification .notification{animation:fadeInUp .3s ease-out}:root[data-aspect=portrait] .notification,:root[data-aspect=standard] .notification{gap:var(--space-xs)}.game-settings-menu{position:absolute;top:calc(100% + 8px);right:0;background:#1e293bf2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:var(--settings-menu-border-width) solid rgba(255,255,255,.1);border-radius:var(--settings-menu-radius);box-shadow:0 4px 12px #0000004d;min-width:var(--settings-menu-min-inline);z-index:1000;overflow:hidden}.game-settings-menu__item{width:100%;display:flex;align-items:center;gap:var(--settings-menu-item-gap);padding:var(--settings-menu-item-padding-block) var(--settings-menu-item-padding-inline);border:none;background:transparent;color:#fff;cursor:pointer;transition:background-color .2s ease;text-align:left;font-size:calc(14px * var(--ui-font-scale))}.game-settings-menu__item:hover{background:#ffffff1a}.game-settings-menu__item:active{background:#ffffff26}.game-settings-menu__icon{flex-shrink:0;width:var(--settings-menu-icon-size);height:var(--settings-menu-icon-size)}.game-settings-menu__label{flex:1;white-space:nowrap}.game-rules-display-modal__content{max-height:70cqh;overflow-y:auto;padding:0}.game-rules-display-modal__content::-webkit-scrollbar{width:var(--rules-scrollbar-width, clamp(6px, .8cqw, 10px))}.game-rules-display-modal__content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:var(--rules-scrollbar-radius, clamp(3px, .5cqh, 6px))}.game-rules-display-modal__content::-webkit-scrollbar-thumb{background:#fff3;border-radius:var(--rules-scrollbar-radius, clamp(3px, .5cqh, 6px))}.game-rules-display-modal__content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.game-rules-display-modal__content .game-rules-section__nav{position:static;top:auto}.game-rules-display-modal__scroll-top-button{position:fixed;bottom:var(--game-rules-scroll-button-offset);right:var(--game-rules-scroll-button-offset);width:var(--game-rules-scroll-button-size);height:var(--game-rules-scroll-button-size);border-radius:50%;background:#3b82f6e6;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 var(--rules-scroll-button-shadow-y, clamp(3px, .5cqh, 6px)) var(--rules-scroll-button-shadow-blur, clamp(10px, 1.6cqh, 16px)) #0000004d;transition:all .3s ease,opacity .4s ease,transform .4s ease;z-index:1000;padding:0;opacity:0;transform:translateY(var(--rules-scroll-button-enter-offset, clamp(6px, 1cqh, 10px))) scale(.9);pointer-events:none}.game-rules-display-modal__scroll-top-button.game-rules-display-modal__scroll-top-button--visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.game-rules-display-modal__scroll-top-button--visible:hover{background:#3b82f6;transform:translateY(var(--rules-scroll-button-hover-offset, clamp(-2px, -.25cqh, -4px))) scale(1);box-shadow:0 clamp(4px,.6cqh,8px) clamp(12px,2cqh,20px) #0006}.game-rules-display-modal__scroll-top-button--visible:active{transform:translateY(0) scale(1);box-shadow:0 clamp(2px,.3cqh,4px) clamp(6px,1cqh,10px) #0000004d}.special-effect-announcement{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-overlay, 1100);display:grid;place-items:center;padding:var(--layout-overlay-safe-inset, clamp(12px, 2.5vh, 24px));pointer-events:none}.special-effect-announcement__content{inline-size:min(var(--effect-announcement-max-inline, clamp(320px, 50vw, 600px)),calc(100% - (var(--layout-overlay-safe-inset, clamp(12px, 2.5vh, 24px)) * 2)));display:flex;flex-direction:column;align-items:center;gap:var(--effect-announcement-gap, clamp(8px, 1vh, 12px));text-align:center;color:#fff;background:var(--surface-overlay, rgba(18, 18, 18, .92));border:clamp(1px,.15vh,2px) solid var(--surface-overlay-border, rgba(255, 255, 255, .18));border-radius:var(--effect-announcement-radius, clamp(8px, 1vh, 12px));padding-block:var(--effect-announcement-padding-block, clamp(12px, 1.6vh, 20px));padding-inline:var(--effect-announcement-padding-inline, clamp(16px, 2vw, 24px));box-shadow:var(--shadow-overlay, 0 1.5rem 3rem rgba(0, 0, 0, .35))}.special-effect-announcement__title{font-size:var(--font-size-lg);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffc83d}.special-effect-announcement__player{font-size:var(--font-size-xl);font-weight:600}.special-effect-announcement__subtitle{font-size:var(--font-size-sm);color:#fffc}.special-effect-announcement__ranks{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--effect-announcement-rank-gap)}.special-effect-announcement__rank-badge{background:linear-gradient(135deg,#ff8a3d,#ffb347);padding:calc(var(--space-xs, clamp(3px, .45vh, 7px)) * .75) var(--space-lg, clamp(9px, 1.15vh, 18px));border-radius:clamp(999px,100vh,9999px);font-weight:600;font-size:var(--font-size-base, clamp(11px, .8vh, 17px));min-inline-size:var(--effect-announcement-rank-min-inline, clamp(40px, 6vw, 60px))}.special-effect-announcement__message{font-size:var(--font-size-base);line-height:1.4}.developer-mode-toggle{position:fixed;top:clamp(8px,1vh,16px);right:clamp(8px,1vw,16px);z-index:10000;background:#000c;padding:clamp(6px,.8vh,12px) clamp(8px,1vw,16px);border-radius:clamp(4px,.5vh,6px);border:clamp(1px,.15vh,2px) solid #ff6b6b}.developer-mode-toggle__indicator{display:flex;align-items:center;color:#fff;font-size:clamp(10px,1.2vh,14px);font-weight:700}.developer-mode-toggle__text{-webkit-user-select:none;user-select:none;color:#ff6b6b}.developer-cpu-reaction-control{position:fixed;bottom:clamp(16px,2vh,24px);right:clamp(16px,2vw,24px);z-index:10000;background:#000000e6;border:clamp(1px,.15vh,2px) solid #ff6b6b;border-radius:clamp(6px,.8vh,10px);padding:clamp(12px,1.6vh,20px);min-width:clamp(280px,35vw,400px);max-width:clamp(320px,50vw,480px);box-shadow:0 clamp(4px,.5vh,8px) clamp(12px,1.5vh,20px) #0000004d}.developer-cpu-reaction-control__header{margin-bottom:clamp(10px,1.2vh,16px);padding-bottom:clamp(6px,.8vh,12px);border-bottom:clamp(1px,.15vh,2px) solid #ff6b6b}.developer-cpu-reaction-control__title{color:#ff6b6b;font-size:clamp(14px,1.8vh,20px);font-weight:700}.developer-cpu-reaction-control__content{display:flex;flex-direction:column;gap:clamp(10px,1.2vh,16px)}.developer-cpu-reaction-control__player{display:flex;flex-direction:column;gap:clamp(6px,.8vh,12px);padding:clamp(6px,.8vh,12px);background:#ffffff0d;border-radius:clamp(4px,.5vh,6px)}.developer-cpu-reaction-control__player-name{color:#fff;font-size:clamp(12px,1.5vh,18px);font-weight:700}.developer-cpu-reaction-control__buttons{display:flex;gap:clamp(6px,.8vh,12px);flex-wrap:wrap}.developer-cpu-reaction-control__button{flex:1;min-width:clamp(70px,9vw,100px);padding:clamp(6px,.8vh,12px) clamp(10px,1.2vw,16px);border:none;border-radius:clamp(4px,.5vh,6px);cursor:pointer;font-size:clamp(12px,1.5vh,18px);font-weight:700;transition:all .2s}.developer-cpu-reaction-control__button:disabled{opacity:.5;cursor:not-allowed}.developer-cpu-reaction-control__button--four-stop{background:#4ecdc4;color:#000}.developer-cpu-reaction-control__button--four-stop:hover:not(:disabled){background:#3ab5ad}.developer-cpu-reaction-control__button--doubt{background:#ff6b6b;color:#fff}.developer-cpu-reaction-control__button--doubt:hover:not(:disabled){background:#ff5252}.developer-cpu-reaction-control__button--through{background:#95a5a6;color:#fff}.developer-cpu-reaction-control__button--through:hover:not(:disabled){background:#7f8c8d}.game-layout-frame{width:100%;height:100%;min-height:0;display:flex;align-items:center;justify-content:center;background:#050505;box-sizing:border-box;--game-layout-frame-pad-block: 0px;--game-layout-frame-pad-inline: 0px;padding-block:0;padding-inline:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#64748b #1e293b}.game-layout-frame::-webkit-scrollbar{height:8px}.game-layout-frame::-webkit-scrollbar-track{background:#1e293b;border-radius:4px}.game-layout-frame::-webkit-scrollbar-thumb{background:#64748b;border-radius:4px}.game-layout-frame::-webkit-scrollbar-thumb:hover{background:#94a3b8}.game-layout-frame__min-size-warning{position:fixed;top:0;left:0;right:0;background:#ffc107f2;color:#000;padding:clamp(8px,1cqh,12px);text-align:center;z-index:10000;font-size:clamp(12px,1.5cqh,14px);font-weight:600;box-shadow:0 2px 8px #0003;display:none}@media (max-width: 479px){.game-layout-frame__min-size-warning{display:block}}.game-layout{display:grid;--layout-row-top: 2fr;--layout-row-middle: 6fr;--layout-row-hand: 3fr;grid-template-rows:minmax(var(--player-seats-area-min-height),var(--layout-row-top)) minmax(0,var(--layout-row-middle)) minmax(var(--hand-area-min-height),var(--layout-row-hand));grid-template-columns:100%;grid-template-areas:"player-seats" "main-area" "hand-area";gap:var(--play-area-gap, clamp(3px, .5cqh, 8px));position:relative;--game-layout-available-block: calc( 100% - (var(--game-layout-frame-pad-block, 0px) * 2) );--game-layout-available-inline: calc( 100vw - (var(--game-layout-frame-pad-inline, 0px) * 2) );width:min(var(--game-layout-available-inline),calc(var(--game-layout-available-block) * 16 / 9));height:min(var(--game-layout-available-block),calc(var(--game-layout-available-inline) * 9 / 16));min-width:480px;min-height:270px;aspect-ratio:16 / 9;max-width:var(--game-layout-available-inline);max-height:var(--game-layout-available-block);container-type:size;container-name:game-layout;--layout-scale: clamp(.6, calc(100cqh/1080px) , 1);--ui-density-scale: var(--layout-scale);--ui-font-scale: var(--layout-scale);--font-size-xs: clamp(8px, .5cqh, 13px);--font-size-sm: clamp(10px, .65cqh, 15px);--font-size-base: clamp(12px, .8cqh, 17px);--font-size-lg: clamp(13px, .95cqh, 19px);--font-size-xl: clamp(15px, 1.1cqh, 21px);--font-xs: var(--font-size-xs);--font-sm: var(--font-size-sm);--font-base: var(--font-size-base);--font-lg: var(--font-size-lg);--font-xl: var(--font-size-xl);--space-3xs: clamp(1px, .18cqh, 2px);--space-2xs: clamp(2px, .22cqh, 3px);--space-xs: clamp(4px, .45cqh, 7px);--space-sm: clamp(6px, .7cqh, 11px);--space-md: clamp(7px, .9cqh, 14px);--space-lg: clamp(9px, 1.15cqh, 18px);--space-xl: clamp(11px, 1.4cqh, 22px);--border-thin: clamp(1px, .125cqh, 2px);--border-medium: clamp(2px, .25cqh, 4px);--radius-sm: clamp(4px, .5cqh, 6px);--radius-md: clamp(6px, .8cqh, 10px);--radius-lg: clamp(10px, 1.2cqh, 14px);--card-base-width: clamp(30px, 5cqw, 65px);--card-base-height: clamp(42px, 7cqw, 90px);--card-hand-width: clamp(32px, 5.5cqw, 65px);--card-hand-height: clamp(44px, 7.5cqw, 90px);--card-mini-width: clamp(16px, 2.5cqw, 36px);--card-mini-height: clamp(22px, 3.5cqw, 50px);--card-small-width: clamp(28px, 4.5cqw, 58px);--card-small-height: clamp(40px, 6.5cqw, 82px);--played-cards-card-base-width: clamp(50px, 7.5cqw, 100px);--played-cards-card-base-height: clamp(70px, 10.5cqw, 140px);--card-border-radius-large: var(--radius-md);--card-shadow-medium: rgba(0, 0, 0, .15);--card-border-color: #cbd5e1;--card-padding: clamp(4px, .6cqh, 8px);--card-border-width: clamp(1px, .15cqh, 2px);--card-shadow-y: clamp(2px, .25cqh, 4px);--card-shadow-blur: clamp(6px, .8cqh, 10px);--card-corner-inset-block: clamp(4px, .6cqh, 8px);--card-corner-inset-inline: clamp(4px, .6cqw, 8px);--card-corner-gap: clamp(1px, .25cqh, 3px);--card-joker-font-size: calc(10px * var(--ui-font-scale));--card-joker-letter-spacing: calc(-1*clamp(2px, .6cqh, 4px)) ;--header-gap: clamp(6px, .9cqw, 12px);--header-min-height: clamp(24px, 3.2cqh, 48px);--header-max-height: clamp(36px, 5.5cqh, 72px);--header-padding-block: clamp(3px, .45cqh, 6px);--header-padding-inline: clamp(6px, .9cqw, 12px);--play-area-header-gap: clamp(4px, .75cqh, 7px);--play-area-title-font: clamp(7px, .85cqh, 11px);--play-area-history-radius: var(--radius-md);--play-info-gap: var(--space-xs);--play-info-row-gap: var(--space-2xs);--play-info-panel-max-width: clamp(200px, 26cqw, 300px);--play-info-font-size: clamp(7px, .9cqh, 12px);--play-info-badge-font-size: clamp(6px, .8cqh, 11px);--play-info-badge-padding-block: clamp(2px, .22cqh, 3px);--play-info-badge-padding-inline: clamp(4px, .7cqw, 8px);--play-info-separator-padding-inline: clamp(2px, .35cqw, 4px);--play-area-header-padding-bottom: var(--space-2xs);--play-area-reaction-gap: var(--space-md);--play-area-reaction-button-gap: var(--space-sm);--play-area-reaction-min-width: clamp(200px, 28cqw, 320px);--play-area-main-padding-bottom: var(--space-sm);--play-area-center-stack-padding-bottom: var(--space-md);--play-area-bottom-seats-margin-bottom: var(--space-md);--play-area-hand-area-margin-top: var(--space-2xs);--hand-area-radius: var(--radius-md);--hand-area-highlight-border-width: var(--border-thin);--hand-area-highlight-shadow-size: clamp(2px, .3cqh, 4px);--hand-area-name-font: clamp(10px, 1.2cqh, 18px);--hand-area-meta-font: clamp(9px, 1.1cqh, 16px);--hand-area-meta-gap: clamp(2px, .25cqh, 4px);--hand-area-info-icon-font: clamp(12px, 1.45cqh, 20px);--hand-area-info-text-font: clamp(9px, 1.1cqh, 16px);--hand-area-avatar-size: clamp(24px, 3cqh, 36px);--hand-area-button-padding-block: var(--space-2xs);--hand-area-button-padding-inline: var(--space-sm);--player-seat-select-border-width: var(--border-thin);--player-seat-select-radius: var(--radius-md);--player-seat-indicator-padding: clamp(2px, .25cqh, 4px);--player-seat-indicator-border-width: var(--border-medium);--player-seat-indicator-offset: clamp(-8px, -1cqh, -12px);--player-seat-four-stop-min-inline: clamp(50px, 6cqw, 70px);--player-seat-four-stop-height: clamp(20px, 2.4cqh, 28px);--player-seat-four-stop-padding-inline: clamp(6px, .8cqw, 10px);--player-seat-four-stop-gap: clamp(3px, .4cqh, 5px);--player-seat-four-stop-font: clamp(7px, .9cqh, 12px);--player-seat-pass-letter-spacing: .08em;--play-history-padding: var(--space-2xs);--play-history-gap: var(--space-2xs);--play-history-item-padding-block: var(--space-xs);--play-history-item-padding-inline: var(--space-xs);--play-history-card-gap: var(--space-3xs);--play-history-info-gap: var(--space-3xs);--play-history-item-radius: var(--radius-sm);--play-history-item-border-color: rgba(255, 255, 255, .08);--play-history-item-background: rgba(255, 255, 255, .04);--play-history-item-shadow: 0 0 0 1px rgba(255, 255, 255, 0);--play-history-latest-border-color: rgba(96, 165, 250, .6);--play-history-latest-background: rgba(96, 165, 250, .12);--play-history-latest-shadow: 0 0 0 1px rgba(96, 165, 250, .2);--play-history-title-color: #94a3b8;--play-history-player-color: #e2e8f0;--play-history-pass-background: rgba(148, 163, 184, .1);--play-history-pass-border-color: rgba(148, 163, 184, .3);--play-history-pass-text-color: #94a3b8;--play-history-arrow-color: rgba(148, 163, 184, .6);--play-history-arrow-size: 12px;--play-history-four-stop-border-color: rgba(251, 191, 36, .4);--play-history-four-stop-background: rgba(251, 191, 36, .08);--play-history-four-stop-target-border-color: rgba(220, 38, 38, .5);--play-history-four-stop-target-background: rgba(220, 38, 38, .1);--play-history-title-letter-spacing: clamp(.08px, .06cqw, .3px);--play-history-label-font: clamp(7px, .8cqh, 10px);--play-history-joker-font: clamp(6px, .7cqh, 9px);--play-history-joker-letter-spacing: clamp(-4px, -.5cqh, -2px);--play-history-joker-padding-block: clamp(1px, .125cqh, 2px);--play-history-joker-padding-inline: clamp(2px, .25cqw, 3px);--play-history-more-font: clamp(5px, .6cqh, 8px);--played-cards-min-height: clamp(130px, 16cqh, 190px);--played-cards-stack-height-factor: .55;--played-cards-stack-width-factor: .78;--played-cards-empty-text-size: var(--font-sm);--played-cards-penalty-offset: var(--space-xs);--played-cards-stage-max-inline: clamp(160px, 32cqw, 240px);--played-cards-stage-max-block: clamp( calc(var(--played-cards-min-height) * .6), 30cqh, 200px );--played-cards-stack-scale-min: 1;--played-cards-stack-scale-max: 1;--hud-gap: var(--space-3xs);--hud-indicator-padding-inline: var(--space-sm);--hud-indicator-padding-block: var(--space-3xs);--hud-indicator-font-size: var(--font-xs);--hud-wrapper-gap: var(--space-sm);--hud-wrapper-padding: var(--space-xs);--hud-wrapper-max-width: clamp(240px, 32cqw, 400px);--player-card-padding: var(--space-3xs);--player-card-gap: calc(var(--space-2xs) * .5);--player-card-min-height: clamp(20px, 2.2cqh, 26px);--player-card-name-size: calc(.65rem * var(--ui-font-scale));--player-card-doubt-size: calc(.7rem * var(--ui-font-scale));--player-card-mini-count-size: calc(.65rem * var(--ui-font-scale));--game-page-min-inline: clamp(280px, 32cqw, 400px);--game-state-gap: clamp(16px, 2cqh, 24px);--game-state-padding: clamp(16px, 2cqh, 24px);--game-state-title-size: clamp(20px, 2.4cqh, 28px);--game-state-text-size: clamp(14px, 1.6cqh, 18px);--game-state-message-max: clamp(300px, 50cqw, 600px);--game-state-subtext-size: clamp(12px, 1.4cqh, 16px);--game-state-button-padding-block: clamp(10px, 1.2cqh, 14px);--game-state-button-padding-inline: clamp(20px, 2.4cqw, 28px);--game-state-button-radius: clamp(6px, .8cqh, 10px);--game-state-button-font-size: clamp(12px, 1.4cqh, 16px);--game-state-button-min-height: clamp(36px, 4.4cqh, 48px);--card-play-suit-large-size: clamp( 34px, calc(42px * var(--font-scale-base, 1)), 50px );--six-take-overlay-backdrop: rgba(0, 0, 0, .7);--six-take-panel-bg: rgba(0, 0, 0, .95);--six-take-panel-border-color: #0066cc;--six-take-panel-border-width: calc(3px * var(--ui-density-scale));--six-take-panel-radius: calc(.75rem * var(--ui-density-scale));--six-take-panel-padding: var(--space-xl);--six-take-panel-min-inline: clamp(320px, 50vw, 600px);--six-take-panel-max-inline: 90vw;--six-take-panel-max-block: 80vh;--six-take-panel-shadow: 0 8px 32px rgba(0, 0, 0, .8);--six-take-content-gap: var(--space-md);--six-take-accent-color: #60a5fa;--six-take-accent-bg: rgba(96, 165, 250, .1);--six-take-player-name-border-color: var(--six-take-accent-color);--six-take-hand-bg: rgba(255, 255, 255, .05);--six-take-selected-count-color: #fbbf24;--six-take-confirm-bg: #0066cc;--six-take-confirm-bg-hover: #0052a3;--six-take-confirm-bg-disabled: #555;--six-take-card-selected-border-color: #3b82f6;--six-take-title-size: calc(1.5rem * var(--ui-font-scale));--six-take-subtitle-size: var(--font-base);--six-take-note-size: var(--font-sm);--six-take-players-gap: var(--space-xl);--six-take-player-group-gap: var(--space-sm);--six-take-player-name-size: calc(1.1rem * var(--ui-font-scale));--six-take-player-name-padding-block: var(--space-xs);--six-take-player-name-padding-inline: calc(var(--space-sm) * 1.25);--six-take-player-name-border-width: calc(3px * var(--ui-density-scale));--six-take-player-name-radius: calc(.375rem * var(--ui-density-scale));--six-take-hand-gap: var(--space-sm);--six-take-hand-padding: var(--space-md);--six-take-hand-min-block: clamp(120px, 15cqh, 180px);--six-take-hand-radius: calc(.5rem * var(--ui-density-scale));--six-take-selected-count-size: var(--font-base);--six-take-selected-count-padding-block: var(--space-xs);--six-take-selected-count-padding-inline: var(--space-sm);--six-take-confirm-font-size: calc(1.1rem * var(--ui-font-scale));--six-take-confirm-padding-block: var(--space-sm);--six-take-confirm-padding-inline: var(--space-xl);--six-take-card-hover-translate: calc(8px * var(--ui-density-scale));--six-take-card-selected-scale: 1.08;--six-take-card-selected-shadow: 0 0 0 4px #3b82f6, 0 0 25px rgba(59, 130, 246, .6), 0 8px 16px rgba(0, 0, 0, .3);--six-take-card-radius: calc(.5rem * var(--ui-density-scale));--six-take-card-checkmark-size: calc(24px * var(--ui-density-scale));--six-take-card-checkmark-font-size: calc(16px * var(--ui-font-scale));--six-take-card-checkmark-bg: #3b82f6;--six-take-card-checkmark-color: #ffffff;--penalty-deck-gap: var(--space-2xs);--penalty-deck-padding: var(--space-2xs);--penalty-deck-radius: calc(.5rem * var(--ui-density-scale));--penalty-deck-label-size: clamp(7px, 1cqh, 12px);--penalty-deck-card-inline: clamp(52px, 8cqw, 90px);--penalty-deck-card-block: clamp(72px, 11cqw, 126px);--penalty-deck-count-size: clamp(14px, 2.2cqh, 22px);--penalty-deck-count-suffix-size: clamp(9px, 1.3cqh, 13px);--penalty-deck-count-gap: var(--space-2xs);--revolution-indicator-padding-block: calc( .3rem * var(--ui-density-scale) );--revolution-indicator-padding-inline: calc( .65rem * var(--ui-density-scale) );--revolution-indicator-radius: calc(1rem * var(--ui-density-scale));--revolution-indicator-font-size: calc(.7rem * var(--ui-font-scale));--revolution-indicator-shadow: 0 2px 8px rgba(239, 68, 68, .3);--game-log-modal-max-height: 70vh;--game-log-panel-min-height: clamp(300px, 40cqh, 500px);--game-log-panel-max-height: 70vh;--game-log-padding-block: var(--space-sm);--game-log-padding-inline: calc(var(--space-md) * 1.25);--game-log-padding-top-no-title: var(--space-sm);--game-log-item-font-size: var(--font-xs);--game-log-item-padding-block: calc(var(--space-xs) / 2);--game-log-time-font-size: calc(.7rem * var(--ui-font-scale));--game-log-time-min-inline: 60px;--game-log-message-font-size: var(--font-xs);--game-log-height-offset: 60px;--player-list-padding: var(--space-sm);--player-list-header-margin-bottom: var(--space-2xs);--player-list-title-size: var(--font-sm);--player-list-content-gap: var(--space-2xs);--player-list-row-min-height: calc( var(--player-card-min-height) + (var(--player-card-padding, var(--space-3xs)) * 2) );--player-list-indicator-column: 20px;--player-list-indicator-size: 16px;--player-list-scrollbar-width: 6px;--notification-gap: var(--space-sm);--notification-padding-block: var(--space-sm);--notification-padding-inline: var(--space-lg);--notification-max-inline-size: clamp(280px, 40vw, 480px);--notification-fixed-inset: clamp(12px, 2.5vh, 24px);--notification-title-size: var(--font-base);--notification-message-size: var(--font-sm);--notification-close-size: calc(1.25rem * var(--ui-density-scale));--notification-close-font-size: var(--font-base);--notification-border-width: var(--border-thin);--notification-radius: var(--radius-md);--notification-shadow-y: clamp(4px, .5cqh, 8px);--notification-shadow-blur: clamp(6px, .75cqh, 12px);--notification-hover-translate: clamp(-3px, -.4cqw, -5px);--notification-accent-width: clamp(3px, .4cqh, 6px);--notification-title-gap: clamp(3px, .4cqh, 5px);--notification-close-inset: clamp(6px, .8cqh, 10px);--layout-overlay-safe-inset: clamp(12px, 2.5vh, 24px);--effect-announcement-max-inline: clamp(320px, 50vw, 600px);--effect-announcement-padding-block: clamp(12px, 1.6vh, 20px);--effect-announcement-padding-inline: clamp(16px, 2vw, 24px);--effect-announcement-radius: clamp(8px, 1vh, 12px);--effect-announcement-gap: clamp(8px, 1vh, 12px);--effect-announcement-rank-gap: clamp(6px, .8vh, 10px);--effect-announcement-rank-min-inline: clamp(40px, 6vw, 60px);--reaction-timer-size: clamp(80px, 10cqh, 120px);--reaction-timer-blur: clamp(6px, .8cqh, 10px);--reaction-timer-padding: clamp(6px, .8cqh, 10px);--reaction-timer-font-size: clamp( .75rem, calc(1rem * var(--ui-font-scale)), 1.25rem );--reaction-timer-text-size: clamp( 16px, calc(24px * var(--ui-font-scale)), 32px );--reaction-timer-stroke-width: clamp( 4px, calc(6px * var(--ui-density-scale)), 8px );--reaction-timer-shadow: calc(4px * var(--ui-density-scale));--reaction-timer-marker-thin: clamp( .5px, calc(1px * var(--ui-density-scale)), 1.5px );--reaction-timer-marker-bold: clamp( 1px, calc(2px * var(--ui-density-scale)), 3px );--reaction-timer-marker-glow: calc(2px * var(--ui-density-scale));--reaction-result-min-height: clamp(48px, 6cqh, 82px);--reaction-result-font-size: calc(.9rem * var(--ui-font-scale));--rules-scrollbar-width: clamp(6px, .8cqw, 10px);--rules-scrollbar-radius: var(--radius-sm);--rules-scroll-button-shadow-y: clamp(3px, .5cqh, 6px);--rules-scroll-button-shadow-blur: clamp(10px, 1.6cqh, 16px);--rules-scroll-button-enter-offset: clamp(6px, 1cqh, 10px);--rules-scroll-button-hover-offset: clamp(-2px, -.25cqh, -4px);--game-rules-scroll-button-size: clamp(32px, 5cqh, 40px);--game-rules-scroll-button-offset: clamp(8px, 1.6cqh, 12px);--modal-content-gap: var(--space-lg);--modal-list-gap: var(--space-md);--modal-item-padding-block: var(--space-md);--modal-item-padding-inline: var(--space-lg);--modal-title-size: var(--font-xl);--modal-heading-size: var(--font-lg);--modal-body-size: var(--font-base);--result-modal-content-gap: var(--space-lg);--result-modal-content-padding: var(--space-md);--result-modal-title-size: var(--font-xl);--result-modal-winner-gap: var(--space-md);--result-modal-winner-padding-block: var(--space-md);--result-modal-winner-padding-inline: var(--space-xl);--result-modal-winner-name-size: var(--font-xl);--result-modal-points-padding-block: var(--space-md);--result-modal-points-padding-inline: var(--space-lg);--result-modal-points-gap: var(--space-md);--result-modal-points-rank-size: var(--font-lg);--result-modal-points-rank-min-inline: 60px;--result-modal-points-rank-padding-block: var(--space-xs);--result-modal-points-rank-padding-inline: var(--space-sm);--result-modal-points-name-size: var(--font-base);--result-modal-points-value-size: var(--font-lg);--result-modal-close-padding-block: var(--space-sm);--result-modal-close-padding-inline: var(--space-xl);--result-modal-close-font-size: var(--font-base);--result-modal-header-gap: var(--space-sm);--result-modal-header-direction: row;--result-modal-header-align: center;--result-modal-game-result-padding: var(--space-lg);--result-modal-game-ranking-gap: var(--space-sm);--result-modal-game-ranking-flex-wrap: nowrap;--result-modal-game-ranking-padding-block: var(--space-sm);--result-modal-game-ranking-padding-inline: var(--space-md);--result-modal-time-info-padding: var(--space-md);--result-modal-points-name-row-gap: var(--space-xs);--result-modal-points-name-row-wrap: nowrap;--result-modal-stats-toggle-size: var(--font-xs);--result-modal-stats-toggle-padding-block: calc(var(--space-2xs) / 2);--result-modal-stats-toggle-padding-inline: var(--space-xs);--result-modal-player-stats-padding: var(--space-sm);--result-modal-stat-item-gap: var(--space-sm);--result-modal-stat-min-label: 120px;--settings-menu-border-width: var(--border-thin);--settings-menu-radius: var(--radius-md);--settings-menu-min-inline: clamp(140px, 22cqw, 200px);--settings-menu-item-gap: clamp(8px, 1.2cqh, 12px);--settings-menu-item-padding-block: clamp(8px, 1.2cqh, 12px);--settings-menu-item-padding-inline: clamp(10px, 1.6cqw, 16px);--settings-menu-icon-size: clamp(12px, 1.6cqh, 16px);--turn-order-min-size: clamp( 160px, 25cqw, var(--play-info-panel-max-width) );--turn-order-max-size: var(--play-info-panel-max-width);--hand-area-min-height: clamp(60px, 7.3cqh, 124px);--hand-area-padding-block: clamp(2px, .35cqh, 5px);--hand-area-padding-inline: clamp(4px, .6cqw, 8px);--hand-area-row-gap: clamp(2px, .45cqh, 6px);--hand-area-control-gap: clamp(4px, .65cqh, 9px);--hand-area-button-min-block: clamp(20px, 2.8cqh, 32px);--hand-area-button-max-block: clamp(42px, 6.3cqh, 72px);--hand-area-button-font-size: clamp(8px, .95cqh, 12px);--hand-area-action-button-height: clamp( calc(var(--hand-area-button-min-block) * .92), calc(var(--hand-area-height) * .36), var(--hand-area-button-max-block) );--hand-area-rank-button-min-inline: clamp(20px, 3cqw, 30px);--hand-card-min-height: clamp(32px, 6.8cqh, 80px);--hand-card-base-height: clamp(40px, 7.8cqh, 96px);--hand-card-base-width: clamp(34px, 5.9cqw, 74px);--hand-cards-padding-block-start: clamp(4px, .9cqh, 8px);--hand-cards-padding-block-end: clamp(2px, .25cqh, 3px);--hand-cards-padding-inline: clamp(2px, .6cqw, 6px);--play-area-history-width: clamp(110px, 12cqw, 170px);--play-area-penalty-width: clamp(95px, 10.5cqw, 145px);--play-area-padding-block: clamp(3px, .4cqh, 6px);--play-area-padding-inline: clamp(5px, .7cqw, 10px);--play-area-gap: clamp(3px, .5cqh, 8px);--player-seats-area-height: clamp( 60px, 9cqh, 110px );--player-seats-area-min-height: clamp(50px, 7cqh, 90px);--hand-area-height: clamp(120px, 15cqh, 200px);--player-seats-area-padding: clamp(2px, .35cqh, 6px);--player-seats-area-margin: clamp(6px, .8cqh, 12px);--player-seat-min-inline: clamp(70px, 9cqw, 120px);--player-seat-max-inline: clamp(90px, 11.5cqw, 140px);--player-seat-gap: clamp(4px, .6cqh, 10px);--player-seat-bottom-gap: clamp(4px, .6cqh, 10px);--player-seat-content-padding: clamp(3px, .4cqh, 6px);--player-seat-content-gap: clamp(3px, .4cqh, 6px);--player-seat-row-gap: clamp(3px, .4cqh, 6px);--player-seat-row-first-height: clamp(20px, 2.6cqh, 34px);--player-seat-avatar-size: clamp( 22px, 2.6cqh, 34px );--player-seat-hand-height: clamp(18px, 2.1cqh, 28px);--player-seat-row-second-height: clamp(20px, 2.6cqh, 36px);--player-seat-mini-card-width: clamp(18px, 2.6cqw, 32px);--player-seat-mini-card-height: clamp(22px, 3.4cqw, 38px);--player-seat-mini-card-overlap: clamp(-12px, -1.4cqw, -8px);--player-seat-mini-card-font-size: clamp(8px, 1cqh, 11px);--player-seat-indicator-size: clamp(16px, 2.2cqh, 28px);--player-seat-pass-font-size: clamp(8px, 1.1cqh, 16px);--player-seat-pass-padding-block: clamp(2px, .35cqh, 4px);--player-seat-pass-padding-inline: clamp(5px, .8cqw, 10px);--play-history-padding: clamp(2px, .35cqh, 6px);--play-history-gap: clamp(2px, .35cqh, 6px);--play-history-title-size: clamp(9px, 1.1cqh, 13px);--play-history-item-min-inline: clamp(36px, 5.5cqw, 60px);--play-history-card-gap: clamp(2px, .35cqh, 5px);--play-history-info-gap: clamp(2px, .35cqh, 5px);background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;padding:0;overflow:hidden;box-sizing:border-box;transition:background .3s ease}:root[data-hand-size=medium] .game-layout{--hand-area-min-height: clamp(60px, 7.1cqh, 124px);--hand-area-padding-block: clamp(3px, .36cqh, 6px);--hand-area-padding-inline: clamp(4px, .6cqw, 9px);--hand-area-row-gap: clamp(3px, .45cqh, 6px);--hand-area-control-gap: clamp(4px, .6cqh, 9px);--hand-area-button-min-block: clamp(20px, 3cqh, 34px);--hand-area-button-max-block: clamp(45px, 6.75cqh, 78px);--hand-area-button-font-size: clamp(7px, .85cqh, 12px);--hand-area-action-button-height: clamp( calc(var(--hand-area-button-min-block) * .92), calc(var(--hand-area-height) * .36), var(--hand-area-button-max-block) );--hand-area-rank-button-min-inline: clamp(18px, 3cqw, 30px);--hand-card-min-height: clamp(36px, 7cqh, 82px);--hand-card-base-height: clamp(44px, 8.5cqh, 96px);--hand-card-base-width: clamp(36px, 6cqw, 68px);--hand-cards-padding-block-start: clamp(4px, .9cqh, 9px);--hand-cards-padding-block-end: clamp(2px, .3cqh, 3px);--hand-cards-padding-inline: clamp(3px, .6cqw, 6px);--player-seats-area-height: clamp( 66px, 9.8cqh, 120px );--player-seats-area-min-height: clamp(55px, 8cqh, 100px);--play-area-history-width: clamp(120px, 13cqw, 200px);--play-area-penalty-width: clamp(110px, 12cqw, 170px);--player-seat-min-inline: clamp(70px, 9cqw, 120px);--player-seat-max-inline: clamp(90px, 11.5cqw, 140px);--player-seat-row-first-height: clamp(16px, 2cqh, 26px);--player-seat-avatar-size: clamp(16px, 2cqh, 26px);--player-seat-hand-height: clamp(14px, 1.6cqh, 22px);--player-seat-row-second-height: clamp(16px, 2cqh, 28px);--player-seat-mini-card-width: clamp(11px, 1.6cqw, 18px);--player-seat-mini-card-height: clamp(15px, 2.2cqw, 24px);--player-seat-mini-card-overlap: clamp(-9px, -1cqw, -5px);--player-seat-indicator-size: clamp(13px, 1.8cqh, 22px);--play-history-title-size: clamp(7px, .9cqh, 12px);--play-history-item-min-inline: clamp(34px, 5cqw, 56px)}@container game-layout (min-width: 768px){:root[data-hand-size=medium] .game-layout{--hand-area-min-height: clamp(72px, 8.6cqh, 160px);--hand-card-base-width: clamp(47px, 7.2cqw, 89px);--hand-card-base-height: clamp(57px, 10.2cqh, 125px);--hand-area-button-font-size: clamp(9px, 1.05cqh, 16px);--player-seats-area-min-height: clamp(66px, 9.6cqh, 130px);--play-area-history-width: clamp(156px, 15.6cqw, 260px);--play-area-penalty-width: clamp(143px, 14.4cqw, 221px);--player-seat-min-inline: clamp(85px, 10.8cqw, 145px);--player-seat-max-inline: clamp(110px, 13.8cqw, 170px);--player-seat-avatar-size: clamp(19px, 2.4cqh, 31px);--player-seat-row-first-height: clamp(19px, 2.4cqh, 31px);--player-seat-hand-height: clamp(17px, 1.9cqh, 26px);--player-seat-row-second-height: clamp(19px, 2.4cqh, 34px);--player-seat-mini-card-width: clamp(13px, 1.9cqw, 23px);--player-seat-mini-card-height: clamp(18px, 2.6cqw, 31px);--player-seat-indicator-size: clamp(16px, 2.2cqh, 29px);--play-history-title-size: clamp(8px, 1.1cqh, 15px);--play-history-item-min-inline: clamp(41px, 6cqw, 73px)}}@container game-layout (min-width: 1200px){:root[data-hand-size=medium] .game-layout{--hand-area-min-height: clamp(90px, 10.8cqh, 200px);--hand-card-base-width: clamp(59px, 9cqw, 115px);--hand-card-base-height: clamp(75px, 12.75cqh, 163px);--hand-area-button-font-size: clamp(11px, 1.3cqh, 20px);--player-seats-area-min-height: clamp(83px, 12cqh, 162px);--play-area-history-width: clamp(204px, 19.5cqw, 338px);--play-area-penalty-width: clamp(187px, 17.4cqw, 287px);--player-seat-min-inline: clamp(105px, 13.5cqw, 180px);--player-seat-max-inline: clamp(135px, 17.25cqw, 210px);--player-seat-avatar-size: clamp(24px, 3cqh, 39px);--player-seat-row-first-height: clamp(24px, 3cqh, 39px);--player-seat-hand-height: clamp(21px, 2.4cqh, 33px);--player-seat-row-second-height: clamp(24px, 3cqh, 42px);--player-seat-mini-card-width: clamp(17px, 2.4cqw, 30px);--player-seat-mini-card-height: clamp(23px, 3.3cqw, 40px);--player-seat-indicator-size: clamp(20px, 2.7cqh, 35px);--play-history-title-size: clamp(11px, 1.35cqh, 18px);--play-history-item-min-inline: clamp(51px, 7.5cqw, 93px)}}@container game-layout (min-width: 1920px){:root[data-hand-size=medium] .game-layout{--hand-area-min-height: clamp(114px, 13.6cqh, 258px);--hand-card-base-width: clamp(74px, 11.4cqw, 149px);--hand-card-base-height: clamp(97px, 16.15cqh, 212px);--hand-area-button-font-size: clamp(14px, 1.65cqh, 26px);--player-seats-area-min-height: clamp(110px, 16cqh, 210px);--play-area-history-width: clamp(264px, 24.7cqw, 486px);--play-area-penalty-width: clamp(242px, 22.8cqw, 373px);--player-seat-min-inline: clamp(140px, 18cqw, 240px);--player-seat-max-inline: clamp(180px, 23cqw, 280px);--player-seat-avatar-size: clamp(32px, 4cqh, 52px);--player-seat-row-first-height: clamp(32px, 4cqh, 52px);--player-seat-hand-height: clamp(28px, 3.2cqh, 44px);--player-seat-row-second-height: clamp(32px, 4cqh, 56px);--player-seat-mini-card-width: clamp(23px, 3.2cqw, 46px);--player-seat-mini-card-height: clamp(31px, 4.3cqw, 57px);--player-seat-indicator-size: clamp(26px, 3.6cqh, 49px);--play-history-title-size: clamp(14px, 1.7cqh, 22px);--play-history-item-min-inline: clamp(65px, 9.5cqw, 121px)}}:root[data-hand-size=compact] .game-layout{--hand-area-min-height: clamp(54px, 6.4cqh, 104px);--hand-area-padding-block: clamp(2px, .3cqh, 5px);--hand-area-padding-inline: clamp(3px, .5cqw, 7px);--hand-area-row-gap: clamp(2px, .36cqh, 5px);--hand-area-control-gap: clamp(3px, .5cqh, 7px);--hand-area-button-min-block: clamp(18px, 2.7cqh, 30px);--hand-area-button-max-block: clamp(39px, 6cqh, 66px);--hand-area-button-font-size: clamp(7px, .75cqh, 11px);--hand-area-action-button-height: clamp( calc(var(--hand-area-button-min-block) * .92), calc(var(--hand-area-height) * .36), var(--hand-area-button-max-block) );--hand-area-rank-button-min-inline: clamp(16px, 2.8cqw, 28px);--hand-card-min-height: clamp(30px, 6.5cqh, 74px);--hand-card-base-height: clamp(38px, 7.5cqh, 88px);--hand-card-base-width: clamp(30px, 5cqw, 60px);--hand-cards-padding-block-start: clamp(4px, .8cqh, 8px);--hand-cards-padding-block-end: clamp(1px, .2cqh, 2px);--hand-cards-padding-inline: clamp(2px, .5cqw, 5px);--player-seats-area-height: clamp( 60px, 9cqh, 110px );--player-seats-area-min-height: clamp(50px, 7cqh, 90px);--play-area-history-width: clamp(110px, 12cqw, 185px);--play-area-penalty-width: clamp(100px, 11cqw, 160px);--player-seat-min-inline: clamp(65px, 8.5cqw, 110px);--player-seat-max-inline: clamp(85px, 11cqw, 135px);--player-seat-row-first-height: clamp(15px, 1.8cqh, 24px);--player-seat-avatar-size: clamp(15px, 1.8cqh, 24px);--player-seat-hand-height: clamp(13px, 1.5cqh, 20px);--player-seat-row-second-height: clamp(15px, 1.8cqh, 26px);--player-seat-mini-card-width: clamp(10px, 1.4cqw, 16px);--player-seat-mini-card-height: clamp(14px, 2cqw, 22px);--player-seat-mini-card-overlap: clamp(-8px, -.9cqw, -5px);--player-seat-indicator-size: clamp(12px, 1.6cqh, 20px);--play-history-title-size: clamp(7px, .9cqh, 11px);--play-history-item-min-inline: clamp(32px, 4.6cqw, 52px)}@container game-layout (min-width: 768px){.game-layout{--layout-row-top: 2.3fr;--layout-row-middle: 5.2fr;--layout-row-hand: 3.5fr;grid-template-rows:minmax(var(--player-seats-area-min-height),var(--layout-row-top)) minmax(0,var(--layout-row-middle)) minmax(var(--hand-area-min-height),var(--layout-row-hand));--layout-scale: clamp(.8, calc(100cqh/1080px) , 1.3);--font-size-xs: clamp(8px, .6cqh, 16px);--font-size-sm: clamp(10px, .75cqh, 18px);--font-size-base: clamp(13px, .9cqh, 22px);--font-size-lg: clamp(15px, 1.05cqh, 24px);--font-size-xl: clamp(17px, 1.2cqh, 26px);--space-xs: clamp(4px, .55cqh, 9px);--space-sm: clamp(6px, .85cqh, 14px);--space-md: clamp(8px, 1.1cqh, 17px);--space-lg: clamp(11px, 1.4cqh, 22px);--space-xl: clamp(13px, 1.7cqh, 27px);--card-base-width: clamp(40px, 6cqw, 85px);--card-base-height: clamp(56px, 8.4cqw, 119px);--card-hand-width: clamp(42px, 6.5cqw, 85px);--card-hand-height: clamp(58px, 8.9cqw, 119px);--card-mini-width: clamp(21px, 3.25cqw, 47px);--card-mini-height: clamp(29px, 4.55cqw, 65px);--card-small-width: clamp(36px, 5.85cqw, 75px);--card-small-height: clamp(52px, 8.45cqw, 107px);--played-cards-card-base-width: clamp(65px, 9.75cqw, 130px);--played-cards-card-base-height: clamp(91px, 13.65cqh, 182px);--player-seat-min-inline: clamp(90px, 11.5cqw, 155px);--player-seat-max-inline: clamp(115px, 14.5cqw, 180px);--player-seat-avatar-size: clamp(27px, 3.4cqh, 45px);--player-seat-row-first-height: clamp(27px, 3.4cqh, 45px);--player-seat-hand-height: clamp(24px, 2.9cqh, 37px);--player-seat-row-second-height: clamp(27px, 3.4cqh, 49px);--player-seat-mini-card-width: clamp(24px, 3.4cqw, 44px);--player-seat-mini-card-height: clamp(30px, 4.4cqw, 56px);--player-seat-indicator-size: clamp(21px, 3cqh, 38px);--player-seat-pass-font-size: clamp(11px, 1.5cqh, 21px);--hand-area-min-height: clamp(108px, 21.2cqh, 265px);--hand-card-base-width: clamp(48px, 7.6cqw, 100px);--hand-card-base-height: clamp(58px, 10.6cqh, 142px);--hand-area-button-font-size: clamp(11px, 1.3cqh, 17px);--play-area-history-width: clamp(143px, 14.4cqw, 221px);--play-area-penalty-width: clamp(124px, 12.6cqw, 189px);--play-history-title-size: clamp(11px, 1.3cqh, 16px);--play-history-item-min-inline: clamp(43px, 6.6cqw, 78px);--radius-md: clamp(8px, 1cqh, 13px);--radius-lg: clamp(12px, 1.45cqh, 17px);--hand-area-name-font: clamp(13px, 1.55cqh, 22px);--hand-area-meta-font: clamp(11px, 1.35cqh, 20px);--hand-area-info-icon-font: clamp(15px, 1.85cqh, 24px);--hand-area-info-text-font: clamp(11px, 1.35cqh, 20px)}}@container game-layout (min-width: 1200px){.game-layout{--layout-row-top: 2.6fr;--layout-row-middle: 4.8fr;--layout-row-hand: 3.8fr;grid-template-rows:minmax(var(--player-seats-area-min-height),var(--layout-row-top)) minmax(0,var(--layout-row-middle)) minmax(var(--hand-area-min-height),var(--layout-row-hand));--layout-scale: clamp(1, calc(100cqh/1080px) , 1.5);--font-size-xs: clamp(10px, .75cqh, 21px);--font-size-sm: clamp(12px, .95cqh, 24px);--font-size-base: clamp(16px, 1.1cqh, 28px);--font-size-lg: clamp(19px, 1.3cqh, 30px);--font-size-xl: clamp(21px, 1.5cqh, 34px);--space-xs: clamp(5px, .65cqh, 11px);--space-sm: clamp(8px, 1cqh, 17px);--space-md: clamp(11px, 1.3cqh, 21px);--space-lg: clamp(14px, 1.7cqh, 27px);--space-xl: clamp(17px, 2cqh, 33px);--card-base-width: clamp(50px, 7cqw, 110px);--card-base-height: clamp(70px, 9.8cqw, 154px);--card-hand-width: clamp(52px, 7.5cqw, 110px);--card-hand-height: clamp(72px, 10.2cqw, 154px);--card-mini-width: clamp(27px, 4.25cqw, 61px);--card-mini-height: clamp(37px, 5.95cqw, 85px);--card-small-width: clamp(48px, 7.65cqw, 99px);--card-small-height: clamp(68px, 11.05cqw, 139px);--played-cards-card-base-width: clamp(85px, 12.75cqw, 170px);--played-cards-card-base-height: clamp(119px, 17.85cqh, 238px);--player-seat-min-inline: clamp(105px, 13.5cqw, 180px);--player-seat-max-inline: clamp(135px, 17.25cqw, 210px);--player-seat-avatar-size: clamp(32px, 3.9cqh, 52px);--player-seat-row-first-height: clamp(32px, 3.9cqh, 52px);--player-seat-hand-height: clamp(28px, 3.3cqh, 42px);--player-seat-row-second-height: clamp(32px, 3.9cqh, 56px);--player-seat-mini-card-width: clamp(30px, 4.1cqw, 56px);--player-seat-mini-card-height: clamp(36px, 5.4cqw, 70px);--player-seat-indicator-size: clamp(24px, 3.3cqh, 42px);--player-seat-pass-font-size: clamp(12px, 1.65cqh, 24px);--hand-area-min-height: clamp(136px, 24.5cqh, 350px);--hand-card-base-width: clamp(76px, 11cqw, 170px);--hand-card-base-height: clamp(102px, 17cqh, 235px);--hand-area-button-font-size: clamp(15px, 1.8cqh, 24px);--play-area-history-width: clamp(187px, 18cqw, 289px);--play-area-penalty-width: clamp(162px, 15.75cqw, 247px);--play-history-title-size: clamp(17px, 2cqh, 24px);--play-history-item-min-inline: clamp(54px, 8.25cqw, 99px);--radius-md: clamp(9px, 1.2cqh, 15px);--radius-lg: clamp(15px, 1.8cqh, 21px);--hand-area-name-font: clamp(15px, 2cqh, 28px);--hand-area-meta-font: clamp(14px, 1.85cqh, 26px);--hand-area-info-icon-font: clamp(18px, 2.3cqh, 30px);--hand-area-info-text-font: clamp(13px, 1.7cqh, 24px);--play-info-font-size: clamp(11px, 1.3cqh, 17px);--penalty-deck-label-size: clamp(10px, 1.3cqh, 15px);--penalty-deck-count-size: clamp(17px, 2.7cqh, 28px);--penalty-deck-count-suffix-size: clamp(11px, 1.6cqh, 16px)}}@container game-layout (min-width: 1920px){.game-layout{--layout-row-top: 2.9fr;--layout-row-middle: 4.2fr;--layout-row-hand: 4fr;grid-template-rows:minmax(var(--player-seats-area-min-height),var(--layout-row-top)) minmax(0,var(--layout-row-middle)) minmax(var(--hand-area-min-height),var(--layout-row-hand));--layout-scale: clamp(1.2, calc(100cqh/1080px) , 2);--font-size-xs: clamp(11px, .9cqh, 26px);--font-size-sm: clamp(13px, 1.05cqh, 28px);--font-size-base: clamp(18px, 1.2cqh, 34px);--font-size-lg: clamp(21px, 1.4cqh, 36px);--font-size-xl: clamp(24px, 1.7cqh, 40px);--space-xs: clamp(6px, .75cqh, 14px);--space-sm: clamp(10px, 1.15cqh, 21px);--space-md: clamp(13px, 1.55cqh, 27px);--space-lg: clamp(17px, 2.05cqh, 34px);--space-xl: clamp(21px, 2.5cqh, 42px);--card-base-width: clamp(60px, 8cqw, 140px);--card-base-height: clamp(84px, 11.2cqw, 196px);--card-hand-width: clamp(62px, 8.5cqw, 140px);--card-hand-height: clamp(86px, 11.7cqw, 196px);--card-mini-width: clamp(35px, 5.5cqw, 79px);--card-mini-height: clamp(48px, 7.7cqw, 110px);--card-small-width: clamp(62px, 9.9cqw, 128px);--card-small-height: clamp(88px, 14.3cqw, 180px);--played-cards-card-base-width: clamp(110px, 16.5cqw, 220px);--played-cards-card-base-height: clamp(154px, 23.1cqh, 308px);--player-seat-min-inline: clamp(140px, 18cqw, 240px);--player-seat-max-inline: clamp(180px, 23cqw, 280px);--player-seat-avatar-size: clamp(44px, 5.2cqh, 68px);--player-seat-row-first-height: clamp(44px, 5.2cqh, 68px);--player-seat-hand-height: clamp(38px, 4.4cqh, 56px);--player-seat-row-second-height: clamp(44px, 5.2cqh, 72px);--player-seat-mini-card-width: clamp(40px, 5.6cqw, 70px);--player-seat-mini-card-height: clamp(50px, 7cqw, 84px);--player-seat-indicator-size: clamp(32px, 4.4cqh, 56px);--player-seat-pass-font-size: clamp(15px, 2.1cqh, 32px);--hand-area-min-height: clamp(178px, 29cqh, 490px);--hand-card-base-width: clamp(98px, 13.8cqw, 225px);--hand-card-base-height: clamp(132px, 22cqh, 310px);--hand-area-button-font-size: clamp(21px, 2.6cqh, 33px);--play-area-history-width: clamp(242px, 22.8cqw, 374px);--play-area-penalty-width: clamp(209px, 19.95cqw, 319px);--play-history-title-size: clamp(21px, 2.7cqh, 31px);--play-history-item-min-inline: clamp(68px, 10.45cqw, 125px);--radius-md: clamp(12px, 1.6cqh, 20px);--radius-lg: clamp(19px, 2.4cqh, 28px);--hand-area-name-font: clamp(21px, 2.85cqh, 40px);--hand-area-meta-font: clamp(19px, 2.65cqh, 36px);--hand-area-info-icon-font: clamp(22px, 2.75cqh, 38px);--hand-area-info-text-font: clamp(16px, 2.15cqh, 30px);--play-info-font-size: clamp(13px, 1.7cqh, 20px);--penalty-deck-label-size: clamp(11px, 1.6cqh, 18px);--penalty-deck-count-size: clamp(20px, 3.1cqh, 34px);--penalty-deck-count-suffix-size: clamp(12px, 1.9cqh, 18px)}}@container game-layout (min-width: 768px){:root[data-hand-size=compact] .game-layout{--hand-area-min-height: clamp(60px, 7.1cqh, 124px);--hand-card-base-width: clamp(39px, 6.5cqw, 78px);--hand-card-base-height: clamp(49px, 9.75cqh, 114px);--hand-area-button-font-size: clamp(9px, .95cqh, 14px);--player-seats-area-min-height: clamp(60px, 8.4cqh, 117px);--play-area-history-width: clamp(143px, 14.4cqw, 241px);--play-area-penalty-width: clamp(130px, 13.2cqw, 208px);--player-seat-min-inline: clamp(78px, 10.2cqw, 132px);--player-seat-max-inline: clamp(102px, 13.2cqw, 164px);--player-seat-avatar-size: clamp(18px, 2.2cqh, 29px);--player-seat-row-first-height: clamp(18px, 2.2cqh, 29px);--player-seat-hand-height: clamp(16px, 1.8cqh, 24px);--player-seat-row-second-height: clamp(18px, 2.2cqh, 31px);--player-seat-mini-card-width: clamp(12px, 1.7cqw, 21px);--player-seat-mini-card-height: clamp(17px, 2.4cqw, 29px);--player-seat-indicator-size: clamp(14px, 1.9cqh, 26px);--play-history-title-size: clamp(8px, 1.1cqh, 13px);--play-history-item-min-inline: clamp(38px, 5.5cqw, 68px)}}@container game-layout (min-width: 1200px){:root[data-hand-size=compact] .game-layout{--hand-area-min-height: clamp(75px, 8.8cqh, 155px);--hand-card-base-width: clamp(49px, 7.5cqw, 99px);--hand-card-base-height: clamp(65px, 11.25cqh, 149px);--hand-area-button-font-size: clamp(12px, 1.3cqh, 19px);--player-seats-area-min-height: clamp(75px, 10.5cqh, 146px);--play-area-history-width: clamp(187px, 18cqw, 289px);--play-area-penalty-width: clamp(170px, 16.5cqw, 260px);--player-seat-min-inline: clamp(98px, 12.75cqw, 165px);--player-seat-max-inline: clamp(128px, 16.5cqw, 203px);--player-seat-avatar-size: clamp(23px, 2.7cqh, 35px);--player-seat-row-first-height: clamp(23px, 2.7cqh, 35px);--player-seat-hand-height: clamp(20px, 2.25cqh, 30px);--player-seat-row-second-height: clamp(23px, 2.7cqh, 39px);--player-seat-mini-card-width: clamp(15px, 2.1cqw, 28px);--player-seat-mini-card-height: clamp(21px, 3cqw, 37px);--player-seat-indicator-size: clamp(18px, 2.4cqh, 30px);--play-history-title-size: clamp(12px, 1.5cqh, 19px);--play-history-item-min-inline: clamp(48px, 6.9cqw, 87px)}}@container game-layout (min-width: 1920px){:root[data-hand-size=compact] .game-layout{--hand-area-min-height: clamp(92px, 11.2cqh, 195px);--hand-card-base-width: clamp(63px, 9.75cqw, 129px);--hand-card-base-height: clamp(84px, 14.25cqh, 194px);--hand-area-button-font-size: clamp(16px, 1.8cqh, 26px);--player-seats-area-min-height: clamp(95px, 13.3cqh, 189px);--play-area-history-width: clamp(242px, 22.8cqw, 374px);--play-area-penalty-width: clamp(220px, 20.9cqw, 338px);--player-seat-min-inline: clamp(130px, 16.5cqw, 220px);--player-seat-max-inline: clamp(170px, 22cqw, 270px);--player-seat-avatar-size: clamp(30px, 3.6cqh, 47px);--player-seat-row-first-height: clamp(30px, 3.6cqh, 47px);--player-seat-hand-height: clamp(26px, 3cqh, 40px);--player-seat-row-second-height: clamp(30px, 3.6cqh, 52px);--player-seat-mini-card-width: clamp(20px, 2.8cqw, 42px);--player-seat-mini-card-height: clamp(28px, 4cqw, 50px);--player-seat-indicator-size: clamp(24px, 3.2cqh, 40px);--play-history-title-size: clamp(16px, 2cqh, 24px);--play-history-item-min-inline: clamp(61px, 8.7cqw, 111px)}}body.revolution .game-layout{background:#4a1f1f}.game-layout__logo{position:absolute;top:var(--space-sm);left:var(--space-sm);z-index:400;display:flex;align-items:center;justify-content:center;padding:var(--space-xs);border-radius:var(--radius-md);background:#ffffff0d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .2s ease}.game-layout__logo:hover{opacity:.8}.game-layout__logo-icon{width:clamp(24px,3cqh,40px);height:clamp(24px,3cqh,40px);object-fit:contain;display:block}.game-layout__settings-wrapper{position:absolute;top:var(--space-sm);right:var(--space-sm);z-index:401}.game-layout__settings-button{width:clamp(32px,4cqh,48px);height:clamp(32px,4cqh,48px);border:none;border-radius:var(--radius-md);background:#ffffff1a;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.game-layout__settings-button:hover{background:#fff3;transform:translateY(clamp(-1px,-.125cqh,-2px))}.game-layout__settings-icon{width:clamp(16px,2cqh,24px);height:clamp(16px,2cqh,24px)}.game-layout__special-effect-manager{position:absolute;top:var(--space-sm);left:0;right:0;z-index:399;pointer-events:none;display:flex;justify-content:center}.game-layout__special-effect-manager>*{pointer-events:auto}.game-layout__player-seats-area{grid-area:player-seats;position:relative;z-index:398;padding-top:clamp(2px,.3cqh,4px);padding-bottom:var(--player-seats-area-padding, clamp(2px, .35cqh, 6px));padding-left:clamp(60px,8cqw,100px);padding-right:clamp(60px,8cqw,100px);pointer-events:none;overflow:hidden;height:100%;min-height:0}.game-layout__player-seats-area>*{pointer-events:auto}.game-layout__main-area{grid-area:main-area;position:relative;min-height:0;min-width:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,var(--play-area-history-width, clamp(110px, 12cqw, 170px))) minmax(0,1fr) minmax(0,var(--play-area-penalty-width, clamp(95px, 10.5cqw, 145px)));grid-template-areas:"history center penalty";gap:var(--play-area-gap, clamp(3px, .5cqh, 8px));padding:var(--play-area-padding-block, clamp(3px, .4cqh, 6px)) var(--play-area-padding-inline, clamp(5px, .7cqw, 10px));background:#1e293b;box-sizing:border-box}.game-layout--revolution .game-layout__main-area{background:#4a1f1f}.game-layout__hand-area{grid-area:hand-area;position:relative;min-height:0;min-width:0;overflow:visible;padding:var(--play-area-padding-block, clamp(3px, .4cqh, 6px)) var(--play-area-padding-inline, clamp(5px, .7cqw, 10px));background:#1e293b;box-sizing:border-box;min-height:var(--hand-area-min-height);height:auto}.game-layout--revolution .game-layout__hand-area{background:#4a1f1f}
