/* CoachPanel · PRUEBA V268.15 · Usuarios y selector de modo */
:root{--cp15-green:#2f8a4b;--cp15-green-dark:#216638;--cp15-ink:#18261d;--cp15-muted:#66746b;--cp15-line:#d7e1da;--cp15-soft:#f5f8f6}

/* USUARIOS: primero el control, después la creación. */
#usuarios{background:#f7f9f8!important;color:var(--cp15-ink)!important}
#usuarios>.section-banner{margin-bottom:16px!important;padding:18px 20px!important;border:1px solid var(--cp15-line)!important;border-left:5px solid var(--cp15-green)!important;border-radius:17px!important;background:#fff!important;box-shadow:0 8px 24px rgba(36,74,46,.07)!important}
#usuarios>.section-banner h2{color:var(--cp15-ink)!important;font-size:24px!important;letter-spacing:-.025em!important}
#usuarios>.section-banner span{color:var(--cp15-muted)!important}
#usuarios>.section-banner .icon-title{display:grid!important;place-items:center!important;width:46px!important;height:46px!important;border:1px solid #c9dccf!important;border-radius:14px!important;background:#eff7f1!important;color:var(--cp15-green)!important;font-size:23px!important}
#usuarios>.grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;align-items:start!important;gap:14px!important}
#usuarios>.grid>.card{margin:0!important;padding:20px!important;border:1px solid var(--cp15-line)!important;border-radius:18px!important;background:#fff!important;color:var(--cp15-ink)!important;box-shadow:0 8px 24px rgba(36,74,46,.065)!important;min-width:0!important}
#usuarios #coachpanelClubAccessAdmin{order:1;grid-column:span 6!important}
#usuarios #coachpanelTrialUsersAdmin{order:1;grid-column:span 6!important}
#usuarios .users-list-card{order:2;grid-column:1/-1!important}
#usuarios .users-editor-card:not(#clientesCoachPanelCard){order:3;grid-column:span 7!important}
#usuarios #clientesCoachPanelCard{order:3;grid-column:span 5!important}
#usuarios .users-admin-card{order:4;grid-column:1/-1!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;column-gap:18px!important;padding:15px 18px!important;border-left:4px solid var(--cp15-green)!important}
#usuarios .users-admin-card h3{grid-row:1/3;margin:0!important;padding:9px 14px!important;border-radius:12px!important;background:#eef7f0!important;color:var(--cp15-green-dark)!important;font-size:14px!important;white-space:nowrap!important}
#usuarios .users-admin-card p{margin:0!important}
#usuarios h3{color:var(--cp15-ink)!important;font-size:17px!important;letter-spacing:-.015em!important}
#usuarios p,#usuarios .small{color:var(--cp15-muted)!important;opacity:1!important;line-height:1.45!important}
#usuarios .access-dashboard-header,#usuarios .users-card-heading,#usuarios .users-list-title{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;padding-bottom:14px!important;margin-bottom:15px!important;border-bottom:1px solid #e2e9e4!important}
#usuarios .users-card-heading h3,#usuarios .users-list-title h3{margin:0 0 5px!important}
#usuarios .users-secure-mark{flex:none!important;padding:6px 9px!important;border:1px solid #bdd8c4!important;border-radius:999px!important;background:#eef7f0!important;color:var(--cp15-green-dark)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.09em!important}
#usuarios .access-dashboard-stats,#usuarios #coachpanelTrialStats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:14px 0!important}
#usuarios .trial-stat{min-height:78px!important;padding:12px 8px!important;border:1px solid #d5e3d8!important;border-radius:13px!important;background:var(--cp15-soft)!important;text-align:center!important}
#usuarios .trial-stat strong{display:block!important;color:var(--cp15-ink)!important;font-size:24px!important;line-height:1!important}
#usuarios .trial-stat span{display:block!important;margin-top:6px!important;color:#708077!important;font-size:9px!important;font-weight:850!important;letter-spacing:.04em!important;text-transform:uppercase!important}
#usuarios :is(input,select){min-height:46px!important;border:1px solid #cfd9d2!important;border-radius:12px!important;background:#fff!important;color:var(--cp15-ink)!important;box-shadow:none!important;color-scheme:light!important}
#usuarios :is(input,select):focus{border-color:#79ad85!important;box-shadow:0 0 0 3px rgba(47,138,75,.12)!important;outline:none!important}
#usuarios label.small{display:block!important;margin-bottom:6px!important;color:#45564b!important;font-size:11px!important;font-weight:800!important}
#usuarios label.small span{color:#849087!important;font-weight:600!important}
#usuarios .users-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
#usuarios #clientesCoachPanelCard .users-form-grid{grid-template-columns:1fr!important}
#usuarios .users-team-heading{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;margin:16px 0 9px!important}
#usuarios .users-team-tools{display:flex!important;gap:6px!important}
#usuarios .permission-team-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;max-height:218px!important;overflow:auto!important;padding:10px!important;border:1px solid #d7e1da!important;border-radius:14px!important;background:#f6f9f7!important;scrollbar-gutter:stable!important}
#usuarios .permission-team-grid label{display:flex!important;align-items:center!important;gap:7px!important;min-height:38px!important;margin:0!important;padding:8px 9px!important;border:1px solid #d9e2dc!important;border-radius:10px!important;background:#fff!important;color:#34473a!important;font-size:11px!important;font-weight:750!important}
#usuarios .permission-team-grid input{width:17px!important;height:17px!important;min-height:17px!important;accent-color:var(--cp15-green)!important}
#usuarios .permission-team-grid label:has(input:checked){border-color:#79ad85!important;background:#eaf6ed!important;color:var(--cp15-green-dark)!important}
#usuarios .users-form-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:14px!important}
#usuarios button{min-height:40px!important;border-radius:11px!important;font-weight:800!important;box-shadow:none!important}
#usuarios button.primary{background:var(--cp15-green)!important;color:#fff!important;border:1px solid var(--cp15-green)!important}
#usuarios button.secondary{background:#fff!important;color:#33463a!important;border:1px solid #cbd7ce!important}
#usuarios button:disabled{background:#f2f5f3!important;color:#93a098!important;border-color:#dde4df!important;opacity:1!important}
#usuarios .users-filter-bar{display:grid!important;grid-template-columns:minmax(240px,1fr) minmax(150px,.35fr) minmax(170px,.4fr)!important;gap:9px!important;margin-bottom:12px!important}
#usuarios .users-table-scroll{overflow:auto!important;border:1px solid var(--cp15-line)!important;border-radius:13px!important;background:#fff!important}
#usuarios .users-permissions-table{min-width:780px!important;margin:0!important}
#usuarios .users-permissions-table th{padding:11px 10px!important;background:#eef5f0!important;color:#3e5145!important;border-color:#d8e2db!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.045em!important}
#usuarios .users-permissions-table td{padding:12px 10px!important;background:#fff!important;color:var(--cp15-ink)!important;border-color:#e4e9e5!important}

/* Actividad del club: contraste estable también en iPad/Firefox. */
html body #usuarios #coachpanelClubAccessList .club-access-row{
  background:#07110a!important;
  background-image:none!important;
  border-color:#23482d!important;
  color:#f7fbf8!important;
}
html body #usuarios #coachpanelClubAccessList .club-access-email strong{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
}
html body #usuarios #coachpanelClubAccessList .club-access-meta,
html body #usuarios #coachpanelClubAccessList .club-access-count span{
  color:#bdcbc1!important;
  -webkit-text-fill-color:#bdcbc1!important;
  opacity:1!important;
}
html body #usuarios #coachpanelClubAccessList .club-access-teams,
html body #usuarios #coachpanelClubAccessList .club-access-teams strong{
  color:#e8f1ea!important;
  -webkit-text-fill-color:#e8f1ea!important;
  opacity:1!important;
}
html body #usuarios #coachpanelClubAccessList .club-access-role,
html body #usuarios #coachpanelClubAccessList .club-access-count strong{
  color:#4bc536!important;
  -webkit-text-fill-color:#4bc536!important;
  opacity:1!important;
}

/* MODO BÁSICO / AVANZADO: diálogo claro y legible. */
#cpModeChooser{z-index:2147483600!important;align-items:center!important;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom))!important;background:rgba(17,29,21,.62)!important;backdrop-filter:blur(12px)!important}
#cpModeChooser .cp-mode-dialog{position:relative!important;width:min(840px,100%)!important;max-height:calc(100vh - 36px)!important;overflow:auto!important;padding:28px!important;border:1px solid #d8e2db!important;border-top:5px solid var(--cp15-green)!important;border-radius:24px!important;background:#f8faf9!important;color:var(--cp15-ink)!important;box-shadow:0 28px 80px rgba(11,29,17,.28)!important}
#cpModeChooser .cp-mode-close{position:absolute!important;top:14px!important;right:14px!important;z-index:2!important;width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;border:1px solid #d4ded7!important;border-radius:50%!important;background:#fff!important;color:#435248!important;font-size:24px!important;line-height:1!important;cursor:pointer!important}
#cpModeChooser .cp-mode-close::before,#cpModeChooser .cp-mode-close::after{content:none!important;display:none!important}
#cpModeChooser .cp-mode-head{margin:0 auto 22px!important;padding:0 46px!important;text-align:center!important}
#cpModeChooser .cp-mode-head small{color:var(--cp15-green)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.14em!important}
#cpModeChooser .cp-mode-head h2{margin:5px 0 7px!important;color:var(--cp15-ink)!important;font-size:30px!important;letter-spacing:-.035em!important}
#cpModeChooser .cp-mode-head p{margin:0!important;color:var(--cp15-muted)!important;font-size:14px!important}
#cpModeChooser .cp-mode-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
#cpModeChooser .cp-mode-card{position:relative!important;display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;grid-template-rows:auto auto auto 1fr auto!important;column-gap:14px!important;min-height:316px!important;padding:20px!important;border:1px solid #d5dfd8!important;border-radius:19px!important;background:#fff!important;background-image:none!important;color:var(--cp15-ink)!important;text-align:left!important;box-shadow:0 9px 24px rgba(39,76,48,.07)!important;overflow:hidden!important}
#cpModeChooser .cp-mode-card:hover,#cpModeChooser .cp-mode-card:focus-visible{border-color:#72a980!important;transform:translateY(-2px)!important;box-shadow:0 14px 32px rgba(47,138,75,.14)!important;outline:none!important}
#cpModeChooser .cp-mode-card.is-current{border-color:var(--cp15-green)!important;box-shadow:0 0 0 2px rgba(47,138,75,.12),0 14px 32px rgba(47,138,75,.13)!important}
#cpModeChooser .cp-mode-card.is-current::after{content:"ACTUAL";position:absolute;top:14px;right:14px;padding:4px 7px;border-radius:999px;background:#e9f5ec;color:var(--cp15-green-dark);font-size:8px;font-weight:900;letter-spacing:.09em}
#cpModeChooser .cp-mode-icon{grid-row:1/5!important;display:grid!important;place-items:center!important;width:72px!important;height:72px!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important}
#cpModeChooser .cp-mode-icon img{display:block!important;width:72px!important;height:72px!important;object-fit:contain!important;filter:drop-shadow(0 7px 9px rgba(47,138,75,.15))!important}
#cpModeChooser .cp-mode-tag{grid-column:2!important;width:max-content!important;margin-bottom:5px!important;padding:4px 7px!important;border-radius:999px!important;background:#edf6ef!important;color:var(--cp15-green-dark)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.08em!important}
#cpModeChooser .cp-mode-card h3{grid-column:2!important;margin:0 0 6px!important;color:var(--cp15-ink)!important;font-size:22px!important;letter-spacing:-.025em!important}
#cpModeChooser .cp-mode-card p{grid-column:2!important;margin:0 0 15px!important;color:var(--cp15-muted)!important;font-size:12px!important;line-height:1.45!important}
#cpModeChooser .cp-mode-list{grid-column:1/-1!important;display:grid!important;gap:8px!important;margin-top:4px!important;padding-top:15px!important;border-top:1px solid #e1e8e3!important;color:#3c4f42!important;font-size:12px!important}
#cpModeChooser .cp-mode-list span::before{content:"✓"!important;display:inline-grid!important;place-items:center!important;width:18px!important;height:18px!important;margin-right:8px!important;border-radius:50%!important;background:#e8f5eb!important;color:var(--cp15-green)!important;font-weight:900!important}
#cpModeChooser .cp-mode-enter{grid-column:1/-1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;margin-top:17px!important;padding:11px 13px!important;border-radius:11px!important;background:var(--cp15-green)!important;color:#fff!important;font-size:12px!important;font-weight:850!important}
#cpModeChooser .cp-mode-enter b{font-size:17px!important}
#cpModeSwitch{border:1px solid #c9d8cd!important;background:#fff!important;color:#26382c!important;box-shadow:0 8px 22px rgba(26,62,36,.16)!important}

@media(max-width:980px){
  #usuarios #coachpanelClubAccessAdmin,#usuarios #coachpanelTrialUsersAdmin{grid-column:1/-1!important}
  #usuarios .users-editor-card:not(#clientesCoachPanelCard),#usuarios #clientesCoachPanelCard{grid-column:1/-1!important}
}
@media(max-width:700px){
  #usuarios{padding-inline:8px!important}
  #usuarios>.section-banner{padding:15px!important}
  #usuarios>.section-banner h2{font-size:21px!important}
  #usuarios>.grid>.card{grid-column:1/-1!important;padding:15px!important;border-radius:15px!important}
  #usuarios .access-dashboard-stats,#usuarios #coachpanelTrialStats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #usuarios .users-form-grid,#usuarios #clientesCoachPanelCard .users-form-grid{grid-template-columns:1fr!important}
  #usuarios .permission-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:250px!important}
  #usuarios .users-filter-bar{grid-template-columns:1fr!important}
  #usuarios .users-card-heading,#usuarios .users-list-title,#usuarios .access-dashboard-header{display:grid!important}
  #usuarios .users-secure-mark{grid-row:1!important;width:max-content!important}
  #usuarios .users-form-actions{display:grid!important;grid-template-columns:1fr!important}
  #usuarios .users-admin-card{display:block!important}
  #usuarios .users-admin-card h3{margin-bottom:10px!important;width:max-content!important;max-width:100%!important}
  #cpModeChooser{padding:10px!important;align-items:flex-start!important}
  #cpModeChooser .cp-mode-dialog{max-height:calc(100vh - 20px)!important;padding:18px 14px!important;border-radius:19px!important}
  #cpModeChooser .cp-mode-head{padding:5px 34px 0 0!important;text-align:left!important;margin-bottom:15px!important}
  #cpModeChooser .cp-mode-head h2{font-size:25px!important}
  #cpModeChooser .cp-mode-head p{font-size:12px!important}
  #cpModeChooser .cp-mode-grid{grid-template-columns:1fr!important;gap:10px!important}
  #cpModeChooser .cp-mode-card{grid-template-columns:60px minmax(0,1fr)!important;min-height:0!important;padding:14px!important;border-radius:15px!important}
  #cpModeChooser .cp-mode-icon,#cpModeChooser .cp-mode-icon img{width:60px!important;height:60px!important}
  #cpModeChooser .cp-mode-card h3{font-size:18px!important}
  #cpModeChooser .cp-mode-card p{margin-bottom:10px!important;font-size:11px!important}
  #cpModeChooser .cp-mode-list{grid-template-columns:1fr 1fr!important;gap:6px 10px!important;padding-top:10px!important;font-size:10px!important}
  #cpModeChooser .cp-mode-list span::before{width:15px!important;height:15px!important;margin-right:5px!important}
  #cpModeChooser .cp-mode-enter{margin-top:11px!important;padding:9px 11px!important;font-size:11px!important}
}
@media(max-width:430px){
  html body #usuarios .permission-team-grid{grid-template-columns:1fr!important}
  html body #cpModeChooser .cp-mode-list{grid-template-columns:1fr!important}
}
