/**
 * venue-calendar.css - ub/venue-calendar
 *
 * A 25Live availability calendar behind a native disclosure. The summary is
 * the button (.btn .btn-primary from the theme); the calendar itself is
 * CollegeNET's iframe, which this sheet can size but not style.
 */

.ub-vcal {
  padding: 0 0 48px;
}

.ub-vcal-card {
  border: 1px solid #E1E7EA;
  border-radius: 0;
  background: var(--white, #fff);
  padding: 34px 32px 32px;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

.ub-vcal-title {
  margin: 0 0 20px;
  font-size: 1.32rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ub-purple, #592D82);
}

/* The summary is the button. Native marker off, a square chevron on instead. */
.ub-vcal-toggle {
  list-style: none;
  gap: 12px;
  font-family: inherit;
}
.ub-vcal-toggle::-webkit-details-marker { display: none; }
.ub-vcal-toggle::marker { content: ''; }
.ub-vcal-toggle::after {
  content: '';
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 0.2s ease;
}
.ub-vcal-details[open] > .ub-vcal-toggle::after {
  transform: translateY(2px) rotate(-135deg);
}
.ub-vcal-toggle:focus-visible {
  outline: 3px solid var(--ub-blue, #00A7E0);
  outline-offset: 3px;
}

.ub-vcal-panel {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #EEF2F4;
}

.ub-vcal-status {
  margin: 0;
  font-size: 1rem;
  line-height: 1.6;
  color: var(--text-light, #5B6A75);
}
.ub-vcal-status[hidden] { display: none; }

/* Empty until the vendor script appends its iframe, so a failed or
   script-less load leaves only the status line, not a blank box. */
.ub-vcal-target:empty { display: none; }
.ub-vcal-target iframe {
  display: block;
  width: 100%;
  min-height: 480px;
  border: 0;
  border-radius: 0;
}

@media (max-width: 768px) {
  .ub-vcal { padding-bottom: 32px; }
  .ub-vcal-card { padding: 26px 22px 24px; }
  .ub-vcal-toggle { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .ub-vcal-toggle::after { transition: none; }
}
