/* =====================================================
   RDV Parent — CSS FINAL NETTOYÉ ET COMMENTÉ
   -----------------------------------------------------
   Objectif :
   - garder le rendu final souhaité
   - supprimer les contradictions internes
   - regrouper les règles par zone
   - commenter clairement chaque partie
===================================================== */


/* =====================================================
   VARIABLES GLOBALES
===================================================== */
:root{
  --rdv-blue: #0F2954;
  --rdv-accent: #2c7be5;
  --rdv-gap: 12px;
  --rdv-line: 2px;
  --rdv-form-width: 560px;
}


/* =====================================================
   RESET / BASE GLOBALE
===================================================== */
html,
body{
  overflow-x: hidden !important;
}

.rdv-parent-wrap,
.rdv-parent-wrap *{
  box-sizing: border-box;
}

.rdv-parent-wrap{
  width: 100% !important;
  max-width: 1800px !important;
  margin: 24px auto !important;
  margin-top: 10px !important;
  padding: 0 12px !important;
  color: #111;
  font-family: inherit;
}

.rdv-parent-wrap *{
  max-width: 100%;
}

.rdv-parent-wrap label,
.rdv-parent-wrap strong,
.rdv-parent-wrap b{
  text-decoration: none !important;
}


/* =====================================================
   TABS / ONGLETS EN HAUT
===================================================== */
.rdv-parent-wrap .rdv-tabs{
  display: block !important;
  width: 100% !important;
  margin-top: -20px !important;
}

.rdv-parent-wrap .rdv-tabs-nav{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  gap: 10px !important;
  margin: 0 !important;
  margin-top: -8px !important;
  margin-bottom: 42px !important;
}

.rdv-parent-wrap .rdv-tab-btn{
  flex: 0 1 auto !important;
  min-width: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 6px 12px !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  border-radius: 4px !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--rdv-blue) !important;
  border: 1px solid var(--rdv-blue) !important;
}

.rdv-parent-wrap .rdv-tab-btn:hover{
  background: var(--rdv-blue) !important;
  color: #fff !important;
}

.rdv-parent-wrap .rdv-tab-btn.is-active{
  background: var(--rdv-blue) !important;
  color: #fff !important;
  border: 1px solid var(--rdv-blue) !important;
}

.rdv-parent-wrap .rdv-tab-btn.is-active::before{
  display: none !important;
}

.rdv-parent-wrap .rdv-tabs-content{
  min-width: 0 !important;
  width: 100% !important;
  border-left: 0 !important;
  padding-left: 0 !important;
  padding-top: 25px !important;
  margin-top: 0 !important;
}

.rdv-parent-wrap .rdv-tab-panel{
  display: none;
  width: 100%;
  min-width: 0;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.rdv-parent-wrap .rdv-tab-panel.is-active{
  display: block;
}

.rdv-parent-wrap .rdv-tab-panel h1,
.rdv-parent-wrap .rdv-tab-panel h2,
.rdv-parent-wrap .rdv-tab-panel h3{
  margin-top: 0 !important;
}


/* =====================================================
   FORMULAIRE PRINCIPAL
===================================================== */
.rdv-parent-wrap form.rdv-parent-form{
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--rdv-gap);
}

.rdv-parent-wrap .rdv-mobile-field,
.rdv-parent-wrap .rdv-parent-meta,
.rdv-parent-wrap .rdv-slots-title,
.rdv-parent-wrap .rdv-surplace,
.rdv-parent-wrap .rdv-hint,
.rdv-parent-wrap .rdv-admin-slots,
.rdv-parent-wrap .rdv-slots-wrap,
.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"]{
  width: min(var(--rdv-form-width), 100%) !important;
  max-width: 100% !important;
}

.rdv-parent-wrap label.rdv-slot.rdv-field{
  display: block;
  width: 100%;
  margin: 0 0 16px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}


/* =====================================================
   TITRES / LABELS DU FORMULAIRE
===================================================== */
.rdv-parent-wrap .rdv-slot-text{
  display: block;
  margin: 0 0 8px;
  font-weight: 800;
  line-height: 1.2;
  text-align: left !important;
  background: transparent !important;
  color: inherit !important;
  padding: 0 !important;
}

.rdv-parent-wrap .rdv-mobile-field{
  text-align: left !important;
}

.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text{
  display: inline-block !important;
  width: auto !important;
  max-width: max-content !important;
  white-space: nowrap !important;
  text-align: left !important;
  background: var(--rdv-blue) !important;
  color: #fff !important;
  font-weight: 900 !important;
  padding: 4px 8px !important;
  border-radius: 0 !important;
}

.rdv-parent-wrap .rdv-slots-title{
  display: inline-block !important;
  width: auto !important;
  max-width: max-content !important;
  white-space: nowrap !important;
  margin: 18px 0 12px;
  text-transform: uppercase;
  letter-spacing: .4px;
  background: var(--rdv-blue) !important;
  color: #fff !important;
  font-weight: 900 !important;
  padding: 4px 8px !important;
  border-radius: 0 !important;
}

.rdv-parent-wrap .rdv-mobile-field,
.rdv-parent-wrap .rdv-parent-meta,
.rdv-parent-wrap .rdv-slots-wrap,
.rdv-parent-wrap .rdv-admin-slots{
  text-align: left !important;
}

.rdv-parent-wrap .rdv-req{
  color: #d93025;
  font-size: 12px;
  font-weight: 900;
  position: relative;
  top: -2px;
  margin-left: 2px;
}


/* =====================================================
   CHAMPS DE SAISIE
===================================================== */
.rdv-parent-wrap input[type="text"],
.rdv-parent-wrap select{
  display: block;
  width: 25ch;
  max-width: 100%;
  height: 42px;
  line-height: 42px;
  padding: 0 2px;
  margin: 0;
  font-size: 16px;
  color: #111;
  background: transparent !important;
  border: none !important;
  border-bottom: var(--rdv-line) solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.rdv-parent-wrap input[type="text"]:focus,
.rdv-parent-wrap select:focus{
  border-bottom-width: 3px !important;
}

.rdv-parent-wrap select{
  padding-right: 28px;
  background-image:
    linear-gradient(45deg, transparent 50%, #000 50%),
    linear-gradient(135deg, #000 50%, transparent 50%);
  background-position:
    calc(100% - 14px) 55%,
    calc(100% - 8px) 55%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

.rdv-parent-wrap #rdv-parent-name,
.rdv-parent-wrap #rdv-school{
  width: 35ch;
}

.rdv-parent-wrap #rdv-legal-role{
  width: 18ch;
}

.rdv-parent-wrap #rdv-class-level{
  width: 10ch;
}


/* =====================================================
   CHAMP MOBILE
===================================================== */
.rdv-parent-wrap .rdv-mobile-row{
  display: flex;
  align-items: center;
  gap: 8px;
  width: 25ch;
  max-width: 100%;
}

.rdv-parent-wrap .rdv-prefix{
  flex: 0 0 auto;
  height: 42px;
  line-height: 42px;
  font-weight: 700;
}

.rdv-parent-wrap #rdv-mobile8{
  flex: 0 0 12ch;
  width: 12ch;
  max-width: 12ch;
  padding-left: 0 !important;
  letter-spacing: 1px;
}


/* =====================================================
   CHAMP MOYENNE
===================================================== */
.rdv-parent-wrap .rdv-moyenne-wrap{
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  width: 100% !important;
  gap: 6px;
}

.rdv-parent-wrap .rdv-moyenne-wrap input{
  width: 2.8ch !important;
  margin-left: 0 !important;
  text-align: center;
  letter-spacing: 1px;
}

.rdv-parent-wrap .rdv-moyenne-comma{
  font-weight: 900;
  line-height: 42px;
}


/* =====================================================
   CASES / OPTIONS
===================================================== */
.rdv-parent-wrap .rdv-surplace{
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 0 14px;
}

.rdv-parent-wrap .rdv-surplace input{
  width: 16px;
  height: 16px;
}


/* =====================================================
   ÉTATS DÉSACTIVÉS
===================================================== */
.rdv-parent-wrap .rdv-parent-meta.is-disabled,
.rdv-parent-wrap .rdv-admin-slots.is-disabled{
  opacity: .55 !important;
  filter: grayscale(1) !important;
  pointer-events: none !important;
}


/* =====================================================
   MESSAGES D’AIDE / INFO SMS
===================================================== */
.rdv-parent-wrap .rdv-hint{
  margin-top: 6px;
  font-size: 14px;
  color: #666;
}

.rdv-parent-wrap .rdv-hint.rdv-sms-info,
.rdv-parent-wrap .rdv-sms-info{
  margin: 10px 0 14px !important;
  padding: 10px 12px !important;
  border-radius: 10px !important;
  background: var(--rdv-accent) !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow: visible !important;
}

.rdv-parent-wrap .rdv-sms-info a{
  color: #fff !important;
  text-decoration: underline !important;
}


/* =====================================================
   BOUTONS PRINCIPAUX DU FORMULAIRE
===================================================== */
.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"]{
  display: block !important;
  margin: 10px 0 0 0 !important;
  padding: 12px 16px !important;
  font-weight: 800 !important;
  background: var(--rdv-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
}

.rdv-parent-wrap .rdv-btn:disabled,
.rdv-parent-wrap button[type="submit"]:disabled{
  opacity: .55;
  cursor: not-allowed;
}


/* =====================================================
   LISTE DES CRÉNEAUX / SLOTS
===================================================== */
.rdv-slots-warning{
  margin: 10px 0 12px;
  padding: 10px 12px;
  border-left: 4px solid #d10000;
  background: #fff5f5;
  color: #b00000;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 600;
  animation: rdvBlink 1.6s ease-in-out infinite;
}

@keyframes rdvBlink{
  0%{ opacity: 1; }
  50%{ opacity: .45; }
  100%{ opacity: 1; }
}

.rdv-admin-slots .rdv-slot,
.rdv-slots-wrap .rdv-slot{
  display: flex !important;
  width: 100% !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 8px 10px !important;
  margin: 6px 0 !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

.rdv-admin-slots .rdv-slot input[type="radio"],
.rdv-slots-wrap .rdv-slot input[type="radio"]{
  flex: 0 0 auto !important;
  margin-top: 3px !important;
}

.rdv-admin-slots .rdv-slot-text,
.rdv-slots-wrap .rdv-slot-text{
  flex: 1 1 auto !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.3 !important;
}

.rdv-admin-slots .rdv-slot-text b,
.rdv-slots-wrap .rdv-slot-text b{
  display: inline !important;
  visibility: visible !important;
  opacity: 1 !important;
}


/* =====================================================
   MESSAGES DE RETOUR
===================================================== */
.rdv-parent-wrap .rdv-msg{
  margin: 14px 0 0;
  padding: 12px;
  border-radius: 10px;
  border: 1px solid #ddd;
  background: transparent;
  line-height: 1.45;
}

.rdv-parent-wrap .rdv-msg-ok{
  border-color: #9ad5a3;
}

.rdv-parent-wrap .rdv-msg-error{
  border-color: #f1a3a3;
}


/* =====================================================
   HISTORIQUE / TABLEAU
===================================================== */
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] h1,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] h2,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] h3{
  margin: 0 0 14px !important;
  text-align: center !important;
  width: 100% !important;
}

.rdv-parent-wrap .rdv-parent-history{
  width: 100% !important;
  max-width: 1600px !important;
  min-width: 0;
  margin: auto !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  border-top: 0 !important;
}

.rdv-parent-wrap .rdv-table{
  width: 100% !important;
  min-width: 1400px !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  margin: 0 !important;
  border: 1px solid rgba(0,0,0,.12) !important;
}

.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  padding: 8px 6px !important;
  vertical-align: top !important;
  white-space: normal !important;
  border-right: 1px solid rgba(0,0,0,.12) !important;
  border-bottom: 1px solid rgba(0,0,0,.12) !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

.rdv-parent-wrap .rdv-table th{
  font-weight: 900 !important;
  font-size: 11px !important;
  background: rgba(0,0,0,.03) !important;
}

.rdv-parent-wrap .rdv-table th:last-child,
.rdv-parent-wrap .rdv-table td:last-child{
  border-right: none !important;
  text-align: left !important;
}

.rdv-parent-wrap .rdv-table tbody tr:last-child td{
  border-bottom: none !important;
}

.rdv-parent-wrap .rdv-table tbody tr:hover,
.rdv-parent-wrap .rdv-table tbody tr:hover td{
  background: rgba(44,123,229,.10) !important;
}

.rdv-parent-wrap .rdv-table tbody tr.rdv-hrow{
  cursor: pointer !important;
}


/* =====================================================
   LARGEUR DES COLONNES DU TABLEAU
===================================================== */
.rdv-parent-wrap .rdv-table th:nth-child(1),
.rdv-parent-wrap .rdv-table td:nth-child(1){ width: 3% !important; }

.rdv-parent-wrap .rdv-table th:nth-child(2),
.rdv-parent-wrap .rdv-table td:nth-child(2){ width: 8% !important; }

.rdv-parent-wrap .rdv-table th:nth-child(3),
.rdv-parent-wrap .rdv-table td:nth-child(3){ width: 4% !important; }

.rdv-parent-wrap .rdv-table th:nth-child(4),
.rdv-parent-wrap .rdv-table td:nth-child(4){ width: 5% !important; }

.rdv-parent-wrap .rdv-table th:nth-child(5),
.rdv-parent-wrap .rdv-table td:nth-child(5){ width: 4% !important; }

.rdv-parent-wrap .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-table td:nth-child(6){ width: 2% !important; }

.rdv-parent-wrap .rdv-table th:nth-child(7),
.rdv-parent-wrap .rdv-table td:nth-child(7){ width: 10% !important; }


/* =====================================================
   COLONNE ACTIONS DANS LE TABLEAU
===================================================== */
.rdv-parent-wrap .rdv-table td:last-child{
  overflow: visible !important;
}

.rdv-parent-wrap .rdv-table td:last-child > div{
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  min-width: 0 !important;
}

.rdv-parent-wrap .rdv-table td:last-child .button,
.rdv-parent-wrap .rdv-table td:last-child a.button{
  width: auto !important;
  min-width: unset !important;
  max-width: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 2px 4px !important;
  line-height: 1.15 !important;
  font-size: 12px !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  border-radius: 6px !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: var(--rdv-blue) !important;
  font-weight: 600 !important;
}

.rdv-parent-wrap .rdv-table td:last-child .button:hover,
.rdv-parent-wrap .rdv-table td:last-child a.button:hover{
  text-decoration: underline !important;
  background: transparent !important;
}

.rdv-edit-msg{
  font-size: 12px;
  line-height: 1.35;
  white-space: normal;
}


/* =====================================================
   ACTIONS PERSONNALISÉES
===================================================== */
.rdv-actions{
  display:flex;
  align-items:center;
  gap:8px;
}

.rdv-actions .rdv-edit-slot{
  min-width:70px;
}

.rdv-actions .button:not(.rdv-edit-slot),
.rdv-no-action{
  width:160px;
  text-align:center;
}

.rdv-actions .rdv-edit-slot{
  width: auto;
}

.rdv-actions .button:not(.rdv-edit-slot),
.rdv-no-action{
  min-width: 120px;
  text-align: center;
}

.rdv-no-action{
  color: #999;
  font-weight: 600;
  display: inline-block;
}


/* =====================================================
   MODAL DÉTAILS PARENT
===================================================== */
#rdv-parent-card{
  display: none;
  position: fixed;
  inset: 0;
  z-index: 999999;
  background: rgba(0,0,0,.45) !important;
}

#rdv-parent-card.is-open{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  box-sizing: border-box;
}

#rdv-parent-card .rdv-modal-backdrop{
  position: absolute !important;
  inset: 0 !important;
  background: transparent !important;
}

#rdv-parent-card .rdv-modal-card{
  position: relative !important;
  z-index: 1 !important;
  width: min(560px, calc(100% - 24px)) !important;
  max-height: calc(100vh - 40px) !important;
  background: #fff !important;
  border: 1px solid #ddd !important;
  border-radius: 0 !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.18) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}

#rdv-parent-card .rdv-modal-head{
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 12px 14px !important;
  border-bottom: 1px solid #eee !important;
  background: #fff !important;
  color: #111 !important;
}

#rdv-parent-card .rdv-modal-title{
  font-size: 15px !important;
  font-weight: 700 !important;
}

#rdv-parent-card .rdv-modal-body{
  flex: 1 1 auto !important;
  padding: 10px 14px !important;
  overflow: auto !important;
}

#rdv-parent-card .rdv-modal-foot{
  flex: 0 0 auto !important;
  display: flex !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  padding: 10px 14px !important;
  border-top: 1px solid #eee !important;
  background: #fafafa !important;
}

#rdv-parent-card table.rdv-kv{
  width: 100% !important;
  border-collapse: collapse !important;
}

#rdv-parent-card table.rdv-kv td{
  padding: 6px 0 !important;
  vertical-align: top !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width: 220px !important;
  padding-right: 28px !important;
  color: #333 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

#rdv-parent-card table.rdv-kv td:last-child{
  padding-left: 6px !important;
  font-weight: 700 !important;
  color: #111 !important;
}


/* =====================================================
   MODAL DE MODIFICATION DE CRÉNEAU
===================================================== */
#rdv-slot-modal{
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
}

#rdv-slot-modal.is-open{
  display: block;
}

#rdv-slot-modal .rdv-modal-backdrop{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
}

#rdv-slot-modal .rdv-modal-card{
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(520px, calc(100% - 24px));
  max-height: calc(100vh - 40px);
  overflow: auto;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 14px 40px rgba(0,0,0,.25);
}

#rdv-slot-modal .rdv-modal-head{
  background: var(--rdv-blue);
  color: #fff;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

#rdv-slot-modal .rdv-modal-body{
  padding: 14px;
}

#rdv-slot-modal .rdv-modal-row{
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 10px;
  align-items: center;
}

#rdv-slot-modal .rdv-modal-label{
  font-weight: 900;
  color: #111;
}

#rdv-slot-modal .rdv-modal-foot{
  padding: 12px 14px;
  border-top: 1px solid #e6e6e6;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}


/* =====================================================
   RESPONSIVE TABLETTE
===================================================== */
@media (max-width: 980px){
  .rdv-parent-wrap .rdv-tabs-nav{
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  .rdv-parent-wrap .rdv-tab-btn{
    white-space: normal !important;
  }

  .rdv-parent-wrap .rdv-tabs-content{
    margin-top: 8px !important;
  }
}


/* =====================================================
   RESPONSIVE MOBILE
===================================================== */
@media (max-width: 768px){
  .rdv-parent-wrap{
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 10px !important;
  }

  .rdv-parent-wrap .rdv-tabs-nav{
    flex-direction: column !important;
    gap: 8px !important;
  }

  .rdv-parent-wrap .rdv-tab-btn{
    width: 100% !important;
    font-size: 12px !important;
    padding: 8px 10px !important;
  }

  .rdv-parent-wrap .rdv-mobile-field,
  .rdv-parent-wrap .rdv-parent-meta,
  .rdv-parent-wrap .rdv-slots-title,
  .rdv-parent-wrap .rdv-surplace,
  .rdv-parent-wrap .rdv-hint,
  .rdv-parent-wrap .rdv-admin-slots,
  .rdv-parent-wrap .rdv-slots-wrap,
  .rdv-parent-wrap .rdv-btn,
  .rdv-parent-wrap button[type="submit"]{
    width: 100% !important;
    max-width: 100% !important;
  }

  .rdv-parent-wrap input[type="text"],
  .rdv-parent-wrap select{
    width: 100% !important;
    max-width: 100% !important;
    font-size: 14px !important;
    height: 38px !important;
    line-height: 38px !important;
  }

  .rdv-parent-wrap .rdv-mobile-row{
    width: 100% !important;
    max-width: 100% !important;
  }

  .rdv-parent-wrap #rdv-mobile8{
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .rdv-parent-wrap .rdv-table{
    min-width: 760px !important;
  }

  #rdv-parent-card.is-open{
    padding: 14px !important;
  }

  #rdv-parent-card .rdv-modal-card{
    width: calc(100% - 24px) !important;
    max-height: calc(100vh - 24px) !important;
  }

  #rdv-parent-card .rdv-modal-head{
    padding: 8px 10px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    padding: 8px 10px !important;
  }

  #rdv-parent-card table.rdv-kv td{
    padding: 5px 0 !important;
    font-size: 12px !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    width: 110px !important;
    font-size: 11px !important;
    white-space: normal !important;
    padding-right: 16px !important;
  }

  #rdv-slot-modal .rdv-modal-row{
    grid-template-columns: 1fr;
  }
}

.rdv-parent-meta{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.rdv-actions-col{
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:flex-start;
  min-width:160px;
}

.rdv-action-line{
  min-height:32px;
  display:flex;
  align-items:center;
}

.rdv-action-placeholder{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  color:#999;
}


/* =====================================================
   RÉDUCTION GLOBALE DU MODULE
===================================================== */
.rdv-parent-wrap{
  font-size: 13px !important;
}

.rdv-parent-wrap input[type="text"],
.rdv-parent-wrap select{
  font-size: 14px !important;
  height: 36px !important;
  line-height: 36px !important;
}

.rdv-parent-wrap .rdv-tab-btn{
  font-size: 11.5px !important;
  padding: 5px 10px !important;
}

.rdv-parent-wrap .rdv-slot-text{
  font-size: 14px !important;
}

.rdv-parent-wrap .rdv-hint,
.rdv-parent-wrap .rdv-msg{
  font-size: 13px !important;
}

.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"]{
  font-size: 14px !important;
  padding: 10px 14px !important;
}

.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  font-size: 11px !important;
}

.rdv-parent-wrap .rdv-slots-title,
.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text{
  font-size: 13px !important;
}


/* =====================================================
   PRESENCE — VERSION FINALE PROPRE
===================================================== */
.rdv-parent-wrap .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-table td:nth-child(6){
  width: 5% !important;
  text-align: center !important;
  vertical-align: middle !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6){
  overflow: visible !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select{
  display: block !important;
  width: 120px !important;
  min-width: 120px !important;
  max-width: 120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  height: auto !important;
  line-height: normal !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--rdv-blue) !important;
  text-align: center !important;
  background: transparent !important;
  border: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image: none !important;
  cursor: pointer !important;
}
.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select:focus{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  text-decoration: underline !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select:focus{
  border-color: #999 !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-view{
  display: inline-block !important;
  margin: 0 auto !important;
  padding: 0 !important;
  font-weight: 700 !important;
  text-align: center !important;
  background: transparent !important;
  border: none !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-present{
  color: #1f7a1f !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-absent{
  color: #c62828 !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-cancelled{
  color: #c79a00 !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-none{
  color: #666 !important;
}
/* Couleur du select selon la présence */
.rdv-presence-select.present{
  color:#1f7a1f !important;
  font-weight:700 !important;
}

.rdv-presence-select.absent{
  color:#c62828 !important;
  font-weight:700 !important;
}

.rdv-presence-select.cancelled{
  color:#c79a00 !important;
  font-weight:700 !important;
}

.rdv-presence-select.none{
  color:#666 !important;
}
/* =====================================================
   PRESENCE — COULEUR FINALE
===================================================== */
.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select.present{
  color: #1f7a1f !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select.absent{
  color: #c62828 !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select.cancelled{
  color: #c79a00 !important;
}

.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select.none{
  color: #666 !important;
}
#rdv-history-filter::placeholder{
color:#ffffff;
opacity:1;
}

#rdv-history-filter::-webkit-input-placeholder{
color:#ffffff;
}

#rdv-history-filter::-moz-placeholder{
color:#ffffff;
}

#rdv-history-filter:-ms-input-placeholder{
color:#ffffff;
}
#rdv-history-filter-col{
color:#ffffff;
background:#0F2954;
}
/* correction alignement texte date */
.rdv-filter-date{
height:34px !important;
padding-top:4px !important;
padding-bottom:0 !important;
line-height:1 !important;
}.rdv-filter-date::-webkit-datetime-edit{
padding-top:2px !important;
}
#rdv-history-reset{
background:#0F2954;
color:#ffffff;
border:1px solid #0F2954;
border-radius:6px;
font-weight:700;
font-size:14px;
line-height:1;
min-height:38px;
padding:0 18px;
display:inline-flex;
align-items:center;
justify-content:center;
cursor:pointer;
box-sizing:border-box;
transition:all .2s ease;
}

#rdv-history-reset:hover,
#rdv-history-reset:focus{
background:#12356b;
border-color:#12356b;
color:#ffffff;
outline:none;
box-shadow:none;
}
#rdv-history-reset{
min-height:38px;
padding:0 18px;
display:inline-flex;
align-items:center;
justify-content:center;
}
#rdv-history-reset{
background:#0F2954;
color:#ffffff;
border:1px solid #0F2954;
border-radius:6px;
font-weight:700;
font-size:14px;
min-height:38px;
padding:0 18px;
display:inline-flex;
align-items:center;
justify-content:center;
cursor:pointer;
box-sizing:border-box;
}

/* garder exactement le même style au survol */
#rdv-history-reset:hover,
#rdv-history-reset:focus,
#rdv-history-reset:active{
background:#0F2954;
border-color:#0F2954;
color:#ffffff;
box-shadow:none;
outline:none;
}
#rdv-history-reset,
#rdv-history-reset:hover,
#rdv-history-reset:focus,
#rdv-history-reset:active{
background:#0F2954 !important;
color:#ffffff !important;
border:1px solid #0F2954 !important;
box-shadow:none !important;
outline:none !important;
}
#rdv-history-filter-col{
background:#0F2954;
color:#ffffff;
}

/* couleur du texte dans la liste */
#rdv-history-filter-col option{
color:#0F2954;
background:#ffffff;
}
.rdv-filter-date{
background:transparent !important;
color:#0F2954;
border:1px solid #d0d7de;
}
/* correction alignement texte date */
.rdv-filter-date{
height:34px !important;
padding-top:4px !important;
padding-bottom:0 !important;
line-height:1 !important;
}
.rdv-filter-date::-webkit-datetime-edit{
padding-top:5px !important;
}
/* champs date sans cadre */
.rdv-filter-date{
border:none !important;
background:transparent !important;
box-shadow:none !important;
outline:none !important;
padding:0 6px !important;
color:#0F2954;
font-weight:600;
}
.rdv-filter-date:focus{
border:none !important;
outline:none !important;
box-shadow:none !important;
}
/* correction alignement visuel date */
.rdv-filter-date{
height:34px !important;
line-height:34px !important;
padding:0 6px !important;
border:none !important;
background:transparent !important;
position:relative;
top:10px;   /* ajuste la descente du texte */
}
#rdv-history-reset{
background:#0F2954;
color:#ffffff;
border:1px solid #0F2954;
border-radius:6px;

height:28px;          /* plus petit */
padding:0 5px;       /* réduit le fond */
font-size:5px;

display:inline-flex;
align-items:center;
justify-content:center;

line-height:1;
}
#rdv-history-reset{
position:relative;
top:5px;   /* descend le bouton */
}
#rdv-history-count{
position:relative;
top:7px;      /* descend le texte */
}
#rdv-history-reset{
height:18px;          /* réduit la hauteur du fond */
padding:0 12px;       /* réduit l'espace vertical */
font-size:13px;

display:inline-flex;
align-items:center;
justify-content:center;

background:#0F2954;
color:#ffffff;
border:1px solid #0F2954;
border-radius:6px;
line-height:1;
}
#rdv-history-reset{
background:#0F2954;
color:#ffffff;
border:1px solid #0F2954;
border-radius:6px;

padding:2px 8px;   /* espace minimal autour du texte */

height:auto !important;
line-height:1;

display:inline-block;
font-size:13px;
font-weight:700;
}
#rdv-history-reset{
background:#0F2954;
color:#ffffff;
border:1px solid #0F2954;
border-radius:6px;

padding:2px 6px;
margin:0;

height:auto;
min-height:auto;
line-height:1;

display:inline-block;
font-size:13px;
font-weight:700;

cursor:pointer;
}
/* =========================
   TOOLBAR FILTRE HISTORIQUE
========================= */
.rdv-table-tools-advanced {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

/* Champ recherche */
.rdv-history-filter-dynamic input {
  min-width: 260px;
}

/* Champs date */
#rdv-history-global-date-from,
#rdv-history-global-date-to {
  min-width: 140px;
  height: 32px;
}

/* Reset bouton */
#rdv-history-reset {
  height: 32px;
}

/* Compteur */
#rdv-history-count {
  margin-left: 5px;
  white-space: nowrap;
}

/* Responsive (petit écran) */
@media (max-width: 768px) {
  .rdv-table-tools-advanced {
    flex-wrap: wrap;
  }

  .rdv-history-filter-dynamic input {
    width: 100%;
    min-width: 100%;
  }

  #rdv-history-global-date-from,
  #rdv-history-global-date-to {
    width: 48%;
  }
}
.rdv-table-tools-advanced {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
.rdv-table-tools-advanced select,
.rdv-table-tools-advanced input,
.rdv-table-tools-advanced button {
  height: 32px;
}
/* Empêcher les éléments de partir à droite */
.rdv-table-tools-advanced {
  justify-content: flex-start !important;
}

/* IMPORTANT : enlever tout auto qui pousse à droite */
.rdv-table-tools-advanced * {
  margin-left: 0 !important;
}

/* Groupe date + reset bien collé à la recherche */
#rdv-history-global-date-from,
#rdv-history-global-date-to,
#rdv-history-reset {
  margin-left: 5px;
}

/* Option : espace propre */
.rdv-table-tools-advanced {
  gap: 8px;
}
.rdv-history-global-date-wrap {
  margin-left: 0 !important;
}
.rdv-slot-text b:first-child {
  display:inline-block;
  width:28px;
  color:#0073aa;
}
.rdv-slot-index{
  display:inline-block;
  width:28px;
  font-weight:700;
  color:inherit;
}
.rdv-slot-index{
  color:inherit;
}
.rdv-slots-title{
  margin-bottom: 12px;
}

.rdv-hint{
  margin-top: 0;
}
#rdv-modal-eleve-full{
  width: 100%;
  max-width: 360px;
}

#rdv-save-eleve-msg{
  min-height: 18px;
}

.rdv-edit-inline{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
/* =====================================================
   STYLE FINAL — PAGE WEB RDV PARENTS
   Harmonisation visuelle avec Gestion des congés
   Admin WordPress : réglages simples par défaut
===================================================== */
.rdv-parent-wrap{
  --rdv-blue:#0F2954;
  --rdv-orange:#FF8C00;
  --rdv-border:#dcdcde;
  --rdv-soft:#f6f7f7;
  --rdv-cream:#fff7ed;
  max-width:1200px!important;
  margin:24px auto!important;
  padding:0 14px!important;
  color:#0F2954!important;
  font-family:inherit!important;
}
.rdv-parent-wrap .rdv-tabs,
.rdv-parent-wrap .rdv-parent-form,
.rdv-parent-wrap .rdv-parent-history{
  background:#fff!important;
  border:1px solid var(--rdv-border)!important;
  border-radius:10px!important;
  box-shadow:0 1px 2px rgba(0,0,0,.04)!important;
}
.rdv-parent-wrap .rdv-tabs{padding:16px!important;}
.rdv-parent-wrap .rdv-tabs-nav{
  justify-content:flex-start!important;
  gap:8px!important;
  margin:0 0 16px!important;
  border-bottom:1px solid var(--rdv-border)!important;
}
.rdv-parent-wrap .rdv-tab-btn{
  border:1px solid var(--rdv-border)!important;
  border-bottom:none!important;
  background:#f6f7f7!important;
  color:var(--rdv-blue)!important;
  border-radius:6px 6px 0 0!important;
  padding:12px 18px!important;
  font-size:14px!important;
  font-weight:700!important;
}
.rdv-parent-wrap .rdv-tab-btn.is-active,
.rdv-parent-wrap .rdv-tab-btn:hover{
  background:var(--rdv-blue)!important;
  color:#fff!important;
  border-color:var(--rdv-blue)!important;
  box-shadow:inset 0 -3px 0 var(--rdv-orange)!important;
}
.rdv-parent-wrap form.rdv-parent-form{
  padding:18px!important;
  gap:14px!important;
}
.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text,
.rdv-parent-wrap .rdv-slots-title{
  background:var(--rdv-blue)!important;
  color:#fff!important;
  border-left:4px solid var(--rdv-orange)!important;
  border-radius:4px!important;
  padding:7px 10px!important;
}
.rdv-parent-wrap input[type="text"],
.rdv-parent-wrap input[type="number"],
.rdv-parent-wrap input[type="tel"],
.rdv-parent-wrap input[type="email"],
.rdv-parent-wrap select,
.rdv-parent-wrap textarea{
  background:#fff!important;
  border:1px solid #8c8f94!important;
  border-radius:4px!important;
  height:40px!important;
  line-height:normal!important;
  padding:6px 10px!important;
  box-shadow:none!important;
  color:#1d2327!important;
}
.rdv-parent-wrap textarea{height:auto!important;min-height:80px!important;}
.rdv-parent-wrap input:focus,
.rdv-parent-wrap select:focus,
.rdv-parent-wrap textarea:focus{
  border-color:#2271b1!important;
  box-shadow:0 0 0 1px #2271b1!important;
  outline:2px solid transparent!important;
}
.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"],
.rdv-parent-wrap .button.button-primary{
  background:var(--rdv-orange)!important;
  border:1px solid var(--rdv-orange)!important;
  color:#fff!important;
  border-radius:5px!important;
  font-weight:700!important;
  min-height:40px!important;
  padding:9px 18px!important;
  box-shadow:none!important;
}
.rdv-parent-wrap .rdv-btn:hover,
.rdv-parent-wrap button[type="submit"]:hover,
.rdv-parent-wrap .button.button-primary:hover{
  filter:brightness(.96)!important;
}
.rdv-parent-wrap .rdv-sms-info,
.rdv-parent-wrap .rdv-hint.rdv-sms-info{
  background:#eaf2ff!important;
  color:var(--rdv-blue)!important;
  border-left:4px solid #2271b1!important;
  border-radius:4px!important;
}
.rdv-parent-wrap .rdv-msg{
  background:#fff!important;
  border-radius:4px!important;
  border-left:4px solid var(--rdv-blue)!important;
}
.rdv-parent-wrap .rdv-msg-ok{border-left-color:#16823a!important;}
.rdv-parent-wrap .rdv-msg-error{border-left-color:#b00020!important;}
.rdv-parent-wrap .rdv-parent-history{
  padding:16px!important;
  overflow-x:auto!important;
}
.rdv-parent-wrap .rdv-table{
  min-width:1000px!important;
  border-collapse:collapse!important;
  border:1px solid var(--rdv-border)!important;
}
.rdv-parent-wrap .rdv-table th{
  background:var(--rdv-blue)!important;
  color:#fff!important;
  font-weight:700!important;
  border-color:#24446f!important;
}
.rdv-parent-wrap .rdv-table td{
  background:#fff!important;
  border-color:var(--rdv-border)!important;
}
.rdv-parent-wrap .rdv-table tbody tr:hover td{
  background:#fff7ed!important;
}
#rdv-parent-card .rdv-modal-backdrop,
.rdv-modal-backdrop{
  position:fixed!important;
  inset:0!important;
  background:rgba(0,0,0,.45)!important;
  z-index:99998!important;
}
#rdv-parent-card .rdv-modal-card,
.rdv-modal-card{
  position:fixed!important;
  top:50%!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(620px,calc(100vw - 26px))!important;
  max-height:88vh!important;
  overflow:auto!important;
  background:var(--rdv-cream)!important;
  border:2px solid var(--rdv-blue)!important;
  border-radius:12px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.28)!important;
  z-index:99999!important;
}
#rdv-parent-card .rdv-modal-head,
.rdv-modal-head{
  background:var(--rdv-blue)!important;
  color:#fff!important;
  padding:14px 16px!important;
  border-bottom:3px solid var(--rdv-orange)!important;
}
#rdv-parent-card .rdv-modal-title,
.rdv-modal-title{color:#fff!important;font-weight:800!important;}
#rdv-parent-card .rdv-modal-close,
.rdv-modal-close{
  background:var(--rdv-orange)!important;
  color:#fff!important;
  border:none!important;
  text-decoration:none!important;
}
#rdv-parent-card .rdv-modal-body,
.rdv-modal-body{padding:16px!important;}
.rdv-parent-wrap .rdv-kv,
.rdv-kv{width:100%!important;border-collapse:separate!important;border-spacing:0 6px!important;}
.rdv-parent-wrap .rdv-kv td,
.rdv-kv td{background:#fff!important;border:1px solid #f0b45f!important;padding:8px 10px!important;}
.rdv-parent-wrap .rdv-kv td:first-child,
.rdv-kv td:first-child{font-weight:700!important;color:var(--rdv-blue)!important;width:34%!important;}
@media (max-width:782px){
  .rdv-parent-wrap{padding:0 8px!important;margin:14px auto!important;}
  .rdv-parent-wrap .rdv-tabs{padding:10px!important;}
  .rdv-parent-wrap .rdv-tabs-nav{overflow-x:auto!important;flex-wrap:nowrap!important;}
  .rdv-parent-wrap .rdv-tab-btn{white-space:nowrap!important;font-size:13px!important;padding:10px 12px!important;}
  .rdv-parent-wrap form.rdv-parent-form{padding:12px!important;}
  .rdv-parent-wrap input[type="text"],
  .rdv-parent-wrap select{width:100%!important;}
  .rdv-parent-wrap .rdv-mobile-row{width:100%!important;}
  .rdv-parent-wrap .rdv-table{min-width:760px!important;}
}

/* =====================================================
   CORRECTIF VALIDÉ — MODALS SIMPLES + UN SEUL CADRE PAR ONGLET
   - Menu WP : réglages simples
   - Page web : un cadre global sous les onglets
   - Pas de double encadrement formulaire / historique
   - Modals plates, rectangulaires, style très simple
===================================================== */
.rdv-parent-wrap{
  max-width: 1240px !important;
}

/* Un seul cadre : le cadre principal du module */
.rdv-parent-wrap .rdv-tabs{
  background:#fff !important;
  border:1px solid #c3c4c7 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:16px !important;
}

/* Suppression des cadres internes dans chaque onglet */
.rdv-parent-wrap form.rdv-parent-form,
.rdv-parent-wrap .rdv-parent-history{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}

.rdv-parent-wrap .rdv-tabs-content{
  padding:18px 0 0 !important;
  margin:0 !important;
  border:0 !important;
}

.rdv-parent-wrap .rdv-tab-panel{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
}

/* Onglets rectangulaires */
.rdv-parent-wrap .rdv-tabs-nav{
  border-bottom:1px solid #c3c4c7 !important;
  margin:0 0 0 !important;
  padding:0 !important;
  gap:0 !important;
}

.rdv-parent-wrap .rdv-tab-btn{
  border-radius:0 !important;
  margin:0 4px 0 0 !important;
  box-shadow:none !important;
}

/* Rectangulaire partout pour les cadres visibles */
.rdv-parent-wrap input[type="text"],
.rdv-parent-wrap input[type="number"],
.rdv-parent-wrap input[type="tel"],
.rdv-parent-wrap input[type="email"],
.rdv-parent-wrap input[type="date"],
.rdv-parent-wrap select,
.rdv-parent-wrap textarea,
.rdv-parent-wrap .rdv-msg,
.rdv-parent-wrap .rdv-sms-info,
.rdv-parent-wrap .rdv-hint.rdv-sms-info,
.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap .button,
.rdv-parent-wrap button,
.rdv-parent-wrap .rdv-slots-title,
.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text{
  border-radius:0 !important;
}

/* Les lignes de créneaux restent simples, sans gros cadre arrondi */
.rdv-admin-slots .rdv-slot,
.rdv-slots-wrap .rdv-slot{
  border:0 !important;
  border-bottom:1px solid #e5e5e5 !important;
  border-radius:0 !important;
  padding:7px 0 !important;
  margin:0 !important;
  background:transparent !important;
}

/* Tableau simple et rectangulaire */
.rdv-parent-wrap .rdv-table{
  border:1px solid #8c8f94 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  border-color:#c3c4c7 !important;
}

/* Modal détails parent : très simple, comme l’exemple fourni */
#rdv-parent-card{
  background:rgba(0,0,0,.25) !important;
}

#rdv-parent-card .rdv-modal-card,
.rdv-modal-card{
  width:min(520px, calc(100vw - 28px)) !important;
  max-height:calc(100vh - 50px) !important;
  background:#fff !important;
  border:1px solid #c3c4c7 !important;
  border-radius:0 !important;
  box-shadow:0 8px 24px rgba(0,0,0,.18) !important;
  overflow:hidden !important;
}

#rdv-parent-card .rdv-modal-head,
.rdv-modal-head{
  background:#fff !important;
  color:#1d2327 !important;
  padding:12px 14px 8px !important;
  border-bottom:1px solid #dcdcde !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
}

#rdv-parent-card .rdv-modal-title,
.rdv-modal-title{
  color:#1d2327 !important;
  font-size:14px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
}

#rdv-parent-card .rdv-card-close,
#rdv-parent-card [data-close="1"].button,
.rdv-modal-close,
.rdv-card-close{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#1d2327 !important;
  min-height:auto !important;
  padding:0 4px !important;
  font-size:18px !important;
  line-height:1 !important;
}

#rdv-parent-card .rdv-modal-body,
.rdv-modal-body{
  background:#fff !important;
  padding:10px 14px !important;
  overflow:auto !important;
}

#rdv-parent-card .rdv-modal-foot,
.rdv-modal-foot{
  background:#fff !important;
  border-top:1px solid #dcdcde !important;
  padding:10px 14px !important;
  display:flex !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

/* Tableau clé/valeur dans la modal : lignes simples */
#rdv-parent-card table.rdv-kv,
.rdv-kv{
  width:100% !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
}

#rdv-parent-card table.rdv-kv td,
.rdv-kv td{
  background:#fff !important;
  border:0 !important;
  border-bottom:1px solid #eeeeee !important;
  padding:7px 0 !important;
  font-size:13px !important;
  line-height:1.25 !important;
}

#rdv-parent-card table.rdv-kv td:first-child,
.rdv-kv td:first-child{
  width:38% !important;
  color:#646970 !important;
  font-weight:400 !important;
  padding-right:18px !important;
  white-space:nowrap !important;
}

#rdv-parent-card table.rdv-kv td:last-child,
.rdv-kv td:last-child{
  color:#1d2327 !important;
  font-weight:700 !important;
  padding-left:0 !important;
}

/* Modal modification créneau : même style simple */
#rdv-slot-modal .rdv-modal-card{
  width:min(520px, calc(100vw - 28px)) !important;
  background:#fff !important;
  border:1px solid #c3c4c7 !important;
  border-radius:0 !important;
  box-shadow:0 8px 24px rgba(0,0,0,.18) !important;
}

#rdv-slot-modal .rdv-modal-head{
  background:#fff !important;
  color:#1d2327 !important;
  border-bottom:1px solid #dcdcde !important;
  padding:12px 14px !important;
}

#rdv-slot-modal .rdv-modal-body{
  padding:14px !important;
}

#rdv-slot-modal .rdv-modal-foot{
  background:#fff !important;
  border-top:1px solid #dcdcde !important;
  padding:10px 14px !important;
}

@media (max-width:782px){
  .rdv-parent-wrap .rdv-tabs{padding:10px !important;}
  .rdv-parent-wrap .rdv-tabs-content{padding-top:14px !important;}
  #rdv-parent-card table.rdv-kv td,
  .rdv-kv td{display:block !important;width:100% !important;padding:5px 0 !important;}
  #rdv-parent-card table.rdv-kv td:first-child,
  .rdv-kv td:first-child{border-bottom:0 !important;padding-bottom:0 !important;}
}

/* =====================================================
   v1.5.11 — Champs soulignés + réglages affichage
   Objectif : ne pas perdre le rendu validé, mais retirer les cadres des champs.
===================================================== */
.rdv-parent-wrap{
  max-width: var(--rdv-max-width, 1800px) !important;
  background: var(--rdv-plugin-bg, transparent) !important;
  font-size: var(--rdv-text-size, 16px) !important;
}
.rdv-parent-wrap.rdv-align-left .rdv-tabs-content{ text-align:left !important; }
.rdv-parent-wrap.rdv-align-center .rdv-tabs-content{ text-align:center !important; }
.rdv-parent-wrap.rdv-align-right .rdv-tabs-content{ text-align:right !important; }
.rdv-parent-wrap.rdv-align-center .rdv-parent-form,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-center .rdv-parent-history{ margin-left:auto !important; margin-right:auto !important; }
.rdv-parent-wrap.rdv-align-right .rdv-parent-form,
.rdv-parent-wrap.rdv-align-right .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-right .rdv-parent-history{ margin-left:auto !important; margin-right:0 !important; }

/* Tous les champs de saisie du formulaire : soulignés uniquement */
.rdv-parent-wrap input[type="text"],
.rdv-parent-wrap input[type="tel"],
.rdv-parent-wrap input[type="number"],
.rdv-parent-wrap input[type="date"],
.rdv-parent-wrap input[type="email"],
.rdv-parent-wrap input[type="file"],
.rdv-parent-wrap select,
.rdv-parent-wrap textarea{
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid #111 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 4px !important;
  min-height: 38px !important;
  color: #111 !important;
}
.rdv-parent-wrap textarea{
  min-height: 70px !important;
  padding-top: 8px !important;
  resize: vertical;
}
.rdv-parent-wrap input:focus,
.rdv-parent-wrap select:focus,
.rdv-parent-wrap textarea:focus{
  border-bottom: 3px solid #0F2954 !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Champ mobile : indicatif pays visuel avec drapeau + vrai champ mobile */
.rdv-parent-wrap .rdv-mobile-row{
  display:flex !important;
  align-items:flex-end !important;
  gap:8px !important;
  width:min(var(--rdv-form-width, 560px), 100%) !important;
  max-width:100% !important;
}
.rdv-parent-wrap .rdv-country-code{
  flex:0 0 118px !important;
  width:118px !important;
  min-width:118px !important;
  height:38px !important;
  font-weight:700 !important;
  color:#0F2954 !important;
}
.rdv-parent-wrap #rdv-mobile8{
  flex:1 1 auto !important;
  width:180px !important;
  max-width:260px !important;
  letter-spacing:.5px !important;
}
.rdv-parent-wrap #rdv-mobile8::placeholder{
  color:#777 !important;
  opacity:1 !important;
  letter-spacing:0 !important;
}

/* Moyenne : exactement sous la forme __,__ sans cadre */
.rdv-parent-wrap .rdv-moyenne-wrap{
  display:inline-flex !important;
  align-items:flex-end !important;
  gap:2px !important;
  width:auto !important;
}
.rdv-parent-wrap .rdv-moyenne-wrap input{
  width:36px !important;
  max-width:36px !important;
  min-height:32px !important;
  height:32px !important;
  border:none !important;
  border-bottom:2px solid #111 !important;
  padding:0 !important;
  text-align:center !important;
  background:transparent !important;
  letter-spacing:1px !important;
}
.rdv-parent-wrap .rdv-moyenne-wrap input::placeholder{ color:#999 !important; opacity:1 !important; }
.rdv-parent-wrap .rdv-moyenne-comma{
  font-weight:900 !important;
  color:#111 !important;
  line-height:32px !important;
  padding:0 1px !important;
}

/* Filtres historique : champs soulignés, sans cadres */
.rdv-parent-wrap .rdv-table-tools select,
.rdv-parent-wrap .rdv-table-tools input[type="text"],
.rdv-parent-wrap .rdv-table-tools input[type="date"]{
  background:transparent !important;
  color:#0F2954 !important;
  border:none !important;
  border-bottom:2px solid #0F2954 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  min-height:34px !important;
  padding:0 4px !important;
  font-weight:600 !important;
}
.rdv-parent-wrap .rdv-table-tools select option{ color:#0F2954 !important; background:#fff !important; }
#rdv-history-filter::placeholder{ color:#777 !important; opacity:1 !important; }
#rdv-history-filter::-webkit-input-placeholder{ color:#777 !important; }
#rdv-history-filter::-moz-placeholder{ color:#777 !important; }

/* Textes réglables */
.rdv-parent-wrap .rdv-table,
.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  font-size: var(--rdv-table-text-size, 12px) !important;
}
#rdv-parent-card .rdv-modal-card{
  width: min(var(--rdv-modal-width, 520px), calc(100vw - 32px)) !important;
  font-size: var(--rdv-modal-text-size, 14px) !important;
}
#rdv-parent-card .rdv-modal-body,
#rdv-parent-card .rdv-kv,
#rdv-parent-card .rdv-kv td{
  font-size: var(--rdv-modal-text-size, 14px) !important;
}

/* Champs personnalisés */
.rdv-parent-wrap .rdv-custom-options{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  padding-top:6px !important;
}
.rdv-parent-wrap .rdv-custom-options label{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  margin:0 !important;
}

/* =====================================================
   v1.5.12 — Onglets centrés, sans cadrage extérieur,
   bouton Envoyer ajusté
===================================================== */

/* Centrer les deux onglets principaux */
.rdv-parent-wrap .rdv-tabs-nav{
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  width: 100% !important;
  gap: 12px !important;
}
.rdv-parent-wrap .rdv-tab-btn{
  text-align: center !important;
  justify-content: center !important;
}

/* Supprimer les cadrages extérieurs dans les deux onglets */
.rdv-parent-wrap,
.rdv-parent-wrap .rdv-tabs,
.rdv-parent-wrap .rdv-tabs-content,
.rdv-parent-wrap .rdv-tab-panel,
.rdv-parent-wrap .rdv-parent-form,
.rdv-parent-wrap .rdv-parent-meta,
.rdv-parent-wrap .rdv-parent-history,
.rdv-parent-wrap .rdv-admin-slots,
.rdv-parent-wrap .rdv-slots-wrap{
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Retirer aussi les bordures des cadres internes génériques éventuels */
.rdv-parent-wrap .rdv-card,
.rdv-parent-wrap .rdv-box,
.rdv-parent-wrap .rdv-panel,
.rdv-parent-wrap .rdv-section,
.rdv-parent-wrap .rdv-form-card,
.rdv-parent-wrap .rdv-history-card,
.rdv-parent-wrap fieldset{
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Garder seulement le tableau lui-même lisible, sans cadre extérieur de l'onglet */
.rdv-parent-wrap .rdv-parent-history{
  padding: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Bouton Envoyer : largeur adaptée au texte, remplissage équilibré */
.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"],
.rdv-parent-wrap input[type="submit"]{
  width: auto !important;
  min-width: 150px !important;
  max-width: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 9px 22px !important;
  line-height: 1.2 !important;
  min-height: 38px !important;
  height: auto !important;
  border-radius: 4px !important;
  white-space: nowrap !important;
  text-align: center !important;
}

/* Alignement propre du bouton avec le formulaire */
.rdv-parent-wrap form.rdv-parent-form .rdv-btn,
.rdv-parent-wrap form.rdv-parent-form button[type="submit"],
.rdv-parent-wrap form.rdv-parent-form input[type="submit"]{
  margin-top: 12px !important;
  margin-left: 0 !important;
}

/* =====================================================
   v1.5.13 — Alignement global sous les onglets
   Le réglage d'alignement agit sur tout le contenu :
   mobile, SMS, infos, sections élève, champs, créneaux, messages et historique.
===================================================== */
.rdv-parent-wrap.rdv-align-left .rdv-tabs-content,
.rdv-parent-wrap.rdv-align-left .rdv-tab-panel,
.rdv-parent-wrap.rdv-align-left .rdv-parent-form,
.rdv-parent-wrap.rdv-align-left .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-left .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-left .rdv-surplace,
.rdv-parent-wrap.rdv-align-left .rdv-hint,
.rdv-parent-wrap.rdv-align-left .rdv-sms-info,
.rdv-parent-wrap.rdv-align-left .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-left .rdv-admin-slots,
.rdv-parent-wrap.rdv-align-left .rdv-parent-history{
  text-align:left !important;
}
.rdv-parent-wrap.rdv-align-left .rdv-parent-form,
.rdv-parent-wrap.rdv-align-left .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-left .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-left .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-left .rdv-admin-slots{
  margin-left:0 !important;
  margin-right:auto !important;
  align-items:flex-start !important;
}
.rdv-parent-wrap.rdv-align-left .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-left .rdv-moyenne-wrap,
.rdv-parent-wrap.rdv-align-left .rdv-surplace{
  justify-content:flex-start !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-tabs-content,
.rdv-parent-wrap.rdv-align-center .rdv-tab-panel,
.rdv-parent-wrap.rdv-align-center .rdv-parent-form,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-center .rdv-surplace,
.rdv-parent-wrap.rdv-align-center .rdv-hint,
.rdv-parent-wrap.rdv-align-center .rdv-sms-info,
.rdv-parent-wrap.rdv-align-center .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-admin-slots,
.rdv-parent-wrap.rdv-align-center .rdv-parent-history{
  text-align:center !important;
}
.rdv-parent-wrap.rdv-align-center .rdv-parent-form,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-center .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-admin-slots,
.rdv-parent-wrap.rdv-align-center .rdv-hint,
.rdv-parent-wrap.rdv-align-center .rdv-sms-info{
  margin-left:auto !important;
  margin-right:auto !important;
  align-items:center !important;
}
.rdv-parent-wrap.rdv-align-center .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-center .rdv-moyenne-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-surplace,
.rdv-parent-wrap.rdv-align-center .rdv-slots-loadmore-wrap{
  justify-content:center !important;
}
.rdv-parent-wrap.rdv-align-center label.rdv-slot.rdv-field,
.rdv-parent-wrap.rdv-align-center .rdv-field,
.rdv-parent-wrap.rdv-align-center .rdv-slot,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-center input,
.rdv-parent-wrap.rdv-align-center select,
.rdv-parent-wrap.rdv-align-center textarea{
  margin-left:auto !important;
  margin-right:auto !important;
}
.rdv-parent-wrap.rdv-align-center .rdv-slot-text,
.rdv-parent-wrap.rdv-align-center .rdv-slots-title{
  text-align:center !important;
}

.rdv-parent-wrap.rdv-align-right .rdv-tabs-content,
.rdv-parent-wrap.rdv-align-right .rdv-tab-panel,
.rdv-parent-wrap.rdv-align-right .rdv-parent-form,
.rdv-parent-wrap.rdv-align-right .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-right .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-right .rdv-surplace,
.rdv-parent-wrap.rdv-align-right .rdv-hint,
.rdv-parent-wrap.rdv-align-right .rdv-sms-info,
.rdv-parent-wrap.rdv-align-right .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-right .rdv-admin-slots,
.rdv-parent-wrap.rdv-align-right .rdv-parent-history{
  text-align:right !important;
}
.rdv-parent-wrap.rdv-align-right .rdv-parent-form,
.rdv-parent-wrap.rdv-align-right .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-right .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-right .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-right .rdv-admin-slots,
.rdv-parent-wrap.rdv-align-right .rdv-hint,
.rdv-parent-wrap.rdv-align-right .rdv-sms-info{
  margin-left:auto !important;
  margin-right:0 !important;
  align-items:flex-end !important;
}
.rdv-parent-wrap.rdv-align-right .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-right .rdv-moyenne-wrap,
.rdv-parent-wrap.rdv-align-right .rdv-surplace,
.rdv-parent-wrap.rdv-align-right .rdv-slots-loadmore-wrap{
  justify-content:flex-end !important;
}
.rdv-parent-wrap.rdv-align-right label.rdv-slot.rdv-field,
.rdv-parent-wrap.rdv-align-right .rdv-field,
.rdv-parent-wrap.rdv-align-right .rdv-slot,
.rdv-parent-wrap.rdv-align-right .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-right input,
.rdv-parent-wrap.rdv-align-right select,
.rdv-parent-wrap.rdv-align-right textarea{
  margin-left:auto !important;
  margin-right:0 !important;
}
.rdv-parent-wrap.rdv-align-right .rdv-slot-text,
.rdv-parent-wrap.rdv-align-right .rdv-slots-title{
  text-align:right !important;
}


/* =====================================================
   v1.5.14 — Alignement centré avec contenu lisible à gauche
   Quand l'option "Centré" est choisie :
   - le bloc complet reste centré dans la page ;
   - le début des lignes, labels, champs, messages, créneaux et filtres reste à gauche.
===================================================== */
.rdv-parent-wrap.rdv-align-center .rdv-tabs-content,
.rdv-parent-wrap.rdv-align-center .rdv-tab-panel{
  text-align: left !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-parent-form,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-center .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-admin-slots,
.rdv-parent-wrap.rdv-align-center .rdv-hint,
.rdv-parent-wrap.rdv-align-center .rdv-sms-info,
.rdv-parent-wrap.rdv-align-center .rdv-parent-history,
.rdv-parent-wrap.rdv-align-center .rdv-table-tools,
.rdv-parent-wrap.rdv-align-center .rdv-history-filters,
.rdv-parent-wrap.rdv-align-center .rdv-history-global-date-wrap{
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
  align-items: flex-start !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-center .rdv-moyenne-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-surplace,
.rdv-parent-wrap.rdv-align-center .rdv-slots-loadmore-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-table-tools,
.rdv-parent-wrap.rdv-align-center .rdv-history-global-date-wrap{
  justify-content: flex-start !important;
}

.rdv-parent-wrap.rdv-align-center label.rdv-slot.rdv-field,
.rdv-parent-wrap.rdv-align-center .rdv-field,
.rdv-parent-wrap.rdv-align-center .rdv-slot,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-center input,
.rdv-parent-wrap.rdv-align-center select,
.rdv-parent-wrap.rdv-align-center textarea{
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-slot-text,
.rdv-parent-wrap.rdv-align-center .rdv-slots-title,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-field .rdv-slot-text,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta label,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta strong,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta b,
.rdv-parent-wrap.rdv-align-center .rdv-hint,
.rdv-parent-wrap.rdv-align-center .rdv-sms-info,
.rdv-parent-wrap.rdv-align-center .rdv-table th,
.rdv-parent-wrap.rdv-align-center .rdv-table td{
  text-align: left !important;
}

/* Les titres des onglets restent centrés visuellement. */
.rdv-parent-wrap.rdv-align-center .rdv-tabs-nav{
  justify-content: center !important;
}

/* =====================================================
   v1.5.15 — Alignement centre corrigé
   Quand l'option centrée est choisie :
   - tout le bloc de contenu sous les onglets est centré ;
   - toutes les lignes commencent au même bord gauche du bloc ;
   - aucun élément interne ne se centre séparément.
===================================================== */
.rdv-parent-wrap.rdv-align-center .rdv-tabs-content,
.rdv-parent-wrap.rdv-align-center .rdv-tab-panel{
  width:100% !important;
  text-align:left !important;
}

.rdv-parent-wrap.rdv-align-center form.rdv-parent-form{
  width:min(var(--rdv-form-width, 560px), 100%) !important;
  max-width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  align-items:flex-start !important;
  text-align:left !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-mobile-field,
.rdv-parent-wrap.rdv-align-center .rdv-surplace,
.rdv-parent-wrap.rdv-align-center .rdv-hint,
.rdv-parent-wrap.rdv-align-center .rdv-sms-info,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta,
.rdv-parent-wrap.rdv-align-center .rdv-admin-slots,
.rdv-parent-wrap.rdv-align-center .rdv-slots-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-parent-history,
.rdv-parent-wrap.rdv-align-center .rdv-table-tools,
.rdv-parent-wrap.rdv-align-center .rdv-history-filters,
.rdv-parent-wrap.rdv-align-center .rdv-history-global-date-wrap{
  width:min(var(--rdv-form-width, 560px), 100%) !important;
  max-width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:left !important;
  align-items:flex-start !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-parent-meta{
  display:flex !important;
  flex-direction:column !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-center .rdv-moyenne-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-surplace,
.rdv-parent-wrap.rdv-align-center .rdv-slots-loadmore-wrap,
.rdv-parent-wrap.rdv-align-center .rdv-table-tools,
.rdv-parent-wrap.rdv-align-center .rdv-history-global-date-wrap{
  justify-content:flex-start !important;
}

.rdv-parent-wrap.rdv-align-center label.rdv-slot.rdv-field,
.rdv-parent-wrap.rdv-align-center .rdv-field,
.rdv-parent-wrap.rdv-align-center .rdv-slot,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-row,
.rdv-parent-wrap.rdv-align-center .rdv-moyenne-wrap,
.rdv-parent-wrap.rdv-align-center input,
.rdv-parent-wrap.rdv-align-center select,
.rdv-parent-wrap.rdv-align-center textarea{
  margin-left:0 !important;
  margin-right:0 !important;
  text-align:left !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-slot-text,
.rdv-parent-wrap.rdv-align-center .rdv-slots-title,
.rdv-parent-wrap.rdv-align-center .rdv-mobile-field .rdv-slot-text,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta label,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta strong,
.rdv-parent-wrap.rdv-align-center .rdv-parent-meta b,
.rdv-parent-wrap.rdv-align-center .rdv-hint,
.rdv-parent-wrap.rdv-align-center .rdv-sms-info,
.rdv-parent-wrap.rdv-align-center .rdv-table th,
.rdv-parent-wrap.rdv-align-center .rdv-table td{
  text-align:left !important;
}

.rdv-parent-wrap.rdv-align-center .rdv-tabs-nav{
  justify-content:center !important;
}

/* =====================================================
   v1.5.19 — Style moderne validé sur image
   Objectif : reproduire l'affichage validé : onglets modernes,
   grand bloc blanc, champs propres, mobile avec indicatif, bouton moderne.
===================================================== */
.rdv-parent-wrap{
  --rdv-blue:#0F2954 !important;
  --rdv-accent:#FF8C00 !important;
  --rdv-soft-blue:#eef6ff !important;
  --rdv-border:#d7e0ec !important;
  --rdv-text:#0F2954 !important;
  --rdv-muted:#5f6b82 !important;
  width:100% !important;
  max-width:1160px !important;
  margin:36px auto !important;
  padding:0 16px !important;
  color:var(--rdv-text) !important;
  font-family:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  background:transparent !important;
}

.rdv-parent-wrap .rdv-tabs{
  width:100% !important;
  margin:0 !important;
}

.rdv-parent-wrap .rdv-tabs-nav{
  display:flex !important;
  justify-content:center !important;
  align-items:flex-end !important;
  gap:14px !important;
  margin:0 0 8px 0 !important;
  padding:0 !important;
  border:0 !important;
}

.rdv-parent-wrap .rdv-tab-btn{
  position:relative !important;
  min-width:320px !important;
  min-height:58px !important;
  padding:17px 26px 16px !important;
  border-radius:8px 8px 0 0 !important;
  border:1px solid var(--rdv-border) !important;
  background:#fff !important;
  color:var(--rdv-blue) !important;
  font-size:15px !important;
  font-weight:900 !important;
  letter-spacing:.1px !important;
  line-height:1.2 !important;
  box-shadow:0 10px 24px rgba(15,41,84,.08) !important;
  transition:all .18s ease !important;
}

.rdv-parent-wrap .rdv-tab-btn::before{
  display:inline-block !important;
  margin-right:10px !important;
  font-size:18px !important;
  vertical-align:-2px !important;
  color:inherit !important;
}
.rdv-parent-wrap .rdv-tab-btn[data-tab="form"]::before{content:"💬" !important;}
.rdv-parent-wrap .rdv-tab-btn[data-tab="history"]::before{content:"◷" !important;}

.rdv-parent-wrap .rdv-tab-btn::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:4px !important;
  background:transparent !important;
}

.rdv-parent-wrap .rdv-tab-btn:hover{
  transform:translateY(-1px) !important;
  background:#fff !important;
  color:var(--rdv-blue) !important;
}

.rdv-parent-wrap .rdv-tab-btn.is-active{
  background:linear-gradient(180deg,#123160 0%,#08204b 100%) !important;
  color:#fff !important;
  border-color:#0b2a5a !important;
  box-shadow:0 14px 30px rgba(15,41,84,.20) !important;
}
.rdv-parent-wrap .rdv-tab-btn.is-active::after{
  background:var(--rdv-accent) !important;
}

.rdv-parent-wrap .rdv-tabs-content{
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
  padding:34px 44px !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid var(--rdv-border) !important;
  border-radius:8px !important;
  box-shadow:0 18px 44px rgba(15,41,84,.10) !important;
  text-align:left !important;
}

.rdv-parent-wrap .rdv-tab-panel,
.rdv-parent-wrap .rdv-tab-panel.is-active{
  width:100% !important;
  max-width:100% !important;
}

.rdv-parent-wrap form.rdv-parent-form{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:20px !important;
  align-items:stretch !important;
  text-align:left !important;
}

.rdv-parent-wrap .rdv-mobile-field,
.rdv-parent-wrap .rdv-surplace,
.rdv-parent-wrap .rdv-hint,
.rdv-parent-wrap .rdv-sms-info,
.rdv-parent-wrap .rdv-parent-meta,
.rdv-parent-wrap .rdv-admin-slots,
.rdv-parent-wrap .rdv-slots-wrap,
.rdv-parent-wrap .rdv-parent-history{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  text-align:left !important;
}

.rdv-parent-wrap .rdv-slot.rdv-field,
.rdv-parent-wrap label.rdv-slot.rdv-field{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.rdv-parent-wrap .rdv-slot-text,
.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 0 8px !important;
  padding:0 !important;
  background:transparent !important;
  color:var(--rdv-text) !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.25 !important;
  text-align:left !important;
  border-radius:0 !important;
}

.rdv-parent-wrap .rdv-req,
.rdv-parent-wrap sup.rdv-req{
  color:#d00022 !important;
  font-size:13px !important;
  font-weight:900 !important;
  top:-1px !important;
  margin-left:2px !important;
}

.rdv-parent-wrap .rdv-mobile-row{
  display:grid !important;
  grid-template-columns:160px minmax(0,1fr) !important;
  gap:12px !important;
  width:100% !important;
  max-width:100% !important;
  align-items:center !important;
  margin:0 !important;
}

.rdv-parent-wrap .rdv-country-code,
.rdv-parent-wrap select.rdv-country-code{
  width:160px !important;
  height:50px !important;
  min-height:50px !important;
  padding:0 42px 0 16px !important;
  border:1px solid #cbd7e6 !important;
  border-radius:7px !important;
  background-color:#fff !important;
  color:var(--rdv-blue) !important;
  font-size:16px !important;
  font-weight:700 !important;
  box-shadow:0 4px 12px rgba(15,41,84,.04) !important;
  appearance:auto !important;
  -webkit-appearance:auto !important;
}

.rdv-parent-wrap #rdv-mobile8,
.rdv-parent-wrap .rdv-mobile-input{
  width:100% !important;
  max-width:100% !important;
  height:50px !important;
  min-height:50px !important;
  padding:0 18px !important;
  border:1px solid #cbd7e6 !important;
  border-radius:7px !important;
  background:#fff !important;
  color:var(--rdv-text) !important;
  font-size:16px !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  box-shadow:0 4px 12px rgba(15,41,84,.04) !important;
}

.rdv-parent-wrap input::placeholder,
.rdv-parent-wrap textarea::placeholder{
  color:#7b8498 !important;
  opacity:1 !important;
}

.rdv-parent-wrap .rdv-surplace{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--rdv-text) !important;
  font-size:15px !important;
  line-height:1.45 !important;
}
.rdv-parent-wrap .rdv-surplace input[type="checkbox"]{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  margin:0 !important;
  border:1px solid #b7c5d8 !important;
  border-radius:5px !important;
  box-shadow:none !important;
  accent-color:var(--rdv-accent) !important;
}
.rdv-parent-wrap .rdv-surplace b{
  color:var(--rdv-blue) !important;
  font-weight:900 !important;
}

.rdv-parent-wrap .rdv-hint.rdv-sms-info,
.rdv-parent-wrap .rdv-sms-info{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  width:100% !important;
  margin:8px 0 0 !important;
  padding:14px 18px !important;
  border:1px solid #b9d5f7 !important;
  border-radius:8px !important;
  background:#f2f8ff !important;
  color:#1b315c !important;
  font-size:14px !important;
  line-height:1.45 !important;
  white-space:normal !important;
  overflow:visible !important;
  box-shadow:0 4px 14px rgba(34,113,177,.05) !important;
}
.rdv-parent-wrap .rdv-sms-info::before{
  content:"i" !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:50% !important;
  background:#0f55b5 !important;
  color:#fff !important;
  font-weight:900 !important;
  font-style:normal !important;
  font-size:18px !important;
}
.rdv-parent-wrap .rdv-sms-info span{
  white-space:normal !important;
  display:inline !important;
}
.rdv-parent-wrap .rdv-sms-info a,
.rdv-parent-wrap .rdv-sms-info b{
  color:#005cba !important;
  font-weight:900 !important;
}

.rdv-parent-wrap .rdv-parent-meta{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  column-gap:28px !important;
  row-gap:16px !important;
  align-items:start !important;
  margin-top:0 !important;
}

.rdv-parent-wrap .rdv-parent-meta > .rdv-hint{
  grid-column:1 / -1 !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin:0 !important;
  padding:13px 18px !important;
  border:1px solid #f0c98f !important;
  border-radius:8px !important;
  background:#fff8ec !important;
  color:#5a5360 !important;
  font-size:14px !important;
  line-height:1.45 !important;
}
.rdv-parent-wrap .rdv-parent-meta > .rdv-hint::before{
  content:"⚠" !important;
  color:#ef9b15 !important;
  font-size:24px !important;
  line-height:1 !important;
}

.rdv-parent-wrap .rdv-slots-title{
  grid-column:1 / -1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  width:max-content !important;
  max-width:100% !important;
  margin:14px 0 2px !important;
  padding:11px 18px 11px 16px !important;
  border-left:5px solid var(--rdv-accent) !important;
  border-radius:6px !important;
  background:linear-gradient(180deg,#123160 0%,#08204b 100%) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  letter-spacing:.1px !important;
  box-shadow:0 10px 20px rgba(15,41,84,.15) !important;
}
.rdv-parent-wrap .rdv-slots-title::before{
  content:"👤" !important;
  font-size:18px !important;
}

.rdv-parent-wrap .rdv-parent-meta label.rdv-slot.rdv-field,
.rdv-parent-wrap .rdv-parent-meta .rdv-custom-field{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
}

.rdv-parent-wrap input[type="text"],
.rdv-parent-wrap input[type="email"],
.rdv-parent-wrap input[type="tel"],
.rdv-parent-wrap input[type="number"],
.rdv-parent-wrap input[type="date"],
.rdv-parent-wrap select,
.rdv-parent-wrap textarea{
  width:100% !important;
  max-width:100% !important;
  min-height:48px !important;
  height:48px !important;
  padding:0 16px !important;
  margin:0 !important;
  border:1px solid #cbd7e6 !important;
  border-radius:7px !important;
  background-color:#fff !important;
  color:#14224a !important;
  font-size:16px !important;
  font-weight:500 !important;
  line-height:48px !important;
  box-shadow:0 4px 12px rgba(15,41,84,.035) !important;
  outline:none !important;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
  appearance:auto !important;
  -webkit-appearance:auto !important;
}
.rdv-parent-wrap textarea{
  min-height:90px !important;
  height:auto !important;
  padding-top:12px !important;
  line-height:1.45 !important;
}
.rdv-parent-wrap input:focus,
.rdv-parent-wrap select:focus,
.rdv-parent-wrap textarea:focus{
  border-color:#77aef2 !important;
  box-shadow:0 0 0 3px rgba(44,123,229,.12), 0 4px 12px rgba(15,41,84,.05) !important;
}

/* Moyenne : style exact demandé, souligné seulement */
.rdv-parent-wrap .rdv-moyenne-wrap{
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  max-width:160px !important;
  height:48px !important;
  margin:0 !important;
  padding:0 0 3px !important;
  border-bottom:2px solid #aeb7c7 !important;
}
.rdv-parent-wrap .rdv-moyenne-wrap input[type="text"]{
  width:38px !important;
  min-width:38px !important;
  max-width:38px !important;
  height:36px !important;
  min-height:36px !important;
  line-height:36px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:center !important;
  font-size:16px !important;
  font-weight:600 !important;
  color:#14224a !important;
}
.rdv-parent-wrap .rdv-moyenne-comma{
  height:36px !important;
  line-height:36px !important;
  font-size:18px !important;
  font-weight:900 !important;
  color:#14224a !important;
}

.rdv-parent-wrap .rdv-admin-slots,
.rdv-parent-wrap .rdv-slots-wrap{
  grid-column:1 / -1 !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.rdv-parent-wrap .rdv-admin-slots > .rdv-hint,
.rdv-parent-wrap .rdv-slots-wrap > .rdv-hint,
.rdv-parent-wrap .rdv-admin-slots > .rdv-slots-title{
  display:none !important;
}
.rdv-parent-wrap .rdv-admin-slots:empty::before,
.rdv-parent-wrap .rdv-slots-wrap:empty::before{
  content:"❌ Aucun créneau libre pour le moment." !important;
}
.rdv-parent-wrap .rdv-admin-slots .rdv-hint:first-child,
.rdv-parent-wrap .rdv-slots-wrap .rdv-hint:first-child,
.rdv-parent-wrap .rdv-admin-slots > div:only-child{
  display:flex !important;
}
.rdv-parent-wrap .rdv-admin-slots .rdv-hint,
.rdv-parent-wrap .rdv-slots-wrap .rdv-hint,
.rdv-parent-wrap .rdv-msg-error{
  width:100% !important;
  margin:4px 0 0 !important;
  padding:14px 18px !important;
  border:1px solid #f0a7ad !important;
  border-radius:8px !important;
  background:#fff1f3 !important;
  color:#a6222b !important;
  font-size:15px !important;
  line-height:1.45 !important;
  box-shadow:none !important;
}

.rdv-admin-slots .rdv-slot,
.rdv-slots-wrap .rdv-slot{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:12px 14px !important;
  margin:8px 0 !important;
  border:1px solid #e0e8f2 !important;
  border-radius:8px !important;
  background:#fff !important;
}

.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"].rdv-btn,
.rdv-parent-wrap .button.button-primary.rdv-btn{
  align-self:center !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  width:auto !important;
  min-width:270px !important;
  max-width:100% !important;
  height:56px !important;
  margin:0 auto !important;
  padding:0 36px !important;
  border:0 !important;
  border-bottom:4px solid var(--rdv-accent) !important;
  border-radius:10px !important;
  background:linear-gradient(180deg,#123160 0%,#08204b 100%) !important;
  color:#fff !important;
  font-size:19px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-shadow:none !important;
  box-shadow:0 14px 28px rgba(15,41,84,.18) !important;
  cursor:pointer !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
.rdv-parent-wrap .rdv-btn::before{
  content:"✈" !important;
  font-size:22px !important;
  line-height:1 !important;
}
.rdv-parent-wrap .rdv-btn:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 18px 34px rgba(15,41,84,.22) !important;
  background:linear-gradient(180deg,#163b72 0%,#09265a 100%) !important;
}
.rdv-parent-wrap .rdv-btn:disabled{
  opacity:.55 !important;
  cursor:not-allowed !important;
  transform:none !important;
}

/* Historique modernisé dans le même esprit */
.rdv-parent-wrap .rdv-table-tools,
.rdv-parent-wrap .rdv-table-tools-advanced{
  width:100% !important;
  margin:0 0 18px !important;
  padding:0 !important;
  display:flex !important;
  gap:12px !important;
  flex-wrap:wrap !important;
  align-items:center !important;
}
.rdv-parent-wrap .rdv-table-tools select,
.rdv-parent-wrap .rdv-table-tools input{
  width:auto !important;
  min-width:220px !important;
}
.rdv-parent-wrap #rdv-history-reset{
  height:44px !important;
  padding:0 18px !important;
  border:1px solid #cbd7e6 !important;
  border-radius:7px !important;
  background:#fff !important;
  color:var(--rdv-blue) !important;
  font-weight:800 !important;
}
.rdv-parent-wrap .rdv-parent-history{
  overflow-x:auto !important;
}
.rdv-parent-wrap .rdv-table{
  width:100% !important;
  min-width:980px !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  border:1px solid #d9e2ef !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#fff !important;
}
.rdv-parent-wrap .rdv-table th{
  background:linear-gradient(180deg,#123160 0%,#08204b 100%) !important;
  color:#fff !important;
  font-size:var(--rdv-table-text-size, 12px) !important;
  font-weight:900 !important;
  padding:12px 10px !important;
  border-color:#234168 !important;
}
.rdv-parent-wrap .rdv-table td{
  font-size:var(--rdv-table-text-size, 12px) !important;
  padding:11px 10px !important;
  border-color:#e3e9f2 !important;
  color:#14224a !important;
}
.rdv-parent-wrap .rdv-table tbody tr:hover td{
  background:#f6faff !important;
}

/* Modal simple mais modernisée selon la palette */
.rdv-modal .rdv-modal-card,
#rdv-parent-card .rdv-modal-card{
  max-width:var(--rdv-modal-width, 520px) !important;
  border:1px solid #d7e0ec !important;
  border-radius:8px !important;
  background:#fff !important;
  box-shadow:0 24px 70px rgba(0,0,0,.22) !important;
}
.rdv-modal .rdv-modal-head,
#rdv-parent-card .rdv-modal-head{
  background:#fff !important;
  border-bottom:1px solid #edf1f6 !important;
  color:#111827 !important;
  padding:14px 16px !important;
}
.rdv-modal .rdv-modal-title,
#rdv-parent-card .rdv-modal-title{
  color:#111827 !important;
  font-weight:900 !important;
  font-size:16px !important;
}
.rdv-modal .rdv-modal-body,
#rdv-parent-card .rdv-modal-body{
  padding:14px 16px !important;
  font-size:var(--rdv-modal-text-size, 14px) !important;
}

@media (max-width: 780px){
  .rdv-parent-wrap{padding:0 10px !important;margin:20px auto !important;}
  .rdv-parent-wrap .rdv-tabs-nav{gap:6px !important;}
  .rdv-parent-wrap .rdv-tab-btn{min-width:0 !important;flex:1 1 50% !important;font-size:12px !important;padding:14px 8px !important;}
  .rdv-parent-wrap .rdv-tabs-content{padding:22px 16px !important;border-radius:8px !important;}
  .rdv-parent-wrap .rdv-mobile-row{grid-template-columns:120px minmax(0,1fr) !important;gap:8px !important;}
  .rdv-parent-wrap .rdv-country-code{width:120px !important;font-size:14px !important;padding-left:10px !important;}
  .rdv-parent-wrap .rdv-parent-meta{grid-template-columns:1fr !important;gap:14px !important;}
  .rdv-parent-wrap .rdv-sms-info{align-items:flex-start !important;}
  .rdv-parent-wrap .rdv-btn{width:100% !important;min-width:0 !important;}
}


/* =====================================================
   v1.5.20 — Corrections demandées : formulaire compact en liste,
   champs soulignés, mobile réduit, tableau sans retour ligne.
===================================================== */
.rdv-parent-wrap{
  font-size:13px !important;
}
.rdv-parent-wrap .rdv-tabs-nav{
  justify-content:center !important;
  gap:10px !important;
  margin-bottom:10px !important;
}
.rdv-parent-wrap .rdv-tab-btn{
  min-height:38px !important;
  padding:10px 18px !important;
  border-radius:6px 6px 0 0 !important;
  font-size:13px !important;
  line-height:1 !important;
}
.rdv-parent-wrap .rdv-tabs-content{
  max-width:820px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding:18px 20px !important;
  border:0 !important;
  border-radius:0 !important;
  background:var(--rdv-plugin-bg, transparent) !important;
  box-shadow:none !important;
}
.rdv-parent-wrap .rdv-tab-panel{
  width:100% !important;
}
.rdv-parent-wrap .rdv-parent-form{
  width:100% !important;
  max-width:780px !important;
  margin:0 auto !important;
  gap:12px !important;
  align-items:stretch !important;
  text-align:left !important;
}

/* Mobile : indicatif + champ court */
.rdv-parent-wrap .rdv-mobile-field{
  width:100% !important;
  display:block !important;
  margin:0 0 12px !important;
}
.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text{
  display:inline-block !important;
  margin:0 0 6px !important;
  padding:0 !important;
  background:transparent !important;
  color:var(--rdv-blue) !important;
  font-size:13px !important;
  font-weight:800 !important;
}
.rdv-parent-wrap .rdv-mobile-row{
  display:flex !important;
  align-items:flex-end !important;
  gap:10px !important;
  width:auto !important;
  max-width:330px !important;
}
.rdv-parent-wrap .rdv-country-code,
.rdv-parent-wrap select.rdv-country-code{
  width:108px !important;
  min-width:108px !important;
  max-width:108px !important;
  height:34px !important;
  min-height:34px !important;
  padding:0 22px 2px 0 !important;
  border:0 !important;
  border-bottom:1.5px solid #111 !important;
  border-radius:0 !important;
  background-color:transparent !important;
  box-shadow:none !important;
  font-size:13px !important;
  color:#071c44 !important;
}
.rdv-parent-wrap #rdv-mobile8,
.rdv-parent-wrap .rdv-mobile-input{
  width:150px !important;
  min-width:150px !important;
  max-width:150px !important;
  height:34px !important;
  min-height:34px !important;
  padding:0 2px 2px !important;
  border:0 !important;
  border-bottom:1.5px solid #111 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:13px !important;
  line-height:34px !important;
}

/* SMS options/messages plus simples, sans icônes décoratives */
.rdv-parent-wrap .rdv-surplace{
  width:100% !important;
  margin:7px 0 !important;
  padding:0 !important;
  font-size:13px !important;
  color:#071c44 !important;
  justify-content:flex-start !important;
}
.rdv-parent-wrap .rdv-surplace input[type="checkbox"]{
  width:14px !important;
  height:14px !important;
  margin:0 7px 0 0 !important;
}
.rdv-parent-wrap .rdv-sms-info,
.rdv-parent-wrap .rdv-parent-meta > .rdv-hint:first-child{
  width:100% !important;
  margin:10px 0 !important;
  padding:7px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:12px !important;
  line-height:1.35 !important;
  color:#344054 !important;
  text-align:left !important;
}
.rdv-parent-wrap .rdv-sms-info::before,
.rdv-parent-wrap .rdv-parent-meta > .rdv-hint:first-child::before,
.rdv-parent-wrap .rdv-btn::before,
.rdv-parent-wrap .rdv-slots-title::before{
  content:none !important;
  display:none !important;
}

/* Formulaire sous forme liste : libellé à gauche, champ à droite */
.rdv-parent-wrap .rdv-parent-meta{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
.rdv-parent-wrap .rdv-slots-title{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  margin:10px 0 12px !important;
  padding:7px 13px !important;
  border-radius:3px !important;
  border-left:3px solid var(--rdv-accent) !important;
  background:var(--rdv-blue) !important;
  color:#fff !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
  box-shadow:none !important;
}
.rdv-parent-wrap .rdv-parent-meta label.rdv-field,
.rdv-parent-wrap label.rdv-slot.rdv-field.rdv-custom-field{
  display:grid !important;
  grid-template-columns:240px minmax(0, 330px) !important;
  align-items:end !important;
  column-gap:14px !important;
  width:100% !important;
  max-width:620px !important;
  margin:0 0 10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.rdv-parent-wrap .rdv-parent-meta .rdv-slot-text,
.rdv-parent-wrap .rdv-parent-meta label.rdv-field > .rdv-slot-text{
  display:block !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 0 6px !important;
  background:transparent !important;
  color:var(--rdv-blue) !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  text-align:left !important;
}
.rdv-parent-wrap .rdv-parent-meta input[type="text"],
.rdv-parent-wrap .rdv-parent-meta input[type="number"],
.rdv-parent-wrap .rdv-parent-meta input[type="date"],
.rdv-parent-wrap .rdv-parent-meta input[type="email"],
.rdv-parent-wrap .rdv-parent-meta input[type="tel"],
.rdv-parent-wrap .rdv-parent-meta select,
.rdv-parent-wrap .rdv-parent-meta textarea,
.rdv-parent-wrap .rdv-table-tools select,
.rdv-parent-wrap .rdv-table-tools input[type="text"],
.rdv-parent-wrap .rdv-table-tools input[type="date"]{
  width:100% !important;
  max-width:330px !important;
  height:33px !important;
  min-height:33px !important;
  padding:0 2px 2px !important;
  border:0 !important;
  border-bottom:1.5px solid #111 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#071c44 !important;
  font-size:13px !important;
  line-height:33px !important;
}
.rdv-parent-wrap .rdv-parent-meta textarea{
  height:58px !important;
  line-height:1.3 !important;
  padding-top:5px !important;
}
.rdv-parent-wrap .rdv-parent-meta input:focus,
.rdv-parent-wrap .rdv-parent-meta select:focus,
.rdv-parent-wrap .rdv-parent-meta textarea:focus,
.rdv-parent-wrap .rdv-mobile-input:focus,
.rdv-parent-wrap .rdv-country-code:focus,
.rdv-parent-wrap .rdv-table-tools input:focus,
.rdv-parent-wrap .rdv-table-tools select:focus{
  outline:none !important;
  border-bottom-color:var(--rdv-accent) !important;
  border-bottom-width:2px !important;
}
.rdv-parent-wrap .rdv-moyenne-wrap{
  width:150px !important;
  justify-content:flex-start !important;
  gap:6px !important;
  border-bottom:1.5px solid #111 !important;
  padding-bottom:2px !important;
}
.rdv-parent-wrap .rdv-moyenne-wrap input[type="text"]{
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  height:30px !important;
  line-height:30px !important;
  border:0 !important;
  padding:0 !important;
  text-align:center !important;
}
.rdv-parent-wrap .rdv-moyenne-comma{
  height:30px !important;
  line-height:30px !important;
  font-size:14px !important;
}

/* Créneaux et message sans zoom excessif */
.rdv-parent-wrap .rdv-admin-slots,
.rdv-parent-wrap .rdv-slots-wrap{
  max-width:620px !important;
}
.rdv-parent-wrap .rdv-admin-slots .rdv-hint,
.rdv-parent-wrap .rdv-slots-wrap .rdv-hint,
.rdv-parent-wrap .rdv-msg-error{
  margin:8px 0 0 !important;
  padding:8px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#a6222b !important;
  font-size:13px !important;
}
.rdv-admin-slots .rdv-slot,
.rdv-slots-wrap .rdv-slot{
  border:0 !important;
  border-bottom:1px solid #d7dbe3 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:7px 0 !important;
  margin:0 !important;
}

/* Bouton envoyer plus simple et compact */
.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"].rdv-btn,
.rdv-parent-wrap .button.button-primary.rdv-btn{
  align-self:flex-start !important;
  min-width:0 !important;
  width:auto !important;
  height:38px !important;
  margin:12px 0 0 254px !important;
  padding:0 28px !important;
  border:0 !important;
  border-bottom:3px solid var(--rdv-accent) !important;
  border-radius:5px !important;
  background:var(--rdv-blue) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:38px !important;
  box-shadow:none !important;
  text-shadow:none !important;
}
.rdv-parent-wrap .rdv-btn:hover{
  transform:none !important;
  box-shadow:none !important;
  background:#123160 !important;
}

/* Historique : mobile local uniquement (PHP) + tableau sans retour à la ligne */
.rdv-parent-wrap .rdv-parent-history{
  width:100% !important;
  max-width:100% !important;
  overflow-x:auto !important;
}
.rdv-parent-wrap .rdv-table{
  min-width:980px !important;
  table-layout:auto !important;
  border-collapse:collapse !important;
}
.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  vertical-align:middle !important;
  font-size:var(--rdv-table-text-size, 12px) !important;
}
.rdv-parent-wrap .rdv-actions-col,
.rdv-parent-wrap .rdv-action-line{
  white-space:nowrap !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:6px !important;
}
.rdv-parent-wrap .rdv-actions-col{flex-direction:row !important;align-items:center !important;}
.rdv-parent-wrap .rdv-action-line{margin:0 !important;}

@media (max-width: 780px){
  .rdv-parent-wrap .rdv-tabs-content{max-width:100% !important;padding:14px 10px !important;}
  .rdv-parent-wrap .rdv-parent-meta label.rdv-field,
  .rdv-parent-wrap label.rdv-slot.rdv-field.rdv-custom-field{
    grid-template-columns:1fr !important;
    max-width:100% !important;
  }
  .rdv-parent-wrap .rdv-parent-meta input,
  .rdv-parent-wrap .rdv-parent-meta select,
  .rdv-parent-wrap .rdv-parent-meta textarea{max-width:100% !important;}
  .rdv-parent-wrap .rdv-btn,
  .rdv-parent-wrap button[type="submit"].rdv-btn,
  .rdv-parent-wrap .button.button-primary.rdv-btn{margin-left:0 !important;width:auto !important;}
}


/* =====================================================
   v1.5.21 — Historique : mobile sans indicatif + tableau sans scroll
   -----------------------------------------------------
   - Le scroll horizontal est supprimé.
   - Le tableau reste dans la largeur disponible.
   - Tout le contenu reste sur une seule ligne avec points de suspension.
===================================================== */
.rdv-parent-wrap .rdv-parent-history{
  width:100% !important;
  max-width:100% !important;
  overflow-x:hidden !important;
  overflow-y:visible !important;
}

.rdv-parent-wrap .rdv-table{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
}

.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  vertical-align:middle !important;
}

/* Largeurs forcées pour éviter tout débordement / scroll */
.rdv-parent-wrap .rdv-table th:nth-child(1),
.rdv-parent-wrap .rdv-table td:nth-child(1){ width:11% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(2),
.rdv-parent-wrap .rdv-table td:nth-child(2){ width:21% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(3),
.rdv-parent-wrap .rdv-table td:nth-child(3){ width:15% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(4),
.rdv-parent-wrap .rdv-table td:nth-child(4){ width:19% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(5),
.rdv-parent-wrap .rdv-table td:nth-child(5){ width:11% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-table td:nth-child(6){ width:10% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(7),
.rdv-parent-wrap .rdv-table td:nth-child(7){ width:13% !important; }

.rdv-parent-wrap .rdv-actions-col,
.rdv-parent-wrap .rdv-action-line{
  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.rdv-parent-wrap .rdv-table .button,
.rdv-parent-wrap .rdv-table button,
.rdv-parent-wrap .rdv-table select{
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width: 900px){
  .rdv-parent-wrap .rdv-table th,
  .rdv-parent-wrap .rdv-table td{
    font-size:10px !important;
    padding-left:3px !important;
    padding-right:3px !important;
  }
  .rdv-parent-wrap .rdv-table .button,
  .rdv-parent-wrap .rdv-table button,
  .rdv-parent-wrap .rdv-table select{
    font-size:10px !important;
    padding-left:4px !important;
    padding-right:4px !important;
  }
}


/* =====================================================
   v1.5.22 — Corrections affichage historique / onglets / fond
   -----------------------------------------------------
   - Filtres historique sur une seule ligne.
   - Tableau sans scroll, cadre rectangulaire, traits restaurés.
   - Colonne Action élargie.
   - Fond plugin transparent.
   - Onglets rectangulaires, sans icône/emoji.
===================================================== */

/* Fond général du plugin transparent */
.rdv-parent-wrap,
.rdv-parent-wrap .rdv-tabs,
.rdv-parent-wrap .rdv-tabs-content,
.rdv-parent-wrap .rdv-tab-panel,
.rdv-parent-wrap form.rdv-parent-form,
.rdv-parent-wrap .rdv-parent-meta,
.rdv-parent-wrap .rdv-mobile-field,
.rdv-parent-wrap .rdv-parent-history{
  background:transparent !important;
  box-shadow:none !important;
}

/* Ne garder aucun cadrage externe autour des onglets/contenus */
.rdv-parent-wrap .rdv-tabs-content,
.rdv-parent-wrap .rdv-tab-panel,
.rdv-parent-wrap form.rdv-parent-form,
.rdv-parent-wrap .rdv-parent-meta{
  border:0 !important;
  border-radius:0 !important;
}

/* Onglets centrés, rectangulaires, modernes et sans effet icône */
.rdv-parent-wrap .rdv-tabs-nav{
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  margin-bottom:22px !important;
}
.rdv-parent-wrap .rdv-tab-btn{
  border-radius:0 !important;
  min-height:34px !important;
  height:34px !important;
  padding:0 18px !important;
  font-size:12px !important;
  line-height:34px !important;
  font-weight:800 !important;
  letter-spacing:.1px !important;
  border:1px solid var(--rdv-blue) !important;
  background:transparent !important;
  color:var(--rdv-blue) !important;
  box-shadow:none !important;
}
.rdv-parent-wrap .rdv-tab-btn::before,
.rdv-parent-wrap .rdv-tab-btn::after{
  content:none !important;
  display:none !important;
}
.rdv-parent-wrap .rdv-tab-btn.is-active,
.rdv-parent-wrap .rdv-tab-btn:hover{
  background:var(--rdv-blue) !important;
  color:#fff !important;
  border-color:var(--rdv-blue) !important;
}

/* Réduction légère du texte général */
.rdv-parent-wrap{
  font-size:13px !important;
}
.rdv-parent-wrap label,
.rdv-parent-wrap .rdv-slot-text,
.rdv-parent-wrap .rdv-hint,
.rdv-parent-wrap .rdv-sms-info,
.rdv-parent-wrap input,
.rdv-parent-wrap select,
.rdv-parent-wrap textarea,
.rdv-parent-wrap button{
  font-size:13px !important;
}

/* Historique : filtres obligatoirement sur une seule ligne */
.rdv-parent-wrap .rdv-table-tools,
.rdv-parent-wrap .rdv-table-tools-advanced{
  width:100% !important;
  max-width:100% !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  margin:0 0 10px 0 !important;
  padding:0 !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}
.rdv-parent-wrap .rdv-table-tools-advanced *{
  margin-left:0 !important;
  box-sizing:border-box !important;
}
.rdv-parent-wrap .rdv-history-global-date-wrap{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:6px !important;
  margin-left:0 !important;
  flex:0 0 auto !important;
}
.rdv-parent-wrap .rdv-history-filter-dynamic{
  flex:0 1 180px !important;
  width:180px !important;
  min-width:140px !important;
  max-width:190px !important;
  display:block !important;
}
.rdv-parent-wrap #rdv-history-filter-col,
.rdv-parent-wrap #rdv-history-filter-value,
.rdv-parent-wrap #rdv-history-filter,
.rdv-parent-wrap .rdv-filter-secondary,
.rdv-parent-wrap .rdv-filter-date{
  height:28px !important;
  min-height:28px !important;
  line-height:28px !important;
  padding:0 3px !important;
  font-size:11px !important;
  font-weight:600 !important;
  border:0 !important;
  border-bottom:1.5px solid var(--rdv-blue) !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--rdv-blue) !important;
  box-shadow:none !important;
  outline:none !important;
}
.rdv-parent-wrap #rdv-history-filter-col{
  flex:0 0 120px !important;
  width:120px !important;
  min-width:120px !important;
  max-width:120px !important;
}
.rdv-parent-wrap #rdv-history-filter,
.rdv-parent-wrap #rdv-history-filter-value,
.rdv-parent-wrap .rdv-filter-secondary{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
}
.rdv-parent-wrap .rdv-filter-date,
.rdv-parent-wrap #rdv-history-global-date-from,
.rdv-parent-wrap #rdv-history-global-date-to{
  flex:0 0 105px !important;
  width:105px !important;
  min-width:105px !important;
  max-width:105px !important;
}
.rdv-parent-wrap #rdv-history-reset{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:48px !important;
  height:28px !important;
  min-height:28px !important;
  line-height:28px !important;
  padding:0 4px !important;
  margin:0 !important;
  border:0 !important;
  border-bottom:1.5px solid var(--rdv-blue) !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--rdv-blue) !important;
  box-shadow:none !important;
  outline:none !important;
  font-size:11px !important;
  font-weight:800 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.rdv-parent-wrap #rdv-history-reset:hover,
.rdv-parent-wrap #rdv-history-reset:focus,
.rdv-parent-wrap #rdv-history-reset:active{
  background:transparent !important;
  color:var(--rdv-blue) !important;
  border:0 !important;
  border-bottom:1.5px solid var(--rdv-blue) !important;
  box-shadow:none !important;
}
.rdv-parent-wrap #rdv-history-count{
  flex:0 1 auto !important;
  min-width:45px !important;
  max-width:85px !important;
  margin:0 !important;
  font-size:11px !important;
  line-height:28px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* Tableau historique : sans scroll, rectangulaire, traits restaurés */
.rdv-parent-wrap .rdv-parent-history{
  width:100% !important;
  max-width:100% !important;
  overflow-x:hidden !important;
  overflow-y:visible !important;
  border:0 !important;
  border-radius:0 !important;
}
.rdv-parent-wrap .rdv-table{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  border:1px solid #aeb8c6 !important;
  border-radius:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}
.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  border-right:1px solid #c9d2df !important;
  border-bottom:1px solid #c9d2df !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  vertical-align:middle !important;
  line-height:1.15 !important;
  font-size:11px !important;
  padding:5px 4px !important;
}
.rdv-parent-wrap .rdv-table th{
  background:#0F2954 !important;
  color:#fff !important;
  font-weight:800 !important;
}
.rdv-parent-wrap .rdv-table th:last-child,
.rdv-parent-wrap .rdv-table td:last-child{
  border-right:0 !important;
}
.rdv-parent-wrap .rdv-table tbody tr:last-child td{
  border-bottom:0 !important;
}
.rdv-parent-wrap .rdv-table tbody tr:hover td{
  background:#f7fbff !important;
}

/* Largeurs colonnes : Action élargie, sans scroll */
.rdv-parent-wrap .rdv-table th:nth-child(1),
.rdv-parent-wrap .rdv-table td:nth-child(1){ width:9% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(2),
.rdv-parent-wrap .rdv-table td:nth-child(2){ width:17% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(3),
.rdv-parent-wrap .rdv-table td:nth-child(3){ width:13% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(4),
.rdv-parent-wrap .rdv-table td:nth-child(4){ width:12% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(5),
.rdv-parent-wrap .rdv-table td:nth-child(5){ width:10% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-table td:nth-child(6){ width:10% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(7),
.rdv-parent-wrap .rdv-table td:nth-child(7){ width:29% !important; }

/* Colonne Action lisible, plus large, sans retour ligne */
.rdv-parent-wrap .rdv-actions-col,
.rdv-parent-wrap .rdv-action-line,
.rdv-parent-wrap .rdv-table td:last-child > div{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:4px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  min-width:0 !important;
}
.rdv-parent-wrap .rdv-table td:last-child .button,
.rdv-parent-wrap .rdv-table td:last-child a.button,
.rdv-parent-wrap .rdv-table td:last-child button,
.rdv-parent-wrap .rdv-table td:last-child select{
  flex:0 1 auto !important;
  min-width:0 !important;
  max-width:100% !important;
  height:24px !important;
  min-height:24px !important;
  line-height:22px !important;
  padding:0 4px !important;
  font-size:10.5px !important;
  border-radius:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width: 900px){
  .rdv-parent-wrap .rdv-table-tools,
  .rdv-parent-wrap .rdv-table-tools-advanced{
    gap:3px !important;
  }
  .rdv-parent-wrap #rdv-history-filter-col{ width:88px !important; min-width:88px !important; max-width:88px !important; }
  .rdv-parent-wrap .rdv-history-filter-dynamic{ width:105px !important; min-width:80px !important; max-width:105px !important; }
  .rdv-parent-wrap .rdv-filter-date,
  .rdv-parent-wrap #rdv-history-global-date-from,
  .rdv-parent-wrap #rdv-history-global-date-to{ width:82px !important; min-width:82px !important; max-width:82px !important; }
  .rdv-parent-wrap #rdv-history-reset{ min-width:38px !important; font-size:10px !important; padding:0 2px !important; }
  .rdv-parent-wrap #rdv-history-count{ display:none !important; }
  .rdv-parent-wrap .rdv-table th,
  .rdv-parent-wrap .rdv-table td{ font-size:9.5px !important; padding:4px 2px !important; }
  .rdv-parent-wrap .rdv-table td:last-child .button,
  .rdv-parent-wrap .rdv-table td:last-child a.button,
  .rdv-parent-wrap .rdv-table td:last-child button,
  .rdv-parent-wrap .rdv-table td:last-child select{ font-size:9px !important; padding:0 2px !important; }
}

/* =====================================================
   v1.5.23 — Corrections demandées
   - fond historique transparent
   - présence centrée
   - reset rouge aligné filtre
   - statut sans retour ligne
   - action séparée par tirets
   - URL portail parent dans le message info côté PHP
===================================================== */
.rdv-parent-wrap,
.rdv-parent-wrap .rdv-tabs,
.rdv-parent-wrap .rdv-tabs-content,
.rdv-parent-wrap .rdv-tab-panel,
.rdv-parent-wrap .rdv-parent-history,
.rdv-parent-wrap .rdv-parent-form{
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
}

.rdv-parent-wrap .rdv-parent-history{
  border:none !important;
  padding:0 !important;
  overflow-x:hidden !important;
  overflow-y:visible !important;
}

.rdv-parent-wrap .rdv-table{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  border:1px solid #8fa0b8 !important;
  border-radius:0 !important;
  background:transparent !important;
  background-color:transparent !important;
  overflow:hidden !important;
}

.rdv-parent-wrap .rdv-table thead,
.rdv-parent-wrap .rdv-table tbody,
.rdv-parent-wrap .rdv-table tr,
.rdv-parent-wrap .rdv-table td{
  background:transparent !important;
  background-color:transparent !important;
}

.rdv-parent-wrap .rdv-table th,
.rdv-parent-wrap .rdv-table td{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  border-right:1px solid #8fa0b8 !important;
  border-bottom:1px solid #8fa0b8 !important;
  vertical-align:middle !important;
  font-size:10.5px !important;
  line-height:1.15 !important;
  padding:5px 4px !important;
}

.rdv-parent-wrap .rdv-table th{
  background:#0F2954 !important;
  color:#fff !important;
  text-align:center !important;
  font-weight:800 !important;
}

.rdv-parent-wrap .rdv-table tbody tr:hover td{
  background:rgba(255,140,0,.06) !important;
}

/* Largeurs : statut plus large, action très large, sans scroll */
.rdv-parent-wrap .rdv-table th:nth-child(1),
.rdv-parent-wrap .rdv-table td:nth-child(1){ width:8% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(2),
.rdv-parent-wrap .rdv-table td:nth-child(2){ width:16% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(3),
.rdv-parent-wrap .rdv-table td:nth-child(3){ width:14% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(4),
.rdv-parent-wrap .rdv-table td:nth-child(4){ width:16% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(5),
.rdv-parent-wrap .rdv-table td:nth-child(5){ width:8% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-table td:nth-child(6){ width:8% !important; }
.rdv-parent-wrap .rdv-table th:nth-child(7),
.rdv-parent-wrap .rdv-table td:nth-child(7){ width:30% !important; }

/* Présence centrée */
.rdv-parent-wrap .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-table td:nth-child(6){
  text-align:center !important;
}
.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-select,
.rdv-parent-wrap .rdv-table td:nth-child(6) .rdv-presence-view{
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

/* Statut : ajusté, une seule ligne, pas de scroll */
.rdv-parent-wrap .rdv-table th:nth-child(4),
.rdv-parent-wrap .rdv-table td:nth-child(4){
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  text-align:left !important;
}

/* Action : Modifier - Annuler RDV - Activer formulaire */
.rdv-parent-wrap .rdv-actions-col,
.rdv-parent-wrap .rdv-table td:last-child > div{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:3px !important;
  width:100% !important;
  max-width:100% !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}
.rdv-parent-wrap .rdv-action-line{
  display:inline-flex !important;
  flex:0 1 auto !important;
  align-items:center !important;
  min-width:0 !important;
  max-width:33% !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}
.rdv-parent-wrap .rdv-action-line:not(:first-child)::before{
  content:"-";
  display:inline-block;
  color:#0F2954;
  font-weight:700;
  margin:0 3px 0 1px;
}
.rdv-parent-wrap .rdv-table td:last-child .button,
.rdv-parent-wrap .rdv-table td:last-child a.button,
.rdv-parent-wrap .rdv-table td:last-child button{
  background:transparent !important;
  border:0 !important;
  color:#0F2954 !important;
  box-shadow:none !important;
  padding:0 2px !important;
  height:auto !important;
  min-height:0 !important;
  line-height:1.15 !important;
  font-size:10.2px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
}
.rdv-parent-wrap .rdv-table td:last-child .rdv-action-placeholder{
  display:none !important;
}

/* Reset rouge, sans cadre, légèrement plus bas et même ligne que les filtres */
.rdv-parent-wrap #rdv-history-reset,
#rdv-history-reset,
#rdv-history-reset:hover,
#rdv-history-reset:focus,
#rdv-history-reset:active{
  background:transparent !important;
  border:0 !important;
  color:#d00000 !important;
  box-shadow:none !important;
  outline:none !important;
  font-weight:800 !important;
  font-size:11px !important;
  padding:0 2px !important;
  height:22px !important;
  min-height:22px !important;
  line-height:22px !important;
  position:relative !important;
  top:3px !important;
  cursor:pointer !important;
}

.rdv-parent-wrap .rdv-table-tools-advanced{
  flex-wrap:nowrap !important;
  align-items:flex-start !important;
  gap:6px !important;
  overflow:hidden !important;
  max-width:100% !important;
  background:transparent !important;
}

.rdv-parent-wrap .rdv-history-global-date-wrap{
  margin-left:0 !important;
  flex:0 0 auto !important;
}

.rdv-parent-wrap #rdv-history-count{
  position:relative !important;
  top:5px !important;
  font-size:10.5px !important;
  white-space:nowrap !important;
}

/* Message SMS info : pas de fond blanc */
.rdv-parent-wrap .rdv-sms-info,
.rdv-parent-wrap .rdv-hint.rdv-sms-info{
  background:transparent !important;
  background-color:transparent !important;
  border:none !important;
  box-shadow:none !important;
}


/* v1.5.24 — restauration message clignotant sous les créneaux */
.rdv-parent-wrap .rdv-slots-warning{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:10px 0 8px !important;
  padding:8px 10px !important;
  border:0 !important;
  border-left:4px solid #d10000 !important;
  background:#fff5f5 !important;
  color:#b00000 !important;
  font-size:12.5px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
  text-align:left !important;
  animation:rdvBlink 1.6s ease-in-out infinite !important;
}
@keyframes rdvBlink{
  0%{ opacity:1; }
  50%{ opacity:.45; }
  100%{ opacity:1; }
}

/* v1.5.25 — titres sans fond : bande + soulignement orange */
.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text,
.rdv-parent-wrap .rdv-parent-meta > .rdv-slots-title{
  background:transparent !important;
  background-color:transparent !important;
  color:#0F2954 !important;
  border:0 !important;
  border-left:4px solid #FF8C00 !important;
  border-bottom:2px solid #FF8C00 !important;
  border-radius:0 !important;
  padding:3px 8px 4px 8px !important;
  margin:0 0 10px 0 !important;
  display:inline-block !important;
  width:auto !important;
  max-width:max-content !important;
  line-height:1.25 !important;
  text-transform:none !important;
  box-shadow:none !important;
}

/* v1.5.25 — message créneaux au-dessus de la liste */
.rdv-parent-wrap .rdv-slots-warning{
  margin:8px 0 10px !important;
}

/* =====================================================
   v1.5.27 — Titres formulaire + espacements
   -----------------------------------------------------
   - MOBILE PARENT, INFORMATIONS SUR L’ELEVE et CRENEAUX DISPONIBLES
     en majuscules, plus visibles et gras.
   - Pas de fond sur les titres de section.
   - Plus d'espace entre les champs de la section élève.
   - Plus d'espace entre le libellé et son champ de saisie.
===================================================== */
.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text,
.rdv-parent-wrap .rdv-slots-title{
  text-transform: uppercase !important;
  background: transparent !important;
  color: var(--rdv-blue) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  letter-spacing: .25px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.rdv-parent-wrap .rdv-mobile-field .rdv-slot-text{
  display: inline-block !important;
  width: auto !important;
  margin: 0 0 11px !important;
  padding: 0 0 7px 10px !important;
  border-left: 4px solid var(--rdv-accent) !important;
  border-bottom: 2px solid var(--rdv-accent) !important;
}

.rdv-parent-wrap .rdv-slots-title{
  display: inline-block !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 16px 0 18px !important;
  padding: 0 0 7px 10px !important;
  border-left: 4px solid var(--rdv-accent) !important;
  border-bottom: 2px solid var(--rdv-accent) !important;
  border-top: 0 !important;
  border-right: 0 !important;
}

.rdv-parent-wrap .rdv-slots-title b{
  font-weight: 900 !important;
}

/* Section INFORMATIONS SUR L’ELEVE : plus d'aération */
.rdv-parent-wrap .rdv-parent-meta label.rdv-field,
.rdv-parent-wrap label.rdv-slot.rdv-field.rdv-custom-field{
  grid-template-columns: 245px minmax(0, 340px) !important;
  column-gap: 24px !important;
  margin: 0 0 17px !important;
  align-items: end !important;
}

.rdv-parent-wrap .rdv-parent-meta .rdv-slot-text,
.rdv-parent-wrap .rdv-parent-meta label.rdv-field > .rdv-slot-text{
  padding: 0 0 9px !important;
  line-height: 1.35 !important;
}

.rdv-parent-wrap .rdv-parent-meta input[type="text"],
.rdv-parent-wrap .rdv-parent-meta input[type="number"],
.rdv-parent-wrap .rdv-parent-meta input[type="date"],
.rdv-parent-wrap .rdv-parent-meta input[type="email"],
.rdv-parent-wrap .rdv-parent-meta input[type="tel"],
.rdv-parent-wrap .rdv-parent-meta select,
.rdv-parent-wrap .rdv-parent-meta textarea{
  margin-top: 2px !important;
}

.rdv-parent-wrap .rdv-moyenne-wrap{
  margin-top: 2px !important;
}

/* Garder le bouton aligné avec la nouvelle colonne de saisie */
.rdv-parent-wrap .rdv-btn,
.rdv-parent-wrap button[type="submit"].rdv-btn,
.rdv-parent-wrap .button.button-primary.rdv-btn{
  margin-left: 269px !important;
}

@media (max-width: 780px){
  .rdv-parent-wrap .rdv-parent-meta label.rdv-field,
  .rdv-parent-wrap label.rdv-slot.rdv-field.rdv-custom-field{
    grid-template-columns: 1fr !important;
    row-gap: 7px !important;
    margin-bottom: 18px !important;
  }
  .rdv-parent-wrap .rdv-btn,
  .rdv-parent-wrap button[type="submit"].rdv-btn,
  .rdv-parent-wrap .button.button-primary.rdv-btn{
    margin-left: 0 !important;
  }
}

/* =====================================================
   v1.5.28 — Historique plus large, sans scroll, sans retour ligne
   -----------------------------------------------------
   - Le panneau Historique sort de la largeur formulaire pour utiliser
     toute la largeur disponible de la page.
   - Colonnes visuellement plus larges sans provoquer de scroll horizontal.
   - Tableau rectangulaire avec traits conservés.
===================================================== */
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"]{
  width:min(1240px, calc(100vw - 32px)) !important;
  max-width:min(1240px, calc(100vw - 32px)) !important;
  margin-left:50% !important;
  transform:translateX(-50%) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 auto !important;
  overflow-x:hidden !important;
  overflow-y:visible !important;
  background:transparent !important;
  box-sizing:border-box !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  border:1px solid #8fa0b8 !important;
  border-radius:0 !important;
  background:transparent !important;
  overflow:hidden !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td{
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  vertical-align:middle !important;
  line-height:1.12 !important;
  padding:6px 6px !important;
  font-size:11px !important;
  border-right:1px solid #8fa0b8 !important;
  border-bottom:1px solid #8fa0b8 !important;
  box-sizing:border-box !important;
}

/* Répartition optimisée des 7 colonnes pour largeur maximale sans scroll */
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th:nth-child(1),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:nth-child(1){ width:12% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th:nth-child(2),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:nth-child(2){ width:20% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th:nth-child(3),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:nth-child(3){ width:16% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th:nth-child(4),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:nth-child(4){ width:12% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th:nth-child(5),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:nth-child(5){ width:11% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:nth-child(6){ width:10% !important; text-align:center !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th:nth-child(7),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:nth-child(7){ width:19% !important; }

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-actions-col,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-action-line,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td:last-child > div{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  flex-wrap:nowrap !important;
  min-width:0 !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table .button,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table button,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table select{
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width: 900px){
  .rdv-parent-wrap .rdv-tab-panel[data-panel="history"]{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
  }
  .rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table th,
  .rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table td{
    font-size:9px !important;
    padding:4px 2px !important;
  }
  .rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table .button,
  .rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table button,
  .rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-table select{
    font-size:8.5px !important;
    padding-left:1px !important;
    padding-right:1px !important;
  }
}


/* =====================================================
   v1.5.29 — Titre CRÉNEAUX DISPONIBLES forcé partout
   -----------------------------------------------------
   Le titre reste visible même si aucun créneau n'existe,
   même après refresh AJAX, et même si le thème le masque.
===================================================== */
.rdv-parent-wrap .rdv-slots-title,
.rdv-parent-wrap .rdv-slots-title-force,
.rdv-parent-wrap .rdv-admin-slots > .rdv-slots-title{
  display:inline-block !important;
  visibility:visible !important;
  opacity:1 !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  text-transform:uppercase !important;
  background:transparent !important;
  color:var(--rdv-blue) !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.25 !important;
  letter-spacing:.25px !important;
  border-left:4px solid var(--rdv-accent) !important;
  border-bottom:2px solid var(--rdv-accent) !important;
  border-top:0 !important;
  border-right:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 0 7px 10px !important;
  margin:16px 0 10px !important;
  width:auto !important;
  max-width:max-content !important;
  text-align:left !important;
}
.rdv-parent-wrap .rdv-slots-title b,
.rdv-parent-wrap .rdv-slots-title-force b{
  font-weight:900 !important;
}


/* =====================================================
   v1.5.30 — Alignement fin des filtres HISTORIQUE
   -----------------------------------------------------
   - Espace après recherche par mot-clé.
   - Champs date poussés légèrement à droite.
   - Lettres JJ/MM/AAAA alignées sur la ligne soulignée.
   - Bouton Reset rouge, sans cadre, aligné en bas.
===================================================== */
.rdv-parent-wrap .rdv-table-tools.rdv-table-tools-advanced{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:8px !important;
  width:100% !important;
  max-width:100% !important;
  overflow:hidden !important;
  margin:14px 0 18px 0 !important;
  padding:0 !important;
  line-height:1 !important;
}

/* Recherche par mot-clé : garde une largeur correcte, puis laisse un vrai espace avant les dates */
.rdv-parent-wrap .rdv-history-filter-dynamic{
  flex:0 1 235px !important;
  width:235px !important;
  min-width:190px !important;
  max-width:235px !important;
  margin:0 24px 0 0 !important;
  align-self:flex-end !important;
}
.rdv-parent-wrap #rdv-history-filter{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
}

/* Groupe dates : plus de margin-left:auto ; on pousse juste un peu après recherche */
.rdv-parent-wrap .rdv-history-global-date-wrap{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:10px !important;
  margin-left:0 !important;
  margin-right:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding:0 !important;
  flex:0 0 auto !important;
  align-self:flex-end !important;
}

/* Tous les champs filtre : même logique de ligne soulignée */
.rdv-parent-wrap #rdv-history-filter-col,
.rdv-parent-wrap #rdv-history-filter-value,
.rdv-parent-wrap #rdv-history-filter,
.rdv-parent-wrap .rdv-filter-secondary,
.rdv-parent-wrap .rdv-filter-date,
.rdv-parent-wrap #rdv-history-global-date-from,
.rdv-parent-wrap #rdv-history-global-date-to{
  height:31px !important;
  min-height:31px !important;
  line-height:31px !important;
  padding:0 4px 1px 4px !important;
  margin:0 !important;
  border:0 !important;
  border-bottom:1.5px solid var(--rdv-blue) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  color:var(--rdv-blue) !important;
  font-size:11px !important;
  font-weight:600 !important;
  vertical-align:bottom !important;
  box-sizing:border-box !important;
}

/* Date : aligne le bas de JJ/MM/AAAA avec le trait souligné */
.rdv-parent-wrap .rdv-filter-date,
.rdv-parent-wrap #rdv-history-global-date-from,
.rdv-parent-wrap #rdv-history-global-date-to{
  flex:0 0 116px !important;
  width:116px !important;
  min-width:116px !important;
  max-width:116px !important;
  position:relative !important;
  top:0 !important;
  padding-top:0 !important;
  padding-bottom:1px !important;
  text-align:left !important;
  align-self:flex-end !important;
}
.rdv-parent-wrap .rdv-filter-date::-webkit-datetime-edit,
.rdv-parent-wrap #rdv-history-global-date-from::-webkit-datetime-edit,
.rdv-parent-wrap #rdv-history-global-date-to::-webkit-datetime-edit{
  padding:0 !important;
  margin:0 !important;
  line-height:31px !important;
  vertical-align:bottom !important;
}
.rdv-parent-wrap .rdv-filter-date::-webkit-datetime-edit-fields-wrapper,
.rdv-parent-wrap #rdv-history-global-date-from::-webkit-datetime-edit-fields-wrapper,
.rdv-parent-wrap #rdv-history-global-date-to::-webkit-datetime-edit-fields-wrapper{
  padding:0 !important;
  margin:0 !important;
  line-height:31px !important;
}

/* Reset : rouge, sans cadre, descendu visuellement sur la même ligne basse que les champs */
.rdv-parent-wrap #rdv-history-reset{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:44px !important;
  height:31px !important;
  min-height:31px !important;
  line-height:31px !important;
  padding:0 2px 1px 2px !important;
  margin:0 0 0 2px !important;
  position:relative !important;
  top:0 !important;
  border:0 !important;
  border-bottom:1.5px solid transparent !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#d63638 !important;
  box-shadow:none !important;
  outline:none !important;
  font-size:11px !important;
  font-weight:800 !important;
  display:inline-flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  align-self:flex-end !important;
  cursor:pointer !important;
  text-decoration:none !important;
}
.rdv-parent-wrap #rdv-history-reset:hover,
.rdv-parent-wrap #rdv-history-reset:focus,
.rdv-parent-wrap #rdv-history-reset:active{
  background:transparent !important;
  color:#b32d2e !important;
  border:0 !important;
  border-bottom:1.5px solid transparent !important;
  box-shadow:none !important;
  outline:none !important;
}

.rdv-parent-wrap #rdv-history-count{
  height:31px !important;
  line-height:31px !important;
  align-self:flex-end !important;
  margin:0 0 0 4px !important;
  font-size:11px !important;
}


/* =====================================================
   SUIVI DES INSCRIPTIONS
===================================================== */
.rdv-parent-wrap .rdv-tab-btn[data-tab="followup"]::before{
  content:"" !important;
  display:none !important;
}
.rdv-parent-wrap .rdv-tab-btn::before{
  display:none !important;
  content:"" !important;
}
.rdv-parent-wrap .rdv-followup-wrap{
  width:100% !important;
  max-width:100% !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  padding:0 !important;
  overflow:visible !important;
}
.rdv-parent-wrap .rdv-followup-section{
  width:100% !important;
  margin:0 0 34px 0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.rdv-parent-wrap .rdv-followup-section + .rdv-followup-section{
  margin-top:42px !important;
}
.rdv-parent-wrap .rdv-followup-title{
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  margin:0 0 16px 0 !important;
  padding:0 0 6px 12px !important;
  background:transparent !important;
  color:var(--rdv-blue) !important;
  border-left:5px solid var(--rdv-accent) !important;
  border-bottom:3px solid var(--rdv-accent) !important;
  border-radius:0 !important;
  font-size:17px !important;
  font-weight:900 !important;
  letter-spacing:.3px !important;
  line-height:1.1 !important;
}
.rdv-parent-wrap .rdv-followup-tools{
  flex-wrap:nowrap !important;
  gap:12px !important;
  align-items:flex-end !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.rdv-parent-wrap .rdv-followup-tools select,
.rdv-parent-wrap .rdv-followup-tools input{
  min-width:0 !important;
  height:34px !important;
  font-size:12px !important;
  border:0 !important;
  border-bottom:2px solid #0F2954 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:2px 4px !important;
}
.rdv-parent-wrap .rdv-followup-filter-col{width:150px !important;}
.rdv-parent-wrap .rdv-followup-keyword{width:230px !important;}
.rdv-parent-wrap .rdv-followup-date-wrap{margin-left:18px !important;}
.rdv-parent-wrap .rdv-followup-date-from,
.rdv-parent-wrap .rdv-followup-date-to{width:132px !important;}
.rdv-parent-wrap .rdv-followup-reset{
  margin:0 0 2px 0 !important;
  padding:0 !important;
  height:28px !important;
  border:0 !important;
  background:transparent !important;
  color:#b00020 !important;
  font-weight:900 !important;
  line-height:28px !important;
  cursor:pointer !important;
}
.rdv-parent-wrap .rdv-followup-count{
  margin-left:auto !important;
  white-space:nowrap !important;
  font-size:12px !important;
}
.rdv-parent-wrap .rdv-followup-table{
  width:100% !important;
  table-layout:fixed !important;
  min-width:0 !important;
  max-width:100% !important;
  border-collapse:collapse !important;
  border:1px solid rgba(15,41,84,.35) !important;
  border-radius:0 !important;
  overflow:hidden !important;
  background:transparent !important;
}
.rdv-parent-wrap .rdv-followup-table th,
.rdv-parent-wrap .rdv-followup-table td{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  border-right:1px solid rgba(15,41,84,.28) !important;
  border-bottom:1px solid rgba(15,41,84,.28) !important;
  background:transparent !important;
  font-size:var(--rdv-table-text-size,12px) !important;
  text-align:left !important;
}
.rdv-parent-wrap .rdv-followup-table th:last-child,
.rdv-parent-wrap .rdv-followup-table td:last-child{border-right:0 !important;}
.rdv-parent-wrap .rdv-followup-empty td{
  text-align:center !important;
  color:#666 !important;
  font-style:italic !important;
  height:46px !important;
}
.rdv-parent-wrap .rdv-followup-pagination .button{
  opacity:.55 !important;
  cursor:not-allowed !important;
}
@media (max-width: 900px){
  .rdv-parent-wrap .rdv-tabs-nav{flex-wrap:wrap !important;}
  .rdv-parent-wrap .rdv-tab-btn{min-width:260px !important;}
  .rdv-parent-wrap .rdv-followup-tools{flex-wrap:wrap !important;}
}

/* v1.5.32 — Suivi inscriptions : colonnes + réglages glisser-déposer */
.rdv-followup-inscription-table{
  width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  background:transparent !important;
}
.rdv-followup-inscription-table th,
.rdv-followup-inscription-table td{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  border:1px solid rgba(0,0,0,.18) !important;
  background:transparent !important;
  padding:7px 8px !important;
  font-size:var(--rdv-table-text-size, 12px) !important;
}
.rdv-followup-inscription-table th{
  font-weight:800 !important;
  color:#0F2954 !important;
  background:rgba(255,255,255,.28) !important;
}
.rdv-followup-inscription-table .rdv-followup-empty td,
.rdv-followup-empty td{
  text-align:center !important;
  color:#646970 !important;
  font-weight:600 !important;
}
.rdv-followup-modal-kv select{
  width:auto !important;
  min-width:210px !important;
  height:30px !important;
  padding:2px 24px 2px 8px !important;
  border:1px solid #8c8f94 !important;
  background:#fff !important;
}
.rdv-followup-settings-table th,
.rdv-followup-settings-table td{
  font-size:12px !important;
  padding:7px 8px !important;
  vertical-align:middle !important;
}
.rdv-followup-settings-table .rdv-drag-handle{
  cursor:grab !important;
  text-align:center !important;
  font-weight:900 !important;
  color:#FF8C00 !important;
  font-size:18px !important;
}
#rdv-followup-sortable-cols tr.is-dragging{
  opacity:.55 !important;
  outline:2px dashed #FF8C00 !important;
}
.rdv-settings-wrap .rdv-followup-settings-table{
  max-width:980px !important;
}


/* v1.5.33 — Forcer l'affichage des colonnes Suivi des inscriptions */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"].is-active{
  display:block !important;
  visibility:visible !important;
}
.rdv-parent-wrap .rdv-followup-section,
.rdv-parent-wrap .rdv-followup-table,
.rdv-parent-wrap .rdv-followup-table thead,
.rdv-parent-wrap .rdv-followup-table tbody,
.rdv-parent-wrap .rdv-followup-table tr,
.rdv-parent-wrap .rdv-followup-table th,
.rdv-parent-wrap .rdv-followup-table td{
  visibility:visible !important;
}
.rdv-parent-wrap .rdv-followup-table{display:table !important; opacity:1 !important;}
.rdv-parent-wrap .rdv-followup-table thead{display:table-header-group !important;}
.rdv-parent-wrap .rdv-followup-table tbody{display:table-row-group !important;}
.rdv-parent-wrap .rdv-followup-table tr{display:table-row !important;}
.rdv-parent-wrap .rdv-followup-table th,
.rdv-parent-wrap .rdv-followup-table td{display:table-cell !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="eleve_full"]{width:18% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="statut"]{width:15% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="civilite"]{width:9% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="niveau"]{width:9% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="responsable_legal"]{width:14% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="parent"]{width:14% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="contact"]{width:10% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="date_naissance"]{width:11% !important;}


/* v1.5.34 — Forcer les libellés des colonnes Suivi des inscriptions */
.rdv-parent-wrap .rdv-followup-table th,
.rdv-parent-wrap .rdv-followup-inscription-table th{
  color:#0F2954 !important;
  background:transparent !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  padding:8px 6px !important;
  height:34px !important;
  min-height:34px !important;
  text-align:center !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  text-indent:0 !important;
  opacity:1 !important;
  visibility:visible !important;
}
.rdv-parent-wrap .rdv-followup-table th .rdv-followup-th-label,
.rdv-parent-wrap .rdv-followup-inscription-table th .rdv-followup-th-label{
  display:inline-block !important;
  color:#0F2954 !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  opacity:1 !important;
  visibility:visible !important;
  white-space:nowrap !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.rdv-parent-wrap .rdv-followup-table th:not(:has(.rdv-followup-th-label))::before{
  content:attr(data-label) !important;
  display:inline-block !important;
  color:#0F2954 !important;
  font-size:12px !important;
  font-weight:900 !important;
  visibility:visible !important;
  opacity:1 !important;
}
.rdv-parent-wrap .rdv-followup-table td{
  color:#0F2954 !important;
  font-size:12px !important;
  line-height:1.2 !important;
}
.rdv-parent-wrap .rdv-followup-empty td{
  color:#646970 !important;
  text-align:left !important;
  padding:10px 8px !important;
}

/* =====================================================
   v1.5.44 — Harmonisation tableau HISTORIQUE avec SUIVI DES INSCRIPTIONS
   Objectif : appliquer exactement le même style tableau du nouvel onglet Suivi
   au tableau Historique des demandes, sans modifier les données ni la logique.
===================================================== */
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap){
  width:100% !important;
  max-width:100% !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  padding:0 !important;
  overflow:visible !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table{
  display:table !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  border:1px solid rgba(0,0,0,.18) !important;
  border-radius:0 !important;
  background:transparent !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table thead{display:table-header-group !important; visibility:visible !important;}
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table tbody{display:table-row-group !important; visibility:visible !important;}
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table tr{display:table-row !important; visibility:visible !important;}
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td{
  display:table-cell !important;
  visibility:visible !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  border:1px solid rgba(0,0,0,.18) !important;
  background:transparent !important;
  padding:7px 8px !important;
  font-size:var(--rdv-table-text-size, 12px) !important;
  line-height:1.2 !important;
  vertical-align:middle !important;
  color:#0F2954 !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th{
  color:#0F2954 !important;
  background:transparent !important;
  font-size:12px !important;
  font-weight:900 !important;
  text-align:center !important;
  height:34px !important;
  min-height:34px !important;
  opacity:1 !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td{
  font-weight:500 !important;
  text-align:left !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(6){
  text-align:center !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:last-child,
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:last-child{
  border-right:1px solid rgba(0,0,0,.18) !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table tbody tr:hover td{
  background:rgba(15,41,84,.05) !important;
}

/* Largeurs adaptées au tableau Historique, dans l'esprit du tableau Suivi */
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:nth-child(1),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(1){ width:10% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:nth-child(2),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(2){ width:20% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:nth-child(3),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(3){ width:14% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:nth-child(4),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(4){ width:18% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:nth-child(5),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(5){ width:12% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:nth-child(6),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(6){ width:10% !important; }
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table th:nth-child(7),
.rdv-parent-wrap .rdv-tab-panel[data-panel="history"] .rdv-parent-history:not(.rdv-followup-wrap) .rdv-table td:nth-child(7){ width:16% !important; }

/* =====================================================
   v1.5.47 — Suivi des inscriptions : tableau très large
   Objectif : permettre l'affichage des colonnes déplacées
   sans les masquer par manque de largeur.
===================================================== */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"],
.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"]{
  width:100% !important;
  max-width:none !important;
  overflow:visible !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] .rdv-followup-wrap,
.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"] .rdv-followup-wrap{
  width:min(96vw, 1680px) !important;
  max-width:min(96vw, 1680px) !important;
  margin-left:50% !important;
  margin-right:0 !important;
  transform:translateX(-50%) !important;
  overflow:visible !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] .rdv-followup-section,
.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"] .rdv-followup-section{
  width:100% !important;
  max-width:100% !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] .rdv-followup-table,
.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"] .rdv-followup-table,
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] .rdv-followup-inscription-table,
.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"] .rdv-followup-inscription-table{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] .rdv-followup-table th,
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] .rdv-followup-table td,
.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"] .rdv-followup-table th,
.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"] .rdv-followup-table td{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  padding-left:8px !important;
  padding-right:8px !important;
}

/* Répartition plus lisible des 13 colonnes du tableau ENTRETIEN ET VISITE */
.rdv-parent-wrap .rdv-followup-table th[data-col="class_level"]{width:7% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="civilite"]{width:6% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="birth_year"]{width:7% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="responsable_legal"]{width:10% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="parent"]{width:8% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="eleve_full"]{width:10% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="etablissement_frequente"]{width:13% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="moyenne"]{width:6% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="contact"]{width:7% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="entretien"]{width:9% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="formulaire"]{width:7% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="presence"]{width:6% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="action"]{width:13% !important;}

.rdv-parent-wrap .rdv-followup-table td[data-col="action"],
.rdv-parent-wrap .rdv-followup-table td:last-child{
  min-width:150px !important;
}

@media (max-width: 900px){
  .rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] .rdv-followup-wrap,
  .rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"] .rdv-followup-wrap{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    transform:none !important;
  }
}

/* v1.5.48 — Suivi inscriptions : colonnes renommées, statut clignotant, largeurs ajustées */
.rdv-parent-wrap .rdv-followup-table th[data-col="class_level"],
.rdv-parent-wrap .rdv-followup-table td[data-col="class_level"]{width:5.5% !important; max-width:5.5% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="civilite"],
.rdv-parent-wrap .rdv-followup-table td[data-col="civilite"]{width:6% !important; max-width:6% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="birth_year"],
.rdv-parent-wrap .rdv-followup-table td[data-col="birth_year"]{width:5.5% !important; max-width:5.5% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="parent"],
.rdv-parent-wrap .rdv-followup-table td[data-col="parent"]{width:7% !important; max-width:7% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="moyenne"],
.rdv-parent-wrap .rdv-followup-table td[data-col="moyenne"]{width:5.5% !important; max-width:5.5% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="statut"],
.rdv-parent-wrap .rdv-followup-table td[data-col="statut"]{width:8% !important; max-width:8% !important; text-align:center !important;}
.rdv-parent-wrap .rdv-followup-statut-select{
  width:100% !important;
  max-width:100% !important;
  height:28px !important;
  min-height:28px !important;
  padding:0 20px 0 6px !important;
  border:1px solid #ff8a8a !important;
  border-radius:0 !important;
  background:#ffeded !important;
  color:#d00000 !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-transform:lowercase !important;
  line-height:26px !important;
  box-shadow:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.rdv-parent-wrap .rdv-followup-statut-entretien{
  animation: rdvFollowupStatutBlink 1.2s ease-in-out infinite;
}
@keyframes rdvFollowupStatutBlink{
  0%,100%{background:#ffeded !important;color:#d00000 !important;}
  50%{background:#f44336 !important;color:#fff !important;}
}
.rdv-parent-wrap .rdv-followup-table td,
.rdv-parent-wrap .rdv-followup-table th{vertical-align:middle !important;}


/* v1.5.49 — Suivi inscriptions : colonnes masquées du tableau seulement, actions simples, statut rouge vif */
.rdv-parent-wrap .rdv-followup-table th[data-col="parent"],
.rdv-parent-wrap .rdv-followup-table td[data-col="parent"],
.rdv-parent-wrap .rdv-followup-table th[data-col="etablissement_frequente"],
.rdv-parent-wrap .rdv-followup-table td[data-col="etablissement_frequente"],
.rdv-parent-wrap .rdv-followup-table th[data-col="moyenne"],
.rdv-parent-wrap .rdv-followup-table td[data-col="moyenne"]{
  display:none !important;
  visibility:hidden !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .button,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] button,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .button-small,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-toggle-form,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-edit-slot,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-cancel-rdv{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  outline:none !important;
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  height:auto !important;
  line-height:1.25 !important;
  color:#0F2954 !important;
  font-size:10.5px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  cursor:pointer !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .button:hover,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] button:hover{
  color:#FF8C00 !important;
  text-decoration:underline !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-actions-col{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
  align-items:flex-start !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-action-line{
  padding:0 !important;
  margin:0 !important;
  line-height:1.25 !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="statut"]{
  text-align:center !important;
}
.rdv-parent-wrap .rdv-followup-statut-select,
.rdv-parent-wrap .rdv-followup-statut-select option{
  background:#ff0000 !important;
  color:#ffffff !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-size:10.5px !important;
  font-weight:900 !important;
  text-transform:lowercase !important;
}
.rdv-parent-wrap .rdv-followup-statut-select{
  animation: rdvFollowupStatutVifBlink .9s ease-in-out infinite !important;
}
@keyframes rdvFollowupStatutVifBlink{
  0%,100%{background:#ff0000 !important;color:#ffffff !important;opacity:1;}
  50%{background:#ff4d4d !important;color:#ffffff !important;opacity:.62;}
}

/* v1.5.50 — Suivi inscriptions : actions sur une seule ligne, centrées */
.rdv-parent-wrap .rdv-followup-table td[data-col="action"]{
  text-align:center !important;
  white-space:nowrap !important;
  vertical-align:middle !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-actions-col{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  width:100% !important;
  white-space:nowrap !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-action-line{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-edit-msg{
  display:none !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-action-line:not(:first-child)::before{
  content:'-' !important;
  display:inline-block !important;
  margin:0 6px 0 0 !important;
  color:#777 !important;
  font-weight:400 !important;
}
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .button,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] button,
.rdv-parent-wrap .rdv-followup-table td[data-col="action"] .rdv-action-placeholder{
  display:inline !important;
  white-space:nowrap !important;
  font-size:10px !important;
  line-height:1 !important;
}

/* v1.5.51 — Suivi inscriptions : centrage lignes, colonnes compactes, statut majuscule */
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table th,
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table td{
  text-align:center !important;
  vertical-align:middle !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table th[data-col="civilite"],
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table td[data-col="civilite"]{
  width:52px !important;
  max-width:52px !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table th[data-col="class_level"],
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table td[data-col="class_level"]{
  width:50px !important;
  max-width:50px !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table th[data-col="birth_year"],
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table td[data-col="birth_year"]{
  width:48px !important;
  max-width:48px !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table th[data-col="contact"],
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table td[data-col="contact"]{
  width:58px !important;
  max-width:58px !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table th[data-col="moyenne"],
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table td[data-col="moyenne"]{
  width:58px !important;
  max-width:58px !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table th[data-col="statut"],
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-table td[data-col="statut"]{
  width:110px !important;
  max-width:110px !important;
  text-align:center !important;
}

.rdv-parent-wrap .rdv-followup-statut-select,
.rdv-parent-wrap .rdv-followup-statut-select option{
  text-transform:uppercase !important;
  text-align:center !important;
  font-weight:900 !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-followup-statut-select{
  margin-left:auto !important;
  margin-right:auto !important;
  display:block !important;
}

.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-actions-col,
.rdv-parent-wrap [data-followup-section="entretien-visite"] .rdv-action-line{
  justify-content:center !important;
  text-align:center !important;
}

/* v1.5.52 — Ordre tableaux Suivi des inscriptions : Demande d'inscription puis Entretien et visite. */

/* v1.5.54 — filtrage réel : cache les lignes même si le thème force display */
.rdv-parent-wrap tr.rdv-filter-hidden,
.rdv-parent-wrap tr.rdv-filter-hidden td,
.rdv-parent-wrap tr.rdv-filter-hidden th{
  display:none !important;
  visibility:hidden !important;
}
.rdv-parent-wrap .rdv-no-result-row td,
.rdv-parent-wrap .rdv-history-no-result td,
.rdv-parent-wrap .rdv-followup-no-result td{
  text-align:center !important;
  font-weight:700 !important;
  color:#b00020 !important;
  background:transparent !important;
}

/* v1.5.57 statut disabled */
.rdv-followup-statut-select:disabled{opacity:.65!important;cursor:wait!important;}



/* v1.5.61 — filtres et tableaux : masquage réel */
.rdv-filter-hidden,
tr.rdv-filter-hidden,
.rdv-followup-section tr.rdv-filter-hidden,
.rdv-parent-history tr.rdv-filter-hidden{
  display:none !important;
}
.rdv-followup-no-result-final td,
.rdv-history-no-result-final td{
  background:transparent !important;
  color:#0F2954 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}
.rdv-followup-section tbody tr.rdv-followup-row td{
  text-align:center !important;
  vertical-align:middle !important;
}
.rdv-followup-statut-select{
  text-align:center !important;
  text-align-last:center !important;
  text-transform:uppercase !important;
}
.rdv-followup-statut-select option{
  text-transform:uppercase !important;
}


/* v1.5.63 — FILTRES FORCÉS FINAUX */
.rdv-parent-wrap tr.rdv-force-hidden,
.rdv-parent-wrap tr.rdv-force-hidden > td,
.rdv-parent-wrap tr.rdv-force-hidden > th{
  display:none !important;
  visibility:hidden !important;
}
.rdv-parent-wrap tr.rdv-force-no-result > td{
  display:table-cell !important;
  visibility:visible !important;
  text-align:left !important;
  font-weight:700 !important;
  color:#0F2954 !important;
  background:transparent !important;
  white-space:nowrap !important;
}

/* v1.5.79 — Test d'entrée */
.rdv-parent-wrap .rdv-test-entree-btn,
.rdv-parent-wrap .rdv-test-entree-planning-toggle{
  background:#f28c00!important;
  color:#fff!important;
  border:0!important;
  border-radius:4px!important;
  padding:6px 10px!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
#rdv-test-entree-modal{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
}
#rdv-test-entree-modal .rdv-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(0,0,0,.35)!important;
}
#rdv-test-entree-modal .rdv-modal-card{
  position:relative!important;
  width:min(460px,calc(100vw - 32px))!important;
  margin:8vh auto!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid #ddd!important;
  border-radius:6px!important;
  box-shadow:0 8px 35px rgba(0,0,0,.18)!important;
  padding:16px!important;
}
#rdv-test-entree-modal .rdv-modal-head,
#rdv-test-entree-modal .rdv-modal-foot{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:10px!important;
}
#rdv-test-entree-modal input[type="text"],
#rdv-test-entree-modal input[type="date"],
#rdv-test-entree-modal input[type="time"]{
  width:100%!important;
  max-width:100%!important;
}
.rdv-parent-wrap .rdv-test-entree-status{
  display:inline-block!important;
  padding:3px 7px!important;
  background:#e9f2ff!important;
  color:#0F2954!important;
  border-radius:3px!important;
  font-weight:900!important;
  font-size:11px!important;
}


/* v1.5.84 — Test d'entrée : modal au-dessus du détail, affichage identique simulation */
#rdv-test-entree-modal.rdv-test-entree-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:none;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  background:rgba(0,0,0,.38)!important;
  box-sizing:border-box!important;
}
#rdv-test-entree-modal.rdv-test-entree-modal.is-open{
  display:flex!important;
}
#rdv-test-entree-modal .rdv-modal-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:2147483001!important;
  background:transparent!important;
}
#rdv-test-entree-modal .rdv-modal-card{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  transform:none!important;
  z-index:2147483002!important;
  width:min(520px,calc(100vw - 40px))!important;
  max-height:calc(100vh - 50px)!important;
  margin:0!important;
  background:#fff!important;
  border:1px solid #dcdcde!important;
  border-radius:0!important;
  box-shadow:0 16px 45px rgba(0,0,0,.22)!important;
  overflow:hidden!important;
}
#rdv-test-entree-modal .rdv-modal-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  background:#fff!important;
  color:#1d2327!important;
  border-bottom:0!important;
  padding:18px 18px 10px!important;
}
#rdv-test-entree-modal .rdv-modal-title{
  color:#1d2327!important;
  font-size:16px!important;
  font-weight:800!important;
}
#rdv-test-entree-modal .rdv-test-entree-close{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#0F2954!important;
  font-size:18px!important;
  line-height:1!important;
  padding:2px 4px!important;
}
#rdv-test-entree-modal .rdv-modal-body{
  padding:8px 18px 18px!important;
  background:#fff!important;
  overflow:visible!important;
}
#rdv-test-entree-modal .rdv-slot.rdv-field{
  width:100%!important;
  margin:0 0 14px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#rdv-test-entree-modal .rdv-slot-text{
  display:block!important;
  margin:0 0 6px!important;
  padding:0!important;
  background:transparent!important;
  color:#1d2327!important;
  font-size:13px!important;
  font-weight:700!important;
}
#rdv-test-entree-modal input[type="text"],
#rdv-test-entree-modal input[type="date"],
#rdv-test-entree-modal input[type="time"]{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:40px!important;
  line-height:40px!important;
  padding:0 10px!important;
  color:#1d2327!important;
  background:#fff!important;
  border:1px solid #dcdcde!important;
  border-radius:3px!important;
  box-shadow:none!important;
  outline:none!important;
  font-size:14px!important;
  box-sizing:border-box!important;
  appearance:auto!important;
  -webkit-appearance:auto!important;
}
#rdv-test-entree-modal .rdv-modal-foot{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:10px!important;
  background:#fff!important;
  border-top:1px solid #f0f0f1!important;
  padding:14px 18px 18px!important;
}
#rdv-test-entree-modal #rdv-test-entree-confirm{
  background:#f28c00!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:8px 18px!important;
  font-weight:800!important;
}
#rdv-test-entree-modal .rdv-modal-foot .rdv-test-entree-close{
  background:#fff!important;
  color:#0F2954!important;
  border:1px solid #dcdcde!important;
  border-radius:0!important;
  font-size:13px!important;
  padding:7px 16px!important;
}


/* v1.5.87 — Suivi/Élèves : Présence et Action déplacées dans le modal Détails demande */
.rdv-parent-wrap .rdv-followup-table th[data-col="presence"],
.rdv-parent-wrap .rdv-followup-table td[data-col="presence"],
.rdv-parent-wrap .rdv-followup-table th[data-col="action"],
.rdv-parent-wrap .rdv-followup-table td[data-col="action"]{
  display:none !important;
}
#rdv-parent-card .rdv-detail-tabs{
  display:flex !important;
  gap:0 !important;
  border-bottom:1px solid #d9e1ef !important;
  margin:0 0 14px !important;
}
#rdv-parent-card .rdv-detail-tab-btn{
  flex:1 1 0 !important;
  height:36px !important;
  border:0 !important;
  border-right:1px solid #d9e1ef !important;
  background:#f6f8fb !important;
  color:#0F2954 !important;
  font-weight:800 !important;
  font-size:12px !important;
  cursor:pointer !important;
  border-radius:0 !important;
}
#rdv-parent-card .rdv-detail-tab-btn:last-child{border-right:0 !important;}
#rdv-parent-card .rdv-detail-tab-btn.is-active{
  background:#fff !important;
  color:#0F2954 !important;
  border-bottom:3px solid #0F2954 !important;
}
#rdv-parent-card .rdv-detail-tab-panel{display:none !important;}
#rdv-parent-card .rdv-detail-tab-panel.is-active{display:block !important;}
#rdv-parent-card .rdv-modal-subtitle{
  font-weight:900 !important;
  color:#0F2954 !important;
  margin:4px 0 12px !important;
}
#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  padding:12px !important;
  border:1px solid #e1e6ef !important;
  background:#fff !important;
  border-radius:0 !important;
}
#rdv-parent-card .rdv-modal-actions-box .rdv-actions-col{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}
#rdv-parent-card .rdv-modal-actions-box .rdv-action-line{
  display:inline-flex !important;
  margin:0 !important;
}


/* v1.5.88 — Tables Suivi/Élèves : colonnes déplacées dans le modal, largeur uniforme */
.rdv-parent-wrap .rdv-followup-table th[data-col="action"],
.rdv-parent-wrap .rdv-followup-table td[data-col="action"],
.rdv-parent-wrap .rdv-followup-table th[data-col="presence"],
.rdv-parent-wrap .rdv-followup-table td[data-col="presence"]{
  display:none !important;
  visibility:hidden !important;
}
.rdv-parent-wrap .rdv-followup-section[data-followup-section="demande-inscription"] .rdv-followup-table,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="entretien-visite"] .rdv-followup-table{
  table-layout:fixed !important;
  width:100% !important;
}
.rdv-parent-wrap .rdv-followup-section[data-followup-section="demande-inscription"] .rdv-followup-table th,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="demande-inscription"] .rdv-followup-table td,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="entretien-visite"] .rdv-followup-table th,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="entretien-visite"] .rdv-followup-table td{
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  margin:0 !important;
  white-space:nowrap !important;
}

/* v1.5.89 — correction définitive colonnes Suivi : ordre et largeurs identiques */
.rdv-parent-wrap .rdv-followup-section[data-followup-section="demande-inscription"] .rdv-followup-table,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="entretien-visite"] .rdv-followup-table,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="eleves-inscrits"] .rdv-followup-table,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="eleves-radies"] .rdv-followup-table{
  table-layout:fixed !important;
  width:100% !important;
}
.rdv-parent-wrap .rdv-followup-table th[data-col="eleve_full"],
.rdv-parent-wrap .rdv-followup-table td[data-col="eleve_full"]{width:13% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="civilite"],
.rdv-parent-wrap .rdv-followup-table td[data-col="civilite"]{width:8% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="class_level"],
.rdv-parent-wrap .rdv-followup-table td[data-col="class_level"]{width:8% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="birth_year"],
.rdv-parent-wrap .rdv-followup-table td[data-col="birth_year"]{width:7% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="responsable_legal"],
.rdv-parent-wrap .rdv-followup-table td[data-col="responsable_legal"]{width:14% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="contact"],
.rdv-parent-wrap .rdv-followup-table td[data-col="contact"]{width:9% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="entretien"],
.rdv-parent-wrap .rdv-followup-table td[data-col="entretien"]{width:13% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="formulaire"],
.rdv-parent-wrap .rdv-followup-table td[data-col="formulaire"]{width:12% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="statut"],
.rdv-parent-wrap .rdv-followup-table td[data-col="statut"]{width:16% !important;}
.rdv-parent-wrap .rdv-followup-table th[data-col="presence"],
.rdv-parent-wrap .rdv-followup-table td[data-col="presence"],
.rdv-parent-wrap .rdv-followup-table th[data-col="action"],
.rdv-parent-wrap .rdv-followup-table td[data-col="action"]{
  display:none !important;
  width:0 !important;
  max-width:0 !important;
  padding:0 !important;
  border:0 !important;
  visibility:hidden !important;
}


/* v1.5.90 — STYLE MODAL UNIQUEMENT
   Ne modifie aucune logique JS/PHP : uniquement l'apparence du modal existant. */
#rdv-parent-card.is-open{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  background:transparent !important;
}

#rdv-parent-card .rdv-modal-backdrop{
  background:rgba(15,41,84,.30) !important;
  backdrop-filter:blur(2px) !important;
}

#rdv-parent-card .rdv-modal-card{
  width:min(860px, calc(100vw - 40px)) !important;
  max-width:min(860px, calc(100vw - 40px)) !important;
  max-height:calc(100vh - 48px) !important;
  border-radius:0 !important;
  border:1px solid #d7e1ef !important;
  border-top:4px solid #0F2954 !important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%) !important;
  box-shadow:0 22px 60px rgba(15,41,84,.22) !important;
  overflow:hidden !important;
}

#rdv-parent-card .rdv-modal-head{
  background:#fff !important;
  border-bottom:1px solid #e8edf5 !important;
  color:#0b1f44 !important;
  padding:18px 20px 14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
}

#rdv-parent-card .rdv-modal-title{
  color:#0b1f44 !important;
  font-size:20px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  margin:0 !important;
}

#rdv-parent-card .rdv-modal-close,
#rdv-parent-card .rdv-card-close{
  border-radius:0 !important;
  box-shadow:none !important;
  font-weight:700 !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  min-width:38px !important;
  width:38px !important;
  height:38px !important;
  padding:0 !important;
  border:1px solid #d9e2ef !important;
  background:#fff !important;
  color:#0F2954 !important;
  font-size:18px !important;
  line-height:36px !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-head .rdv-card-close:hover{
  background:#f5f8fc !important;
  border-color:#c6d4e8 !important;
  color:#0a2248 !important;
}

#rdv-parent-card .rdv-modal-body{
  background:#fbfcff !important;
  padding:18px 20px !important;
  overflow:auto !important;
  font-size:var(--rdv-modal-text-size,14px) !important;
}

#rdv-parent-card .rdv-modal-foot{
  background:#fff !important;
  border-top:1px solid #e8edf5 !important;
  padding:14px 20px !important;
  display:flex !important;
  justify-content:flex-end !important;
  gap:10px !important;
}

#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  min-width:90px !important;
  min-height:40px !important;
  height:40px !important;
  padding:0 18px !important;
  border-radius:0 !important;
  border:1px solid #0F2954 !important;
  background:#0F2954 !important;
  color:#fff !important;
  font-weight:700 !important;
  line-height:38px !important;
}

#rdv-parent-card .rdv-modal-foot .button:hover,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-foot .rdv-card-close:hover{
  background:#17376f !important;
  border-color:#17376f !important;
  color:#fff !important;
}

/* Onglets dans le modal */
#rdv-parent-card .rdv-detail-tabs{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:0 !important;
  margin:0 0 18px !important;
  border:1px solid #d9e3f0 !important;
  background:#fff !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  height:44px !important;
  border:0 !important;
  border-right:1px solid #d9e3f0 !important;
  background:#f7f9fc !important;
  color:#23395d !important;
  font-size:13px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  border-radius:0 !important;
}

#rdv-parent-card .rdv-detail-tab-btn:last-child{
  border-right:0 !important;
}

#rdv-parent-card .rdv-detail-tab-btn.is-active{
  background:#fff !important;
  color:#0F2954 !important;
  box-shadow:inset 0 -3px 0 #0F2954 !important;
}

#rdv-parent-card .rdv-detail-tab-panel{
  border:1px solid #e0e7f0 !important;
  background:#fff !important;
  padding:16px !important;
}

#rdv-parent-card .rdv-modal-subtitle{
  margin:0 0 12px !important;
  font-size:16px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
}

#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  border:1px solid #e2e8f0 !important;
  background:#f9fbfe !important;
  padding:14px !important;
  border-radius:0 !important;
}

/* Tableau Détails */
#rdv-parent-card table.rdv-kv{
  width:100% !important;
  border-collapse:collapse !important;
  background:#fff !important;
  border:1px solid #e2e8f0 !important;
  margin:0 !important;
}

#rdv-parent-card table.rdv-kv tr:nth-child(odd) td{
  background:#fcfdff !important;
}

#rdv-parent-card table.rdv-kv td{
  padding:11px 12px !important;
  border-bottom:1px solid #edf2f7 !important;
  vertical-align:top !important;
  color:#1d2327 !important;
}

#rdv-parent-card table.rdv-kv tr:last-child td{
  border-bottom:0 !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width:30% !important;
  font-weight:800 !important;
  color:#0F2954 !important;
  background:#f7f9fc !important;
}

#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  min-height:38px !important;
  padding:0 14px !important;
  border-radius:0 !important;
  font-weight:700 !important;
}

@media (max-width: 900px){
  #rdv-parent-card.is-open{
    padding:14px !important;
    align-items:flex-start !important;
  }

  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 28px) !important;
    max-width:calc(100vw - 28px) !important;
    max-height:calc(100vh - 28px) !important;
  }

  #rdv-parent-card .rdv-modal-head{
    padding:16px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    padding:14px !important;
  }

  #rdv-parent-card .rdv-modal-title{
    font-size:18px !important;
  }

  #rdv-parent-card .rdv-detail-tabs{
    grid-template-columns:1fr !important;
  }

  #rdv-parent-card .rdv-detail-tab-btn{
    border-right:0 !important;
    border-bottom:1px solid #d9e3f0 !important;
  }

  #rdv-parent-card .rdv-detail-tab-btn:last-child{
    border-bottom:0 !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    width:38% !important;
  }
}

@media (max-width: 640px){
  #rdv-parent-card table.rdv-kv,
  #rdv-parent-card table.rdv-kv tbody,
  #rdv-parent-card table.rdv-kv tr,
  #rdv-parent-card table.rdv-kv td{
    display:block !important;
    width:100% !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    border-bottom:0 !important;
    padding-bottom:4px !important;
  }

  #rdv-parent-card table.rdv-kv td + td{
    padding-top:0 !important;
  }
}


/* v1.5.91 — STYLE MODAL UNIQUEMENT : plus petit, moderne, professionnel, simple.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */
#rdv-parent-card.is-open{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:18px !important;
  background:transparent !important;
}

#rdv-parent-card .rdv-modal-backdrop{
  background:rgba(15,23,42,.28) !important;
  backdrop-filter:blur(1.5px) !important;
}

#rdv-parent-card .rdv-modal-card{
  width:min(640px, calc(100vw - 36px)) !important;
  max-width:min(640px, calc(100vw - 36px)) !important;
  max-height:calc(100vh - 42px) !important;
  border-radius:0 !important;
  border:1px solid #d8dee8 !important;
  border-top:3px solid #0F2954 !important;
  background:#ffffff !important;
  box-shadow:0 16px 45px rgba(15,23,42,.18) !important;
  overflow:hidden !important;
}

#rdv-parent-card .rdv-modal-head{
  background:#ffffff !important;
  border-bottom:1px solid #edf0f5 !important;
  color:#0f172a !important;
  padding:13px 16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}

#rdv-parent-card .rdv-modal-title{
  color:#0f172a !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  margin:0 !important;
}

#rdv-parent-card .rdv-modal-close,
#rdv-parent-card .rdv-card-close{
  border-radius:0 !important;
  box-shadow:none !important;
  font-weight:700 !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  min-width:32px !important;
  width:32px !important;
  height:32px !important;
  padding:0 !important;
  border:1px solid #d8dee8 !important;
  background:#fff !important;
  color:#475569 !important;
  font-size:15px !important;
  line-height:30px !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-head .rdv-card-close:hover{
  background:#f8fafc !important;
  border-color:#cbd5e1 !important;
  color:#0F2954 !important;
}

#rdv-parent-card .rdv-modal-body{
  background:#fbfcfe !important;
  padding:14px 16px !important;
  overflow:auto !important;
  font-size:13px !important;
}

#rdv-parent-card .rdv-modal-foot{
  background:#ffffff !important;
  border-top:1px solid #edf0f5 !important;
  padding:11px 16px !important;
  display:flex !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  min-width:76px !important;
  min-height:34px !important;
  height:34px !important;
  padding:0 14px !important;
  border-radius:0 !important;
  border:1px solid #0F2954 !important;
  background:#0F2954 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:32px !important;
}

#rdv-parent-card .rdv-modal-foot .button:hover,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-foot .rdv-card-close:hover{
  background:#17376f !important;
  border-color:#17376f !important;
  color:#fff !important;
}

/* Onglets du modal : compact pro */
#rdv-parent-card .rdv-detail-tabs{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:0 !important;
  margin:0 0 12px !important;
  border:1px solid #e1e7ef !important;
  background:#fff !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  height:36px !important;
  border:0 !important;
  border-right:1px solid #e1e7ef !important;
  background:#f8fafc !important;
  color:#334155 !important;
  font-size:12px !important;
  font-weight:750 !important;
  cursor:pointer !important;
  border-radius:0 !important;
}

#rdv-parent-card .rdv-detail-tab-btn:last-child{
  border-right:0 !important;
}

#rdv-parent-card .rdv-detail-tab-btn.is-active{
  background:#ffffff !important;
  color:#0F2954 !important;
  box-shadow:inset 0 -2px 0 #0F2954 !important;
}

/* Contenu compact */
#rdv-parent-card .rdv-detail-tab-panel{
  border:1px solid #e5eaf1 !important;
  background:#fff !important;
  padding:12px !important;
}

#rdv-parent-card .rdv-modal-subtitle{
  margin:0 0 9px !important;
  font-size:14px !important;
  font-weight:800 !important;
  color:#0F2954 !important;
}

#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  border:1px solid #e5eaf1 !important;
  background:#f8fafc !important;
  padding:11px !important;
  border-radius:0 !important;
}

/* Tableau Détails : plus compact */
#rdv-parent-card table.rdv-kv{
  width:100% !important;
  border-collapse:collapse !important;
  background:#fff !important;
  border:1px solid #e5eaf1 !important;
  margin:0 !important;
}

#rdv-parent-card table.rdv-kv tr:nth-child(odd) td{
  background:#fcfdff !important;
}

#rdv-parent-card table.rdv-kv td{
  padding:8px 10px !important;
  border-bottom:1px solid #edf2f7 !important;
  vertical-align:top !important;
  color:#1f2937 !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

#rdv-parent-card table.rdv-kv tr:last-child td{
  border-bottom:0 !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width:32% !important;
  font-weight:750 !important;
  color:#0F2954 !important;
  background:#f8fafc !important;
}

#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  min-height:32px !important;
  padding:0 11px !important;
  border-radius:0 !important;
  font-size:12px !important;
  font-weight:700 !important;
}

/* Mobile */
@media (max-width: 760px){
  #rdv-parent-card.is-open{
    padding:10px !important;
    align-items:flex-start !important;
  }

  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    max-height:calc(100vh - 20px) !important;
  }

  #rdv-parent-card .rdv-modal-head{
    padding:12px 13px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    padding:12px !important;
  }

  #rdv-parent-card .rdv-modal-title{
    font-size:15px !important;
  }

  #rdv-parent-card .rdv-detail-tabs{
    grid-template-columns:1fr !important;
  }

  #rdv-parent-card .rdv-detail-tab-btn{
    border-right:0 !important;
    border-bottom:1px solid #e1e7ef !important;
  }

  #rdv-parent-card .rdv-detail-tab-btn:last-child{
    border-bottom:0 !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    width:38% !important;
  }
}

@media (max-width: 560px){
  #rdv-parent-card table.rdv-kv,
  #rdv-parent-card table.rdv-kv tbody,
  #rdv-parent-card table.rdv-kv tr,
  #rdv-parent-card table.rdv-kv td{
    display:block !important;
    width:100% !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    border-bottom:0 !important;
    padding-bottom:3px !important;
  }

  #rdv-parent-card table.rdv-kv td + td{
    padding-top:0 !important;
  }
}


/* v1.5.92 — STYLE MODAL UNIQUEMENT : intégration orange moderne/pro.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */
#rdv-parent-card .rdv-modal-card{
  border-top:3px solid #ff8a00 !important;
  box-shadow:0 16px 45px rgba(15,23,42,.18), 0 0 0 1px rgba(255,138,0,.06) !important;
}

#rdv-parent-card .rdv-modal-head{
  background:linear-gradient(90deg,#fff7ed 0%,#ffffff 62%) !important;
  border-bottom:1px solid #fed7aa !important;
}

#rdv-parent-card .rdv-modal-title{
  color:#7c2d12 !important;
}

#rdv-parent-card .rdv-modal-title::before{
  content:"";
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:8px;
  background:#ff8a00;
  vertical-align:middle;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  border-color:#fed7aa !important;
  color:#9a3412 !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-head .rdv-card-close:hover{
  background:#fff7ed !important;
  border-color:#fdba74 !important;
  color:#c2410c !important;
}

#rdv-parent-card .rdv-detail-tab-btn.is-active{
  color:#c2410c !important;
  box-shadow:inset 0 -2px 0 #ff8a00 !important;
}

#rdv-parent-card .rdv-detail-tab-btn:hover{
  color:#c2410c !important;
  background:#fff7ed !important;
}

#rdv-parent-card .rdv-modal-subtitle{
  color:#c2410c !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  color:#9a3412 !important;
  background:#fff7ed !important;
}

#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  border-color:#ff8a00 !important;
  background:#ff8a00 !important;
  color:#ffffff !important;
}

#rdv-parent-card .rdv-modal-foot .button:hover,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-foot .rdv-card-close:hover{
  background:#ea7600 !important;
  border-color:#ea7600 !important;
  color:#ffffff !important;
}

#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  border-color:#ff8a00 !important;
}

#rdv-parent-card .rdv-modal-actions-box .button-primary,
#rdv-parent-card .rdv-modal-actions-box button.button-primary{
  background:#ff8a00 !important;
  border-color:#ff8a00 !important;
  color:#ffffff !important;
}

#rdv-parent-card .rdv-modal-actions-box .button-primary:hover,
#rdv-parent-card .rdv-modal-actions-box button.button-primary:hover{
  background:#ea7600 !important;
  border-color:#ea7600 !important;
}


/* v1.5.93 — STYLE MODAL UNIQUEMENT : nouveau style complet.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */

/* Overlay plus propre */
#rdv-parent-card.is-open{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:20px !important;
  background:transparent !important;
}

#rdv-parent-card .rdv-modal-backdrop{
  background:rgba(2,6,23,.48) !important;
  backdrop-filter:blur(4px) !important;
}

/* Modal type application moderne */
#rdv-parent-card .rdv-modal-card{
  width:min(720px, calc(100vw - 36px)) !important;
  max-width:min(720px, calc(100vw - 36px)) !important;
  max-height:calc(100vh - 40px) !important;
  border:0 !important;
  border-radius:14px !important;
  background:#f8fafc !important;
  box-shadow:0 28px 80px rgba(0,0,0,.34) !important;
  overflow:hidden !important;
}

/* En-tête totalement différent : bleu nuit + orange */
#rdv-parent-card .rdv-modal-head{
  position:relative !important;
  background:linear-gradient(135deg,#0F2954 0%,#142f63 58%,#ff8a00 100%) !important;
  border-bottom:0 !important;
  color:#ffffff !important;
  padding:18px 20px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
}

#rdv-parent-card .rdv-modal-head::after{
  content:"" !important;
  position:absolute !important;
  left:20px !important;
  right:20px !important;
  bottom:0 !important;
  height:1px !important;
  background:rgba(255,255,255,.18) !important;
}

#rdv-parent-card .rdv-modal-title{
  color:#ffffff !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1.25 !important;
  letter-spacing:.2px !important;
  margin:0 !important;
}

#rdv-parent-card .rdv-modal-title::before{
  content:"" !important;
  display:inline-block !important;
  width:10px !important;
  height:10px !important;
  margin-right:9px !important;
  border-radius:50% !important;
  background:#ffffff !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.20) !important;
  vertical-align:middle !important;
}

/* Bouton fermer header */
#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  min-width:34px !important;
  width:34px !important;
  height:34px !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.34) !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.12) !important;
  color:#ffffff !important;
  font-size:16px !important;
  line-height:32px !important;
  box-shadow:none !important;
  font-weight:800 !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-head .rdv-card-close:hover{
  background:rgba(255,255,255,.22) !important;
  border-color:rgba(255,255,255,.70) !important;
  color:#ffffff !important;
}

/* Corps plus moderne */
#rdv-parent-card .rdv-modal-body{
  background:#f8fafc !important;
  padding:18px !important;
  overflow:auto !important;
  font-size:13px !important;
}

/* Pied plus léger */
#rdv-parent-card .rdv-modal-foot{
  background:#ffffff !important;
  border-top:1px solid #e5e7eb !important;
  padding:13px 18px !important;
  display:flex !important;
  justify-content:flex-end !important;
  gap:10px !important;
}

#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  min-width:90px !important;
  min-height:36px !important;
  height:36px !important;
  padding:0 16px !important;
  border-radius:10px !important;
  border:0 !important;
  background:#0F2954 !important;
  color:#ffffff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:36px !important;
  box-shadow:0 8px 18px rgba(15,41,84,.18) !important;
}

#rdv-parent-card .rdv-modal-foot .button:hover,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-foot .rdv-card-close:hover{
  background:#ff8a00 !important;
  color:#ffffff !important;
}

/* Onglets style capsules */
#rdv-parent-card .rdv-detail-tabs{
  display:flex !important;
  gap:8px !important;
  margin:0 0 14px !important;
  padding:6px !important;
  border:1px solid #e2e8f0 !important;
  border-radius:14px !important;
  background:#ffffff !important;
  box-shadow:0 1px 2px rgba(15,23,42,.04) !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  flex:1 1 0 !important;
  height:38px !important;
  border:0 !important;
  border-radius:10px !important;
  background:transparent !important;
  color:#475569 !important;
  font-size:12px !important;
  font-weight:850 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}

#rdv-parent-card .rdv-detail-tab-btn:hover{
  background:#f1f5f9 !important;
  color:#0F2954 !important;
}

#rdv-parent-card .rdv-detail-tab-btn.is-active{
  background:#ff8a00 !important;
  color:#ffffff !important;
  box-shadow:0 8px 18px rgba(255,138,0,.22) !important;
}

/* Panneaux comme cartes */
#rdv-parent-card .rdv-detail-tab-panel{
  border:0 !important;
  background:#ffffff !important;
  padding:16px !important;
  border-radius:14px !important;
  box-shadow:0 1px 3px rgba(15,23,42,.08) !important;
}

#rdv-parent-card .rdv-modal-subtitle{
  margin:0 0 12px !important;
  font-size:15px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
}

#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  border:1px solid #e2e8f0 !important;
  background:#f8fafc !important;
  padding:14px !important;
  border-radius:14px !important;
}

/* Tableau détails transformé en style fiche moderne */
#rdv-parent-card table.rdv-kv{
  width:100% !important;
  border-collapse:separate !important;
  border-spacing:0 7px !important;
  background:transparent !important;
  border:0 !important;
  margin:-7px 0 !important;
}

#rdv-parent-card table.rdv-kv tr{
  background:#ffffff !important;
}

#rdv-parent-card table.rdv-kv tr:nth-child(odd) td{
  background:#ffffff !important;
}

#rdv-parent-card table.rdv-kv td{
  padding:9px 11px !important;
  border:0 !important;
  vertical-align:middle !important;
  color:#1f2937 !important;
  font-size:13px !important;
  line-height:1.35 !important;
  background:#ffffff !important;
  border-top:1px solid #e8edf4 !important;
  border-bottom:1px solid #e8edf4 !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width:32% !important;
  font-weight:850 !important;
  color:#0F2954 !important;
  background:#f1f5f9 !important;
  border-left:1px solid #e8edf4 !important;
  border-radius:10px 0 0 10px !important;
}

#rdv-parent-card table.rdv-kv td:last-child{
  border-right:1px solid #e8edf4 !important;
  border-radius:0 10px 10px 0 !important;
}

#rdv-parent-card table.rdv-kv b{
  color:#111827 !important;
  font-weight:800 !important;
}

/* Actions dans modal */
#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  min-height:34px !important;
  padding:0 13px !important;
  border-radius:10px !important;
  border:1px solid #cbd5e1 !important;
  background:#ffffff !important;
  color:#0F2954 !important;
  font-size:12px !important;
  font-weight:800 !important;
  box-shadow:0 1px 2px rgba(15,23,42,.05) !important;
}

#rdv-parent-card .rdv-modal-actions-box .button:hover,
#rdv-parent-card .rdv-modal-actions-box button:hover{
  border-color:#ff8a00 !important;
  color:#c2410c !important;
  background:#fff7ed !important;
}

#rdv-parent-card .rdv-modal-actions-box .button-primary,
#rdv-parent-card .rdv-modal-actions-box button.button-primary{
  background:#ff8a00 !important;
  border-color:#ff8a00 !important;
  color:#ffffff !important;
}

#rdv-parent-card .rdv-modal-actions-box .button-primary:hover,
#rdv-parent-card .rdv-modal-actions-box button.button-primary:hover{
  background:#ea7600 !important;
  border-color:#ea7600 !important;
  color:#ffffff !important;
}

/* Responsive */
@media (max-width: 760px){
  #rdv-parent-card.is-open{
    padding:10px !important;
    align-items:flex-start !important;
  }

  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    max-height:calc(100vh - 20px) !important;
    border-radius:12px !important;
  }

  #rdv-parent-card .rdv-modal-head{
    padding:16px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    padding:14px !important;
  }

  #rdv-parent-card .rdv-detail-tabs{
    flex-direction:column !important;
  }

  #rdv-parent-card .rdv-detail-tab-btn{
    width:100% !important;
  }
}

@media (max-width: 560px){
  #rdv-parent-card table.rdv-kv,
  #rdv-parent-card table.rdv-kv tbody,
  #rdv-parent-card table.rdv-kv tr,
  #rdv-parent-card table.rdv-kv td{
    display:block !important;
    width:100% !important;
  }

  #rdv-parent-card table.rdv-kv tr{
    margin:0 0 8px !important;
    border:1px solid #e8edf4 !important;
    border-radius:10px !important;
    overflow:hidden !important;
  }

  #rdv-parent-card table.rdv-kv td,
  #rdv-parent-card table.rdv-kv td:first-child,
  #rdv-parent-card table.rdv-kv td:last-child{
    border:0 !important;
    border-radius:0 !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    padding-bottom:4px !important;
  }

  #rdv-parent-card table.rdv-kv td + td{
    padding-top:0 !important;
  }
}


/* v1.5.94 — STYLE MODAL UNIQUEMENT : rendu proche capture AL MANAZEH.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */

/* Overlay */
#rdv-parent-card.is-open{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  background:transparent !important;
}

#rdv-parent-card .rdv-modal-backdrop{
  background:rgba(15,41,84,.38) !important;
  backdrop-filter:none !important;
}

/* Grand modal blanc rectangulaire */
#rdv-parent-card .rdv-modal-card{
  width:min(1120px, calc(100vw - 70px)) !important;
  max-width:min(1120px, calc(100vw - 70px)) !important;
  max-height:calc(100vh - 70px) !important;
  border:2px solid #d7d7d7 !important;
  border-radius:0 !important;
  background:#ffffff !important;
  box-shadow:0 18px 55px rgba(0,0,0,.22) !important;
  overflow:hidden !important;
}

/* En-tête comme capture */
#rdv-parent-card .rdv-modal-head{
  background:#ffffff !important;
  border-bottom:1px solid #e5e5e5 !important;
  color:#000000 !important;
  padding:24px 28px 22px !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:18px !important;
}

#rdv-parent-card .rdv-modal-title{
  color:#000000 !important;
  font-size:30px !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  margin:0 !important;
  letter-spacing:-.4px !important;
}

/* Annuler les décorations des anciennes versions */
#rdv-parent-card .rdv-modal-title::before,
#rdv-parent-card .rdv-modal-head::after{
  content:none !important;
  display:none !important;
}

/* Bouton X fin et simple */
#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  min-width:44px !important;
  width:44px !important;
  height:44px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#000000 !important;
  font-size:0 !important;
  line-height:1 !important;
  box-shadow:none !important;
  position:relative !important;
  cursor:pointer !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close::before,
#rdv-parent-card .rdv-modal-head .rdv-card-close::before,
#rdv-parent-card .rdv-modal-head .rdv-modal-close::after,
#rdv-parent-card .rdv-modal-head .rdv-card-close::after{
  content:"" !important;
  position:absolute !important;
  left:10px !important;
  right:10px !important;
  top:21px !important;
  height:2px !important;
  background:#000000 !important;
  transform:rotate(45deg) !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close::after,
#rdv-parent-card .rdv-modal-head .rdv-card-close::after{
  transform:rotate(-45deg) !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-head .rdv-card-close:hover{
  background:#f5f5f5 !important;
}

/* Corps */
#rdv-parent-card .rdv-modal-body{
  background:#ffffff !important;
  padding:28px !important;
  overflow:auto !important;
  font-size:16px !important;
}

/* Footer clair */
#rdv-parent-card .rdv-modal-foot{
  background:#ffffff !important;
  border-top:1px solid #e8e8e8 !important;
  padding:22px 28px !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:18px !important;
}

/* Bouton Fermer type capture */
#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  min-width:120px !important;
  height:56px !important;
  min-height:56px !important;
  padding:0 26px !important;
  border-radius:12px !important;
  border:2px solid #cfcfcf !important;
  background:#ffffff !important;
  color:#111111 !important;
  font-size:26px !important;
  font-weight:500 !important;
  line-height:52px !important;
  box-shadow:none !important;
}

#rdv-parent-card .rdv-modal-foot .button:hover,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close:hover,
#rdv-parent-card .rdv-modal-foot .rdv-card-close:hover{
  background:#f7f7f7 !important;
  border-color:#bdbdbd !important;
  color:#111111 !important;
}

/* Onglets du modal : sobres, adaptés au style blanc */
#rdv-parent-card .rdv-detail-tabs{
  display:flex !important;
  gap:0 !important;
  margin:0 0 24px !important;
  padding:0 !important;
  border:1px solid #e8e8e8 !important;
  border-radius:0 !important;
  background:#ffffff !important;
  box-shadow:none !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  flex:1 1 0 !important;
  height:52px !important;
  border:0 !important;
  border-right:1px solid #e8e8e8 !important;
  border-radius:0 !important;
  background:#ffffff !important;
  color:#606b7a !important;
  font-size:18px !important;
  font-weight:700 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}

#rdv-parent-card .rdv-detail-tab-btn:last-child{
  border-right:0 !important;
}

#rdv-parent-card .rdv-detail-tab-btn:hover{
  background:#f8f8f8 !important;
  color:#111111 !important;
}

#rdv-parent-card .rdv-detail-tab-btn.is-active{
  background:#ffffff !important;
  color:#000000 !important;
  box-shadow:inset 0 -4px 0 #0b7ead !important;
}

/* Panneaux sans effet carte excessif */
#rdv-parent-card .rdv-detail-tab-panel{
  border:0 !important;
  background:#ffffff !important;
  padding:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

#rdv-parent-card .rdv-modal-subtitle{
  margin:0 0 18px !important;
  font-size:24px !important;
  font-weight:800 !important;
  color:#000000 !important;
}

#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  border:1px solid #e8e8e8 !important;
  background:#ffffff !important;
  padding:22px !important;
  border-radius:0 !important;
}

/* Tableau détails exactement esprit capture : libellé gris, valeur noire gras */
#rdv-parent-card table.rdv-kv{
  width:100% !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  background:#ffffff !important;
  border:0 !important;
  margin:0 !important;
}

#rdv-parent-card table.rdv-kv tr,
#rdv-parent-card table.rdv-kv tr:nth-child(odd){
  background:#ffffff !important;
}

#rdv-parent-card table.rdv-kv td{
  padding:14px 0 !important;
  border:0 !important;
  border-bottom:1px solid #eeeeee !important;
  vertical-align:middle !important;
  background:#ffffff !important;
  color:#000000 !important;
  font-size:26px !important;
  line-height:1.25 !important;
}

#rdv-parent-card table.rdv-kv tr:last-child td{
  border-bottom:1px solid #eeeeee !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width:28% !important;
  padding-right:28px !important;
  font-weight:400 !important;
  color:#6b7280 !important;
  background:#ffffff !important;
  border-left:0 !important;
  border-radius:0 !important;
}

#rdv-parent-card table.rdv-kv td:last-child{
  border-right:0 !important;
  border-radius:0 !important;
}

#rdv-parent-card table.rdv-kv b{
  color:#000000 !important;
  font-size:30px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

/* Badges/statuts dans le modal, si présents */
#rdv-parent-card table.rdv-kv .rdv-status,
#rdv-parent-card .rdv-status{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:92px !important;
  height:34px !important;
  padding:0 14px !important;
  border-radius:7px !important;
  background:#e3344a !important;
  color:#ffffff !important;
  font-size:20px !important;
  font-weight:800 !important;
  line-height:34px !important;
}

/* Boutons actions gardés propres */
#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  min-height:46px !important;
  padding:0 18px !important;
  border-radius:9px !important;
  border:1px solid #cfcfcf !important;
  background:#ffffff !important;
  color:#111111 !important;
  font-size:17px !important;
  font-weight:700 !important;
  box-shadow:none !important;
}

#rdv-parent-card .rdv-modal-actions-box .button:hover,
#rdv-parent-card .rdv-modal-actions-box button:hover{
  background:#f7f7f7 !important;
  border-color:#bdbdbd !important;
}

#rdv-parent-card .rdv-modal-actions-box .button-primary,
#rdv-parent-card .rdv-modal-actions-box button.button-primary{
  background:#0b7ead !important;
  border-color:#0b7ead !important;
  color:#ffffff !important;
}

#rdv-parent-card .rdv-modal-actions-box .button-primary:hover,
#rdv-parent-card .rdv-modal-actions-box button.button-primary:hover{
  background:#096f99 !important;
  border-color:#096f99 !important;
  color:#ffffff !important;
}

/* Responsive */
@media (max-width: 900px){
  #rdv-parent-card.is-open{
    padding:12px !important;
    align-items:flex-start !important;
  }

  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    max-height:calc(100vh - 24px) !important;
  }

  #rdv-parent-card .rdv-modal-head{
    padding:18px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    padding:18px !important;
  }

  #rdv-parent-card .rdv-modal-foot{
    padding:16px 18px !important;
  }

  #rdv-parent-card .rdv-modal-title{
    font-size:24px !important;
  }

  #rdv-parent-card table.rdv-kv td{
    font-size:20px !important;
  }

  #rdv-parent-card table.rdv-kv b{
    font-size:22px !important;
  }

  #rdv-parent-card .rdv-modal-foot .button,
  #rdv-parent-card .rdv-modal-foot .rdv-modal-close,
  #rdv-parent-card .rdv-modal-foot .rdv-card-close{
    height:46px !important;
    min-height:46px !important;
    font-size:18px !important;
    line-height:42px !important;
  }
}

@media (max-width: 620px){
  #rdv-parent-card .rdv-detail-tabs{
    flex-direction:column !important;
  }

  #rdv-parent-card .rdv-detail-tab-btn{
    border-right:0 !important;
    border-bottom:1px solid #e8e8e8 !important;
  }

  #rdv-parent-card .rdv-detail-tab-btn:last-child{
    border-bottom:0 !important;
  }

  #rdv-parent-card table.rdv-kv,
  #rdv-parent-card table.rdv-kv tbody,
  #rdv-parent-card table.rdv-kv tr,
  #rdv-parent-card table.rdv-kv td{
    display:block !important;
    width:100% !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    padding-bottom:4px !important;
    padding-right:0 !important;
    font-size:18px !important;
  }

  #rdv-parent-card table.rdv-kv td + td{
    padding-top:0 !important;
  }
}


/* v1.5.96 — STYLE MODAL UNIQUEMENT : même style AL MANAZEH, mais zoom réduit.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */

#rdv-parent-card .rdv-modal-card{
  width:min(860px, calc(100vw - 70px)) !important;
  max-width:min(860px, calc(100vw - 70px)) !important;
  max-height:calc(100vh - 70px) !important;
}

/* En-tête plus compact */
#rdv-parent-card .rdv-modal-head{
  padding:16px 22px 15px !important;
}

#rdv-parent-card .rdv-modal-title{
  font-size:22px !important;
  line-height:1.15 !important;
}

/* Bouton X réduit */
#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  min-width:36px !important;
  width:36px !important;
  height:36px !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close::before,
#rdv-parent-card .rdv-modal-head .rdv-card-close::before,
#rdv-parent-card .rdv-modal-head .rdv-modal-close::after,
#rdv-parent-card .rdv-modal-head .rdv-card-close::after{
  left:8px !important;
  right:8px !important;
  top:17px !important;
  height:2px !important;
}

/* Corps plus compact */
#rdv-parent-card .rdv-modal-body{
  padding:20px 22px !important;
}

/* Onglets plus petits */
#rdv-parent-card .rdv-detail-tabs{
  margin:0 0 16px !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  height:42px !important;
  font-size:14px !important;
}

/* Sous-titres et zones internes */
#rdv-parent-card .rdv-modal-subtitle{
  font-size:18px !important;
  margin:0 0 12px !important;
}

#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  padding:16px !important;
}

/* Tableau détails : même style, mais moins zoomé */
#rdv-parent-card table.rdv-kv td{
  padding:10px 0 !important;
  font-size:18px !important;
  line-height:1.25 !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width:30% !important;
  padding-right:22px !important;
  font-size:20px !important;
}

#rdv-parent-card table.rdv-kv b{
  font-size:22px !important;
  line-height:1.2 !important;
}

/* Badge/statut réduit */
#rdv-parent-card table.rdv-kv .rdv-status,
#rdv-parent-card .rdv-status{
  min-width:78px !important;
  height:28px !important;
  padding:0 12px !important;
  border-radius:6px !important;
  font-size:15px !important;
  line-height:28px !important;
}

/* Footer et bouton fermer plus petits */
#rdv-parent-card .rdv-modal-foot{
  padding:16px 22px !important;
  gap:12px !important;
}

#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  min-width:96px !important;
  height:42px !important;
  min-height:42px !important;
  padding:0 20px !important;
  border-radius:9px !important;
  font-size:18px !important;
  line-height:38px !important;
}

/* Boutons d'actions plus compacts */
#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  min-height:38px !important;
  padding:0 14px !important;
  border-radius:7px !important;
  font-size:14px !important;
}

/* Mobile */
@media (max-width: 900px){
  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    max-height:calc(100vh - 24px) !important;
  }

  #rdv-parent-card .rdv-modal-title{
    font-size:20px !important;
  }

  #rdv-parent-card table.rdv-kv td,
  #rdv-parent-card table.rdv-kv td:first-child{
    font-size:16px !important;
  }

  #rdv-parent-card table.rdv-kv b{
    font-size:18px !important;
  }

  #rdv-parent-card .rdv-modal-foot .button,
  #rdv-parent-card .rdv-modal-foot .rdv-modal-close,
  #rdv-parent-card .rdv-modal-foot .rdv-card-close{
    height:40px !important;
    min-height:40px !important;
    font-size:16px !important;
    line-height:36px !important;
  }
}


/* v1.5.97 — STYLE MODAL UNIQUEMENT
   Hauteur stable entre onglets + pas de scroll interne modal.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */

/* Modal stable */
#rdv-parent-card .rdv-modal-card{
  width:min(860px, calc(100vw - 70px)) !important;
  max-width:min(860px, calc(100vw - 70px)) !important;
  height:auto !important;
  min-height:640px !important;
  max-height:none !important;
  overflow:visible !important;
}

/* Pas de scroll interne */
#rdv-parent-card .rdv-modal-body{
  overflow:visible !important;
  min-height:500px !important;
  padding:18px 22px !important;
}

/* Les onglets gardent la même hauteur visuelle */
#rdv-parent-card .rdv-detail-tab-panel{
  min-height:420px !important;
}

/* L’onglet actif reste affiché normalement */
#rdv-parent-card .rdv-detail-tab-panel.is-active{
  display:block !important;
}

/* Table détails un peu plus compacte pour tenir sans scroll */
#rdv-parent-card table.rdv-kv td{
  padding:8px 0 !important;
  font-size:16px !important;
  line-height:1.20 !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  font-size:17px !important;
  width:30% !important;
}

#rdv-parent-card table.rdv-kv b{
  font-size:18px !important;
  line-height:1.20 !important;
}

/* Onglets compacts */
#rdv-parent-card .rdv-detail-tabs{
  margin:0 0 12px !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  height:38px !important;
  font-size:13px !important;
}

/* Footer stable */
#rdv-parent-card .rdv-modal-foot{
  padding:14px 22px !important;
}

/* Si l’écran est petit, on évite de casser l’affichage */
@media (max-height: 760px){
  #rdv-parent-card .rdv-modal-card{
    min-height:580px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    min-height:440px !important;
    padding-top:14px !important;
    padding-bottom:14px !important;
  }

  #rdv-parent-card .rdv-detail-tab-panel{
    min-height:360px !important;
  }

  #rdv-parent-card table.rdv-kv td{
    padding:6px 0 !important;
    font-size:15px !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    font-size:16px !important;
  }

  #rdv-parent-card table.rdv-kv b{
    font-size:17px !important;
  }
}

@media (max-width: 900px){
  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    min-height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }

  #rdv-parent-card .rdv-modal-body{
    min-height:auto !important;
    overflow:visible !important;
  }

  #rdv-parent-card .rdv-detail-tab-panel{
    min-height:320px !important;
  }
}


/* v1.5.98 — STYLE MODAL UNIQUEMENT : zoom en moins d'environ 20%.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */

/* Taille globale réduite */
#rdv-parent-card .rdv-modal-card{
  width:min(688px, calc(100vw - 70px)) !important;
  max-width:min(688px, calc(100vw - 70px)) !important;
  min-height:512px !important;
}

/* En-tête réduit */
#rdv-parent-card .rdv-modal-head{
  padding:13px 18px 12px !important;
}

#rdv-parent-card .rdv-modal-title{
  font-size:18px !important;
  line-height:1.15 !important;
}

/* Bouton X réduit */
#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  min-width:30px !important;
  width:30px !important;
  height:30px !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close::before,
#rdv-parent-card .rdv-modal-head .rdv-card-close::before,
#rdv-parent-card .rdv-modal-head .rdv-modal-close::after,
#rdv-parent-card .rdv-modal-head .rdv-card-close::after{
  left:7px !important;
  right:7px !important;
  top:14px !important;
  height:2px !important;
}

/* Corps réduit */
#rdv-parent-card .rdv-modal-body{
  min-height:400px !important;
  padding:14px 18px !important;
}

/* Onglets réduits */
#rdv-parent-card .rdv-detail-tabs{
  margin:0 0 10px !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  height:30px !important;
  font-size:11px !important;
}

/* Hauteur des panneaux réduite */
#rdv-parent-card .rdv-detail-tab-panel{
  min-height:336px !important;
}

/* Sous-titre réduit */
#rdv-parent-card .rdv-modal-subtitle{
  font-size:14px !important;
  margin:0 0 10px !important;
}

/* Zones Présence / Actions réduites */
#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  padding:13px !important;
}

/* Tableau détails réduit */
#rdv-parent-card table.rdv-kv td{
  padding:6px 0 !important;
  font-size:13px !important;
  line-height:1.18 !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width:30% !important;
  padding-right:18px !important;
  font-size:14px !important;
}

#rdv-parent-card table.rdv-kv b{
  font-size:14px !important;
  line-height:1.18 !important;
}

/* Badge/statut réduit */
#rdv-parent-card table.rdv-kv .rdv-status,
#rdv-parent-card .rdv-status{
  min-width:62px !important;
  height:22px !important;
  padding:0 10px !important;
  border-radius:5px !important;
  font-size:12px !important;
  line-height:22px !important;
}

/* Footer réduit */
#rdv-parent-card .rdv-modal-foot{
  padding:11px 18px !important;
  gap:10px !important;
}

#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  min-width:77px !important;
  height:34px !important;
  min-height:34px !important;
  padding:0 16px !important;
  border-radius:7px !important;
  font-size:14px !important;
  line-height:30px !important;
}

/* Boutons actions réduits */
#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  min-height:30px !important;
  padding:0 11px !important;
  border-radius:6px !important;
  font-size:11px !important;
}

/* Écrans bas */
@media (max-height: 760px){
  #rdv-parent-card .rdv-modal-card{
    min-height:464px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    min-height:352px !important;
  }

  #rdv-parent-card .rdv-detail-tab-panel{
    min-height:288px !important;
  }

  #rdv-parent-card table.rdv-kv td{
    padding:5px 0 !important;
    font-size:12px !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    font-size:13px !important;
  }

  #rdv-parent-card table.rdv-kv b{
    font-size:13px !important;
  }
}

/* Mobile : garder responsive */
@media (max-width: 900px){
  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    min-height:auto !important;
  }

  #rdv-parent-card .rdv-modal-body{
    min-height:auto !important;
  }

  #rdv-parent-card .rdv-detail-tab-panel{
    min-height:256px !important;
  }
}


/* v1.5.99 — STYLE MODAL UNIQUEMENT : encore -20% sur le modal.
   Aucun changement JS/PHP métier, aucune colonne, aucune action. */

/* Taille globale encore réduite */
#rdv-parent-card .rdv-modal-card{
  width:min(550px, calc(100vw - 70px)) !important;
  max-width:min(550px, calc(100vw - 70px)) !important;
  min-height:410px !important;
}

/* En-tête encore plus compact */
#rdv-parent-card .rdv-modal-head{
  padding:10px 14px 9px !important;
}

#rdv-parent-card .rdv-modal-title{
  font-size:14px !important;
  line-height:1.12 !important;
}

/* Bouton X réduit */
#rdv-parent-card .rdv-modal-head .rdv-modal-close,
#rdv-parent-card .rdv-modal-head .rdv-card-close{
  min-width:24px !important;
  width:24px !important;
  height:24px !important;
}

#rdv-parent-card .rdv-modal-head .rdv-modal-close::before,
#rdv-parent-card .rdv-modal-head .rdv-card-close::before,
#rdv-parent-card .rdv-modal-head .rdv-modal-close::after,
#rdv-parent-card .rdv-modal-head .rdv-card-close::after{
  left:6px !important;
  right:6px !important;
  top:11px !important;
  height:2px !important;
}

/* Corps réduit */
#rdv-parent-card .rdv-modal-body{
  min-height:320px !important;
  padding:11px 14px !important;
}

/* Onglets réduits */
#rdv-parent-card .rdv-detail-tabs{
  margin:0 0 8px !important;
}

#rdv-parent-card .rdv-detail-tab-btn{
  height:24px !important;
  font-size:9px !important;
}

/* Hauteur des panneaux réduite */
#rdv-parent-card .rdv-detail-tab-panel{
  min-height:269px !important;
}

/* Sous-titre réduit */
#rdv-parent-card .rdv-modal-subtitle{
  font-size:11px !important;
  margin:0 0 8px !important;
}

/* Zones internes */
#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  padding:10px !important;
}

/* Tableau détails encore plus compact */
#rdv-parent-card table.rdv-kv td{
  padding:4px 0 !important;
  font-size:10px !important;
  line-height:1.15 !important;
}

#rdv-parent-card table.rdv-kv td:first-child{
  width:30% !important;
  padding-right:14px !important;
  font-size:11px !important;
}

#rdv-parent-card table.rdv-kv b{
  font-size:11px !important;
  line-height:1.15 !important;
}

/* Badge/statut réduit */
#rdv-parent-card table.rdv-kv .rdv-status,
#rdv-parent-card .rdv-status{
  min-width:50px !important;
  height:18px !important;
  padding:0 8px !important;
  border-radius:4px !important;
  font-size:10px !important;
  line-height:18px !important;
}

/* Footer réduit */
#rdv-parent-card .rdv-modal-foot{
  padding:9px 14px !important;
  gap:8px !important;
}

#rdv-parent-card .rdv-modal-foot .button,
#rdv-parent-card .rdv-modal-foot .rdv-modal-close,
#rdv-parent-card .rdv-modal-foot .rdv-card-close{
  min-width:62px !important;
  height:27px !important;
  min-height:27px !important;
  padding:0 13px !important;
  border-radius:6px !important;
  font-size:11px !important;
  line-height:23px !important;
}

/* Boutons actions réduits */
#rdv-parent-card .rdv-modal-actions-box .button,
#rdv-parent-card .rdv-modal-actions-box button{
  min-height:24px !important;
  padding:0 9px !important;
  border-radius:5px !important;
  font-size:9px !important;
}

/* Écrans bas */
@media (max-height: 760px){
  #rdv-parent-card .rdv-modal-card{
    min-height:371px !important;
  }

  #rdv-parent-card .rdv-modal-body{
    min-height:282px !important;
  }

  #rdv-parent-card .rdv-detail-tab-panel{
    min-height:230px !important;
  }

  #rdv-parent-card table.rdv-kv td{
    padding:4px 0 !important;
    font-size:10px !important;
  }

  #rdv-parent-card table.rdv-kv td:first-child{
    font-size:10px !important;
  }

  #rdv-parent-card table.rdv-kv b{
    font-size:10px !important;
  }
}

/* Mobile responsive conservé */
@media (max-width: 900px){
  #rdv-parent-card .rdv-modal-card{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    min-height:auto !important;
  }

  #rdv-parent-card .rdv-modal-body{
    min-height:auto !important;
  }

  #rdv-parent-card .rdv-detail-tab-panel{
    min-height:205px !important;
  }
}


/* v1.6.00 — Fusion onglets Présence + Actions.
   Aucun changement métier : mêmes contenus, même AJAX, mêmes boutons. */

/* Deux onglets seulement */
#rdv-parent-card .rdv-detail-tabs.rdv-detail-tabs-merged{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

/* Même hauteur de panneau pour Détails demande et Présence / Actions */
#rdv-parent-card .rdv-detail-tab-panel,
#rdv-parent-card .rdv-presence-actions-panel{
  min-height:269px !important;
}

/* Présence + Actions dans le même onglet */
#rdv-parent-card .rdv-pa-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  min-height:inherit !important;
}

#rdv-parent-card .rdv-pa-section{
  min-height:inherit !important;
  display:flex !important;
  flex-direction:column !important;
}

#rdv-parent-card .rdv-pa-section .rdv-modal-presence-box,
#rdv-parent-card .rdv-pa-section .rdv-modal-actions-box{
  flex:1 1 auto !important;
}

/* Responsive */
@media (max-width: 760px){
  #rdv-parent-card .rdv-detail-tabs.rdv-detail-tabs-merged{
    grid-template-columns:1fr !important;
  }

  #rdv-parent-card .rdv-pa-grid{
    grid-template-columns:1fr !important;
  }

  #rdv-parent-card .rdv-detail-tab-panel,
  #rdv-parent-card .rdv-presence-actions-panel{
    min-height:205px !important;
  }
}


/* v1.6.01 — Présence / Actions : affichage en lignes, sans cadre.
   Aucun changement métier : mêmes boutons, même AJAX, même logique. */

/* Dans l'onglet fusionné : une section sous l'autre */
#rdv-parent-card .rdv-pa-grid{
  display:block !important;
  min-height:inherit !important;
}

#rdv-parent-card .rdv-pa-section{
  display:block !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
}

/* Séparation simple entre Présence et Actions */
#rdv-parent-card .rdv-pa-section + .rdv-pa-section{
  margin-top:14px !important;
  padding-top:12px !important;
  border-top:1px solid #eeeeee !important;
}

/* Retirer les cadres autour Présence / Actions */
#rdv-parent-card .rdv-pa-section .rdv-modal-presence-box,
#rdv-parent-card .rdv-pa-section .rdv-modal-actions-box,
#rdv-parent-card .rdv-modal-presence-box,
#rdv-parent-card .rdv-modal-actions-box{
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  min-height:0 !important;
}

/* Titres simples */
#rdv-parent-card .rdv-pa-section .rdv-modal-subtitle{
  margin:0 0 8px !important;
  padding:0 !important;
  font-size:11px !important;
  font-weight:800 !important;
  color:#6b7280 !important;
  text-transform:uppercase !important;
  letter-spacing:.03em !important;
}

/* Actions en ligne propre */
#rdv-parent-card .rdv-modal-actions-box .rdv-actions-col{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  flex-wrap:wrap !important;
}

#rdv-parent-card .rdv-modal-actions-box .rdv-action-line{
  display:inline-flex !important;
  margin:0 !important;
}

/* Présence : ligne simple */
#rdv-parent-card .rdv-modal-presence-box{
  line-height:1.4 !important;
}

/* Garder la même hauteur entre onglets */
#rdv-parent-card .rdv-presence-actions-panel{
  min-height:269px !important;
}

@media (max-width: 760px){
  #rdv-parent-card .rdv-pa-section + .rdv-pa-section{
    margin-top:12px !important;
    padding-top:10px !important;
  }
}


/* v1.6.02 — Onglet Présence / Actions avec le même style que Détails demande.
   Aucun changement métier : mêmes contenus, même AJAX, mêmes boutons. */

/* L'onglet fusionné utilise le même tableau clé/valeur que Détails demande */
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv{
  width:100% !important;
  margin:0 !important;
  border:0 !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  background:#ffffff !important;
}

#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr,
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr:nth-child(odd),
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr:nth-child(even){
  background:#ffffff !important;
}

#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td{
  padding:4px 0 !important;
  border:0 !important;
  border-bottom:1px solid #eeeeee !important;
  vertical-align:middle !important;
  background:#ffffff !important;
  color:#000000 !important;
  font-size:10px !important;
  font-weight:400 !important;
  line-height:1.15 !important;
}

#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td:first-child{
  width:30% !important;
  padding-right:14px !important;
  color:#6b7280 !important;
  background:#ffffff !important;
  font-size:11px !important;
  font-weight:400 !important;
}

#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td:last-child{
  color:#000000 !important;
  font-size:11px !important;
  font-weight:700 !important;
}

/* Retirer définitivement les cadres internes */
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-presence-box,
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-actions-box{
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

/* Actions sur une ligne dans la cellule valeur */
#rdv-parent-card .rdv-presence-actions-panel .rdv-actions-col{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

#rdv-parent-card .rdv-presence-actions-panel .rdv-action-line{
  display:inline-flex !important;
  margin:0 !important;
}

/* Boutons compacts pour rester dans le style du tableau */
#rdv-parent-card .rdv-presence-actions-panel .button,
#rdv-parent-card .rdv-presence-actions-panel button{
  min-height:24px !important;
  height:24px !important;
  padding:0 9px !important;
  border-radius:5px !important;
  font-size:9px !important;
  line-height:20px !important;
}

/* Garder la hauteur identique avec l'onglet Détails */
#rdv-parent-card .rdv-presence-actions-panel{
  min-height:269px !important;
}

/* Ancien layout neutralisé si présent */
#rdv-parent-card .rdv-pa-grid,
#rdv-parent-card .rdv-pa-section{
  display:block !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
}

@media (max-width: 620px){
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv,
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tbody,
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr,
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td{
    display:block !important;
    width:100% !important;
  }

  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td:first-child{
    padding-right:0 !important;
    padding-bottom:4px !important;
  }

  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td + td{
    padding-top:0 !important;
  }
}


/* v1.6.04 — Onglet Présence / Actions identique visuellement à Détails demande.
   Objectif : lignes simples l'une au-dessous de l'autre, même texte, même séparation.
   Aucun changement métier : présence AJAX et actions conservées. */

/* Le panneau Présence / Actions garde la même hauteur que Détails demande */
#rdv-parent-card .rdv-detail-tab-panel,
#rdv-parent-card .rdv-detail-tab-panel.is-active,
#rdv-parent-card .rdv-presence-actions-panel{
  min-height:269px !important;
}

/* Tableau Présence / Actions = même base que rdv-kv du premier onglet */
#rdv-parent-card .rdv-presence-actions-panel table.rdv-pa-kv,
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv{
  width:100% !important;
  margin:0 !important;
  border:0 !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  background:#ffffff !important;
  font-family:Arial, Helvetica, sans-serif !important;
}

/* Lignes simples comme Détails demande */
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr,
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr:nth-child(odd),
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr:nth-child(even){
  background:#ffffff !important;
}

/* Cellules : même style que l'onglet Détails demande dans cette version */
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td{
  padding:4px 0 !important;
  border:0 !important;
  border-bottom:1px solid #eeeeee !important;
  vertical-align:middle !important;
  background:#ffffff !important;
  color:#000000 !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:10px !important;
  font-weight:400 !important;
  line-height:1.15 !important;
}

/* Libellé à gauche : Présence / Actions */
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td:first-child{
  width:30% !important;
  padding-right:14px !important;
  color:#6b7280 !important;
  background:#ffffff !important;
  font-size:11px !important;
  font-weight:400 !important;
}

/* Contenu à droite : même style texte que les valeurs du premier onglet */
#rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td:last-child{
  color:#000000 !important;
  background:#ffffff !important;
  font-size:11px !important;
  font-weight:800 !important;
}

/* Aucun cadre interne autour Présence / Actions */
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-presence-box,
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-actions-box{
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  min-height:0 !important;
}

/* Les actions restent dans la cellule, sur lignes simples si besoin */
#rdv-parent-card .rdv-presence-actions-panel .rdv-actions-col{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

#rdv-parent-card .rdv-presence-actions-panel .rdv-action-line{
  display:inline-flex !important;
  margin:0 !important;
}

/* Boutons/actions : style texte sobre, même écriture que le tableau, sans cadre lourd */
#rdv-parent-card .rdv-presence-actions-panel .button,
#rdv-parent-card .rdv-presence-actions-panel button{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  color:#000000 !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  padding:0 4px !important;
  min-height:auto !important;
  height:auto !important;
  text-decoration:none !important;
  cursor:pointer !important;
}

#rdv-parent-card .rdv-presence-actions-panel .button:hover,
#rdv-parent-card .rdv-presence-actions-panel button:hover{
  background:transparent !important;
  border:0 !important;
  color:#0b7ead !important;
  box-shadow:none !important;
}

/* Neutraliser anciens cadres/layouts possibles */
#rdv-parent-card .rdv-pa-grid,
#rdv-parent-card .rdv-pa-section{
  display:block !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
}

@media (max-width: 620px){
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv,
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tbody,
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv tr,
  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td{
    display:block !important;
    width:100% !important;
  }

  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td:first-child{
    padding-right:0 !important;
    padding-bottom:4px !important;
  }

  #rdv-parent-card .rdv-presence-actions-panel .rdv-pa-kv td + td{
    padding-top:0 !important;
  }
}


/* v1.6.05 — Choix Présence : boutons/champs sans cadre et soulignés.
   Aucun changement métier : même AJAX, mêmes valeurs, mêmes actions. */

/* Boutons de choix présence : Présent / Absent / Annulé */
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-presence-box button,
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-presence-box .button,
#rdv-parent-card .rdv-modal-presence-box button,
#rdv-parent-card .rdv-modal-presence-box .button{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  color:#000000 !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  padding:0 5px !important;
  min-height:auto !important;
  height:auto !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
  text-decoration-thickness:1px !important;
  cursor:pointer !important;
}

/* Hover présence */
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-presence-box button:hover,
#rdv-parent-card .rdv-presence-actions-panel .rdv-modal-presence-box .button:hover,
#rdv-parent-card .rdv-modal-presence-box button:hover,
#rdv-parent-card .rdv-modal-presence-box .button:hover{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#0b7ead !important;
  text-decoration:underline !important;
}

/* Si les choix présence sont des labels/spans cliquables */
#rdv-parent-card .rdv-modal-presence-box label,
#rdv-parent-card .rdv-modal-presence-box .rdv-presence-choice,
#rdv-parent-card .rdv-modal-presence-box .rdv-presence-btn,
#rdv-parent-card .rdv-modal-presence-box [data-presence],
#rdv-parent-card .rdv-modal-presence-box [data-presence-status]{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#000000 !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
  text-decoration-thickness:1px !important;
  padding:0 5px !important;
  cursor:pointer !important;
}

/* Tout bouton dans Présence/Actions reste souligné */
#rdv-parent-card .rdv-presence-actions-panel button,
#rdv-parent-card .rdv-presence-actions-panel .button{
  text-decoration:underline !important;
  text-underline-offset:3px !important;
  text-decoration-thickness:1px !important;
}

/* Retirer tout cadre résiduel sur inputs radio/checkbox si le thème les transforme */
#rdv-parent-card .rdv-modal-presence-box input[type="radio"],
#rdv-parent-card .rdv-modal-presence-box input[type="checkbox"]{
  box-shadow:none !important;
  outline:0 !important;
}


/* v1.6.07 — Le modal adopte la hauteur réelle de Détails demande.
   Suivi des demandes conserve ensuite cette même hauteur. */

/* Ne plus forcer une hauteur fixe arbitraire : la hauteur sera synchronisée par JS */
#rdv-parent-card .rdv-detail-tab-panel,
#rdv-parent-card .rdv-detail-tab-panel.is-active,
#rdv-parent-card .rdv-presence-actions-panel{
  overflow:visible !important;
}

/* Le modal suit la hauteur du contenu, sans saut entre onglets */
#rdv-parent-card .rdv-modal-card{
  height:auto !important;
}

/* Titre de l'onglet plus long : garder lisible */
#rdv-parent-card .rdv-detail-tabs.rdv-detail-tabs-merged .rdv-detail-tab-btn{
  white-space:nowrap !important;
}

@media (max-width: 620px){
  #rdv-parent-card .rdv-detail-tabs.rdv-detail-tabs-merged .rdv-detail-tab-btn{
    white-space:normal !important;
  }
}


/* v1.6.09 — Colonne Statut : date entretien passée = texte normal sans clignotement */
.rdv-parent-wrap .rdv-status-past-no-blink,
.rdv-parent-wrap .rdv-status-past-no-blink *,
#rdv-parent-card .rdv-status-past-no-blink,
#rdv-parent-card .rdv-status-past-no-blink *{
  animation:none !important;
  -webkit-animation:none !important;
  background:transparent !important;
  color:inherit !important;
  font-weight:inherit !important;
  text-decoration:none !important;
  box-shadow:none !important;
  opacity:1 !important;
}

/* Date entretien future = on garde/force le clignotement existant */
.rdv-parent-wrap .rdv-status-future-blink{
  animation:rdvStatusFutureBlink 1s linear infinite !important;
  -webkit-animation:rdvStatusFutureBlink 1s linear infinite !important;
}

@keyframes rdvStatusFutureBlink{
  0%,100%{opacity:1;}
  50%{opacity:.35;}
}

@-webkit-keyframes rdvStatusFutureBlink{
  0%,100%{opacity:1;}
  50%{opacity:.35;}
}




/* v1.6.11 — Refresh vraiment silencieux :
   pendant le patch AJAX invisible, aucune animation/clignotement ne doit se relancer. */
body.rdv-refresh-patching-silent .rdv-followup-table,
body.rdv-refresh-patching-silent .rdv-followup-table *,
body.rdv-refresh-patching-silent .rdv-parent-history,
body.rdv-refresh-patching-silent .rdv-parent-history *{
  transition:none !important;
}

body.rdv-refresh-patching-silent .rdv-status-future-blink,
body.rdv-refresh-patching-silent .rdv-status-future-blink *,
body.rdv-refresh-patching-silent [class*="blink"],
body.rdv-refresh-patching-silent [class*="clign"]{
  animation:none !important;
  -webkit-animation:none !important;
}

body.rdv-refresh-patching-silent .rdv-followup-no-result,
body.rdv-refresh-patching-silent .rdv-no-result-row,
body.rdv-refresh-patching-silent .rdv-empty,
body.rdv-refresh-patching-silent .rdv-no-data,
body.rdv-refresh-patching-silent .rdv-no-result,
body.rdv-refresh-patching-silent .rdv-no-results{
  display:none !important;
  visibility:hidden !important;
}

/* Important : la ligne "Aucune donnée pour le moment" doit rester stable */
body.rdv-refresh-patching-silent .rdv-followup-empty{
  display:table-row !important;
  visibility:visible !important;
}

body.rdv-refresh-patching-silent .rdv-followup-empty td{
  display:table-cell !important;
  visibility:visible !important;
}


/* v1.6.12 — Règles clignotement statut tout en gardant la liste déroulante */

/* Demande d'inscription : jamais de clignotement */
.rdv-parent-wrap .rdv-status-demande-no-blink,
.rdv-parent-wrap .rdv-status-demande-no-blink *,
.rdv-parent-wrap select.rdv-status-demande-no-blink{
  animation:none !important;
  -webkit-animation:none !important;
  opacity:1 !important;
  background:inherit !important;
  color:inherit !important;
  box-shadow:none !important;
  text-decoration:none !important;
}

/* Entretien passé : jamais de clignotement */
.rdv-parent-wrap .rdv-status-entretien-past-no-blink,
.rdv-parent-wrap .rdv-status-entretien-past-no-blink *,
.rdv-parent-wrap select.rdv-status-entretien-past-no-blink{
  animation:none !important;
  -webkit-animation:none !important;
  opacity:1 !important;
  background:inherit !important;
  color:inherit !important;
  box-shadow:none !important;
  text-decoration:none !important;
}

/* Entretien futur : clignotement conservé */
.rdv-parent-wrap .rdv-status-entretien-future-blink,
.rdv-parent-wrap select.rdv-status-entretien-future-blink{
  animation:rdvStatusFutureBlink 1s linear infinite !important;
  -webkit-animation:rdvStatusFutureBlink 1s linear infinite !important;
}

/* La colonne Statut reste bien un champ liste déroulante */
.rdv-parent-wrap .rdv-followup-statut-select,
.rdv-parent-wrap td[data-col="statut"] select,
.rdv-parent-wrap td[data-col="status"] select{
  display:inline-block !important;
  visibility:visible !important;
  pointer-events:auto !important;
  opacity:1;
}


/* v1.6.13 — Ligne Test d'entrée dans Suivi des demandes */
#rdv-parent-card .rdv-modal-test-entree-line{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

#rdv-parent-card .rdv-modal-test-entree-datetime{
  height:22px !important;
  min-height:22px !important;
  width:150px !important;
  padding:0 4px !important;
  border:0 !important;
  border-bottom:1px solid #111 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
  font-size:10px !important;
  font-weight:700 !important;
  color:#000 !important;
}

#rdv-parent-card .rdv-modal-test-entree-confirm{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#000 !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
  padding:0 4px !important;
  height:auto !important;
  min-height:auto !important;
  line-height:1.2 !important;
  cursor:pointer !important;
}

#rdv-parent-card .rdv-modal-test-entree-confirm:hover{
  color:#0b7ead !important;
}

#rdv-parent-card .rdv-modal-test-entree-msg{
  font-size:10px !important;
  font-weight:700 !important;
  color:#6b7280 !important;
}


/* v1.6.15 — Test d'entrée désactivé si statut != Demande d'inscription */
#rdv-parent-card .rdv-modal-test-entree-line.is-disabled{
  opacity:.45 !important;
  filter:grayscale(1) !important;
}

#rdv-parent-card .rdv-modal-test-entree-line.is-disabled .rdv-modal-test-entree-datetime,
#rdv-parent-card .rdv-modal-test-entree-line.is-disabled .rdv-modal-test-entree-confirm{
  cursor:not-allowed !important;
  color:#777 !important;
  border-bottom-color:#bbb !important;
  text-decoration:none !important;
}

#rdv-parent-card .rdv-modal-test-entree-line.is-disabled .rdv-modal-test-entree-msg{
  display:inline-block !important;
  color:#777 !important;
  font-size:10px !important;
  font-weight:700 !important;
}


/* v1.6.16 — Planning tests : actions simples */
.rdv-test-entree-return-demand{
  border:0 !important;
  background:transparent !important;
  color:#c0392b !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
  cursor:pointer !important;
  padding:0 4px !important;
  box-shadow:none !important;
}

.rdv-test-entree-return-demand:hover{
  color:#8e1f15 !important;
}


/* v1.6.22 — Petit bouton retour dans le modal Planning */
#rdv-parent-card .rdv-test-entree-return-demand-modal{
  font-size:11px !important;
  padding:3px 7px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}


/* v1.6.23 — Affichage sûr du bouton retour dans modal Planning */
#rdv-parent-card .rdv-test-entree-return-demand-modal,
.rdv-parent-card .rdv-test-entree-return-demand-modal,
.rdv-details-modal .rdv-test-entree-return-demand-modal{
  display:inline-block !important;
  visibility:visible !important;
  opacity:1 !important;
  font-size:11px !important;
  padding:3px 7px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  margin-left:12px !important;
  vertical-align:middle !important;
}


/* v1.6.24 — Actions complètes Entretien/Visite gardent le style lien existant */
#rdv-parent-card .rdv-change-slot,
#rdv-parent-card .rdv-cancel-rdv,
#rdv-parent-card .rdv-enable-form{
  font-weight:900;
}
/* MANUEL — Masquer immédiatement "Renvoyer vers demande d’inscription" si modal ouvert depuis ENTRETIEN ET VISITE */
html[data-rdv-modal-origin="entretien-visite"] #rdv-parent-card .rdv-test-entree-return-demand,
html[data-rdv-modal-origin="entretien-visite"] #rdv-parent-card .rdv-test-entree-return-demand-modal,
html[data-rdv-modal-origin="entretien-visite"] .rdv-parent-card .rdv-test-entree-return-demand,
html[data-rdv-modal-origin="entretien-visite"] .rdv-parent-card .rdv-test-entree-return-demand-modal,
html[data-rdv-modal-origin="entretien-visite"] .rdv-details-modal .rdv-test-entree-return-demand,
html[data-rdv-modal-origin="entretien-visite"] .rdv-details-modal .rdv-test-entree-return-demand-modal{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
/* MANUEL — Griser seulement Annuler RDV si modal ouvert depuis DEMANDE D’INSCRIPTION */
html[data-rdv-modal-origin="demande-inscription"] #rdv-parent-card .rdv-cancel-rdv,
html[data-rdv-modal-origin="demande-inscription"] .rdv-parent-card .rdv-cancel-rdv{
  opacity: .45 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  filter: grayscale(1) !important;
}
/* =====================================================
   PRODUCTION — Réduction largeur cadres onglets -20%
   Texte conservé identique
===================================================== */
.rdv-parent-wrap .rdv-tab-btn{
  padding-left: 9.6px !important;
  padding-right: 9.6px !important;
  font-size: 12.5px !important;
}
/* =====================================================
   PRODUCTION — Réduction largeur CADRES onglets -20%
   Texte conservé
   Ancien min-width : 320px
   Nouveau min-width : 256px
===================================================== */

.rdv-parent-wrap .rdv-tabs-nav > .rdv-tab-btn[data-tab]{
  width:256px !important;
  min-width:256px !important;
  max-width:256px !important;
  flex:0 0 256px !important;
  padding-left:14px !important;
  padding-right:14px !important;
  font-size:12px !important;
  box-sizing:border-box !important;
  white-space:nowrap !important;
}
/* =====================================================
   PRODUCTION — Bouton Tests Programmés
   Bouton indépendant, sans cadre, rouge vif, clignotant
===================================================== */

.rdv-parent-wrap .rdv-tests-programmes-btn{
  margin-left: 28px !important; /* espace après ÉLÈVES INSCRITS */
  padding: 8px 14px !important;

  background: #ff0000 !important;
  color: #ffffff !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;

  cursor: pointer !important;
  animation: rdvTestsProgrammesBlink 1s ease-in-out infinite !important;
}

.rdv-parent-wrap .rdv-tests-programmes-btn:hover{
  background: #cc0000 !important;
  color: #ffffff !important;
}

@keyframes rdvTestsProgrammesBlink{
  0%{
    opacity: 1;
  }
  50%{
    opacity: .45;
  }
  100%{
    opacity: 1;
  }
}
/* =====================================================
   PRODUCTION — Bouton Tests Programmés
===================================================== */
.rdv-parent-wrap .rdv-tests-programmes-btn{
  margin-left: 32px !important;
  padding: 8px 14px !important;
  background: #ff0000 !important;
  color: #fff !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  animation: rdvTestsProgrammesBlink 1s ease-in-out infinite !important;
}

.rdv-parent-wrap .rdv-tests-programmes-btn:hover{
  background: #cc0000 !important;
  color: #fff !important;
}

@keyframes rdvTestsProgrammesBlink{
  0%{ opacity: 1; }
  50%{ opacity: .45; }
  100%{ opacity: 1; }
}

/* Fond derrière la modale */
.rdv-tests-planning-backdrop{
  display: none !important;
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0,0,0,.48) !important;
  z-index: 9999998 !important;
}

.rdv-tests-planning-backdrop.is-open{
  display: block !important;
}
/* =====================================================
   PRODUCTION — Tests Programmés modal
   Affiche le vrai tableau planning dans son contexte rdv-parent-wrap
===================================================== */

.rdv-tests-programmes-modal{
  display:none !important;
  position:fixed !important;
  inset:0 !important;
  z-index:9999999 !important;
}

.rdv-tests-programmes-modal.is-open{
  display:block !important;
}

.rdv-tests-programmes-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(0,0,0,.35) !important;
}

.rdv-tests-programmes-card{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  transform:translate(-50%, -50%) !important;

  width:min(980px, calc(100vw - 50px)) !important;
  max-height:calc(100vh - 120px) !important;
  overflow:auto !important;

  background:#fff !important;
  border:1px solid rgba(0,0,0,.25) !important;
  border-radius:0 !important;
  padding:14px !important;
  box-shadow:0 12px 34px rgba(0,0,0,.32) !important;
}

.rdv-tests-programmes-close{
  position:absolute !important;
  top:6px !important;
  right:8px !important;
  width:24px !important;
  height:24px !important;
  line-height:22px !important;
  padding:0 !important;

  background:#111 !important;
  color:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  font-size:14px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  z-index:5 !important;
}

.rdv-tests-programmes-body{
  padding-top:10px !important;
}

/* Très important : redonner le contexte CSS réel du plugin */
.rdv-tests-programmes-card .rdv-parent-wrap{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* La section affichée dans la modale doit être visible */
.rdv-tests-programmes-card .rdv-test-entree-planning-section{
  display:block !important;
  position:relative !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
}

/* On ne réinvente pas le style du tableau : on laisse .rdv-parent-wrap .rdv-table agir */
.rdv-tests-programmes-card .rdv-test-entree-planning-table{
  display:table !important;
  visibility:visible !important;
}
/* =====================================================
   FIX — Détails au-dessus de la modal Tests Programmés
   Objectif : garder les deux modals ouvertes
===================================================== */

#rdv-parent-card.is-open{
  z-index: 10000050 !important;
}

#rdv-parent-card.is-open .rdv-modal-backdrop{
  z-index: 10000051 !important;
}

#rdv-parent-card.is-open .rdv-modal-card{
  z-index: 10000052 !important;
}
/* =====================================================
   FIX — Modal Tests Programmés style Recherche globale
===================================================== */

.rdv-tests-programmes-modal{
  display:none !important;
  position:fixed !important;
  inset:0 !important;
  z-index:9999999 !important;
  align-items:flex-start !important;
  justify-content:center !important;
  padding:70px 18px 18px !important;
  background:rgba(0,0,0,.12) !important;
}

.rdv-tests-programmes-modal.is-open{
  display:flex !important;
}

.rdv-tests-programmes-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:transparent !important;
}

.rdv-tests-programmes-card{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;

  width:min(1220px, 96vw) !important;
  max-height:82vh !important;
  overflow:auto !important;

  background:rgba(255,255,255,.90) !important;
  border:1px solid rgba(15,41,84,.28) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.18) !important;
  backdrop-filter:blur(4px) !important;
  border-radius:0 !important;
  padding:14px 16px !important;
}

.rdv-tests-programmes-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin-bottom:12px !important;
}

.rdv-tests-programmes-title{
  font-weight:900 !important;
  color:#0F2954 !important;
  text-transform:uppercase !important;
  font-size:13px !important;
}

.rdv-tests-programmes-close{
  position:static !important;
  width:auto !important;
  height:auto !important;
  line-height:1.2 !important;

  border:none !important;
  background:transparent !important;
  color:#c40000 !important;
  font-size:18px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  padding:0 4px !important;
}

.rdv-tpm-line{
  display:flex !important;
  align-items:flex-end !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  margin-bottom:10px !important;
}

.rdv-tpm-line select,
.rdv-tpm-line input{
  height:34px !important;
  font-size:12px !important;
  border:none !important;
  border-bottom:2px solid #111 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
}

.rdv-tpm-key{
  min-width:260px !important;
}

.rdv-tpm-reset{
  border:none !important;
  background:transparent !important;
  color:#c40000 !important;
  font-weight:900 !important;
  cursor:pointer !important;
  padding:0 4px 4px !important;
}

.rdv-tpm-count{
  border-top:1px solid rgba(15,41,84,.18) !important;
  padding-top:10px !important;
  margin-bottom:8px !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
}

.rdv-tests-programmes-body{
  padding-top:0 !important;
}

.rdv-tests-programmes-card .rdv-parent-wrap{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.rdv-tests-programmes-card .rdv-parent-history{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  overflow:auto !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-section{
  display:block !important;
  position:relative !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
}

.rdv-tests-programmes-card .rdv-followup-title,
.rdv-tests-programmes-card .rdv-slots-title{
  display:none !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table{
  display:table !important;
  visibility:visible !important;
  width:100% !important;
  min-width:1050px !important;
  border-collapse:collapse !important;
  table-layout:fixed !important;
  font-size:12px !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th,
.rdv-tests-programmes-card .rdv-test-entree-planning-table td{
  border:1px solid rgba(15,41,84,.25) !important;
  padding:6px 7px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  text-align:left !important;
  color:#0F2954 !important;
  font-size:12px !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th{
  color:#0F2954 !important;
  background:rgba(255,255,255,.28) !important;
  font-weight:900 !important;
}

.rdv-tests-programmes-card tr.rdv-test-entree-planning-row{
  cursor:pointer !important;
}

.rdv-tests-programmes-card tr.rdv-test-entree-planning-row:hover{
  background:rgba(44,123,229,.08) !important;
}

.rdv-tests-programmes-card .rdv-tpm-no-result td{
  color:#c40000 !important;
  font-weight:900 !important;
  padding:10px 7px !important;
}

/* Garder la modal détails au-dessus si on clique une ligne */
#rdv-parent-card.is-open{
  z-index:10000050 !important;
}

#rdv-parent-card.is-open .rdv-modal-backdrop{
  z-index:10000051 !important;
}

#rdv-parent-card.is-open .rdv-modal-card{
  z-index:10000052 !important;
}

@media (max-width:760px){
  .rdv-tpm-line{
    flex-wrap:wrap !important;
  }

  .rdv-tpm-key{
    min-width:100% !important;
  }

  .rdv-tests-programmes-card{
    width:calc(100vw - 24px) !important;
    max-height:88vh !important;
  }
}
.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(1),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(1){
  width:16% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(2),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(2){
  width:8% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(3),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(3){
  width:8% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(4),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(4){
  width:8% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(5),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(5){
  width:18% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(6),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(6){
  width:11% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(7),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(7){
  width:17% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(8),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(8){
  width:14% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(9),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(9){
  width:10% !important;
}
/* =====================================================
   Planning Tests Programmés — colonnes finales centrées
===================================================== */

.rdv-tests-programmes-card .rdv-test-entree-planning-table{
  table-layout:fixed !important;
  width:100% !important;
  min-width:1050px !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th,
.rdv-tests-programmes-card .rdv-test-entree-planning-table td{
  text-align:center !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* Largeurs identiques logique Élèves inscrits */
.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(1),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(1){
  width:18% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(2),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(2){
  width:8% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(3),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(3){
  width:8% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(4),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(4){
  width:8% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(5),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(5){
  width:18% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(6),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(6){
  width:11% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(7),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(7){
  width:17% !important;
}

.rdv-tests-programmes-card .rdv-test-entree-planning-table th:nth-child(8),
.rdv-tests-programmes-card .rdv-test-entree-planning-table td:nth-child(8){
  width:12% !important;
}
/* =====================================================
   Planning des tests d’entrées — affichage sous Élèves inscrits uniquement
   Même logique de largeur que le tableau Élèves inscrits
===================================================== */

.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
}

.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th,
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td{
  text-align:center !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* Élève */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(1),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(1){
  width:15% !important;
}

/* Civilité */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(2),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(2){
  width:7% !important;
}

/* Classe */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(3),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(3){
  width:7% !important;
}

/* Année */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(4),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(4){
  width:7% !important;
}

/* Responsable légal */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(5),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(5){
  width:17% !important;
}

/* Contact */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(6),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(6){
  width:11% !important;
}

/* Entretien */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(7),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(7){
  width:18% !important;
}

/* Test entrée */
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table th:nth-child(8),
.rdv-tab-panel[data-panel="enrolled"] .rdv-test-entree-planning-section:not(.rdv-tests-programmes-cloned-section) .rdv-test-entree-planning-table td:nth-child(8){
  width:18% !important;
}
/* =====================================================
   FIX — Centrer la modal Tests Programmés au milieu écran
===================================================== */

.rdv-tests-programmes-modal{
  display:none !important;
  position:fixed !important;
  inset:0 !important;
  z-index:9999999 !important;

  align-items:center !important;
  justify-content:center !important;

  padding:18px !important;
  background:rgba(0,0,0,.12) !important;
}

.rdv-tests-programmes-modal.is-open{
  display:flex !important;
}

.rdv-tests-programmes-card{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;

  width:min(1220px, 96vw) !important;
  max-height:82vh !important;
  overflow:auto !important;
}
/* =====================================================
   Correction largeurs colonnes — Suivi des inscriptions
   Réduire Responsable légal / Contact / Entretien / Formulaire
   Donner plus de largeur à Statut
===================================================== */

.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-section .rdv-followup-table{
  table-layout: fixed !important;
  width: 100% !important;
}

/* Responsable légal réduit */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table th[data-col="responsable_legal"],
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table td[data-col="responsable_legal"]{
  width: 11% !important;
  max-width: 11% !important;
}

/* Contact réduit */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table th[data-col="contact"],
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table td[data-col="contact"]{
  width: 7% !important;
  max-width: 7% !important;
}

/* Entretien réduit */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table th[data-col="entretien"],
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table td[data-col="entretien"]{
  width: 10% !important;
  max-width: 10% !important;
}

/* Formulaire réduit */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table th[data-col="formulaire"],
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table td[data-col="formulaire"]{
  width: 9% !important;
  max-width: 9% !important;
}

/* Statut élargi */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table th[data-col="statut"],
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table td[data-col="statut"]{
  width: 27% !important;
  max-width: 27% !important;
}

/* Le select Statut doit prendre toute la largeur disponible */
.rdv-parent-wrap .rdv-tab-panel[data-panel="followup"] 
.rdv-followup-table td[data-col="statut"] .rdv-followup-statut-select{
  width: 80% !important;
  max-width: 80% !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
/* =====================================================
   Modal Tests programmés — onglets internes
===================================================== */

.rdv-tests-programmes-modal .rdv-tpm-inner-tabs,
#rdv-tests-programmes-modal .rdv-tpm-inner-tabs{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 0 12px !important;
  padding:0 0 8px !important;
  border-bottom:1px solid rgba(15,41,84,.18) !important;
}

.rdv-tests-programmes-modal .rdv-tpm-tab,
#rdv-tests-programmes-modal .rdv-tpm-tab{
  background:#ffffff !important;
  color:#0F2954 !important;
  border:1px solid #0F2954 !important;
  padding:6px 12px !important;
  font-size:12px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.rdv-tests-programmes-modal .rdv-tpm-tab.is-active,
#rdv-tests-programmes-modal .rdv-tpm-tab.is-active{
  background:#0F2954 !important;
  color:#ffffff !important;
}

.rdv-tests-programmes-modal .rdv-tpm-tab-panel,
#rdv-tests-programmes-modal .rdv-tpm-tab-panel{
  display:none !important;
}

.rdv-tests-programmes-modal .rdv-tpm-tab-panel.is-active,
#rdv-tests-programmes-modal .rdv-tpm-tab-panel.is-active{
  display:block !important;
}

/* Dans le modal Tests programmés > Entretien et visite :
   masquer Formulaire et Statut, garder Entretien */
.rdv-tests-programmes-entretien-wrap th[data-col="formulaire"],
.rdv-tests-programmes-entretien-wrap td[data-col="formulaire"],
.rdv-tests-programmes-entretien-wrap th[data-col="statut"],
.rdv-tests-programmes-entretien-wrap td[data-col="statut"]{
  display:none !important;
  visibility:hidden !important;
}

/* =====================================================
   FIX — Modal Tests programmés : filtres locaux par tableau
   - supprime l'ancienne ligne filtre globale du haut
   - garde une ligne filtre directement au-dessus de chaque tableau
===================================================== */

#rdv-tests-programmes-modal .rdv-tests-programmes-card > .rdv-tpm-line,
#rdv-tests-programmes-modal .rdv-tests-programmes-card > .rdv-tpm-count{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

#rdv-tests-programmes-modal .rdv-tpm-tab-panel .rdv-tpm-local-line,
#rdv-tests-programmes-modal .rdv-tpm-tab-panel .rdv-followup-tools{
  display:flex !important;
  align-items:flex-end !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  margin:0 0 8px 0 !important;
  padding:0 0 8px 0 !important;
  border-bottom:1px solid rgba(15,41,84,.16) !important;
  background:transparent !important;
}

#rdv-tests-programmes-modal .rdv-tpm-local-line .rdv-tpm-count{
  display:inline-flex !important;
  align-items:center !important;
  margin-left:auto !important;
  margin-bottom:0 !important;
  padding-top:0 !important;
  border-top:0 !important;
  white-space:nowrap !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
}

#rdv-tests-programmes-modal .rdv-tpm-tab-panel .rdv-followup-count{
  margin-left:auto !important;
  white-space:nowrap !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
}
/* =====================================================
   FIX — Appliquer le style Entretien et visite
   au filtre Tests programmés
===================================================== */

/* Ligne filtre Tests programmés : même rendu que Entretien et visite */
#rdv-tests-programmes-modal .rdv-tpm-local-line,
#rdv-tests-programmes-modal .rdv-tpm-line{
  display:flex !important;
  align-items:flex-end !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  margin:0 0 8px 0 !important;
  padding:0 0 8px 0 !important;
  border-bottom:1px solid rgba(15,41,84,.16) !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Champs Tests programmés : supprimer les cadres */
#rdv-tests-programmes-modal .rdv-tpm-local-line select,
#rdv-tests-programmes-modal .rdv-tpm-local-line input,
#rdv-tests-programmes-modal .rdv-tpm-line select,
#rdv-tests-programmes-modal .rdv-tpm-line input{
  height:34px !important;
  line-height:34px !important;
  min-height:34px !important;
  padding:0 2px !important;
  font-size:12px !important;
  font-weight:700 !important;
  color:#0F2954 !important;
  background:transparent !important;
  border:none !important;
  border-bottom:2px solid #111 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:none !important;
}

/* Largeurs comme la ligne Entretien */
#rdv-tests-programmes-modal .rdv-tpm-col{
  width:210px !important;
  min-width:210px !important;
}

#rdv-tests-programmes-modal .rdv-tpm-key{
  width:260px !important;
  min-width:260px !important;
}

#rdv-tests-programmes-modal .rdv-tpm-from,
#rdv-tests-programmes-modal .rdv-tpm-to{
  width:150px !important;
  min-width:150px !important;
}

/* Reset comme Entretien : texte rouge simple */
#rdv-tests-programmes-modal .rdv-tpm-reset{
  height:34px !important;
  line-height:34px !important;
  padding:0 4px 4px !important;
  margin:0 !important;
  border:none !important;
  background:transparent !important;
  color:#c40000 !important;
  font-size:12px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}

/* Compteur sans cadre, sans ligne haute */
#rdv-tests-programmes-modal .rdv-tpm-local-line .rdv-tpm-count,
#rdv-tests-programmes-modal .rdv-tpm-line .rdv-tpm-count{
  display:inline-flex !important;
  align-items:center !important;
  margin-left:auto !important;
  padding:0 !important;
  border-top:none !important;
  white-space:nowrap !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
}

/* Sécurité : ne pas modifier le style Entretien et visite */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-tools{
  background:transparent !important;
  box-shadow:none !important;
}
/* =====================================================
   FIX — Modal Tests programmés : hauteur stable sans cumul
===================================================== */

#rdv-tests-programmes-modal .rdv-tests-programmes-card{
  height:var(--rdv-tpm-card-height, auto) !important;
  min-height:0 !important;
  max-height:82vh !important;
  overflow:auto !important;
}

#rdv-tests-programmes-modal .rdv-tpm-tab-panel{
  min-height:var(--rdv-tpm-panel-height, 0px) !important;
  overflow:visible !important;
}

#rdv-tests-programmes-modal .rdv-tpm-tab-panel.is-active{
  display:block !important;
}
/* =====================================================
   FIX — Modal Tests programmés : faire clignoter les données
   comme dans Entretien et visite
===================================================== */

/* =====================================================
   FIX — Tests programmés : clignoter seulement date/heure Test entrée
   Classe sans "blink" ni "clign" pour éviter le refresh silencieux
===================================================== */

/* Sécurité : ne jamais faire clignoter toute la ligne */  
#rdv-tests-programmes-modal tr.rdv-test-entree-future-blink,
#rdv-tests-programmes-modal tr.rdv-test-entree-future-blink > td{
  animation:none !important;
  -webkit-animation:none !important;
  opacity:1 !important;
}

/* Clignotement uniquement sur la cellule Test entrée */
#rdv-tests-programmes-modal td[data-col="test_entree"].rdv-test-entree-cell-alerte,
#rdv-tests-programmes-modal td.rdv-test-entree-cell-alerte{
  animation:rdvTestEntreeAlerte 1s linear infinite !important;
  -webkit-animation:rdvTestEntreeAlerte 1s linear infinite !important;
  font-weight:900 !important;
  color:#c40000 !important;
}

@keyframes rdvTestEntreeAlerte{
  0%,100%{ opacity:1; }
  50%{ opacity:.35; }
}

@-webkit-keyframes rdvTestEntreeAlerte{
  0%,100%{ opacity:1; }
  50%{ opacity:.35; }
}
/* =====================================================
   FIX FINAL — Tests programmés : la cellule Test entrée
   doit clignoter même si les règles statut passent après
===================================================== */

#rdv-tests-programmes-modal td[data-col="test_entree"].rdv-test-entree-cell-alerte,
#rdv-tests-programmes-modal td[data-col="test_entree"].rdv-test-entree-cell-alerte.rdv-status-past-no-blink,
#rdv-tests-programmes-modal td[data-col="test_entree"].rdv-test-entree-cell-alerte.rdv-status-entretien-past-no-blink,
#rdv-tests-programmes-modal td[data-col="test_entree"].rdv-test-entree-cell-alerte.rdv-status-demande-no-blink,
#rdv-tests-programmes-modal td[data-col="test_entree"].rdv-test-entree-cell-alerte.rdv-status-future-blink,
#rdv-tests-programmes-modal td[data-col="test_entree"].rdv-test-entree-cell-alerte.rdv-status-entretien-future-blink{
  animation:rdvTestEntreeAlerte 1s linear infinite !important;
  -webkit-animation:rdvTestEntreeAlerte 1s linear infinite !important;
  font-weight:900 !important;
  color:#c40000 !important;
}
/* =====================================================
   FIX — Select statut dans le haut du modal détails
===================================================== */

#rdv-parent-card .rdv-modal-head{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
}

#rdv-parent-card .rdv-modal-title{
  margin-right:auto !important;
}

#rdv-parent-card .rdv-modal-status-wrap{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  margin-left:auto !important;
  margin-right:8px !important;
  white-space:nowrap !important;
}

#rdv-parent-card .rdv-modal-status-label{
  font-size:11px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
  text-transform:uppercase !important;
}

#rdv-parent-card .rdv-modal-followup-status-select{
  height:28px !important;
  min-height:28px !important;
  line-height:28px !important;
  width:auto !important;
  min-width:170px !important;
  padding:0 8px !important;
  font-size:11px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
  background:#fff !important;
  border:1px solid #0F2954 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  outline:none !important;
  cursor:pointer !important;
}

#rdv-parent-card .rdv-modal-followup-status-select:disabled{
  opacity:.55 !important;
  cursor:wait !important;
}
/* =====================================================
   FIX — Modal Tests programmés : supprimer "Tous les champs"
   dans les deux onglets internes
===================================================== */

#rdv-tests-programmes-modal .rdv-tpm-col,
#rdv-tests-programmes-modal .rdv-followup-filter-col{
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  min-width:0 !important;
  max-width:0 !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
}

/* Réaligner les filtres après suppression du select */
#rdv-tests-programmes-modal .rdv-tpm-local-line,
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-tools{
  justify-content:flex-start !important;
}

#rdv-tests-programmes-modal .rdv-tpm-key,
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-keyword{
  width:320px !important;
  min-width:320px !important;
}
/* =====================================================
   FIX FINAL — Modal Tests programmés :
   filtre Tests = même rendu que filtre Entretien
===================================================== */

#rdv-tests-programmes-modal .rdv-tpm-local-line{
  display:flex !important;
  align-items:flex-end !important;
  gap:12px !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  margin:12px 0 16px 0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

#rdv-tests-programmes-modal .rdv-tpm-filter-dynamic{
  display:block !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;
}

#rdv-tests-programmes-modal .rdv-tpm-key{
  width:230px !important;
  min-width:230px !important;
  height:34px !important;
  line-height:34px !important;
  font-size:12px !important;
  font-weight:700 !important;
  color:#0F2954 !important;
  border:0 !important;
  border-bottom:2px solid #0F2954 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  padding:2px 4px !important;
}

#rdv-tests-programmes-modal .rdv-tpm-date-wrap{
  display:flex !important;
  align-items:flex-end !important;
  gap:8px !important;
  margin-left:18px !important;
  padding:0 !important;
  flex:0 0 auto !important;
}

#rdv-tests-programmes-modal .rdv-tpm-from,
#rdv-tests-programmes-modal .rdv-tpm-to{
  width:132px !important;
  min-width:132px !important;
  height:34px !important;
  line-height:34px !important;
  font-size:12px !important;
  font-weight:700 !important;
  color:#0F2954 !important;
  border:0 !important;
  border-bottom:2px solid #0F2954 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  padding:2px 4px !important;
}

#rdv-tests-programmes-modal .rdv-tpm-reset{
  margin:0 0 2px 0 !important;
  padding:0 !important;
  height:28px !important;
  line-height:28px !important;
  border:0 !important;
  background:transparent !important;
  color:#b00020 !important;
  font-size:12px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}

#rdv-tests-programmes-modal .rdv-tpm-count{
  margin-left:auto !important;
  white-space:nowrap !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
  display:inline-flex !important;
  align-items:center !important;
}
/* =====================================================
   FIX FINAL — Modal Tests programmés :
   Entretien et visite adopte exactement le filtre Tests
===================================================== */

/* Ligne filtre Entretien = même ligne que Tests */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-tools{
  display:flex !important;
  align-items:flex-end !important;
  gap:12px !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  margin:12px 0 16px 0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

/* Supprimer définitivement "Tous les champs" dans Entretien */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-filter-col{
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  min-width:0 !important;
  max-width:0 !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
}

/* Bloc recherche Entretien = bloc recherche Tests */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-filter-dynamic{
  display:block !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;
}

/* Champ recherche Entretien = champ recherche Tests */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-keyword{
  width:230px !important;
  min-width:230px !important;
  height:34px !important;
  line-height:34px !important;
  font-size:12px !important;
  font-weight:700 !important;
  color:#0F2954 !important;
  border:0 !important;
  border-bottom:2px solid #0F2954 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  padding:2px 4px !important;
}

/* Bloc dates Entretien = bloc dates Tests */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-date-wrap{
  display:flex !important;
  align-items:flex-end !important;
  gap:8px !important;
  margin-left:0 !important;
  padding:0 !important;
  flex:0 0 auto !important;
}

/* Dates Entretien = dates Tests */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-date-from,
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-date-to{
  width:132px !important;
  min-width:132px !important;
  height:34px !important;
  line-height:34px !important;
  font-size:12px !important;
  font-weight:700 !important;
  color:#0F2954 !important;
  border:0 !important;
  border-bottom:2px solid #0F2954 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  padding:2px 4px !important;
}

/* Reset Entretien = Reset Tests */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-reset{
  margin:0 0 2px 0 !important;
  padding:0 !important;
  height:28px !important;
  line-height:28px !important;
  border:0 !important;
  background:transparent !important;
  color:#b00020 !important;
  font-size:12px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}

/* Compteur Entretien = compteur Tests */
#rdv-tests-programmes-modal .rdv-tests-programmes-entretien-wrap .rdv-followup-count{
  margin-left:auto !important;
  white-space:nowrap !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#0F2954 !important;
  display:inline-flex !important;
  align-items:center !important;
}