/* Google Calendar embed responsive.
   Desktop : iframe mois 720px ;
   Mobile (≤ 720px) : iframe agenda 75vh (.cal-iframe--mobile),
                       ou fallback bouton (.cal-mobile, legacy si pas d'URL mobile). */
.cal-wrap { margin: 0 0 var(--gap-l); }
.cal-iframe {
  display: block;
  width: 100%;
  height: 720px;
  border: 1px solid var(--hairline);
  border-radius: var(--radius-l);
  background: var(--bg-soft);
}

/* Variante mobile (vue agenda) — masquée par défaut sur desktop */
.cal-iframe--mobile { display: none; }

/* Lien discret « Ouvrir dans Google Calendar » sous le calendrier (toutes tailles) */
.cal-open {
  margin: 0.7rem 0 0;
  text-align: center;
  font-size: 0.85rem;
}
.cal-open a {
  color: var(--ink-3);
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}
.cal-open a:hover { color: var(--marine); }
.cal-open .icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: var(--duck);
}

.cal-mobile { display: none; }
.cal-mobile__card {
  background: var(--card-bg);
  border: var(--card-border);
  box-shadow: var(--card-shadow);
  border-radius: var(--radius-l);
  padding: 2rem 1.5rem;
  text-align: center;
}
.cal-mobile__icon {
  width: 54px;
  height: 54px;
  color: var(--duck);
  margin: 0 auto 1rem;
}

/* Bloc info / aide à la lecture sous le calendrier */
.cal-info {
  background: var(--bg-soft);
  border-left: 3px solid var(--duck);
  border-radius: var(--radius-m);
  padding: 1.5rem 1.75rem;
}
.cal-info h3 { font-size: 1.1rem; margin: 0 0 0.5rem; }
.cal-info h3:not(:first-child) { margin-top: 1.25rem; }
.cal-info p:last-child { margin-bottom: 0; }

@media (max-width: 720px) {
  /* Masque la version desktop (mois), sauf si on force la vue mois (--persist) */
  .cal-iframe:not(.cal-iframe--mobile):not(.cal-iframe--persist) { display: none; }
  /* Affiche la version mobile (agenda) si présente */
  .cal-iframe--mobile { display: block; height: 75vh; }
  /* Vue mois conservée sur mobile (ex : navigations) */
  .cal-iframe--persist { display: block; }
  /* Fallback bouton (si pas d'URL mobile fournie) */
  .cal-mobile { display: block; }
}
