/* Mesa FlipStars: posições fixas, identificação das duplas e movimentos de cartas. */
.portrait{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border-radius:50%;width:46px;height:46px;background:radial-gradient(ellipse at 50% 35%,#465272,#182032);border:2px solid #ffffff4a}.portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%}.profile .portrait{width:40px;height:40px}.profile-preview-wrap{display:flex;justify-content:center}.profile-preview-wrap img{width:105px;height:105px;object-fit:cover;object-position:center 35%;border-radius:50%;background:#1c2843;border:3px solid #813ee7}.avatar-label{font-size:13px;color:#aeb8ca}.avatar-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.avatar-picker button{padding:3px;border:2px solid transparent;border-radius:50%;background:#20273a;aspect-ratio:1;overflow:hidden;transition:.15s}.avatar-picker button.selected{border-color:#04cef4;box-shadow:0 0 0 3px #04cef417}.avatar-picker img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%}.photo-upload{display:block;text-align:center;background:#192034;border:1px solid #34405c;padding:13px;border-radius:8px;cursor:pointer;color:#c0d0e5;font-size:14px}.photo-upload input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.hero-download{margin:-10px 0 17px}.hero-download a{color:#ad9cda;font-size:12px;text-decoration:none}.hero-download a:hover{color:#fff}.arena-shell{height:100dvh;min-height:720px;display:flex;flex-direction:column;padding:14px 26px 12px;background:radial-gradient(ellipse at 50% 32%,#102440,#080e1c 65%);overflow:hidden;color:#f5f8ff;isolation:isolate}.arena-header{display:flex;align-items:center;gap:18px;flex-shrink:0;height:67px;padding-bottom:9px}.arena-header .button{background:#14233a;border:1px solid #2a4160;color:#d0dcf0;font-size:13px;min-height:39px;padding:9px 14px;box-shadow:0 4px 10px #0002}.arena-logo{width:116px;height:58px;object-fit:contain;flex-shrink:0}.arena-title{min-width:0}.arena-title h1{font-size:20px;letter-spacing:-.4px;line-height:1.3;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arena-title>span{font-size:11px;color:#8ea4c1}.arena-invite{margin-left:auto}.arena-profile{background:none;border:0;padding:0}.arena-profile .portrait{width:42px;height:42px;border-color:#9e74e2}.arena-teams{display:flex;gap:10px;padding:4px 0 13px;flex-shrink:0}.arena-team{display:flex;align-items:center;gap:10px;border:1px solid #273b53;background:#101f32a8;padding:9px 15px;border-radius:9px;flex:1;min-width:0}.arena-team.my-team{background:#0e35428c;border-color:#04cef452}.team-dot{width:9px;height:9px;border-radius:50%;background:var(--team-color);box-shadow:0 0 13px color-mix(in srgb,var(--team-color),transparent 60%);flex-shrink:0}.arena-team>div{display:flex;align-items:center;gap:13px;min-width:0}.arena-team b{font-size:10px;color:var(--team-color);letter-spacing:1px;white-space:nowrap}.arena-team>div>span{font-size:13px;color:#bdcce1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-star{margin-left:auto;color:#04cef4}.arena-board{position:relative;flex:1;min-height:400px;border-radius:44px;background:radial-gradient(ellipse at center,#17405b 0%,#12334c 43%,#0e2941 80%);border:1px solid #3e6d94;box-shadow:inset 0 0 0 5px #101f33,inset 0 0 0 6px #52728b66,inset 0 0 70px #0208196b,0 10px 40px #0004;overflow:hidden}.felt-texture{position:absolute;inset:0;opacity:.32;background-image:repeating-linear-gradient(45deg,transparent 0 2px,#b5dfff04 2px 3px);pointer-events:none}.felt-edge{position:absolute;inset:34px 10%;border:1px solid #79c8ec13;border-radius:50%;pointer-events:none}.felt-brand{position:absolute;width:250px;height:auto;left:50%;top:52%;transform:translate(-50%,-50%);opacity:.045;pointer-events:none}.arena-shell .player-seat{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:5px;min-width:118px;width:132px;z-index:5;color:#fff;text-align:center;border:0;background:none;padding:0}.seat-portrait{position:relative;display:flex;justify-content:center}.arena-shell .player-seat .portrait{width:62px;height:62px;border:3px solid var(--team-color);box-shadow:0 4px 15px #0005}.arena-shell .player-seat.partner-seat .portrait{box-shadow:0 0 0 4px #04cef40b,0 0 22px #04cef422}.arena-shell .player-seat.current .portrait{border-color:#ffe082;box-shadow:0 0 0 5px #f5bb4224,0 0 28px #f5bb4244}.arena-shell .player-seat>b{font-size:15px;font-weight:750;letter-spacing:.1px;max-width:142px;line-height:1.2;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-shadow:0 2px 5px #0008}.seat-role{font-size:9px;font-weight:700;letter-spacing:1px;color:var(--team-color)}.arena-shell .bot-marker{position:absolute;right:-8px;bottom:0;font-size:8px;padding:2px 4px;background:#3d3058;border:1px solid #b387ec;color:#e4d2ff;border-radius:4px;z-index:2}.cards-count{position:absolute;left:-9px;bottom:-2px;width:25px;height:25px;display:grid;place-items:center;border:1px solid #adc4e180;border-radius:50%;background:#0b1a2c;color:#fff;font-size:12px;font-weight:800}.playing-label{position:absolute;top:-18px;background:#ffe082;color:#322307;font-size:9px;font-weight:850;letter-spacing:1px;padding:4px 9px;border-radius:5px;box-shadow:0 3px 10px #0005;white-space:nowrap}.arena-shell .uno-badge{font-size:10px;right:8px;top:-12px;z-index:7;padding:4px 7px}.empty-portrait{font-size:28px;font-weight:400;color:#859bbb;border-style:dashed!important;background:#13304a}.opponent-cards{display:flex;justify-content:center;align-items:flex-start;height:38px;gap:0;padding-right:9px;margin-top:2px}.card-back{display:block;position:relative;width:102px;height:148px;border:3px solid #f3f3ff;border-radius:10px;background:linear-gradient(145deg,#171c3f,#243b63 48%,#281d49);box-shadow:0 4px 10px #0008;overflow:hidden;flex-shrink:0}.back-oval{position:absolute;inset:12px 10px;border:1px solid #9f86e75e;border-radius:60% 28%;transform:rotate(-12deg);background:linear-gradient(150deg,#04cef40d,#ff087d0c)}.back-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-10deg);width:94%;height:auto;filter:drop-shadow(0 3px 3px #0004)}.opponent-cards .card-back{width:24px;height:34px;border:1px solid #d8d4ed;border-radius:3px;margin-right:-11px;transform:rotate(-8deg)}.opponent-cards .card-back:nth-child(2){transform:rotate(0)}.opponent-cards .card-back:nth-child(3){transform:rotate(8deg)}.opponent-cards .card-back:nth-child(4){transform:rotate(14deg)}.opponent-cards .back-oval{inset:3px;border-color:#a998c955;border-radius:60% 25%}.arena-center{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:18px;z-index:3;min-width:330px}.turn-banner{display:flex;gap:9px;align-items:center;border:1px solid #4b6c8990;background:#0b1e32e6;border-radius:30px;padding:10px 17px;box-shadow:0 7px 15px #0003;min-width:275px;justify-content:center}.turn-banner.your-turn{border-color:#f5bb426e;background:#172e3ae8}.turn-dot{width:7px;height:7px;border-radius:50%;background:#9baec7;flex-shrink:0}.your-turn .turn-dot{background:#ffe082;box-shadow:0 0 12px #f5bb4277}.turn-banner>div{text-align:center}.turn-banner b{font-size:12px;letter-spacing:1px;color:#e6edf7;display:block}.turn-banner.your-turn b{color:#ffe082}.turn-banner span:not(.turn-dot){display:block;font-size:11px;color:#a5bfd8;margin-top:4px}.arena-card-zone{position:relative;display:flex;align-items:center;justify-content:center;gap:32px;padding:14px 20px 0}.direction-orbit{position:absolute;inset:-22px -35px -9px;border:1px solid color-mix(in srgb,var(--active-color),transparent 72%);border-radius:50%;box-shadow:0 0 0 9px #82caff05,0 0 0 10px color-mix(in srgb,var(--active-color),transparent 88%);pointer-events:none}.direction-orbit>span{position:absolute;right:-8px;top:38%;font-size:36px;font-weight:300;color:var(--active-color);text-shadow:0 0 20px color-mix(in srgb,var(--active-color),transparent 40%)}.deck-area,.discard-area{display:flex;flex-direction:column;align-items:center;gap:14px}.deck-area>span,.discard-area>span{font-size:10px;letter-spacing:1.5px;font-weight:700;color:#9eb8d2}.arena-shell .draw-stack{display:block;position:relative;width:102px;height:148px;border:0;background:none;padding:0;border-radius:11px;box-shadow:-3px -3px #1d2c49,-5px -5px #b2b8d1,-7px -7px #22324f,-9px -9px #a1acc9;opacity:1}.arena-shell .draw-stack:disabled{opacity:1;cursor:default}.arena-shell .draw-stack:not(:disabled):hover{transform:translateY(-4px)}.arena-shell .draw-stack img{transform:translate(-50%,-50%) rotate(-10deg);width:94%;height:auto}.arena-shell .discard-card{width:102px;height:148px;transform:rotate(8deg);border:3px solid #f5f3fe;opacity:1;filter:none;box-shadow:0 8px 20px #0005}.arena-shell .discard-card .card-face{font-size:51px;inset:21px 9px}.arena-shell .discard-card .card-corner{font-size:16px}.arena-color{font-size:12px;color:#a9c5df;display:flex;align-items:center;gap:7px;background:#0d263da8;padding:6px 12px;border-radius:20px;text-transform:capitalize}.arena-color i{width:9px;height:9px;border-radius:50%}.arena-color>span{font-size:17px;display:none}.arena-last-play{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);font-size:11px;color:#90afca;max-width:55%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:2}.arena-waiting{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:80%;min-width:290px}.arena-waiting img{width:180px;height:auto}.arena-waiting h2{font-size:24px;margin:0;font-weight:600;letter-spacing:-.5px}.arena-waiting p{font-size:15px;margin:0;color:#a8c3dd}.arena-waiting>span{font-size:12px;color:#87a7c5}.arena-waiting .button{font-size:13px;margin-top:5px}.arena-hand-dock{position:relative;flex-shrink:0;min-height:210px;margin-top:0;padding:14px 12px 0;border-top:1px solid #7199c51d;background:radial-gradient(ellipse at top,#16314c55,transparent 70%)}.dock-header{display:flex;align-items:center;gap:20px;min-height:58px}.arena-shell .player-seat.dock-self{position:static;left:auto;top:auto;transform:none;display:flex;flex-direction:row;width:auto;min-width:240px;text-align:left;gap:12px;padding:0;flex-shrink:0;cursor:pointer}.arena-shell .dock-self .portrait{width:51px;height:51px;border-width:2px}.dock-self>span:last-child{display:flex;flex-direction:column;gap:5px}.dock-self b{font-size:15px;font-weight:700}.dock-self b>em{font-style:normal;font-size:9px;font-weight:700;border:1px solid #04cef436;background:#04cef410;border-radius:3px;padding:3px 5px;margin-left:6px;color:#51ddf1;vertical-align:middle}.dock-self small{font-size:11px;color:#8db6d7}.dock-instruction{flex:1;text-align:center;font-size:13px;color:#7f9eba}.dock-instruction.active{color:#ffe082}.dock-actions{display:flex;align-items:center;gap:10px;min-width:100px;justify-content:flex-end}.arena-shell .uno-button{min-width:99px;min-height:48px;border-radius:12px;font-size:24px;letter-spacing:1px;background:linear-gradient(145deg,#ff366f,#d91072);box-shadow:0 5px 0 #830942,0 6px 20px #ff087d26;border:1px solid #ff7cba55;padding:8px 14px}.arena-shell .uno-button:disabled{opacity:.4;box-shadow:0 3px 0 #4f2138;background:linear-gradient(145deg,#b15579,#76304e)}.arena-shell .uno-button.ready:not(:disabled){box-shadow:0 5px 0 #830942,0 0 22px #ff087d80;animation:uno-ready 1.4s ease-in-out infinite}.arena-shell .uno-button.announced{background:#174b40;color:#81ffd0;font-size:18px;box-shadow:0 3px 0 #092b22;opacity:1}.arena-shell .dock-actions .subtle{font-size:12px;background:#17304d;border-color:#355372;padding:10px 13px;min-height:43px}.arena-shell .hand{display:block;overflow-x:auto;overflow-y:hidden;min-height:150px;padding:18px 12px 4px;margin:0 -12px;scrollbar-width:thin;scrollbar-color:#3e5474 transparent}.hand-fan{display:flex;justify-content:center;min-width:max-content;width:100%;padding:0 18px}.hand-slot{position:relative;width:75px;flex-shrink:0;height:133px;z-index:var(--fan-order);transform:translateY(var(--fan-lift)) rotate(var(--fan-angle));transform-origin:50% 120%;transition:transform .18s}.arena-shell .hand .playing-card{width:92px;height:133px;border-radius:11px;border:3px solid #f4f1fa;box-shadow:0 5px 16px #0008;transform:none;touch-action:none}.arena-shell .hand .playing-card .card-face{font-size:47px;inset:19px 7px}.arena-shell .hand .playing-card .card-corner{font-size:15px}.arena-shell .hand .playing-card:disabled{filter:brightness(.85) saturate(.85);opacity:1}.arena-shell .hand .playing-card.playable{box-shadow:0 0 0 2px #ffe082,0 6px 14px #0007;transform:translateY(-5px)}.arena-shell .hand-slot:has(.playable):hover{z-index:100;transform:translateY(-12px) rotate(0)}.arena-shell .hand .playing-card.playable:hover{transform:translateY(-5px)}.hand-helper{display:flex;justify-content:space-between;gap:14px;color:#799cbd;font-size:10px;padding-top:8px}.waiting-helper{padding:35px 0;text-align:center;color:#8eacc9;font-size:14px}.arena-shell .spectator-note{padding:26px 0;color:#a1b7d0}.flying-card>.playing-card,.flying-card>.card-back{width:100%;height:100%;pointer-events:none;box-shadow:0 16px 25px #0006}.flying-card .card-face{font-size:43px}.drag-card{box-shadow:0 16px 30px #0007!important;filter:brightness(1.05)!important;opacity:1!important}.arena-board:has(+.arena-hand-dock .drag-card){border-color:#ffe082}
@keyframes uno-ready{0%,100%{filter:brightness(1)}50%{filter:brightness(1.25)}}
@media(min-width:1500px){.arena-shell{padding-left:max(28px,calc((100vw - 1550px)/2));padding-right:max(28px,calc((100vw - 1550px)/2))}.arena-board{min-height:480px}.arena-shell .player-seat .portrait{width:74px;height:74px}.arena-shell .player-seat>b{font-size:17px}.seat-role{font-size:10px}.arena-shell .draw-stack,.arena-shell .card-back,.arena-shell .discard-card{width:115px;height:166px}.arena-shell .discard-card .card-face{font-size:59px}.opponent-cards .card-back{width:24px;height:34px}}
@media(max-width:1000px){.arena-shell{padding:10px 16px 10px;min-height:680px}.arena-header{gap:12px;height:61px}.arena-title h1{font-size:17px}.arena-logo{width:90px;height:47px}.arena-header .button{font-size:11px;padding:9px 11px}.arena-team{padding:9px 11px}.arena-team>div{display:block}.arena-team>div>span{display:block;font-size:11px;margin-top:3px}.arena-shell .player-seat .portrait{width:57px;height:57px}.arena-shell .player-seat{width:115px;min-width:105px}.arena-shell .player-seat>b{font-size:14px}.arena-shell .dock-self{min-width:215px!important}.dock-self b{font-size:14px}.dock-instruction{font-size:12px}.arena-hand-dock{min-height:200px}.hand-slot{width:63px;height:123px}.arena-shell .hand .playing-card{width:84px;height:123px}.arena-shell .hand .playing-card .card-face{font-size:43px}.arena-shell .hand{min-height:140px}.arena-center{gap:15px;min-width:280px}.arena-shell .draw-stack,.arena-shell .discard-card,.arena-card-zone>.card-back{width:92px;height:133px}.draw-stack>.card-back{width:100%;height:100%}}
@media(max-width:600px) and (orientation:portrait){.arena-shell{padding:8px 9px 9px;min-height:770px;height:100dvh}.arena-header{height:76px;gap:7px;position:relative;flex-wrap:wrap;padding-bottom:4px}.arena-header .arena-back{padding:8px;min-height:34px;font-size:16px}.arena-back>span{display:none}.arena-logo{width:82px;height:43px}.arena-title{flex:1}.arena-title h1{font-size:15px}.arena-title>span{font-size:9px}.arena-profile .portrait{width:34px;height:34px}.arena-header .arena-invite{font-size:10px;min-height:25px;padding:4px 9px;margin-left:auto;position:absolute;bottom:0;right:0}.arena-teams{padding-top:7px;gap:6px;padding-bottom:9px}.arena-team{padding:7px;gap:7px;border-radius:7px}.arena-team>div>span{font-size:10px}.arena-team b{font-size:8px;letter-spacing:.6px}.team-dot{width:6px;height:6px}.team-star{display:none}.arena-board{min-height:407px;border-radius:27px;flex:1}.felt-edge{inset:33px 5%}.felt-brand{width:195px}.arena-shell .player-seat{width:82px;min-width:76px;gap:4px}.arena-shell .player-seat .portrait{width:47px;height:47px;border-width:2px}.arena-shell .player-seat>b{font-size:12px;max-width:88px;line-height:1.25}.seat-role{font-size:7px;letter-spacing:.5px}.arena-shell .bot-marker{font-size:7px;right:-7px;padding:2px 3px}.cards-count{width:20px;height:20px;left:-6px;font-size:10px}.playing-label{font-size:7px;padding:3px 6px;top:-16px;letter-spacing:.6px}.arena-shell .uno-badge{font-size:8px;right:0;top:-15px}.opponent-cards{height:28px;padding-right:7px}.opponent-cards .card-back{width:18px;height:26px;margin-right:-9px;border-radius:2px}.arena-center{min-width:190px;gap:13px;top:56%}.turn-banner{padding:8px 10px;min-width:200px;gap:6px}.turn-banner b{font-size:9px;letter-spacing:.5px}.turn-banner span:not(.turn-dot){font-size:9px;margin-top:3px}.turn-dot{width:5px;height:5px}.arena-card-zone{gap:18px;padding:9px 12px 0}.direction-orbit{inset:-17px -12px -6px}.direction-orbit>span{font-size:27px;right:-10px;top:38%}.arena-shell .draw-stack,.arena-shell .discard-card{width:67px;height:97px;border-radius:8px}.draw-stack>.card-back{width:100%;height:100%;border-radius:8px;border-width:2px}.arena-shell .discard-card{border-width:2px}.arena-shell .discard-card .card-face{font-size:35px;inset:14px 5px}.arena-shell .discard-card .card-corner{font-size:12px}.deck-area,.discard-area{gap:10px}.deck-area>span,.discard-area>span{font-size:8px;letter-spacing:1px}.back-oval{inset:9px 6px}.arena-color{font-size:10px;padding:5px 10px}.arena-last-play{font-size:9px;bottom:10px;max-width:88%}.arena-hand-dock{padding:10px 3px 0;min-height:218px}.dock-header{flex-wrap:wrap;gap:7px;min-height:67px}.arena-shell .player-seat.dock-self{min-width:0!important;flex:1;gap:8px}.arena-shell .dock-self .portrait{width:40px;height:40px}.dock-self b{font-size:12px}.dock-self b>em{font-size:7px;padding:2px 4px;margin-left:3px}.dock-self small{font-size:9px;max-width:180px;line-height:1.35}.dock-instruction{order:3;flex-basis:100%;text-align:left;font-size:10px;padding-left:3px}.dock-actions{gap:5px;min-width:74px}.arena-shell .uno-button{min-width:69px;min-height:39px;font-size:19px;border-radius:9px;padding:7px 11px;box-shadow:0 3px 0 #830942}.arena-shell .uno-button.announced{font-size:15px}.arena-shell .dock-actions .subtle{font-size:9px;min-height:35px;padding:8px;max-width:102px;white-space:normal}.arena-shell .hand{min-height:118px;padding:12px 5px 5px;margin:0 -3px}.hand-fan{padding:0 10px}.hand-slot{width:43px;height:99px;transform:translateY(var(--fan-lift)) rotate(calc(var(--fan-angle)*.65))}.arena-shell .hand .playing-card{width:66px;height:97px;border-width:2px;border-radius:8px}.arena-shell .hand .playing-card .card-face{font-size:35px;inset:14px 5px}.arena-shell .hand .playing-card .card-corner{font-size:12px}.hand-helper{font-size:8px;gap:8px;padding-top:4px;line-height:1.5}.hand-helper>span:first-child{max-width:62%}.arena-waiting{min-width:210px;max-width:72%;gap:10px;top:55%}.arena-waiting img{width:135px}.arena-waiting h2{font-size:18px;line-height:1.3}.arena-waiting p{font-size:12px}.arena-waiting>span{font-size:10px}.arena-waiting .button{font-size:11px;min-height:38px;padding:10px}.eight-seats .player-seat,.six-seats .player-seat{width:70px;min-width:66px}.eight-seats .player-seat .portrait,.six-seats .player-seat .portrait{width:37px;height:37px}.eight-seats .player-seat>b,.six-seats .player-seat>b{font-size:10px;max-width:76px}.eight-seats .seat-role,.six-seats .seat-role{font-size:6px}.eight-seats .opponent-cards,.six-seats .opponent-cards{height:20px}.eight-seats .opponent-cards .card-back,.six-seats .opponent-cards .card-back{width:13px;height:19px;margin-right:-6px}.eight-seats .arena-center{top:53%}.eight-seats .turn-banner{min-width:180px}.eight-seats .turn-banner b{font-size:8px}.eight-seats .turn-banner span:not(.turn-dot){font-size:8px}}
@media(max-height:650px) and (orientation:landscape){.arena-shell{height:100dvh;min-height:350px;padding:4px 12px 5px}.arena-header{height:38px;gap:10px;padding-bottom:3px}.arena-logo{width:72px;height:35px}.arena-title h1{font-size:14px}.arena-title>span{font-size:9px}.arena-header .button{font-size:10px;min-height:29px;padding:5px 10px}.arena-profile .portrait{width:29px;height:29px}.arena-teams{padding:2px 0 5px;gap:7px}.arena-team{padding:4px 9px;border-radius:6px;gap:7px}.arena-team>div{display:flex;gap:9px}.arena-team b{font-size:8px;letter-spacing:.5px}.arena-team>div>span{font-size:9px;margin:0}.team-dot{width:6px;height:6px}.arena-board{min-height:176px;border-radius:25px}.felt-edge{inset:15px 10%}.felt-brand{width:165px}.arena-shell .player-seat{min-width:90px;width:110px;gap:2px}.arena-shell .player-seat .portrait{width:39px;height:39px;border-width:2px}.arena-shell .player-seat>b{font-size:11px;max-width:100px}.seat-role{font-size:7px;letter-spacing:.5px}.cards-count{width:19px;height:19px;font-size:10px;left:-5px}.arena-shell .bot-marker{font-size:6px;padding:1px 3px}.opponent-cards{display:none}.playing-label{font-size:7px;padding:2px 5px;top:-14px}.arena-shell .uno-badge{font-size:8px;right:9px;top:-13px}.arena-center{top:58%;min-width:215px;gap:7px;flex-direction:row;flex-wrap:wrap;justify-content:center;max-width:260px}.turn-banner{min-width:205px;padding:4px 10px;gap:6px;border-radius:16px}.turn-banner b{font-size:8px;letter-spacing:.6px}.turn-banner span:not(.turn-dot){font-size:8px;margin-top:2px}.turn-dot{width:5px;height:5px}.arena-card-zone{gap:17px;padding:7px 20px 0}.direction-orbit{inset:-9px -12px -6px}.direction-orbit>span{font-size:24px;right:-10px}.arena-shell .draw-stack,.arena-shell .discard-card{width:51px;height:74px;border-radius:6px}.draw-stack>.card-back{width:100%;height:100%;border-width:2px;border-radius:6px}.arena-shell .discard-card{border-width:2px}.arena-shell .discard-card .card-face{font-size:29px;inset:10px 4px;border-width:1px}.arena-shell .discard-card .card-corner{font-size:9px;top:3px;left:3px}.arena-shell .discard-card .card-corner.bottom{top:auto;left:auto;right:3px;bottom:3px}.deck-area,.discard-area{gap:5px}.deck-area>span,.discard-area>span{font-size:6px;letter-spacing:.8px}.back-oval{inset:5px;border-radius:60% 25%}.arena-color{position:absolute;right:-55px;bottom:35px;font-size:9px;padding:4px 7px}.arena-color i{width:6px;height:6px}.arena-last-play{font-size:8px;bottom:5px;max-width:50%}.arena-hand-dock{min-height:100px;padding:5px 8px 0;display:grid;grid-template-columns:180px 1fr;column-gap:15px;align-items:center}.dock-header{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:0;grid-column:1;grid-row:1}.arena-shell .player-seat.dock-self{min-width:0!important;gap:8px}.arena-shell .dock-self .portrait{width:32px;height:32px}.dock-self b{font-size:11px}.dock-self b>em{font-size:6px;padding:2px 3px}.dock-self small{font-size:8px;max-width:150px}.dock-instruction{font-size:9px;text-align:left;line-height:1.3}.dock-actions{gap:6px;min-width:0}.arena-shell .uno-button{min-height:27px;min-width:60px;font-size:17px;border-radius:6px;padding:4px 8px;box-shadow:0 3px 0 #830942}.arena-shell .uno-button.announced{font-size:12px}.arena-shell .dock-actions .subtle{font-size:8px;padding:4px 7px;min-height:25px}.arena-shell .hand{grid-column:2;grid-row:1;min-height:91px;padding:11px 8px 5px;margin:0}.hand-slot{width:42px;height:77px}.arena-shell .hand .playing-card{width:54px;height:78px;border-width:2px;border-radius:7px}.arena-shell .hand .playing-card .card-face{font-size:29px;inset:10px 4px;border-width:1px}.arena-shell .hand .playing-card .card-corner{font-size:9px;left:3px;top:3px}.arena-shell .hand .playing-card .card-corner.bottom{top:auto;left:auto;right:3px;bottom:3px}.hand-helper{display:none}.arena-waiting{min-width:230px;gap:5px;top:57%}.arena-waiting img{width:93px}.arena-waiting h2{font-size:15px}.arena-waiting p{font-size:10px}.arena-waiting>span{font-size:9px}.arena-waiting .button{font-size:10px;min-height:26px;padding:5px 10px;margin-top:2px}.waiting-helper{font-size:11px;padding:15px 0}.arena-shell .spectator-note{font-size:11px;padding:14px 0}.arena-board.eight-seats .player-seat .portrait{width:33px;height:33px}.arena-board.eight-seats .player-seat>b{font-size:10px}.arena-board.eight-seats .seat-role{font-size:6px}}
@media(prefers-reduced-motion:reduce){.uno-button.ready{animation:none!important}.hand-slot{transition:none}.flying-card{display:none}}
/* Artes vetoriais do baralho. */
.playing-card{padding:0;overflow:hidden;background:none!important;border:0!important}.card-art{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none;user-select:none}.card-back{border:0!important;background:none!important;overflow:hidden}.card-back .card-back-art,.arena-shell .draw-stack .card-back-art{position:static;left:auto;top:auto;transform:none;width:100%;height:100%;display:block;object-fit:fill;filter:none}.arena-shell .playing-card{border:0!important}.opponent-cards .card-back{box-shadow:0 2px 4px #0005}.flying-card{border-radius:10px;overflow:hidden}.flying-card .playing-card{padding:0;border:0!important}.hero-content .hero-note{margin-top:15px}
.friend-code{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px;border:1px solid #3a3553;background:#171527;border-radius:12px;margin-bottom:20px}.friend-code b{font-size:13px;color:#9e98b9;display:block}.friend-code span{font-size:26px;letter-spacing:4px;display:block;margin-top:8px;font-weight:700;color:#d8c4ff}.add-friend-form{display:flex;gap:14px;align-items:flex-end;margin:24px 0 34px}.add-friend-form label{flex:1}.friend-list{display:grid;gap:12px;margin-bottom:22px}.friend-card{display:flex;align-items:center;gap:15px;padding:18px;border:1px solid #282b3c;border-radius:10px;background:#121621}.friend-card .portrait{width:52px;height:52px}.friend-card>div{flex:1;min-width:0}.friend-card b{display:block;font-size:17px}.friend-card>div>span{display:block;font-size:12px;color:#8b97ab;margin-top:5px}.friend-online{width:8px;height:8px;border-radius:50%;background:#586277}.friend-online.online{background:#42e7a8;box-shadow:0 0 10px #42e7a833}@media(max-width:760px){.friend-code{padding:17px}.friend-code span{font-size:21px;letter-spacing:3px}.friend-code .button{font-size:12px;padding:10px}.friend-card{padding:13px;gap:10px;flex-wrap:wrap}.friend-card b{font-size:15px}.friend-card .button{font-size:12px;padding:9px 12px;min-height:36px}.add-friend-form{flex-wrap:wrap}.add-friend-form label{flex-basis:100%}.mobile-nav button{font-size:11px}.hero-content .hero-note{font-size:11px}}
/* Área segura para os avatares e destaque da própria vez. */
.arena-board .player-seat{top:clamp(78px,var(--y),calc(100% - 72px))}
@media(max-width:600px) and (orientation:portrait){.arena-board .player-seat{top:clamp(65px,var(--y),calc(100% - 57px))}.arena-board.eight-seats .player-seat>b,.arena-board.six-seats .player-seat>b{font-size:12px}.arena-board.eight-seats .seat-role,.arena-board.six-seats .seat-role{font-size:7px}}
@media(max-height:650px) and (orientation:landscape){.arena-board .player-seat{top:clamp(41px,var(--y),calc(100% - 39px))}.arena-board .player-seat.top-seat{top:24px;display:grid;grid-template-columns:37px 1fr;grid-template-rows:20px 14px;gap:0 6px;width:135px;min-width:135px;text-align:left}.arena-board .top-seat .seat-portrait{grid-column:1;grid-row:1/3}.arena-board .top-seat>b{grid-column:2;grid-row:1;font-size:12px;align-self:end}.arena-board .top-seat .seat-role{grid-column:2;grid-row:2;font-size:7px;align-self:start}.arena-board .top-seat .playing-label{top:3px;right:-36px}.arena-board .top-seat .uno-badge{top:5px;right:-30px}.arena-board .player-seat>b,.arena-board.eight-seats .player-seat>b{font-size:12px}.arena-board .seat-role,.arena-board.eight-seats .seat-role{font-size:7px}}
/* Mesa Signature */
.arena-shell{background:radial-gradient(ellipse at 50% -20%,#263051,transparent 60%),#070b14}.arena-header .button{background:linear-gradient(#1a2439,#10192a);border-color:#ffffff15;border-radius:12px}.arena-team{border-color:#ffffff10;background:#111a2a;border-radius:12px}.arena-team.my-team{background:linear-gradient(110deg,#04cef41b,#198af509);border-color:#04cef43a}
.arena-board{border-radius:150px;border:10px solid #1c2335;background:radial-gradient(ellipse at 50% 42%,#205169,#173e52 45%,#102a3c 85%);box-shadow:0 0 0 1px #6e7a9666,0 0 0 5px #0b1020,0 0 0 6px #35425d,inset 0 0 0 2px #9fc9d532,inset 0 0 0 7px #0715216b,inset 0 22px 40px #02071177,0 25px 50px #0008}.felt-texture{opacity:.7;background-image:repeating-radial-gradient(circle at 30% 30%,#ffffff03 0 1px,transparent 1px 3px)}.felt-edge{inset:19px 24px;border:1px dashed #94c3d327;border-radius:130px}.felt-brand{display:none}.table-signature{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);font-size:65px;font-weight:900;letter-spacing:5px;color:#9bd5e309;white-space:nowrap;pointer-events:none}.table-signature>span{font-weight:300}.table-signature small{display:block;text-align:center;letter-spacing:7px;font-size:10px;color:#b8efff12;margin-top:7px}
.arena-shell .player-seat .portrait{background:radial-gradient(circle,#60718d,#25374d);box-shadow:0 0 0 4px #0a1b2b,0 0 0 5px #a3c0da22,0 9px 16px #0008;border-width:2px}.arena-shell .player-seat>b{padding:5px 13px;background:linear-gradient(#1a2c3f,#0d1d2d);border:1px solid #91bbd025;border-radius:7px;box-shadow:0 4px 9px #0005;font-size:14px;min-width:82px}.arena-shell .player-seat.current .portrait{border-color:#ffe49f;box-shadow:0 0 0 5px #f5bb4228,0 0 0 6px #f5bb4255,0 0 32px #f5bb4238}.cards-count{background:linear-gradient(#253951,#0a1627);border-color:#adc4e1;box-shadow:0 3px 8px #0007}.playing-label{background:linear-gradient(#ffe7a6,#f3bc48);border-radius:20px;font-size:8px;top:-22px;padding:5px 11px}.seat-role{font-size:8px;opacity:.85;letter-spacing:1.3px}
.turn-banner{border-radius:12px!important;background:linear-gradient(135deg,#0b1c2dde,#142c3ce8)!important;border:1px solid #76a2be30!important;padding:12px 20px!important;box-shadow:0 8px 25px #0003}.turn-banner.your-turn{border-color:#f5bb4259!important;background:linear-gradient(135deg,#292b27ed,#132b36ed)!important}.turn-banner b{font-size:12px!important;letter-spacing:1px}.turn-banner span:not(.turn-dot){font-size:11px!important;color:#abbcd0!important;margin-top:5px}.turn-banner.your-turn b{color:#ffe5a0}.arena-center{gap:22px}.arena-card-zone{gap:38px;padding:15px 30px 5px}.direction-orbit{border-color:#84bac421!important;background:radial-gradient(ellipse,#04cef407,transparent 70%)}.direction-orbit>span{color:#79c9dc88!important}.deck-area>span,.discard-area>span{font-size:9px;color:#92b2c5;letter-spacing:1.8px}.arena-shell .discard-card{transform:rotate(9deg);filter:drop-shadow(0 12px 10px #0005)}.arena-shell .draw-stack{filter:drop-shadow(0 10px 12px #0006)}.arena-color{border:1px solid #ffffff12;background:#07172496;border-radius:20px;color:#bdd8e3;padding:7px 14px}.arena-last-play{color:#86a5b5}
.arena-hand-dock{background:linear-gradient(180deg,#111b2d,#0b1220);border:1px solid #ffffff0b;border-radius:22px;margin-top:16px;padding:16px 22px 10px;box-shadow:0 10px 30px #0003}.dock-instruction{color:#97a8c5;font-size:13px}.dock-instruction.active{color:#e8cf92}.arena-shell .hand .playing-card.playable{box-shadow:0 0 0 1px #ffecb6,0 0 20px #f5bb4225,0 9px 18px #0008;border-radius:11px;transform:translateY(-7px)}.hand-helper{color:#7d91af}
@media(max-width:1000px){.arena-board{border-width:7px;border-radius:100px}.arena-hand-dock{padding:12px 14px 8px}}
@media(max-width:600px) and (orientation:portrait){.arena-shell{min-height:820px}.arena-board{border-radius:80px;border-width:6px}.felt-edge{inset:13px 12px;border-radius:65px}.table-signature{font-size:29px;letter-spacing:1px}.table-signature small{font-size:7px;letter-spacing:3px}.arena-shell .player-seat>b{font-size:11px!important;padding:4px 6px;min-width:54px;border-radius:5px}.seat-role{font-size:7px;letter-spacing:.4px}.arena-center{gap:13px}.turn-banner{padding:9px 12px!important;min-width:170px;max-width:200px}.turn-banner b{font-size:9px!important;letter-spacing:.4px}.turn-banner span:not(.turn-dot){font-size:9px!important}.arena-card-zone{gap:21px;padding:9px 12px 0}.deck-area>span,.discard-area>span{font-size:7px;letter-spacing:.7px}.arena-color{font-size:9px;padding:5px 9px}.arena-hand-dock{margin-top:12px;padding:10px 9px 8px;border-radius:16px}.dock-instruction{font-size:11px}}
@media(max-height:650px) and (orientation:landscape){.arena-board{border-width:5px;border-radius:90px}.felt-edge{inset:10px 15px;border-radius:80px}.table-signature{font-size:36px}.arena-shell .player-seat>b{font-size:11px!important;padding:3px 8px;min-width:65px}.arena-board .top-seat>b{padding:0;background:none;border:0;box-shadow:none;min-width:0}.arena-board .player-seat.top-seat{top:23px}.arena-center{gap:7px;top:59%}.turn-banner{padding:5px 12px!important;min-width:205px}.turn-banner b{font-size:8px!important}.turn-banner span:not(.turn-dot){font-size:8px!important;margin-top:2px}.arena-card-zone{gap:20px;padding:5px 18px 0}.deck-area>span,.discard-area>span{font-size:6px;letter-spacing:.6px}.arena-color{font-size:8px;padding:4px 7px}.arena-hand-dock{min-height:101px;margin-top:8px;padding:5px 12px;border-radius:14px;grid-template-columns:195px 1fr}.dock-instruction{font-size:9px}.playing-label{top:-15px;padding:3px 6px;font-size:7px}.arena-board .top-seat .playing-label{top:0}.arena-shell .hand .playing-card.playable{transform:translateY(-4px)}}
/* Cartas maiores e energia de turno */
.arena-shell .hand .playing-card{width:112px;height:162px}.hand-slot{width:85px;height:162px}.arena-shell .hand{min-height:185px;padding-top:22px}.arena-hand-dock{min-height:255px}.arena-shell .draw-stack,.arena-shell .discard-card{width:118px;height:171px}.draw-stack>.card-back{width:100%;height:100%}.arena-shell .player-seat>b{font-size:17px!important}.arena-title h1{font-size:24px}.arena-title>span{font-size:13px}.arena-team b{font-size:12px}.arena-team>div>span{font-size:14px}.seat-role{font-size:10px}.dock-self b{font-size:18px}.dock-self small{font-size:13px}.dock-instruction{font-size:16px}.turn-banner b{font-size:15px!important}.turn-banner span:not(.turn-dot){font-size:13px!important}.arena-last-play{font-size:13px}.hand-helper{font-size:12px}.opponent-cards{height:46px}.opponent-cards .card-back{width:32px;height:46px;margin-right:-14px}
.arena-shell .player-seat.current .portrait{animation:turn-glow 1.7s ease-in-out infinite}.turn-banner.your-turn{box-shadow:0 0 25px #f5bb4220}.special-celebration{position:fixed;left:50%;top:40%;transform:translate(-50%,-50%);z-index:120;pointer-events:none;width:min(420px,85vw);padding:23px 26px;text-align:center;border:2px solid #a879ff;border-radius:24px;background:linear-gradient(145deg,#291840f5,#101f38f5);box-shadow:0 0 70px #813ee766,0 20px 50px #0009;animation:special-pop 2.3s both}.special-celebration strong{display:block;color:#e0c0ff;font-size:65px;line-height:1.1;text-shadow:0 0 25px #a879ff}.special-celebration b{display:block;margin:12px 0 9px;color:#fff;font-size:24px;letter-spacing:.5px}.special-celebration span{display:block;font-size:16px;line-height:1.5;color:#dfd4ee}.effect-draw{border-color:#ff438c;background:linear-gradient(145deg,#42162af5,#141c34f5);box-shadow:0 0 65px #ff087d55,0 20px 50px #0009}.effect-draw strong{color:#ff90b5}.effect-skip{border-color:#ffca57}.effect-skip strong{color:#ffe29b}
@keyframes turn-glow{0%,100%{box-shadow:0 0 0 5px #f5bb4225,0 0 16px #f5bb4233}50%{box-shadow:0 0 0 8px #f5bb4238,0 0 40px #f5bb4280}}@keyframes special-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(-6deg)}12%,80%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}100%{opacity:0;transform:translate(-50%,-55%) scale(.95)}}
@media(max-width:600px) and (orientation:portrait){.arena-shell{min-height:880px}.arena-hand-dock{min-height:253px}.arena-shell .hand .playing-card{width:85px;height:123px}.hand-slot{width:52px;height:123px}.arena-shell .hand{min-height:150px;padding-top:18px}.arena-shell .draw-stack,.arena-shell .discard-card{width:79px;height:115px}.arena-shell .player-seat>b{font-size:13px!important}.arena-title h1{font-size:16px}.arena-title>span{font-size:10px}.arena-team b{font-size:9px}.arena-team>div>span{font-size:10px}.seat-role{font-size:8px!important}.turn-banner b{font-size:11px!important}.turn-banner span:not(.turn-dot){font-size:10px!important}.dock-self b{font-size:14px}.dock-self small{font-size:11px}.dock-instruction{font-size:12px}.hand-helper{font-size:10px}.arena-last-play{font-size:10px}.eight-seats .opponent-cards .card-back{width:17px;height:25px;margin-right:-8px}.special-celebration b{font-size:21px}.special-celebration span{font-size:14px}}
@media(max-height:650px) and (orientation:landscape){.arena-shell{min-height:390px}.arena-hand-dock{min-height:124px;grid-template-columns:200px 1fr}.arena-shell .hand .playing-card{width:72px;height:104px}.hand-slot{width:52px;height:104px}.arena-shell .hand{min-height:116px;padding-top:12px}.arena-shell .draw-stack,.arena-shell .discard-card{width:61px;height:88px}.arena-center{top:59%;gap:5px}.arena-shell .player-seat>b{font-size:13px!important}.arena-title h1{font-size:15px}.arena-title>span{font-size:10px}.arena-team b{font-size:9px}.arena-team>div>span{font-size:10px}.seat-role{font-size:8px!important}.turn-banner b{font-size:10px!important}.turn-banner span:not(.turn-dot){font-size:9px!important}.dock-self b{font-size:13px}.dock-self small{font-size:10px}.dock-instruction{font-size:11px}.arena-last-play{font-size:9px}.arena-color{right:-65px}.special-celebration{top:45%;padding:15px 22px}.special-celebration strong{font-size:45px}.special-celebration b{font-size:20px;margin:8px 0}.special-celebration span{font-size:14px}}
@media(prefers-reduced-motion:reduce){.arena-shell .player-seat.current .portrait{animation:none}.special-celebration{animation:none}}
/* Reservar espaço para as cartas no celular horizontal. */
@media(max-height:650px) and (orientation:landscape){.arena-center>.turn-banner{display:none}.arena-center{top:60%;max-width:230px}.arena-last-play{display:none}.arena-card-zone{padding-top:0}.arena-color{bottom:38px}.arena-board .top-seat>b{font-size:13px!important}.dock-instruction.active{color:#ffe6a1;font-weight:700}}
@media(max-width:600px) and (orientation:portrait){.arena-title>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:215px}.arena-title h1{font-size:16px}.arena-shell .hand{overflow-x:auto}.turn-banner{max-width:225px}}
/* Assentos ampliados para a mesa de até oito jogadores e carteira pessoal. */
.arena-shell{min-height:850px}.arena-board{min-height:440px}.arena-board .player-seat{top:clamp(92px,var(--y),calc(100% - 86px));width:150px}.arena-shell .arena-board .player-seat .portrait{width:76px;height:76px}.arena-shell .arena-board .player-seat>b{font-size:18px!important;max-width:145px;min-width:100px}.arena-board .seat-role{font-size:11px!important}.arena-board .cards-count{width:29px;height:29px;font-size:15px}.arena-center{top:54%}.unoleta-coin{width:38px;height:38px;object-fit:contain;vertical-align:middle;filter:drop-shadow(0 3px 5px #0004)}.balance .unoleta-coin{width:28px;height:28px}.wallet-card h2 .unoleta-coin{width:55px;height:55px}.player-wallet-bar{display:flex;align-items:center;gap:28px;flex-shrink:0;padding:12px 20px;margin-top:12px;border:1px solid #e5c97620;background:linear-gradient(110deg,#191f2f,#111725);border-radius:16px}.wallet-identity{display:flex;gap:11px;align-items:center;min-width:160px}.wallet-identity .portrait{width:40px;height:40px}.wallet-identity b{display:block;font-size:15px}.wallet-identity span{display:block;color:#8494af;font-size:9px;letter-spacing:1px;margin-top:4px}.table-balance{display:flex;align-items:center;gap:10px}.table-balance .unoleta-coin{width:47px;height:47px}.table-balance>div>span{display:block;font-size:10px;letter-spacing:1px;color:#d7bf83}.table-balance strong{font-size:25px;color:#ffe2a2}.table-balance strong small{font-size:12px;color:#ad9e7b;font-weight:400}.table-balance.purchased strong{color:#b7c7e5}.table-balance.purchased>div>span{color:#9eabc2}.table-balance.purchased .unoleta-coin{filter:saturate(.55)}.wallet-demo-tag{margin-left:auto;font-size:9px;letter-spacing:1px;color:#8792a9;padding:7px 10px;border:1px solid #ffffff12;border-radius:6px}
@media(max-width:600px) and (orientation:portrait){.arena-shell{min-height:1010px}.arena-board{min-height:470px}.arena-board .player-seat{top:clamp(85px,var(--y),calc(100% - 76px));width:85px;min-width:80px}.arena-shell .arena-board .player-seat .portrait{width:54px;height:54px}.arena-shell .arena-board .player-seat>b{font-size:14px!important;min-width:64px;max-width:86px}.arena-board .seat-role{font-size:8px!important}.arena-board .cards-count{width:23px;height:23px;font-size:12px}.arena-board .opponent-cards{height:25px}.arena-center{top:55%}.arena-board.eight-seats .arena-center{top:55%}.player-wallet-bar{padding:12px;gap:12px;flex-wrap:wrap;border-radius:14px}.wallet-identity{flex-basis:100%;min-width:0}.wallet-identity .portrait{width:33px;height:33px}.wallet-identity b{font-size:14px}.table-balance{flex:1;gap:7px}.table-balance .unoleta-coin{width:36px;height:36px}.table-balance>div>span{font-size:8px;letter-spacing:.4px}.table-balance strong{font-size:23px}.table-balance strong small{font-size:10px}.wallet-demo-tag{margin:0;flex-basis:100%;text-align:center;padding:4px;font-size:8px}}
@media(max-height:650px) and (orientation:landscape){.arena-shell{min-height:445px}.arena-board{min-height:192px}.arena-board .player-seat{top:clamp(48px,var(--y),calc(100% - 44px));width:120px}.arena-shell .arena-board .player-seat .portrait{width:46px;height:46px}.arena-shell .arena-board .player-seat>b{font-size:14px!important;min-width:72px;max-width:110px}.arena-board .seat-role{font-size:9px!important}.arena-board .cards-count{width:22px;height:22px;font-size:12px}.arena-board .player-seat.top-seat{top:28px;width:156px;grid-template-columns:48px 1fr;grid-template-rows:25px 17px}.arena-board .top-seat>b{min-width:0!important}.arena-center{top:63%}.player-wallet-bar{padding:5px 12px;margin-top:8px;gap:18px;border-radius:10px;min-height:43px}.wallet-identity{min-width:145px;gap:8px}.wallet-identity .portrait{width:29px;height:29px}.wallet-identity b{font-size:12px}.wallet-identity span{font-size:7px}.table-balance .unoleta-coin{width:33px;height:33px}.table-balance>div>span{font-size:8px}.table-balance strong{font-size:20px}.table-balance strong small{font-size:10px}.wallet-demo-tag{font-size:7px;padding:5px}}
@media(max-width:600px) and (orientation:portrait){.arena-board .upper-seat .opponent-cards{display:none}.arena-board .upper-seat{top:77px}}
/* Identidade Stars, jogadores grandes e sorteio sincronizado pelo servidor. */
.arena-shell{min-height:960px}.arena-board{min-height:510px;background:radial-gradient(ellipse at 50% 50%,#253c63,#172945 55%,#101b31);border-color:#25283f}.felt-edge{border-color:#aa9bfb36}.table-signature{top:53%;font-size:90px;color:#a99dff09}.table-stars{position:absolute;inset:0;pointer-events:none}.table-stars span{position:absolute;font-size:55px;color:#04cef418;left:32%;top:13%;text-shadow:0 0 35px #04cef424}.table-stars span:nth-child(2){left:64%;top:12%;color:#ff087d22}.table-stars span:nth-child(3){left:32%;top:76%;color:#813ee733}.table-stars span:nth-child(4){left:64%;top:75%;color:#f5bb4222}.arena-shell .arena-board .player-seat .portrait{width:94px;height:94px}.arena-shell .arena-board .player-seat>b{font-size:21px!important}.arena-board .player-seat{top:clamp(105px,var(--y),calc(100% - 98px));width:175px}.arena-shell .hand .playing-card{width:124px;height:180px}.hand-slot{height:180px;width:95px}.arena-shell .hand{min-height:204px}.arena-hand-dock{min-height:280px}.portrait.user-photo img{object-position:center!important}.profile-preview-wrap img{object-position:center!important;width:145px;height:145px}#photo-adjust{padding:12px;background:#101b2a;border:1px solid #ffffff15;border-radius:12px}#photo-adjust p{font-size:13px;color:#bfcdeb}#photo-adjust input{padding:0;accent-color:#04cef4}.starter-overlay{position:fixed;inset:0;z-index:150;display:grid;place-items:center;background:#070b18dd;backdrop-filter:blur(7px)}.starter-panel{width:min(430px,90vw);text-align:center;padding:28px;border-radius:28px;border:1px solid #a78cff66;background:radial-gradient(ellipse at top,#302356,#101a30);box-shadow:0 0 90px #813ee72b}.starter-panel h2{font-size:27px;margin:0 0 24px}.starter-panel p{font-size:17px;color:#c5b9ed;font-weight:600}.wheel-wrap{position:relative;width:260px;height:260px;margin:auto}.starter-wheel{width:100%;height:100%;border-radius:50%;border:7px solid #ffe4a3;box-shadow:0 0 0 5px #7b5130,0 0 50px #f5bb4233;animation:wheel-spin 3.5s cubic-bezier(.12,.6,.12,1) forwards}.starter-wheel:after{content:'✦';position:absolute;inset:95px;border-radius:50%;display:grid;place-items:center;background:#111b32;color:#ffe49f;font-size:32px;box-shadow:0 0 0 4px #ffe4a3}.starter-wheel img{position:absolute;width:43px;height:43px;left:calc(50% - 21.5px);top:calc(50% - 21.5px);border-radius:50%;border:2px solid #fff;background:#17223b;object-fit:cover;transform:rotate(var(--angle)) translateY(-86px) rotate(calc(-1 * var(--angle)))}.wheel-pointer{position:absolute;top:-24px;left:calc(50% - 16px);font-size:34px;color:#fff0b5;z-index:2;filter:drop-shadow(0 3px 3px #0009)}.starter-panel.selected p{color:#ffe4a3}@keyframes wheel-spin{from{transform:rotate(0)}to{transform:rotate(var(--rotation))}}
@media(max-width:600px) and (orientation:portrait){.arena-shell{min-height:1090px}.arena-board{min-height:530px}.arena-shell .arena-board .player-seat .portrait{width:66px;height:66px}.arena-shell .arena-board .player-seat>b{font-size:16px!important}.arena-board .player-seat{width:90px;top:clamp(92px,var(--y),calc(100% - 85px))}.arena-board .upper-seat{top:85px}.arena-shell .hand .playing-card{width:94px;height:136px}.hand-slot{width:58px;height:136px}.arena-shell .hand{min-height:162px}.arena-hand-dock{min-height:265px}.table-signature{font-size:42px}.table-stars span{font-size:32px}.arena-board.eight-seats .arena-center{top:56%}}
@media(max-height:650px) and (orientation:landscape){.arena-shell{min-height:520px}.arena-board{min-height:235px}.arena-shell .arena-board .player-seat .portrait{width:59px;height:59px}.arena-shell .arena-board .player-seat>b{font-size:16px!important}.arena-board .player-seat{top:clamp(61px,var(--y),calc(100% - 56px))}.arena-board .player-seat.top-seat{top:34px;grid-template-columns:61px 1fr;grid-template-rows:30px 24px;width:174px}.arena-shell .hand .playing-card{width:82px;height:119px}.hand-slot{width:59px;height:119px}.arena-shell .hand{min-height:132px}.arena-hand-dock{min-height:139px}.table-signature{font-size:50px}}
@media(prefers-reduced-motion:reduce){.starter-wheel{animation:none;transform:rotate(var(--rotation))}}
.arena-center>.turn-banner{display:none}.arena-center{top:55%}.dock-instruction.active{font-weight:750;color:#ffe6a1;text-shadow:0 0 18px #f5bb4230}.arena-board .upper-seat .opponent-cards{display:none}
/* Ajuste de tamanho e brilho solicitado. */
.arena-shell .arena-board .player-seat .portrait{width:122px;height:122px}.arena-board .player-seat{top:clamp(120px,var(--y),calc(100% - 113px))}.arena-shell .player-seat.current .portrait{border-color:#fff1bd;animation:turn-glow-strong 1.5s ease-in-out infinite}.dock-self.current .portrait{border-color:#fff1bd!important;animation:turn-glow-strong 1.5s ease-in-out infinite}
@keyframes turn-glow-strong{0%,100%{box-shadow:0 0 0 6px #ffd66b45,0 0 25px #ffc94d88,0 0 50px #ffc94d30}50%{box-shadow:0 0 0 10px #ffd66b55,0 0 44px #ffd66baa,0 0 75px #ffc94d55}}
@media(max-width:600px) and (orientation:portrait){.arena-shell{min-height:1140px}.arena-board{min-height:580px}.arena-shell .arena-board .player-seat .portrait{width:86px;height:86px}.arena-board .player-seat{top:clamp(102px,var(--y),calc(100% - 98px));width:100px}.arena-board .upper-seat{top:100px}.arena-shell .arena-board .player-seat>b{font-size:16px!important}.arena-board .player-seat{left:clamp(49px,var(--x),calc(100% - 49px))}}
@media(max-height:650px) and (orientation:landscape){.arena-shell{min-height:565px}.arena-board{min-height:280px}.arena-shell .arena-board .player-seat .portrait{width:77px;height:77px}.arena-board .player-seat{top:clamp(73px,var(--y),calc(100% - 68px))}.arena-board .player-seat.top-seat{top:43px;grid-template-columns:79px 1fr;grid-template-rows:40px 30px;width:192px}}
@media(prefers-reduced-motion:reduce){.arena-shell .player-seat.current .portrait,.dock-self.current .portrait{animation:none;box-shadow:0 0 0 6px #ffd66b45,0 0 30px #ffc94d88}}
/* Dicas privadas: estado da própria mão, com compra acessível junto ao aviso. */
.dock-instruction{display:flex;flex-direction:column;gap:6px;text-align:left;max-width:420px}.dock-instruction strong{font-size:18px;color:#afbed8}.dock-instruction.active strong{color:#ffe9b2}.dock-instruction>span{font-size:13px;line-height:1.5;color:#9fb1cc;font-weight:400}.arena-shell .coach-draw{align-self:flex-start;background:linear-gradient(120deg,#04cef4,#198af5);color:#07182a;border:0;border-radius:9px;padding:9px 15px;font-size:13px;font-weight:800;min-height:35px;box-shadow:0 0 20px #04cef425}.private-turn-notice{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);z-index:130;max-width:85vw;padding:17px 25px;border:1px solid #ffe19b88;border-radius:15px;background:linear-gradient(135deg,#263045f5,#121c2ef5);color:#ffe6ac;font-size:18px;font-weight:750;box-shadow:0 0 35px #f5bb4225,0 10px 25px #0008;pointer-events:none;animation:private-pop .25s ease-out}@keyframes private-pop{from{opacity:0;transform:translate(-50%,15px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:600px) and (orientation:portrait){.dock-instruction{gap:4px}.dock-instruction strong{font-size:14px}.dock-instruction>span{font-size:11px}.arena-shell .coach-draw{padding:7px 12px;font-size:12px;min-height:31px}.arena-hand-dock{min-height:295px}.private-turn-notice{font-size:14px;bottom:18px;padding:14px 18px;width:max-content}}
@media(max-height:650px) and (orientation:landscape){.dock-instruction{gap:3px}.dock-instruction strong{font-size:12px}.dock-instruction>span{font-size:10px}.arena-shell .coach-draw{padding:5px 9px;font-size:10px;min-height:26px}.arena-hand-dock{min-height:172px}.private-turn-notice{font-size:14px;padding:12px 18px;bottom:18px}}
@media(prefers-reduced-motion:reduce){.private-turn-notice{animation:none}}
/* Recado privado ao lado da mão: permanece até a compra ou jogada. */
.hand-helper{align-items:center;min-height:64px;gap:18px;padding-top:10px}.hand-helper>span:first-child{font-size:12px}.hand-coach{display:flex;align-items:center;gap:12px;padding:11px 15px;background:#19253b;border:1px solid #ffffff12;border-radius:14px;color:#b6c7df;max-width:470px;text-align:left;box-shadow:0 5px 16px #0002}.hand-coach.active{background:linear-gradient(120deg,#262840,#16263b);border-color:#b4a0ff35}.hand-coach.needs-draw{background:linear-gradient(120deg,#35283b,#17283a);border-color:#ffc77f50}.coach-emoji{font-size:27px;line-height:1;flex-shrink:0}.hand-coach b{display:block;font-size:15px;color:#e9edff;line-height:1.3}.hand-coach.needs-draw b{color:#ffe2b4}.hand-coach>div>span{display:block;font-size:12px;margin-top:4px;color:#9aacc9;line-height:1.4}.arena-shell .hand-coach .coach-draw{align-self:center;flex-shrink:0;margin-left:10px;min-height:35px;font-size:12px;padding:9px 12px;border-radius:10px}.arena-hand-dock{min-height:320px}.dock-instruction{max-width:300px}.dock-instruction strong{font-size:17px}
@media(max-width:600px) and (orientation:portrait){.hand-helper{flex-wrap:wrap;gap:8px;padding-top:9px}.hand-helper>span:first-child{font-size:11px;max-width:100%}.hand-coach{width:100%;max-width:none;padding:10px;gap:9px}.hand-coach b{font-size:13px}.hand-coach>div>span{font-size:11px}.coach-emoji{font-size:24px}.arena-shell .hand-coach .coach-draw{font-size:11px;padding:8px;margin-left:auto}.arena-hand-dock{min-height:320px}.dock-instruction strong{font-size:13px}}
@media(max-height:650px) and (orientation:landscape){.arena-hand-dock{grid-template-columns:200px 1fr;min-height:193px}.hand-helper{display:flex;grid-column:2;grid-row:2;padding:5px 0 0;min-height:50px;justify-content:flex-end}.hand-helper>span:first-child{display:none}.hand-coach{padding:7px 11px;gap:8px}.hand-coach b{font-size:12px}.hand-coach>div>span{font-size:10px}.coach-emoji{font-size:22px}.arena-shell .hand-coach .coach-draw{font-size:10px;min-height:29px;padding:6px 9px}.dock-instruction strong{font-size:13px}}
.arena-board{margin-top:12px}.victory-party{position:fixed;inset:0;z-index:140;display:grid;place-items:center;background:#070b18cc;backdrop-filter:blur(5px);overflow:hidden}.party-decor{position:absolute;inset:0;pointer-events:none}.victory-card{position:relative;text-align:center;background:radial-gradient(ellipse at top,#40315f,#101d34 75%);border:1px solid #ffe39b77;padding:38px 34px;border-radius:30px;width:min(480px,92vw);box-shadow:0 0 100px #813ee744,0 0 40px #f5bb4222;z-index:2}.victory-kicker{color:#ffe7a8;letter-spacing:2px;font-size:12px;font-weight:800;display:block;margin-bottom:24px}.victory-card .portrait{width:132px;height:132px;border:4px solid #ffe29b;box-shadow:0 0 35px #f5bb4266}.victory-card h2{font-size:36px;color:#fff0bf;margin:22px 0 10px}.victory-card p{font-size:16px;color:#c1badb;line-height:1.6}.victory-card>strong{font-size:20px;color:#fff}.victory-actions{display:flex;gap:12px;justify-content:center;margin:26px 0 20px}.victory-card small{color:#939cb3;font-size:10px}.party-confetti{position:absolute;left:calc(mod(var(--i)*37,100)*1%);top:-20px;width:10px;height:18px;background:var(--c);animation:confetti-fall 4s linear infinite;animation-delay:calc(var(--i)*-.13s)}.party-balloon{position:absolute;bottom:-140px;left:calc(8% + var(--i)*20%);width:60px;height:76px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffffff99,var(--c) 55%);animation:balloon-rise 7s ease-in infinite;animation-delay:calc(var(--i)*-1.3s);box-shadow:inset -8px -12px 15px #0002}.party-balloon:after{content:'';position:absolute;top:76px;left:30px;width:1px;height:75px;background:#ffffff66}.party-firework{position:absolute;font-size:170px;color:#f5bb42;animation:firework-burst 2.6s ease-out infinite;text-shadow:0 0 30px currentColor}.fw-one{left:8%;top:14%}.fw-two{right:7%;top:23%;color:#ff087d;animation-delay:1s}.fw-three{left:20%;bottom:12%;color:#04cef4;animation-delay:1.8s}@keyframes confetti-fall{to{transform:translateY(110vh) rotate(720deg)}}@keyframes balloon-rise{to{transform:translateY(-130vh) rotate(12deg)}}@keyframes firework-burst{0%{opacity:0;transform:scale(.1)}20%{opacity:1}80%,100%{opacity:0;transform:scale(1.3)}}@media(max-width:600px){.victory-card{padding:27px 20px}.victory-card h2{font-size:28px}.victory-card .portrait{width:110px;height:110px}.victory-actions{flex-wrap:wrap}.party-firework{font-size:100px}}@media(max-height:650px) and (orientation:landscape){.victory-card{padding:17px 25px}.victory-kicker{margin-bottom:10px}.victory-card .portrait{width:75px;height:75px}.victory-card h2{font-size:26px;margin:10px}.victory-card p{font-size:13px;margin:8px}.victory-actions{margin:15px 0 10px}}@media(prefers-reduced-motion:reduce){.party-confetti,.party-balloon,.party-firework{animation:none}.party-firework{opacity:.2}.party-confetti{display:none}}
/* UNO com energia de anúncio, confirmado pelo servidor. */
.arena-shell .uno-button.ready:not(:disabled){min-width:160px;min-height:65px;font-size:28px;font-style:italic;border:2px solid #ffb3d1;background:linear-gradient(135deg,#ff438c,#e00a75);box-shadow:0 5px 0 #8b1048,0 0 35px #ff087d80;animation:uno-call 1s ease-in-out infinite}.arena-shell .uno-button.announced{min-width:135px;font-size:22px}.uno-shout{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);z-index:145;pointer-events:none;display:flex;flex-direction:column;align-items:center;width:min(520px,92vw);padding:28px 20px;border-radius:30px;background:radial-gradient(ellipse,#40214aee,#101c34e8);border:2px solid #ff80b566;box-shadow:0 0 90px #ff087d55;animation:uno-shout-enter .4s cubic-bezier(.2,1.5,.4,1)}.uno-shout>img{width:78px;height:78px;border-radius:50%;border:3px solid #ffe49b;background:#263855;box-shadow:0 0 25px #ffca5755}.uno-shout>span{font-size:18px;color:#f6d3e5;font-weight:700;margin-top:12px}.uno-shout>strong{font-size:clamp(45px,7vw,82px);font-weight:950;font-style:italic;letter-spacing:-3px;color:#fff2b8;-webkit-text-stroke:1px #ffe99b;text-shadow:3px 5px 0 #df0873,6px 9px 0 #781646,0 0 30px #ff087d;animation:uno-word .4s ease-out}.uno-shout>small{font-size:14px;color:#ddbddb;margin-top:12px}.uno-shout-stars{position:absolute;left:50%;top:50%}.uno-shout-stars i{position:absolute;font-style:normal;color:var(--c);font-size:22px;animation:uno-star 1.8s ease-out both;transform:rotate(var(--a)) translateY(-160px)}@keyframes uno-call{0%,100%{transform:rotate(-3deg) scale(1)}50%{transform:rotate(3deg) scale(1.07);filter:brightness(1.2)}}@keyframes uno-shout-enter{from{opacity:0;transform:translate(-50%,-50%) scale(.45) rotate(-9deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}@keyframes uno-word{from{transform:scale(.5) rotate(-8deg)}to{transform:scale(1) rotate(0)}}@keyframes uno-star{0%{opacity:1;transform:rotate(var(--a)) translateY(-30px) scale(.3)}100%{opacity:0;transform:rotate(var(--a)) translateY(-250px) scale(1.5)}}@media(max-width:600px) and (orientation:portrait){.arena-shell .uno-button.ready:not(:disabled){min-width:114px;min-height:47px;font-size:21px}.uno-shout{padding:23px 14px}.uno-shout>span{font-size:15px}.uno-shout>small{font-size:12px}.arena-shell .uno-button.announced{min-width:100px;font-size:18px}}@media(max-height:650px) and (orientation:landscape){.arena-shell .uno-button.ready:not(:disabled){min-width:115px;min-height:37px;font-size:21px}.uno-shout{top:45%;padding:15px}.uno-shout>img{width:53px;height:53px}.uno-shout>strong{font-size:53px}.uno-shout>span{font-size:14px;margin-top:7px}.uno-shout>small{font-size:12px;margin-top:5px}}@media(prefers-reduced-motion:reduce){.uno-shout,.uno-shout>strong,.uno-shout-stars i,.arena-shell .uno-button.ready:not(:disabled){animation:none}.uno-shout-stars{display:none}}
/* Contagem exata sempre visível, independente do leque decorativo. */
.seat-hand-total{display:block;padding:4px 11px;border:1px solid #a9c5eb45;border-radius:20px;background:#081627e8;color:#fff3c6;font-size:14px;font-weight:800;white-space:nowrap;box-shadow:0 3px 8px #0004}.arena-board .player-seat .opponent-cards{display:none}.arena-board .cards-count{background:#071223;border-color:#ffe3a477;color:#fff1bd}.arena-board .seat-role{opacity:.7}.arena-board .player-seat{gap:5px}
@media(max-width:600px) and (orientation:portrait){.seat-hand-total{font-size:12px;padding:4px 9px}.arena-board .player-seat{gap:4px}}
@media(max-height:650px) and (orientation:landscape){.seat-hand-total{font-size:11px;padding:3px 8px}.arena-board .player-seat{gap:3px}.arena-board .player-seat.top-seat{grid-template-rows:28px 19px 23px;grid-template-columns:79px 1fr;top:43px}.arena-board .top-seat .seat-portrait{grid-row:1/4}.arena-board .top-seat .seat-role{grid-row:2}.arena-board .top-seat .seat-hand-total{grid-column:2;grid-row:3;justify-self:start}.arena-board .top-seat>b{grid-row:1}}
/* Cada verso representa uma carta real da mão, sem limitar o leque a quatro. */
.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards{display:block;position:relative;width:150px;height:70px;margin-top:8px;padding:0;overflow:visible;opacity:1}.opponent-card-slot{position:absolute;left:calc(50% + (var(--n) - (var(--count) - 1)/2)*var(--spread));top:var(--lift);transform:translateX(-50%) rotate(var(--angle));transform-origin:50% 100%;z-index:var(--n);transition:transform .3s ease,top .3s ease}.arena-board .opponent-card-slot .card-back{width:43px;height:62px;margin:0;border-radius:5px;transform:none;box-shadow:0 3px 7px #0006}.arena-board .cards-count{display:none}.arena-board .player-seat{top:clamp(145px,var(--y),calc(100% - 130px))}.arena-shell{min-height:1090px}.arena-board{min-height:620px}.arena-center{top:57%}.opponent-card-slot:hover{z-index:100;transform:translateX(-50%) translateY(-8px) rotate(0)}
@media(max-width:600px) and (orientation:portrait){.arena-shell{min-height:1200px}.arena-board{min-height:640px}.arena-board .player-seat{top:clamp(119px,var(--y),calc(100% - 105px))}.arena-board .upper-seat{top:113px}.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards{width:94px;height:49px;margin-top:6px;--spread:min(9px,calc(62px / max(1,var(--count) - 1)))!important}.arena-board .opponent-card-slot .card-back{width:29px;height:42px;border-radius:3px}.arena-board.eight-seats .arena-center{top:56%}}
@media(max-height:650px) and (orientation:landscape){.arena-shell{min-height:650px}.arena-board{min-height:345px}.arena-board .player-seat{top:clamp(92px,var(--y),calc(100% - 86px))}.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards{width:125px;height:45px;--spread:min(11px,calc(87px / max(1,var(--count) - 1)))!important;margin-top:5px}.arena-board .opponent-card-slot .card-back{width:30px;height:43px}.arena-board .player-seat.top-seat{top:52px;grid-template-columns:79px 1fr;grid-template-rows:32px 22px 46px;width:200px}.arena-board .top-seat .opponent-cards{grid-column:2;grid-row:3}.arena-board .top-seat .seat-portrait{grid-row:1/4}.arena-center{top:62%}}
@media(prefers-reduced-motion:reduce){.opponent-card-slot{transition:none}}
@media(min-width:1001px) and (min-height:651px){.arena-board .upper-seat .opponent-cards{position:absolute;left:calc(50% + 58px);top:35px;width:135px;margin-top:0;transform:rotate(12deg)}}
/* Grito de arena: impacto, letras e luz; sem painel de retrato. */
.uno-shout{width:min(900px,96vw);padding:30px 20px;background:none;border:0;border-radius:0;box-shadow:none;isolation:isolate;top:43%;animation:uno-arena-enter .35s cubic-bezier(.2,1.4,.4,1)}.uno-shout>img{display:none}.uno-shout>span{color:#d5f5ff;font-size:22px;text-transform:uppercase;letter-spacing:3px;font-weight:900;transform:rotate(-4deg);text-shadow:0 3px 8px #000}.uno-shout>strong{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(65px,13vw,160px);font-style:italic;letter-spacing:-2px;color:#ffe47e;-webkit-text-stroke:2px #fff2c8;transform:rotate(-6deg);text-shadow:4px 7px 0 #93531a,8px 13px 0 #07192d,0 0 65px #04cef4aa;animation:uno-arena-word .35s ease-out}.uno-shout>small{font-size:14px;letter-spacing:3px;font-weight:800;color:#fff3c8;text-shadow:0 2px 8px #000}.uno-impact{position:absolute;inset:-70px -20px;z-index:-1;background:repeating-conic-gradient(from 10deg at 50% 50%,#04cef400 0deg 12deg,#04cef426 12deg 14deg,#ffe47e09 14deg 18deg);mask-image:radial-gradient(ellipse,#000 15%,#0009 35%,transparent 70%);animation:uno-shockwave .6s ease-out}.uno-shout-stars i{color:#ffe47e!important;font-size:29px}.arena-shell .uno-button{background:linear-gradient(135deg,#ffd869,#e49b24);color:#1c180f;border:1px solid #fff0bf;box-shadow:0 4px 0 #82521b;font-family:Impact,'Arial Black',sans-serif;font-style:italic}.arena-shell .uno-button.ready:not(:disabled){background:linear-gradient(135deg,#fff3b5,#ffc448 65%,#ee951e);color:#182035;border:2px solid #fff9d6;min-width:175px;min-height:67px;font-size:33px;box-shadow:0 5px 0 #845218,0 0 35px #ffd25777;animation:uno-call 1s ease-in-out infinite}.arena-shell .uno-button:disabled{background:linear-gradient(#3a4354,#202b3f);color:#8794ac;opacity:.55;box-shadow:none}.arena-shell .uno-button.announced{background:#143b4d;color:#8eeeff;opacity:1}.turn-clock{display:inline-flex!important;flex-direction:row;align-items:center;gap:5px;align-self:flex-start;background:#142237;border:1px solid #849bbb44;border-radius:8px;padding:5px 9px;color:#9be8ff!important;font-size:14px!important;font-variant-numeric:tabular-nums;font-weight:700}.turn-clock b{font-size:21px}.turn-clock.urgent{color:#ffe6a5!important;background:#45311c;border-color:#ffc64b77;box-shadow:0 0 18px #ffc64b25}.turn-clock.urgent b{color:#ffe6a5}@keyframes uno-arena-enter{from{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-14deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}@keyframes uno-arena-word{from{transform:scale(1.6) rotate(-10deg)}to{transform:scale(1) rotate(-6deg)}}@keyframes uno-shockwave{from{transform:scale(.3);opacity:0}to{transform:scale(1.1);opacity:1}}
@media(max-width:600px) and (orientation:portrait){.uno-shout>span{font-size:14px;letter-spacing:1.5px}.uno-shout>strong{font-size:67px;-webkit-text-stroke:1px #fff2c8}.uno-shout>small{font-size:10px;letter-spacing:1.5px}.arena-shell .uno-button.ready:not(:disabled){min-width:115px;min-height:48px;font-size:24px}.turn-clock{padding:3px 7px;font-size:12px!important}.turn-clock b{font-size:17px}}
@media(max-height:650px) and (orientation:landscape){.uno-shout>strong{font-size:100px}.uno-shout>span{font-size:17px}.uno-shout>small{font-size:11px}.arena-shell .uno-button.ready:not(:disabled){min-width:125px;min-height:40px;font-size:26px}.turn-clock{padding:3px 7px;font-size:11px!important}.turn-clock b{font-size:16px}}
@media(prefers-reduced-motion:reduce){.uno-shout,.uno-shout>strong,.uno-impact{animation:none}}
/* A mesa ocupa a área útil do celular; a mão se adapta à quantidade real. */
@media(orientation:landscape) and (max-height:650px){body.is-playing{margin:0;overflow:hidden}body.is-playing #app{height:100dvh}.arena-shell{height:100dvh;min-height:0;padding:5px 12px;box-sizing:border-box;gap:4px}.arena-header{height:32px;padding:0;gap:10px}.arena-header .arena-logo{height:30px;width:90px}.arena-header .button{min-height:26px;padding:5px 9px;font-size:10px}.arena-board{flex:1;min-height:0;margin:0 4px;border-width:5px;border-radius:70px}.arena-board .player-seat,.arena-board .player-seat.top-seat{display:flex;flex-direction:column;width:100px;min-width:0;gap:1px;top:clamp(42px,var(--y),calc(100% - 43px));left:clamp(52px,var(--x),calc(100% - 52px));transform:translate(-50%,-50%)}.arena-shell .arena-board .player-seat .portrait{width:clamp(30px,10dvh,45px);height:clamp(30px,10dvh,45px)}.arena-shell .arena-board .player-seat>b{font-size:11px!important;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arena-board .seat-role{display:none}.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards{width:85px;height:24px;margin:2px 0 0;--spread:min(8px,calc(60px / max(1,var(--count) - 1)))!important}.arena-board .opponent-card-slot .card-back{width:19px;height:28px}.arena-center,.arena-board.eight-seats .arena-center{top:55%;gap:14px}.arena-center .playing-card,.arena-center .card-back,.arena-shell .draw-stack{width:clamp(40px,13dvh,60px);height:clamp(58px,19dvh,87px)}.arena-center .discard-stack{width:60px;height:87px}.arena-center .draw-label,.arena-center .discard-label{font-size:8px}.table-signature{font-size:30px}.arena-hand-dock{flex:none;display:grid;grid-template-columns:180px 1fr;grid-template-rows:1fr 34px;height:clamp(125px,35dvh,165px);min-height:0;gap:0 10px;padding:5px 10px}.dock-header{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;gap:5px;align-items:flex-start;justify-content:center}.dock-self .portrait{width:34px;height:34px}.dock-self small{display:none}.dock-self b{font-size:12px}.dock-instruction strong{font-size:12px}.dock-instruction{gap:2px}.dock-actions{gap:5px}.arena-shell .uno-button,.arena-shell .uno-button.ready:not(:disabled),.arena-shell .uno-button.announced{min-width:94px;min-height:30px;font-size:20px;padding:3px 8px}.arena-shell .hand{grid-column:2;grid-row:1;min-height:0;padding:0;overflow:visible;display:block;align-self:stretch}.hand-fan{position:relative;height:100%;min-width:0;width:100%;display:block;--hand-card-width:clamp(52px,17dvh,75px);--hand-step:min(45px,calc((100% - var(--hand-card-width) - 20px) / max(1,var(--hand-count) - 1)))}.hand-slot{position:absolute;left:calc(50% + (var(--fan-order) - (var(--hand-count) - 1)/2)*var(--hand-step));top:8px;width:var(--hand-card-width);height:auto;margin:0;transform:translateX(-50%) rotate(var(--fan-angle));z-index:var(--fan-order)}.arena-shell .hand .playing-card{width:var(--hand-card-width);height:auto;aspect-ratio:0.69}.hand-slot:hover{transform:translateX(-50%) translateY(-8px) rotate(0)}.hand-helper{grid-column:2;grid-row:2;min-height:0;padding:0;margin:0;display:flex;justify-content:center}.hand-coach{padding:3px 8px;gap:6px;max-width:none;border-radius:9px}.hand-coach b{font-size:11px}.hand-coach>div>span{font-size:9px;margin:0}.coach-emoji{font-size:18px}.arena-shell .hand-coach .coach-draw{min-height:25px;padding:4px 8px}.player-wallet-bar{height:28px;min-height:0;padding:2px 12px;margin:0;flex:none}.player-wallet-bar .portrait{width:23px;height:23px}.wallet-identity b{font-size:11px}.wallet-identity span,.wallet-demo-tag,.table-balance>div>span{display:none}.table-balance strong{font-size:14px}.table-balance small{font-size:9px}.table-balance .unoleta-coin{width:24px;height:24px}.playing-label{font-size:7px;padding:2px 4px}.arena-waiting{top:52%;gap:2px;min-width:240px}.arena-waiting img{height:35px;width:100px;object-fit:contain}.arena-waiting h2{font-size:14px;margin:3px}.arena-waiting p{font-size:10px;margin:3px}}
@media(orientation:landscape) and (max-height:650px){.arena-board .upper-seat .opponent-cards{position:absolute;left:calc(50% + 30px);top:12px;width:85px;height:28px;transform:rotate(8deg)}.arena-board .upper-seat .portrait{width:36px!important;height:36px!important}.arena-board .upper-seat{top:33px!important}.hand-fan{--hand-card-width:clamp(48px,15dvh,68px)}.hand-slot{top:3px}.arena-center .draw-stack>.card-back{position:absolute;inset:0;width:100%;height:100%}.arena-center .deck-area>span,.arena-center .discard-area>span{font-size:7px}.arena-title h1{font-size:14px;margin:0}.arena-title>span{font-size:9px}.arena-header .arena-profile .portrait{width:27px;height:27px}.arena-board .upper-seat>b{background:#10283add;padding:1px 5px;border-radius:5px}.hand-coach{position:relative;z-index:30}.hand-slot:hover{z-index:40}}
#rotate-guide[hidden]{display:none!important}#rotate-guide{position:fixed;inset:0;z-index:180;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px;padding:30px;text-align:center;background:radial-gradient(ellipse at 50% 25%,#353064,#0a1224 70%);color:#edf4ff;box-sizing:border-box}#rotate-guide>img{width:min(270px,75vw);height:130px;object-fit:contain}.rotate-phone{width:62px;height:100px;border:3px solid #8aefff;border-radius:13px;display:grid;place-items:center;font-size:45px;color:#ffe399;box-shadow:0 0 35px #04cef433;animation:turn-phone 2.5s ease-in-out infinite}#rotate-guide h2{font-size:26px;line-height:1.2;max-width:320px;margin:5px 0}#rotate-guide p{font-size:16px;line-height:1.5;color:#bacbe6;max-width:320px;margin:0}#rotate-guide small{font-size:12px;color:#93a8cc;max-width:290px;line-height:1.5}body.needs-landscape{overflow:hidden}body.needs-landscape #app{visibility:hidden}body.needs-landscape .starter-overlay,body.needs-landscape .special-celebration,body.needs-landscape .uno-shout{visibility:hidden}@keyframes turn-phone{0%,25%,100%{transform:rotate(0)}55%,80%{transform:rotate(-90deg)}}@media(prefers-reduced-motion:reduce){.rotate-phone{animation:none;transform:rotate(-25deg)}}
@media(orientation:landscape) and (max-height:650px){.arena-shell{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(5px,env(safe-area-inset-bottom))}}
body.needs-landscape #app{height:100dvh;overflow:hidden}
/* Arena: jogadores no perímetro, cartas no palco central e tempo no avatar. */
.arena-shell{height:100dvh;min-height:0;box-sizing:border-box;padding:12px 24px;gap:8px;background:radial-gradient(ellipse at 50% 35%,#253667,#11192f 60%,#080e1d)}.arena-header{height:52px;padding:0;flex:none}.arena-board{flex:1;min-height:0;margin:0;border-radius:28px;border:1px solid #759be43b;background:radial-gradient(ellipse at 50% 54%,#26456866,transparent 58%),linear-gradient(150deg,#192946cc,#13203dcc);box-shadow:inset 0 0 70px #04cef407,0 10px 45px #0003;overflow:visible}.felt-edge{inset:15px;border-radius:20px;border:1px solid #82b7df14}.table-signature{display:none}.felt-texture{opacity:.25}.table-stars{opacity:.35}.arena-board:before{content:'';position:absolute;left:50%;top:61%;transform:translate(-50%,-50%);width:38%;height:64%;border:1px solid #74bdff16;border-radius:50%;background:radial-gradient(ellipse,#04cef408,transparent 65%);box-shadow:0 0 50px #813ee710;pointer-events:none}.arena-board .player-seat,.arena-board .player-seat.top-seat{display:flex;flex-direction:column;align-items:center;position:absolute;left:var(--x);top:var(--y);width:140px;min-width:0;gap:5px;transform:translate(-50%,-50%);text-align:center}.arena-shell .arena-board .player-seat .portrait{width:76px;height:76px;border:2px solid #a7bdd866;box-shadow:0 7px 20px #0005}.arena-board .player-seat>b,.arena-board .upper-seat>b{position:static!important;transform:none!important;color:#f1f6ff;background:none;border:0;font-size:15px!important;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0}.arena-board .seat-role,.playing-label,.bot-marker{display:none}.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards{position:relative;left:auto;top:auto;transform:none;width:115px;height:44px;margin:0;--spread:min(10px,calc(77px / max(1,var(--count) - 1)))!important}.arena-board .opponent-card-slot .card-back{width:30px;height:43px}.seat-portrait,.self-portrait-wrap{position:relative;display:inline-flex;flex:none;isolation:isolate}.avatar-timer{position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);overflow:visible;transform:rotate(-90deg);pointer-events:none;z-index:3;--time-left:100}.avatar-timer circle{fill:none;stroke-width:5}.timer-track{stroke:#8db4d02b}.timer-progress{stroke:#ffd663;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--time-left));stroke-linecap:round;filter:drop-shadow(0 0 4px #ffcb5488);transition:stroke-dashoffset .1s linear}.avatar-timer.urgent .timer-progress{stroke:#ff8c54;filter:drop-shadow(0 0 6px #ff8c5499)}.arena-shell .player-seat.current .portrait,.dock-self.current .portrait{animation:none!important;border-color:#fff0b9!important;box-shadow:0 0 24px #ffcf4b38!important}.arena-center,.arena-board.eight-seats .arena-center{top:62%;gap:12px}.arena-card-zone{gap:36px}.arena-center .playing-card,.arena-center .card-back,.arena-center .draw-stack{width:92px;height:134px}.arena-color{font-size:12px}.arena-last-play{display:none}.arena-hand-dock{height:220px;min-height:0;flex:none;grid-template-columns:210px 1fr;grid-template-rows:1fr 43px;display:grid;padding:10px 15px;background:linear-gradient(120deg,#15243cdd,#1c2440cc);border:1px solid #8caede20;border-radius:21px;gap:0 20px}.dock-header{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px}.dock-self{display:flex;align-items:center;gap:13px;width:auto;transform:none;position:static;border:0;background:none;padding:0;text-align:left}.dock-self .portrait{width:58px;height:58px}.dock-self>span>b{font-size:15px}.dock-self small{display:none}.dock-instruction strong{font-size:15px}.arena-shell .hand{grid-column:2;grid-row:1;align-self:stretch;min-height:0;padding:0;overflow:visible;display:block}.hand-fan{position:relative;height:100%;min-width:0;width:100%;display:block;--hand-card-width:102px;--hand-step:min(66px,calc((100% - var(--hand-card-width) - 25px) / max(1,var(--hand-count) - 1)))}.hand-slot{position:absolute;left:calc(50% + (var(--fan-order) - (var(--hand-count) - 1)/2)*var(--hand-step));top:5px;width:var(--hand-card-width);height:auto;margin:0;transform:translateX(-50%) rotate(var(--fan-angle));z-index:var(--fan-order)}.arena-shell .hand .playing-card{width:var(--hand-card-width);height:auto;aspect-ratio:.69}.hand-slot:hover{transform:translateX(-50%) translateY(-12px) rotate(0);z-index:40}.hand-helper{grid-column:2;grid-row:2;min-height:0;margin:0;padding:0;display:flex;justify-content:center}.hand-helper>span:first-child{display:none}.hand-coach{padding:6px 14px;border-radius:12px}.hand-coach b{font-size:13px}.hand-coach>div>span{font-size:11px;margin:1px 0}.player-wallet-bar{height:36px;min-height:0;flex:none;padding:4px 16px;margin:0}.wallet-identity .portrait{display:none}.wallet-identity span,.table-balance>div>span{display:none}.table-balance strong{font-size:18px}.table-balance .unoleta-coin{width:27px;height:27px}.wallet-demo-tag{font-size:8px}.arena-shell .uno-button.ready:not(:disabled){min-height:44px;min-width:125px;font-size:28px}.arena-shell .uno-button{min-height:38px}.arena-header .arena-profile{pointer-events:none}
@media(orientation:landscape) and (max-height:650px){.arena-shell{padding:5px max(10px,env(safe-area-inset-left)) 4px max(10px,env(safe-area-inset-right));gap:5px}.arena-header{height:30px}.arena-header .arena-logo{width:76px;height:28px}.arena-title h1{font-size:13px}.arena-title>span{font-size:8px}.arena-header .button{font-size:10px;min-height:25px}.arena-board{border-radius:20px}.felt-edge{inset:9px;border-radius:14px}.arena-board .player-seat,.arena-board .player-seat.top-seat,.arena-board .upper-seat:not(.top-seat){top:clamp(37px,var(--y),calc(100% - 37px))!important;left:clamp(43px,var(--x),calc(100% - 43px));width:85px;gap:2px}.arena-shell .arena-board .player-seat .portrait,.arena-board .upper-seat .portrait{width:clamp(28px,9dvh,43px)!important;height:clamp(28px,9dvh,43px)!important}.arena-board .player-seat>b{font-size:11px!important;max-width:85px}.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards{width:76px;height:24px;--spread:min(7px,calc(54px / max(1,var(--count) - 1)))!important}.arena-board .opponent-card-slot .card-back{width:18px;height:26px}.avatar-timer{inset:-5px;width:calc(100% + 10px);height:calc(100% + 10px)}.avatar-timer circle{stroke-width:6}.arena-center,.arena-board.eight-seats .arena-center{top:62%;gap:5px}.arena-card-zone{gap:24px}.arena-center .playing-card,.arena-center .card-back,.arena-center .draw-stack{width:clamp(43px,13dvh,68px);height:clamp(62px,19dvh,99px)}.arena-center .deck-area>span,.arena-center .discard-area>span{font-size:7px}.arena-color{font-size:9px;padding:3px 8px}.direction-orbit{width:145px;height:105px}.arena-hand-dock{height:clamp(113px,31dvh,160px);min-height:0;padding:5px 10px;grid-template-columns:145px 1fr;grid-template-rows:1fr 28px;border-radius:15px;gap:0 10px}.dock-header{gap:5px}.dock-self{gap:8px}.dock-self .portrait{width:35px;height:35px}.dock-self>span>b{font-size:12px}.dock-self em{display:none}.dock-instruction strong{font-size:11px}.hand-fan{--hand-card-width:clamp(43px,14dvh,70px);--hand-step:min(43px,calc((100% - var(--hand-card-width) - 20px) / max(1,var(--hand-count) - 1)))}.hand-slot{top:0}.hand-coach{padding:3px 8px;gap:7px}.hand-coach b{font-size:10px}.hand-coach>div>span{font-size:8px}.coach-emoji{font-size:16px}.arena-shell .uno-button,.arena-shell .uno-button.ready:not(:disabled),.arena-shell .uno-button.announced{min-width:96px;min-height:28px;font-size:21px;padding:4px 8px}.player-wallet-bar{height:25px;padding:2px 12px}.table-balance strong{font-size:13px}.table-balance .unoleta-coin{width:22px;height:22px}.wallet-identity b{font-size:11px}.wallet-demo-tag{display:none}.arena-board .uno-badge{font-size:8px;padding:2px 4px}}
.arena-board .upper-seat .opponent-cards{position:absolute;left:calc(50% + 48px);top:5px;transform:rotate(8deg)}.arena-board .lower-seat.left-seat .opponent-cards{position:absolute;left:calc(50% + 48px);top:8px;transform:rotate(-10deg)}.arena-board .lower-seat.right-seat .opponent-cards{position:absolute;left:calc(50% - 158px);top:8px;transform:rotate(10deg)}.felt-brand{display:block;position:absolute;left:50%;top:58%;width:220px;transform:translate(-50%,-50%);opacity:.055;pointer-events:none}.arena-hand-dock{box-shadow:none}.arena-header .arena-invite{margin-left:auto}
@media(orientation:landscape) and (max-height:650px){.arena-board .upper-seat .opponent-cards,.arena-board .lower-seat.left-seat .opponent-cards{left:calc(50% + 29px);top:0;transform:rotate(7deg)}.arena-board .lower-seat.right-seat .opponent-cards{left:calc(50% - 104px);top:0;transform:rotate(-7deg)}.arena-board .lower-seat{top:calc(100% - 34px)!important}.felt-brand{width:145px}.arena-center .direction-orbit{opacity:.4}.arena-hand-dock{border-color:#8caede15;background:linear-gradient(110deg,#18284199,#19243e66)}}
/* Tela única de jogo: composição nas bordas como a referência. */
.arena-shell{position:relative;display:block;padding:0;background:radial-gradient(ellipse at 50% 40%,#18647a,#103d60 40%,#09172d 90%);overflow:hidden}.arena-header{position:absolute;left:16px;right:16px;top:8px;height:48px;z-index:40;gap:12px}.arena-header .arena-title{display:none}.arena-header .arena-invite{margin-left:auto}.arena-header .arena-profile{display:none}.arena-header .arena-logo{width:130px;height:45px}.arena-board{position:absolute;inset:0;border:0;border-radius:0;margin:0;background:radial-gradient(ellipse at 50% 45%,#04cef410,transparent 55%),repeating-linear-gradient(135deg,#6da6d304 0 1px,transparent 1px 60px);box-shadow:none;overflow:visible}.felt-edge{display:none}.arena-board:before{left:50%;top:47%;width:360px;height:360px;border:2px solid #77dcff33;box-shadow:0 0 0 12px #04cef407,inset 0 0 60px #04cef409}.felt-brand{width:300px;top:47%;opacity:.075}.table-stars{opacity:1}.table-stars span{color:#0fd7ff18!important;font-size:110px!important}.arena-center,.arena-board.eight-seats .arena-center{top:47%;left:50%;gap:14px}.arena-card-zone{gap:50px}.arena-center .playing-card,.arena-center .card-back,.arena-center .draw-stack{width:110px;height:160px}.arena-color{background:#071d34a6;border:1px solid #72dfff35}.arena-board .player-seat,.arena-board .player-seat.top-seat{width:180px;display:grid;grid-template-columns:82px 1fr;grid-template-rows:82px 28px;gap:0 10px;top:var(--y);left:var(--x);text-align:center;padding:8px;border-radius:18px;background:linear-gradient(110deg,#09243d35,transparent);border:1px solid #73c8ed0c}.arena-board .seat-portrait{grid-column:1;grid-row:1;align-self:center;justify-self:center}.arena-board .player-seat>b{grid-column:1;grid-row:2;align-self:center;font-size:15px!important;max-width:95px;overflow:visible;background:none!important}.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards,.arena-board .lower-seat.left-seat .opponent-cards,.arena-board .lower-seat.right-seat .opponent-cards{grid-column:2;grid-row:1;position:relative;left:auto;top:auto;transform:rotate(0);width:105px;height:62px;align-self:center;margin:0;--spread:min(10px,calc(70px / max(1,var(--count) - 1)))!important}.arena-board .opponent-card-slot .card-back{width:37px;height:54px}.arena-board .right-seat:not(.upper-seat){grid-template-columns:1fr 82px}.arena-board .right-seat:not(.upper-seat) .seat-portrait,.arena-board .right-seat:not(.upper-seat)>b{grid-column:2}.arena-board .right-seat:not(.upper-seat) .opponent-cards{grid-column:1}.arena-board .player-seat.current{border-color:#ffe49844;background:linear-gradient(110deg,#f5b52a12,transparent)}.arena-shell .arena-board .player-seat .portrait{width:70px;height:70px}.arena-hand-dock{position:absolute;bottom:32px;left:20px;right:20px;height:205px;display:grid;grid-template-columns:180px 1fr 115px;grid-template-rows:1fr 32px;border:0;border-radius:0;background:none;padding:0;gap:10px}.dock-header{grid-column:1;grid-row:1/3;justify-content:flex-end;gap:13px;padding-bottom:10px}.dock-self .portrait{width:75px;height:75px}.dock-self{flex-direction:column;align-items:center}.dock-self b{font-size:18px!important}.dock-instruction{display:none}.dock-actions{position:absolute;right:0;bottom:35px}.arena-shell .hand{grid-column:2;grid-row:1}.hand-fan{--hand-card-width:115px;--hand-step:min(82px,calc((100% - var(--hand-card-width) - 20px) / max(1,var(--hand-count) - 1)))}.hand-slot{transform:translateX(-50%) rotate(0);top:5px}.hand-slot:hover{transform:translateX(-50%) translateY(-14px) rotate(0)}.hand-helper{grid-column:2;grid-row:2}.hand-coach{background:#092039a8;border-color:#6eb9e52b}.player-wallet-bar{position:absolute;bottom:0;left:0;right:0;height:27px;border:0;border-radius:0;background:#07172c88;padding:2px 20px}.wallet-identity{display:none}.table-balance{margin-left:0}.arena-shell .hand .playing-card{filter:saturate(1.2) brightness(1.12);box-shadow:0 5px 18px #0008}.arena-board .player-seat .uno-badge{top:-8px;right:5px}
@media(orientation:landscape) and (max-height:650px){.arena-header{left:10px;right:10px;top:5px;height:28px}.arena-header .arena-logo{width:95px;height:30px}.arena-header .button{min-height:25px;font-size:10px}.arena-board:before{width:clamp(130px,42dvh,240px);height:clamp(130px,42dvh,240px);top:46%}.felt-brand{top:46%;width:160px}.arena-center,.arena-board.eight-seats .arena-center{top:46%;gap:6px}.arena-card-zone{gap:28px}.arena-center .playing-card,.arena-center .card-back,.arena-center .draw-stack{width:clamp(45px,15dvh,85px);height:clamp(65px,22dvh,123px)}.arena-board .player-seat,.arena-board .player-seat.top-seat,.arena-board .upper-seat:not(.top-seat),.arena-board .lower-seat{top:var(--y)!important;left:var(--x)!important;width:132px;grid-template-columns:44px 1fr;grid-template-rows:44px 18px;padding:4px;gap:0 6px;border-radius:12px}.arena-board .right-seat:not(.upper-seat){grid-template-columns:1fr 44px}.arena-shell .arena-board .player-seat .portrait,.arena-board .upper-seat .portrait{width:40px!important;height:40px!important}.arena-board .player-seat>b{font-size:11px!important;max-width:60px}.arena-board .player-seat .opponent-cards,.arena-board .upper-seat .opponent-cards,.arena-board .lower-seat.left-seat .opponent-cards,.arena-board .lower-seat.right-seat .opponent-cards{width:72px;height:42px;transform:none;left:auto;top:auto;--spread:min(8px,calc(48px / max(1,var(--count) - 1)))!important}.arena-board .opponent-card-slot .card-back{width:28px;height:40px}.arena-hand-dock{bottom:25px;left:12px;right:12px;height:clamp(103px,28dvh,155px);grid-template-columns:100px 1fr 85px;grid-template-rows:1fr 22px;gap:0 7px}.dock-header{justify-content:flex-end;padding-bottom:3px;gap:5px}.dock-self{gap:4px}.dock-self .portrait{width:43px;height:43px}.dock-self b{font-size:12px!important}.dock-actions{bottom:22px}.arena-shell .uno-button,.arena-shell .uno-button.ready:not(:disabled){min-width:80px;min-height:34px;font-size:22px}.hand-fan{--hand-card-width:clamp(46px,15dvh,82px);--hand-step:min(49px,calc((100% - var(--hand-card-width) - 16px) / max(1,var(--hand-count) - 1)))}.hand-slot{top:0}.hand-coach{padding:2px 8px;gap:5px}.hand-coach>div>span{display:none}.hand-coach b{font-size:10px}.coach-emoji{font-size:15px}.player-wallet-bar{height:23px;font-size:10px}.arena-color{font-size:9px}.arena-board .left-seat:not(.upper-seat) .opponent-cards{transform:rotate(12deg)}.arena-board .right-seat:not(.upper-seat) .opponent-cards{transform:rotate(-12deg)}}
/* Roleta inteira no viewport, com distribuição de espaço própria da horizontal. */
.starter-panel{width:min(780px,94vw);max-height:94dvh;padding:20px;box-sizing:border-box;overflow:hidden}.wheel-wrap{width:min(260px,50dvh);height:min(260px,50dvh)}.starter-wheel:after{inset:37%;font-size:24px}.starter-wheel img{width:16%;height:16%;left:42%;top:42%;transform:rotate(var(--angle)) translateY(calc(-1 * min(86px,16.5dvh))) rotate(calc(-1 * var(--angle)))}
@media(orientation:landscape) and (max-height:650px){.starter-panel{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;align-items:center;gap:12px;height:min(330px,90dvh);padding:20px 28px}.starter-panel h2{grid-column:2;grid-row:1;font-size:25px;margin:0;align-self:end}.starter-panel .wheel-wrap{grid-column:1;grid-row:1/3;width:min(250px,67dvh);height:min(250px,67dvh)}.starter-panel p{grid-column:2;grid-row:2;font-size:16px;line-height:1.5;margin:0;align-self:start}.starter-wheel img{transform:rotate(var(--angle)) translateY(calc(-1 * min(80px,22dvh))) rotate(calc(-1 * var(--angle)))}.wheel-pointer{top:-18px;font-size:26px}.starter-wheel{border-width:5px}}
/* Limites reservados: cabeçalho, identidades nas laterais e mão inferior. */
.arena-shell .arena-board .player-seat{left:clamp(100px,var(--x),calc(100% - 100px))!important;top:clamp(105px,var(--y),calc(100% - 255px))!important}.arena-shell .arena-board .player-seat.lower-seat{top:66%!important}.arena-shell .arena-board .player-seat>b{justify-self:center;width:max-content;max-width:85px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.arena-shell .arena-hand-dock .dock-header{align-items:center;justify-content:flex-end;width:150px}.arena-shell .arena-hand-dock .dock-self{position:static!important;transform:none!important;display:flex!important;flex-direction:column!important;width:140px;gap:8px;align-items:center;text-align:center}.arena-shell .arena-hand-dock .dock-self .portrait{width:70px;height:70px}.arena-shell .arena-hand-dock .dock-self>span:last-child{max-width:140px}.arena-shell .arena-hand-dock .dock-self b{display:block;white-space:nowrap;max-width:140px;overflow:hidden;text-overflow:ellipsis}.arena-shell .arena-hand-dock .dock-self em{display:none}
@media(orientation:landscape) and (max-height:650px){.arena-shell .arena-board .player-seat,.arena-shell .arena-board .player-seat.top-seat,.arena-shell .arena-board .upper-seat:not(.top-seat),.arena-shell .arena-board .lower-seat{left:clamp(82px,var(--x),calc(100% - 82px))!important;top:clamp(76px,var(--y),calc(100% - 146px))!important}.arena-shell .arena-board .player-seat.lower-seat{top:63%!important}.arena-shell .arena-board .player-seat>b{max-width:58px;font-size:11px!important}.arena-shell .arena-hand-dock .dock-header{width:95px;padding:0 0 3px}.arena-shell .arena-hand-dock .dock-self{width:95px;gap:6px}.arena-shell .arena-hand-dock .dock-self .portrait{width:48px;height:48px}.arena-shell .arena-hand-dock .dock-self b{font-size:12px!important;max-width:95px}.arena-shell .arena-hand-dock .dock-self>span:last-child{max-width:95px}.arena-shell .arena-hand-dock .hand-coach .coach-draw{min-height:22px;padding:3px 7px;font-size:10px}}
/* Mesa oval e mão em leque conforme a referência enviada. */
.arena-shell{background:radial-gradient(ellipse at 50% 48%,#182f39,#101d25 70%,#09131e)}.arena-board{background:repeating-linear-gradient(135deg,#7697b306 0 1px,transparent 1px 8px)}.arena-board:before,.table-stars,.felt-brand,.felt-texture{display:none}.poker-tabletop{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:68%;height:57%;border-radius:50%/44%;border:14px solid #1a2528;background:radial-gradient(ellipse at 45% 30%,#438d54,#2d6a40 58%,#1c5030);box-shadow:0 0 0 2px #53626a,0 0 0 9px #263239,0 0 0 11px #101d25,inset 0 0 0 3px #a8df8366,inset 0 0 35px #08291799,0 22px 28px #0006;pointer-events:none}.poker-tabletop:before{content:'';position:absolute;inset:18px;border-radius:50%/44%;border:1px solid #c6f49c38;background:repeating-radial-gradient(circle at 20% 30%,#ffffff03 0 1px,transparent 1px 4px)}.poker-tabletop:after{content:'';position:absolute;inset:5px;border-radius:50%/44%;border:1px solid #a8df8333}.poker-table-inlay{position:absolute;left:50%;top:18%;transform:translateX(-50%);text-align:center;white-space:nowrap;opacity:.43;color:#d7efbf}.poker-table-inlay>span{font-size:26px;font-weight:850;letter-spacing:5px}.poker-table-inlay>span>span{font-weight:300}.poker-table-inlay small{display:block;margin-top:4px;letter-spacing:2px;font-size:8px}.arena-center,.arena-board.eight-seats .arena-center{top:46%}.arena-card-zone{gap:28px}.direction-orbit{display:none}.arena-center .deck-area>span,.arena-center .discard-area>span{color:#c3deb5;font-size:9px;text-shadow:0 2px 3px #0006}.arena-color{background:#173b2ce0;border-color:#c7e1aa44;color:#e6edce}.arena-shell .arena-board .player-seat{background:#0a17255c;border-color:#7b98b61c}.arena-shell .arena-board .player-seat.current{border-color:#ffe49866;background:#f5b52a15}.arena-board .player-seat .opponent-cards{filter:drop-shadow(0 4px 5px #0004)}.arena-hand-dock{height:230px}.hand-fan{--hand-card-width:125px;--hand-step:min(70px,calc((100% - var(--hand-card-width) - 26px) / max(1,var(--hand-count) - 1)))}.hand-slot{top:24px;transform:translateX(-50%) translateY(min(12px,var(--fan-lift))) rotate(var(--fan-angle));transform-origin:50% 100%;transition:transform .22s ease,filter .22s ease}.hand-slot.slot-valid{transform:translateX(-50%) translateY(calc(min(12px,var(--fan-lift)) - 22px)) rotate(var(--fan-angle));z-index:calc(20 + var(--fan-order))}.hand-slot.slot-valid:hover,.hand-slot.slot-valid:focus-within{transform:translateX(-50%) translateY(calc(min(12px,var(--fan-lift)) - 36px)) rotate(0);z-index:100}.hand-slot:not(.slot-valid):hover{transform:translateX(-50%) translateY(min(12px,var(--fan-lift))) rotate(var(--fan-angle));z-index:var(--fan-order)}.arena-shell .hand .playing-card{box-shadow:0 6px 16px #0008;filter:none;opacity:.8}.arena-shell .hand .playing-card.playable{opacity:1;filter:brightness(1.2) saturate(1.15);box-shadow:0 0 0 2px #f9e7a8,0 0 20px #ffdf6e66,0 8px 15px #0006}.arena-shell .hand .playing-card:disabled{opacity:.68}.arena-shell .hand .playing-card.playable:after{content:'';position:absolute;inset:0;border-radius:10px;border:2px solid #fff6bf77;pointer-events:none}.hand-coach{background:#102a28df;border-color:#a8cdb544}.hand-helper{position:relative;z-index:80}.arena-shell .arena-hand-dock .dock-self{background:none}.arena-shell .arena-hand-dock .dock-self b{color:#e5edf4;text-shadow:0 2px 5px #000}.arena-header .button{background:#16272ebd}.arena-header .arena-back{border-color:#72979935}
@media(orientation:landscape) and (max-height:650px){.poker-tabletop{width:66%;height:55%;top:44%;border-width:8px;box-shadow:0 0 0 1px #53626a,0 0 0 5px #263239,0 0 0 6px #101d25,inset 0 0 0 2px #a8df8377,inset 0 0 25px #08291777,0 12px 18px #0006}.poker-tabletop:before{inset:10px}.poker-table-inlay>span{font-size:16px;letter-spacing:3px}.poker-table-inlay small{font-size:6px;letter-spacing:1px}.poker-table-inlay{top:14%;opacity:.38}.arena-center,.arena-board.eight-seats .arena-center{top:46%}.arena-center .playing-card,.arena-center .card-back,.arena-center .draw-stack{width:clamp(40px,13.5dvh,75px);height:clamp(58px,19.5dvh,108px)}.arena-center .deck-area>span,.arena-center .discard-area>span{font-size:7px}.arena-hand-dock{height:clamp(112px,31dvh,165px);bottom:24px;grid-template-rows:1fr 22px}.hand-fan{--hand-card-width:clamp(44px,15dvh,80px);--hand-step:min(42px,calc((100% - var(--hand-card-width) - 22px) / max(1,var(--hand-count) - 1)))}.hand-slot{top:14px;transform:translateX(-50%) translateY(min(6px,var(--fan-lift))) rotate(var(--fan-angle))}.hand-slot.slot-valid{transform:translateX(-50%) translateY(calc(min(6px,var(--fan-lift)) - 13px)) rotate(var(--fan-angle))}.hand-slot.slot-valid:hover,.hand-slot.slot-valid:focus-within{transform:translateX(-50%) translateY(calc(min(6px,var(--fan-lift)) - 22px)) rotate(0)}.hand-slot:not(.slot-valid):hover{transform:translateX(-50%) translateY(min(6px,var(--fan-lift))) rotate(var(--fan-angle))}.arena-shell .hand .playing-card.playable{box-shadow:0 0 0 1px #f9e7a8,0 0 14px #ffdf6e55,0 7px 12px #0006}.arena-shell .hand .playing-card.playable:after{border-width:1px}.arena-shell .arena-board .player-seat.lower-seat{top:62%!important}.arena-shell .arena-hand-dock .dock-header{padding-bottom:8px}}
@media(prefers-reduced-motion:reduce){.hand-slot{transition:none}}
.arena-shell .hand .playing-card,.arena-shell .hand .playing-card:disabled{opacity:1;filter:brightness(.96)}.arena-shell .hand .playing-card.playable{opacity:1;filter:brightness(1.15) saturate(1.1)}
/* Composição para até seis: mesa central, duas laterais e três posições superiores. */
.arena-shell .arena-board.six-seats .player-seat{top:var(--y)!important;left:var(--x)!important}.arena-board.six-seats .lower-seat.left-seat{--x:12%!important;--y:51%!important}.arena-board.six-seats .lower-seat.right-seat{--x:88%!important;--y:51%!important}.arena-board.six-seats .upper-seat{--y:19%!important}.poker-tabletop{width:65%;height:54%;top:46%;border-radius:46%/46%;background:radial-gradient(ellipse at 45% 25%,#568264,#396b51 57%,#25533d);border-color:#263a3e;box-shadow:0 0 0 2px #73939455,0 0 0 8px #162e36,0 0 0 10px #7bada336,inset 0 0 0 3px #c1e0ad55,inset 0 0 45px #0b302280,0 20px 45px #0007}.poker-tabletop:before{border-color:#c0d6aa3b;border-radius:46%/46%}.poker-tabletop:after{border-radius:46%/46%}.poker-table-inlay{top:17%;opacity:.27}.arena-center,.arena-board.eight-seats .arena-center{top:47%;left:50%}.arena-shell{background:radial-gradient(ellipse at 50% 40%,#234342,#122a32 65%,#0a1922)}.arena-board{background:repeating-linear-gradient(135deg,#adc3c104 0 1px,transparent 1px 7px)}.arena-header .arena-logo{filter:drop-shadow(0 3px 8px #0008)}.players-options{grid-template-columns:repeat(2,1fr)}.victory-card[hidden],.victory-intro[hidden]{display:none!important}.victory-intro{position:relative;z-index:2;text-align:center;max-width:90vw;color:#ffeeb3}.victory-intro>img{width:220px;height:110px;object-fit:contain;display:block;margin:0 auto 20px}.victory-intro>strong{font:italic 70px Impact,'Arial Black',sans-serif;letter-spacing:2px;text-shadow:3px 5px #70501b,0 0 50px #ffca5477}.victory-intro p{font-size:20px;color:#d8e9f6;margin:12px 0 20px}.victory-intro>.button{margin-top:20px}.party-progress{width:200px;height:4px;background:#ffffff20;border-radius:10px;margin:auto;overflow:hidden}.party-progress i{display:block;height:100%;width:var(--party-progress,0%);background:linear-gradient(90deg,#04cef4,#ffe094);transition:width .2s linear}.victory-party:not(.revealed){background:#081b2b80;backdrop-filter:blur(2px)}.victory-party.revealed .victory-card{animation:result-reveal .4s ease-out}@keyframes result-reveal{from{opacity:0;transform:translateY(25px) scale(.9)}to{opacity:1;transform:none}}
@media(orientation:landscape) and (max-height:650px){.arena-shell .arena-board.six-seats .player-seat{top:var(--y)!important;left:var(--x)!important}.arena-board.six-seats .lower-seat.left-seat{--x:11%!important;--y:49%!important}.arena-board.six-seats .lower-seat.right-seat{--x:89%!important;--y:49%!important}.arena-board.six-seats .upper-seat{--y:20%!important}.poker-tabletop{width:65%;height:53%;top:46%;border-width:7px;box-shadow:0 0 0 1px #73939455,0 0 0 5px #162e36,0 0 0 6px #7bada336,inset 0 0 0 2px #c1e0ad55,inset 0 0 30px #0b302280,0 12px 25px #0006}.poker-table-inlay{top:16%}.players-options{grid-template-columns:repeat(4,1fr)}.victory-intro>img{width:140px;height:65px;margin-bottom:7px}.victory-intro>strong{font-size:44px}.victory-intro p{font-size:14px;margin:8px 0 12px}.victory-intro>.button{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.victory-party.revealed .victory-card{animation:none}.party-progress i{transition:none}}

/* Oval reference: upholstered black rail, blue felt and FlipStars brand inlay. */
.arena-shell{background:radial-gradient(ellipse at 50% 42%,#23314888,transparent 62%),repeating-linear-gradient(116deg,#b89bf005 0 1px,transparent 1px 5px),linear-gradient(120deg,#151925,#202131 48%,#111724)}
.arena-board{background:transparent}
.poker-tabletop{width:78%;height:63%;top:47%;border:18px solid #101319;border-radius:50%/43%;background:radial-gradient(ellipse at 50% 37%,#155e9b 0%,#104780 45%,#092c59 83%,#071e42 100%);box-shadow:0 0 0 1px #6a7897,0 0 0 5px #161b27,0 0 0 8px #050913,0 0 0 10px #9d6ed529,inset 0 0 0 2px #27c9f066,inset 0 0 55px #010d2dbb,0 28px 38px #000a}
.poker-tabletop:before{inset:12px;border:1px dashed #73cefa35;border-radius:50%/43%;background:repeating-linear-gradient(0deg,#ffffff04 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#ffffff03 0 1px,transparent 1px 3px)}
.poker-tabletop:after{inset:-13px;border:1px solid #ffffff12;border-radius:50%/43%;box-shadow:inset 0 4px 4px #ffffff10,0 -3px 3px #ffffff08}
.poker-table-inlay{top:14%;width:30%;max-width:210px;opacity:.55;color:#86cff2;text-align:center}
.poker-table-inlay>img{display:block;width:100%;height:auto;filter:drop-shadow(0 2px 3px #0006)}
.poker-table-inlay small{font-size:7px;letter-spacing:1.7px;margin-top:-6px;color:#acd0eb}
.arena-center .deck-area>span,.arena-center .discard-area>span{color:#b4d5ee}
.arena-color{background:#06192ee0;border:1px solid #79dfff44;color:#daedff}
.arena-header .button{background:#0c1422d9;border-color:#57749c45}
.arena-shell .arena-board .player-seat{background:linear-gradient(180deg,#080e1bc9,#0c1629e8);border:1px solid #7284b039;border-radius:12px;box-shadow:0 8px 16px #0005}
.arena-shell .arena-board .player-seat>b{color:#f8fbff;text-shadow:0 2px 3px #000;font-weight:750}
.arena-shell .arena-board .player-seat.current{background:linear-gradient(180deg,#13344fce,#12192ce8);border-color:#44ddff99;box-shadow:0 0 24px #04cef43b,0 8px 16px #0005}
.arena-board.six-seats .upper-seat{--y:19%!important}
.arena-board.six-seats .lower-seat.left-seat{--x:9%!important;--y:47%!important}
.arena-board.six-seats .lower-seat.right-seat{--x:91%!important;--y:47%!important}
.hand-coach{background:#08162bdd;border-color:#728bd855}
.arena-hand-dock{background:linear-gradient(180deg,transparent,#060d20a3);border-radius:22px}
@media(orientation:landscape) and (max-height:650px){
.poker-tabletop{width:78%;height:62%;top:47%;border-width:10px;box-shadow:0 0 0 1px #65728c,0 0 0 3px #161b27,0 0 0 5px #050913,0 0 0 6px #9d6ed529,inset 0 0 0 1px #27c9f077,inset 0 0 30px #010d2dbb,0 15px 22px #0009}
.poker-tabletop:before{inset:8px}.poker-tabletop:after{inset:-7px}
.poker-table-inlay{top:16%;width:28%;max-width:115px;opacity:.52}.poker-table-inlay small{font-size:5px;letter-spacing:1px;margin-top:-4px}
.arena-board.six-seats .upper-seat{--y:19%!important}
.arena-board.six-seats .lower-seat.left-seat{--x:9%!important;--y:47%!important}
.arena-board.six-seats .lower-seat.right-seat{--x:91%!important;--y:47%!important}
}

.poker-table-inlay{left:73%;top:22%;width:21%;max-width:155px;opacity:.7}.poker-table-inlay small{font-size:6px;letter-spacing:1px}@media(orientation:landscape) and (max-height:650px){.poker-table-inlay{left:73%;top:22%;width:22%;max-width:100px;opacity:.7}.poker-table-inlay small{font-size:4px;letter-spacing:.6px}}

.special-celebration,.special-celebration.effect-draw,.special-celebration.effect-skip{width:clamp(180px,28dvh,270px);height:clamp(180px,28dvh,270px);padding:0;border:0;background:none;box-shadow:none;border-radius:0;top:44%;animation:symbol-impact 1.8s both}.special-celebration img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 15px #9e65ff55)}@keyframes symbol-impact{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(-15deg)}16%{opacity:1;transform:translate(-50%,-50%) scale(1.18) rotate(4deg)}28%{transform:translate(-50%,-50%) scale(1) rotate(-3deg)}40%,75%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}100%{opacity:0;transform:translate(-50%,-60%) scale(1.2)}}@media(orientation:landscape) and (max-height:650px){.special-celebration{width:clamp(140px,42dvh,200px);height:clamp(140px,42dvh,200px);top:44%;padding:0}}@media(prefers-reduced-motion:reduce){.special-celebration{animation:none}}

/* Large center watermark stays below cards and player interactions. */
.poker-table-inlay{left:50%;top:50%;transform:translate(-50%,-50%);width:88%;height:83%;max-width:none;opacity:.17;display:flex;align-items:center;justify-content:center;pointer-events:none}
.poker-table-inlay>img{width:100%;height:100%;object-fit:contain;filter:grayscale(.15) drop-shadow(0 5px 2px #0004)}.poker-table-inlay small{display:none}
.victory-countdown{display:grid;place-items:center;margin:12px auto;width:88px;height:88px;border:2px solid #ffe19688;border-radius:50%;background:#081b3bbb;box-shadow:0 0 35px #a269ff55}.victory-countdown b{font:800 58px/1 Arial,sans-serif;color:#ffe9a7;text-shadow:0 0 22px #ffbd53}
.victory-explosion{position:absolute;left:calc(12% + mod(var(--burst)*31,78)*1%);top:calc(15% + mod(var(--burst)*23,55)*1%);width:1px;height:1px;animation:firework-explosion 1.5s ease-out infinite;animation-delay:calc(var(--burst)*-.37s)}
.victory-explosion i{position:absolute;width:7px;height:32px;border-radius:50%;background:linear-gradient(var(--c),#fff3,transparent);box-shadow:0 0 12px var(--c);transform:rotate(calc(var(--ray)*30deg)) translateY(-90px);transform-origin:center bottom}
@keyframes firework-explosion{0%{opacity:0;transform:scale(.05)}15%{opacity:1}75%{opacity:.85;transform:scale(1.4)}100%{opacity:0;transform:scale(1.7)}}
.victory-ranking{padding:12px 16px;margin:18px 0 0;background:#0614269c;border:1px solid #4ad8fb44;border-radius:14px;display:flex;flex-direction:column;gap:6px}.victory-ranking>span{font-size:10px;letter-spacing:1.6px;color:#62e5ff}.victory-ranking>b{font-size:20px;color:#ffe7a5}.victory-ranking>small{font-size:12px;color:#bacfe4}.victory-ranking>em{font-style:normal;font-size:12px;color:#d1b9f3}
@media(orientation:landscape) and (max-height:650px){.poker-table-inlay{left:50%;top:50%;width:88%;height:83%;max-width:none;opacity:.17}.victory-intro>img{width:110px;height:48px;margin-bottom:4px}.victory-intro>strong{font-size:34px}.victory-intro p{margin:5px 0;font-size:12px}.victory-countdown{width:64px;height:64px;margin:8px auto}.victory-countdown b{font-size:44px}.victory-intro>.button{margin-top:8px}.victory-card{width:min(600px,88vw);padding:15px 22px;display:grid;grid-template-columns:85px 1fr;gap:5px 16px;align-items:center}.victory-card>.victory-kicker{grid-column:1/-1;margin:0 0 4px;font-size:10px}.victory-card>.portrait{grid-column:1;grid-row:2/5;width:78px;height:78px}.victory-card>h2{grid-column:2;font-size:24px;margin:0}.victory-card>p{grid-column:2;margin:0;font-size:12px;line-height:1.3}.victory-card>strong{grid-column:2;font-size:14px}.victory-card>.victory-ranking{grid-column:1/-1;margin:5px 0;padding:9px;gap:4px}.victory-ranking>b{font-size:17px}.victory-card>.victory-actions{grid-column:1/-1;margin:5px 0;gap:8px}.victory-card>small{grid-column:1/-1}.victory-explosion i{height:20px;transform:rotate(calc(var(--ray)*30deg)) translateY(-60px)}}
@media(prefers-reduced-motion:reduce){.victory-explosion{animation:none;opacity:.6;transform:scale(.9)}}

.special-celebration.has-chosen-color{display:flex;align-items:center;justify-content:center;gap:12px;width:min(460px,88vw);height:230px}.special-celebration.has-chosen-color>img{width:230px;height:230px;flex-shrink:0;filter:drop-shadow(0 0 25px var(--chosen-color))}.special-celebration .special-chosen-color{display:grid;place-items:center;min-width:155px;min-height:100px;padding:16px;border-radius:24px;border:3px solid #ffffffb3;background:var(--chosen-color);color:#081321;font:900 25px/1 Arial,sans-serif;letter-spacing:1px;text-shadow:0 1px #ffffff44;box-shadow:0 0 45px color-mix(in srgb,var(--chosen-color),transparent 45%),0 10px 25px #0007}@media(orientation:landscape) and (max-height:650px){.special-celebration.has-chosen-color{width:min(340px,88vw);height:170px;gap:7px}.special-celebration.has-chosen-color>img{width:170px;height:170px}.special-celebration .special-chosen-color{min-width:120px;min-height:75px;padding:12px;border-radius:18px;font-size:20px}}

@media(max-width:760px) and (orientation:portrait){body:not(.is-playing) .hero-content{padding-top:142px!important}body:not(.is-playing) .hero-art{top:16px!important;bottom:auto!important;right:22px!important;width:165px!important;height:100px!important;opacity:1!important;pointer-events:none}body:not(.is-playing) .hero-art .hero-logo{width:165px!important;transform:none!important;opacity:1!important}body:not(.is-playing) .hero-actions .ghost{background:#182039!important}}

/* Compact lobby brand: logo beside the introduction, with no empty header band. */
@media(max-width:760px) and (orientation:portrait){body:not(.is-playing) .hero-content{padding-top:24px!important}body:not(.is-playing) .hero-content>.eyebrow{padding-right:118px;min-height:70px;display:flex;align-items:center;line-height:1.5}body:not(.is-playing) .hero-art{top:20px!important;right:20px!important;width:108px!important;height:65px!important}body:not(.is-playing) .hero-art .hero-logo{width:108px!important}body:not(.is-playing) .hero h1{margin-top:18px!important}}

.uno-button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-height:56px}.uno-button.uno-contact{transform:scale(.94);filter:brightness(1.3)}

#featured-room-dialog{width:min(460px,calc(100vw - 30px));text-align:center;padding:28px;background:radial-gradient(ellipse at top,#263151,#11192c 65%);border:1px solid #697794;overflow:auto;max-height:92dvh}.featured-close{position:absolute;right:12px;top:12px}.featured-brand{width:100px;display:block;margin:0 auto 18px}#featured-room-dialog h2{margin:12px 0;font-size:28px}#featured-room-dialog p{font-size:14px;color:#bdcbe1;line-height:1.55}.featured-prize{padding:23px 15px;background:linear-gradient(120deg,#17384b,#34233f);border:1px solid #687c95;border-radius:14px;margin:18px 0}.featured-prize>span{display:block;font-size:11px;letter-spacing:1.5px;color:#f3d784}.featured-prize strong{display:block;font-size:49px;color:#ffe4a0;line-height:1.25;margin:9px 0}.featured-prize small{color:#d7e4fa}.featured-entry{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;font-size:13px}.featured-entry>span{color:#acbad2}.featured-entry b{color:#55d9ef}.featured-join,.featured-later{width:100%;margin-top:10px}#featured-room-dialog .fine{font-size:12px}

.series-score{padding:10px 16px;background:#121e32;border:1px solid #42556c;border-radius:12px;color:#e5eefa}.series-score>b{font-size:11px;letter-spacing:1px;color:#f5d17a}.series-score>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.series-score span{background:#23314b;border-radius:20px;padding:5px 11px;font-size:12px}.series-score strong{margin-left:8px;color:#5ed5e7}

.house-rules{padding:16px;margin:16px 0;border:1px solid #7953af;border-radius:16px;background:#17172e}.house-rules summary{cursor:pointer;font-weight:800;color:#8eeeff;list-style:none;font-size:17px}.house-rules summary span{font-size:24px;margin-right:8px}.house-rules .check-label{margin:14px 0}.house-rules input{accent-color:#b241f5;width:20px;height:20px}.room-rules-label,.table-house-rules{color:#b9b5ee;font-size:12px}.stack-warning{position:fixed;left:50%;top:26%;transform:translateX(-50%);z-index:25;font-size:52px;font-weight:900;color:#fff;background:#aa147ce8;border:2px solid #edb3ff;border-radius:20px;padding:12px 24px;text-align:center;pointer-events:none;box-shadow:0 0 28px #fa209560}.stack-warning span{display:block;font-size:14px}.table-house-rules{text-align:center;padding:4px}

.friend-identity{display:flex;align-items:center;gap:14px;flex:1;border:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.friend-identity:disabled{opacity:1;cursor:default}.friend-identity span{display:flex;flex-direction:column;gap:5px}.friend-identity small{color:#a7a9bc;font-size:12px}.invite-friend-portrait .avatar{width:88px;height:88px;margin:20px auto 10px;display:block}.friend-play{font-size:12px;white-space:normal}.friend-play:disabled{opacity:.5}@media(max-width:480px){.friend-card{gap:9px}.friend-identity{gap:9px}.friend-play{min-width:100px;padding:10px;font-size:11px}}

#friend-game-invite{position:fixed;padding:28px;text-align:center}#friend-game-invite>.icon-button{position:absolute;top:12px;right:12px}#friend-game-invite>.eyebrow{display:block;margin:9px 30px 0}.invite-friend-portrait img{width:88px;height:88px;border-radius:50%;object-fit:cover;display:block;margin:22px auto 12px}#friend-game-invite h2{margin:12px 0;font-size:27px}#friend-game-invite form{text-align:left}#friend-game-invite form button{width:100%}
