.hfc-board-surface {
  --hfc-board-accent: var(--hfc-maroon);
  --hfc-board-structure: var(--hfc-blue);
}

.hfc-board-header {
  align-items: center;
  background: var(--hfc-paper);
  border-bottom: 4px solid var(--hfc-board-accent);
  display: flex;
  gap: var(--hfc-space-lg);
  justify-content: space-between;
  padding: 0.7rem 1rem;
}

.hfc-board-header__lockup {
  height: auto;
  max-height: 4rem;
  max-width: 20rem;
  width: auto;
}

.hfc-board-band {
  background: linear-gradient(125deg, var(--hfc-blue-dark), var(--hfc-blue));
  border-radius: var(--hfc-radius-lg);
  color: var(--hfc-text-inverse);
  margin: var(--hfc-space-md) 0 var(--hfc-space-lg);
  padding: var(--hfc-space-lg);
}

.hfc-board-band h1,
.hfc-board-band h2,
.hfc-board-band h3 {
  color: inherit;
  margin-top: 0;
}

.hfc-board-band__meta {
  color: #dbeafe;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.88rem;
  gap: 0.35rem 1rem;
}

.hfc-board-item-type {
  background: var(--hfc-information-bg);
  border: 1px solid #bfdbfe;
  border-radius: var(--hfc-radius-pill);
  color: var(--hfc-information);
  display: inline-flex;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  padding: 0.22rem 0.65rem;
  text-transform: uppercase;
}

.hfc-board-item-type--decision {
  background: var(--hfc-warning-bg);
  border-color: #fde68a;
  color: var(--hfc-warning);
}

.hfc-board-item-type--consent {
  background: var(--hfc-success-bg);
  border-color: #bbf7d0;
  color: var(--hfc-success);
}

.hfc-board-decision {
  background: var(--hfc-warning-bg);
  border: 2px solid #f59e0b;
  border-radius: var(--hfc-radius);
  break-inside: avoid;
  margin: var(--hfc-space-lg) 0;
  padding: var(--hfc-space-lg);
}

.hfc-board-decision__label {
  color: var(--hfc-warning);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hfc-board-motion {
  background: var(--hfc-surface-subtle);
  border-left: 5px solid var(--hfc-board-structure);
  font-weight: 650;
  margin: var(--hfc-space-md) 0;
  padding: var(--hfc-space-md) var(--hfc-space-lg);
}

.hfc-board-agenda-item {
  border: 1px solid var(--hfc-line);
  border-left: 5px solid var(--hfc-board-structure);
  border-radius: var(--hfc-radius-sm);
  break-inside: avoid;
  display: grid;
  gap: var(--hfc-space-sm) var(--hfc-space-md);
  grid-template-columns: minmax(7rem, 0.7fr) minmax(16rem, 3fr);
  margin: var(--hfc-space-sm) 0;
  padding: var(--hfc-space-md);
}

.hfc-board-action-table td:first-child,
.hfc-board-action-table th:first-child {
  width: 45%;
}

.hfc-board-director-grid {
  display: grid;
  gap: var(--hfc-space-md);
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
}

.hfc-board-director {
  background: var(--hfc-paper);
  border: 1px solid var(--hfc-line);
  border-top: 4px solid var(--hfc-board-accent);
  border-radius: var(--hfc-radius);
  break-inside: avoid;
  overflow: hidden;
}

.hfc-board-director__portrait {
  aspect-ratio: 4 / 3;
  background: var(--hfc-surface-tint);
  object-fit: cover;
  width: 100%;
}

.hfc-board-director__body {
  padding: var(--hfc-space-md);
}

.hfc-board-director__name {
  color: var(--hfc-maroon);
  font-size: 1.08rem;
  font-weight: 800;
  margin: 0;
}

.hfc-board-director__role,
.hfc-board-director__term {
  color: var(--hfc-text-secondary);
  font-size: 0.82rem;
  margin-top: 0.15rem;
}

.hfc-board-committee {
  background: var(--hfc-paper);
  border: 1px solid var(--hfc-line);
  border-radius: var(--hfc-radius);
  break-inside: avoid;
  padding: var(--hfc-space-md) var(--hfc-space-lg);
}

.hfc-board-committee h3 {
  color: var(--hfc-blue);
  margin-top: 0;
}

.hfc-board-vote {
  align-items: center;
  background: var(--hfc-surface-tint);
  border-radius: var(--hfc-radius-sm);
  display: flex;
  flex-wrap: wrap;
  gap: var(--hfc-space-sm) var(--hfc-space-lg);
  margin: var(--hfc-space-sm) 0;
  padding: 0.7rem 0.9rem;
}

.hfc-board-resolution {
  counter-reset: clause;
}

.hfc-board-resolution__clause {
  counter-increment: clause;
  margin: var(--hfc-space-md) 0;
  padding-left: 2rem;
  position: relative;
}

.hfc-board-resolution__clause::before {
  color: var(--hfc-blue);
  content: counter(clause) ".";
  font-weight: 800;
  left: 0;
  position: absolute;
}

.hfc-board-footer {
  border-top: 1px solid var(--hfc-line);
  color: var(--hfc-text-muted);
  display: flex;
  font-size: 0.76rem;
  gap: var(--hfc-space-md);
  justify-content: space-between;
  margin-top: var(--hfc-space-xl);
  padding-top: var(--hfc-space-sm);
}

@media (max-width: 42rem) {
  .hfc-board-agenda-item {
    grid-template-columns: 1fr;
  }
}

@media print {
  .hfc-board-band {
    background: var(--hfc-blue-dark) !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .hfc-board-director,
  .hfc-board-committee,
  .hfc-board-decision,
  .hfc-board-agenda-item {
    break-inside: avoid;
    box-shadow: none;
  }

  .hfc-board-footer {
    bottom: 0;
  }
}
