.contract-list {
  padding: var(--wa-space-l);
}

/* ── Header ─────────────────────────────────────────── */

.contract-list__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--wa-space-m);
  margin-bottom: var(--wa-space-l);
  flex-wrap: wrap;
}

.contract-list__heading {
  min-width: 0;
}

.contract-list__breadcrumb {
  font-size: var(--wa-font-size-xs);
  color: var(--wa-color-text-quiet);
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.contract-list__title {
  font-size: var(--wa-font-size-2xl);
  font-family: var(--wa-font-family-heading);
  font-weight: var(--wa-font-weight-heading);
  color: var(--wa-color-text-normal);
  margin: var(--wa-space-xs) 0;
}

.contract-list__event {
  font-size: var(--wa-font-size-s);
  color: var(--wa-color-text-quiet);
  margin: 0;
}

.contract-list__actions {
  display: flex;
  gap: var(--wa-space-s);
  flex-shrink: 0;
}

/* ── Table ──────────────────────────────────────────── */

.contract-list__table-wrap {
  overflow-x: auto;
}

.contract-list__table {
  width: 100%;
  border-collapse: collapse;
}

.contract-list__table th,
.contract-list__table td {
  text-align: left;
  padding: var(--wa-space-m) var(--wa-space-s);
  border-bottom: 1px solid var(--wa-color-surface-border);
}

.contract-list__table thead th {
  font-size: var(--wa-font-size-xs);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--wa-color-text-quiet);
}

/* ── Hotel cell ─────────────────────────────────────── */

.contract-list__hotel-name {
  display: block;
  font-weight: 500;
  color: var(--wa-color-text-normal);
}

.contract-list__hotel-meta {
  display: block;
  font-size: var(--wa-font-size-xs);
  color: var(--wa-color-text-quiet);
  margin-top: 2px;
}

/* ── Pending placeholder ────────────────────────────── */

.contract-list__pending {
  color: var(--wa-color-text-quiet);
}

/* ── Empty state ────────────────────────────────────── */

.contract-list__empty {
  text-align: center;
  padding: var(--wa-space-xl) var(--wa-space-l);
  border: 1px solid var(--wa-color-neutral-border-quiet);
  border-radius: var(--wa-border-radius-m);
  background-color: var(--wa-color-surface-lowered);
  margin-top: var(--wa-space-l);
}

.contract-list__empty-title {
  font-size: var(--wa-font-size-l);
  font-weight: 500;
  color: var(--wa-color-text-normal);
  margin: 0 0 var(--wa-space-xs);
}

.contract-list__empty-hint {
  font-size: var(--wa-font-size-s);
  color: var(--wa-color-text-quiet);
  margin: 0;
}

/* ── KPI tiles ──────────────────────────────────────── */

.contract-list__kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: var(--wa-space-m);
  margin: var(--wa-space-l) 0;
}

.contract-list__kpi {
  padding: var(--wa-space-m);
  border: 1px solid var(--wa-color-surface-border);
  border-radius: var(--wa-border-radius-m);
  background-color: var(--wa-color-surface-lowered);
}

.contract-list__kpi-value {
  font-size: var(--wa-font-size-2xl);
  font-family: var(--wa-font-family-heading);
  font-weight: var(--wa-font-weight-heading);
  margin: 0;
}

.contract-list__kpi-label {
  font-size: var(--wa-font-size-s);
  color: var(--wa-color-text-quiet);
  margin: var(--wa-space-3xs) 0 0;
}

/* ── Filter bar ─────────────────────────────────────── */

.contract-list__filters {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: var(--wa-space-s);
  margin: var(--wa-space-l) 0;
}
