.virtualClientList,.virtualSessionList{display:grid;gap:9px}.virtualClientButton{display:grid;gap:4px;width:100%;padding:12px;border:1px solid #dfe7d3;border-radius:11px;background:#fbfdf6;color:#28351d;text-align:left;cursor:pointer}.virtualClientButton:hover,.virtualClientButton:focus-visible{border-color:#a9ce36;background:#f5f9e8}.virtualClientButton small{color:#69715f;font-size:11px}.virtualMeetingRow{display:flex;align-items:center;gap:8px}.virtualMeetingRow input{flex:1;min-width:0}.virtualSessionCard{display:grid;gap:8px;padding:13px;border:1px solid #dfe7d3;border-left:4px solid #a9ce36;border-radius:12px;background:linear-gradient(110deg,#f7fbe9,#fff 72%)}.virtualSessionHead{display:flex;align-items:center;justify-content:space-between;gap:8px}.virtualSessionHead strong{overflow-wrap:anywhere}.virtualSessionCard>small{color:#66705b}.virtualSessionStatus{padding:4px 8px;border-radius:20px;background:#eff5dc;color:#536b24;font-size:10px;font-weight:800}.virtualSessionStatus.attended{background:#def3ee;color:#18766f}.virtualSessionStatus.missed{background:#fff0ec;color:#a64032}.virtualSessionStatus.rescheduled{background:#efe5f7;color:#704991}.virtualCorrection{margin:0;padding:9px 10px;border-radius:9px;background:#f1f5e9;color:#34432b;font-size:12px;line-height:1.5}.virtualSessionCard .action{width:max-content}.booking-guest-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;padding:12px;border-radius:11px;background:#f4f8e8}.booking-guest-edit .field{min-width:0}.booking-guest-edit .field:last-of-type{grid-column:1/-1}.booking-guest-edit-status{align-self:center;color:#5d6c3c}@media(max-width:600px){.virtualMeetingRow{align-items:stretch;flex-direction:column}.virtualMeetingRow .action{width:100%}.virtualSessionHead{align-items:flex-start;flex-direction:column}.booking-guest-edit{grid-template-columns:1fr}.booking-guest-edit .field:last-of-type{grid-column:auto}}
.virtualAgendaCard{border-top:3px solid #a9ce36}.virtualAgendaCard .formgrid{margin-top:8px}.virtualRequestList{display:grid;gap:8px;margin:12px 0}.virtualRequestCard{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid #dfe7d3;border-radius:11px;background:#fbfdf6}.virtualRequestCard>div{display:grid;gap:4px;min-width:0}.virtualRequestCard small{color:#65705c}.virtualRequestStatus{padding:5px 8px;border-radius:20px;background:#fff3d9;color:#8b5a13;font-size:10px;font-weight:800}.virtualMeetingEmbed{margin-top:9px;padding:10px;border:1px solid #dfe7d3;border-radius:12px;background:#f7faef}.virtualMeetingStatus{margin:0 0 8px;color:#526331;font-size:12px;font-weight:700}.virtualMeetingFrame{width:100%;height:min(68vh,620px);min-height:360px;overflow:hidden;border-radius:9px;background:#1b241a}.virtualMeetingFrame iframe{border:0;border-radius:9px}.virtualSessionListCard{border-top:3px solid #29a99b}.virtualRequestList:empty{display:none}@media(max-width:600px){.virtualRequestCard{align-items:flex-start;flex-direction:column}.virtualMeetingFrame{height:68vh;min-height:320px}}
.nav [data-view="virtual"],.nav [data-view="virtual-clients"]{display:none!important}body.client-view.virtual-access .nav [data-view="virtual"]{display:flex!important}body.client-view .nav [data-view="virtual-clients"],body.coach-view .nav [data-view="virtual"]{display:none!important}body.coach-view .nav [data-view="virtual-clients"]{display:flex!important}@media(max-width:600px){body.client-view.virtual-access .nav [data-view="virtual"]{display:grid!important}body.client-view .nav [data-view="virtual-clients"],body.coach-view .nav [data-view="virtual"]{display:none!important}body.coach-view .nav [data-view="virtual-clients"]{display:grid!important}}.communityEventDelete{margin-top:9px}

/* En clientes, las herramientas del entrenador nunca se muestran; el módulo virtual requiere plan activo. */
body.client-view .nav .coach-only,body.client-view .nav [data-view="clientes"],body.client-view .nav [data-view="virtual-clients"],body.coach-view .nav [data-view="virtual"],body.client-view:not(.virtual-access) .nav [data-view="virtual"],body.client-view:not(.virtual-access) .virtual-only{display:none!important}
body.client-view.virtual-access .nav [data-view="virtual"]{display:flex!important}
@media(max-width:600px){body.client-view.virtual-access .nav [data-view="virtual"]{display:grid!important}}