/* app/assets/stylesheets/04-components/quarter-group.css */
@layer components {
  .invoice-quarters {
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
  }

  .quarter-group {
    border: 1px solid var(--color-bark-15);
    border-radius: var(--radius-md);
    padding: var(--space-sm) var(--space-md) var(--space-md);
  }

  .quarter-group[hidden] {
    display: none;
  }

  .quarter-group-header {
    align-items: baseline;
    cursor: pointer;
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-sm);
    justify-content: space-between;
    list-style: none;
  }

  .quarter-group-header::-webkit-details-marker {
    display: none;
  }

  .quarter-group-label {
    color: var(--color-bark);
    font-size: 1rem;
    font-weight: 700;
  }

  .quarter-group-label::before {
    color: var(--color-bark-60);
    content: "▸ ";
    font-size: 0.7rem;
  }

  .quarter-group[open] > .quarter-group-header .quarter-group-label::before {
    content: "▾ ";
  }

  .quarter-group-summary {
    color: var(--color-bark-60);
    display: inline-flex;
    flex-wrap: wrap;
    font-size: 0.8rem;
    font-variant-numeric: tabular-nums;
    gap: var(--space-md);
  }

  .quarter-group-paid {
    color: var(--color-success-text);
    white-space: nowrap;
  }

  .quarter-group-unpaid {
    white-space: nowrap;
  }

  .quarter-group-months {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
    margin-block-start: var(--space-md);
  }
}
