/* =============================================================================
   AU Calendriers — Frontend styles
   ============================================================================= */

/* Navigation bar */
.au-cal-nav {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.au-nav-btn {
  background: #1a3a5c;
  border: 1px solid #1a3a5c;
  border-radius: 6px;
  width: 34px;
  height: 34px;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s, border-color 0.15s;
  flex-shrink: 0;
}

.au-nav-btn:hover:not(:disabled) {
  background: #f5b800;
  border-color: #f5b800;
  color: #1a3a5c;
}

.au-nav-btn:disabled {
  opacity: 0.3;
  cursor: default;
}

.au-nav-label {
  font-weight: 700;
  color: #1a3a5c;
  font-size: 17px;
  min-width: 140px;
  text-align: center;
}

/* Wrapper */
.au-cal-wrap {
  font-family: inherit;
  margin-top: 12px;
}

/* =============================================================================
   ACACED cards
   ============================================================================= */

.au-card.au-acaced {
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 18px 20px;
  background: #fff;
  margin-bottom: 12px;
}

.au-card.au-acaced .au-dates {
  font-size: 17px;
  font-weight: 700;
  color: #1a3a5c;
  margin-bottom: 8px;
}

.au-card.au-acaced .au-format-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}

.au-badge-format {
  display: inline-block;
  padding: 3px 12px;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 700;
}

.au-badge-speed    { background: #fef3c7; color: #92400e; border: 1px solid #fde68a; }
.au-badge-classique{ background: #e0f2fe; color: #075985; border: 1px solid #bae6fd; }
.au-badge-slow     { background: #dcfce7; color: #166534; border: 1px solid #bbf7d0; }

.au-card.au-acaced .au-duration { font-size: 13px; color: #555; }
.au-card.au-acaced .au-species  { font-size: 17px; }

.au-card.au-acaced .au-cv-label {
  font-weight: 700;
  color: #1a3a5c;
  font-size: 14px;
  margin-top: 6px;
}

.au-card.au-acaced .au-cv-detail {
  font-size: 13px;
  color: #555;
  margin-left: 10px;
  margin-bottom: 2px;
}

/* =============================================================================
   Éthologie — session wrapper + modules
   ============================================================================= */

.au-session {
  /* each session is shown/hidden by JS */
}

.au-session-header {
  margin-bottom: 16px;
}

.au-session-header .au-session-num {
  font-size: 20px;
  font-weight: 700;
  color: #1a3a5c;
  margin-bottom: 4px;
}

.au-session-header .au-session-dates {
  font-size: 14px;
  color: #444;
  margin-bottom: 6px;
}

.au-session-header .au-session-intro {
  font-size: 13px;
  color: #666;
  font-style: italic;
}

.au-module {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 14px 16px;
  margin-bottom: 10px;
  background: #fff;
}

.au-module-header {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 10px;
}

.au-module-label {
  font-weight: 700;
  font-size: 14px;
  color: #1a3a5c;
}

.au-module-hours {
  font-size: 13px;
  color: #888;
}

.au-module-general  { border-left: 3px solid #3b82f6; }
.au-module-chien    { border-left: 3px solid #f59e0b; }
.au-module-chat     { border-left: 3px solid #ec4899; }
.au-module-cheval   { border-left: 3px solid #10b981; }
.au-module-pratique { border-left: 3px solid #8b5cf6; background: #faf5ff; }

.au-module-label-pratique { color: #6b21a8; }

.au-course {
  font-size: 13px;
  color: #333;
  padding: 2px 0 2px 4px;
  line-height: 1.5;
}

.au-course-bold {
  font-weight: 700;
  color: #1a3a5c;
}

.au-module-horaires {
  font-size: 12px;
  color: #888;
  margin-top: 10px;
  font-style: italic;
}

.au-pratique-dates,
.au-pratique-lieu,
.au-pratique-formateur {
  font-size: 13px;
  color: #555;
  margin-bottom: 4px;
}

/* =============================================================================
   Éducation & Rééducation cards
   ============================================================================= */

.au-card.au-education {
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 18px 20px;
  background: #fff;
  margin-bottom: 12px;
}

.au-card.au-education .au-pratique-dates {
  font-size: 17px;
  font-weight: 700;
  color: #1a3a5c;
  margin-bottom: 6px;
}

.au-cal-soon {
  color: #555;
  font-style: italic;
  font-size: 16px;
  font-weight: 700;
  padding: 8px 0;
}

.au-card.au-education .au-lieu,
.au-card.au-education .au-formateur {
  font-size: 14px;
  color: #444;
  margin-bottom: 4px;
}

.au-amont {
  border-top: 1px solid #e5e7eb;
  margin-top: 12px;
  padding-top: 12px;
}

.au-amont-title {
  font-size: 13px;
  font-weight: 700;
  color: #1a3a5c;
  margin-bottom: 8px;
}

.au-amont-item {
  font-size: 13px;
  color: #444;
  margin-bottom: 5px;
}

.au-badge-digital {
  display: inline-block;
  background: #e0f2fe;
  color: #0369a1;
  border: 1px solid #bae6fd;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  margin-right: 6px;
}

.au-badge-cv {
  display: inline-block;
  background: #fef3c7;
  color: #92400e;
  border: 1px solid #fde68a;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  margin-right: 6px;
}

/* =============================================================================
   Actualisation ACACED cards
   ============================================================================= */

.au-card.au-actualisation {
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 16px 18px;
  background: #fff;
  margin-bottom: 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.au-card.au-actualisation .au-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.au-card.au-actualisation .au-date {
  font-size: 15px;
  font-weight: 700;
  color: #1a3a5c;
}

.au-badge-distance  { background: #e0f2fe; color: #0369a1; border: 1px solid #bae6fd; padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; }
.au-badge-presentiel{ background: #fef3c7; color: #92400e; border: 1px solid #fde68a; padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; }

.au-card.au-actualisation .au-lieu     { font-size: 13px; color: #444; }
.au-card.au-actualisation .au-horaires { font-size: 13px; color: #555; }
