/**
 * Permits Card 11 + Community Recent Permits feed.
 *
 * Consumed on:
 *   - single-address_profile.php (Card 11 — coc_render_bridge_card_permits)
 *   - page-neighbourhood-profile.php (coc_render_community_recent_permits)
 *
 * Status/outcome color tokens follow the site's existing permit-block palette:
 *   green = ok/pass, amber = live/warn, red = fail/off, grey = neu.
 */

/* ---------- Card 11 shared frame overrides ---------- */
.coc-card--permits .coc-card__subtitle { color: #64748b; font-size: 0.875rem; }
.coc-card--permits .coc-permits-empty { color: #64748b; font-style: italic; margin: 0.5rem 0; }

/* ---------- Parcel / nearby tile list ---------- */
.coc-permit-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0.75rem 0 0;
  padding: 0;
  list-style: none;
}
.coc-permit-list__nearby-note {
  font-size: 0.875rem;
  color: #64748b;
  margin: 0 0 0.5rem;
}

/* ---------- Permit tile ---------- */
.coc-permit-tile {
  border: 1px solid #e2e8f0;
  border-left: 4px solid #94a3b8;
  border-radius: 6px;
  padding: 0.875rem 1rem;
  background: #fff;
}
.coc-permit-tile--ok   { border-left-color: #16a34a; }
.coc-permit-tile--live { border-left-color: #d97706; }
.coc-permit-tile--off  { border-left-color: #dc2626; opacity: 0.75; }
.coc-permit-tile--neu  { border-left-color: #94a3b8; }

.coc-permit-tile__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.375rem;
}
.coc-permit-tile__num {
  font-weight: 700;
  font-size: 0.9375rem;
  color: #0f172a;
  letter-spacing: 0.02em;
}
.coc-permit-tile__status {
  display: inline-block;
  padding: 0.125rem 0.5rem;
  margin-left: 0.5rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.coc-permit-tile__status--ok   { background: #dcfce7; color: #166534; }
.coc-permit-tile__status--live { background: #fef3c7; color: #92400e; }
.coc-permit-tile__status--off  { background: #fee2e2; color: #991b1b; }
.coc-permit-tile__status--neu  { background: #e2e8f0; color: #475569; }
.coc-permit-tile__distance {
  font-size: 0.8125rem;
  color: #64748b;
  white-space: nowrap;
}

.coc-permit-tile__type {
  font-size: 0.9375rem;
  color: #0f172a;
  font-weight: 500;
  margin-bottom: 0.25rem;
}
.coc-permit-tile__desc {
  font-size: 0.875rem;
  color: #475569;
  margin-bottom: 0.5rem;
  line-height: 1.4;
}

.coc-permit-tile__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.25rem;
  font-size: 0.8125rem;
  color: #334155;
  padding: 0.5rem 0;
  border-top: 1px dashed #e2e8f0;
}
.coc-permit-tile__meta-item { display: flex; flex-direction: column; }
.coc-permit-tile__meta-item--wide { flex-basis: 100%; }
.coc-permit-tile__meta-label {
  font-size: 0.6875rem;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 0.125rem;
}

/* ---------- Inspection timeline ---------- */
.coc-permit-timeline {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid #e2e8f0;
}
.coc-permit-timeline__label {
  font-size: 0.75rem;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 0.5rem;
}
.coc-permit-timeline__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.coc-permit-timeline__list--rest { margin-top: 0.375rem; }
.coc-permit-timeline__item {
  display: grid;
  grid-template-columns: minmax(160px, auto) 1fr auto;
  gap: 0.5rem 0.75rem;
  align-items: baseline;
  font-size: 0.8125rem;
}
.coc-permit-timeline__pill {
  display: inline-block;
  padding: 0.125rem 0.5rem;
  border-radius: 999px;
  font-weight: 600;
  text-align: center;
}
.coc-permit-timeline__item--pass .coc-permit-timeline__pill { background: #dcfce7; color: #166534; }
.coc-permit-timeline__item--warn .coc-permit-timeline__pill { background: #fef3c7; color: #92400e; }
.coc-permit-timeline__item--fail .coc-permit-timeline__pill { background: #fee2e2; color: #991b1b; }
.coc-permit-timeline__item--neu  .coc-permit-timeline__pill { background: #e2e8f0; color: #475569; }
.coc-permit-timeline__stage { color: #334155; }
.coc-permit-timeline__when  { color: #64748b; font-variant-numeric: tabular-nums; }

.coc-permit-timeline__more { margin-top: 0.5rem; }
.coc-permit-timeline__more summary {
  cursor: pointer;
  font-size: 0.8125rem;
  color: #1d4ed8;
}
.coc-permit-timeline__more[open] summary { margin-bottom: 0.5rem; }

/* ---------- Aggregate mini-block (nearby + empty tiers) ---------- */
.coc-permits-aggregate {
  margin-top: 1rem;
  padding-top: 0.75rem;
  border-top: 1px dashed #e2e8f0;
}
.coc-permits-aggregate__label {
  font-size: 0.75rem;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 0.375rem;
}
.coc-permits-aggregate__row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.25rem;
  font-size: 0.8125rem;
}
.coc-permits-aggregate__row span { color: #334155; }
.coc-permits-aggregate__row strong { color: #0f172a; }

/* ---------- Community Recent Permits feed ---------- */
.coc-recent-permits { padding-block: 2rem; }
.coc-recent-permits__intro {
  color: #64748b;
  font-size: 0.9375rem;
  margin: 0 0 1rem;
}
.coc-recent-permits__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-top: none;
  border-radius: 0 0 8px 8px;
  overflow: hidden;
  background: #fff;
}
.coc-recent-permits__head {
  display: grid;
  grid-template-columns: 1.3fr 1.4fr 0.7fr 0.9fr 1.4fr;
  gap: 0.75rem 1rem;
  padding: 0.625rem 1rem;
  align-items: baseline;
  border: 1px solid #e2e8f0;
  border-left: 4px solid transparent;
  border-bottom: 2px solid #cbd5e1;
  border-radius: 8px 8px 0 0;
  background: #f8fafc;
  font-size: 0.6875rem;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
}
.coc-recent-permits__head .coc-recent-permits__addr,
.coc-recent-permits__head .coc-recent-permits__type,
.coc-recent-permits__head .coc-recent-permits__cost,
.coc-recent-permits__head .coc-recent-permits__issued,
.coc-recent-permits__head .coc-recent-permits__contractor {
  font-weight: 600;
  color: #64748b;
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.coc-recent-permits__head-cell { color: #64748b; }
.coc-recent-permits__row {
  display: grid;
  grid-template-columns: 1.3fr 1.4fr 0.7fr 0.9fr 1.4fr;
  gap: 0.75rem 1rem;
  padding: 0.75rem 1rem;
  align-items: baseline;
  border-bottom: 1px solid #f1f5f9;
  border-left: 4px solid transparent;
  font-size: 0.875rem;
}
.coc-recent-permits__row:last-child { border-bottom: none; }
.coc-recent-permits__row--ok   { border-left-color: #16a34a; }
.coc-recent-permits__row--live { border-left-color: #d97706; }
.coc-recent-permits__row--off  { border-left-color: #dc2626; opacity: 0.7; }
.coc-recent-permits__addr   { font-weight: 600; color: #0f172a; }
.coc-recent-permits__type   { color: #334155; }
.coc-recent-permits__cost   { color: #0f172a; font-variant-numeric: tabular-nums; }
.coc-recent-permits__issued { color: #64748b; font-variant-numeric: tabular-nums; }
.coc-recent-permits__contractor { color: #475569; }
.coc-recent-permits__source {
  margin: 1rem 0 0;
  font-size: 0.75rem;
  color: #64748b;
}

@media (max-width: 720px) {
  .coc-recent-permits__head { display: none; }
  .coc-recent-permits__list {
    border-top: 1px solid #e2e8f0;
    border-radius: 8px;
  }
  .coc-recent-permits__row {
    grid-template-columns: 1fr;
    gap: 0.125rem;
    padding: 0.75rem 1rem;
  }
  .coc-recent-permits__addr { font-size: 1rem; }
  .coc-recent-permits__cost::before { content: 'Est. cost: '; color: #64748b; font-size: 0.75rem; }
  .coc-recent-permits__issued::before { content: 'Issued: '; color: #64748b; font-size: 0.75rem; }
  .coc-recent-permits__contractor::before { content: 'Contractor: '; color: #64748b; font-size: 0.75rem; }

  .coc-permit-timeline__item {
    grid-template-columns: 1fr;
    gap: 0.125rem;
  }
}
