/*
	Custom CSS
	Please make sure your CSS rules are 
	more particular / have higher priority
	then other page styles
*/
 #events h3   {
	/* add your css rule here */
}


 #events p.duration, #events div.duration   {
	/* add your css rule here */
}


 #events p.description, #events div.description   {
	/* add your css rule here */
}


 #events .selectedEvent   {
	/* add your css rule here */
}


 #events input.reserve_time_btn   {
	/* add your css rule here */
}


 #events input.select_another_btn   {
	/* add your css rule here */
}


 #eventForm #start_date-block-container h3, #eventForm #timeline-container h3   {
	/* add your css rule here */
}


 #eventForm #save_button   {
	/* add your css rule here */
}


 div.ui-widget-content   {
	/* add your css rule here */
}


 div.ui-widget-header   {
	/* add your css rule here */
}


 #timeline-container table.timeline   {
	/* add your css rule here */
}


 .timeline td.not_worked_time   {
	/* add your css rule here */
}


 .timeline td.free_time   {
	/* add your css rule here */
}


 .timeline td.selected_time   {
	/* add your css rule here */
}


 .timeline td.reserved_time   {
	/* add your css rule here */
}


 div#loading   {
	/* add your css rule here */
}


 div#widget_container   {
	/* add your css rule here */
}


 #widget_container #widget_header   {
	/* add your css rule here */
}


 #widget_container #widget_footer   {
	/* add your css rule here */
}


 #widget_container h1.title a   {
	/* add your css rule here */
}


 #events .event_price   {
	/* add your css rule here */
}


 #eventForm dd.extention_data   {
	/* add your css rule here */
}


 dd.extention_data dl.zend_form dt, dd.extention_data dl.zend_form dd label   {
	/* add your css rule here */
}


/* Cache la ligne "Nombre total des prestations incluses" */
.package-list-item.package-service{
  display: none !important;
}

/* Remplace l’icône "réservation de groupe" (et garde la même taille) */
.plugin-group-booking::before{
  background: url("https://svgsilh.com/svg/155322.svg") !important;
  background-size: 18px !important;     /* = taille de l’ancien */
  background-repeat: no-repeat !important;
  background-position: left center !important;
}


/* Cache l'affichage "Notre heure: …" */
#sb_booking_company_time{
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* Cache l’affichage des points de fidélité */
.item__bonus.service-bonus{
  display: none !important;
}


/* Rend le badge transparent */
.slot--available-slot{
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}


/* Ajoute le texte devant les places restantes */
.slot--available-slot::before{
  content: "Places restantes :";
  display: inline-block;
  padding-right: 6px; /* ajuste si besoin */
}


/* Taille du bloc (les nombres) */
.slot--available-slot{
  font-size: 10px !important;
}

/* Taille du texte ajouté */
.slot--available-slot::before{
  content: "Places restantes : ";
  font-size: 10px !important;
  font-weight: 500;
}


/* 1) On cache les places restantes pour les services */

/* Bilan Bordeaux */
#sb_time_slots_weekly_container a[href*="/service/59/"] .slot--available-slot, 
/* SI Bordeaux */
#sb_time_slots_weekly_container a[href*="/service/5/"] .slot--available-slot, 
/* Bilan Laruscade*/
#sb_time_slots_weekly_container a[href*="/service/60/"] .slot--available-slot, 
/* SI Laruscade */
#sb_time_slots_weekly_container a[href*="/service/12/"] .slot--available-slot,
/* Conseils à distance */ 
#sb_time_slots_weekly_container a[href*="/service/25/"] .slot--available-slot,
/* BS */ 
#sb_time_slots_weekly_container a[href*="/service/26/"] .slot--available-slot,
/* NW */
#sb_time_slots_weekly_container a[href*="/service/3/"] .slot--available-slot,
/* Sortie Sportive */
#sb_time_slots_weekly_container a[href*="/service/40/"] .slot--available-slot,
/* BL */
#sb_time_slots_weekly_container a[href*="/service/20/"] .slot--available-slot,
/* VP */
#sb_time_slots_weekly_container a[href*="/service/19/"] .slot--available-slot,
/* Garde à dom */
#sb_time_slots_weekly_container a[href*="/service/55/"] .slot--available-slot,
/* Taxi */
#sb_time_slots_weekly_container a[href*="/service/56/"] .slot--available-slot{
  display: none !important;
}


/* 2) Le lien remplit tout le slot + centrage vertical/horizontal */
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/59/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/60/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/5/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/12/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/25/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/26/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/3/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/40/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/20/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/19/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/55/"],
#sb_time_slots_weekly_container a.cell.sb-cell[href*="/service/56/"]{
  height: 100% !important;
  width: 100% !important;

  display: flex !important;
  align-items: center !important;      /* centre vertical */
  justify-content: center !important;  /* centre horizontal */

  padding: 0 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}



/* Ajuste l'espace du bouton pour qu'il ne soit pas collé au titre */
.date-bar {
    margin-top: 20px;
}

/* Cache toutes les options (attributs) dans la liste des packages */
.selected-package-list .package-attr {
    display: none !important;
}

/* Masque l'affichage de la durée totale dans les détails des options du package */
.paid-attribute-totals__duration {
    display: none !important;
}

/* Masque la durée (ex: 1 h) et le séparateur / dans la liste */
.item-data.one-line__item .item-time, 
.item-data.one-line__item .item-data__divider {
    display: none !important;
}




/* PERSONNALISATION DES FORFAITS */


/* Cacher la ligne "Nombre total des prestations incluses" */

.package-list-item.package-service
{
  display: none !important;
}


/* Supprimer la description ET la liste des produits */

.txt.short,
.selected-package-list.short 
{
    display: none !important;
}


/* Ajuster l'espace du bouton pour qu'il ne soit pas collé au titre */

.date-bar 
{
    margin-top: 20px;
}


/* Cacher toutes les options (attributs) dans la liste des forfaits*/

.selected-package-list .package-attr 
{
    display: none !important;
}


/* Masquer l'affichage de la durée totale dans les détails des options du forfait*/

.paid-attribute-totals__duration 
{
    display: none !important;
}



/* PERSONNALISATION OPTION DE RESERVATION */

/* 1. Masquer l'icône puzzle d'origine */
.product-item svg.sb-inline-svg {
    display: none !important;
}

/* 2. Insérer votre logo à la place */
.product-item .item-picture {
    width: 80px; /* Ajusté pour votre logo */
    height: 80px;
    margin: 5px auto;
    background-image: url('https://polecanin.fr/wp-content/uploads/2026/01/logo-educateur-canin-pole-canin.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

/* 3. Supprimer l'espace vide sous le titre */
.product-item .item-description.paid-attr__description {
    display: none !important;
}

.product-item .tab-col.flex-row {
    min-height: auto !important;
    padding-bottom: 10px !important;
    padding-top: 5px !important;
}


/* MENU HEADER */

/* Force l'affichage du lien Cours Collectifs en haut niveau */
#sb_menu_list_items_container li:has(a[href="#book-class"]) {
    display: inline-block !important;
    visibility: visible !important;
}

/* Cache spécifiquement les éléments que vous ne voulez plus voir (rappel) */
a.popup-hide[href="#bonus"], 
a.popup-hide[href="#reviews"] {
    display: none !important;
}




/* 1. Masquer TOUS les créneaux qui ont la classe 'busy' (le gris qui pollue) */
.time-slot.busy {
    display: none !important;
}

/* 2. Ré-afficher UNIQUEMENT celui qui est le début d'un vrai cours complet */
/* On cible le premier créneau 'busy' qui suit un espace libre ou qui commence une série */
.time-slot.busy:first-child, 
.time-slot.available + .time-slot.busy {
    display: block !important;
    background-color: #f8d7da !important; /* Rouge pâle */
    border: 1px solid #f5c6cb !important;
    color: #721c24 !important;
    position: relative;
}

/* 3. Ajouter la mention "COMPLET" pour plus de clarté */
.time-slot.busy:first-child .cell::after,
.time-slot.available + .time-slot.busy .cell::after {
    content: " - COMPLET";
    font-weight: bold;
    font-size: 0.8em;
}