.pvp-lobby{max-width:620px;margin:0 auto;display:grid;gap:16px;padding:20px}.pvp-lobby label,.pvp-join{display:grid;gap:8px}.pvp-lobby input,.pvp-lobby select{width:100%;min-height:46px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff);color:var(--ink);font:inherit}.pvp-lobby small{color:var(--muted);line-height:1.7}.pvp-menu{margin-left:auto!important}.pvp-status{text-align:center;font-size:11px;min-height:18px;overflow-wrap:anywhere}.pvp-hand{display:flex;gap:8px;overflow-x:auto;padding:8px 4px;min-width:0}.pvp-card{flex:0 0 74px;min-width:0;padding:0;border:2px solid transparent;border-radius:7px;background:transparent;position:relative}.pvp-card img{width:100%;display:block;border-radius:5px}.pvp-card[aria-pressed=true]{border-color:var(--purple);transform:translateY(-3px);box-shadow:0 0 0 2px #d6ed88}.pvp-card:disabled{opacity:1}.pvp-card[aria-pressed=true]::after{content:'✓';position:absolute;right:2px;top:2px;background:var(--purple);color:white;border-radius:50%;width:22px;height:22px}.pvp-game .turn-controls{max-height:34dvh;overflow:auto;min-height:100px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.pvp-choice{display:grid;gap:8px;padding:8px 10px}.pvp-choice h2,.pvp-choice p{margin:0}.pvp-items{display:flex;gap:8px;overflow:auto}.pvp-items>div{flex:0 0 90px;display:grid;gap:4px}.pvp-items button:not(.pvp-card){min-height:44px;padding:6px;border:1px solid var(--line);border-radius:8px;font-size:12px;background:var(--surface,#fff);color:var(--ink)}.pvp-items button[aria-pressed=true]{background:var(--purple);color:#fff}.pvp-menu-panel{display:grid;gap:6px;padding:8px 10px}.pvp-revealed{padding:6px 10px;font-size:12px}.pvp-game .hand-action{position:static;padding:8px 10px}.pvp-game .hand-action .primary{min-height:44px}.pvp-game .pvp-hand .pvp-card{max-width:82px}.pvp-game .pvp-hand{scrollbar-width:thin}@media(max-height:650px){.pvp-game .pvp-card{flex-basis:52px}.pvp-game .turn-controls{max-height:35dvh}.pvp-status{font-size:9px}}@media(max-width:360px){.pvp-game .pvp-card{flex-basis:62px}.pvp-lobby{padding:14px}}
.pvp-card[aria-pressed=true][data-pvp-rank]::after{content:attr(data-pvp-rank)}
