/* =========================================================
   Deck Bar - Events Manager
   Fichier à placer dans :
   /wp-content/plugins/deckbar-events-manager/assets/deckbar-events.css
   ========================================================= */

/* =========================================================
   1. Page liste des évènements
   Shortcode : [deckbar_events]
   ========================================================= */

.entry-content .deckbar-events-page,
.deckbar-events-page {
  background: var(--deck-bg-light, #F7FFFD) !important;
  color: var(--deck-deep, #003333) !important;
  padding: 3.5rem 0 5rem !important;
}

.entry-content .deckbar-events-container,
.deckbar-events-container {
  width: min(1060px, calc(100% - 40px)) !important;
  margin: 0 auto !important;
}

.entry-content .deckbar-events-header h1,
.deckbar-events-header h1 {
  color: var(--deck-deep, #003333) !important;
  font-family: var(--deck-font-main, Montserrat, Arial, Helvetica, sans-serif) !important;
  font-size: clamp(2.6rem, 5vw, 4.6rem) !important;
  font-weight: 500 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.035em !important;
  text-align: center !important;
  margin: 0 auto 3rem !important;
  text-transform: none !important;
}

.entry-content .deckbar-events-grid,
.deckbar-events-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 2rem !important;
  align-items: stretch !important;
  width: 100% !important;
  margin: 0 auto !important;
}

.entry-content .deckbar-event-card,
.deckbar-event-card {
  display: block !important;
  height: 100% !important;
  background: #ffffff !important;
  border: 2px solid rgba(0, 51, 51, 0.16) !important;
  border-radius: 26px !important;
  padding: 1rem !important;
  box-shadow: 0 14px 35px rgba(0, 51, 51, 0.10) !important;
  overflow: hidden !important;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease !important;
}

.entry-content .deckbar-event-card:hover,
.deckbar-event-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(0, 51, 51, 0.34) !important;
  box-shadow: 0 20px 45px rgba(0, 51, 51, 0.16) !important;
}

.entry-content .deckbar-event-card-link,
.entry-content .deckbar-event-card-link:hover,
.deckbar-event-card-link,
.deckbar-event-card-link:hover {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  color: inherit !important;
  text-decoration: none !important;
}

.entry-content .deckbar-event-card-media,
.deckbar-event-card-media {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  border-radius: 20px !important;
  background: var(--deck-dark, #05312d) !important;
  overflow: hidden !important;
  margin: 0 0 1rem !important;
}

.entry-content .deckbar-event-card-media img,
.deckbar-event-card-media img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}

.entry-content .deckbar-event-card-placeholder,
.deckbar-event-card-placeholder {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  font-size: 1.4rem !important;
}

.entry-content .deckbar-event-card-body,
.deckbar-event-card-body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 0.25rem 0.35rem 0.45rem !important;
}

.entry-content .deckbar-event-badges,
.deckbar-event-badges {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.45rem !important;
  margin: 0 0 0.85rem !important;
}

.entry-content .deckbar-event-badges span,
.deckbar-event-badges span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 0 0.75rem !important;
  border-radius: 999px !important;
  background: #01ff2e !important;
  color: #003333 !important;
  border: 1px solid #003333 !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
  text-decoration: none !important;
}

.entry-content .deckbar-event-card h2,
.deckbar-event-card h2 {
  color: var(--deck-deep, #003333) !important;
  font-family: var(--deck-font-main, Montserrat, Arial, Helvetica, sans-serif) !important;
  font-size: clamp(1.5rem, 2vw, 1.9rem) !important;
  font-weight: 900 !important;
  line-height: 1.02 !important;
  letter-spacing: -0.04em !important;
  margin: 0 0 0.55rem !important;
  padding: 0 !important;
  text-decoration: none !important;
  border: none !important;
}

.entry-content .deckbar-event-card-subtitle,
.deckbar-event-card-subtitle {
  color: var(--deck-green, #0A6562) !important;
  font-family: var(--deck-font-main, Montserrat, Arial, Helvetica, sans-serif) !important;
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  margin: 0 0 0.9rem !important;
  padding: 0 !important;
}

.entry-content .deckbar-event-card-meta,
.deckbar-event-card-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.45rem !important;
  margin-top: auto !important;
  padding-top: 0.35rem !important;
}

.entry-content .deckbar-event-card-meta span,
.deckbar-event-card-meta span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 0 0.7rem !important;
  border-radius: 999px !important;
  background: var(--deck-dark, #05312d) !important;
  color: #ffffff !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.entry-content .deckbar-events-empty,
.deckbar-events-empty {
  text-align: center !important;
  color: var(--deck-deep, #003333) !important;
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  background: #ffffff !important;
  border-radius: 22px !important;
  padding: 2rem !important;
  box-shadow: 0 14px 35px rgba(0, 51, 51, 0.10) !important;
}

/* =========================================================
   2. Messages succès / erreur
   ========================================================= */

.entry-content .deckbar-event-message,
.deckbar-event-message {
  width: min(760px, 100%) !important;
  margin: 0 auto 2rem !important;
  padding: 1rem 1.2rem !important;
  border-radius: 18px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

.entry-content .deckbar-event-message-success,
.deckbar-event-message-success {
  background: #e9fff0 !important;
  color: #003333 !important;
  border: 2px solid #01ff2e !important;
}

.entry-content .deckbar-event-message-error,
.deckbar-event-message-error {
  background: #fff0f0 !important;
  color: #8b0000 !important;
  border: 2px solid #ffb6b6 !important;
}

/* =========================================================
   3. Base page détail évènement
   Shortcode : [deckbar_event_detail]
   ========================================================= */

.entry-content .deckbar-event-detail-page,
.deckbar-event-detail-page {
  background: var(--deck-bg-light, #F7FFFD) !important;
  color: var(--deck-deep, #003333) !important;
  padding: 3rem 0 5rem !important;
}

.entry-content .deckbar-event-detail-container,
.deckbar-event-detail-container {
  width: min(1120px, calc(100% - 40px)) !important;
  margin: 0 auto !important;
}

.entry-content .deckbar-event-back,
.deckbar-event-back {
  display: inline-flex !important;
  align-items: center !important;
  margin-bottom: 1.8rem !important;
  color: var(--deck-deep, #003333) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.entry-content .deckbar-event-detail-grid,
.deckbar-event-detail-grid {
  display: grid !important;
  grid-template-columns: minmax(260px, 390px) 1fr !important;
  gap: 3rem !important;
  align-items: start !important;
}

.entry-content .deckbar-event-detail-media,
.deckbar-event-detail-media {
  background: #ffffff !important;
  border: 2px solid rgba(0, 51, 51, 0.16) !important;
  border-radius: 26px !important;
  padding: 1rem !important;
  box-shadow: 0 14px 35px rgba(0, 51, 51, 0.10) !important;
}

.entry-content .deckbar-event-detail-media img,
.deckbar-event-detail-media img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  border-radius: 18px !important;
}

.entry-content .deckbar-event-detail-main h1,
.deckbar-event-detail-main h1 {
  color: var(--deck-deep, #003333) !important;
  font-family: var(--deck-font-main, Montserrat, Arial, Helvetica, sans-serif) !important;
  font-size: clamp(2.4rem, 5vw, 5rem) !important;
  font-weight: 900 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.055em !important;
  margin: 0 0 1rem !important;
}

.entry-content .deckbar-event-detail-subtitle,
.deckbar-event-detail-subtitle {
  color: var(--deck-green, #0A6562) !important;
  font-size: 1.2rem !important;
  font-weight: 800 !important;
  margin: 0 0 1rem !important;
}

.entry-content .deckbar-event-detail-infos,
.deckbar-event-detail-infos {
  background: #ffffff !important;
  border-radius: 22px !important;
  padding: 1.2rem !important;
  margin: 1.4rem 0 2rem !important;
  box-shadow: 0 10px 25px rgba(0, 51, 51, 0.08) !important;
}

.entry-content .deckbar-event-detail-infos p,
.deckbar-event-detail-infos p {
  margin: 0 0 0.55rem !important;
  color: var(--deck-deep, #003333) !important;
  line-height: 1.35 !important;
}

.entry-content .deckbar-event-detail-description h2,
.deckbar-event-detail-description h2 {
  color: var(--deck-deep, #003333) !important;
  font-weight: 900 !important;
  font-size: 1.8rem !important;
  margin: 0 0 1rem !important;
}

.entry-content .deckbar-event-detail-description,
.entry-content .deckbar-event-detail-description p,
.deckbar-event-detail-description,
.deckbar-event-detail-description p {
  color: var(--deck-deep, #003333) !important;
  font-size: 1.05rem !important;
  line-height: 1.6 !important;
}

/* =========================================================
   4. Formulaire détail évènement
   ========================================================= */

.entry-content .deckbar-event-form-card,
.deckbar-event-form-card {
  display: grid !important;
  grid-template-columns: 1fr 280px !important;
  gap: 1.5rem !important;
  background: #ffffff !important;
  border-radius: 26px !important;
  padding: 1.4rem !important;
  margin-top: 3rem !important;
  box-shadow: 0 14px 35px rgba(0, 51, 51, 0.10) !important;
  border: 2px solid rgba(0, 51, 51, 0.14) !important;
}

.entry-content .deckbar-event-form-main h2,
.deckbar-event-form-main h2 {
  color: var(--deck-deep, #003333) !important;
  font-size: 2rem !important;
  font-weight: 900 !important;
  margin: 0 0 0.5rem !important;
}

.entry-content .deckbar-event-form-intro,
.deckbar-event-form-intro {
  color: var(--deck-muted, #4f6865) !important;
  font-weight: 700 !important;
  margin: 0 0 1.2rem !important;
}

.entry-content .deckbar-event-form-grid,
.deckbar-event-form-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

.entry-content .deckbar-event-form label,
.deckbar-event-form label {
  display: block !important;
  color: var(--deck-deep, #003333) !important;
  font-weight: 800 !important;
  margin-bottom: 0.35rem !important;
}

.entry-content .deckbar-event-form input,
.entry-content .deckbar-event-form select,
.deckbar-event-form input,
.deckbar-event-form select {
  width: 100% !important;
  border: 2px solid rgba(0, 51, 51, 0.18) !important;
  border-radius: 12px !important;
  padding: 0.8rem 0.9rem !important;
  color: var(--deck-deep, #003333) !important;
  background: #ffffff !important;
}

.entry-content .deckbar-event-hp,
.deckbar-event-hp {
  display: none !important;
}

.entry-content .deckbar-event-rgpd,
.deckbar-event-rgpd {
  color: var(--deck-muted, #4f6865) !important;
  font-size: 0.82rem !important;
  line-height: 1.45 !important;
  margin: 1rem 0 !important;
}

.entry-content .deckbar-event-submit,
.deckbar-event-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  border: 3px solid var(--deck-mint, #C7FFF5) !important;
  border-radius: 999px !important;
  background: var(--deck-accent, #51F7E2) !important;
  color: var(--deck-dark, #05312d) !important;
  padding: 0 1.6rem !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

.entry-content .deckbar-event-form-summary,
.deckbar-event-form-summary {
  border-radius: 22px !important;
  background: var(--deck-dark, #05312d) !important;
  color: #ffffff !important;
  padding: 1.4rem !important;
  text-align: center !important;
}

.entry-content .deckbar-event-form-summary strong,
.deckbar-event-form-summary strong {
  display: block !important;
  font-size: 3rem !important;
  line-height: 1 !important;
  color: #01ff2e !important;
}

.entry-content .deckbar-event-form-summary span,
.deckbar-event-form-summary span {
  display: block !important;
  font-weight: 900 !important;
  margin-bottom: 1rem !important;
}

.entry-content .deckbar-event-form-summary p,
.deckbar-event-form-summary p {
  color: #ffffff !important;
  margin: 0 !important;
  line-height: 1.45 !important;
}

.entry-content .deckbar-event-free-access,
.deckbar-event-free-access {
  background: #ffffff !important;
  border-radius: 22px !important;
  padding: 1.4rem !important;
  margin-top: 2rem !important;
  font-weight: 900 !important;
  color: var(--deck-deep, #003333) !important;
}

/* =========================================================
   5. Responsive
   ========================================================= */

@media (max-width: 921px) {
  .entry-content .deckbar-events-grid,
  .deckbar-events-grid {
    grid-template-columns: 1fr !important;
  }

  .entry-content .deckbar-event-detail-grid,
  .deckbar-event-detail-grid {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }

  .entry-content .deckbar-event-form-card,
  .deckbar-event-form-card {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .entry-content .deckbar-events-container,
  .deckbar-events-container,
  .entry-content .deckbar-event-detail-container,
  .deckbar-event-detail-container {
    width: min(100% - 28px, 1060px) !important;
  }

  .entry-content .deckbar-events-header h1,
  .deckbar-events-header h1 {
    font-size: clamp(2.9rem, 14vw, 4.4rem) !important;
    text-align: left !important;
  }

  .entry-content .deckbar-event-card,
  .deckbar-event-card {
    border-radius: 22px !important;
    padding: 0.85rem !important;
  }

  .entry-content .deckbar-event-card-media,
  .deckbar-event-card-media {
    border-radius: 16px !important;
  }

  .entry-content .deckbar-event-form-grid,
  .deckbar-event-form-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   6. V1.1 - Page évènements en 2 colonnes
   Colonne gauche : récurrents / Colonne droite : ponctuels
   ========================================================= */

.entry-content .deckbar-events-header p,
.deckbar-events-header p {
  max-width: 720px !important;
  margin: -1.4rem auto 2.8rem !important;
  color: var(--deck-muted, #4f6865) !important;
  font-size: 1.08rem !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  text-align: center !important;
}

.entry-content .deckbar-events-two-columns,
.deckbar-events-two-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 2rem !important;
  align-items: start !important;
}

.entry-content .deckbar-events-column,
.deckbar-events-column {
  min-width: 0 !important;
}

.entry-content .deckbar-events-column-header,
.deckbar-events-column-header {
  margin-bottom: 1.2rem !important;
  padding: 1.1rem 1.25rem !important;
  background: var(--deck-dark, #05312d) !important;
  color: #ffffff !important;
  border-radius: 24px !important;
  box-shadow: 0 12px 28px rgba(0, 51, 51, 0.16) !important;
}

.entry-content .deckbar-events-column-header span,
.deckbar-events-column-header span {
  display: inline-flex !important;
  margin-bottom: 0.35rem !important;
  color: var(--deck-mint, #C7FFF5) !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

.entry-content .deckbar-events-column-header h2,
.deckbar-events-column-header h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-family: var(--deck-font-main, Montserrat, Arial, sans-serif) !important;
  font-size: clamp(1.55rem, 2.2vw, 2.25rem) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: -0.04em !important;
}

.entry-content .deckbar-events-stack,
.deckbar-events-stack {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.4rem !important;
}

.entry-content .deckbar-event-card-recurring,
.deckbar-event-card-recurring {
  border-color: rgba(1, 255, 46, 0.9) !important;
}

.entry-content .deckbar-event-card-recurring .deckbar-event-badges span:first-child,
.deckbar-event-card-recurring .deckbar-event-badges span:first-child {
  background: #01ff2e !important;
  color: #003333 !important;
  border-color: #003333 !important;
}

.entry-content .deckbar-event-detail-badges,
.deckbar-event-detail-badges {
  margin-bottom: 1rem !important;
}

.entry-content .deckbar-event-form-row select,
.deckbar-event-form-row select {
  width: 100% !important;
  min-height: 46px !important;
}

@media (max-width: 921px) {
  .entry-content .deckbar-events-two-columns,
  .deckbar-events-two-columns {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .entry-content .deckbar-events-header p,
  .deckbar-events-header p {
    text-align: left !important;
    margin-top: -0.8rem !important;
  }

  .entry-content .deckbar-events-column-header,
  .deckbar-events-column-header {
    border-radius: 20px !important;
  }
}

/* =========================================================
   7. V1.2 - Ajustements Figma liste évènements
   ========================================================= */

.entry-content .deckbar-events-two-columns,
.deckbar-events-two-columns {
  align-items: stretch !important;
}

.entry-content .deckbar-events-column,
.deckbar-events-column {
  display: flex !important;
  flex-direction: column !important;
}

.entry-content .deckbar-events-stack,
.deckbar-events-stack {
  flex: 1 1 auto !important;
  grid-auto-rows: 1fr !important;
}

.entry-content .deckbar-events-column-header,
.deckbar-events-column-header {
  display: none !important;
}

.entry-content .deckbar-event-card,
.deckbar-event-card {
  min-height: 560px !important;
}

.entry-content .deckbar-event-card-link,
.deckbar-event-card-link {
  height: 100% !important;
}

.entry-content .deckbar-event-card-media,
.deckbar-event-card-media {
  background: #ffffff !important;
  border: none !important;
}

.entry-content .deckbar-event-card-media img,
.deckbar-event-card-media img {
  object-fit: contain !important;
}

.entry-content .deckbar-event-card-subtitle,
.deckbar-event-card-subtitle {
  font-weight: 700 !important;
}

.entry-content .deckbar-event-badges,
.deckbar-event-badges {
  justify-content: space-between !important;
}

.entry-content .deckbar-event-badges span:first-child,
.deckbar-event-badges span:first-child {
  background: var(--deck-dark, #05312d) !important;
  color: #ffffff !important;
  border-color: var(--deck-dark, #05312d) !important;
}

.entry-content .deckbar-event-badges span:last-child,
.deckbar-event-badges span:last-child {
  background: #ffffff !important;
  color: var(--deck-deep, #003333) !important;
  border-color: var(--deck-deep, #003333) !important;
}

@media (max-width: 921px) {
  .entry-content .deckbar-event-card,
  .deckbar-event-card {
    min-height: auto !important;
  }
}

/* =========================================================
   7. V1.3 - Fiche évènement + modale de confirmation
   ========================================================= */

.entry-content .deckbar-event-detail-page,
.deckbar-event-detail-page {
  padding-top: 2.4rem !important;
}

.entry-content .deckbar-event-detail-grid,
.deckbar-event-detail-grid {
  margin-top: 1.2rem !important;
  border-bottom: 1px solid rgba(0, 51, 51, 0.10) !important;
  padding-bottom: 2.4rem !important;
}

.entry-content .deckbar-event-detail-media,
.deckbar-event-detail-media {
  box-shadow: none !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

.entry-content .deckbar-event-detail-media img,
.deckbar-event-detail-media img {
  border-radius: 0 !important;
  max-height: 360px !important;
  object-fit: contain !important;
}

.entry-content .deckbar-event-detail-main h1,
.deckbar-event-detail-main h1 {
  font-size: clamp(2.1rem, 4vw, 3.35rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.045em !important;
}

.entry-content .deckbar-event-detail-infos,
.deckbar-event-detail-infos {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 1rem 0 1.8rem !important;
}

.entry-content .deckbar-event-detail-description h2,
.deckbar-event-detail-description h2 {
  font-size: 1.65rem !important;
  font-weight: 800 !important;
}

.entry-content .deckbar-event-form-card,
.deckbar-event-form-card {
  width: min(720px, 100%) !important;
  margin: 3rem 0 0 auto !important;
  grid-template-columns: minmax(0, 1fr) 210px !important;
  padding: 1.7rem !important;
  border-color: rgba(0, 51, 51, 0.16) !important;
  box-shadow: none !important;
}

.entry-content .deckbar-event-form-main h2,
.deckbar-event-form-main h2 {
  font-size: 2rem !important;
  font-weight: 800 !important;
}

.entry-content .deckbar-event-form-grid,
.deckbar-event-form-grid {
  grid-template-columns: 1fr !important;
  max-width: 360px !important;
  gap: 0.7rem !important;
}

.entry-content .deckbar-event-form-grid p,
.deckbar-event-form-grid p,
.entry-content .deckbar-event-form-row,
.deckbar-event-form-row {
  margin: 0 0 0.75rem !important;
}

.entry-content .deckbar-event-form input,
.entry-content .deckbar-event-form select,
.deckbar-event-form input,
.deckbar-event-form select {
  min-height: 38px !important;
  padding: 0.45rem 0.7rem !important;
  border-radius: 9px !important;
  border: 1px solid rgba(0, 51, 51, 0.35) !important;
}

.entry-content .deckbar-event-form-summary,
.deckbar-event-form-summary {
  background: transparent !important;
  color: var(--deck-deep, #003333) !important;
  padding: 0 !important;
  text-align: left !important;
}

.entry-content .deckbar-event-form-summary strong,
.deckbar-event-form-summary strong {
  display: inline-flex !important;
  color: var(--deck-deep, #003333) !important;
  font-size: 0.95rem !important;
  line-height: 1 !important;
  border: 1px solid rgba(0, 51, 51, 0.35) !important;
  border-radius: 999px !important;
  padding: 0.4rem 0.75rem !important;
  margin-bottom: 0.6rem !important;
}

.entry-content .deckbar-event-form-summary span,
.deckbar-event-form-summary span {
  color: var(--deck-muted, #4f6865) !important;
  font-weight: 800 !important;
  margin: 0 0 0.3rem !important;
}

.entry-content .deckbar-event-form-summary p,
.deckbar-event-form-summary p {
  color: var(--deck-muted, #4f6865) !important;
  font-size: 0.9rem !important;
}

.entry-content .deckbar-event-submit,
.deckbar-event-submit {
  background: var(--deck-dark, #05312d) !important;
  color: #ffffff !important;
  border: 3px solid rgba(199, 255, 245, 0.8) !important;
}

.entry-content .deckbar-event-free-access,
.deckbar-event-free-access {
  width: min(720px, 100%) !important;
  margin: 3rem 0 0 auto !important;
  box-shadow: none !important;
  border: 1px solid rgba(0, 51, 51, 0.18) !important;
}

.deckbar-confirm-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
  background: rgba(0, 32, 29, 0.28) !important;
}

.deckbar-confirm-modal-card {
  width: min(820px, 100%) !important;
  background: #ffffff !important;
  border: 3px solid rgba(0, 51, 51, 0.18) !important;
  border-radius: 42px !important;
  padding: clamp(2.2rem, 5vw, 4.2rem) !important;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.20) !important;
  color: var(--deck-deep, #003333) !important;
}

.deckbar-confirm-modal-title {
  display: flex !important;
  align-items: center !important;
  gap: 1.6rem !important;
  color: var(--deck-deep, #003333) !important;
  font-family: var(--deck-font-main, Montserrat, Arial, sans-serif) !important;
  font-size: clamp(2.6rem, 6vw, 5rem) !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: -0.04em !important;
  margin-bottom: clamp(2.2rem, 5vw, 4.2rem) !important;
}

.deckbar-confirm-check {
  color: #149100 !important;
  font-size: 1.1em !important;
  line-height: 1 !important;
  font-weight: 600 !important;
}

.deckbar-confirm-modal-text p {
  color: #5e5e5e !important;
  font-size: clamp(1.3rem, 2.5vw, 2.35rem) !important;
  line-height: 1.28 !important;
  margin: 0 0 2rem !important;
}

.deckbar-confirm-modal-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-width: 260px !important;
  min-height: 66px !important;
  margin: 3.4rem auto 0 !important;
  padding: 0 2.4rem !important;
  border-radius: 999px !important;
  background: #08776f !important;
  color: #ffffff !important;
  border: 8px solid rgba(8, 119, 111, 0.30) !important;
  font-size: clamp(1.35rem, 2.5vw, 2rem) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.deckbar-confirm-modal-button:hover {
  color: #ffffff !important;
  background: var(--deck-dark, #05312d) !important;
}

@media (max-width: 921px) {
  .entry-content .deckbar-event-form-card,
  .deckbar-event-form-card,
  .entry-content .deckbar-event-free-access,
  .deckbar-event-free-access {
    margin-left: 0 !important;
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .deckbar-confirm-modal-card {
    border-radius: 28px !important;
    padding: 2rem !important;
  }

  .deckbar-confirm-modal-title {
    gap: 0.8rem !important;
    margin-bottom: 2rem !important;
  }

  .deckbar-confirm-modal-button {
    min-width: 0 !important;
    width: 100% !important;
  }
}


/* =========================================================
   8. V1.4 - Icônes fiche détail + résumé inscription dynamique
   ========================================================= */

.entry-content .deckbar-event-detail-subtitle,
.deckbar-event-detail-subtitle {
  color: #4f6865 !important;
  font-size: clamp(1.25rem, 2vw, 1.85rem) !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  margin: 0.25rem 0 1.6rem !important;
}

.entry-content .deckbar-event-detail-infos,
.deckbar-event-detail-infos {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.75rem !important;
  margin: 1.2rem 0 2rem !important;
}

.entry-content .deckbar-event-detail-infos p,
.deckbar-event-detail-infos p {
  display: flex !important;
  align-items: center !important;
  gap: 0.7rem !important;
  margin: 0 !important;
  color: var(--deck-deep, #003333) !important;
  font-size: clamp(1rem, 1.5vw, 1.28rem) !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

.entry-content .deckbar-event-info-icon,
.deckbar-event-info-icon {
  font-family: "Material Symbols Outlined" !important;
  font-weight: normal !important;
  font-style: normal !important;
  font-size: 1.25em !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1.25em !important;
  height: 1.25em !important;
  flex: 0 0 1.25em !important;
  color: #00776f !important;
  font-feature-settings: "liga" !important;
  -webkit-font-feature-settings: "liga" !important;
  -webkit-font-smoothing: antialiased !important;
  font-variation-settings: "FILL" 0, "wght" 350, "GRAD" 0, "opsz" 24 !important;
}

.entry-content .deckbar-event-form-card,
.deckbar-event-form-card {
  grid-template-columns: minmax(0, 1fr) 230px !important;
}

.entry-content .deckbar-event-form-summary,
.deckbar-event-form-summary {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0.85rem !important;
}

.entry-content .deckbar-event-summary-price,
.deckbar-event-summary-price {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  color: var(--deck-deep, #003333) !important;
  border: 1px solid rgba(0, 51, 51, 0.70) !important;
  border-radius: 999px !important;
  padding: 0.38rem 0.75rem !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.entry-content .deckbar-event-summary-icon,
.deckbar-event-summary-icon {
  font-family: "Material Symbols Outlined" !important;
  font-size: 1.05rem !important;
  line-height: 1 !important;
  color: #00776f !important;
  font-feature-settings: "liga" !important;
  -webkit-font-feature-settings: "liga" !important;
  font-variation-settings: "FILL" 0, "wght" 350, "GRAD" 0, "opsz" 24 !important;
}

.entry-content .deckbar-event-summary-places,
.deckbar-event-summary-places {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0.15rem !important;
}

.entry-content .deckbar-event-form-summary .deckbar-event-summary-remaining,
.deckbar-event-form-summary .deckbar-event-summary-remaining {
  display: block !important;
  color: #00776f !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

.entry-content .deckbar-event-summary-places span,
.deckbar-event-summary-places span {
  color: #5e5e5e !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}

.entry-content .deckbar-event-form label[for="deckbar_name"],
.deckbar-event-form label[for="deckbar_name"] {
  white-space: normal !important;
}

@media (max-width: 921px) {
  .entry-content .deckbar-event-form-card,
  .deckbar-event-form-card {
    grid-template-columns: 1fr !important;
  }

  .entry-content .deckbar-event-form-summary,
  .deckbar-event-form-summary {
    order: -1 !important;
  }
}

/* =========================================================
   V1.5 - Ajustements fiche détail / formulaire
   ========================================================= */

/* Réduit l’espace entre le bloc description et le formulaire */
.entry-content .deckbar-event-form-card,
.deckbar-event-form-card {
  margin-top: 1.2rem !important;
}

.entry-content .deckbar-event-detail-description,
.deckbar-event-detail-description {
  margin-bottom: 0 !important;
}

.entry-content .deckbar-event-detail-description p:last-child,
.deckbar-event-detail-description p:last-child {
  margin-bottom: 0 !important;
}

/* Au cas où un ancien titre resterait dans le cache */
.entry-content .deckbar-event-form-main h3,
.deckbar-event-form-main h3 {
  display: none !important;
}

/* =========================================================
   Correction hauteur cartes évènements
   ========================================================= */

/* Empêche les colonnes d'étirer les cartes */
.deckbar-events-split,
.deckbar-events-columns,
.deckbar-events-grid {
  align-items: flex-start !important;
}

/* Chaque colonne garde ses cartes à leur hauteur réelle */
.deckbar-events-column {
  align-items: stretch !important;
}

/* Hauteur fixe des cartes évènements */
.deckbar-event-card {
  height: 550px !important;
  min-height: 550px !important;
  max-height: 550px !important;

  display: flex !important;
  flex-direction: column !important;
}

/* Le lien remplit la carte proprement */
.deckbar-event-card-link {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Image cadrée dans la carte */
.deckbar-event-card-media {
  height: 270px !important;
  min-height: 270px !important;
  max-height: 270px !important;
  flex: 0 0 270px !important;
}

.deckbar-event-card-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Le contenu prend le reste de la carte */
.deckbar-event-card-body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Les pastilles du bas restent en bas */
.deckbar-event-card-meta {
  margin-top: auto !important;
}

/* Mobile : on repasse en hauteur naturelle */
@media (max-width: 767px) {
  .deckbar-event-card {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .deckbar-event-card-media {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: initial !important;
    aspect-ratio: 4 / 3 !important;
  }
}

/* =========================================================
   V1.4 - Feuilles autour des stacks d'évènements
   ========================================================= */

/* On neutralise les feuilles mises sur les images */
.entry-content .deckbar-event-card-media::before,
.entry-content .deckbar-event-card-media::after,
.deckbar-event-card-media::before,
.deckbar-event-card-media::after {
  content: none !important;
  display: none !important;
}

/* Les colonnes et stacks doivent pouvoir laisser dépasser les feuilles */
.entry-content .deckbar-events-two-columns,
.deckbar-events-two-columns,
.entry-content .deckbar-events-column,
.deckbar-events-column {
  overflow: visible !important;
}

.entry-content .deckbar-events-stack,
.deckbar-events-stack {
  position: relative !important;
  overflow: visible !important;
  z-index: 1 !important;
}

/* Les cartes passent au-dessus des feuilles */
.entry-content .deckbar-event-card,
.deckbar-event-card {
  position: relative !important;
  z-index: 2 !important;
}

/* Feuille décorative haut droite du stack */
.entry-content .deckbar-events-stack::before,
.deckbar-events-stack::before {
  content: "";
  position: absolute;
  top: -115px;
  right: -95px;

  width: 280px;
  height: 280px;

  background-image: url("/wp-content/uploads/2026/05/feuille-verte.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;

  transform: rotate(135deg);
  pointer-events: none;
  z-index: 0;
}

/* Feuille décorative bas gauche du stack */
.entry-content .deckbar-events-stack::after,
.deckbar-events-stack::after {
  content: "";
  position: absolute;
  bottom: -120px;
  left: -105px;

  width: 285px;
  height: 285px;

  background-image: url("/wp-content/uploads/2026/05/feuille-verte.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;

  transform: rotate(-30deg);
  pointer-events: none;
  z-index: 0;
}

/* Variante : colonne de droite un peu différente pour éviter l'effet copié-collé */
.entry-content .deckbar-events-column-punctual .deckbar-events-stack::before,
.deckbar-events-column-punctual .deckbar-events-stack::before {
  top: -85px;
  right: -115px;
  transform: rotate(125deg);
}

.entry-content .deckbar-events-column-punctual .deckbar-events-stack::after,
.deckbar-events-column-punctual .deckbar-events-stack::after {
  bottom: -100px;
  left: -90px;
  transform: rotate(-48deg);
}

/* Responsive tablette */
@media (max-width: 921px) {
  .entry-content .deckbar-events-stack::before,
  .deckbar-events-stack::before {
    top: -80px;
    right: -70px;
    width: 210px;
    height: 210px;
  }

  .entry-content .deckbar-events-stack::after,
  .deckbar-events-stack::after {
    bottom: -80px;
    left: -70px;
    width: 210px;
    height: 210px;
  }
}

/* Responsive mobile : on garde un décor léger */
@media (max-width: 767px) {
  .entry-content .deckbar-events-stack::before,
  .deckbar-events-stack::before {
    top: -45px;
    right: -45px;
    width: 135px;
    height: 135px;
  }

  .entry-content .deckbar-events-stack::after,
  .deckbar-events-stack::after {
    bottom: -45px;
    left: -45px;
    width: 135px;
    height: 135px;
  }
}