/* Players-only presentation. Session state and action handlers remain shared. */
.openplay-app #playersCard .add-player-experience{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 20px;padding:16px 18px;margin:0 0 20px;background:#f8fbfa;border:1px solid #e4ece9;border-radius:12px}
.openplay-app #playersCard .add-player-title-row{grid-column:1/-1;margin:0}
.openplay-app #playersCard .add-player-title-row h3{font-size:16px;margin:0 0 3px}
.openplay-app #playersCard .compact-copy{font-size:12px;margin:0;line-height:1.4}
.openplay-app #playersCard .level-picker{display:flex;align-items:center;gap:10px;margin:0;min-width:0}
.openplay-app #playersCard .level-buttons{display:flex;gap:4px;flex-wrap:nowrap;margin:0}
.openplay-app #playersCard .level-buttons button{min-height:44px;padding:8px 12px}
.openplay-app #playersCard .player-search-wrap{min-width:0;width:auto;margin:0}
.openplay-app #playersCard .op-add-player{display:grid;grid-template-columns:minmax(120px,1fr) minmax(100px,140px) auto auto;gap:8px;align-items:center;margin:0}
.openplay-app #playersCard .op-add-player input{width:100%;min-width:0;height:44px;min-height:44px;padding:10px 12px;font-size:14px}
.openplay-app #playersCard .op-add-player button{min-height:44px;padding:9px 16px;white-space:nowrap}
.openplay-app #playersCard .player-head-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px;margin:0 0 12px;padding:0}
.openplay-app #playersCard #playerListHeading{margin:0 auto 0 0;font-size:17px}
.openplay-app #playersCard .check-in-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.openplay-app #playersCard #checkInFeedback{font-size:12px}
.openplay-app #playersCard .player-head-actions button{min-height:44px;padding:8px 12px;font-size:13px}
.openplay-app #playersCard #players{display:block;margin:0;padding:0;border:0;background:#fff;overflow:visible}
.openplay-app #playersCard #players .player-row,
.openplay-app #playersCard #players .player-table-head{display:grid!important;grid-template-columns:minmax(140px,1fr) minmax(75px,.35fr) 120px 75px 60px 144px!important;gap:8px 12px!important;align-items:center!important;padding:8px 12px!important;margin:0!important;border:0!important;border-bottom:1px solid #e7edeb!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;min-height:60px!important}
.openplay-app #playersCard #players .player-table-head{min-height:36px!important;background:#f6f9f8!important;color:#63736e;font-size:12px;border-radius:8px 8px 0 0!important}
.openplay-app #playersCard #players .player-main{grid-column:1!important;grid-row:1!important;min-width:0}
.openplay-app #playersCard #players .player-main strong{font-size:14px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
.openplay-app #playersCard #players .player-main .muted{font-size:12px}
.openplay-app #playersCard #players .player-level-cell{grid-column:2!important;grid-row:1!important;font-size:13px;overflow-wrap:anywhere}
.openplay-app #playersCard #players .player-status-cell{grid-column:3!important;grid-row:1!important;width:max-content!important;max-width:100%;font-size:10px!important;padding:4px 8px!important;line-height:1.4;border-radius:999px;white-space:normal}
.openplay-app #playersCard #players .player-games-cell{grid-column:4!important;grid-row:1!important;display:block!important;font-size:13px}
.openplay-app #playersCard #players .player-record-cell{grid-column:5!important;grid-row:1!important;display:block!important;font-size:13px}
.openplay-app #playersCard #players .player-actions{grid-column:6!important;grid-row:1!important;display:flex!important;justify-content:flex-end;width:144px!important;gap:8px!important;min-height:44px}
.openplay-app #playersCard #players .player-menu-trigger{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:10px!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#075056!important}
.openplay-app #playersCard #players .player-menu-trigger>svg{display:block!important;width:20px;height:20px}
.openplay-app #playersCard #players .player-menu-dots,
.openplay-app #playersCard #players .player-initial-avatar{display:none!important}
.openplay-app #playersCard #players .player-checkin-btn{min-height:44px}
.openplay-app #playersCard #players .player-actions-heading{text-align:right}
.openplay-app #playersCard #players .edit-player-form{grid-column:1/-1!important;grid-row:auto!important;min-width:0;display:flex;flex-wrap:wrap;gap:8px}
.openplay-app #playersCard #players .edit-player-form input{min-width:0;max-width:100%}
.openplay-app #playersCard #players .player-empty-row{padding:18px 12px;color:#63736e;font-size:14px}
.openplay-app #playersCard #players button:focus-visible{outline:2px solid #075056!important;outline-offset:2px}
@media(max-width:1100px){
 .openplay-app #playersCard .add-player-experience{grid-template-columns:1fr}
 .openplay-app #playersCard #players .player-row,.openplay-app #playersCard #players .player-table-head{grid-template-columns:minmax(100px,1fr) 70px 110px 60px 45px 44px!important;gap:8px!important}
 .openplay-app #playersCard #players .player-actions{width:44px!important}
 .openplay-app #playersCard #players .player-actions>.player-checkin-btn{display:none!important}
 .openplay-app #playersCard #players .mobile-player-checkin{display:grid!important}
}
@media(max-width:700px){
 .openplay-app #playersCard .add-player-experience{padding:12px;gap:12px;margin-bottom:16px}
 .openplay-app #playersCard .op-add-player{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .openplay-app #playersCard #playerName{grid-column:1/-1}
 .openplay-app #playersCard #openImportPlayers{grid-column:1/-1}
 .openplay-app #playersCard .level-picker{flex-wrap:wrap;gap:8px}
 .openplay-app #playersCard .player-head-actions{justify-content:space-between;gap:8px}
 .openplay-app #playersCard #playerListHeading{flex-basis:100%}
 .openplay-app #playersCard .check-in-controls{flex:1 1 100%;justify-content:space-between;gap:8px}
 .openplay-app #playersCard #players .player-table-head{display:none!important}
 .openplay-app #playersCard #players .player-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px!important;gap:5px 8px!important;padding:10px 0!important;min-height:0!important}
 .openplay-app #playersCard #players .player-main{grid-column:1/3!important;grid-row:1!important}
 .openplay-app #playersCard #players .player-level-cell{grid-column:1!important;grid-row:2!important}
 .openplay-app #playersCard #players .player-status-cell{grid-column:2!important;grid-row:2!important}
 .openplay-app #playersCard #players .player-games-cell{grid-column:1!important;grid-row:3!important;font-size:12px}
 .openplay-app #playersCard #players .player-games-cell::before{content:none;color:#63736e}
 .openplay-app #playersCard #players .player-record-cell{grid-column:2!important;grid-row:3!important;font-size:12px}
 .openplay-app #playersCard #players .player-record-cell::before{content:'W–L: ';color:#63736e}
 .openplay-app #playersCard #players .player-actions{grid-column:3!important;grid-row:1/4!important}
}
/* Override legacy card-only presentation without affecting other sections. */
.openplay-app #playersCard .player-section-head{background:#fff!important;border:0!important;margin-bottom:12px}
.openplay-app #playersCard #players .player-level-cell{display:block!important;border:0!important;background:transparent!important;padding:0!important;text-transform:none!important}
.openplay-app #playersCard #players .player-games-cell{white-space:normal!important;overflow-wrap:anywhere}
@media(min-width:901px) and (max-width:1100px){
 .openplay-app #playersCard .add-player-experience{grid-template-columns:auto minmax(0,1fr)}
 .openplay-app #playersCard .op-add-player{grid-template-columns:minmax(100px,1fr) 140px auto auto!important}
 .openplay-app #playersCard .level-buttons button{padding:8px 10px}
 .openplay-app #playersCard .op-add-player button{padding:9px 12px;font-size:13px}
}
@media(min-width:701px) and (max-width:1100px){
 .openplay-app #playersCard #players .player-row,.openplay-app #playersCard #players .player-table-head{grid-template-columns:minmax(100px,1fr) 70px 110px 82px 45px 44px!important}
}
@media(max-width:700px){
 .openplay-app #playersCard .op-add-player{grid-template-columns:minmax(0,1fr) auto!important}
 .openplay-app #playersCard .op-add-player #playerSkill{grid-column:1!important}
 .openplay-app #playersCard .op-add-player #savePlayer{grid-column:2!important;min-width:70px}
 .openplay-app #playersCard .op-add-player #openImportPlayers{grid-column:1/-1!important}
 .openplay-app #playersCard .player-head-actions{display:flex!important;gap:8px!important}
 .openplay-app #playersCard .player-head-actions button{width:auto!important}
 .openplay-app #playersCard .check-in-controls{display:flex!important;flex-wrap:wrap!important;justify-content:space-between!important}
 .openplay-app #playersCard .level-picker{flex-direction:row!important}
 .openplay-app #playersCard .level-buttons{flex:1}
 .openplay-app #playersCard .level-buttons button{flex:1;padding:8px}
}
