/* Pro V95 only; never changes shared Duel cards or the surrounding salon grid. */
.tables-column{min-width:0}
#mine.rooms,#open.rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px}
.pro-table-card{min-width:0;width:100%;max-width:320px;overflow:hidden;border:1px solid #bd9651;border-radius:10px;background:#06291f;box-shadow:inset 0 0 0 1px #ffe3a215,0 4px 9px #0005;color:#f4dfae}
.pro-table-card:focus{outline:2px solid #ffe3a2;outline-offset:3px}
.pro-table-card .pro-table-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;padding:9px 12px;border-bottom:1px solid #b3914b66}
.pro-table-card .pro-table-number{font:600 13px Georgia,serif}
.pro-table-card .pro-table-terms{font-size:12px;font-variant-numeric:tabular-nums}
.pro-table-card .pro-table-stage{position:relative;isolation:isolate;aspect-ratio:1/1;background:#26170c;overflow:hidden}
.pro-table-card .pro-table-scene{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;z-index:-1;pointer-events:none}
.pro-table-card .pro-table-player{position:absolute;top:32%;width:28%;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;text-align:center;color:#fff3d0;pointer-events:none}
.pro-table-card .pro-table-player-left{left:0}.pro-table-card .pro-table-player-right{right:0}
.pro-table-card .pro-table-avatar{position:relative;display:grid;place-items:center;width:42px;height:42px;border:2px solid #d2ac62;border-radius:50%;background:#153c2b;box-shadow:0 2px 6px #000b;font-weight:700}
.pro-table-card .pro-table-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.pro-table-card .pro-table-handle,.pro-table-card .pro-table-rating{max-width:100%;padding:2px 5px;border-radius:4px;background:#07160ee6;text-shadow:0 1px 2px #000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}
.pro-table-card .pro-table-handle{font-size:12px}.pro-table-card .pro-table-rating{font-size:10px}
.pro-table-card .pro-table-seat-join{position:absolute;left:73%;top:31%;width:21%;height:30%;min-height:44px;padding:0;border:0;background:transparent;box-shadow:none;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;color:#f8dc8c;cursor:pointer}
.pro-table-card .pro-table-plus{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d0ac5a;border-radius:50%;background:#073b2ee6;box-shadow:0 1px 6px #0008;font:400 29px/1 Arial,sans-serif}
.pro-table-card .pro-table-join-label{position:absolute;top:100%;max-width:100%;padding:3px 6px;background:#07160ef5;border-radius:4px;font-size:12px;opacity:0;pointer-events:none}
.pro-table-card .pro-table-seat-join:hover .pro-table-join-label,.pro-table-card .pro-table-seat-join:focus-visible .pro-table-join-label{opacity:1}
.pro-table-card .pro-table-seat-join:disabled{opacity:.55;cursor:not-allowed}
.pro-table-card button:focus-visible,.pro-table-card a:focus-visible{outline:2px solid #fff1b2;outline-offset:3px}
.pro-table-card .pro-table-waiting{position:absolute;top:7%;left:50%;transform:translateX(-50%);max-width:92%;text-align:center;font-size:12px;border-radius:10px;background:#09271de6;padding:5px 9px}
.pro-table-card .pro-table-foot{padding:10px 12px;border-top:1px solid #b3914b44;background:#06291f}
.pro-table-card .pro-table-status{font-size:12px;line-height:1.5;margin:0;text-align:center;color:#e1d2b0}
.pro-table-card .pro-table-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:9px}
.pro-table-card .pro-table-actions .button,.pro-table-card .pro-table-actions button{min-height:40px;font-size:12px;padding:8px 12px}
@media(max-width:420px){.pro-table-card .pro-table-avatar{width:34px;height:34px}.pro-table-card .pro-table-handle{font-size:10px}.pro-table-card .pro-table-rating{font-size:9px}.pro-table-card .pro-table-top{padding:8px}.pro-table-card .pro-table-terms{font-size:11px}}

/* Compact cards use the same seated layout even inside the narrow Pro center. */
.pro-table-card .pro-table-avatar{width:34px;height:34px}
.pro-table-card .pro-table-handle{font-size:10px}
.pro-table-card .pro-table-top{padding:8px;gap:4px}
.pro-table-card .pro-table-terms{font-size:11px}
.pro-table-card .pro-table-actions .button,.pro-table-card .pro-table-actions button{padding:7px 9px}

/* V95: a single owned table uses the entire panel, not one open-grid slot.
   The approved square artwork stays intact; only its lower empty floor is clipped. */
#mine.rooms{grid-template-columns:minmax(0,1fr);container-type:inline-size;container-name:pro-owned}
#mine .pro-table-card-own{max-width:none;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch}
#mine .pro-table-card-own .pro-table-top{grid-column:1/-1}
#mine .pro-table-card-own .pro-table-stage{aspect-ratio:10/7;align-self:start}
#mine .pro-table-card-own .pro-table-scene{height:auto;aspect-ratio:1/1;object-position:center top}
#mine .pro-table-card-own .pro-table-player{top:45.714%}
#mine .pro-table-card-own .pro-table-waiting{top:10%}
#mine .pro-table-card-own .pro-table-foot{display:flex;flex-direction:column;justify-content:center;gap:12px;min-width:0;padding:14px 12px;border-top:0;border-left:1px solid #b3914b44}
#mine .pro-table-card-own .pro-table-actions{margin:0}
#mine .pro-table-card-own .pro-table-status{overflow-wrap:anywhere}
#open.rooms{align-items:start}
#open .pro-table-card{max-width:none}
@container pro-owned (max-width:399px){
 #mine .pro-table-card-own{grid-template-columns:minmax(0,1fr)}
 #mine .pro-table-card-own .pro-table-stage{width:100%;max-width:300px;justify-self:center}
 #mine .pro-table-card-own .pro-table-foot{border-left:0;border-top:1px solid #b3914b44;padding:12px}
}
