/* Listings page — 2025 refresh */

.mci-listing-row-card {
  border-radius: var(--mci-radius-lg, 1rem);
  border: 1.5px solid var(--mci-border, #e2e8f0);
  transition: box-shadow 0.22s ease, transform 0.22s ease;
}

.mci-listing-row-link:hover .mci-listing-row-card {
  box-shadow: 0 14px 32px -6px rgba(15,23,42,0.1), 0 0 0 1.5px rgba(99,102,241,0.18) !important;
  transform: translateY(-2px);
}

.mci-listing-row-img-wrap {
  min-height: 7.5rem;
  background: var(--mci-surface-2, #f8fafc);
}

.mci-listing-row-img {
  width: 100%;
  height: 100%;
  min-height: 7.5rem;
  object-fit: cover;
  display: block;
}

.mci-listing-row-title {
  font-size: var(--mci-text-md, 1.05rem);
  line-height: 1.3;
}

/* ─── View toggle ───────────────────────────────────── */
.listings-view-toggle {
  border: 1px solid var(--mci-border, #e2e8f0);
  border-radius: 0.75rem;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15,23,42,0.06);
}

.listings-view-toggle .listings-view-toggle__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  min-height: 2.25rem;
  padding: 0.35rem 0.55rem;
  border: 0 !important;
  border-right: 1px solid var(--mci-border, #e2e8f0) !important;
  border-radius: 0 !important;
  color: var(--mci-muted, #64748b) !important;
  background: transparent !important;
}

.listings-view-toggle .listings-view-toggle__btn i {
  font-size: 1.2rem;
  line-height: 1;
}

.listings-view-toggle .listings-view-toggle__btn:last-child {
  border-right: 0 !important;
}

.listings-view-toggle .btn.active {
  background: var(--mci-color-primary-dark, #6366f1) !important;
  color: #fff !important;
  box-shadow: inset 0 -1px 0 rgba(0,0,0,0.12);
}

.listings-view-toggle .btn.active i { color: #fff; }

.listings-view-toggle .btn:not(.active):hover {
  background-color: var(--mci-color-primary-soft, #eef2ff);
  color: var(--mci-color-primary-deep, #4f46e5) !important;
}

.listings-view-toggle .listings-view-toggle__btn:focus-visible {
  outline: 2px solid rgba(79,70,229,0.45);
  outline-offset: -2px;
  position: relative;
  z-index: 1;
}

/* ─── Grid cards (home.css not loaded here) ─────────── */
.mci-listing-card {
  border-radius: var(--mci-radius-lg, 1rem) !important;
  overflow: hidden;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
  border: 1.5px solid var(--mci-border, #e2e8f0) !important;
}

.mci-listing-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 36px -8px rgba(15,23,42,0.12), 0 0 0 1.5px rgba(99,102,241,0.2) !important;
}

.mci-listing-card .card-img-wrap {
  position: relative;
  overflow: hidden;
  height: 180px;
}

.mci-listing-card .card-img-top {
  height: 100% !important;
  object-fit: cover;
  transition: transform 0.38s ease;
}

.mci-listing-card:hover .card-img-top { transform: scale(1.06); }

.mci-listing-card .category-pill,
.mci-listing-row-card .category-pill {
  font-size: var(--mci-text-micro, 0.68rem);
  font-weight: var(--mci-weight-bold, 700);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.25rem 0.55rem;
  border-radius: 9999px;
  background: var(--mci-color-primary-soft, #eef2ff);
  color: var(--mci-color-primary-deep, #4f46e5);
}

.mci-listing-card .btn-view-pill {
  font-size: var(--mci-text-xs, 0.75rem);
  font-weight: var(--mci-weight-extrabold, 800);
  padding: 0.35rem 0.75rem;
  border-radius: 9999px;
  background: linear-gradient(
    135deg,
    var(--mci-color-primary-dark, #6366f1) 0%,
    var(--mci-color-primary-deep, #4f46e5) 100%
  );
  color: #fff;
  border: none;
  box-shadow: 0 3px 10px rgba(99,102,241,0.3);
  transition: background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.mci-listing-card:hover .btn-view-pill {
  background: linear-gradient(
    135deg,
    var(--mci-color-primary, #818cf8) 0%,
    var(--mci-color-primary-dark, #6366f1) 100%
  );
  box-shadow: 0 6px 18px rgba(99,102,241,0.4);
  transform: translateY(-1px);
}

.mci-listing-card__distance {
  color: var(--mci-color-primary-deep, #4f46e5) !important;
}
