/*
  Info box — a rounded surface panel reused across the site: the agenda / group
  tile meta rows (icon + line), the accordion item's "inbegrepen / niet
  inbegrepen" notes, and the standalone "Info box" page-builder component.
  Content-agnostic: the container styles the surface, modifiers/elements style
  what sits inside. The background is NOT set here — callers add a `bg-*`
  utility (components/page-content.css) so the colour is the editor's choice.
*/

.info-box {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  width: 100%;
  padding: var(--space-2xs) var(--space-s);
  border-radius: var(--radius-sm);
  font-size: var(--text-small);
}

/* ---- Icon rows (age / price / people / duration) ---- */
.info-box__row {
  display: flex;
  align-items: center;
  gap: var(--space-2xs);
}

.info-box__icon {
  flex: none;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-text);
}

/* ---- Standalone content box (zorgvrij_info_box component) ---- */
/* Comfortable padding and body-size text for free WYSIWYG content. No gap: the
   WYSIWYG content's own block margins define the spacing between its elements. */
.info-box--content {
  gap: 0;
  padding: var(--space-m);
  font-size: inherit;
}

/* The last content element's bottom margin would otherwise add to the box
   padding — drop it so the padding stays even. */
.info-box--content > :last-child {
  margin-block-end: 0;
}

/* With an optional icon badge stacked above the content (e.g. "Goed om te
   weten" cards). The badge styling lives in components/icon-badge.css. With the
   gap gone, give the badge its own spacing above the content. */
.info-box--with-icon {
  align-items: flex-start;
}

.info-box--with-icon > .icon-badge {
  margin-block-end: var(--space-s);
}

/* ---- Structured notes (accordion: included / not included) ---- */
.info-box--notes {
  gap: var(--space-s);
  padding: var(--space-s);
}

.info-box__group {
  display: flex;
  flex-direction: column;
  gap: var(--space-3xs);
}

.info-box__heading {
  margin: 0;
  color: var(--color-text);
  font-family: var(--font-sans-serif);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.info-box__list {
  margin: 0;
  padding-left: var(--space-m);
  list-style: disc;
}

.info-box__text {
  margin: 0;
}
