/* Ealing Pulse v1.13.10.2 — simple, mobile-first classifieds and resident reports. */

/* Classifieds: one obvious action, one search, instantly visible categories. */
.ep-market-head {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-bottom: 12px;
  padding: 18px 20px;
  border: 1px solid #dbe8ee;
  border-radius: 24px;
  background: linear-gradient(135deg, #fff 0%, #f2fbfb 58%, #eef4ff 100%);
  box-shadow: 0 12px 30px rgba(16, 47, 70, .08);
}
.ep-market-head::after {
  content: "";
  position: absolute;
  right: 118px;
  bottom: -54px;
  width: 145px;
  height: 145px;
  border: 25px solid rgba(20, 184, 166, .07);
  border-radius: 50%;
  pointer-events: none;
}
.ep-market-head__copy { position: relative; z-index: 1; min-width: 0; }
.ep-market-head__copy > span {
  display: block;
  margin-bottom: 5px;
  color: #ef5e4b;
  font-size: .67rem;
  font-weight: 950;
  letter-spacing: .12em;
}
.ep-market-head__copy h1 {
  margin: 0;
  color: #102f46;
  font-size: clamp(1.7rem, 4vw, 2.25rem);
  line-height: 1;
  letter-spacing: -.045em;
}
.ep-market-head__copy p {
  max-width: 620px;
  margin: 8px 0 0;
  color: #607785;
  font-size: .91rem;
  line-height: 1.45;
}
.ep-market-add {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 58px;
  padding: 9px 17px;
  border-radius: 18px;
  background: linear-gradient(135deg, #ff654d, #f43f7a);
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 11px 24px rgba(244, 63, 122, .23);
}
.ep-market-add__plus { font-size: 1.35rem; font-weight: 900; line-height: 1; }
.ep-market-add > span:last-child { display: flex; flex-direction: column; }
.ep-market-add strong { font-size: .91rem; line-height: 1.1; }
.ep-market-add small { margin-top: 3px; color: rgba(255,255,255,.84); font-size: .67rem; }

.ep-market-search {
  margin: 0;
  padding: 10px;
  border: 1px solid #dce7ed;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 9px 24px rgba(16, 47, 70, .07);
}
.ep-market-search__main { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px; }
.ep-market-search__query {
  display: flex;
  min-width: 0;
  min-height: 50px;
  align-items: center;
  gap: 10px;
  padding: 0 13px;
  border: 1px solid #ccdbe3;
  border-radius: 15px;
  background: #f9fbfc;
}
.ep-market-search__query:focus-within { border-color: #18a5a7; box-shadow: 0 0 0 3px rgba(18,163,165,.12); }
.ep-market-search__query > span { display: grid; color: #168d96; }
.ep-market-search__query svg { width: 21px; height: 21px; }
.ep-market-search__query input {
  min-width: 0;
  width: 100%;
  height: 46px;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #17384d;
  font: inherit;
  font-size: .95rem;
}
.ep-market-search__button {
  display: inline-flex;
  min-width: 118px;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 17px;
  border: 0;
  border-radius: 15px;
  background: linear-gradient(135deg, #2563eb, #06b6d4);
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: .88rem;
  font-weight: 900;
  box-shadow: 0 8px 18px rgba(37, 99, 235, .18);
}
.ep-market-search__button span { display: grid; }
.ep-market-search__button svg { width: 18px; height: 18px; }
.ep-market-location { margin-top: 7px; border-radius: 14px; background: #f6f9fb; }
.ep-market-location > summary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 28px;
  gap: 9px;
  align-items: center;
  min-height: 45px;
  padding: 5px 9px;
  list-style: none;
  cursor: pointer;
}
.ep-market-location > summary::-webkit-details-marker { display: none; }
.ep-market-location__icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: #fff; color: #138c91; }
.ep-market-location__icon svg { width: 18px; height: 18px; }
.ep-market-location__copy { display: flex; min-width: 0; flex-direction: column; }
.ep-market-location__copy small { color: #758895; font-size: .63rem; font-weight: 800; }
.ep-market-location__copy strong { overflow: hidden; color: #24485d; font-size: .79rem; text-overflow: ellipsis; white-space: nowrap; }
.ep-market-location__chevron { color: #617887; font-size: 1.1rem; font-weight: 900; transition: transform .18s ease; }
.ep-market-location[open] .ep-market-location__chevron { transform: rotate(180deg); }
.ep-market-location__panel { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding: 8px; border-top: 1px solid #e3ebef; }
.ep-market-location__panel label > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.ep-market-location__panel input { width: 100%; min-height: 42px; padding: 9px 11px; border: 1px solid #cad9e1; border-radius: 12px; background: #fff; color: #17384d; font: inherit; }
.ep-market-location__panel button { min-height: 42px; padding: 0 14px; border: 0; border-radius: 12px; background: #123b56; color: #fff; font: inherit; font-size: .78rem; font-weight: 900; }

.ep-market-category-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 15px 2px 8px; }
.ep-market-category-heading strong { color: #17384d; font-size: .91rem; }
.ep-market-category-heading small { color: #7b8d98; font-size: .68rem; }
.ep-market-categories {
  display: flex;
  gap: 8px;
  margin: 0 -2px;
  padding: 2px 2px 7px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  scroll-snap-type: x proximity;
}
.ep-market-categories::-webkit-scrollbar { display: none; }
.ep-market-category {
  display: inline-flex;
  flex: 0 0 auto;
  min-height: 45px;
  align-items: center;
  gap: 7px;
  padding: 6px 12px 6px 7px;
  border: 1px solid #dce7ed;
  border-radius: 15px;
  background: #fff;
  color: #31566c;
  text-decoration: none;
  box-shadow: 0 5px 15px rgba(16,47,70,.05);
  scroll-snap-align: start;
}
.ep-market-category > span { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; background: #eaf7f7; color: #0d8589; }
.ep-market-category:nth-child(3n+2) > span { background: #eef1ff; color: #5d62bf; }
.ep-market-category:nth-child(3n+3) > span { background: #fff0e8; color: #bd6228; }
.ep-market-category svg { width: 16px; height: 16px; }
.ep-market-category strong { font-size: .76rem; white-space: nowrap; }
.ep-market-category.is-active { border-color: #123b56; background: #123b56; color: #fff; box-shadow: 0 7px 18px rgba(18,59,86,.18); }
.ep-market-category.is-active > span { background: rgba(255,255,255,.15); color: #fff; }

/* Urbiax: a quiet cross-link in the general feed, expanded only for property searches. */
.ep-urbiax-nudge {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  padding: 9px 11px;
  border: 1px solid #dce5eb;
  border-radius: 17px;
  background: linear-gradient(135deg, #fbfcfd, #f2f8fa);
  color: #183b50;
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ep-urbiax-nudge:hover { border-color: #9ecbd0; box-shadow: 0 8px 20px rgba(16,47,70,.08); transform: translateY(-1px); }
.ep-urbiax-nudge__mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: #102f46;
  color: #65e1cf;
}
.ep-urbiax-nudge__mark svg { width: 21px; height: 21px; }
.ep-urbiax-nudge__copy { display: flex; min-width: 0; flex-direction: column; }
.ep-urbiax-nudge__copy small { color: #7b8d98; font-size: .61rem; font-weight: 800; line-height: 1.2; }
.ep-urbiax-nudge__copy strong { margin-top: 2px; color: #17384d; font-size: .8rem; line-height: 1.25; }
.ep-urbiax-nudge > b { color: #0d8589; font-size: .76rem; white-space: nowrap; }

.ep-urbiax-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-top: 11px;
  padding: 17px 18px;
  border: 1px solid #244b5f;
  border-radius: 22px;
  background: linear-gradient(135deg, #102f46 0%, #143e52 56%, #0b6f75 125%);
  color: #fff;
  box-shadow: 0 11px 27px rgba(16,47,70,.16);
}
.ep-urbiax-card::after {
  content: "";
  position: absolute;
  right: 112px;
  bottom: -84px;
  width: 180px;
  height: 180px;
  border: 28px solid rgba(101,225,207,.08);
  border-radius: 50%;
  pointer-events: none;
}
.ep-urbiax-card__copy { position: relative; z-index: 1; min-width: 0; }
.ep-urbiax-card__eyebrow {
  display: block;
  margin-bottom: 9px;
  color: #8ee7d9;
  font-size: .58rem;
  font-weight: 950;
  letter-spacing: .09em;
}
.ep-urbiax-card__title-row { display: flex; align-items: center; gap: 11px; }
.ep-urbiax-card__mark {
  display: grid;
  flex: 0 0 47px;
  place-items: center;
  width: 47px;
  height: 47px;
  border-radius: 15px;
  background: #65e1cf;
  color: #102f46;
  box-shadow: 0 8px 18px rgba(0,0,0,.14);
}
.ep-urbiax-card__mark svg { width: 24px; height: 24px; }
.ep-urbiax-card__title-row > div { min-width: 0; }
.ep-urbiax-card__brand { display: block; color: #fff; font-size: 1rem; letter-spacing: -.03em; line-height: 1; }
.ep-urbiax-card__brand span { color: #65e1cf; }
.ep-urbiax-card h2 { margin: 4px 0 0; color: #fff; font-size: clamp(1.02rem, 3vw, 1.26rem); line-height: 1.16; letter-spacing: -.025em; }
.ep-urbiax-card p { max-width: 650px; margin: 10px 0 0; color: #d8e6eb; font-size: .78rem; line-height: 1.45; }
.ep-urbiax-card__topics { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.ep-urbiax-card__topics span { padding: 5px 9px; border: 1px solid rgba(255,255,255,.15); border-radius: 999px; background: rgba(255,255,255,.08); color: #f5fbfc; font-size: .65rem; font-weight: 850; }
.ep-urbiax-card__button {
  position: relative;
  z-index: 1;
  display: flex;
  min-width: 156px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px 14px;
  border-radius: 15px;
  background: #fff;
  color: #102f46;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
  transition: transform .18s ease, box-shadow .18s ease;
}
.ep-urbiax-card__button:hover { transform: translateY(-2px); box-shadow: 0 13px 28px rgba(0,0,0,.2); }
.ep-urbiax-card__button span { color: #607785; font-size: .63rem; font-weight: 800; }
.ep-urbiax-card__button b { margin-top: 3px; color: #0b777b; font-size: .82rem; }

.ep-results-section { margin-top: 17px !important; }
.ep-market-results-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
.ep-market-results-head h2 { margin: 0; color: #102f46; font-size: clamp(1.35rem, 4vw, 1.75rem); letter-spacing: -.03em; }
.ep-market-results-head p { margin: 3px 0 0; color: #70828e; font-size: .78rem; }
.ep-market-results-head > a { color: #2563eb; font-size: .72rem; font-weight: 900; text-decoration: none; white-space: nowrap; }
.ep-market-results-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  margin-bottom: 11px;
  padding: 7px 8px;
  border: 1px solid #e0e9ee;
  border-radius: 15px;
  background: rgba(255,255,255,.78);
}
.ep-market-results-toolbar .ep-sort-form { margin: 0; }
.ep-market-results-toolbar .ep-sort-form label { display: flex; align-items: center; gap: 7px; }
.ep-market-results-toolbar .ep-sort-form label > span { color: #71838f; font-size: .69rem; font-weight: 800; }
.ep-market-results-toolbar .ep-sort-form select { min-height: 35px; padding: 5px 29px 5px 9px; border-radius: 10px; font-size: .72rem; }
.ep-market-results-toolbar .ep-listing-display-controls { gap: 0; }
.ep-market-results-toolbar .ep-view-toggle { border: 0; background: #eef3f6; }

/* Desktop list/cards switch: the JavaScript already changed the state, but
   desktop previously had no list-mode layout rules. */
@media (min-width: 681px) {
  .ep-listings-page .ep-listing-grid.is-list-view {
    grid-template-columns: 1fr !important;
    gap: 12px;
  }
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card {
    display: grid;
    grid-template-columns: 230px minmax(0,1fr);
    min-height: 168px;
    border-radius: 20px;
  }
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__image {
    height: 100%;
    min-height: 168px;
    aspect-ratio: auto;
    border-radius: 0;
  }
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: 17px 20px;
  }
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card h3 {
    margin: 8px 0 7px;
    font-size: 1.05rem;
    line-height: 1.3;
  }
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__body > .ep-listing-price {
    margin: 0 0 8px;
    font-size: 1rem;
  }
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-owner-mini {
    display: flex;
    margin-top: 10px;
    padding-top: 10px;
  }
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-ad-card {
    grid-column: 1 / -1;
  }
}
.ep-listing-card__meta { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 7px; }
.ep-listing-card__meta small { flex: 0 0 auto; color: #738692; font-size: .68rem; }
.ep-listing-card__meta .ep-listing-topic { justify-content: flex-start; max-width: 70%; }
.ep-listing-card__body > .ep-listing-price { display: block; margin: 3px 0 8px; color: #102f46; font-size: 1.08rem; line-height: 1.22; }
.ep-listing-card__body > .ep-listing-location { margin-top: 0 !important; }
.ep-market-bottom-cta {
  display: grid;
  grid-template-columns: 45px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  margin-top: 14px;
  padding: 12px;
  border: 1px solid #cbe7e2;
  border-radius: 19px;
  background: linear-gradient(135deg, #f1fbf8, #f5f8ff);
  color: #17384d;
  text-decoration: none;
}
.ep-market-bottom-cta > span:first-child { display: grid; place-items: center; width: 45px; height: 45px; border-radius: 14px; background: #0d8c80; color: #fff; }
.ep-market-bottom-cta svg { width: 22px; height: 22px; }
.ep-market-bottom-cta > span:nth-child(2) { display: flex; min-width: 0; flex-direction: column; }
.ep-market-bottom-cta strong { font-size: .86rem; }
.ep-market-bottom-cta small { margin-top: 3px; color: #637b87; font-size: .7rem; line-height: 1.35; }
.ep-market-bottom-cta > b { padding: 9px 11px; border-radius: 12px; background: #123b56; color: #fff; font-size: .75rem; white-space: nowrap; }

/* Resident reports: three short cards instead of a long institutional wizard. */
.simple-report-head {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 17px;
  overflow: hidden;
  border: 1px solid #d8e8ee;
  border-radius: 24px;
  background: linear-gradient(135deg, #eef9ff 0%, #f1fbf7 64%, #fff8f2 100%);
  box-shadow: 0 10px 28px rgba(20,53,84,.08);
}
.simple-report-head__icon { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 18px; background: linear-gradient(135deg, #177ec9, #0aa4a2); color: #fff; box-shadow: 0 9px 20px rgba(23,126,201,.2); }
.simple-report-head__icon .ui-icon { width: 28px; height: 28px; }
.simple-report-head__copy { min-width: 0; }
.simple-report-head__copy > span { color: #0e8b81; font-size: 9px; font-weight: 950; letter-spacing: .1em; }
.simple-report-head__copy h1 { margin: 4px 0 5px; color: #123b56; font-size: clamp(24px, 5vw, 34px); line-height: 1.03; letter-spacing: -.04em; }
.simple-report-head__copy p { margin: 0; color: #607987; font-size: 12px; line-height: 1.45; }
.simple-report-head__board { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 7px; padding: 9px 12px; border: 1px solid #cbdde6; border-radius: 14px; background: #fff; color: #176f9e; font-size: 10px; font-weight: 900; text-decoration: none; white-space: nowrap; }
.simple-report-head__board .ui-icon { width: 18px; height: 18px; }
.simple-report-info { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 9px; align-items: center; margin-top: 10px; padding: 10px 12px; border: 1px solid #f0dbb4; border-radius: 15px; background: #fff9ed; }
.simple-report-info > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; background: #fff; color: #b87318; font-size: 14px; font-weight: 950; }
.simple-report-info p { margin: 0 !important; color: #5e6470; font-size: 10px !important; line-height: 1.45; }
.simple-report-info strong { display: block; margin-bottom: 2px; color: #7a541b; font-size: 11px; }
.simple-report-notice { margin-top: 10px; }

.report-form--simple { display: grid; gap: 11px; margin-top: 11px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.simple-report-step { padding: 15px; border: 1px solid #dfe9ee; border-radius: 21px; background: #fff; box-shadow: 0 7px 21px rgba(20,53,84,.055); }
.simple-report-step__head { display: grid; grid-template-columns: 37px minmax(0, 1fr); gap: 10px; align-items: center; margin-bottom: 12px; }
.simple-report-step__head > span { display: grid; place-items: center; width: 37px; height: 37px; border-radius: 12px; background: #123b56; color: #fff; font-size: 14px; font-weight: 950; }
.simple-report-step:nth-of-type(2) .simple-report-step__head > span { background: #167f91; }
.simple-report-step:nth-of-type(3) .simple-report-step__head > span { background: #7656c8; }
.simple-report-step__head h2 { margin: 0; color: #123b56; font-size: 17px; line-height: 1.15; }
.simple-report-step__head p { margin: 3px 0 0 !important; color: #718592; font-size: 10.5px !important; line-height: 1.35; }
.report-category-grid--quick { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.report-category-grid--quick .report-category { min-height: 86px; padding: 9px 6px; border-radius: 15px; }
.report-category-grid--quick .report-category strong { font-size: 11px; line-height: 1.2; }
.report-category-grid--quick .category-icon { width: 36px; height: 36px; border-radius: 12px; }
.simple-report-more { margin-top: 9px; border: 1px solid #e1e9ee; border-radius: 15px; background: #f8fafc; overflow: hidden; }
.simple-report-more > summary { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 9px; align-items: center; min-height: 52px; padding: 7px 10px; list-style: none; cursor: pointer; }
.simple-report-more > summary::-webkit-details-marker { display: none; }
.simple-report-more > summary > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: #fff; color: #49697b; transition: transform .18s ease; }
.simple-report-more[open] > summary > span { transform: rotate(90deg); color: #2563eb; }
.simple-report-more > summary .ui-icon { width: 17px; height: 17px; }
.simple-report-more > summary strong,.simple-report-more > summary small { display: block; }
.simple-report-more > summary strong { color: #294b5f; font-size: 12px; }
.simple-report-more > summary small { margin-top: 2px; color: #778a96; font-size: 9px; }
.report-category-grid--more { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; padding: 9px; border-top: 1px solid #e5ecef; background: #fff; }
.report-category-grid--more .report-category { min-height: 77px; padding: 7px 5px; border-radius: 13px; }
.report-category-grid--more .report-category strong { font-size: 9px; line-height: 1.2; }
.report-category-grid--more .category-icon { width: 30px; height: 30px; }
.simple-report-location-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(150px, .65fr); gap: 10px; }
.report-form--simple .form-field { margin-top: 0; }
.report-form--simple .form-field > span { margin-bottom: 6px; color: #294b5f; font-size: 11px; }
.report-form--simple .form-field input,.report-form--simple .form-field textarea { min-height: 46px; padding: 11px 12px; border-color: #cfdee6; border-radius: 13px; font-size: 13px; }
.report-form--simple .form-field input:focus,.report-form--simple .form-field textarea:focus { border-color: #168f96; box-shadow: 0 0 0 3px rgba(22,143,150,.11); }
.simple-report-description { margin-top: 10px !important; }
.report-form--simple .simple-report-description textarea { min-height: 108px; }
.report-form--simple .similar-report-panel { margin-top: 10px; }
.simple-report-photo { margin: 0; min-height: 74px; border-width: 2px; background: #f8fbfd; }
.simple-report-photo > span { background: linear-gradient(135deg, #edf3ff, #eafafa); color: #2465c4; }
.simple-report-contact { margin-top: 9px; border: 1px solid #e1e9ee; border-radius: 14px; background: #f8fafb; }
.simple-report-contact > summary { display: grid; grid-template-columns: 34px minmax(0,1fr) 22px; gap: 9px; align-items: center; min-height: 52px; padding: 7px 10px; list-style: none; cursor: pointer; }
.simple-report-contact > summary::-webkit-details-marker { display: none; }
.simple-report-contact > summary > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: #fff; color: #506f80; }
.simple-report-contact > summary .ui-icon { width: 17px; height: 17px; }
.simple-report-contact > summary strong,.simple-report-contact > summary small { display: block; }
.simple-report-contact > summary strong { color: #294b5f; font-size: 12px; }
.simple-report-contact > summary small { margin-top: 2px; color: #788b96; font-size: 9px; }
.simple-report-contact > summary b { color: #647b88; transition: transform .18s ease; }
.simple-report-contact[open] > summary b { transform: rotate(180deg); }
.simple-report-contact > .form-field { padding: 0 10px 10px; }
.simple-report-publish { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 14px; border-radius: 20px; background: linear-gradient(135deg, #123b56, #155f75); color: #fff; box-shadow: 0 11px 25px rgba(18,59,86,.17); }
.simple-report-publish > div { display: grid; grid-template-columns: 36px minmax(0,1fr); gap: 9px; align-items: center; }
.simple-report-publish > div > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 11px; background: rgba(255,255,255,.12); }
.simple-report-publish > div > span svg { width: 18px; height: 18px; }
.simple-report-publish p { margin: 0 !important; color: rgba(255,255,255,.76); font-size: 9.5px !important; line-height: 1.4; }
.simple-report-publish p strong { display: block; margin-bottom: 2px; color: #fff; font-size: 11px; }
.simple-report-publish .coral-button { width: auto; min-width: 174px; min-height: 48px; margin: 0; padding: 0 16px; white-space: nowrap; }

/* Public issue board: content first, detailed filters only when requested. */
.simple-issues-head {
  display: grid;
  grid-template-columns: 58px minmax(0,1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 17px;
  border: 1px solid #d8e8ee;
  border-radius: 24px;
  background: linear-gradient(135deg, #eef9ff, #f1fbf7 65%, #fff8f2);
  box-shadow: 0 10px 28px rgba(20,53,84,.08);
}
.simple-issues-head__icon { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 18px; background: linear-gradient(135deg, #177ec9, #0aa4a2); color: #fff; box-shadow: 0 9px 20px rgba(23,126,201,.2); }
.simple-issues-head__icon .ui-icon { width: 28px; height: 28px; }
.simple-issues-head__copy { min-width: 0; }
.simple-issues-head__copy > span { color: #0e8b81; font-size: 9px; font-weight: 950; letter-spacing: .1em; }
.simple-issues-head__copy h1 { margin: 4px 0 5px; color: #123b56; font-size: clamp(24px,5vw,34px); line-height: 1.03; letter-spacing: -.04em; }
.simple-issues-head__copy p { margin: 0 !important; color: #607987; font-size: 12px !important; line-height: 1.45; }
.simple-issues-head__actions { display: flex; align-items: center; gap: 7px; }
.simple-issues-head__actions .coral-button,.simple-issues-head__actions .secondary-button { width: auto; min-height: 44px; margin: 0; padding: 9px 13px; white-space: nowrap; }
.simple-issues-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 9px; }
.simple-issues-stats > div { display: flex; min-height: 47px; align-items: center; justify-content: center; gap: 7px; padding: 8px; border: 1px solid #e0e9ee; border-radius: 14px; background: #fff; box-shadow: 0 5px 15px rgba(20,53,84,.04); }
.simple-issues-stats strong { color: #123b56; font-size: 18px; }
.simple-issues-stats span { color: #718590; font-size: 9px; line-height: 1.2; }
.simple-issues-search { margin-top: 10px; padding: 9px; border: 1px solid #dce7ed; border-radius: 18px; background: #fff; box-shadow: 0 7px 20px rgba(20,53,84,.055); }
.simple-issues-search__main { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.simple-issues-search__main > label { display: flex; min-width: 0; min-height: 46px; align-items: center; gap: 9px; padding: 0 11px; border: 1px solid #cfdee6; border-radius: 13px; background: #f9fbfc; }
.simple-issues-search__main > label:focus-within { border-color: #168f96; box-shadow: 0 0 0 3px rgba(22,143,150,.11); }
.simple-issues-search__main > label > span { display: grid; color: #168f96; }
.simple-issues-search__main .ui-icon { width: 18px; height: 18px; }
.simple-issues-search__main input { min-width: 0; width: 100%; height: 42px; padding: 0; border: 0; outline: 0; background: transparent; color: #294b5f; font: inherit; font-size: 12px; }
.simple-issues-search__main > button { display: inline-flex; min-width: 108px; min-height: 46px; align-items: center; justify-content: center; gap: 7px; padding: 0 14px; border: 0; border-radius: 13px; background: linear-gradient(135deg,#177ec9,#0aa4a2); color: #fff; font: inherit; font-size: 11px; font-weight: 900; }
.simple-issues-filters { margin-top: 7px; border-radius: 13px; background: #f6f9fb; overflow: hidden; }
.simple-issues-filters > summary { display: grid; grid-template-columns: 32px auto minmax(0,1fr) 22px; gap: 8px; align-items: center; min-height: 43px; padding: 5px 9px; list-style: none; cursor: pointer; }
.simple-issues-filters > summary::-webkit-details-marker { display: none; }
.simple-issues-filters > summary > span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; background: #fff; color: #4e6e80; }
.simple-issues-filters > summary .ui-icon { width: 16px; height: 16px; }
.simple-issues-filters > summary strong { color: #294b5f; font-size: 11px; }
.simple-issues-filters > summary small { color: #7a8d98; font-size: 9px; }
.simple-issues-filters > summary > b { color: #657c89; transition: transform .18s ease; }
.simple-issues-filters[open] > summary > b { transform: rotate(180deg); }
.simple-issues-filters .issues-filter-row { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; padding: 9px; border-top: 1px solid #e3ebef; background: #fff; }
.simple-issues-filters .issues-filter-row label > span { display: block; margin-bottom: 4px; color: #6b818e; font-size: 9px; font-weight: 850; }
.simple-issues-filters .issues-filter-row select { width: 100%; min-height: 40px; padding: 8px 9px; border: 1px solid #d0dee6; border-radius: 11px; background: #fff; color: #294b5f; font-size: 10px; }
.simple-issues-filters__actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding: 0 9px 9px; background: #fff; }
.simple-issues-filters__actions > a { color: #6f828e; font-size: 10px; font-weight: 850; }
.simple-issues-filters__actions .primary-button { width: auto; min-height: 39px; margin: 0; padding: 8px 13px; }
.simple-issues-search + .issues-feed-heading { margin-top: 17px; }

@media (max-width: 680px) {
  .ep-market-head { gap: 10px; margin-bottom: 9px; padding: 13px; border-radius: 20px; }
  .ep-market-head::after { right: 92px; bottom: -70px; }
  .ep-market-head__copy > span { font-size: .55rem; }
  .ep-market-head__copy h1 { font-size: 1.52rem; }
  .ep-market-head__copy p { display: -webkit-box; overflow: hidden; margin-top: 6px; font-size: .72rem; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .ep-market-add { min-height: 52px; gap: 7px; padding: 7px 11px; border-radius: 15px; }
  .ep-market-add__plus { font-size: 1.15rem; }
  .ep-market-add strong { font-size: .75rem; }
  .ep-market-add small { font-size: .57rem; }
  .ep-market-search { padding: 8px; border-radius: 17px; }
  .ep-market-search__main { gap: 7px; }
  .ep-market-search__query { min-height: 45px; padding: 0 10px; border-radius: 13px; }
  .ep-market-search__query input { height: 41px; font-size: .84rem; }
  .ep-market-search__query svg { width: 18px; height: 18px; }
  .ep-market-search__button { min-width: 48px; min-height: 45px; padding: 0 12px; border-radius: 13px; }
  .ep-market-search__button b { display: none; }
  .ep-market-category-heading { margin-top: 13px; }
  .ep-market-category-heading strong { font-size: .82rem; }
  .ep-market-category-heading small { font-size: .61rem; }
  .ep-market-category { min-height: 43px; padding-right: 11px; }
  .ep-urbiax-nudge { grid-template-columns: 38px minmax(0,1fr) auto; gap: 8px; padding: 8px 9px; border-radius: 15px; }
  .ep-urbiax-nudge__mark { width: 38px; height: 38px; border-radius: 12px; }
  .ep-urbiax-nudge__copy small { font-size: .54rem; }
  .ep-urbiax-nudge__copy strong { font-size: .72rem; }
  .ep-urbiax-nudge > b { font-size: .68rem; }
  .ep-urbiax-card { grid-template-columns: minmax(0,1fr); gap: 12px; padding: 14px; border-radius: 19px; }
  .ep-urbiax-card::after { right: -72px; bottom: -92px; }
  .ep-urbiax-card__eyebrow { margin-bottom: 8px; font-size: .52rem; }
  .ep-urbiax-card__mark { flex-basis: 43px; width: 43px; height: 43px; border-radius: 14px; }
  .ep-urbiax-card h2 { font-size: 1rem; }
  .ep-urbiax-card p { margin-top: 8px; font-size: .7rem; }
  .ep-urbiax-card__topics { margin-top: 8px; }
  .ep-urbiax-card__button { min-width: 0; flex-direction: row; gap: 7px; padding: 11px 13px; }
  .ep-urbiax-card__button b { margin-top: 0; }
  .ep-market-results-head { align-items: center; }
  .ep-market-results-head h2 { font-size: 1.23rem; }
  .ep-market-results-toolbar { margin-bottom: 9px; padding: 6px; }
  .ep-market-results-toolbar .ep-sort-form label > span { display: none; }
  .ep-market-results-toolbar .ep-sort-form select { max-width: 148px; }
  .ep-market-results-toolbar .ep-view-toggle button { min-height: 32px; padding: 0 8px; }
  .ep-market-results-toolbar .ep-view-toggle button span { display: none; }

  .ep-listing-grid:not(.is-grid-view) .ep-listing-card,
  .ep-listing-grid.is-list-view .ep-listing-card { grid-template-columns: 116px minmax(0,1fr); min-height: 120px; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card__image,
  .ep-listing-grid.is-list-view .ep-listing-card__image { min-height: 120px; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card__body,
  .ep-listing-grid.is-list-view .ep-listing-card__body { justify-content: flex-start; padding: 9px 10px; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card__meta,
  .ep-listing-grid.is-list-view .ep-listing-card__meta { min-height: 21px; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card__meta .ep-listing-topic,
  .ep-listing-grid.is-list-view .ep-listing-card__meta .ep-listing-topic { max-width: 68%; min-height: 20px; padding: 3px 6px; font-size: .56rem; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card__meta small,
  .ep-listing-grid.is-list-view .ep-listing-card__meta small { font-size: .59rem; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card h3,
  .ep-listing-grid.is-list-view .ep-listing-card h3 { margin: 5px 0 4px; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card__body > .ep-listing-price,
  .ep-listing-grid.is-list-view .ep-listing-card__body > .ep-listing-price { margin: 0 0 5px; font-size: .85rem; }
  .ep-listing-grid.is-grid-view .ep-listing-card__meta .ep-listing-topic { max-width: 67%; min-height: 20px; padding: 3px 5px; font-size: .53rem; }
  .ep-listing-grid.is-grid-view .ep-listing-card__meta small { font-size: .56rem; }
  .ep-listing-grid.is-grid-view .ep-listing-card__body > .ep-listing-price { margin: 2px 0 6px; font-size: .86rem; }
  .ep-market-bottom-cta { grid-template-columns: 40px minmax(0,1fr) auto; gap: 9px; padding: 10px; border-radius: 17px; }
  .ep-market-bottom-cta > span:first-child { width: 40px; height: 40px; border-radius: 12px; }
  .ep-market-bottom-cta small { display: none; }
  .ep-market-bottom-cta > b { padding: 8px 9px; }

  .simple-report-head { grid-template-columns: 50px minmax(0,1fr); gap: 11px; padding: 14px; border-radius: 21px; }
  .simple-report-head__icon { width: 50px; height: 50px; border-radius: 16px; }
  .simple-report-head__icon .ui-icon { width: 24px; height: 24px; }
  .simple-report-head__copy h1 { font-size: 23px; }
  .simple-report-head__copy p { font-size: 10.5px; }
  .simple-report-head__board { grid-column: 1 / -1; min-height: 41px; }
  .simple-report-step { padding: 13px; border-radius: 19px; }
  .simple-report-step__head { margin-bottom: 10px; }
  .report-category-grid--quick { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .report-category-grid--quick .report-category { min-height: 82px; }
  .report-category-grid--more { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .report-category-grid--more .report-category { min-height: 72px; }
  .simple-report-location-grid { grid-template-columns: 1fr; gap: 9px; }
  .simple-report-publish { grid-template-columns: 1fr; padding: 12px; }
  .simple-report-publish .coral-button { width: 100%; min-width: 0; }

  .simple-issues-head { grid-template-columns: 50px minmax(0,1fr); gap: 11px; padding: 14px; border-radius: 21px; }
  .simple-issues-head__icon { width: 50px; height: 50px; border-radius: 16px; }
  .simple-issues-head__icon .ui-icon { width: 24px; height: 24px; }
  .simple-issues-head__copy h1 { font-size: 23px; }
  .simple-issues-head__copy p { font-size: 10.5px !important; }
  .simple-issues-head__actions { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr auto; }
  .simple-issues-head__actions .coral-button { width: 100%; }
  .simple-issues-stats { gap: 5px; }
  .simple-issues-stats > div { min-height: 44px; flex-direction: column; gap: 1px; padding: 6px 4px; text-align: center; }
  .simple-issues-stats strong { font-size: 16px; }
  .simple-issues-stats span { font-size: 7.8px; }
  .simple-issues-search { padding: 8px; border-radius: 16px; }
  .simple-issues-search__main { gap: 7px; }
  .simple-issues-search__main > label { min-height: 43px; }
  .simple-issues-search__main > button { min-width: 44px; min-height: 43px; padding: 0 11px; }
  .simple-issues-search__main > button b { display: none; }
  .simple-issues-filters > summary { grid-template-columns: 32px auto minmax(0,1fr) 20px; }
  .simple-issues-filters .issues-filter-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .simple-issues-filters__actions .primary-button { flex: 1; }
}

@media (max-width: 380px) {
  .ep-urbiax-nudge { grid-template-columns: 36px minmax(0,1fr); }
  .ep-urbiax-nudge__mark { grid-row: 1 / span 2; width: 36px; height: 36px; }
  .ep-urbiax-nudge > b { grid-column: 2; justify-self: start; }
  .ep-market-head { grid-template-columns: minmax(0,1fr) 116px; }
  .ep-market-add { padding: 7px 8px; }
  .ep-market-add small { display: none; }
  .ep-market-location__panel { grid-template-columns: 1fr; }
  .ep-market-location__panel button { width: 100%; }
  .ep-market-results-head > a { font-size: .64rem; }
  .ep-listing-grid:not(.is-grid-view) .ep-listing-card,
  .ep-listing-grid.is-list-view .ep-listing-card { grid-template-columns: 104px minmax(0,1fr); }
  .ep-market-bottom-cta strong { font-size: .78rem; }
}


/* v1.20.0 — simplified mobile classifieds */
.ep-market-mobile-categories{display:none}
@media(max-width:680px){
  .ep-listings-page{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
  .ep-listings-page .ep-social-main{padding:10px 12px 26px}
  .ep-listings-page .ep-social-top{min-height:70px;padding:10px 16px}
  .ep-listings-page .ep-social-top .ep-brand span{width:44px;height:44px;border-radius:14px}
  .ep-listings-page .ep-social-top .ep-brand b{font-size:1.05rem}

  .ep-listings-page .ep-market-head{
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    min-height:82px;
    margin:0 0 9px;
    padding:12px 13px;
    border-radius:19px;
    background:linear-gradient(135deg,#ffffff 0%,#f2fbfb 70%,#eef7ff 100%);
    box-shadow:0 9px 24px rgba(16,47,70,.065);
  }
  .ep-listings-page .ep-market-head::after{right:72px;bottom:-88px;width:132px;height:132px;border-width:22px}
  .ep-listings-page .ep-market-head__copy>span{margin-bottom:3px;font-size:.52rem;letter-spacing:.10em}
  .ep-listings-page .ep-market-head__copy h1{font-size:1.55rem;line-height:1.02}
  .ep-listings-page .ep-market-head__copy p{display:none}
  .ep-listings-page .ep-market-add{
    min-height:44px;
    padding:0 13px;
    border-radius:14px;
    gap:6px;
    box-shadow:0 8px 18px rgba(244,63,122,.18);
  }
  .ep-listings-page .ep-market-add__plus{font-size:1.05rem}
  .ep-listings-page .ep-market-add strong{font-size:.74rem}
  .ep-listings-page .ep-market-add small{display:none}

  .ep-listings-page .ep-market-search{
    padding:7px;
    border-radius:17px;
    box-shadow:0 8px 20px rgba(16,47,70,.055);
  }
  .ep-listings-page .ep-market-search__main{gap:6px}
  .ep-listings-page .ep-market-search__query{min-height:43px;padding:0 10px;border-radius:12px;background:#fbfcfd}
  .ep-listings-page .ep-market-search__query input{height:39px;font-size:.82rem}
  .ep-listings-page .ep-market-search__button{min-width:44px;min-height:43px;padding:0 10px;border-radius:12px;box-shadow:none}
  .ep-listings-page .ep-market-location{margin-top:5px;border-radius:12px}
  .ep-listings-page .ep-market-location>summary{grid-template-columns:30px minmax(0,1fr) 22px;min-height:39px;padding:4px 7px}
  .ep-listings-page .ep-market-location__icon{width:30px;height:30px;border-radius:10px}
  .ep-listings-page .ep-market-location__copy small{font-size:.56rem}
  .ep-listings-page .ep-market-location__copy strong{font-size:.73rem}

  .ep-listings-page .ep-market-category-heading{margin:12px 1px 7px}
  .ep-listings-page .ep-market-category-heading strong{font-size:.78rem}
  .ep-listings-page .ep-market-category-heading small{font-size:.57rem}
  .ep-listings-page .ep-market-categories--desktop{
    display:flex;
    width:calc(100% + 24px);
    margin-inline:-12px;
    padding:0 12px 5px;
    gap:7px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x proximity;
    scroll-padding-inline:12px;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .ep-listings-page .ep-market-categories--desktop::-webkit-scrollbar{display:none}
  .ep-listings-page .ep-market-categories--desktop .ep-market-category{
    flex:0 0 auto;
    min-height:42px;
    padding:5px 11px 5px 5px;
    scroll-snap-align:start;
    border-radius:14px;
  }
  .ep-listings-page .ep-market-categories--desktop .ep-market-category>span{
    width:30px;
    height:30px;
    border-radius:10px;
  }
  .ep-listings-page .ep-market-categories--desktop .ep-market-category strong{font-size:.68rem}

  .ep-listings-page .ep-urbiax-nudge{display:none}
  .ep-listings-page .ep-urbiax-card{margin-top:9px;padding:12px;border-radius:17px}
  .ep-listings-page .ep-urbiax-card__eyebrow,.ep-listings-page .ep-urbiax-card p,.ep-listings-page .ep-urbiax-card__topics{display:none}
  .ep-listings-page .ep-urbiax-card__button{padding:9px 11px}

  .ep-listings-page .ep-results-section{margin-top:15px!important}
  .ep-listings-page .ep-market-results-head{align-items:center;margin-bottom:7px}
  .ep-listings-page .ep-market-results-head h2{font-size:1.2rem;line-height:1.08}
  .ep-listings-page .ep-market-results-head p{margin-top:2px;font-size:.68rem}
  .ep-listings-page .ep-market-results-toolbar{margin-bottom:8px;padding:5px 6px;border-radius:13px;background:#fff}
  .ep-listings-page .ep-market-results-toolbar .ep-sort-form select{min-height:33px;max-width:135px;padding:4px 26px 4px 8px;font-size:.68rem}
  .ep-listings-page .ep-market-results-toolbar .ep-view-toggle button{min-height:31px;padding:0 7px}

  .ep-listings-page .ep-listing-grid{gap:9px}
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card{
    grid-template-columns:112px minmax(0,1fr);
    min-height:116px;
    border-radius:18px;
    box-shadow:0 8px 20px rgba(16,59,86,.06);
  }
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card__image,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__image{min-height:116px}
  .ep-listings-page .ep-listing-category-badge{left:7px;bottom:7px;max-width:92px;padding:4px 7px;font-size:.58rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card__body,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__body{padding:9px 10px}
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card h3,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card h3{
    margin:5px 0 5px;
    font-size:.84rem;
    line-height:1.2;
    -webkit-line-clamp:2;
  }
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card__body>.ep-listing-price,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__body>.ep-listing-price{margin:0 0 5px;font-size:.78rem}
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card__meta .ep-listing-topic,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__meta .ep-listing-topic{max-width:64%;font-size:.52rem}
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card__meta small,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card__meta small{font-size:.56rem}
  .ep-listings-page .ep-listing-location{font-size:.66rem!important}
  .ep-listings-page .ep-market-bottom-cta{display:none}

  .ep-listings-page .ep-social-bottom--site{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    min-height:76px;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    border-top:1px solid #dbe7ed;
    background:rgba(255,255,255,.97);
    box-shadow:0 -10px 28px rgba(16,59,86,.08);
    backdrop-filter:blur(16px);
  }
  .ep-listings-page .ep-social-bottom--site a{
    display:flex;
    min-width:0;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-height:58px;
    padding:5px 2px;
    border-radius:15px;
    color:#5b7282;
    text-decoration:none;
  }
  .ep-listings-page .ep-social-bottom--site a>span{display:grid;place-items:center;width:31px;height:31px;border-radius:11px;background:#f1f6f8;color:#42677b}
  .ep-listings-page .ep-social-bottom--site a svg{width:17px;height:17px}
  .ep-listings-page .ep-social-bottom--site a>b{overflow:hidden;width:100%;font-size:.58rem;line-height:1;text-align:center;text-overflow:ellipsis;white-space:nowrap}
  .ep-listings-page .ep-social-bottom--site a.is-active{color:#0e6f72}
  .ep-listings-page .ep-social-bottom--site a.is-active>span{background:#e3f6f3;color:#0e8e87}
}
@media(max-width:390px){
  .ep-listings-page .ep-market-mobile-category-grid{gap:5px}
  .ep-listings-page .ep-market-mobile-category{min-height:63px;padding-inline:2px}
  .ep-listings-page .ep-market-mobile-category strong{font-size:.53rem}
  .ep-listings-page .ep-listing-grid:not(.is-grid-view) .ep-listing-card,
  .ep-listings-page .ep-listing-grid.is-list-view .ep-listing-card{grid-template-columns:102px minmax(0,1fr)}
}

/* v1.19.1 — mobile-first resident map and ultra-simple problem reporting */
.simple-map-head {
  display: grid;
  grid-template-columns: 54px minmax(0,1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 15px;
  border: 1px solid #d8e8ee;
  border-radius: 22px;
  background: linear-gradient(135deg,#eef9ff 0%,#f1fbf7 68%,#fff8f2 100%);
  box-shadow: 0 9px 24px rgba(20,53,84,.07);
}
.simple-map-head__icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 17px;
  background: linear-gradient(135deg,#177ec9,#0aa4a2);
  color: #fff;
}
.simple-map-head__icon .ui-icon { width: 26px; height: 26px; }
.simple-map-head__copy { min-width: 0; }
.simple-map-head__copy > span { color: #0e8b81; font-size: 9px; font-weight: 950; letter-spacing: .09em; }
.simple-map-head__copy h1 { margin: 3px 0 4px; color: #123b56; font-size: clamp(23px,5vw,32px); line-height: 1.05; letter-spacing: -.035em; }
.simple-map-head__copy p { max-width: 680px; margin: 0 !important; color: #607987; font-size: 11px !important; line-height: 1.42; }
.simple-map-head__report { width: auto; min-width: 160px; min-height: 46px; margin: 0; padding: 0 14px; white-space: nowrap; }
.simple-map-head__report .ui-icon { width: 18px; height: 18px; }

.map-dashboard-card--simple { margin-top: 10px; padding: 12px; border-radius: 21px; overflow: visible; }
.map-dashboard-head--simple h2 { font-size: 19px; }
.map-filter-row--simple { margin: 9px -12px 8px; padding-left: 12px; padding-right: 12px; scroll-snap-type: x proximity; }
.map-filter-row--simple .map-filter { min-height: 38px; padding: 0 13px; font-size: 10px; scroll-snap-align: start; }
.map-more-filters { margin: 0 0 9px; border: 1px solid #e0e9ee; border-radius: 13px; background: #f8fafb; overflow: hidden; }
.map-more-filters > summary { display: grid; grid-template-columns: 32px auto minmax(0,1fr) 18px; gap: 8px; align-items: center; min-height: 43px; padding: 5px 9px; list-style: none; cursor: pointer; }
.map-more-filters > summary::-webkit-details-marker { display: none; }
.map-more-filters > summary > .ui-icon:first-child { width: 17px; height: 17px; color: #4f7082; }
.map-more-filters > summary > .ui-icon:last-child { width: 15px; height: 15px; color: #708692; transition: transform .18s ease; }
.map-more-filters[open] > summary > .ui-icon:last-child { transform: rotate(90deg); }
.map-more-filters > summary strong { color: #294b5f; font-size: 10px; }
.map-more-filters > summary small { color: #7b8e99; font-size: 9px; }
.map-more-filters .map-status-filter { margin: 0; padding: 8px 9px 9px; border-top: 1px solid #e4ecef; background: #fff; }

.map-workspace--simple { gap: 10px; }
.issue-map-shell { position: relative; min-width: 0; }
.issue-map--simple { height: clamp(430px,60vh,610px); min-height: 430px; border-radius: 20px; }
.issue-map--simple.is-picking-report,
.issue-map--simple.is-picking-report .leaflet-grab { cursor: crosshair !important; }
.issue-map--simple.is-picking-report::before { content: ''; position: absolute; z-index: 540; inset: 0; border: 3px solid rgba(248,117,96,.72); border-radius: 20px; pointer-events: none; }
.map-report-fab { position: absolute; z-index: 650; right: 12px; top: 12px; min-height: 43px; display: inline-flex; align-items: center; gap: 7px; padding: 0 12px; border: 2px solid #fff; border-radius: 14px; background: linear-gradient(135deg,#ff8b69,#f87560); color: #fff; box-shadow: 0 9px 22px rgba(47,65,78,.22); font-size: 10px; font-weight: 900; text-decoration: none; }
.map-report-fab .ui-icon { width: 17px; height: 17px; }
.map-report-fab.is-picking { opacity: .25; pointer-events: none; }
.map-pick-banner { position: absolute; z-index: 900; left: 10px; right: 10px; top: 10px; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 9px; align-items: center; padding: 10px 11px; border: 1px solid #ffc0ae; border-radius: 15px; background: rgba(255,250,247,.98); box-shadow: 0 10px 26px rgba(41,61,75,.18); }
.map-pick-banner[hidden] { display: none; }
.map-pick-banner strong,.map-pick-banner small { display: block; }
.map-pick-banner strong { color: #7b352b; font-size: 11px; }
.map-pick-banner small { margin-top: 2px; color: #8f6b64; font-size: 8.5px; }
.map-pick-banner button { min-height: 34px; padding: 0 9px; border: 1px solid #e3c8c0; border-radius: 10px; background: #fff; color: #8a4d43; font: inherit; font-size: 9px; font-weight: 900; }
.map-summary-grid--compact { margin: 9px 0 0; }
.map-summary-grid--compact article { min-height: 54px; padding: 7px 5px; }
.map-summary-grid--compact strong { font-size: 18px; }
.map-summary-grid--compact small { font-size: 8px; }

.map-list-details { margin-top: 10px; border: 1px solid #dde8ed; border-radius: 18px; background: #fff; box-shadow: 0 6px 18px rgba(20,53,84,.045); overflow: hidden; }
.map-list-details > summary { display: grid; grid-template-columns: 36px minmax(0,1fr) 18px; gap: 9px; align-items: center; min-height: 57px; padding: 8px 11px; list-style: none; cursor: pointer; }
.map-list-details > summary::-webkit-details-marker { display: none; }
.map-list-details > summary > .ui-icon:first-child { width: 36px; height: 36px; padding: 9px; border-radius: 11px; background: #eef7fb; color: #2779ae; }
.map-list-details > summary > .ui-icon:last-child { width: 16px; height: 16px; color: #7b8f9a; transition: transform .18s ease; }
.map-list-details[open] > summary > .ui-icon:last-child { transform: rotate(90deg); }
.map-list-details strong,.map-list-details small { display: block; }
.map-list-details strong { color: #294b5f; font-size: 12px; }
.map-list-details small { margin-top: 2px; color: #7a8d98; font-size: 9px; }
.map-list-details .map-result-list { padding: 0 9px 10px; }
.map-secondary-links { display: grid; grid-template-columns: minmax(160px,.45fr) minmax(0,1fr); gap: 9px; align-items: start; margin-top: 10px; }
.map-secondary-links > a { min-height: 54px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 9px 12px; border: 1px solid #dce8ee; border-radius: 16px; background: #fff; color: #2b6d95; font-size: 10px; font-weight: 900; text-decoration: none; }
.map-secondary-links > a .ui-icon { width: 18px; height: 18px; }
.map-secondary-links .map-postcode-editor { margin-top: 0; }

.report-location-actions { margin-bottom: 9px; }
.report-location-button { width: 100%; min-height: 58px; display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 10px; align-items: center; padding: 8px 10px; border: 1px solid #cddfe7; border-radius: 14px; background: #f7fbfc; color: #294b5f; font: inherit; text-align: left; cursor: pointer; }
.report-location-button > .ui-icon { width: 38px; height: 38px; padding: 9px; border-radius: 12px; background: #fff; color: #14878a; }
.report-location-button strong,.report-location-button small { display: block; }
.report-location-button strong { font-size: 12px; }
.report-location-button small { margin-top: 2px; color: #748993; font-size: 9px; line-height: 1.3; }
.report-location-button.is-selected { border-color: #8fd5c7; background: #eefaf6; box-shadow: inset 0 0 0 1px rgba(35,168,155,.08); }
.report-location-button.is-selected > .ui-icon { background: #dff5ed; color: #1a8b66; }
.report-location-button:disabled { opacity: .65; cursor: wait; }
.report-form--simple .form-field > span em { color: #8a9ba4; font-size: 9px; font-style: normal; font-weight: 600; }
.report-form--simple .simple-report-photo { margin-top: 10px; cursor: pointer; }
.report-form--simple .simple-report-photo:active { transform: scale(.995); }

@media (min-width: 900px) {
  .map-workspace--simple { grid-template-columns: minmax(0,1.55fr) minmax(340px,.72fr); align-items: start; }
  .map-workspace--simple .map-selected-issue { position: sticky; top: 150px; }
  .issue-map--simple { min-height: 600px; height: 600px; }
}

@media (max-width: 680px) {
  .simple-map-head { grid-template-columns: 46px minmax(0,1fr); gap: 10px; padding: 12px; border-radius: 19px; }
  .simple-map-head__icon { width: 46px; height: 46px; border-radius: 14px; }
  .simple-map-head__icon .ui-icon { width: 22px; height: 22px; }
  .simple-map-head__copy h1 { font-size: 21px; }
  .simple-map-head__copy p { font-size: 9.5px !important; line-height: 1.35; }
  .simple-map-head__report { grid-column: 1 / -1; width: 100%; min-height: 44px; }
  .map-dashboard-card--simple { padding: 9px; border-radius: 18px; }
  .map-dashboard-head--simple { padding: 0 1px; }
  .map-dashboard-head--simple h2 { font-size: 16px; }
  .map-locate-button { min-height: 36px; }
  .map-filter-row--simple { margin: 8px -9px 7px; padding-left: 9px; padding-right: 9px; }
  .map-filter-row--simple .map-filter { min-height: 36px; padding: 0 12px; font-size: 9.5px; }
  .map-more-filters > summary { grid-template-columns: 30px auto minmax(0,1fr) 16px; }
  .issue-map--simple { height: min(58vh,470px); min-height: 385px; border-radius: 17px; }
  .issue-map--simple.is-picking-report::before { border-radius: 17px; }
  .map-report-fab { right: 9px; top: 9px; min-height: 40px; padding: 0 10px; border-radius: 13px; }
  .map-pick-banner { left: 7px; right: 7px; top: 7px; padding: 8px 9px; }
  .map-pick-banner strong { font-size: 10px; }
  .map-selected-issue { scroll-margin-top: 92px; }
  .map-selected-empty { min-height: 105px; padding: 14px; border-radius: 16px; }
  .map-selected-card { border-radius: 17px; }
  .map-selected-media { min-height: 155px; }
  .map-selected-media img { min-height: 155px; max-height: 235px; }
  .map-selected-body { padding: 12px; }
  .map-selected-body h3 { margin: 5px 0 6px; font-size: 17px; }
  .map-selected-body p { font-size: 10.5px; line-height: 1.45; }
  .map-selected-facts { margin: 9px 0; }
  .map-selected-facts span { padding: 6px 8px; font-size: 8px; }
  .map-summary-grid--compact { gap: 5px; }
  .map-summary-grid--compact article { min-height: 48px; }
  .map-privacy-note { padding: 8px; }
  .map-privacy-note p { font-size: 8px; }
  .map-popup-image { height: 105px; }
  .leaflet-popup-content { margin: 10px 11px; }
  .map-secondary-links { grid-template-columns: 1fr; }
  .map-secondary-links > a { min-height: 48px; }
  .map-list-details > summary { min-height: 53px; }
  .report-location-button { min-height: 55px; }
  .report-form--simple .simple-report-photo { min-height: 72px; }
}

/* v1.19.2 — compact resident map: map first, details on demand */
.simple-map-head--v2{
  grid-template-columns:minmax(0,1fr) auto;
  padding:12px 14px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 6px 18px rgba(20,53,84,.05);
}
.simple-map-head--v2 .simple-map-head__copy>span{font-size:8px}
.simple-map-head--v2 .simple-map-head__copy h1{font-size:24px;margin:2px 0 3px}
.simple-map-head--v2 .simple-map-head__copy p{font-size:10px!important}
.simple-map-head--v2 .simple-map-head__report{min-width:152px;min-height:44px;border-radius:14px}
.map-dashboard-card--v2{margin-top:8px;padding:10px;overflow:hidden}
.map-dashboard-head--v2{padding:0 1px 5px}
.map-dashboard-head--v2 .section-kicker{font-size:8px}
.map-dashboard-head--v2 h2{margin-top:1px}
.map-filter-row--v2{margin:2px -10px 6px;padding:2px 10px 6px}
.map-filter-row--v2 .map-filter{min-height:36px;border-radius:999px}
.map-more-filters--v2{margin:0 0 7px;border:0;background:transparent;overflow:visible}
.map-more-filters--v2>summary{display:inline-flex;min-height:32px;align-items:center;gap:5px;padding:0 8px;border:1px solid #dce7ed;border-radius:999px;background:#fff;color:#526d7d;list-style:none}
.map-more-filters--v2>summary::-webkit-details-marker{display:none}
.map-more-filters--v2>summary strong{font-size:9px}
.map-more-filters--v2>summary .ui-icon{width:13px;height:13px}
.map-more-filters--v2[open]>summary .ui-icon{transform:rotate(90deg)}
.map-extra-categories{display:flex;gap:6px;margin-top:7px;padding-bottom:4px;overflow-x:auto;scrollbar-width:none}
.map-extra-categories::-webkit-scrollbar{display:none}
.map-extra-categories .map-filter{flex:0 0 auto;min-height:34px;padding:0 10px;font-size:9px}
.map-more-filters--v2 .map-status-filter{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;margin-top:5px;padding:7px 0 0;border:0;background:transparent}
.map-more-filters--v2 .map-status-filter>span{font-size:9px;font-weight:800;color:#607784}
.map-more-filters--v2 .map-status-filter select{min-height:36px;padding:6px 9px;border:1px solid #d8e4e9;border-radius:11px;background:#fff;font-size:10px}
.issue-map-shell--v2{overflow:hidden;border-radius:18px}
.issue-map--v2{height:clamp(440px,62vh,640px);min-height:440px;border-radius:18px}
.map-report-fab--v2{top:9px;right:9px}
.map-selected-issue--v2{margin-top:8px}
.map-list-details--v2{margin-top:8px;box-shadow:none}
.map-info-details{margin-top:7px;border-top:1px solid #e6edf0}
.map-info-details>summary{padding:9px 2px;color:#718792;font-size:9px;font-weight:800;cursor:pointer;list-style:none}
.map-info-details>summary::-webkit-details-marker{display:none}
.map-info-details .map-summary-grid{margin-top:0}
.map-info-details>p{margin:7px 2px 1px;color:#7a8d97;font-size:8px;line-height:1.45}

@media(max-width:680px){
  .simple-map-head--v2{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px 10px;border-radius:15px}
  .simple-map-head--v2 .simple-map-head__copy>span{display:none}
  .simple-map-head--v2 .simple-map-head__copy h1{margin:0;font-size:16px;line-height:1.1}
  .simple-map-head--v2 .simple-map-head__copy p{margin-top:3px!important;font-size:8.5px!important;line-height:1.25}
  .simple-map-head--v2 .simple-map-head__report{grid-column:auto;width:auto;min-width:0;min-height:40px;padding:0 11px;border-radius:12px;font-size:9px}
  .simple-map-head--v2 .simple-map-head__report .ui-icon{width:16px;height:16px}
  .map-dashboard-card--v2{margin-top:6px;padding:7px;border-radius:15px}
  .map-dashboard-head--v2{min-height:42px;padding:0 1px 3px}
  .map-dashboard-head--v2 h2{font-size:14px}
  .map-locate-button{min-height:34px;padding:0 8px;font-size:8.5px}
  .map-filter-row--v2{margin:0 -7px 4px;padding:2px 7px 5px}
  .map-filter-row--v2 .map-filter{min-height:34px;padding:0 11px;font-size:9px}
  .map-more-filters--v2{margin-bottom:5px}
  .map-more-filters--v2>summary{min-height:29px;padding:0 8px}
  .map-extra-categories{margin-top:5px}
  .issue-map--v2{height:min(59vh,500px);min-height:395px;border-radius:15px}
  .issue-map-shell--v2{border-radius:15px}
  .map-report-fab--v2{top:7px;right:7px;min-height:38px;padding:0 9px}
  .map-selected-issue--v2:not(.has-selection){display:none}
  .map-selected-issue--v2.has-selection{display:block;margin-top:7px}
  .map-selected-issue--v2.has-selection .map-selected-card{display:grid;grid-template-columns:112px minmax(0,1fr);overflow:hidden;border-radius:14px}
  .map-selected-issue--v2.has-selection .map-selected-media{min-height:124px;height:100%}
  .map-selected-issue--v2.has-selection .map-selected-media img{width:100%;height:100%;min-height:124px;max-height:none;object-fit:cover}
  .map-selected-issue--v2.has-selection .map-selected-body{padding:9px}
  .map-selected-issue--v2.has-selection .map-selected-body h3{margin:3px 0 4px;font-size:13px}
  .map-selected-issue--v2.has-selection .map-selected-body p{display:-webkit-box;overflow:hidden;margin:0;font-size:9px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:3}
  .map-selected-issue--v2.has-selection .map-selected-facts{gap:4px;margin:5px 0}
  .map-selected-issue--v2.has-selection .map-selected-facts span{padding:4px 6px;font-size:7px}
  .map-selected-issue--v2.has-selection .primary-button{min-height:32px;padding:0 8px;font-size:8px}
  .map-list-details--v2>summary{min-height:44px;padding:5px 7px}
  .map-list-details--v2>summary>.ui-icon:first-child{width:30px;height:30px;padding:7px}
  .map-list-details--v2 strong{font-size:10px}
  .map-list-details--v2 small{font-size:8px}
  .map-info-details>summary{padding:8px 2px 5px}
  body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
}

/* v1.19.3 — polished compact controls below resident map */
.map-quick-tools{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:9px;
}
.map-tool-card{
  min-width:0;
  border:1px solid #dce8ed;
  border-radius:17px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 5px 16px rgba(20,53,84,.045);
}
.map-tool-card[open]{grid-column:1/-1}
.map-tool-card>summary{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 18px;
  gap:9px;
  align-items:center;
  min-height:62px;
  padding:8px 10px;
  list-style:none;
  cursor:pointer;
  user-select:none;
}
.map-tool-card>summary::-webkit-details-marker{display:none}
.map-tool-card__icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:12px;
  background:#edf7fb;
  color:#2678a7;
}
.map-tool-card--info .map-tool-card__icon{
  background:#eaf8f4;
  color:#198b7f;
}
.map-tool-card__icon .ui-icon{width:19px;height:19px}
.map-tool-card__copy{min-width:0}
.map-tool-card__copy strong,
.map-tool-card__copy small{display:block}
.map-tool-card__copy strong{
  color:#23485e;
  font-size:11px;
  line-height:1.12;
}
.map-tool-card__copy small{
  overflow:hidden;
  margin-top:3px;
  color:#80929c;
  font-size:8px;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.map-tool-card__arrow{
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  color:#78909b;
  transition:transform .18s ease;
}
.map-tool-card__arrow .ui-icon{width:15px;height:15px}
.map-tool-card[open] .map-tool-card__arrow{transform:rotate(90deg)}
.map-tool-card__content{
  border-top:1px solid #e7eef1;
  background:#fbfdfe;
}
.map-tool-card__content--list{padding:7px 8px 9px}
.map-tool-card__content--info{padding:9px}
.map-tool-card__content--info .map-summary-grid{margin:0}
.map-tool-card__content--info>p{
  margin:8px 2px 1px;
  color:#748a95;
  font-size:8.5px;
  line-height:1.45;
}

@media(max-width:680px){
  .map-quick-tools{gap:7px;margin-top:7px}
  .map-tool-card{border-radius:15px}
  .map-tool-card>summary{
    grid-template-columns:34px minmax(0,1fr) 15px;
    gap:7px;
    min-height:55px;
    padding:7px 8px;
  }
  .map-tool-card__icon{width:34px;height:34px;border-radius:11px}
  .map-tool-card__icon .ui-icon{width:17px;height:17px}
  .map-tool-card__copy strong{font-size:10px}
  .map-tool-card__copy small{font-size:7.5px}
  .map-tool-card__arrow{width:15px;height:15px}
  .map-tool-card__arrow .ui-icon{width:13px;height:13px}
  .map-selected-issue--v2:not(.has-selection){display:none!important}
}
