.playing-card,.settlement-card{color-scheme:only light;background-color:#f4f0e5;-webkit-text-fill-color:currentColor}.playing-card>span,.playing-card>strong{-webkit-text-fill-color:currentColor}.result-banner.round-settlement{--settlement-accent: #ebcc86;--result-padding: 22px;--result-gap: 16px;--result-title: 30px;--team-padding: 14px;--team-title: 20px;--player-font: 15px;--row-gap: 12px;--card-width: 25px;--card-height: 36px;top:45%;bottom:auto;width:min(880px,94%);height:auto;max-height:calc(100% - 84px);padding:var(--result-padding);transform:translate(-50%,-50%);z-index:25;display:flex;flex-direction:column;gap:var(--result-gap);text-align:left;border:1px solid #69714b;border-radius:22px;background:radial-gradient(ellipse at 18% 0%,#314632c4,transparent 60%),#0b1e17;box-shadow:0 24px 70px #0008,inset 0 1px #fff1;animation:settlement-arrive .45s ease-out both}.result-banner.round-settlement[data-outcome=lose]{--settlement-accent: #b8c5ca}.settlement-heading{display:flex;align-items:center;gap:14px;flex:0 0 auto}.settlement-seal{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;color:var(--settlement-accent);border:1px solid currentColor;border-radius:50%;outline:1px solid #a7ab6a30;outline-offset:4px;font:700 27px STKaiti,KaiTi,serif}.settlement-heading p{margin:0 0 4px;font-size:12px;letter-spacing:.12em;color:#a8b7a4}.settlement-heading p span{letter-spacing:0}.settlement-heading h2{margin:0;color:var(--settlement-accent);font-size:var(--result-title);line-height:1.2;letter-spacing:.04em}.settlement-heading>small{margin-left:auto;color:#8ea394;font-size:11px;line-height:1.7;text-align:right}.settlement-teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#6e7c54 transparent;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;animation:settlement-details .45s .12s ease-out both}.settlement-team{min-width:0;padding:var(--team-padding);border-radius:12px;background:#0919129c;border:1px solid #385341}.settlement-team[data-winning=true]{border-color:#827647;background:linear-gradient(155deg,#4b432125,transparent 65%),#0c1f16}.settlement-team-heading{display:flex;align-items:center;gap:8px;margin-bottom:var(--row-gap);padding-bottom:8px;border-bottom:1px solid #ffffff12}.settlement-team-heading h3{margin:0;font-size:var(--team-title);color:#e8dcc0;letter-spacing:.08em}.settlement-team-heading>small{margin-left:auto;font-size:12px;color:#a3b09f}.settlement-team[data-winning=true] .settlement-team-heading>small{color:#edce80}.settlement-own{padding:2px 6px;border-radius:4px;background:#c6a85420;color:#e2c987;font-size:10px}.settlement-player+.settlement-player{margin-top:var(--row-gap);padding-top:var(--row-gap);border-top:1px solid #ffffff0d}.settlement-player-heading{display:flex;align-items:baseline;gap:6px}.settlement-player-heading b{min-width:0;overflow-wrap:anywhere;font-size:var(--player-font);line-height:1.35;color:#e5ece0}.settlement-player-heading small{margin-left:auto;flex:0 0 auto;font-size:11px;color:#94aa9b;white-space:nowrap}.settlement-player-heading .settlement-rank{color:#e5cb8c}.settlement-self{flex:0 0 auto;color:#a8c8b1;font-size:10px}.settlement-identities{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.settlement-identities>span{padding:2px 5px;background:#a9ac7020;border-radius:4px;color:#d2c794;font:11px/1.2 Arial,sans-serif}.settlement-identities em{font-style:normal;font-size:10px;margin-left:3px}.settlement-cards{display:flex;flex-wrap:wrap;gap:2px;margin-top:6px}.settlement-card{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:var(--card-width);height:var(--card-height);flex:0 0 var(--card-width);border-radius:4px;background-image:linear-gradient(145deg,#fffef9,#e9e4d7);color:#18221e;font:700 13px/1.15 Arial,sans-serif}.settlement-card.red{color:#b5302c}.settlement-card i{font-style:normal}.round-final-summary{flex:0 0 auto;padding-top:8px;border-top:1px solid #ffffff0d;color:#82968a;font-size:11px;line-height:1.5}.round-final-summary small{font-size:inherit}.round-final-summary span{margin-left:5px;white-space:nowrap}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .result-banner.round-settlement{--result-padding: 12px 16px;--result-gap: 10px;--result-title: 23px;--team-padding: 8px 10px;--team-title: 16px;--player-font: 12px;--row-gap: 7px;--card-width: 20px;--card-height: 29px;top:calc(50% - 34px);max-height:calc(100% - 66px);border-radius:16px}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .settlement-seal{width:34px;height:34px;font-size:21px;outline-offset:2px}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .settlement-heading{gap:10px}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .settlement-heading p{font-size:10px;margin-bottom:2px}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .settlement-heading>small{font-size:10px}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .settlement-team-heading{padding-bottom:6px}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .settlement-card{font-size:12px}:is(html[data-height-tier=compact],html[data-virtual-landscape=true]) .round-final-summary{padding-top:5px;font-size:10px}@keyframes settlement-arrive{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes settlement-details{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.result-banner.round-settlement,.settlement-teams{animation:none}}.match-ready{width:min(780px,calc(100% - 32px));max-height:calc(var(--app-height, 100dvh) - 74px);margin:66px auto 0;padding:24px 28px;overflow:auto;border:1px solid #536746;border-radius:22px;background:radial-gradient(ellipse at 8% 0%,#244b36,transparent 62%),#0b2018;box-shadow:0 24px 60px #0005;color:#ececdd;touch-action:pan-x pan-y;animation:match-ready-arrive .4s ease-out both}.match-ready-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.match-ready-heading p{margin:0 0 8px;font-size:12px;color:#a5bba8;letter-spacing:.08em}.match-ready-heading h1{font:700 32px/1.2 Microsoft YaHei UI,PingFang SC,sans-serif;color:#f0d492}.match-ready-clock{flex:0 0 80px;width:80px;height:80px;display:grid;place-content:center;text-align:center;border:2px solid #e2be6c;border-radius:50%;background:#172e20;box-shadow:0 0 0 5px #e2be6c12}.match-ready-clock strong{font:700 34px/1.05 Georgia,serif;color:#ffe1a0}.match-ready-clock span{margin-top:3px;font-size:10px;color:#cbbc96}.match-ready-players{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:20px 0 16px}.match-ready-players li{min-width:0;padding:14px 8px;text-align:center;border-radius:12px;background:#091b149c;border:1px solid #496446}.match-ready-seat{display:grid;place-items:center;width:32px;height:32px;margin:0 auto 8px;border:1px solid #99ad71;border-radius:50%;color:#efcf88;font:18px Georgia,serif}.match-ready-players b{display:block;font-size:14px;overflow-wrap:anywhere}.match-ready-players small{display:block;margin-top:6px;font-size:11px;color:#a8c8a0}.match-ready-players .pending{opacity:.6;border-style:dashed}.match-ready-note{margin:0;text-align:center;font-size:12px;color:#9cb1a0}html[data-height-tier=compact] .match-ready,html[data-virtual-landscape=true] .match-ready{margin-top:48px;padding:12px 20px;max-height:calc(var(--app-height) - 60px)}html[data-height-tier=compact] .match-ready-heading h1,html[data-virtual-landscape=true] .match-ready-heading h1{font-size:25px}html[data-height-tier=compact] .match-ready-clock,html[data-virtual-landscape=true] .match-ready-clock{width:58px;height:58px;flex-basis:58px}html[data-height-tier=compact] .match-ready-clock strong,html[data-virtual-landscape=true] .match-ready-clock strong{font-size:26px}html[data-height-tier=compact] .match-ready-players,html[data-virtual-landscape=true] .match-ready-players{gap:8px;margin:12px 0}html[data-height-tier=compact] .match-ready-players li,html[data-virtual-landscape=true] .match-ready-players li{padding:8px}html[data-height-tier=compact] .match-ready-seat,html[data-virtual-landscape=true] .match-ready-seat{width:24px;height:24px;margin-bottom:5px;font-size:14px}@keyframes match-ready-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.match-ready{animation:none}}:root{color-scheme:only light;--app-height: 100vh;--app-width: 100vw;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);font-family:Microsoft YaHei UI,PingFang SC,sans-serif;color:#f8f4e8;background:#081712;font-synthesis:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}@supports (height: 100dvh){:root{--app-height: 100dvh}}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;background:#081712}body{margin:0;min-height:var(--app-height, 100vh);overscroll-behavior:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable=true]{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}button{font:inherit}.app-viewport{width:100%;min-height:var(--app-height, 100vh);overflow:hidden}.virtual-landscape-exit{display:none}html[data-virtual-landscape=true],html[data-virtual-landscape=true] body,html[data-virtual-landscape=true] #root{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}html[data-virtual-landscape=true] .app-viewport{position:fixed;z-index:900;left:50%;top:50%;width:var(--app-width);height:var(--app-height);min-height:0;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center}html[data-virtual-landscape=true] .orientation-guard{display:none}html[data-virtual-landscape=true] .virtual-landscape-exit{position:fixed;z-index:1400;left:calc(72px + var(--safe-left));top:calc(7px + var(--safe-top));display:block;padding:4px 8px;border:1px solid rgba(239,207,121,.36);border-radius:99px;color:#e9d69b;background:#04140ec2;font-size:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game-shell{min-height:var(--app-height, 100vh);padding:22px 270px 120px clamp(16px,3vw,44px);background:radial-gradient(circle at 50% 38%,rgba(51,131,91,.28),transparent 42%),linear-gradient(155deg,#102d23,#06120e 72%);overflow:hidden}.topbar{display:flex;justify-content:space-between;align-items:center}.eyebrow{margin:0;color:#b4c7ba;font-size:11px;letter-spacing:.26em}h1{margin:2px 0 0;font:700 clamp(32px,5vw,52px)/1 STKaiti,KaiTi,serif;color:#f4d995}.header-status{display:flex;align-items:center;gap:16px;color:#a9beb0;font-size:12px}.mode-button,.back-link{border:0;color:#e6cf91;background:transparent;cursor:pointer;transition:color .18s ease,transform .18s ease}.mode-button:hover,.back-link:hover{color:#fff0b9;transform:translateY(-1px)}.immersive-toggle{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.immersive-toggle>span{font-size:14px;line-height:1}.immersive-notice{position:fixed;z-index:1200;left:50%;bottom:max(18px,var(--safe-bottom));width:min(520px,calc(100% - 28px));padding:11px 16px;border:1px solid rgba(239,207,121,.42);border-radius:12px;color:#f6e2a6!important;background:#04120cf5;box-shadow:0 14px 38px #0000007a;transform:translate(-50%);text-align:center;font-size:12px!important}.sound-toggle{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.sound-toggle>span{display:grid;place-items:center;width:18px;height:18px;border:1px solid rgba(244,217,149,.35);border-radius:50%;color:#f2d681;font-size:11px}.round-pill{padding:9px 15px;border:1px solid rgba(244,217,149,.35);border-radius:99px;color:#e7d7aa;background:#00000029}.turn-status-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid rgba(185,211,195,.2);border-radius:99px;color:#c8d9ce;background:#05191173;font-size:12px;white-space:nowrap}.turn-status-pill i{width:7px;height:7px;border-radius:50%;background:#8eaa99;box-shadow:0 0 9px #9ab9a68c}.turn-status-pill.mine{border-color:#f9d37094;color:#ffe49b;background:#5d400861;box-shadow:0 0 20px #f3c44f33}.turn-status-pill.mine i{background:#ffe17d;box-shadow:0 0 0 4px #ffdc7024,0 0 18px #ffd765;animation:status-pulse 1.15s ease-in-out infinite}.table{position:relative;width:min(980px,100%);min-height:600px;margin:12px auto 0;border:1px solid rgba(216,191,124,.28);border-radius:46%/36%;background:radial-gradient(ellipse,#26744ccc,#0e402df5 65%,#0a2a1e);box-shadow:inset 0 0 50px #00000052,0 35px 80px #00000059;transition:border-color .28s ease,box-shadow .28s ease}.table:before{content:"";position:absolute;top:6%;right:6%;bottom:6%;left:6%;border:1px solid rgba(255,255,255,.035);border-radius:inherit;pointer-events:none}.table.my-turn{border-color:#f5cd6694;box-shadow:inset 0 0 65px #eebe4517,0 0 0 3px #eebe450f,0 35px 80px #00000059;animation:table-turn-glow 1.8s ease-in-out infinite}.opponent{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;color:#dce8df;opacity:.86}.opponent h2,.opponent p{margin:0}.opponent h2{font-size:15px}.opponent p{margin-top:2px;color:#9eb7a7;font-size:12px}.opponent.finished{opacity:.62}.opponent .finished-rank{margin-top:5px;color:#f0ce77;font-size:14px;font-weight:800}.opponent-left{left:4%;top:44%}.opponent-right{right:4%;top:44%;flex-direction:row-reverse;text-align:right}.opponent-top{left:50%;top:5%;transform:translate(-50%)}.avatar{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#00000038;transition:border-color .2s ease,box-shadow .2s ease}.opponent.current{opacity:1}.opponent.current:before{display:none}.opponent.current:after{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:calc(100% + 48px);min-width:150px;height:96px;border:3px solid rgba(255,218,103,.88);border-radius:999px;transform:translate(-50%,-50%);background:radial-gradient(ellipse,rgba(251,207,77,.16),transparent 68%);box-shadow:0 0 0 7px #ffd5591a,0 0 34px #ffc73894,inset 0 0 24px #ffde7821;animation:seat-turn-beacon 1.15s ease-in-out infinite;pointer-events:none}.opponent.current .avatar{border-color:#ffe082ad;box-shadow:0 0 0 4px #f3d27f21,0 0 24px #ffd15c59;color:#f4d995;animation:avatar-turn 1.25s ease-in-out infinite}.human-seat.current .human-status strong{color:#ffe49a;text-shadow:0 0 16px rgba(255,213,104,.7)}.identity-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.identity-badges strong{position:relative;overflow:hidden;padding:3px 7px;border:1px solid rgba(245,202,88,.52);border-radius:99px;color:#ffe39a!important;background:#774a0c80;box-shadow:none!important;font-size:10px;white-space:nowrap;animation:badge-reveal .38s ease both}.identity-badges strong:after{content:"";position:absolute;inset:-30% auto -30% -50%;width:30%;background:#ffffff59;transform:skew(-20deg);animation:badge-shine 2.8s ease-in-out infinite 1s}.seat-action{position:absolute;z-index:4;min-width:68px;min-height:54px;animation:action-arrive .38s ease both;pointer-events:none}.opponent-left .seat-action{left:calc(100% + 18px);top:50%;transform:translateY(-50%)}.opponent-right .seat-action{right:calc(100% + 18px);top:50%;transform:translateY(-50%)}.opponent-top .seat-action{left:50%;top:calc(100% + 14px);transform:translate(-50%)}.human-seat>.seat-action{left:50%;bottom:148px;transform:translate(-50%) scale(.78);transform-origin:center}.seat-action.pass{display:grid;place-items:center;padding:8px 16px;border:1px solid rgba(255,255,255,.17);border-radius:99px;color:#d6e1da;background:#05140ec7;box-shadow:0 7px 20px #00000040}.seat-action-cards{display:flex;justify-content:center;padding-left:24px}.seat-action .playing-card{flex-basis:48px;width:48px;height:70px;margin-left:-24px;padding:5px;border-radius:6px}.seat-action .playing-card span{font-size:13px}.seat-action .playing-card strong{font-size:15px}@keyframes action-arrive{0%{opacity:0;scale:.72;filter:blur(3px)}65%{scale:1.06}to{opacity:1;scale:1;filter:blur(0)}}@keyframes turn-clock-arrive{0%{opacity:0;scale:.68}72%{scale:1.08}to{opacity:1;scale:1}}@keyframes turn-clock-ring{0%{opacity:.92;transform:scale(.82)}76%,to{opacity:0;transform:scale(1.22)}}.turn-clock{--turn-progress-angle: 0deg;position:absolute;z-index:5;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:conic-gradient(#f6cf57 var(--turn-progress-angle),rgba(244,213,121,.24) 0);filter:drop-shadow(0 8px 14px rgba(0,0,0,.35)) drop-shadow(0 0 11px rgba(255,204,69,.34));isolation:isolate;animation:turn-clock-arrive .34s ease both;pointer-events:none}.turn-clock:before{content:"";position:absolute;z-index:-1;top:4px;right:4px;bottom:4px;left:4px;border:2px solid rgba(255,232,164,.82);border-radius:inherit;background:radial-gradient(circle at 38% 32%,#ffeaaa,#dca937 54%,#8c5a0b);box-shadow:inset 0 0 0 3px #4b2d0333,0 0 0 2px #051911b8}.turn-clock.waiting:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border:2px solid rgba(255,219,105,.68);border-radius:inherit;animation:turn-clock-ring 1.45s ease-out infinite}.turn-clock-bell{position:absolute;z-index:-2;top:-5px;width:20px;height:13px;border:2px solid #f1c651;border-radius:15px 15px 4px 4px;background:#8d5a0d}.turn-clock-bell.left{left:3px;transform:rotate(-28deg)}.turn-clock-bell.right{right:3px;transform:rotate(28deg)}.turn-clock-face{position:relative;display:block;width:31px;height:31px;border:1px solid rgba(88,52,3,.5);border-radius:50%;background:#fff6cceb;box-shadow:inset 0 0 8px #6b410433}.turn-clock-hand{position:absolute;left:calc(50% - 1px);bottom:50%;width:2px;height:10px;border-radius:2px;background:#68410b;transform-origin:50% 100%;transform:rotate(38deg)}.turn-clock-hand:after{content:"";position:absolute;left:0;top:8px;width:8px;height:2px;border-radius:2px;background:#68410b;transform-origin:left center;transform:rotate(58deg)}.turn-clock-pin{position:absolute;left:50%;top:50%;width:5px;height:5px;border-radius:50%;background:#8d5708;transform:translate(-50%,-50%)}.turn-clock strong{position:absolute;z-index:2;color:#402808;font-size:15px;line-height:1;text-shadow:0 1px rgba(255,255,255,.4)}.turn-clock.countdown .turn-clock-face{opacity:.36}.opponent-left>.turn-clock{left:calc(100% + 20px);top:50%;transform:translateY(-50%)}.opponent-right>.turn-clock{right:calc(100% + 20px);top:50%;transform:translateY(-50%)}.opponent-top>.turn-clock{left:50%;top:calc(100% + 12px);transform:translate(-50%)}.human-status .turn-clock{position:relative;flex:0 0 38px;width:38px;height:38px}.human-status .turn-clock-bell{top:-3px;width:13px;height:9px;border-width:1px}.human-status .turn-clock-face{width:21px;height:21px}.human-status .turn-clock-hand{height:7px}.human-status .turn-clock strong{font-size:11px}.table-center{position:absolute;z-index:2;inset:31% 20% auto;text-align:center;pointer-events:none}.played-cards{--throw-x: 0px;--throw-y: -140px;--throw-rotation: -12deg;position:relative;display:flex;justify-content:center;align-items:center;min-height:114px;padding-left:34px}.played-cards.throw-from-left{--throw-x: -230px;--throw-y: 0px;--throw-rotation: -16deg}.played-cards.throw-from-right{--throw-x: 230px;--throw-y: 0px;--throw-rotation: 16deg}.played-cards.throw-from-top{--throw-x: 0px;--throw-y: -150px;--throw-rotation: -11deg}.played-cards.throw-from-self{--throw-x: 0px;--throw-y: 165px;--throw-rotation: 9deg}.played-cards .playing-card{animation:card-land .78s cubic-bezier(.18,.82,.22,1.08) both;will-change:transform,opacity,filter}.played-cards .playing-card:nth-of-type(2){animation-delay:25ms}.played-cards .playing-card:nth-of-type(3){animation-delay:.05s}.played-cards .playing-card:nth-of-type(4){animation-delay:75ms}.played-cards .playing-card:nth-of-type(5){animation-delay:.1s}.center-impact{position:absolute;left:50%;top:50%;width:140px;height:62px;border:2px solid rgba(248,212,111,.48);border-radius:50%;transform:translate(-50%,-50%) scale(.5);opacity:0;animation:center-ripple .94s ease-out both}.free-lead{position:relative;align-self:center;width:62px;height:62px;margin-left:-34px;border:1px solid rgba(239,213,145,.32);border-radius:50%;background:radial-gradient(circle,rgba(224,194,112,.13),transparent 65%);box-shadow:inset 0 0 18px #e7cb7f1a,0 0 28px #40ab7021;animation:free-lead-breathe 1.8s ease-in-out infinite}.free-lead:before,.free-lead:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(222,199,134,.28);border-radius:50%}.free-lead:after{top:-8px;right:-8px;bottom:-8px;left:-8px;border-style:dashed;animation:free-lead-spin 7s linear infinite}.free-lead i{position:absolute;left:50%;top:50%;width:9px;height:9px;border-radius:50%;background:#e8cf88;box-shadow:0 0 18px #e9d28e;transform:translate(-50%,-50%)}.human-seat{position:absolute;z-index:3;left:4%;right:4%;bottom:5%}.human-seat:before{content:"";position:absolute;z-index:-1;left:50%;bottom:-14px;width:76%;height:130px;border-radius:50%;background:radial-gradient(ellipse,rgba(246,207,102,.18),transparent 66%);transform:translate(-50%) scale(.8);opacity:0;transition:opacity .25s ease,transform .25s ease;pointer-events:none}.human-seat.current:before{opacity:1;transform:translate(-50%) scale(1);animation:hand-aura 1.5s ease-in-out infinite}.human-seat.current:after{content:"";position:absolute;z-index:-1;left:50%;bottom:-12px;width:min(72%,620px);height:62px;border:0;border-top:3px solid rgba(255,224,126,.92);border-radius:50% 50% 0 0/100% 100% 0 0;transform:translate(-50%);background:radial-gradient(ellipse at 50% 100%,rgba(255,210,82,.24),transparent 67%);box-shadow:0 -10px 28px #ffc3305c;animation:human-turn-arc 1.35s ease-in-out infinite;pointer-events:none}.human-status{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:14px;font-size:13px}.human-status span{color:#a8beaf}.human-seat.finished .human-status>strong{padding:8px 16px;border-radius:99px;color:#f3d47f;background:#00000047;font-size:17px}.human-seat.finished{bottom:8%}.human-seat.finished .human-status{margin-bottom:0}.human-seat.finished .hand,.human-seat.finished .self-turn-anchor{display:none}.human-seat.finished:before,.human-seat.finished:after{display:none}.self-turn-anchor{position:relative;z-index:2;display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(214,228,219,.28);border-radius:50%;color:#b8cbbf!important;background:#051d14d1;box-shadow:0 4px 14px #00000038}.self-turn-anchor>span{color:inherit;font-size:12px;font-weight:900;line-height:1}.self-turn-anchor.active{border:2px solid #ffe38e;color:#fff1bd!important;box-shadow:0 0 0 3px #061e15d9,0 0 24px #ffcf4eb8;animation:self-turn-anchor-pulse 1.35s ease-in-out infinite}.self-turn-anchor.active:after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border:2px solid rgba(255,220,112,.72);border-radius:50%;animation:self-turn-anchor-ring 1.35s ease-out infinite;pointer-events:none}.hand{display:flex;justify-content:center;min-height:112px;padding-left:34px}.selectable-hand{touch-action:none;user-select:none;-webkit-user-select:none}.hand{scrollbar-width:none}.hand::-webkit-scrollbar{display:none}.playing-card{position:relative;flex:0 0 70px;width:70px;height:102px;margin-left:-34px;padding:8px;border:1px solid #d4cfbf;border-radius:8px;color:#18221e;background:linear-gradient(145deg,#fffef9,#e9e4d7);box-shadow:0 8px 15px #00000040;text-align:left;cursor:default;transition:transform .14s ease,box-shadow .14s ease}.hand .playing-card{cursor:pointer}.selectable-hand.disabled .playing-card{cursor:default}.tribute-mode .selectable-hand.disabled .playing-card.selected{opacity:0}.playing-card span{display:block;font-weight:800;font-size:18px}.playing-card strong{font-size:20px}.playing-card.red{color:#b5302c}.playing-card.selected,.hand .playing-card.selected:hover{transform:translateY(-20px);border-color:#f0cf76;box-shadow:0 0 0 2px #f0cf7638,0 16px 24px #0006;animation:card-select .22s ease both}@media(hover:hover)and (pointer:fine){.hand .playing-card:hover{transform:translateY(-6px);box-shadow:0 12px 20px #00000052}.hand .playing-card.selected:hover{transform:translateY(-20px)}}.result-banner,.tribute-panel{position:absolute;z-index:10;left:50%;top:49%;transform:translate(-50%,-50%);width:min(420px,82%);padding:26px;border:1px solid rgba(230,199,119,.45);border-radius:20px;background:#071912f5;box-shadow:0 25px 70px #0000008c;text-align:center}.tribute-panel{top:8%;bottom:185px;display:flex;flex-direction:column;width:min(560px,88%);max-height:none;overflow:hidden;transform:translate(-50%)}.tribute-panel.tribute-intro{top:14%;bottom:auto;width:min(420px,76%);min-height:68px;padding:14px 22px;background:#071912e0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:tribute-intro-arrive .32s ease both}.tribute-panel.tribute-intro .tribute-panel-scroll{overflow:visible}.tribute-panel-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.tribute-table .table-center{opacity:0}.tribute-table .human-seat{z-index:12}.result-banner>span{display:block;color:#8fa99a;font-size:10px;letter-spacing:.25em}.result-banner{animation:result-arrive .5s cubic-bezier(.2,.85,.25,1.15) both}.result-banner>strong{display:block;margin-top:7px;color:#efd17e;font-size:30px;text-shadow:0 0 24px rgba(239,209,126,.38)}.round-final-play{margin-top:14px;padding-top:11px;border-top:1px solid rgba(255,255,255,.09)}.round-final-play small{display:block;margin-bottom:8px;color:#bdcfc3;font-size:11px}.round-final-cards{display:flex;justify-content:center;padding-left:21px}.round-final-cards .playing-card{flex-basis:44px;width:44px;height:64px;margin-left:-21px;padding:5px;border-radius:6px;pointer-events:none}.round-final-cards .playing-card span{font-size:12px}.round-final-cards .playing-card strong{font-size:14px}.tribute-panel h2{margin:7px 0 8px;color:#f0d485}.tribute-panel-scroll>p:not(.eyebrow){margin:0 auto 14px;color:#a7baae;font-size:12px;line-height:1.7}.tribute-panel-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:14px;min-width:0;min-height:48px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);background:#071912f5}.pool-cards{flex:1 1 auto;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:10px;touch-action:pan-x}.pool-cards-track{display:flex;justify-content:center;gap:clamp(12px,2.4vw,22px);width:max-content;min-width:100%;padding:7px 10px}.pool-cards .playing-card{flex:0 0 70px;margin-left:0;cursor:pointer}.pool-cards:not(.selectable){opacity:.72}.tribute-confirm{padding:10px 20px;border:0;border-radius:10px;color:#17261f;background:#e5c56f;font-weight:700}.tribute-confirm:disabled{opacity:.4}.phase-chip{align-self:center;color:#d9c58e;font-size:12px}.pre-tribute-hand{margin:0 0 14px;padding:10px 12px;border-radius:10px;color:#c8d7ce;background:#ffffff0e;text-align:left}.pre-tribute-hand summary{cursor:pointer;color:#e4cf91;font-size:12px}.pre-tribute-hand p{margin:8px 0 0!important;color:#dfe8e2!important;font-size:13px!important;line-height:1.8!important}.tribute-timeline{max-height:128px;margin:0 0 16px;padding:10px 10px 10px 34px;overflow-y:auto;border-radius:10px;color:#b7c9bd;background:#0000002e;text-align:left;font-size:12px;line-height:1.8}.tribute-flight{position:absolute;z-index:28;left:50%;top:44%;width:150px;transform:translate(-50%,-50%);text-align:center;pointer-events:none;--tribute-from-x: 0px;--tribute-from-y: -180px}.tribute-flight.from-left{--tribute-from-x: -330px;--tribute-from-y: 0px}.tribute-flight.from-right{--tribute-from-x: 330px;--tribute-from-y: 0px}.tribute-flight.from-self{--tribute-from-x: 0px;--tribute-from-y: 195px}.tribute-flight-card{display:flex;justify-content:center;filter:drop-shadow(0 16px 20px rgba(0,0,0,.42));animation:tribute-card-flight 1.125s cubic-bezier(.2,.75,.22,1) both}.tribute-flight-card .playing-card{flex-basis:70px;margin-left:0;box-shadow:0 0 0 3px #f4cf6c38,0 14px 32px #00000080}.tribute-flight p{margin:7px 0 0;padding:5px 9px;border:1px solid rgba(245,211,119,.42);border-radius:99px;color:#f4dea0;background:#05160fe6;box-shadow:0 8px 22px #00000052;font-size:12px;animation:tribute-caption 1.125s ease both}.tribute-flight p strong{color:#ffe38c}.low-card-warning-badge{position:absolute;z-index:8;left:50%;top:calc(100% + 7px);width:max-content;padding:4px 9px;border:1px solid rgba(255,188,87,.65);border-radius:99px;color:#ffe09a;background:#6e2a0ce6;box-shadow:0 0 22px #ff8e3052;transform:translate(-50%);font-size:10px;animation:low-card-badge 1.8s ease both}.human-seat .human-warning{top:auto;bottom:calc(100% + 4px)}.low-cards .avatar,.human-seat.low-cards .human-status strong{animation:low-card-seat-alert .46s ease 3}.action-log{position:fixed;z-index:12;top:96px;right:calc(20px + var(--safe-right));width:226px;max-height:calc(var(--app-height, 100vh) - 136px);overflow:hidden;border:1px solid rgba(229,197,111,.22);border-radius:18px;background:#05160fd6;box-shadow:0 18px 48px #00000057;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.action-log-heading{display:flex;justify-content:space-between;padding:15px 16px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.action-log-heading strong{color:#ead18b}.action-log-heading span{color:#859c8e;font-size:11px}.action-log-scroll{max-height:calc(var(--app-height, 100vh) - 198px);padding:2px 16px 16px;overflow-y:auto}.action-log h2{margin:14px 0 7px;color:#91aa9b;font-size:11px;font-weight:600;letter-spacing:.08em}.action-log p{margin:0;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.04);color:#d7e1db;font-size:12px;line-height:1.45}.action-log .debug-stamp{margin-top:12px;border:0;color:#789183;font:10px/1.5 Consolas,monospace}.online-shell{min-height:var(--app-height, 100vh);padding:calc(28px + var(--safe-top)) calc(28px + var(--safe-right)) calc(28px + var(--safe-bottom)) calc(28px + var(--safe-left));color:#f4f0e5;background:radial-gradient(circle at 50% 20%,#204c3b,#071611 66%)}.online-shell>.back-link{position:absolute;top:calc(24px + var(--safe-top));left:calc(24px + var(--safe-left))}.lobby-sound{position:absolute;top:calc(24px + var(--safe-top));right:calc(24px + var(--safe-right));display:flex;align-items:center;gap:12px}.lobby-card{width:min(620px,100%);margin:10vh auto 0;padding:clamp(26px,5vw,52px);border:1px solid rgba(229,197,111,.3);border-radius:26px;background:#061710db;box-shadow:0 30px 80px #0006}.lobby-card h1{margin:8px 0 16px}.lobby-card>p{color:#aabdb1;line-height:1.7}.lobby-card label{display:grid;gap:8px;margin:28px 0 18px;color:#c8d5cd;font-size:13px}.lobby-card input{min-width:0;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:10px;color:#fff;background:#ffffff12;outline:none}.quick-match-button{width:100%;padding:14px 18px;border:1px solid #d4ae57;border-radius:12px;color:#14231d;background:linear-gradient(135deg,#f0d27a,#c99f47);box-shadow:0 10px 24px #cb9d342e;font-weight:800;cursor:pointer}.friend-room-block{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}.friend-room-block>strong{display:block;margin-bottom:10px;color:#cbd8d0;font-size:13px}.lobby-actions{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:10px}.lobby-actions button{padding:11px 16px;border:1px solid rgba(255,255,255,.14);border-radius:10px;color:#e8f0eb;background:#214638;cursor:pointer}.lobby-actions .primary{color:#17241f;background:#e5c56f;font-weight:700}.lobby-actions span{color:#778f81;font-size:12px}.lobby-message{min-height:24px;margin-bottom:0;color:#d9c486!important;font-size:13px}.waiting-room h1{font-family:Consolas,monospace;letter-spacing:.18em}.waiting-room ol{padding:0;list-style:none}.waiting-room li{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08)}.waiting-room em{color:#7fa58e;font-size:12px;font-style:normal}.matchmaking-wait{display:grid;place-items:center;gap:12px;padding:24px 0 8px;text-align:center}.matchmaking-wait>strong{color:#f0d27a;font-size:clamp(34px,8vw,54px);line-height:1}.matchmaking-wait>p{margin:0;color:#aabdb1}.matchmaking-wait>button{padding:10px 20px;border:1px solid rgba(255,255,255,.16);border-radius:10px;color:#dfe9e2;background:#203b31;cursor:pointer}.matching-pulse{display:flex;gap:7px;height:16px;align-items:center}.matching-pulse i{width:7px;height:7px;border-radius:50%;background:#e5c56f;animation:matching-dot 1s ease-in-out infinite}.matching-pulse i:nth-child(2){animation-delay:.14s}.matching-pulse i:nth-child(3){animation-delay:.28s}@keyframes matching-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}.online-game{padding:28px 270px 110px 28px}.online-header{display:flex;justify-content:space-between;align-items:center}.online-room-meta{display:flex;gap:14px;align-items:center}.online-header span{color:#93aa9c;font-size:12px}.online-four-table{margin-top:18px}.online-center{margin:0}.online-hand{justify-content:center}.bot-control-badge{display:inline-flex;width:max-content;margin-top:4px;padding:2px 7px;border:1px solid rgba(229,197,111,.42);border-radius:999px;color:#f0d27a;background:#48340e9e;font-size:10px;font-style:normal;line-height:1.4}.bot-control-badge.self{margin:0;white-space:nowrap}.control-dock{position:fixed;z-index:20;left:50%;bottom:max(18px,var(--safe-bottom));transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;gap:28px;width:min(620px,calc(100% - var(--safe-left) - var(--safe-right) - 28px));padding:12px 14px 12px 20px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#07140fe6;box-shadow:0 14px 40px #00000073;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.control-dock p{margin:0;color:#b7c9bd;font-size:13px}.control-dock.my-turn{border-color:#ffdc769e;box-shadow:0 14px 40px #00000073,0 0 0 2px #ffd75b14,0 0 28px #f5c3373d}.control-dock.my-turn .actions .primary:not(:disabled){animation:primary-turn-nudge .72s ease-out 1}.actions{display:flex;gap:9px}.actions button{min-width:82px;padding:10px 18px;border:1px solid rgba(255,255,255,.16);border-radius:11px;color:#eef3ef;background:#203b31;cursor:pointer}.actions .primary{border-color:#d4ae57;color:#16261f;background:#e5c56f;font-weight:700}.actions button:disabled{opacity:.35;cursor:not-allowed}.actions button:not(:disabled){transition:transform .14s ease,filter .14s ease,box-shadow .14s ease}.actions button:not(:disabled):hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 8px 18px #00000038}.actions button:not(:disabled):active{transform:translateY(1px) scale(.97)}@keyframes status-pulse{50%{transform:scale(1.28);box-shadow:0 0 0 7px #ffdc7000,0 0 22px #ffd765}}@keyframes table-turn-glow{50%{border-color:#ffdc80c7;box-shadow:inset 0 0 72px #eebe4521,0 0 0 5px #eebe450a,0 35px 80px #00000059}}@keyframes seat-turn-beacon{0%,to{opacity:.78;transform:translate(-50%,-50%) scale(.94)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.045);box-shadow:0 0 0 10px #ffd5590f,0 0 44px #ffc738b8,inset 0 0 28px #ffde782e}}@keyframes turn-label-pulse{50%{transform:translate(-50%) translateY(-2px) scale(1.08);filter:brightness(1.18)}}@keyframes avatar-turn{50%{transform:translateY(-2px);box-shadow:0 0 0 6px #f3d27f14,0 0 30px #ffd15c75}}@keyframes badge-reveal{0%{opacity:0;transform:translateY(4px) scale(.8)}to{opacity:1;transform:none}}@keyframes badge-shine{0%,56%{left:-50%}74%,to{left:125%}}@keyframes card-land{0%{opacity:0;transform:translate(var(--throw-x),var(--throw-y)) scale(.68) rotate(var(--throw-rotation));filter:blur(3px) drop-shadow(0 0 0 rgba(0,0,0,0))}42%{opacity:1;transform:translateY(-7px) scale(1.34) rotate(4deg);filter:blur(0) drop-shadow(0 16px 14px rgba(0,0,0,.38))}66%{transform:translateY(4px) scale(.91) rotate(-1.5deg);filter:drop-shadow(0 7px 8px rgba(0,0,0,.3))}82%{transform:translateY(-2px) scale(1.055) rotate(.5deg)}to{opacity:1;transform:none;filter:none}}@keyframes center-ripple{0%{opacity:.7;transform:translate(-50%,-50%) scale(.45)}to{opacity:0;transform:translate(-50%,-50%) scale(1.55)}}@keyframes free-lead-breathe{50%{transform:scale(1.06);border-color:#f5dc918c;box-shadow:inset 0 0 22px #e7cb7f24,0 0 35px #5bc58c33}}@keyframes free-lead-spin{to{transform:rotate(360deg)}}@keyframes hand-aura{50%{opacity:.68;filter:brightness(1.2)}}@keyframes human-turn-arc{0%,to{opacity:.72;transform:translate(-50%) scaleX(.97)}50%{opacity:1;transform:translate(-50%) scaleX(1.025);box-shadow:0 -12px 34px #ffc33085}}@keyframes self-turn-anchor-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06);filter:brightness(1.14)}}@keyframes self-turn-anchor-ring{0%{opacity:.95;transform:scale(.84)}70%,to{opacity:0;transform:scale(1.18)}}@keyframes primary-turn-nudge{0%{transform:translateY(0)}42%{transform:translateY(-4px);box-shadow:0 10px 24px #e5c56f47}to{transform:translateY(0)}}@keyframes card-select{0%{transform:translateY(-7px)}70%{transform:translateY(-23px)}to{transform:translateY(-20px)}}@keyframes result-arrive{0%{opacity:0;transform:translate(-50%,-45%) scale(.82);filter:blur(4px)}to{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}}@keyframes tribute-intro-arrive{0%{opacity:0;transform:translate(-50%,-8px) scale(.94)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes tribute-card-flight{0%{opacity:0;transform:translate(var(--tribute-from-x),var(--tribute-from-y)) scale(.9) rotate(-5deg)}14%{opacity:1;transform:translate(var(--tribute-from-x),calc(var(--tribute-from-y) - 14px)) scale(1.13) rotate(-2deg)}72%{opacity:1;transform:translateY(-5px) scale(1.04) rotate(0)}to{opacity:0;transform:translate(0) scale(.9)}}@keyframes tribute-caption{0%,10%{opacity:0;transform:translateY(7px)}25%,78%{opacity:1;transform:none}to{opacity:0;transform:translateY(-3px)}}@keyframes low-card-seat-alert{35%{transform:translateY(-3px) scale(1.08);color:#ffe29a;text-shadow:0 0 18px rgba(255,171,68,.85)}}@keyframes low-card-badge{0%{opacity:0;scale:.72}18%,76%{opacity:1;scale:1}to{opacity:0;scale:.92}}.orientation-guard{display:none}@media(max-width:700px){.game-shell{padding:14px 10px 112px}.table{min-height:620px;border-radius:32%/18%}.opponent-left{left:2%;top:36%}.opponent-right{right:2%;top:36%}.opponent-left .seat-action{left:0;top:calc(100% + 10px);transform:none}.opponent-right .seat-action{right:0;top:calc(100% + 10px);transform:none}.opponent-top .seat-action,.opponent-top>.turn-clock{top:calc(100% + 8px)}.human-seat>.seat-action{bottom:132px;transform:translate(-50%) scale(.58)}.table-center{inset:34.5% 7% auto}.human-seat{left:0;right:0;bottom:5%}.hand{justify-content:flex-start;overflow-x:auto;padding:20px 16px 4px 48px}.playing-card{flex-basis:58px;width:58px;height:88px;margin-left:-34px}.played-cards .playing-card{margin-left:-22px}.topbar{align-items:flex-start}.header-status{max-width:76%;flex-wrap:wrap;justify-content:flex-end;gap:6px 9px}.round-pill{padding:6px 10px}.mode-button{padding:5px 0}.control-dock{gap:10px;padding-left:14px}.control-dock p{max-width:46%}.actions button{min-width:68px;padding:9px 12px}.header-status>span:not(.sound-toggle){display:none}.turn-status-pill{order:-1;padding:6px 9px;font-size:11px}.sound-toggle{font-size:11px}.sound-toggle>span{width:16px;height:16px}.tribute-panel{top:7%;bottom:178px;width:94%;padding:16px 12px}.tribute-panel.tribute-intro{top:12%;bottom:auto;width:min(420px,82%);padding:11px 16px}.tribute-panel h2{font-size:19px}.tribute-timeline{max-height:92px}.identity-badges strong{padding:2px 5px;font-size:9px}.action-log{display:none}.online-shell{padding:18px 12px 110px}.online-game{padding:18px 10px 110px}.online-header{min-height:42px;padding:0 4px}.online-room-meta{gap:8px}.online-room-meta>span{display:none}.lobby-card{margin-top:54px;padding:24px 18px}.lobby-actions{grid-template-columns:1fr}.lobby-actions span{text-align:center}.online-hand{justify-content:flex-start;overflow-x:auto}}@media(min-width:701px)and (max-width:1100px){.game-shell{padding-right:clamp(16px,3vw,44px)}.online-game{padding-right:28px}.action-log{position:relative;top:auto;right:auto;width:min(620px,100%);max-height:260px;margin:20px auto 0}.action-log-scroll{max-height:200px}}@media(max-width:700px)and (orientation:portrait){.orientation-guard{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:13px;padding:34px;color:#f7e3aa;background:radial-gradient(circle at 50% 42%,rgba(38,111,76,.68),transparent 38%),linear-gradient(150deg,#0d2d22,#04110d 72%);text-align:center}.orientation-guard strong{font-size:22px}.orientation-guard p{max-width:300px;margin:0;color:#adc2b5;font-size:13px;line-height:1.7}.orientation-guard button{margin-top:5px;padding:10px 18px;border:1px solid rgba(241,207,116,.45);border-radius:99px;color:#18261f;background:#e7ca78;font-weight:800}.rotate-phone{position:relative;width:88px;height:60px;margin-bottom:12px}.rotate-phone i{position:absolute;left:28px;top:4px;width:36px;height:58px;border:3px solid #f0d686;border-radius:8px;box-shadow:0 0 24px #f0d6863d;animation:phone-rotate 1.8s ease-in-out infinite}.rotate-phone:after{content:"↻";position:absolute;right:-2px;top:12px;color:#d8bf78;font-size:28px}}@media(max-height:560px)and (orientation:landscape),(max-height:680px)and (orientation:landscape)and (pointer:coarse){html,body,#root{width:100%;height:100%;overflow:hidden}.game-shell,.online-shell,.online-game{width:100%;height:var(--app-height, 100dvh);min-height:0;padding:calc(4px + var(--safe-top)) calc(8px + var(--safe-right)) calc(4px + var(--safe-bottom)) calc(8px + var(--safe-left));overflow:hidden}.topbar{position:absolute;z-index:30;top:calc(4px + var(--safe-top));left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));height:34px}.topbar .eyebrow{display:none}.topbar h1{margin:0;font-size:27px}.header-status{max-width:none;gap:6px 10px;flex-wrap:nowrap}.header-status>span{display:none}.turn-status-pill{padding:5px 9px;font-size:10px}.mode-button,.sound-toggle{padding:3px 0;font-size:10px}.immersive-toggle{width:18px;overflow:hidden;font-size:0}.immersive-toggle>span{font-size:14px}.sound-toggle>span{width:15px;height:15px;font-size:9px}.round-pill{padding:5px 9px;font-size:10px}.table,.online-four-table{width:min(720px,calc(100% - var(--safe-left) - var(--safe-right) - 12px));height:calc(var(--app-height, 100dvh) - var(--safe-top) - var(--safe-bottom) - 42px);min-height:0;margin:calc(38px + var(--safe-top)) auto 0;border-radius:46%/39%}.opponent{gap:7px}.opponent h2{font-size:12px}.opponent p{font-size:9px}.avatar{width:34px;height:34px;font-size:12px}.opponent-left{left:2%;top:41%}.opponent-right{right:2%;top:41%}.opponent-top{top:2%;min-width:88px;justify-content:center}.opponent-top .opponent-meta{text-align:center}.opponent-top .identity-badges{justify-content:center}.opponent-top .seat-action{left:50%;top:calc(100% + 7px);transform:translate(-50%) scale(.72);transform-origin:top center}.opponent-top>.turn-clock{left:50%;top:calc(100% + 7px);transform:translate(-50%);scale:.72;transform-origin:top center}.opponent.current:after{left:50%;top:50%;width:calc(100% + 24px);min-width:108px;height:62px}.table-center{inset:40% 24% auto}.played-cards{min-height:82px;padding-left:27px}.playing-card{flex-basis:52px;width:52px;height:76px;margin-left:-27px;padding:6px;border-radius:6px}.playing-card span{font-size:14px}.playing-card strong{font-size:16px}.free-lead{width:48px;height:48px;margin-left:-27px}.human-seat{left:calc(1% + var(--safe-left));right:calc(39% + var(--safe-right));bottom:max(18px,calc(var(--safe-bottom) + 12px))}.human-seat.current:after{bottom:-5px;width:min(58%,360px);height:32px;border-width:2px 0 0}.human-seat.finished{left:50%;right:auto;bottom:max(24px,calc(var(--safe-bottom) + 18px));width:max-content;transform:translate(-50%)}.human-status{gap:8px;margin-bottom:4px;font-size:10px}.human-status .turn-clock{flex-basis:30px;width:30px;height:30px}.human-status .turn-clock-face{width:17px;height:17px}.self-turn-anchor{flex-basis:27px;width:27px;height:27px}.self-turn-anchor>span{font-size:9px}.hand{min-height:80px;padding:3px 8px 1px 35px;overflow:visible;justify-content:center}.hand .playing-card{padding:5px 6px}.hand .playing-card span{line-height:1}.hand .playing-card strong{display:block;margin-top:-1px;font-size:14px;line-height:1}.human-seat>.seat-action{bottom:78px;transform:translate(-50%) scale(.5)}.control-dock{left:auto;right:calc(8px + var(--safe-right));bottom:max(8px,var(--safe-bottom));transform:none;width:36%;max-width:310px;padding:8px;border-radius:14px}.control-dock p{display:none}.actions{width:100%;justify-content:flex-end;gap:6px}.actions button{min-width:58px;padding:8px 10px;font-size:11px}.action-log{display:none}.online-header{position:absolute;z-index:30;top:calc(5px + var(--safe-top));left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));min-height:28px;padding:0}.online-room-meta{gap:8px}.online-room-meta>span{display:none}.online-four-table{margin-top:calc(36px + var(--safe-top))}.lobby-card{max-height:calc(var(--app-height, 100dvh) - var(--safe-top) - var(--safe-bottom) - 50px);margin:calc(42px + var(--safe-top)) auto 0;padding:18px 24px;overflow-y:auto}.lobby-card h1{font-size:30px}.lobby-card label{margin:10px 0}.lobby-sound{top:calc(12px + var(--safe-top));right:calc(16px + var(--safe-right));gap:9px}.tribute-mode .control-dock{display:none}.tribute-table .human-seat{left:calc(1% + var(--safe-left));right:calc(1% + var(--safe-right));bottom:max(18px,calc(var(--safe-bottom) + 12px))}.tribute-panel{top:8px;bottom:calc(140px + var(--safe-bottom));width:min(620px,calc(100% - var(--safe-left) - var(--safe-right) - 22px));padding:9px 14px;border-radius:14px;transform:translate(-50%)}.tribute-panel.tribute-intro{top:12%;bottom:auto;width:min(390px,58%);min-height:42px;padding:8px 12px}.tribute-panel h2{margin:0 0 5px;font-size:15px}.tribute-panel-scroll>.eyebrow,.tribute-panel-scroll>p:not(.eyebrow){display:none}.pre-tribute-hand{margin-bottom:7px;padding:6px 9px}.pre-tribute-hand summary{font-size:10px}.pre-tribute-hand p{margin-top:5px!important;font-size:11px!important;line-height:1.5!important}.tribute-timeline{max-height:none;margin:0;padding:5px 8px 5px 26px;font-size:10px;line-height:1.5}.tribute-panel-actions{min-height:42px;gap:9px;padding-top:6px}.pool-cards-track{gap:14px;padding:6px 8px}.tribute-panel-actions .playing-card{flex-basis:46px;width:46px;height:66px;margin-left:0;padding:5px}.tribute-flight{top:45%;--tribute-from-y: -102px}.tribute-flight.from-left{--tribute-from-x: -250px;--tribute-from-y: 0px}.tribute-flight.from-right{--tribute-from-x: 250px;--tribute-from-y: 0px}.tribute-flight.from-self{--tribute-from-x: 0px;--tribute-from-y: 112px}.tribute-flight-card .playing-card{flex-basis:52px;width:52px;height:76px}.tribute-flight p{margin-top:4px;padding:3px 7px;font-size:10px}.tribute-confirm{padding:8px 16px;font-size:11px}.result-banner{width:min(360px,52%);padding:14px 18px}.result-banner>strong{margin-top:4px;font-size:25px}.round-final-play{margin-top:9px;padding-top:7px}.round-final-play small{margin-bottom:5px;font-size:9px}.round-final-cards .playing-card{flex-basis:34px;width:34px;height:50px;margin-left:-17px;padding:4px}.round-final-cards .playing-card span{font-size:10px}.round-final-cards .playing-card strong{font-size:11px}}html[data-height-tier=compact] .game-shell,html[data-height-tier=compact] .online-shell,html[data-height-tier=compact] .online-game{width:100%;height:var(--app-height, 100vh);min-height:0;padding:calc(4px + var(--safe-top)) calc(8px + var(--safe-right)) calc(4px + var(--safe-bottom)) calc(8px + var(--safe-left));overflow:hidden}html[data-height-tier=compact] .topbar{position:absolute;z-index:30;top:calc(4px + var(--safe-top));left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));height:34px}html[data-height-tier=compact] .topbar .eyebrow{display:none}html[data-height-tier=compact] .topbar h1{margin:0;font-size:27px}html[data-height-tier=compact] .header-status{max-width:none;gap:6px 10px;flex-wrap:nowrap}html[data-height-tier=compact] .header-status>span{display:none}html[data-height-tier=compact] .turn-status-pill{padding:5px 9px;font-size:10px}html[data-height-tier=compact] .mode-button,html[data-height-tier=compact] .sound-toggle{padding:3px 0;font-size:10px}html[data-height-tier=compact] .table,html[data-height-tier=compact] .online-four-table{width:min(980px,calc(100% - var(--safe-left) - var(--safe-right) - 12px));height:calc(var(--app-height, 100vh) - var(--safe-top) - var(--safe-bottom) - 42px);min-height:0;margin:calc(38px + var(--safe-top)) auto 0;border-radius:46%/39%}html[data-height-tier=compact] .table-center{inset:40% 24% auto}html[data-height-tier=compact] .playing-card{flex-basis:52px;width:52px;height:76px;margin-left:-27px;padding:6px;border-radius:6px}html[data-height-tier=compact] .playing-card span{font-size:14px}html[data-height-tier=compact] .playing-card strong{font-size:16px}html[data-height-tier=compact] .human-seat{left:calc(1% + var(--safe-left));right:calc(39% + var(--safe-right));bottom:max(18px,calc(var(--safe-bottom) + 12px))}html[data-height-tier=compact] .human-seat.current:after{bottom:-5px;width:min(58%,360px);height:32px;border-width:2px 0 0}html[data-height-tier=compact] .human-seat.finished{left:50%;right:auto;bottom:max(24px,calc(var(--safe-bottom) + 18px));width:max-content;transform:translate(-50%)}html[data-height-tier=compact] .human-status{gap:8px;margin-bottom:4px;font-size:10px}html[data-height-tier=compact] .human-status .turn-clock{flex-basis:30px;width:30px;height:30px}html[data-height-tier=compact] .human-status .turn-clock-face{width:17px;height:17px}html[data-height-tier=compact] .self-turn-anchor{flex-basis:27px;width:27px;height:27px}html[data-height-tier=compact] .self-turn-anchor>span{font-size:9px}html[data-height-tier=compact] .hand{min-height:80px;padding:3px 8px 1px 35px;overflow:visible;justify-content:center}html[data-height-tier=compact] .hand .playing-card{padding:5px 6px}html[data-height-tier=compact] .hand .playing-card span{line-height:1}html[data-height-tier=compact] .hand .playing-card strong{display:block;margin-top:-1px;font-size:14px;line-height:1}html[data-height-tier=compact] .control-dock{left:auto;right:calc(8px + var(--safe-right));bottom:max(8px,var(--safe-bottom));transform:none;width:36%;max-width:310px;padding:8px;border-radius:14px}html[data-height-tier=compact] .control-dock p,html[data-height-tier=compact] .action-log{display:none}html[data-height-tier=compact] .online-header{position:absolute;z-index:30;top:calc(5px + var(--safe-top));left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));min-height:28px;padding:0}html[data-height-tier=compact] .online-four-table{margin-top:calc(36px + var(--safe-top))}html[data-height-tier=compact] .tribute-table .human-seat{left:calc(1% + var(--safe-left));right:calc(1% + var(--safe-right));bottom:max(18px,calc(var(--safe-bottom) + 12px))}html[data-height-tier=compact] .tribute-panel{top:8px;bottom:calc(140px + var(--safe-bottom));width:min(620px,calc(100% - var(--safe-left) - var(--safe-right) - 22px))}html[data-height-tier=compact] .tribute-panel-actions .playing-card,html[data-height-tier=compact] .pool-cards .playing-card{flex-basis:46px;width:46px;height:66px;margin-left:0;padding:5px}html[data-short-landscape=true] .header-status{gap:4px 7px}html[data-short-landscape=true] .table-center{inset:39% 25% auto}html[data-short-landscape=true] .played-cards{min-height:66px;padding-left:23px}html[data-short-landscape=true] .played-cards .playing-card{flex-basis:44px;width:44px;height:60px;margin-left:-23px;padding:4px 5px}html[data-short-landscape=true] .played-cards .playing-card span{font-size:12px;line-height:1}html[data-short-landscape=true] .played-cards .playing-card strong{font-size:13px;line-height:1}html[data-short-landscape=true] .human-seat:not(.finished){bottom:max(28px,calc(var(--safe-bottom) + 20px))}html[data-short-landscape=true] .human-status{margin-bottom:2px;font-size:9px;line-height:1}html[data-short-landscape=true] .hand{min-height:70px}html[data-short-landscape=true] .hand .playing-card{height:68px}html[data-short-landscape=true] .control-dock{bottom:max(14px,calc(var(--safe-bottom) + 6px))}html[data-short-landscape=true] .tribute-table .human-seat:not(.finished){bottom:max(24px,calc(var(--safe-bottom) + 18px))}html[data-short-landscape=true] .tribute-panel{bottom:calc(126px + var(--safe-bottom))}@media(max-width:620px)and (orientation:landscape){html[data-height-tier=compact] .opponent-left,html[data-height-tier=compact] .opponent-right{top:20%}html[data-height-tier=compact] .opponent-left .seat-action,html[data-height-tier=compact] .opponent-right .seat-action{transform:scale(.72);transform-origin:top center}html[data-height-tier=compact] .human-seat:not(.finished){right:calc(38% + var(--safe-right))}html[data-height-tier=compact] .hand{padding-left:29px}html[data-height-tier=compact] .hand .playing-card{flex-basis:44px;width:44px;height:68px;margin-left:-23px;padding:4px 5px}html[data-height-tier=compact] .hand .playing-card span{font-size:12px}html[data-height-tier=compact] .hand .playing-card strong{font-size:13px}}@keyframes phone-rotate{0%,18%{transform:rotate(0)}55%,88%{transform:rotate(90deg)}to{transform:rotate(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.online-lobby{width:min(960px,calc(100% - 32px));margin:clamp(72px,8vh,104px) auto 0;padding:clamp(22px,3vw,34px)}.online-lobby>h1{margin-bottom:12px}.online-lobby-identity label{display:grid;grid-template-columns:auto minmax(180px,320px);align-items:center;justify-content:start;gap:12px;margin:0 0 16px}.online-lobby-options{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:16px}.online-lobby-option{min-width:0;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#ffffff09}.online-lobby-option h2{margin:0 0 9px;color:#ead18b;font-size:18px}.online-lobby-option>p{min-height:42px;margin:0 0 14px;color:#aabdb1;font-size:12px;line-height:1.65}.online-lobby .friend-room-block{margin:0;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}.online-lobby .friend-room-block.disabled{opacity:.48}.online-lobby .lobby-actions{grid-template-columns:auto auto minmax(120px,1fr) auto}.online-lobby .lobby-message{margin-top:12px}@media(max-height:680px)and (orientation:landscape){.online-lobby{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;width:min(900px,calc(100% - var(--safe-left) - var(--safe-right) - 28px));height:calc(var(--app-height, 100dvh) - var(--safe-top) - var(--safe-bottom) - 48px);max-height:none;margin:calc(40px + var(--safe-top)) auto 0;padding:11px 16px;overflow:hidden}.online-lobby>.eyebrow{display:none}.online-lobby>h1{margin:0 0 4px;font-size:25px}.online-lobby-identity label{grid-template-columns:auto minmax(150px,260px);gap:8px;margin:0 0 7px;font-size:11px}.online-lobby-identity input{height:34px;padding:6px 10px}.online-lobby-options{min-height:0;gap:10px}.online-lobby-option{min-height:0;padding:10px 12px;overflow:hidden}.online-lobby-option h2{margin-bottom:5px;font-size:14px}.online-lobby-option>p{min-height:0;margin-bottom:7px;font-size:10px;line-height:1.45}.online-lobby .quick-match-button{min-height:36px;padding:7px 12px}.online-lobby .friend-room-block{padding-top:10px}.online-lobby .lobby-actions{grid-template-columns:minmax(110px,1fr) auto;gap:6px}.online-lobby .lobby-actions>button:first-child{grid-column:1 / -1}.online-lobby .lobby-actions>span{display:none}.online-lobby .lobby-actions input,.online-lobby .lobby-actions button{min-height:34px;padding:6px 10px}.online-lobby .matchmaking-wait{gap:4px;padding:2px 0}.online-lobby .matchmaking-wait>strong{font-size:28px}.online-lobby .matchmaking-wait>p{font-size:10px}.online-lobby .matching-pulse{height:10px}.online-lobby .matchmaking-wait>button{padding:6px 14px}.online-lobby .lobby-message{min-height:18px;margin:5px 0 0;font-size:10px}}html[data-virtual-landscape=true]{--layout-safe-top: var(--safe-right);--layout-safe-right: var(--safe-bottom);--layout-safe-bottom: var(--safe-left);--layout-safe-left: var(--safe-top)}html[data-virtual-landscape=true] .app-viewport{width:var(--app-width);height:var(--app-height);min-width:0;min-height:0;overflow:hidden}html[data-virtual-landscape=true] .virtual-landscape-exit{left:calc(72px + var(--layout-safe-left));top:calc(6px + var(--layout-safe-top))}html[data-virtual-landscape=true] .game-shell,html[data-virtual-landscape=true] .online-shell,html[data-virtual-landscape=true] .online-game{width:100%;height:var(--app-height);min-height:0;padding:calc(4px + var(--layout-safe-top)) calc(8px + var(--layout-safe-right)) calc(4px + var(--layout-safe-bottom)) calc(8px + var(--layout-safe-left));overflow:hidden}html[data-virtual-landscape=true] .topbar,html[data-virtual-landscape=true] .online-header{position:absolute;z-index:30;top:calc(4px + var(--layout-safe-top));left:calc(10px + var(--layout-safe-left));right:calc(10px + var(--layout-safe-right));height:34px;min-height:0;padding:0;align-items:center}html[data-virtual-landscape=true] .topbar .eyebrow{display:none}html[data-virtual-landscape=true] .topbar h1{margin:0;font-size:27px}html[data-virtual-landscape=true] .header-status,html[data-virtual-landscape=true] .online-room-meta{max-width:none;gap:6px 9px;flex-wrap:nowrap}html[data-virtual-landscape=true] .header-status>span,html[data-virtual-landscape=true] .online-room-meta>span{display:none}html[data-virtual-landscape=true] .turn-status-pill{padding:5px 9px;font-size:10px}html[data-virtual-landscape=true] .mode-button,html[data-virtual-landscape=true] .sound-toggle{padding:3px 0;font-size:10px}html[data-virtual-landscape=true] .immersive-toggle{width:18px;overflow:hidden;font-size:0}html[data-virtual-landscape=true] .immersive-toggle>span{font-size:14px}html[data-virtual-landscape=true] .sound-toggle>span{width:15px;height:15px;font-size:9px}html[data-virtual-landscape=true] .round-pill{padding:5px 9px;font-size:10px}html[data-virtual-landscape=true] .table,html[data-virtual-landscape=true] .online-four-table{width:min(980px,calc(100% - var(--layout-safe-left) - var(--layout-safe-right) - 12px));height:calc(var(--app-height) - var(--layout-safe-top) - var(--layout-safe-bottom) - 42px);min-height:0;margin:calc(38px + var(--layout-safe-top)) auto 0;border-radius:46%/39%}html[data-virtual-landscape=true] .online-four-table{margin-top:calc(36px + var(--layout-safe-top))}html[data-virtual-landscape=true] .opponent{gap:7px}html[data-virtual-landscape=true] .opponent h2{font-size:12px}html[data-virtual-landscape=true] .opponent p{font-size:9px}html[data-virtual-landscape=true] .avatar{width:34px;height:34px;font-size:12px}html[data-virtual-landscape=true] .opponent-left{left:2%;top:38%}html[data-virtual-landscape=true] .opponent-right{right:2%;top:38%}html[data-virtual-landscape=true] .opponent-top{left:50%;top:1.5%;min-width:88px;justify-content:center;transform:translate(-50%)}html[data-virtual-landscape=true] .opponent-top .opponent-meta{text-align:center}html[data-virtual-landscape=true] .opponent-top .identity-badges{justify-content:center}html[data-virtual-landscape=true] .opponent.current:after{left:50%;top:50%;width:calc(100% + 24px);min-width:108px;height:62px}html[data-virtual-landscape=true] .opponent-left .seat-action{left:calc(100% + 10px);right:auto;top:50%;transform:translateY(-50%) scale(.62);transform-origin:left center}html[data-virtual-landscape=true] .opponent-right .seat-action{left:auto;right:calc(100% + 10px);top:50%;transform:translateY(-50%) scale(.62);transform-origin:right center}html[data-virtual-landscape=true] .opponent-top .seat-action{left:50%;right:auto;top:calc(100% + 5px);transform:translate(-50%) scale(.62);transform-origin:top center}html[data-virtual-landscape=true] .opponent-left>.turn-clock{left:calc(100% + 11px);right:auto;top:50%;transform:translateY(-50%) scale(.68);transform-origin:left center}html[data-virtual-landscape=true] .opponent-right>.turn-clock{left:auto;right:calc(100% + 11px);top:50%;transform:translateY(-50%) scale(.68);transform-origin:right center}html[data-virtual-landscape=true] .opponent-top>.turn-clock{left:50%;right:auto;top:calc(100% + 5px);transform:translate(-50%) scale(.68);transform-origin:top center}html[data-virtual-landscape=true] .seat-action .playing-card{flex-basis:44px;width:44px;height:64px;margin-left:-22px;padding:4px 5px}html[data-virtual-landscape=true] .table-center{inset:39% 25% auto;z-index:2}html[data-virtual-landscape=true] .played-cards{min-height:68px;padding-left:23px}html[data-virtual-landscape=true] .played-cards .playing-card{flex-basis:46px;width:46px;height:66px;margin-left:-23px;padding:4px 5px}html[data-virtual-landscape=true] .played-cards .playing-card span{font-size:12px;line-height:1}html[data-virtual-landscape=true] .played-cards .playing-card strong{font-size:13px;line-height:1}html[data-virtual-landscape=true] .free-lead{width:46px;height:46px;margin-left:-23px}html[data-virtual-landscape=true] .human-seat:not(.finished){left:calc(1% + var(--layout-safe-left));right:calc(39% + var(--layout-safe-right));bottom:max(18px,calc(var(--layout-safe-bottom) + 12px))}html[data-virtual-landscape=true] .human-seat.finished{left:50%;right:auto;bottom:max(24px,calc(var(--layout-safe-bottom) + 18px));width:max-content;transform:translate(-50%)}html[data-virtual-landscape=true] .human-status{gap:7px;margin-bottom:3px;font-size:9px;line-height:1}html[data-virtual-landscape=true] .human-status .turn-clock{flex-basis:29px;width:29px;height:29px}html[data-virtual-landscape=true] .human-status .turn-clock-face{width:16px;height:16px}html[data-virtual-landscape=true] .self-turn-anchor{flex-basis:27px;width:27px;height:27px}html[data-virtual-landscape=true] .self-turn-anchor>span{font-size:9px}html[data-virtual-landscape=true] .hand,html[data-virtual-landscape=true] .online-hand{min-height:68px;padding:2px 7px 0 29px;justify-content:center;overflow:visible}html[data-virtual-landscape=true] .hand .playing-card{flex-basis:44px;width:44px;height:66px;margin-left:-23px;padding:4px 5px}html[data-virtual-landscape=true] .hand .playing-card span{font-size:12px;line-height:1}html[data-virtual-landscape=true] .hand .playing-card strong{display:block;margin-top:-1px;font-size:13px;line-height:1}html[data-virtual-landscape=true] .human-seat>.seat-action{left:50%;bottom:70px;transform:translate(-50%) scale(.5);transform-origin:bottom center}html[data-virtual-landscape=true] .human-seat.current:after{bottom:-5px;width:min(58%,360px);height:32px;border-width:2px 0 0}html[data-virtual-landscape=true] .control-dock{left:auto;right:calc(8px + var(--layout-safe-right));bottom:max(8px,var(--layout-safe-bottom));width:36%;max-width:310px;padding:8px;border-radius:14px;transform:none}html[data-virtual-landscape=true] .control-dock p{display:none}html[data-virtual-landscape=true] .actions{width:100%;justify-content:flex-end;gap:6px}html[data-virtual-landscape=true] .actions button{min-width:58px;padding:8px 10px;font-size:11px}html[data-virtual-landscape=true] .action-log,html[data-virtual-landscape=true] .tribute-mode .control-dock{display:none}html[data-virtual-landscape=true] .tribute-table .human-seat:not(.finished){left:calc(1% + var(--layout-safe-left));right:calc(1% + var(--layout-safe-right));bottom:max(18px,calc(var(--layout-safe-bottom) + 12px))}html[data-virtual-landscape=true] .tribute-panel{top:8px;bottom:calc(126px + var(--layout-safe-bottom));width:min(620px,calc(100% - var(--layout-safe-left) - var(--layout-safe-right) - 22px));padding:9px 14px;border-radius:14px;transform:translate(-50%)}html[data-virtual-landscape=true] .tribute-panel.tribute-intro{top:12%;bottom:auto;width:min(390px,58%);min-height:42px;padding:8px 12px}html[data-virtual-landscape=true] .tribute-panel h2{margin:0 0 5px;font-size:15px}html[data-virtual-landscape=true] .tribute-panel-scroll>.eyebrow,html[data-virtual-landscape=true] .tribute-panel-scroll>p:not(.eyebrow){display:none}html[data-virtual-landscape=true] .pre-tribute-hand{margin-bottom:7px;padding:6px 9px}html[data-virtual-landscape=true] .pre-tribute-hand summary{font-size:10px}html[data-virtual-landscape=true] .pre-tribute-hand p{margin-top:5px!important;font-size:11px!important;line-height:1.5!important}html[data-virtual-landscape=true] .tribute-timeline{max-height:none;margin:0;padding:5px 8px 5px 26px;font-size:10px;line-height:1.5}html[data-virtual-landscape=true] .tribute-panel-actions{min-height:42px;gap:9px;padding-top:6px}html[data-virtual-landscape=true] .pool-cards-track{gap:14px;padding:6px 8px}html[data-virtual-landscape=true] .tribute-panel-actions .playing-card,html[data-virtual-landscape=true] .pool-cards .playing-card{flex-basis:46px;width:46px;height:66px;margin-left:0;padding:5px}html[data-virtual-landscape=true] .tribute-flight{top:45%;--tribute-from-y: -102px}html[data-virtual-landscape=true] .tribute-flight.from-left{--tribute-from-x: -250px;--tribute-from-y: 0}html[data-virtual-landscape=true] .tribute-flight.from-right{--tribute-from-x: 250px;--tribute-from-y: 0}html[data-virtual-landscape=true] .tribute-flight.from-self{--tribute-from-x: 0;--tribute-from-y: 112px}html[data-virtual-landscape=true] .online-shell>.back-link{top:calc(12px + var(--layout-safe-top));left:calc(16px + var(--layout-safe-left))}html[data-virtual-landscape=true] .lobby-sound{top:calc(10px + var(--layout-safe-top));right:calc(16px + var(--layout-safe-right));gap:8px}html[data-virtual-landscape=true] .lobby-card{max-height:calc(var(--app-height) - var(--layout-safe-top) - var(--layout-safe-bottom) - 48px);margin:calc(40px + var(--layout-safe-top)) auto 0;overflow:hidden}html[data-virtual-landscape=true] .online-lobby{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;width:min(900px,calc(100% - var(--layout-safe-left) - var(--layout-safe-right) - 28px));height:calc(var(--app-height) - var(--layout-safe-top) - var(--layout-safe-bottom) - 48px);max-height:none;margin:calc(40px + var(--layout-safe-top)) auto 0;padding:11px 16px;overflow:hidden}html[data-virtual-landscape=true] .online-lobby>.eyebrow{display:none}html[data-virtual-landscape=true] .online-lobby>h1{margin:0 0 4px;font-size:25px}html[data-virtual-landscape=true] .online-lobby-identity label{grid-template-columns:auto minmax(150px,260px);gap:8px;margin:0 0 7px;font-size:11px}html[data-virtual-landscape=true] .online-lobby-identity input{height:34px;padding:6px 10px}html[data-virtual-landscape=true] .online-lobby-options{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:0;gap:10px}html[data-virtual-landscape=true] .online-lobby-option{min-height:0;padding:10px 12px;overflow:hidden}html[data-virtual-landscape=true] .online-lobby-option h2{margin-bottom:5px;font-size:14px}html[data-virtual-landscape=true] .online-lobby-option>p{min-height:0;margin-bottom:7px;font-size:10px;line-height:1.45}html[data-virtual-landscape=true] .online-lobby .quick-match-button{min-height:36px;padding:7px 12px}html[data-virtual-landscape=true] .online-lobby .friend-room-block{margin:0;padding-top:10px}html[data-virtual-landscape=true] .online-lobby .lobby-actions{grid-template-columns:minmax(110px,1fr) auto;gap:6px}html[data-virtual-landscape=true] .online-lobby .lobby-actions>button:first-child{grid-column:1 / -1}html[data-virtual-landscape=true] .online-lobby .lobby-actions>span{display:none}html[data-virtual-landscape=true] .online-lobby .lobby-actions input,html[data-virtual-landscape=true] .online-lobby .lobby-actions button{min-height:34px;padding:6px 10px}html[data-virtual-landscape=true] .online-lobby .matchmaking-wait{gap:4px;padding:2px 0}html[data-virtual-landscape=true] .online-lobby .matchmaking-wait>strong{font-size:28px}html[data-virtual-landscape=true] .online-lobby .matchmaking-wait>p{font-size:10px}html[data-virtual-landscape=true] .online-lobby .matching-pulse{height:10px}html[data-virtual-landscape=true] .online-lobby .matchmaking-wait>button{padding:6px 14px}html[data-virtual-landscape=true] .online-lobby .lobby-message{min-height:18px;margin:5px 0 0;font-size:10px}html[data-virtual-landscape=true] .waiting-room{width:min(620px,calc(100% - var(--layout-safe-left) - var(--layout-safe-right) - 28px));padding:14px 20px;overflow-y:auto;overscroll-behavior:contain}.site-filing{position:fixed;z-index:1100;left:50%;bottom:var(--layout-safe-bottom, var(--safe-bottom));transform:translate(-50%);width:max-content;max-width:95%;padding:1px 6px;font-size:10px;line-height:15px;text-align:center;white-space:nowrap}.site-filing a{color:#a9bbb07a;text-decoration:none}.site-filing a:hover,.site-filing a:focus-visible{color:#f4d995;text-decoration:underline}.app-viewport .control-dock,html[data-height-tier=compact] .app-viewport .control-dock,html[data-short-landscape=true] .app-viewport .control-dock,html[data-virtual-landscape=true] .app-viewport .control-dock{bottom:max(20px,calc(var(--layout-safe-bottom, var(--safe-bottom)) + 18px))}
