.expertMarketplacePage {
  background: var(--iaa-color-background-light);
  color: var(--iaa-color-text);
}

.expertMarketplacePage p,
.expertMarketplacePage li,
.expertMarketplacePage label,
.expertMarketplacePage summary,
.expertMarketplacePage dd,
.expertMarketplacePage dt {
  color: var(--iaa-color-text);
}

.expertHero,
.expertMarketplace,
.expertDetail {
  padding-block: 2.5rem;
}

.expertHero .iaa-container {
  max-width: 900px;
  text-align: center;
}

.expertHero .eyebrow,
.expertToolbar h2 {
  color: var(--iaa-color-primary-active);
}

.expertHero p {
  max-width: 800px;
  margin-inline: auto;
}

.expertAvailabilityRows {
  display: grid;
  gap: 0;
  margin: 1rem 0;
}

.expertAvailabilityRows > div {
  display: grid;
  grid-template-columns: minmax(170px, .65fr) minmax(0, 1fr);
  gap: 1rem;
  padding-block: .7rem;
  border-bottom: 1px solid var(--iaa-color-border);
}

.expertAvailabilityRows dt { font-weight: 700; }
.expertAvailabilityRows dd { margin: 0; }

.expertToolbar,
.expertCard__header,
.expertDetailGrid,
.expertSummary,
.expertIdentity {
  display: flex;
  gap: 1rem;
}

.expertToolbar,
.expertCard__header,
.expertSummary {
  align-items: center;
  justify-content: space-between;
}

.expertFilters,
.expertRequestForm,
.expertReportForm {
  background: var(--iaa-color-surface);
  border: 1px solid var(--iaa-color-border);
  border-radius: 1.25rem;
  padding: 1rem;
  margin-block: 1rem;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.expertFilters .wide,
.expertDetailMain,
.expertDetailAside,
.expertRequestForm .full,
.expertReportForm .full {
  grid-column: 1 / -1;
}

.expertFilters{display:grid;grid-template-columns:1fr;padding:1rem;margin-block:.75rem 1rem}
.expertPrimaryFilters{display:grid;grid-template-columns:minmax(220px,1.3fr) repeat(2,minmax(150px,.75fr)) auto;gap:.75rem;align-items:end}
.expertPrimaryFilters label,.expertAdvancedFiltersBody>label{display:grid;gap:.35rem;font-weight:700}
.expertFilters .publicAdvancedFilters{border-top:1px solid var(--iaa-color-border);padding-top:.75rem}
.expertFilters .publicAdvancedFilters summary{width:max-content;cursor:pointer;color:var(--iaa-color-primary-active);font-weight:800}
.expertAdvancedFiltersBody{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding-top:.8rem}
.expertAdvancedFiltersBody fieldset{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:1rem}
.expertAdvancedFiltersBody fieldset label{display:flex;align-items:center;gap:.4rem}.expertAdvancedFiltersBody input[type=checkbox]{width:auto}.expertAdvancedFiltersBody .filterActions{grid-column:1/-1}

.expertFilters fieldset,
.expertRequestForm fieldset,
.expertReportForm fieldset {
  border: 1px solid var(--iaa-color-border);
  border-radius: 1rem;
  padding: 0.875rem;
}

.expertFilters input,
.expertFilters select,
.expertRequestForm input,
.expertRequestForm select,
.expertRequestForm textarea,
.expertReportForm input,
.expertReportForm select,
.expertReportForm textarea {
  width: 100%;
}

.expertGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
}

.expertCard,
.expertDetailMain,
.expertDetailAside > section {
  background: var(--iaa-color-surface);
  border: 1px solid var(--iaa-color-border);
  border-radius: 1.5rem;
  padding: 1.25rem;
  box-shadow: var(--iaa-shadow-sm);
}

.expertCard h3,
.expertCard p,
.expertDetailMain h1,
.expertDetailMain h2,
.expertDetailMain p,
.expertDetailAside h2,
.expertDetailAside p {
  color: var(--iaa-color-text);
}

.expertCard__header {
  align-items: flex-start;
}

.expertIdentity {
  align-items: center;
}

.expertPhoto {
  width: 72px;
  height: 72px;
  border-radius: 999px;
  object-fit: cover;
  background: var(--iaa-color-background-muted);
}

.expertPhotoPlaceholder {
  width: 72px;
  height: 72px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: var(--iaa-color-background-muted);
  color: var(--iaa-color-text-muted);
  font-weight: 700;
}

.expertMeta,
.expertSpecialties,
.expertActions,
.expertBadges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.expertSpecialties,
.expertActions,
.expertBadges,
.expertPricing,
.neutralSort {
  margin-top: 0.875rem;
}

.expertSpecialties span,
.expertBadges span,
.expertPricing,
.expertStatusPill {
  border-radius: 999px;
  padding: 0.35rem 0.75rem;
  background: var(--iaa-color-background-muted);
  color: var(--iaa-color-text);
  font-size: 0.94rem;
}

.expertStatusPill.accepting {
  background: var(--iaa-color-success-soft);
  color: var(--iaa-color-success-text);
}

.expertStatusPill.paused {
  background: var(--iaa-color-warning-soft);
  color: var(--iaa-color-warning-text);
}

.expertDetailGrid {
  align-items: start;
}

.expertDetailGrid > * {
  flex: 1 1 0;
}

.expertSummary {
  align-items: flex-start;
}

.expertSummary .expertPhoto,
.expertSummary .expertPhotoPlaceholder {
  width: 96px;
  height: 96px;
}

.expertDetailAside {
  display: grid;
  gap: 1rem;
}

.expertApprovedContact {
  display: grid;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.expertEmpty,
.expertError {
  text-align: center;
}

.expertReport summary {
  cursor: pointer;
}

.fieldStatusLine {
  min-height: 1.25rem;
}

@media (max-width: 1024px) {
  .expertDetailGrid {
    flex-direction: column;
  }
  .expertPrimaryFilters,.expertAdvancedFiltersBody{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width: 768px) {
  .expertHero,
  .expertMarketplace,
  .expertDetail {
    padding-block: 2rem;
  }

  .expertToolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .expertAvailabilityRows > div { grid-template-columns: 1fr; gap: .2rem; }
  .expertPrimaryFilters,.expertAdvancedFiltersBody{grid-template-columns:1fr}.expertPrimaryFilters .iaa-button{width:100%}
}

@media (max-width: 390px) {
  .expertCard,
  .expertDetailMain,
  .expertDetailAside > section,
  .expertFilters,
  .expertRequestForm,
  .expertReportForm {
    padding: 1rem;
  }
}
