/* Public tables share the room materials without requiring the VIP entrance. */
body[data-isn-room] #gameDialog[data-table-surface="classic"]{background:linear-gradient(#09080545,#09080565),var(--isn-floor) center/cover fixed}
body[data-isn-room] #gameDialog[data-table-surface="classic"] .room-card-row .playing-card{background:linear-gradient(135deg,#fffefa,#fff9ea 70%,#efe0bd);color:#161d1a;border-color:#c8ac6a;text-shadow:none}
body[data-isn-room] #gameDialog[data-table-surface="classic"] .room-card-row .playing-card.red{color:#a51d32}
body[data-isn-room] #gameRoomContent>.opponent-picker{position:relative;flex-shrink:0;display:block;z-index:25;margin:12px 16px 8px;border:1px solid #c7a45e;background:linear-gradient(110deg,#30291bed,#10170feb);color:#f6e2ad}
body[data-isn-room] #gameRoomContent>.opponent-picker>summary{min-height:54px;padding:12px 18px;font-size:16px;cursor:pointer}
body[data-isn-room] .opponent-picker-body{max-height:55dvh;overflow:auto}
body[data-isn-room] .roster-member-row svg.vip-portrait{width:58px;height:72px;flex-shrink:0}
body[data-isn-room] .current-opponent-card svg.vip-portrait{width:58px;height:72px;flex-shrink:0}
body[data-isn-room] .opponent-comment>svg.vip-portrait{width:90px;height:110px;flex-shrink:0}
body[data-isn-room] .roster-filter-tools{position:relative}
@media(max-width:650px){body[data-isn-room] #gameRoomContent>.opponent-picker{margin:8px 6px}body[data-isn-room] #gameRoomContent>.opponent-picker>summary{padding:10px;font-size:13px}body[data-isn-room] .opponent-picker-status small{display:none}body[data-isn-room] .opponent-picker-body{max-height:52dvh}}

body[data-isn-room] .stud-player-heading svg.vip-portrait{width:48px;height:52px;flex-shrink:0}
