/* =====================================================
   ISOLATION + RÉDUCTION PLUGIN SMS
   À mettre tout en bas de rdv-parent-admin.css
===================================================== */

/* Sécurité générale :
   évite que les largeurs/paddings du thème cassent le plugin */
.rdv-parent-wrap.rdv-sms-plugin,
.rdv-parent-wrap.rdv-sms-plugin *{
  box-sizing:border-box !important;
}

/* Taille des textes principaux :
   onglets, tableaux, colonnes, champs, listes, boutons */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn,
.rdv-parent-wrap.rdv-sms-plugin table,
.rdv-parent-wrap.rdv-sms-plugin th,
.rdv-parent-wrap.rdv-sms-plugin td,
.rdv-parent-wrap.rdv-sms-plugin input,
.rdv-parent-wrap.rdv-sms-plugin select,
.rdv-parent-wrap.rdv-sms-plugin button{
  font-size:12px !important;
  line-height:1.25 !important;
}

/* =====================================================
   1) TAILLE DES GRANDS TITRES / TITRES TABLEAUX
   Impacte :
   - H1
   - H2
   - H3
   - titres des sections / titres des tableaux
     exemples :
     ÉLÈVES INSCRITS
     PLANNING DES TESTS D’ENTRÉES
     ÉLÈVES RADIÉS
===================================================== */

/* Cible les titres H1, H2, H3 + les titres des tableaux */
.rdv-parent-wrap.rdv-sms-plugin h1,
.rdv-parent-wrap.rdv-sms-plugin h2,
.rdv-parent-wrap.rdv-sms-plugin h3:not(.rdv-cp-caption):not(.rdv-club-section-title):not(.rdv-canteen__table-title),
.rdv-parent-wrap.rdv-sms-plugin .rdv-followup-title{

  /* Taille du texte des titres tableaux */
  font-size:15px !important;

  /* Hauteur de ligne des titres tableaux */
  line-height:1.2 !important;

  /* Gras des titres tableaux */
  font-weight:900 !important;

  /* Renforce visuellement le gras des titres tableaux */
  -webkit-text-stroke:0.25px currentColor !important;
  text-shadow:0.25px 0 0 currentColor !important; 
}


/* =====================================================
   2) TAILLE DES ONGLET PRINCIPAUX
   Impacte :
   - SMS ET RÉSERVATION
   - HISTORIQUE DES DEMANDES
   - SUIVI DES DEMANDES
   - SUIVI DES INSCRIPTIONS
   - ENTRETIENS ET TESTS
===================================================== */

/* Cible uniquement les onglets principaux */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn{

  /* Taille du texte des onglets principaux */
  font-size:16px !important;

  /* Hauteur de ligne des onglets principaux */
  line-height:1.25 !important;

  /* Gras des onglets principaux */
  font-weight:200 !important;

  /* Renforce visuellement le gras des onglets principaux */
  -webkit-text-stroke:0.19px currentColor !important;
  text-shadow:0.19px 0 0 currentColor !important;
}
/* =====================================================
   MODALES OUVERTES DEPUIS LES TABLEAUX
   width = largeur de la modale
   zoom  = taille globale du contenu
   1     = normal
   0.90  = réduire
   1.10  = agrandir
===================================================== */

/* 1) Tableau : Demande d'inscription */
#rdv-parent-card[data-followup-section="demande-inscription"] .rdv-modal-card{
  width:min(760px, calc(100% - 24px)) !important;
  max-width:760px !important;
  max-height:calc(100vh - 70px) !important;
  zoom:1 !important;
}

/* 2) Tableau : Entretien et visite */
#rdv-parent-card[data-followup-section="entretien-visite"] .rdv-modal-card{
  width:min(520px, calc(100% - 24px)) !important;
  max-height:calc(100vh - 70px) !important;
  zoom:0.90 !important;
}

/* 3) Tableau : Planning des tests */
#rdv-parent-card[data-followup-section="planning-tests"] .rdv-modal-card{
  width:min(690px, calc(100% - 24px)) !important;
  max-height:calc(100vh - 70px) !important;
  zoom:1 !important;
}

/* Texte intérieur de toutes ces modales */
/* Texte intérieur de la modale, sans toucher les noms des onglets */
#rdv-parent-card[data-followup-section] .rdv-detail-tab-panel,
#rdv-parent-card[data-followup-section] .rdv-detail-tab-panel *,
#rdv-parent-card[data-followup-section] .rdv-modal-foot,
#rdv-parent-card[data-followup-section] .rdv-modal-foot *{
  font-size:11px !important;
  line-height:1.25 !important;
}

/* =====================================================
   ZOOM GLOBAL INTERDIT
   Ne pas utiliser zoom : cela décale la bande et rend le texte flou
===================================================== */

.rdv-parent-wrap.rdv-sms-plugin {
    zoom: 1 !important;
}
/* =====================================================
   FLASH ORANGE FORT — LIGNE ARRIVÉE AU PLANNING DES TESTS
   Tableau impacté : Planning des tests d’entrées
===================================================== */

@keyframes rdvPlanningMovedOrangeFlash {
  0% {
    background-color: rgba(255, 193, 7, 0);
    box-shadow: inset 0 0 0 9999px rgba(255, 140, 0, 0);
    outline-color: rgba(255, 100, 0, 0);
  }

  8% {
    background-color: rgba(255, 193, 7, .95);
    box-shadow: inset 0 0 0 9999px rgba(255, 140, 0, .95);
    outline-color: rgba(255, 100, 0, 1);
  }

  28% {
    background-color: rgba(255, 193, 7, .90);
    box-shadow: inset 0 0 0 9999px rgba(255, 152, 0, .90);
    outline-color: rgba(255, 100, 0, 1);
  }

  55% {
    background-color: rgba(255, 193, 7, .75);
    box-shadow: inset 0 0 0 9999px rgba(255, 152, 0, .70);
    outline-color: rgba(255, 100, 0, .95);
  }

  78% {
    background-color: rgba(255, 243, 205, .65);
    box-shadow: inset 0 0 0 9999px rgba(255, 193, 7, .45);
    outline-color: rgba(255, 100, 0, .70);
  }

  100% {
    background-color: rgba(255, 193, 7, 0);
    box-shadow: inset 0 0 0 9999px rgba(255, 140, 0, 0);
    outline-color: rgba(255, 100, 0, 0);
  }
}

.rdv-parent-wrap .rdv-test-entree-planning-table tr.rdv-planning-move-flash > td,
.rdv-parent-wrap .rdv-followup-section[data-followup-section="planning-tests"] tr.rdv-planning-move-flash > td,
#rdv-tests-programmes-modal .rdv-test-entree-planning-table tr.rdv-planning-move-flash > td {
  animation: rdvPlanningMovedOrangeFlash 3.4s ease-in-out 1 !important;
  outline: none !important;
  outline-offset: 0 !important;
  font-weight: 900 !important;
  color: #0F2954 !important;
}
/* =====================================================
   FLASH VERT CLAIR 2S — LIGNE ARRIVÉE AUX ÉLÈVES INSCRITS
   Déplacement : Planning des tests → Élèves inscrits
===================================================== */

@keyframes rdvEnrolledMovedGreenFlash {
  0% {
    box-shadow: inset 0 0 0 9999px rgba(144, 238, 144, 0);
    outline-color: rgba(144, 238, 144, 0);
  }

  10% {
    box-shadow: inset 0 0 0 9999px rgba(144, 238, 144, .90);
    outline-color: rgba(76, 175, 80, 1);
  }

  55% {
    box-shadow: inset 0 0 0 9999px rgba(144, 238, 144, .45);
    outline-color: rgba(76, 175, 80, .75);
  }

  100% {
    box-shadow: inset 0 0 0 9999px rgba(144, 238, 144, 0);
    outline-color: rgba(144, 238, 144, 0);
  }
}

.rdv-parent-wrap .rdv-tab-panel[data-panel="enrolled"]
.rdv-followup-section[data-followup-section="eleves-inscrits"]
tr.rdv-enrolled-move-flash-green > td {
  animation: rdvEnrolledMovedGreenFlash 2s ease-in-out 1 !important;
}
/* =====================================================
   ICÔNES ONGLET PRINCIPAUX — VERSION WORDPRESS DASHICONS
   Sans lien, sans image, sans emoji coloré
===================================================== */

/* Style commun des icônes */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn::before,
.rdv-parent-wrap.rdv-sms-plugin .rdv-tests-programmes-btn::before{
  font-family:dashicons !important;
  display:inline-block !important;

  font-size:16px !important;
  width:18px !important;
  height:18px !important;
  line-height:18px !important;

  margin-right:7px !important;
  vertical-align:-3px !important;

  color:currentColor !important;
  font-weight:400 !important;
}


/* SMS ET RÉSERVATION — bulle message */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn[data-tab="form"]::before{
  content:"" !important;
}


/* HISTORIQUE DES DEMANDES — horloge */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn[data-tab="history"]::before{
  content:"" !important;
}


/* SUIVI DES DEMANDES — liste */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn[data-tab="followup"]::before{
  content:"" !important;
}


/* SUIVI DES INSCRIPTIONS — groupe */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn[data-tab="enrolled"]::before{
  content:"" !important;
}


/* RÉCAP — graphique récapitulatif */
.rdv-parent-wrap.rdv-sms-plugin .rdv-tests-programmes-btn::before{
  content:"\f185" !important;
}
/* Masque au-dessus de la bande fixe */
.rdv-tabs-origin-top-mask {
    position: fixed !important;
    display: none;
    top: 0;
    left: 0;
    width: 100vw;
    height: 0;
    background: #ffffff !important;
    z-index: 999998 !important;
    pointer-events: none !important;
}
/* =====================================================
   LOGO / MENU — RESTE EN HAUT SANS CASSER LE SCROLL
===================================================== */

body.admin-bar .site-header,
body.admin-bar #masthead,
body.admin-bar header[role="banner"] {
    position: sticky !important;
    top: 32px !important;
    z-index: 1000000 !important;
    background: #ffffff !important;
}
body:not(.admin-bar) .site-header,
body:not(.admin-bar) #masthead,
body:not(.admin-bar) header[role="banner"] {
    position: sticky !important;
    top: 0px !important;
    z-index: 1000000 !important;
    background: #ffffff !important;
}
#rdv-parent-card .rdv-presence-actions-panel table.rdv-pa-kv tr.rdv-modal-actions-row > td:first-child {
    text-align: left !important;
    vertical-align: middle !important;
    padding-left: 18px !important;
    padding-right: 14px !important;
}

#rdv-parent-card .rdv-presence-actions-panel table.rdv-pa-kv tr.rdv-modal-actions-row > td:last-child {
    text-align: left !important;
    vertical-align: middle !important;
    padding-left: 14px !important;
}

#rdv-parent-card .rdv-presence-actions-panel tr.rdv-modal-actions-row .rdv-modal-actions-box,
#rdv-parent-card .rdv-presence-actions-panel tr.rdv-modal-actions-row .rdv-actions-col,
#rdv-parent-card .rdv-presence-actions-panel tr.rdv-modal-actions-row .rdv-action-line {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* =====================================================
   ISOLATION AFFICHAGE FRONT — MODE ER SÉCURISÉ
   Important :
   - ne touche pas aux icônes Dashicons
   - ne touche pas aux couleurs des onglets
   - ne touche pas aux couleurs de flash / clignotement
   - ne casse pas les boutons existants
===================================================== */

/* Cadre général du plugin uniquement */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin {
    width: min(1150px, calc(100vw - 48px)) !important;
    max-width: none !important;

    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;

    zoom: 1 !important;
    text-shadow: none !important;
    letter-spacing: 0 !important;
    filter: none !important;
    box-sizing: border-box !important;
}

/* Box sizing uniquement : sans toucher aux polices des icônes */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin *,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin *::before,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin *::after {
    box-sizing: border-box !important;
}

/* Textes normaux uniquement — pas les icônes */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin label,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin p,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin input,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin select,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin textarea {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    text-shadow: none !important;
    letter-spacing: 0 !important;
}

/* Spans normaux uniquement — exclusion des icônes */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin span:not(.dashicons):not([class*="dashicons"]) {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    text-shadow: none !important;
    letter-spacing: 0 !important;
}

/* Tableaux : taille seulement, sans forcer la couleur */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin table,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin table th,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin table td {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    text-shadow: none !important;
}

/* Titres : taille uniquement, sans écraser les couleurs existantes */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin h1,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin h2,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin h3:not(.rdv-cp-caption):not(.rdv-club-section-title):not(.rdv-canteen__table-title),
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-followup-title,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-section-title {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-shadow: none !important;
}

/* Boutons : ne pas forcer la couleur */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin button {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    text-shadow: none !important;
}

/* =====================================================
   ONGLETS — TEXTE NORMAL MÊME APRÈS CHANGEMENT D’ONGLET
   Couvre : normal, actif, sélectionné, focus, aria-selected
===================================================== */

html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button.active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button.is-active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button.selected,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button.rdv-active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button.rdv-current,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button[aria-selected="true"],
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button[aria-current="page"],
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn.active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn.is-active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn.selected,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn.rdv-active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn.rdv-current,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn[aria-selected="true"],
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn[aria-current="page"] {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    text-shadow: none !important;
}

/* =====================================================
   RESTAURATION DES ICÔNES WORDPRESS / DASHICONS
   Obligatoire pour éviter les carrés à la place des icônes
===================================================== */

html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .dashicons,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .dashicons::before,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin [class^="dashicons-"],
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin [class^="dashicons-"]::before,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin [class*=" dashicons-"],
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin [class*=" dashicons-"]::before {
    font-family: dashicons !important;
    font-weight: normal !important;
    font-style: normal !important;
    line-height: 1 !important;
    text-shadow: none !important;
}
/* =====================================================
   ONGLETS — SUPPRIMER LE GRAS PARTOUT
   Normal + sélectionné
===================================================== */

/* Onglets normaux */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn,
html body .rdv-parent-wrap.rdv-sms-plugin .rdv-tabs-nav button,
html body .rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn {
    font-weight: 400 !important;
}

/* Onglet sélectionné / actif */
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button.active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tabs-nav button.is-active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn.active,
html body .rdv-parent-wrap.rdv-sms-plugin.rdv-er-skin .rdv-tab-btn.is-active,
html body .rdv-parent-wrap.rdv-sms-plugin .rdv-tabs-nav button.active,
html body .rdv-parent-wrap.rdv-sms-plugin .rdv-tabs-nav button.is-active,
html body .rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn.active,
html body .rdv-parent-wrap.rdv-sms-plugin .rdv-tab-btn.is-active {
    font-weight: 400 !important;
}
