:root {
  --bg: #f4f7fb;
  --white: #ffffff;
  --text: #101828;
  --muted: #667085;
  --line: #e4e7ec;
  --primary: #ff5a2c;
  --primary-dark: #e9491d;
  --dark: #101828;
  --soft: #f1f5f9;
  --shadow: 0 10px 35px rgba(15, 23, 42, 0.08);
  --radius: 22px;
  --container: 1380px;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Inter", sans-serif;
  background: linear-gradient(180deg, #f8fbff 0%, #f3f6fb 100%);
  color: var(--text);
  line-height: 1.6;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
select,
textarea {
  font-family: inherit;
}

.container {
  width: min(var(--container), calc(100% - 32px));
  margin: 0 auto;
}

/* HEADER */
.topbar {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(228, 231, 236, 0.85);
}

.topbar-inner {
  min-height: 82px;
  display: flex;
  align-items: center;
  gap: 18px;
}

.logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 800;
  font-size: 1.2rem;
  flex-shrink: 0;
}

.logo-badge {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--primary), #ff7a59);
  color: #fff;
  box-shadow: 0 12px 26px rgba(255, 90, 44, 0.28);
}

.logo-text {
  white-space: nowrap;
}

.logo-image {
  width: 46px;
  height: 46px;
  object-fit: contain;
  border-radius: 14px;
  background: #fff;
  padding: 6px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.10);
}

.header-search {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 8px;
  flex: 1;
  min-width: 220px;
  max-width: 420px;
}

.header-search input {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  padding: 0 10px;
  color: var(--text);
}

.header-search button {
  border: none;
  background: var(--primary);
  color: #fff;
  height: 42px;
  padding: 0 18px;
  border-radius: 12px;
  font-weight: 700;
  cursor: pointer;
  flex-shrink: 0;
}

.nav {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-left: auto;
}

.nav a {
  font-weight: 500;
  color: #344054;
  transition: 0.2s ease;
  white-space: nowrap;
}

.nav a:hover,
.nav a.active {
  color: var(--primary);
}

.topbar-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.ghost-btn,
.primary-btn {
  min-height: 46px;
  padding: 0 18px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  transition: 0.25s ease;
  border: none;
  cursor: pointer;
  white-space: nowrap;
}

.ghost-btn {
  background: #fff;
  border: 1px solid var(--line);
}

.ghost-btn:hover {
  color: var(--primary);
  border-color: var(--primary);
}

.primary-btn {
  background: linear-gradient(135deg, var(--primary), #ff744d);
  color: #fff;
  box-shadow: 0 12px 24px rgba(255, 90, 44, 0.22);
}

.primary-btn:hover,
.header-search button:hover,
.search-btn:hover {
  transform: translateY(-2px);
}

.full-btn {
  width: 100%;
}

.mobile-menu-btn {
  display: none;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background: #fff;
  cursor: pointer;
  font-size: 1.1rem;
  flex-shrink: 0;
}

.mobile-nav {
  display: none;
  flex-direction: column;
  gap: 0;
  padding: 10px 20px 16px;
  border-top: 1px solid var(--line);
  background: #fff;
}

.mobile-nav.active {
  display: flex;
}

.mobile-nav a {
  padding: 14px 0;
  border-bottom: 1px solid #f2f4f7;
  font-weight: 600;
  color: #344054;
}

.desktop-search,
.desktop-nav,
.desktop-actions {
  display: flex;
}

/* LAYOUT */
.page-wrap {
  padding: 28px 0 60px;
}

.main-layout {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.sidebar {
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.content-area {
  min-width: 0;
}

/* COMMON CARDS */
.sidebar-card,
.hero-content,
.search-card,
.listing-card,
.detail-card,
.detail-description-box,
.detail-specs-box,
.auth-card,
.mini-card {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: var(--shadow);
}

/* SIDEBAR */
.sidebar-card {
  padding: 22px;
}

.sidebar-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}

.sidebar-title-row h3 {
  font-size: 1.15rem;
}

.sidebar-title-row span,
.hero-badge,
.detail-badge,
.promo-badge {
  font-size: 0.82rem;
  color: var(--primary);
  background: rgba(255, 90, 44, 0.08);
  padding: 8px 12px;
  border-radius: 999px;
  font-weight: 700;
}

.category-accordion {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.category-item {
  border: 1px solid #edf0f5;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
}

.category-toggle {
  width: 100%;
  border: none;
  background: #fff;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  font-size: 0.96rem;
  font-weight: 700;
  color: #344054;
}

.category-item.active .category-toggle {
  color: var(--primary);
  background: rgba(255, 90, 44, 0.06);
}

.subcategory-list {
  display: none;
  padding: 0 16px 16px;
  gap: 10px;
  flex-direction: column;
}

.category-item.active .subcategory-list {
  display: flex;
}

.subcategory-list a {
  padding: 10px 12px;
  border-radius: 12px;
  background: var(--soft);
  color: #475467;
  font-size: 0.92rem;
}

.quick-filter h4,
.promo-card h4 {
  margin-bottom: 14px;
}

.filter-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.filter-tags button {
  border: none;
  border-radius: 999px;
  padding: 10px 14px;
  background: var(--soft);
  cursor: pointer;
  font-weight: 600;
  color: #344054;
}

.filter-tags button:hover {
  background: rgba(255, 90, 44, 0.1);
  color: var(--primary);
}

.promo-card {
  background: linear-gradient(180deg, #101828 0%, #1f2937 100%);
  color: #fff;
}

.promo-card p {
  color: rgba(255, 255, 255, 0.72);
  margin: 10px 0 18px;
}

.promo-card .promo-badge {
  display: inline-flex;
  margin-bottom: 14px;
}

/* HERO */
.hero-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 24px;
  align-items: stretch;
}

.hero-content {
  padding: 34px;
}

.hero-content h1 {
  font-size: clamp(2.3rem, 4vw, 4rem);
  line-height: 1.05;
  letter-spacing: -0.04em;
  margin: 16px 0;
}

.hero-content h1 span {
  color: var(--primary);
}

.hero-content p {
  color: var(--muted);
  margin-bottom: 26px;
  max-width: 600px;
}

.search-card {
  padding: 18px;
}

.search-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.tab {
  border: none;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 12px;
  font-weight: 700;
  cursor: pointer;
  background: var(--soft);
  color: #344054;
}

.tab.active {
  background: var(--dark);
  color: #fff;
}

.search-form {
  display: grid;
  grid-template-columns: repeat(4, 1fr) 160px;
  gap: 14px;
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.form-group label {
  font-size: 0.9rem;
  font-weight: 600;
  color: #344054;
}

.form-group select,
.form-group input,
.auth-form input {
  min-height: 54px;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 0 14px;
  outline: none;
  background: #fff;
}

.search-btn {
  border: none;
  min-height: 54px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--primary), #ff744d);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
  margin-top: auto;
}

/* STATS */
.hero-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 22px;
}

.stat-box {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px 20px;
  min-width: 145px;
}

.stat-box strong {
  display: block;
  font-size: 1.3rem;
}

.stat-box span {
  color: var(--muted);
  font-size: 0.94rem;
}

/* HERO VISUAL */
.hero-visual {
  position: relative;
}

.car-card {
  border-radius: 30px;
  overflow: hidden;
  height: 100%;
  box-shadow: 0 26px 60px rgba(15, 23, 42, 0.15);
}

.car-card img {
  width: 100%;
  height: 100%;
  min-height: 640px;
  object-fit: cover;
}

.glass-card {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 2;
  background: rgba(255,255,255,0.72);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.6);
  border-radius: 20px;
  padding: 18px 20px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.14);
}

.glass-card p {
  color: var(--muted);
  font-size: 0.9rem;
}

.glass-card strong {
  display: block;
  margin: 4px 0;
}

.glass-card span {
  color: var(--primary);
  font-weight: 800;
}

/* MINI CARDS */
.mini-cards {
  margin: 26px 0 34px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.mini-card {
  padding: 22px;
}

.mini-card strong {
  display: block;
  margin-bottom: 6px;
}

.mini-card span {
  color: var(--muted);
}

/* SECTION HEAD */
.section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 28px 0 20px;
  gap: 12px;
}

.section-head h2 {
  font-size: 1.8rem;
  letter-spacing: -0.03em;
}

.section-head a {
  color: var(--primary);
  font-weight: 700;
}

/* LISTINGS */
.listing-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.listing-card {
  position: relative;
  overflow: hidden;
  transition: 0.28s ease;
}

.listing-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.12);
}

.listing-link {
  display: block;
}

.fav-btn {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  width: 42px;
  height: 42px;
  border: none;
  border-radius: 50%;
  background: rgba(255,255,255,0.92);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.10);
  cursor: pointer;
  font-size: 1.2rem;
}

.fav-btn.active {
  background: var(--primary);
  color: #fff;
}

.listing-image {
  position: relative;
}

.listing-image img {
  width: 100%;
  height: 230px;
  object-fit: cover;
}

.tag {
  position: absolute;
  top: 14px;
  left: 14px;
  background: #101828;
  color: #fff;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 700;
}

.tag.premium {
  background: linear-gradient(135deg, #7f56d9, #9e77ed);
}

.listing-body {
  padding: 20px;
}

.listing-body h3 {
  font-size: 1.08rem;
  margin-bottom: 8px;
}

.listing-body p,
.detail-sub,
.auth-header p,
.spec-item span,
.breadcrumb a,
.breadcrumb span {
  color: var(--muted);
}

.listing-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.listing-meta span {
  color: #475467;
  font-weight: 600;
}

.listing-meta strong,
.detail-price {
  color: var(--primary);
  font-weight: 800;
}

/* DETAIL */
.breadcrumb {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 22px;
}

.detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) 380px;
  gap: 24px;
  align-items: start;
}

.detail-main-image img {
  width: 100%;
  height: 520px;
  object-fit: cover;
  border-radius: 24px;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}

.thumb-grid {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.thumb-grid img {
  width: 100%;
  height: 110px;
  object-fit: cover;
  border-radius: 16px;
  border: 1px solid var(--line);
}

.detail-card {
  padding: 24px;
}

.detail-card h1 {
  font-size: 2rem;
  margin: 16px 0 10px;
  line-height: 1.1;
}

.detail-price {
  font-size: 2rem;
  margin: 18px 0;
}

.detail-features {
  list-style: none;
  display: grid;
  gap: 10px;
  margin-bottom: 20px;
}

.detail-actions {
  display: grid;
  gap: 12px;
}

.detail-description-box,
.detail-specs-box {
  margin-top: 24px;
  padding: 24px;
}

.spec-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.spec-item {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px;
}

.spec-item strong {
  display: block;
  margin-top: 6px;
}

/* AUTH */
.auth-page {
  min-height: calc(100vh - 82px);
  display: grid;
  place-items: center;
  padding: 40px 16px;
}

.auth-card {
  width: 100%;
  max-width: 520px;
  padding: 32px;
}

.auth-header {
  margin-bottom: 24px;
}

.auth-header h1 {
  font-size: 2rem;
  margin-bottom: 8px;
}

.auth-form {
  display: grid;
  gap: 16px;
}

.auth-footer-text {
  text-align: center;
  color: var(--muted);
}

.auth-footer-text a {
  color: var(--primary);
  font-weight: 700;
}

/* RESPONSIVE */
@media (max-width: 1200px) {
  .desktop-search {
    max-width: 280px;
  }

  .nav {
    gap: 14px;
  }

  .nav a {
    font-size: 0.95rem;
  }

  .hero-grid {
    grid-template-columns: 1fr;
  }

  .mini-cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1100px) {
  .main-layout {
    grid-template-columns: 260px 1fr;
  }

  .search-form {
    grid-template-columns: repeat(2, 1fr);
  }

  .search-btn {
    grid-column: span 2;
  }

  .listing-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .spec-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .car-card img {
    min-height: 460px;
  }
}

@media (max-width: 980px) {
  .desktop-search,
  .desktop-nav,
  .desktop-actions {
    display: none;
  }

  .mobile-menu-btn {
    display: inline-grid;
    place-items: center;
    margin-left: auto;
  }

  .topbar-inner {
    justify-content: space-between;
  }

  .main-layout,
  .detail-layout {
    grid-template-columns: 1fr;
  }

  .sidebar {
    position: static;
  }
}

@media (max-width: 640px) {
  .container {
    width: min(100% - 20px, var(--container));
  }

  .topbar-inner {
    min-height: 72px;
  }

  .logo-text {
    font-size: 1.05rem;
  }

  .search-form,
  .listing-grid,
  .spec-grid,
  .thumb-grid {
    grid-template-columns: 1fr;
  }

  .search-btn {
    grid-column: span 1;
  }

  .hero-content,
  .auth-card,
  .detail-card,
  .detail-description-box,
  .detail-specs-box,
  .sidebar-card,
  .mini-card {
    padding: 20px;
  }

  .hero-content h1,
  .detail-card h1,
  .auth-header h1 {
    font-size: 1.7rem;
  }

  .detail-main-image img {
    height: 320px;
  }

  .car-card img {
    min-height: 300px;
  }

  .glass-card {
    left: 14px;
    right: 14px;
    top: 14px;
  }

  .section-head {
    flex-direction: column;
    align-items: flex-start;
  }
}

.narrow-container {
  max-width: 980px;
}

.page-title-block {
  margin-bottom: 24px;
}

.page-title-block h1 {
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.08;
  letter-spacing: -0.03em;
  margin: 14px 0 10px;
}

.page-title-block p {
  color: var(--muted);
  max-width: 720px;
}

.card-pad,
.form-layout-card {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: var(--shadow);
  padding: 24px;
}

.form-section-title {
  margin-bottom: 18px;
}

.ad-form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}

.full-span {
  grid-column: 1 / -1;
}

textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 14px;
  outline: none;
  resize: vertical;
  background: #fff;
}

.upload-box {
  min-height: 150px;
  border: 2px dashed #d0d5dd;
  border-radius: 18px;
  display: grid;
  place-items: center;
  text-align: center;
  background: #fafcff;
}

.upload-box strong {
  display: block;
}

.upload-box span {
  color: var(--muted);
}

.form-actions-row {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
}

.panel-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.panel-sidebar {
  position: sticky;
  top: 100px;
}

.user-mini-card {
  display: flex;
  gap: 14px;
  align-items: center;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--line);
}

.user-mini-card span {
  display: block;
  color: var(--muted);
  font-size: 0.92rem;
}

.avatar-circle {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--primary), #ff7a59);
  color: #fff;
  font-weight: 800;
}

.panel-nav {
  display: grid;
  gap: 8px;
}

.panel-nav a {
  padding: 12px 14px;
  border-radius: 14px;
  font-weight: 600;
  color: #344054;
}

.panel-nav a.active,
.panel-nav a:hover {
  background: rgba(255, 90, 44, 0.08);
  color: var(--primary);
}

.dashboard-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-bottom: 24px;
}

.dashboard-stat-card {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--line);
  border-radius: 22px;
  box-shadow: var(--shadow);
  padding: 22px;
}

.dashboard-stat-card span {
  display: block;
  color: var(--muted);
  margin-bottom: 8px;
}

.dashboard-stat-card strong {
  font-size: 1.7rem;
  letter-spacing: -0.03em;
}

.compact-head {
  margin-top: 0;
}

.table-card {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: var(--shadow);
}

.responsive-table-wrap {
  overflow-x: auto;
}

.modern-table {
  width: 100%;
  border-collapse: collapse;
}

.modern-table th,
.modern-table td {
  text-align: left;
  padding: 16px 14px;
  border-bottom: 1px solid #eef2f6;
  white-space: nowrap;
}

.modern-table th {
  color: #475467;
  font-size: 0.92rem;
}

.status-badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
}

.status-badge.success {
  background: #ecfdf3;
  color: #067647;
}

.status-badge.warning {
  background: #fffaeb;
  color: #b54708;
}

.status-badge.muted {
  background: #f2f4f7;
  color: #475467;
}

.status-badge.danger {
  background: #fef3f2;
  color: #b42318;
}

.results-layout {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.results-filter {
  position: sticky;
  top: 100px;
  display: grid;
  gap: 14px;
}

.results-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
}

.results-topbar span {
  display: block;
  color: var(--muted);
  margin-top: 4px;
}

.results-actions select {
  min-width: 220px;
}

.two-col-listing {
  grid-template-columns: repeat(2, 1fr);
}

.admin-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  background: #f5f7fb;
}

.admin-sidebar {
  background: #101828;
  color: #fff;
  padding: 24px;
}

.admin-logo {
  margin-bottom: 28px;
}

.admin-nav {
  display: grid;
  gap: 8px;
}

.admin-nav a {
  padding: 12px 14px;
  border-radius: 14px;
  color: rgba(255,255,255,0.78);
  font-weight: 600;
}

.admin-nav a.active,
.admin-nav a:hover {
  background: rgba(255,255,255,0.08);
  color: #fff;
}

.admin-main {
  padding: 28px;
}

.admin-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
}

.admin-topbar h1 {
  font-size: 2rem;
  line-height: 1.1;
  margin-bottom: 6px;
}

.admin-topbar p {
  color: var(--muted);
}

@media (max-width: 1100px) {
  .panel-layout,
  .results-layout,
  .admin-shell {
    grid-template-columns: 1fr;
  }

  .panel-sidebar,
  .results-filter {
    position: static;
  }

  .dashboard-stats-grid,
  .two-col-listing {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 700px) {
  .ad-form-grid,
  .dashboard-stats-grid,
  .two-col-listing {
    grid-template-columns: 1fr;
  }

  .form-actions-row,
  .results-topbar,
  .admin-topbar {
    flex-direction: column;
    align-items: flex-start;
  }
}
.flash {
  margin-top: 18px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: #fff;
}
.flash.success { border-color: #abefc6; background: #ecfdf3; color: #067647; }
.flash.error { border-color: #fecdca; background: #fef3f2; color: #b42318; }
.site-footer {
  padding: 34px 0 50px;
}
.footer-simple {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow);
}
.footer-simple p { color: var(--muted); }
.footer-links { display: flex; gap: 16px; flex-wrap: wrap; align-items: center; }
.narrow-container { max-width: 980px; }
.page-title-block { margin-bottom: 24px; }
.page-title-block h1 { font-size: clamp(2rem, 4vw, 3rem); line-height: 1.08; letter-spacing: -0.03em; margin: 14px 0 10px; }
.page-title-block p { color: var(--muted); max-width: 720px; }
.card-pad,
.form-layout-card { background: rgba(255,255,255,.96); border: 1px solid var(--line); border-radius: 24px; box-shadow: var(--shadow); padding: 24px; }
.form-section-title { margin-bottom: 18px; }
.ad-form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.full-span { grid-column: 1 / -1; }
textarea { width: 100%; border: 1px solid var(--line); border-radius: 14px; padding: 14px; outline: none; resize: vertical; background: #fff; }
.upload-box { min-height: 150px; border: 2px dashed #d0d5dd; border-radius: 18px; display: grid; place-items: center; text-align: center; background: #fafcff; }
.upload-box strong { display: block; }
.upload-box span { color: var(--muted); }
.form-actions-row { display: flex; gap: 12px; justify-content: flex-end; }
.panel-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 24px; align-items: start; }
.admin-page-layout { align-items: start; }
.panel-sidebar { position: sticky; top: 100px; }
.user-mini-card { display: flex; gap: 14px; align-items: center; padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid var(--line); }
.user-mini-card span { display: block; color: var(--muted); font-size: .92rem; }
.avatar-circle { width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(135deg, var(--primary), #ff7a59); color: #fff; font-weight: 800; }
.panel-nav { display: grid; gap: 8px; }
.panel-nav a { padding: 12px 14px; border-radius: 14px; font-weight: 600; color: #344054; }
.panel-nav a.active, .panel-nav a:hover { background: rgba(255, 90, 44, .08); color: var(--primary); }
.dashboard-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-bottom: 24px; }
.dashboard-stat-card { background: rgba(255,255,255,.96); border: 1px solid var(--line); border-radius: 22px; box-shadow: var(--shadow); padding: 22px; }
.dashboard-stat-card span { display: block; color: var(--muted); margin-bottom: 8px; }
.dashboard-stat-card strong { font-size: 1.7rem; letter-spacing: -0.03em; }
.compact-head { margin-top: 0; }
.table-card { background: rgba(255,255,255,.96); border: 1px solid var(--line); border-radius: 24px; box-shadow: var(--shadow); }
.responsive-table-wrap { overflow-x: auto; }
.modern-table { width: 100%; border-collapse: collapse; }
.modern-table th, .modern-table td { text-align: left; padding: 16px 14px; border-bottom: 1px solid #eef2f6; white-space: nowrap; }
.modern-table th { color: #475467; font-size: .92rem; }
.status-badge { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; font-size: .82rem; font-weight: 700; }
.status-badge.success { background: #ecfdf3; color: #067647; }
.status-badge.warning { background: #fffaeb; color: #b54708; }
.status-badge.muted { background: #f2f4f7; color: #475467; }
.status-badge.danger { background: #fef3f2; color: #b42318; }
.results-layout { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 24px; align-items: start; }
.results-filter { position: sticky; top: 100px; display: grid; gap: 14px; }
.results-filter-form { display: grid; gap: 14px; }
.results-topbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 20px; }
.results-topbar span { display: block; color: var(--muted); margin-top: 4px; }
.results-actions select { min-width: 220px; }
.two-col-listing { grid-template-columns: repeat(2, 1fr); }
.inline-admin-form { display: flex; align-items: center; gap: 10px; }
.small-btn { min-height: 36px; padding: 0 12px; }
.homepage-admin-form { display: grid; gap: 18px; }
.admin-block-editor { border: 1px solid var(--line); border-radius: 18px; padding: 18px; background: #fff; }
.admin-block-editor h3 { margin-bottom: 12px; }
@media (max-width: 1100px) {
  .panel-layout, .results-layout { grid-template-columns: 1fr; }
  .panel-sidebar, .results-filter { position: static; }
  .dashboard-stats-grid, .two-col-listing { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 700px) {
  .ad-form-grid, .dashboard-stats-grid, .two-col-listing { grid-template-columns: 1fr; }
  .form-actions-row, .results-topbar, .footer-simple, .inline-admin-form { flex-direction: column; align-items: flex-start; }
}

.clean-search-card { margin-top: 8px; }
.hero-grid-slider { grid-template-columns: 1fr 1fr; }
.slider-visual { min-height: 100%; }
.home-slider {
  position: relative;
  min-height: 100%;
  height: 100%;
  border-radius: 30px;
  overflow: hidden;
  box-shadow: 0 26px 60px rgba(15, 23, 42, 0.15);
  background: #0f1728;
}
.slide-item {
  display: none;
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 640px;
}
.slide-item.active { display: block; }
.slide-item img {
  width: 100%;
  height: 100%;
  min-height: 640px;
  object-fit: cover;
}
.slide-overlay-card {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  max-width: 420px;
  background: rgba(255,255,255,0.86);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255,255,255,0.6);
  border-radius: 24px;
  padding: 22px;
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.16);
}
.slide-badge {
  display: inline-flex;
  margin-bottom: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,90,44,.10);
  color: var(--primary);
  font-size: .82rem;
  font-weight: 700;
}
.slide-overlay-card h3 {
  font-size: 1.6rem;
  line-height: 1.15;
  letter-spacing: -.03em;
  margin-bottom: 8px;
}
.slide-overlay-card p { color: var(--muted); margin-bottom: 10px; }
.slide-overlay-card strong { display: block; color: var(--primary); font-size: 1.4rem; margin-bottom: 14px; }
.slider-btn { min-height: 42px; }
.slider-dots {
  position: absolute;
  left: 24px;
  bottom: 16px;
  display: flex;
  gap: 8px;
  z-index: 5;
}
.slider-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  background: rgba(255,255,255,.45);
}
.slider-dot.active { background: #fff; }
.mb-24 { margin-bottom: 24px; }
.checkbox-field { display: flex; align-items: center; }
.checkbox-field label { display: flex; gap: 8px; align-items: center; min-height: 54px; }
.danger-outline { border-color: #fda29b; color: #b42318; }
.danger-form-top { margin-top: 14px; }
@media (max-width: 1200px) {
  .hero-grid-slider { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .slide-item,
  .slide-item img { min-height: 340px; }
  .slide-overlay-card { left: 14px; right: 14px; bottom: 14px; padding: 16px; }
  .slide-overlay-card h3 { font-size: 1.25rem; }
}

.mb-24 { margin-bottom: 24px; }
.table-actions, .inline-admin-form { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.table-subtext { color: var(--muted); font-size: 0.88rem; margin-top: 4px; white-space: normal; max-width: 420px; }
.danger-outline { border-color: #ef4444 !important; color: #b42318 !important; }
.existing-gallery-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.existing-gallery-item img { width:100%; height:110px; object-fit:cover; border-radius:16px; border:1px solid var(--line); }
.message-card { padding: 18px; border:1px solid var(--line); border-radius:18px; }
.clean-search-card .search-form { grid-template-columns: repeat(4, 1fr) 160px; }
.slider-visual .home-slider { position: relative; min-height: 640px; border-radius: 30px; overflow: hidden; box-shadow: 0 26px 60px rgba(15, 23, 42, 0.15); }
.slide-item { position:absolute; inset:0; opacity:0; visibility:hidden; transition: opacity .4s ease; }
.slide-item.active { opacity:1; visibility:visible; }
.slide-item img { width:100%; height:100%; min-height:640px; object-fit:cover; }
.slide-overlay-card { position:absolute; left:24px; bottom:24px; max-width:420px; padding:22px; border-radius:22px; background:rgba(255,255,255,.82); backdrop-filter: blur(14px); box-shadow: var(--shadow); }
.slide-overlay-card h3 { font-size:1.5rem; line-height:1.1; margin:8px 0; }
.slide-overlay-card p { color: var(--muted); margin-bottom:10px; }
.slide-overlay-card strong { display:block; color: var(--primary); font-size:1.2rem; margin-bottom:12px; }
.slide-badge { display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(255,90,44,.12); color:var(--primary); font-weight:700; font-size:.82rem; }
.slider-dots { position:absolute; right:24px; bottom:24px; display:flex; gap:10px; z-index:3; }
.slider-dot { width:12px; height:12px; border:none; border-radius:50%; background:rgba(255,255,255,.6); cursor:pointer; }
.slider-dot.active { background:#fff; transform:scale(1.15); }
.slider-btn { min-height: 42px; }
.admin-page-layout { grid-template-columns: 280px minmax(0,1fr); }
@media (max-width: 1100px) {
  .existing-gallery-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 700px) {
  .existing-gallery-grid { grid-template-columns: 1fr; }
  .slide-overlay-card { left:14px; right:14px; bottom:14px; max-width:none; }
  .slider-visual .home-slider, .slide-item img { min-height: 340px; }
}

.listing-card-tools { margin-top: 12px; display: flex; gap: 8px; flex-wrap: wrap; }
.compare-card-grid { grid-template-columns: repeat(3, 1fr); }
.compact-listing-card .listing-image img { height: 180px; }
.stats-bars { display: grid; gap: 14px; }
.stat-bar-item { display: grid; grid-template-columns: 120px 1fr 80px; gap: 12px; align-items: center; }
.stat-bar-track { width: 100%; height: 12px; border-radius: 999px; background: #eef2f6; overflow: hidden; }
.stat-bar-fill { height: 100%; background: linear-gradient(90deg, var(--primary), #ff7a59); }
@media (max-width: 900px) {
  .compare-card-grid { grid-template-columns: 1fr; }
  .stat-bar-item { grid-template-columns: 1fr; }
}

.demo-link-box {
  margin-top: 18px;
  padding: 14px 16px;
  border: 1px dashed var(--line);
  border-radius: 16px;
  background: #fffaf5;
  word-break: break-all;
}

.profile-summary-grid,
.chart-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.chart-grid {
  grid-template-columns: repeat(2, 1fr);
}

.summary-chip {
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px;
  background: #fff;
}

.summary-chip span {
  display: block;
  color: var(--muted);
  margin-bottom: 6px;
}

.summary-chip strong {
  font-size: 1.05rem;
}

.gallery-item-actions {
  display: flex;
  gap: 8px;
  justify-content: center;
  flex-wrap: wrap;
  padding: 10px 8px 0;
}

.gallery-item-actions a {
  font-size: .88rem;
  color: #344054;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 6px 10px;
}

.gallery-item-actions a:hover {
  color: var(--primary);
  border-color: var(--primary);
}

.danger-link {
  color: #b42318 !important;
}

@media (max-width: 900px) {
  .profile-summary-grid,
  .chart-grid {
    grid-template-columns: 1fr;
  }
}

.category-tree-level {
  display: grid;
  gap: 10px;
}

.nested-subcategory-list {
  display: none;
  padding: 0 16px 16px;
  gap: 10px;
  flex-direction: column;
}

.subcategory-children {
  display: grid;
  gap: 8px;
  margin-top: 4px;
}

.subcategory-nested-link {
  font-size: 0.9rem;
  color: #667085;
}

.admin-divider { border: 0; border-top: 1px solid var(--line); margin: 18px 0; }
.mt-16 { margin-top: 16px; }
.sortable-category-list { display: grid; gap: 10px; }
.sortable-category-item { display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; border: 1px dashed var(--line); border-radius: 16px; background: #fff; cursor: grab; }
.sortable-category-item.dragging { opacity: .55; background: #fff7f2; }
.category-admin-grid { display: grid; gap: 18px; }
.category-admin-card { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: #fff; margin-bottom: 10px; }
.category-banner-card { position: relative; border-radius: 28px; overflow: hidden; box-shadow: var(--shadow); min-height: 280px; }
.category-banner-card img { width: 100%; height: 280px; object-fit: cover; }
.category-banner-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; gap: 10px; padding: 28px; background: linear-gradient(90deg, rgba(16,24,40,.68), rgba(16,24,40,.18)); color: #fff; }
.category-banner-overlay p { max-width: 560px; color: rgba(255,255,255,.86); }
.results-child-cats { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.child-cat-chip { display: inline-flex; padding: 9px 14px; border-radius: 999px; border: 1px solid var(--line); background: #fff; color: #344054; }
.child-cat-chip:hover { color: var(--primary); border-color: var(--primary); }
.direct-subcategory-list { display: none; }
.category-item.active .direct-subcategory-list { display: flex; }
@media (max-width: 900px) {
  .category-admin-card { grid-template-columns: 1fr; }
  .results-child-cats { justify-content: flex-start; }
}

.checkbox-group-wrap { display:flex; flex-wrap:wrap; gap:10px; }
.checkbox-chip { display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; cursor:pointer; }
.range-input-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.ajax-edit-table input, .ajax-edit-table select, .ajax-edit-table textarea { width:100%; min-width:120px; }
.category-slider-card { position:relative; overflow:hidden; min-height:320px; }
.category-slider-card .slide-item { display:none; position:relative; }
.category-slider-card .slide-item.active { display:block; }
.category-slider-card img { width:100%; height:320px; object-fit:cover; border-radius:24px; }
.table-subtext { color: var(--muted); font-size:.92rem; }
@media (max-width: 700px) { .range-input-row { grid-template-columns:1fr; } }

/* === V10 FILTER OVERFLOW FIX === */
.results-layout {
  display: grid !important;
  grid-template-columns: 320px minmax(0, 1fr) !important;
  gap: 24px !important;
  align-items: start !important;
}

.results-filter {
  position: sticky !important;
  top: 100px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.results-filter-form {
  display: grid !important;
  gap: 14px !important;
  min-width: 0 !important;
}

.results-content,
.results-topbar,
.results-actions,
.listing-grid,
.two-col-listing,
.listing-card,
.listing-body {
  min-width: 0 !important;
  max-width: 100% !important;
}

.results-filter .form-group {
  min-width: 0 !important;
  max-width: 100% !important;
}

.results-filter .form-group label {
  line-height: 1.35 !important;
  word-break: break-word !important;
}

.results-filter input,
.results-filter select,
.results-filter textarea,
.results-actions select {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.results-filter input,
.results-filter select,
.results-actions select {
  height: 48px !important;
  padding: 0 14px !important;
}

.results-filter textarea {
  min-height: 110px !important;
  padding: 14px !important;
  resize: vertical !important;
}

.range-input-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 10px !important;
}

.checkbox-group-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  min-width: 0 !important;
}

.checkbox-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 10px 12px !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
}

.checkbox-chip span {
  word-break: break-word !important;
}

.results-topbar {
  flex-wrap: wrap !important;
  min-width: 0 !important;
}

.results-topbar > div {
  min-width: 0 !important;
}

.results-child-cats {
  justify-content: flex-start !important;
  min-width: 0 !important;
}

.child-cat-chip {
  max-width: 100% !important;
  white-space: normal !important;
  word-break: break-word !important;
}

.form-actions-row.filter-action-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 10px !important;
  justify-content: stretch !important;
}

.form-actions-row.filter-action-row .ghost-btn,
.form-actions-row.filter-action-row .primary-btn {
  width: 100% !important;
}

.two-col-listing {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

.listing-body h3,
.listing-body p,
.listing-meta span,
.listing-meta strong {
  word-break: break-word !important;
}

@media (max-width: 1100px) {
  .results-layout {
    grid-template-columns: 1fr !important;
  }

  .results-filter {
    position: static !important;
  }
}

@media (max-width: 700px) {
  .range-input-row,
  .two-col-listing,
  .form-actions-row.filter-action-row {
    grid-template-columns: 1fr !important;
  }

  .results-topbar {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .results-actions {
    width: 100% !important;
  }
}

/* === V10 FILTER OPTION CHIP OVERFLOW FIX === */
.results-filter,
.results-filter-form,
.results-filter .form-group,
.results-filter .form-group label,
.results-filter .form-group input,
.results-filter .form-group select,
.results-filter .form-group textarea,
.checkbox-group-wrap,
.checkbox-chip,
.checkbox-chip span,
.range-input-row,
.results-actions,
.results-actions select {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.results-filter {
  overflow: hidden !important;
}

.results-filter-form {
  display: grid !important;
  gap: 14px !important;
}

.checkbox-group-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
  overflow: hidden !important;
}

.checkbox-chip {
  display: inline-flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  padding: 10px 12px !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  background: #fff !important;
  cursor: pointer !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  flex: 0 1 calc(50% - 5px) !important;
}

.checkbox-chip input[type="checkbox"],
.checkbox-chip input[type="radio"] {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  margin-top: 2px !important;
}

.checkbox-chip span {
  display: block !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  line-height: 1.35 !important;
}

.range-input-row {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  gap: 12px !important;
  width: 100% !important;
}

.results-filter input,
.results-filter select,
.results-filter textarea,
.results-actions select {
  width: 100% !important;
}

@media (max-width: 900px) {
  .checkbox-chip {
    flex-basis: 100% !important;
  }
}

@media (max-width: 700px) {
  .range-input-row {
    grid-template-columns: 1fr !important;
  }
}

/* v11 enhanced filter and location forms */
.enhanced-results-form,
.enhanced-ad-form {
  display: block;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.enhanced-results-form .full-span,
.enhanced-ad-form .full-span { grid-column: 1 / -1; }
.enhanced-results-form .form-group,
.enhanced-ad-form .form-group { min-width: 0; }
.enhanced-results-form .form-group input,
.enhanced-results-form .form-group select,
.enhanced-ad-form .form-group input,
.enhanced-ad-form .form-group select,
.enhanced-ad-form .form-group textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.range-input-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.checkbox-group-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
}
.checkbox-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  min-width: 0;
  max-width: 100%;
}
.checkbox-chip span {
  word-break: break-word;
}
.checkbox-chip input {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0;
}
.big-filter-layout {
  grid-template-columns: 360px minmax(0, 1fr);
}
.enhanced-results-form .form-group label,
.enhanced-ad-form .form-group label {
  font-size: 0.92rem;
  line-height: 1.35;
  word-break: break-word;
}
.gallery-admin-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.gallery-admin-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
}
.gallery-admin-card img {
  width: 100%;
  height: 180px;
  object-fit: cover;
}
.gallery-admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px;
}
.danger-btn {
  border-color: #ef4444 !important;
  color: #ef4444 !important;
}
.results-child-cats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.child-cat-chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  white-space: nowrap;
}
@media (max-width: 1100px) {
  .big-filter-layout,
  .gallery-admin-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 700px) {
  .enhanced-results-form,
  .enhanced-ad-form,
  .range-input-row {
    grid-template-columns: 1fr;
  }
  .checkbox-chip {
    width: 100%;
  }
}

.category-main-row {
  display: flex;
  align-items: stretch;
}

.category-main-link {
  flex: 1;
  padding: 16px;
  display: flex;
  align-items: center;
  font-size: 0.96rem;
  font-weight: 700;
  color: #344054;
}

.category-main-link:hover {
  color: var(--primary);
}

.category-toggle {
  width: auto;
  min-width: 136px;
  border-left: 1px solid #edf0f5;
}

.category-item.active .category-main-link {
  color: var(--primary);
  background: rgba(255, 90, 44, 0.06);
}

.category-item.active .category-toggle {
  color: var(--primary);
  background: rgba(255, 90, 44, 0.06);
}

.subcategory-all-link {
  background: rgba(255, 90, 44, 0.08) !important;
  color: var(--primary) !important;
  font-weight: 700;
}

.results-filter .section-head span {
  color: var(--muted);
  font-size: 0.92rem;
  font-weight: 600;
}

@media (max-width: 720px) {
  .category-main-row {
    flex-direction: column;
  }

  .category-toggle {
    width: 100%;
    border-left: none;
    border-top: 1px solid #edf0f5;
  }
}

.mobile-filter-head,
.mobile-filter-fab,
.mobile-filter-backdrop,
.mobile-bottom-bar {
  display: none;
}

body.filter-panel-open {
  overflow: hidden;
}

.mobile-bottom-bar {
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: 12px;
  z-index: 60;
  padding: 10px 12px;
  border-radius: 24px;
  background: rgba(15, 23, 42, 0.92);
  backdrop-filter: blur(18px);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.25);
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.mobile-bottom-bar a {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: rgba(255,255,255,0.8);
  font-size: 0.78rem;
  padding: 8px 6px;
  border-radius: 18px;
}

.mobile-bottom-bar a span {
  font-size: 1.1rem;
  line-height: 1;
}

.mobile-bottom-bar a.active {
  background: rgba(255,255,255,0.12);
  color: #fff;
}

.mobile-bottom-bar-cta {
  background: linear-gradient(135deg, #ff6a3d, #ff3d00);
  color: #fff !important;
  box-shadow: 0 10px 20px rgba(255, 90, 44, 0.35);
}

.mobile-bottom-bar-cta span {
  font-size: 1.35rem !important;
}

.mobile-filter-head {
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

.mobile-filter-close {
  border: none;
  background: rgba(255, 90, 44, 0.12);
  color: var(--primary);
  font-weight: 700;
  padding: 10px 14px;
  border-radius: 999px;
  cursor: pointer;
}

.mobile-filter-fab {
  position: fixed;
  right: 16px;
  bottom: 88px;
  z-index: 55;
  border: none;
  border-radius: 999px;
  padding: 14px 18px;
  font-weight: 800;
  color: #fff;
  background: linear-gradient(135deg, #ff6a3d, #ff3d00);
  box-shadow: 0 16px 28px rgba(255, 90, 44, 0.38);
}

.mobile-filter-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, 0.45);
  z-index: 49;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.page-wrap {
  padding-bottom: 110px;
}

@media (max-width: 1100px) {
  .results-content,
  .content-area,
  .sidebar-card,
  .search-card,
  .form-layout-card,
  .results-topbar,
  .listing-card,
  .mini-card {
    border-radius: 24px !important;
  }

  .container,
  .narrow-container {
    width: min(100% - 24px, 1180px);
  }

  .hero {
    overflow: hidden;
  }

  .mobile-bottom-bar {
    display: flex;
  }

  .site-footer {
    padding-bottom: 110px;
  }
}

@media (max-width: 1100px) {
  .page-results .mobile-filter-fab,
  .page-results .mobile-filter-backdrop,
  .page-results .mobile-filter-head {
    display: flex;
  }

  .page-results .mobile-filter-backdrop {
    display: block;
  }

  .page-results .results-filter {
    position: fixed !important;
    inset: auto 0 0 0;
    z-index: 50;
    max-height: 88vh;
    overflow-y: auto;
    border-radius: 28px 28px 0 0;
    padding: 18px 18px 120px;
    transform: translateY(110%);
    transition: transform 0.28s ease;
    box-shadow: 0 -18px 45px rgba(15, 23, 42, 0.18);
  }

  body.filter-panel-open.page-results .results-filter {
    transform: translateY(0);
  }

  body.filter-panel-open.page-results .mobile-filter-backdrop {
    opacity: 1;
    pointer-events: auto;
  }
}

@media (max-width: 700px) {
  .hero-content,
  .slide-overlay-card,
  .category-banner-overlay,
  .results-topbar,
  .listing-body,
  .form-layout-card,
  .sidebar-card,
  .search-card {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .hero-content h1 {
    font-size: 2rem;
    line-height: 1.1;
  }

  .listing-grid,
  .two-col-listing {
    gap: 16px !important;
  }

  .listing-image img,
  .gallery-admin-card img {
    height: 210px;
  }

  .mobile-bottom-bar {
    left: 10px;
    right: 10px;
    bottom: 10px;
    padding: 8px 10px;
  }

  .mobile-bottom-bar a small {
    font-size: 0.7rem;
  }

  .mobile-filter-fab {
    right: 12px;
    bottom: 82px;
    padding: 13px 16px;
  }
}

.brand-marquee {
  overflow: hidden;
  mask-image: linear-gradient(to right, transparent, #000 10%, #000 90%, transparent);
}

.brand-track {
  display: flex;
  width: max-content;
  gap: 14px;
  animation: brandMarquee 28s linear infinite;
}

.brand-chip {
  min-width: 260px;
  display: grid;
  grid-template-columns: 54px 1fr 74px;
  align-items: center;
  gap: 14px;
  padding: 14px;
  border-radius: 22px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.95);
}

.brand-chip:hover {
  transform: translateY(-2px);
}

.brand-chip-logo {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  font-size: 1.15rem;
  font-weight: 800;
  color: #fff;
  background: linear-gradient(135deg, #ff6a3d, #ff3d00);
}

.brand-chip-copy {
  display: flex;
  flex-direction: column;
}

.brand-chip-copy small {
  color: var(--muted);
}

.brand-chip img {
  width: 74px;
  height: 56px;
  object-fit: cover;
  border-radius: 16px;
}

@keyframes brandMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-50% - 7px)); }
}

.listing-card {
  overflow: hidden;
}

.listing-card .listing-image {
  position: relative;
  overflow: hidden;
}

.listing-card .listing-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 35%, rgba(2, 6, 23, 0.45) 100%);
  pointer-events: none;
}

.listing-card .listing-image img {
  transition: transform 0.45s ease;
}

.listing-card:hover .listing-image img {
  transform: scale(1.05);
}

.listing-body {
  position: relative;
}

.listing-body::before {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(148, 163, 184, 0.3), transparent);
}

.detail-gallery-premium {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.detail-main-slider {
  position: relative;
  min-height: 460px;
  border-radius: 28px;
  overflow: hidden;
  background: #0f172a;
}

.detail-gallery-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.28s ease;
}

.detail-gallery-slide.active {
  opacity: 1;
}

.detail-gallery-slide img,
.detail-main-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.detail-gallery-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 46px;
  height: 46px;
  border: none;
  border-radius: 50%;
  background: rgba(255,255,255,0.9);
  color: #0f172a;
  font-size: 1.8rem;
  cursor: pointer;
  z-index: 2;
}

.detail-gallery-nav.prev { left: 16px; }
.detail-gallery-nav.next { right: 16px; }

.detail-gallery-counter {
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: #fff;
  font-weight: 700;
}

.detail-thumb-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 6px;
}

.detail-thumb {
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  padding: 0;
  cursor: pointer;
  min-width: 0;
  aspect-ratio: 1 / 1;
}

.detail-thumb.active {
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(255, 90, 44, 0.14);
}

.detail-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.detail-thumb-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0f172a, #1e293b);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: -0.01em;
  text-align: center;
  padding: 6px;
}

.detail-thumb-more span {
  line-height: 1.1;
}

@media (max-width: 900px) {
  .brand-chip {
    min-width: 220px;
    grid-template-columns: 48px 1fr 60px;
  }

  .detail-main-slider {
    min-height: 320px;
  }

  .detail-thumb-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {

  .brand-showcase {
    padding: 18px;
    margin: 20px 0;
  }

  .brand-chip {
    min-width: 190px;
    grid-template-columns: 42px 1fr;
  }

  .brand-chip img {
    display: none;
  }

  .detail-main-slider {
    min-height: 260px;
    border-radius: 22px;
  }

  .detail-thumb-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.results-sort-form {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}
.results-sort-form select {
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background: var(--white);
  padding: 0 14px;
}
.four-col-listing {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.listing-type-premium {
  border: 1px solid rgba(245, 158, 11, .35);
  box-shadow: 0 18px 45px rgba(245, 158, 11, .12);
}
.listing-type-vitrin {
  border: 1px solid rgba(255, 90, 44, .28);
}
.whatsapp-btn {
  min-height: 46px;
  padding: 0 18px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  background: #25d366;
  color: #fff;
  box-shadow: 0 12px 24px rgba(37, 211, 102, .22);
}
.detail-type-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 14px 0 8px;
  color: var(--muted);
  font-size: .95rem;
}
.type-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  font-weight: 800;
  font-size: .78rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.type-normal { background: #eef2f6; color: #344054; }
.type-vitrin { background: rgba(255,90,44,.12); color: #c2410c; }
.type-premium { background: rgba(245,158,11,.16); color: #b45309; }
@media (max-width: 1100px) {
  .results-sort-form {
    width: 100%;
    margin-top: 10px;
    justify-content: space-between;
  }
  .four-col-listing {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .four-col-listing {
    grid-template-columns: 1fr;
  }
  .detail-type-strip {
    flex-direction: column;
    align-items: flex-start;
  }
}

.category-main-trigger,
.category-main-link.only-link {
  width: 100%;
  border: none;
  background: transparent;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.96rem;
  font-weight: 700;
  color: #344054;
  cursor: pointer;
  text-align: left;
}

.category-main-row {
  display: block;
}

.category-toggle {
  display: none;
}

.results-filter {
  position: sticky;
  top: 100px;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  padding-right: 8px;
}

.results-filter::-webkit-scrollbar {
  width: 8px;
}

.results-filter::-webkit-scrollbar-thumb {
  background: rgba(152, 162, 179, 0.5);
  border-radius: 999px;
}

.filter-group {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--white);
  overflow: hidden;
}

.filter-group summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 18px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.filter-group summary::-webkit-details-marker {
  display: none;
}

.filter-group summary::after {
  content: '+';
  font-size: 1.1rem;
  color: var(--primary);
}

.filter-group[open] summary::after {
  content: '−';
}

.filter-group-body {
  padding: 0 18px 18px;
  display: grid;
  gap: 14px;
}

.filter-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.results-filter-form {
  display: grid;
  gap: 12px;
}

.results-filter-form .form-group {
  margin: 0;
}

@media (max-width: 1180px) {
  .results-layout.big-filter-layout {
    grid-template-columns: 1fr;
  }

  .results-filter {
    position: static;
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }
}

@media (max-width: 768px) {
  .container,
  .narrow-container {
    width: min(100% - 20px, 100%);
  }

  .main-layout,
  .results-layout,
  .detail-layout,
  .hero-grid,
  .hero-grid-slider {
    grid-template-columns: 1fr !important;
  }

  .sidebar,
  .results-content,
  .content-area,
  .detail-gallery,
  .detail-sidebar {
    width: 100%;
    min-width: 0;
  }

  .listing-grid,
  .two-col-listing,
  .four-col-listing,
  .mini-cards,
  .hero-stats {
    grid-template-columns: 1fr !important;
  }

  .results-topbar,
  .results-sort-form,
  .search-form,
  .ad-form-grid,
  .filter-grid-two,
  .range-input-row {
    grid-template-columns: 1fr !important;
    flex-direction: column;
  }

  .results-topbar {
    align-items: stretch;
  }

  .results-sort-form {
    margin-left: 0;
    width: 100%;
  }

  .listing-card,
  .search-card,
  .sidebar-card,
  .detail-card,
  .results-filter,
  .results-content {
    width: 100%;
    min-width: 0;
  }

  .listing-image img,
  .detail-main-slider,
  .hero-visual img {
    width: 100%;
    height: auto;
  }

  .mobile-filter-fab {
    bottom: 84px;
  }
}

.results-listing-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.results-filter {
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  padding-right: 10px;
}

.results-filter-form,
.results-filter-form .filter-group-body,
.results-filter-form .filter-grid-two {
  grid-template-columns: 1fr !important;
}

.results-filter-form .range-input-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.pagination-bar {
  margin-top: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.pagination-numbers {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.pagination-number {
  min-width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background: var(--white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.pagination-number.active {
  background: var(--primary);
  color: #fff;
  border-color: var(--primary);
}

@media (max-width: 1280px) {
  .results-listing-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .results-listing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .results-listing-grid,
  .pagination-bar {
    grid-template-columns: 1fr;
  }

  .results-listing-grid {
    display: grid;
    grid-template-columns: 1fr;
  }

  .pagination-bar {
    flex-direction: column;
    align-items: stretch;
  }

  .pagination-numbers {
    justify-content: center;
  }
}

.results-content.is-loading {
  opacity: 0.55;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.pagination-bar {
  padding-top: 6px;
}

.pagination-number,
.pagination-bar .ghost-btn {
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.pagination-number:hover,
.pagination-bar .ghost-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.pagination-number.active {
  background: linear-gradient(135deg, var(--primary), #ff7a59);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 12px 24px rgba(255, 90, 44, 0.24);
}

.pagination-ellipsis {
  min-width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--muted);
  font-weight: 800;
}

.sticky-results-topbar {
  position: sticky;
  top: 92px;
  z-index: 12;
  background: rgba(255,255,255,0.96);
  backdrop-filter: blur(14px);
}

.active-filter-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.active-filter-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 90, 44, 0.1);
  color: var(--primary);
  font-weight: 700;
  font-size: 0.84rem;
}

.results-content {
  position: relative;
}

.results-loading-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.75);
  backdrop-filter: blur(4px);
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  z-index: 20;
  border-radius: 24px;
}

.results-loading-overlay.active {
  display: flex;
}

.results-spinner {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 4px solid rgba(255, 90, 44, 0.18);
  border-top-color: var(--primary);
  animation: spinResults 0.8s linear infinite;
}

@keyframes spinResults {
  to { transform: rotate(360deg); }
}

.results-filter {
  height: calc(100vh - 120px) !important;
  max-height: calc(100vh - 120px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  display: block;
}

.results-filter-form {
  min-height: min-content;
}

@media (max-width: 1100px) {
  .sticky-results-topbar {
    position: static;
  }

  .results-filter {
    height: auto !important;
    max-height: 88vh !important;
  }
}

.page-results .listing-body {
  padding: 16px;
}

.page-results .listing-body h3 {
  font-size: 0.98rem;
  line-height: 1.35;
}

.page-results .listing-body p {
  font-size: 0.86rem;
  line-height: 1.45;
}

.page-results .listing-meta span,
.page-results .listing-card-tools,
.page-results .active-filter-chip,
.page-results .pagination-number,
.page-results .pagination-bar .ghost-btn {
  font-size: 0.84rem;
}

.page-results .listing-meta strong {
  font-size: 0.98rem;
}

.page-results .results-filter .section-head h2 {
  font-size: 1rem;
}

.page-results .results-filter .section-head span,
.page-results .filter-group summary,
.page-results .results-filter .form-group label,
.page-results .results-filter input,
.page-results .results-filter select,
.page-results .results-filter textarea,
.page-results .results-sort-form label,
.page-results .results-sort-form select {
  font-size: 0.88rem;
}

.page-results .filter-group summary {
  padding: 14px 16px;
}

.page-results .filter-group-body {
  padding: 0 16px 16px;
}

.topbar {
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08);
}

.topbar-inner {
  min-height: 88px;
  gap: 14px;
}

.topbar-pill {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255, 90, 44, 0.08);
  color: var(--primary);
  font-size: 0.82rem;
  font-weight: 800;
  white-space: nowrap;
}

.header-search {
  border-radius: 18px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.header-search input {
  font-size: 0.94rem;
}

.nav {
  gap: 10px;
}

.nav a {
  padding: 10px 12px;
  border-radius: 12px;
  font-weight: 700;
}

.nav a:hover,
.nav a.active {
  background: rgba(255, 90, 44, 0.08);
}

.topbar-actions .ghost-btn,
.topbar-actions .primary-btn {
  min-height: 44px;
  border-radius: 16px;
}

.mobile-nav {
  border-radius: 0 0 20px 20px;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
}

.mobile-nav-head {
  font-size: 0.82rem;
  font-weight: 800;
  color: var(--muted);
  padding: 4px 0 10px;
}

@media (max-width: 1180px) {
  .desktop-only-pill {
    display: none;
  }
}

.slider-search-card {
  padding: 18px;
  overflow: hidden;
}

.slider-search-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 14px;
}

.slider-search-head strong {
  font-size: 1.02rem;
}

.slider-search-head span {
  color: var(--muted);
  font-size: 0.88rem;
}

.compact-home-slider {
  position: relative;
  min-height: 340px;
  border-radius: 26px;
  overflow: hidden;
  background: #0f1728;
}

.compact-home-slider .slide-item,
.compact-home-slider .slide-item img {
  min-height: 340px;
  height: 340px;
  object-fit: cover;
}

.compact-slide-overlay {
  max-width: 420px;
}

.hero-side-highlights {
  display: flex;
}

.hero-spotlight-card {
  position: relative;
  width: 100%;
  min-height: 100%;
  border-radius: 30px;
  overflow: hidden;
  box-shadow: 0 24px 54px rgba(15, 23, 42, 0.15);
  background: #0f1728;
}

.hero-spotlight-card img {
  width: 100%;
  height: 100%;
  min-height: 640px;
  object-fit: cover;
}

.hero-spotlight-overlay {
  position: absolute;
  inset: auto 24px 24px 24px;
  padding: 22px;
  border-radius: 24px;
  background: rgba(15, 23, 42, 0.62);
  backdrop-filter: blur(16px);
  color: #fff;
}

.hero-spotlight-overlay p {
  color: rgba(255,255,255,0.82);
}

.hero-spotlight-overlay strong {
  display: block;
  margin: 10px 0 14px;
  font-size: 1.2rem;
}

.light-ghost-btn {
  background: rgba(255,255,255,0.12);
  color: #fff;
  border-color: rgba(255,255,255,0.18);
}

@media (max-width: 1100px) {
  .hero-spotlight-card img {
    min-height: 360px;
  }

  .compact-home-slider,
  .compact-home-slider .slide-item,
  .compact-home-slider .slide-item img {
    min-height: 300px;
    height: 300px;
  }
}

@media (max-width: 700px) {
  .slider-search-card {
    padding: 14px;
  }

  .compact-home-slider,
  .compact-home-slider .slide-item,
  .compact-home-slider .slide-item img {
    min-height: 250px;
    height: 250px;
  }

  .hero-spotlight-overlay {
    inset: auto 14px 14px 14px;
    padding: 16px;
  }
}

/* Slider admin improvements */
.slider-sortable-list {
  display: grid;
  gap: 12px;
}

.slider-sortable-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.slider-sortable-meta {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.slider-sortable-meta img {
  width: 92px;
  height: 56px;
  border-radius: 12px;
  object-fit: cover;
  flex: 0 0 auto;
  border: 1px solid var(--line);
}

.slider-sortable-meta strong,
.slider-sortable-meta small {
  display: block;
}

.slider-sortable-meta small {
  color: var(--muted);
}

/* Slider title animation */
.compact-home-slider .slide-overlay-card > * {
  opacity: 0;
  transform: translateY(18px);
}

.compact-home-slider .slide-item.active .slide-badge {
  animation: slideFadeUp .45s ease .08s forwards;
}

.compact-home-slider .slide-item.active h3 {
  animation: slideFadeUp .55s ease .16s forwards;
}

.compact-home-slider .slide-item.active p {
  animation: slideFadeUp .6s ease .24s forwards;
}

.compact-home-slider .slide-item.active .slider-btn,
.compact-home-slider .slide-item.active strong {
  animation: slideFadeUp .65s ease .32s forwards;
}

@keyframes slideFadeUp {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Responsive slider sizing */
.compact-home-slider {
  min-height: clamp(260px, 32vw, 420px);
}

.compact-home-slider .slide-item,
.compact-home-slider .slide-item img {
  min-height: clamp(260px, 32vw, 420px);
  height: clamp(260px, 32vw, 420px);
}

@media (max-width: 1024px) {
  .compact-home-slider,
  .compact-home-slider .slide-item,
  .compact-home-slider .slide-item img {
    min-height: 320px;
    height: 320px;
  }
}

@media (max-width: 768px) {
  .compact-home-slider,
  .compact-home-slider .slide-item,
  .compact-home-slider .slide-item img {
    min-height: 260px;
    height: 260px;
  }
}

@media (max-width: 480px) {
  .compact-home-slider,
  .compact-home-slider .slide-item,
  .compact-home-slider .slide-item img {
    min-height: 220px;
    height: 220px;
  }

  .compact-slide-overlay {
    padding: 14px;
  }

  .compact-slide-overlay h3 {
    font-size: 1.05rem;
  }

  .compact-slide-overlay p {
    font-size: 0.88rem;
  }
}

/* Horizontal homepage slider refinement */
.hero-grid-slider {
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr);
  align-items: stretch;
}

.slider-search-card {
  width: 100%;
}

.compact-home-slider {
  width: 100%;
  min-height: 260px !important;
  height: 260px !important;
  border-radius: 24px;
}

.compact-home-slider .slide-item,
.compact-home-slider .slide-item img {
  min-height: 260px !important;
  height: 260px !important;
}

.compact-home-slider .slide-item {
  transform: scale(1.035);
  filter: blur(3px);
}

.compact-home-slider .slide-item.active {
  transform: scale(1);
  filter: blur(0);
  transition: opacity .45s ease, transform .65s ease, filter .65s ease;
}

.compact-home-slider .slide-item img {
  object-fit: cover;
  object-position: center center;
}

.compact-slide-overlay {
  left: 18px;
  right: 18px;
  bottom: 18px;
  max-width: 520px;
  background: rgba(255,255,255,.88);
}

.compact-slide-overlay h3 {
  font-size: 1.3rem;
  line-height: 1.1;
}

.compact-slide-overlay p {
  font-size: 0.92rem;
}

.compact-home-slider .slider-dots {
  right: 18px;
  bottom: 18px;
}

.compact-home-slider .slider-dot {
  width: 11px;
  height: 11px;
  background: rgba(255,255,255,.55);
  box-shadow: 0 4px 12px rgba(15, 23, 42, .16);
}

.compact-home-slider .slider-dot.active {
  width: 28px;
  border-radius: 999px;
  background: #fff;
}

@media (max-width: 1180px) {
  .hero-grid-slider {
    grid-template-columns: 1fr;
  }

  .hero-side-highlights {
    order: 3;
  }

  .compact-home-slider,
  .compact-home-slider .slide-item,
  .compact-home-slider .slide-item img {
    min-height: 300px !important;
    height: 300px !important;
  }
}

@media (max-width: 768px) {
  .compact-home-slider,
  .compact-home-slider .slide-item,
  .compact-home-slider .slide-item img {
    min-height: 230px !important;
    height: 230px !important;
  }

  .compact-slide-overlay {
    padding: 14px;
  }

  .compact-slide-overlay h3 {
    font-size: 1.08rem;
  }
}

/* 2026-03 slider hero image refresh */
.hero-slider-only {
  padding-top: 8px;
}

.hero-single-wrap {
  display: grid;
  gap: 18px;
}

.hero-image-slider {
  position: relative;
  width: 100%;
  min-height: clamp(300px, 38vw, 520px) !important;
  height: clamp(300px, 38vw, 520px) !important;
  border-radius: 28px;
  overflow: hidden;
  background: #08111f;
  box-shadow: 0 28px 72px rgba(15, 23, 42, 0.18);
}

.hero-image-slider .slide-item,
.hero-image-slider .slide-item img {
  min-height: clamp(300px, 38vw, 520px) !important;
  height: clamp(300px, 38vw, 520px) !important;
}

.hero-image-slider .slide-item {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transform: scale(1.04);
  transition: opacity .8s ease, transform 1.2s ease, visibility .8s ease;
}

.hero-image-slider .slide-item.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

.hero-image-slider .slide-item img {
  width: 100%;
  object-fit: cover;
  object-position: center center;
}

.hero-slider-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 7, 18, 0.72) 0%, rgba(3, 7, 18, 0.44) 34%, rgba(3, 7, 18, 0.10) 62%, rgba(3, 7, 18, 0.18) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.34) 100%);
  pointer-events: none;
}

.hero-slider-overlay {
  position: absolute;
  left: 34px;
  right: auto;
  bottom: 34px;
  width: min(560px, calc(100% - 68px));
  max-width: 560px;
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
  padding: 0;
  color: #fff;
}

.hero-slider-overlay .slide-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 8px 14px;
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.22);
  color: #fff;
  margin-bottom: 14px;
  backdrop-filter: blur(12px);
}

.hero-slider-overlay h1 {
  margin: 0 0 12px;
  font-size: clamp(1.8rem, 3.2vw, 3.2rem);
  line-height: 1.02;
  color: #fff;
  text-shadow: 0 10px 24px rgba(0,0,0,0.32);
}

.hero-slider-overlay p {
  margin: 0 0 18px;
  color: rgba(255,255,255,0.88);
  font-size: clamp(0.95rem, 1.3vw, 1.08rem);
  line-height: 1.5;
  max-width: 46ch;
  text-shadow: 0 6px 18px rgba(0,0,0,0.24);
}

.hero-slider-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.hero-image-slider .slider-btn {
  min-height: 48px;
  padding: 0 18px;
  box-shadow: 0 14px 34px rgba(17, 24, 39, 0.28);
}

.hero-image-slider .slider-dots.hero-slider-dots {
  left: 34px;
  right: auto;
  bottom: 18px;
}

.hero-image-slider .slider-dot {
  width: 10px;
  height: 10px;
  background: rgba(255,255,255,0.48);
  border: 1px solid rgba(255,255,255,0.48);
}

.hero-image-slider .slider-dot.active {
  width: 30px;
  background: #fff;
}

.slider-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 4;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.28);
  background: rgba(15,23,42,0.28);
  color: #fff;
  font-size: 1.9rem;
  line-height: 1;
  display: grid;
  place-items: center;
  cursor: pointer;
  backdrop-filter: blur(10px);
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.slider-nav:hover {
  background: rgba(15,23,42,0.44);
  border-color: rgba(255,255,255,0.48);
  transform: translateY(-50%) scale(1.04);
}

.slider-nav-prev { left: 18px; }
.slider-nav-next { right: 18px; }

.hero-stats-below {
  margin-top: 0;
}

@media (max-width: 1024px) {
  .hero-image-slider,
  .hero-image-slider .slide-item,
  .hero-image-slider .slide-item img {
    min-height: 360px !important;
    height: 360px !important;
  }

  .hero-slider-overlay {
    left: 24px;
    bottom: 26px;
    width: min(500px, calc(100% - 48px));
  }
}

@media (max-width: 768px) {
  .hero-image-slider,
  .hero-image-slider .slide-item,
  .hero-image-slider .slide-item img {
    min-height: 250px !important;
    height: 250px !important;
  }

  .hero-slider-overlay {
    left: 18px;
    right: 18px;
    width: auto;
    bottom: 20px;
  }

  .hero-slider-overlay h1 {
    font-size: 1.45rem;
  }

  .hero-slider-overlay p {
    font-size: 0.9rem;
    margin-bottom: 14px;
  }

  .slider-nav {
    width: 42px;
    height: 42px;
    font-size: 1.5rem;
  }

  .hero-image-slider .slider-dots.hero-slider-dots {
    left: 18px;
    bottom: 12px;
  }
}

@media (max-width: 520px) {
  .hero-image-slider,
  .hero-image-slider .slide-item,
  .hero-image-slider .slide-item img {
    min-height: 220px !important;
    height: 220px !important;
  }

  .hero-slider-overlay .slide-badge {
    padding: 6px 10px;
    font-size: 0.72rem;
    margin-bottom: 10px;
  }

  .hero-slider-overlay h1 {
    font-size: 1.2rem;
  }

  .hero-slider-overlay p {
    font-size: 0.82rem;
    max-width: none;
  }
}

/* advanced hero slider features */
.hero-slide-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.hero-slide-cta {
  color: #fff !important;
}

.hero-slider-overlay {
  animation: none;
}

.hero-image-slider .slide-item.active .hero-slider-overlay .slide-badge,
.hero-image-slider .slide-item.active .hero-slider-overlay h1,
.hero-image-slider .slide-item.active .hero-slider-overlay p,
.hero-image-slider .slide-item.active .hero-slider-actions {
  opacity: 0;
  transform: translateY(18px);
  animation: heroTextRise .7s ease forwards;
}

.hero-image-slider .slide-item.active .hero-slider-overlay h1 { animation-delay: .1s; }
.hero-image-slider .slide-item.active .hero-slider-overlay p { animation-delay: .18s; }
.hero-image-slider .slide-item.active .hero-slider-actions { animation-delay: .26s; }

@keyframes heroTextRise {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

.listing-location-map {
  width: 100%;
  height: 320px;
  border-radius: 22px;
  border: 1px solid var(--line);
  overflow: hidden;
  box-shadow: var(--shadow);
}

.map-picker-group .field-help,
.detail-map-address {
  color: var(--muted);
  margin: 8px 0 0;
}

.detail-map-box {
  margin-top: 24px;
  padding: 24px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: var(--shadow);
}

.detail-map {
  height: 360px;
  margin-top: 12px;
}

@media (max-width: 768px) {
  .listing-location-map,
  .detail-map {
    height: 260px;
  }
}

.compare-toggle.is-active,
.is-active-filter {
  box-shadow: 0 14px 26px rgba(255, 90, 44, 0.18);
}

.compare-floating-panel {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 90;
  opacity: 0;
  transform: translateY(120%);
  pointer-events: none;
  transition: .28s ease;
}

.compare-floating-panel.is-visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.compare-floating-panel-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  display: grid;
  grid-template-columns: 240px minmax(0,1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 16px 20px calc(16px + env(safe-area-inset-bottom));
  border-radius: 24px 24px 0 0;
  background: rgba(15, 23, 42, 0.96);
  color: #fff;
  box-shadow: 0 -10px 32px rgba(15, 23, 42, 0.24);
}
.compare-panel-summary strong { display:block; font-size:1.05rem; }
.compare-panel-summary small { color: rgba(255,255,255,.72); }
.compare-panel-badge { display:inline-flex; margin-bottom:6px; padding:7px 10px; border-radius:999px; background: rgba(255,255,255,.1); font-size:.78rem; font-weight:700; }
.compare-panel-cards { display:flex; gap:10px; overflow-x:auto; padding-bottom:2px; }
.compare-mini-card { min-width: 220px; display:flex; align-items:center; gap:10px; background: rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.08); border-radius:18px; padding:8px 10px; }
.compare-mini-card img { width:58px; height:58px; border-radius:14px; object-fit:cover; }
.compare-mini-card-body { min-width:0; flex:1; }
.compare-mini-card-body strong { display:block; font-size:.92rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.compare-mini-card-body span { display:block; color:rgba(255,255,255,.72); font-size:.8rem; }
.compare-chip-remove { width:30px; height:30px; border:none; border-radius:50%; background: rgba(255,255,255,.12); color:#fff; font-size:1.1rem; cursor:pointer; }
.compare-panel-actions { display:flex; gap:10px; align-items:center; }
.compare-panel-actions .is-disabled { opacity:.55; pointer-events:none; }
.compare-selected-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.compare-selected-actions { justify-content:flex-start; }
.compare-page-head { display:flex; flex-direction:column; gap:14px; }
.compare-toolbar { display:flex; gap:10px; flex-wrap:wrap; }
.compare-table-hint { margin-bottom: 12px; color: var(--muted); font-weight: 600; }
.pro-compare-table th:first-child,
.pro-compare-table td:first-child { position: sticky; left: 0; background: inherit; z-index: 2; }
.pro-compare-table tbody tr.is-different { background: rgba(255, 90, 44, 0.05); }
.pro-compare-table td.is-different-cell { font-weight: 600; }
.pro-compare-table td.is-better span { color: #067647; }
.best-badge { display:inline-flex; margin-top:6px; padding:4px 8px; border-radius:999px; background:#ecfdf3; color:#067647; font-size:.72rem; font-weight:700; }
.compare-toast { position: fixed; right: 18px; bottom: 24px; z-index: 90; padding: 14px 16px; border-radius: 16px; background: #101828; color: #fff; box-shadow: var(--shadow); opacity: 0; transform: translateY(16px); transition: .22s ease; }
.compare-toast.error { background: #b42318; }
.compare-toast.is-visible { opacity: 1; transform: translateY(0); }
[data-compare-card-id].is-removing { opacity: 0; transform: scale(.96); transition: .2s ease; }

@media (max-width: 1100px) {
  .compare-floating-panel-inner { grid-template-columns: 1fr; }
  .compare-selected-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 700px) {
  .compare-selected-grid { grid-template-columns: 1fr; }
  .compare-mini-card { min-width: 190px; }
  .compare-panel-actions { width:100%; }
  .compare-panel-actions .ghost-btn,
  .compare-panel-actions .primary-btn { flex:1; }
  .compare-toast { right: 10px; left: 10px; bottom: 160px; }
}

.detail-layout-premium-v15 {
  align-items: start;
  gap: 24px;
}

.detail-main-column {
  min-width: 0;
}

.detail-surface {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: 0 10px 35px rgba(15, 23, 42, 0.05);
}

.detail-summary-surface,
.detail-spec-surface,
.detail-contact-card,
.detail-map-box {
  margin-top: 24px;
  padding: 24px;
}

.detail-summary-head {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, .8fr);
  gap: 20px;
  align-items: start;
}

.detail-price-box {
  border: 1px solid rgba(255, 90, 44, 0.12);
  background: linear-gradient(180deg, rgba(255, 90, 44, 0.06), rgba(255,255,255,0.96));
  border-radius: 22px;
  padding: 20px;
}

.detail-price-label {
  font-size: .9rem;
  color: var(--muted);
  margin-bottom: 8px;
}

.detail-quick-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 20px;
}

.quick-meta-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 14px 16px;
  background: #fafbfc;
}

.quick-meta-card span {
  display: block;
  color: var(--muted);
  font-size: .85rem;
  margin-bottom: 6px;
}

.quick-meta-card strong {
  display: block;
  font-size: 1rem;
  color: var(--text);
}

.premium-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.premium-head h2 {
  margin: 0;
}

.premium-head p {
  margin: 0;
  color: var(--muted);
  font-size: .92rem;
}

.refined-spec-list {
  border: 1px solid var(--line);
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
}

.spec-row {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  align-items: center;
  min-height: 58px;
  border-bottom: 1px solid #eef2f6;
}

.spec-row:last-child {
  border-bottom: none;
}

.spec-row:nth-child(odd) {
  background: #fcfcfd;
}

.spec-row.is-price {
  background: rgba(255, 90, 44, 0.05);
}

.spec-label,
.spec-value {
  padding: 14px 18px;
}

.spec-label {
  font-weight: 700;
  color: #475467;
  border-right: 1px solid #eef2f6;
}

.spec-value {
  font-weight: 600;
  color: #101828;
  word-break: break-word;
}

.spec-row.is-price .spec-value {
  color: var(--primary);
  font-size: 1.08rem;
  font-weight: 800;
}

.spec-value a {
  color: inherit;
  text-decoration: none;
}

.detail-rich-text {
  line-height: 1.75;
  color: #344054;
}

.detail-content-spec-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin-top: 24px;
  align-items: start;
}

.detail-content-tabs-grid .detail-tab-main-surface {
  margin-top: 0;
  padding: 24px;
}

.detail-tab-header-inline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.detail-tab-header-inline .detail-tab-nav {
  border-bottom: none;
  padding-bottom: 0;
}

.detail-sidebar-spec-surface {
  margin-top: 18px;
  padding: 22px;
  display: grid;
  gap: 16px;
}

.detail-sidebar-spec-surface .premium-head {
  align-items: start;
  flex-direction: column;
}

.detail-sidebar-spec-surface .premium-head p {
  font-size: .86rem;
}

.detail-sidebar-spec-surface .spec-row {
  grid-template-columns: 120px minmax(0, 1fr);
  min-height: 50px;
}

.detail-sidebar-spec-surface .spec-label,
.detail-sidebar-spec-surface .spec-value {
  padding: 12px 14px;
  font-size: .92rem;
}

@media (max-width: 1100px) {
  .detail-content-spec-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .detail-content-tabs-grid .detail-tab-main-surface,
  .detail-sidebar-spec-surface {
    padding: 18px;
  }

  .detail-sidebar-spec-surface .spec-row {
    grid-template-columns: 1fr;
  }
}

.detail-sidebar-v15 {
  position: static;
  top: auto;
  align-self: start;
}

.seller-mini-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}

.seller-avatar {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(255, 90, 44, 0.12);
  color: var(--primary);
  font-weight: 800;
  font-size: 1.1rem;
}

.seller-caption {
  font-size: .82rem;
  color: var(--muted);
  margin-bottom: 4px;
}

.seller-contact-stack {
  display: grid;
  gap: 12px;
}

@media (max-width: 1100px) {
  .detail-summary-head {
    grid-template-columns: 1fr;
  }

  .detail-quick-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .detail-summary-surface,
  .detail-spec-surface,
  .detail-contact-card,
  .detail-map-box,
  .detail-description-box {
    padding: 18px;
  }

  .detail-quick-meta {
    grid-template-columns: 1fr 1fr;
  }

  .spec-row {
    grid-template-columns: 1fr;
  }

  .spec-label {
    border-right: none;
    border-bottom: 1px solid #eef2f6;
    padding-bottom: 10px;
  }

  .spec-value {
    padding-top: 10px;
  }
}

.detail-gallery-toolbar {
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 3;
  display: flex;
  gap: 10px;
  align-items: center;
}
.detail-gallery-zoom {
  border: none;
  border-radius: 999px;
  padding: 9px 14px;
  background: rgba(255,255,255,0.92);
  color: #0f172a;
  font-weight: 700;
  cursor: pointer;
}
.detail-quick-meta {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.detail-lightbox {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.96);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px;
}
.detail-lightbox[hidden] { display: none !important; }
.detail-lightbox-stage {
  position: relative;
  width: min(1200px, 100%);
  height: min(82vh, 900px);
}
.detail-lightbox-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
  transition: opacity 0.25s ease;
}
.detail-lightbox-image.active { opacity: 1; }
.detail-lightbox-close,
.detail-lightbox-nav {
  border: none;
  border-radius: 50%;
  width: 52px;
  height: 52px;
  background: rgba(255,255,255,0.94);
  color: #0f172a;
  font-size: 2rem;
  cursor: pointer;
}
.detail-lightbox-close {
  position: absolute;
  top: 18px;
  right: 18px;
}
.detail-lightbox-nav.prev { margin-right: 18px; }
.detail-lightbox-nav.next { margin-left: 18px; }
@media (max-width: 768px) {
  .detail-quick-meta {
    grid-template-columns: 1fr;
  }
  .detail-gallery-toolbar {
    left: 16px;
    right: 16px;
    justify-content: space-between;
  }
  .detail-lightbox {
    padding: 16px;
  }
  .detail-lightbox-nav {
    width: 42px;
    height: 42px;
    font-size: 1.5rem;
  }
}
body.modal-open { overflow: hidden; }

.header-message-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:#fff;color:#0f172a;text-decoration:none}
.header-message-link.active,.header-message-link:hover{border-color:#ff5a2c;color:#ff5a2c}
.header-message-icon{font-size:18px;line-height:1}
.header-message-badge{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ff5a2c;color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(255,90,44,.28)}
.message-modal{position:fixed;inset:0;background:rgba(15,23,42,.6);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1400}
.message-modal-dialog{position:relative;width:min(680px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px rgba(15,23,42,.22)}
.message-modal-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:none;border-radius:50%;background:#f1f5f9;font-size:24px;cursor:pointer}
.message-modal-form textarea{resize:vertical}
.messages-tab-switch{display:flex;gap:10px;flex-wrap:wrap}
.messages-tab-switch a{padding:10px 14px;border-radius:999px;background:#f8fafc;color:#334155;text-decoration:none;font-weight:700}
.messages-tab-switch a.active{background:#ff5a2c;color:#fff}
.message-list-wrap{display:grid;gap:16px}
.message-card{border:1px solid #e2e8f0;border-radius:20px;background:#fff;padding:18px;box-shadow:0 10px 24px rgba(15,23,42,.04)}
.message-card.is-unread{border-color:#ffb199;box-shadow:0 14px 28px rgba(255,90,44,.08)}
.message-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.message-card h3{margin:0 0 8px;font-size:18px}
.message-meta-line{display:flex;flex-wrap:wrap;gap:12px;color:#64748b;font-size:13px}
.message-card-body{color:#0f172a;line-height:1.7;padding:14px 16px;background:#f8fafc;border-radius:16px}
.message-reply-box{margin-top:14px;border-top:1px solid #e2e8f0;padding-top:14px}
.message-reply-box summary{cursor:pointer;font-weight:700;color:#0f172a}
.message-reply-form{margin-top:14px;display:grid;grid-template-columns:1fr;gap:14px}
.empty-state-simple{padding:24px;border:1px dashed #cbd5e1;border-radius:20px;text-align:center;color:#64748b;background:#f8fafc}
.danger-btn{color:#b91c1c;border-color:rgba(185,28,28,.18)}
@media (max-width:768px){.message-card-head{flex-direction:column}.message-modal-dialog{padding:18px;border-radius:20px}.header-message-link{width:40px;height:40px}}

[hidden]{display:none !important}
.messages-live-layout{align-items:flex-start}
.messages-conversation-sidebar{display:grid;gap:16px;position:sticky;top:90px}
.messages-tab-switch-stacked{display:grid;grid-template-columns:1fr 1fr}
.conversation-list{display:grid;gap:12px;max-height:70vh;overflow:auto}
.conversation-item{display:grid;gap:6px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;text-decoration:none;color:#0f172a}
.conversation-item.active{border-color:#ff5a2c;box-shadow:0 12px 28px rgba(255,90,44,.12)}
.conversation-item-top,.conversation-item-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}
.conversation-item-sub{color:#475569;font-size:14px;font-weight:600}
.conversation-item-meta{color:#64748b;font-size:12px}
.status-dot-badge,.status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:12px;font-weight:800;padding:6px 10px}
.status-dot-badge.unread,.status-pill.unread{background:rgba(255,90,44,.12);color:#ff5a2c}
.status-pill.read{background:#ecfdf3;color:#027a48}
.messages-chat-card{display:grid;gap:16px}
.messages-chat-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}
.messages-chat-header h2{margin:0;font-size:22px}
.messages-chat-header p{margin:6px 0 0;color:#64748b}
.messages-chat-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.chat-thread{display:grid;gap:14px;max-height:62vh;overflow:auto;padding-right:6px}
.chat-bubble-row{display:flex}.chat-bubble-row.mine{justify-content:flex-end}.chat-bubble-row.theirs{justify-content:flex-start}
.chat-bubble{max-width:min(720px,88%);padding:16px 18px;border-radius:22px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 12px 24px rgba(15,23,42,.04)}
.chat-bubble.mine{background:#fff7f3;border-color:#ffd2c2}.chat-bubble.theirs{background:#f8fafc}
.chat-bubble-head,.chat-bubble-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.chat-bubble-head{margin-bottom:8px;color:#64748b;font-size:12px}.chat-bubble-subject{font-weight:800;margin-bottom:8px}.chat-bubble-body{line-height:1.7;color:#0f172a}.chat-bubble-actions{margin-top:12px;flex-wrap:wrap}
.live-reply-box{margin-top:8px;border-top:1px solid #e2e8f0;padding-top:16px}
@media (max-width: 992px){.messages-live-layout{grid-template-columns:1fr}.messages-conversation-sidebar{position:static}.chat-bubble{max-width:100%}.messages-chat-header{flex-direction:column;align-items:flex-start}}

.detail-quick-meta-single {
  grid-template-columns: minmax(0, 1fr) !important;
}

.quick-meta-card-location {
  width: 100%;
}

.quick-meta-card-location strong {
  font-size: 1.02rem;
  line-height: 1.6;
  white-space: normal;
  word-break: break-word;
}

.message-modal[hidden] {
  display: none !important;
}

body.modal-open {
  overflow: hidden;
}

.chat-user-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#ff7a45,#ff5a2c);color:#fff;font-weight:800;flex-shrink:0;overflow:hidden;box-shadow:0 10px 24px rgba(255,90,44,.18)}
.chat-user-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.modern-messages-sidebar{padding:18px !important;gap:14px}
.message-sidebar-head{padding-bottom:4px;border-bottom:1px solid #eef2f7}
.messages-filter-bar{position:sticky;top:0;background:#fff;z-index:2;padding-bottom:10px}
.messages-segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f4f7fb;padding:6px;border-radius:16px}
.messages-segmented a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:12px;text-decoration:none;color:#475569;font-weight:800;white-space:nowrap}
.messages-segmented a.active{background:#fff;color:#0f172a;box-shadow:0 8px 18px rgba(15,23,42,.07)}
.compact-conversation-list{gap:8px;max-height:75vh}
.conversation-item.compact{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;min-height:62px}
.conversation-item.compact strong{display:block;font-size:14px;line-height:1.3;font-weight:700}
.conversation-main{min-width:0;display:grid;gap:4px}
.conversation-unread-inline{font-size:11px;color:#ff5a2c;font-weight:700}
.conversation-actions{display:flex;align-items:center;justify-content:center}
.modern-chat-card{padding:0 !important;overflow:hidden}
.wa-chat-header{padding:18px 20px;background:#fff;border-bottom:1px solid #eef2f7}
.wa-chat-user-wrap{display:flex;align-items:center;gap:12px}
.wa-chat-user-wrap h2{font-size:18px}
.whatsapp-thread{background:linear-gradient(180deg,#f7fafc 0%,#eef6ff 100%);padding:18px 20px;min-height:52vh}
.whatsapp-bubble{box-shadow:none;border:none;max-width:min(720px,78%);padding:12px 14px}
.whatsapp-bubble.mine{background:#dcf8c6}.whatsapp-bubble.theirs{background:#fff}
.chat-bubble-foot{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-top:8px;font-size:11px;color:#64748b}
.bubble-delivery.read{color:#0284c7}.bubble-delivery.sent{color:#64748b}.bubble-delivery.received{color:#16a34a}
.whatsapp-reply-wrap{padding:14px 18px 18px;background:#fff;border-top:1px solid #eef2f7;margin-top:0}
.whatsapp-reply-form{margin-top:0}
.whatsapp-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.whatsapp-compose textarea{min-height:52px;max-height:120px;resize:none;border-radius:18px;padding:14px 16px;background:#f8fafc;border:1px solid #dbe4ee}
.typing-indicator{padding:6px 10px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:12px;font-weight:800}
@media (max-width: 992px){.compact-conversation-list{max-height:none}.conversation-item.compact{min-height:58px}.modern-chat-card{min-height:auto}.whatsapp-thread{min-height:40vh;padding:16px}.whatsapp-bubble{max-width:90%}.messages-segmented a{font-size:13px;padding:0 8px}}
@media (max-width: 640px){.whatsapp-compose{grid-template-columns:1fr}.send-btn{width:100%}.wa-chat-header{padding:16px}.modern-messages-sidebar{padding:14px !important}.conversation-item.compact{padding:10px}.chat-user-avatar.small{width:38px !important;height:38px !important}}

.conversation-actions{display:flex;align-items:center;justify-content:center;gap:8px}
.conversation-delete-form{margin:0}
.conversation-delete-btn{width:32px;height:32px;border:none;border-radius:10px;background:#f8fafc;color:#b91c1c;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:14px}
.conversation-delete-btn:hover{background:#fee2e2}
.whatsapp-bubble{width:auto;display:inline-block;max-width:min(560px,82%);padding:12px 14px}
.chat-bubble-row.mine .whatsapp-bubble{background:#dcf8c6;border-color:#cdebb7}
.chat-bubble-row.theirs .whatsapp-bubble{background:#fff}
.chat-bubble-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:6px;font-size:11px;color:#64748b}
.bubble-delivery.read{color:#22c55e;font-weight:700}
.bubble-delivery.sent{color:#64748b;font-weight:700}
.wa-chat-user-wrap{display:flex;align-items:center;gap:12px}

/* v22 slim conversation list */
.messages-conversation-sidebar{max-width:380px}
.modern-messages-sidebar{padding:16px !important;border-radius:20px}
.messages-filter-bar{display:grid;gap:10px}
.messages-segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f4f6f8;padding:6px;border-radius:14px}
.messages-segmented a{display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:10px;font-weight:700;font-size:14px;text-decoration:none;color:#52606d;white-space:nowrap}
.messages-segmented a.active{background:#fff;color:#101828;box-shadow:0 4px 14px rgba(16,24,40,.08)}
.conversation-quota-note{font-size:12px;color:#667085;padding:0 4px}
.slim-conversation-list{gap:8px;max-height:520px;overflow-y:auto;padding-right:4px}
.conversation-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:4px 0;border-bottom:1px solid #eef2f6}
.conversation-row:last-child{border-bottom:0}
.conversation-item.slim{min-height:52px;padding:0 2px;background:transparent;border:0;box-shadow:none;border-radius:12px;display:flex;align-items:center}
.conversation-item.slim:hover{background:#f8fafc}
.conversation-item.slim.active{background:#eef6ff}
.slim-main{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0;padding:0 12px}
.slim-main strong{font-size:14px;line-height:1.25;font-weight:700;color:#101828;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.slim-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.conversation-delete-btn{border:1px solid #e4e7ec;background:#fff;color:#344054;border-radius:10px;height:34px;padding:0 12px;font-size:12px;font-weight:700;cursor:pointer}
.conversation-delete-btn:hover{background:#f9fafb}
.status-dot-badge.unread{min-width:24px;height:24px;border-radius:999px;padding:0 7px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}
.conversation-unread-inline{font-size:11px;padding:4px 8px;border-radius:999px;background:#ecfdf3;color:#067647;flex-shrink:0}
@media (max-width: 992px){
  .messages-conversation-sidebar{max-width:none}
  .slim-conversation-list{max-height:420px}
}
@media (max-width: 640px){
  .messages-segmented{grid-template-columns:1fr 1fr}
  .conversation-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .conversation-item.slim{min-height:48px}
  .slim-main{padding:0 8px}
  .conversation-delete-btn{padding:0 10px}
}

/* v23 chat ui fix */
.single-title-bar{display:grid;gap:8px}
.messages-box-title{display:flex;align-items:center;min-height:44px;padding:0 14px;border-radius:14px;background:#f4f6f8;color:#101828;font-weight:800;font-size:14px}
.whatsapp-thread{display:flex;flex-direction:column;gap:10px}
.chat-bubble-row{display:flex;width:100%}
.chat-bubble-row.mine{justify-content:flex-end}
.chat-bubble-row.theirs{justify-content:flex-start;gap:8px;align-items:flex-end}
.whatsapp-bubble{display:inline-flex !important;flex-direction:column;align-self:flex-start;width:auto !important;min-width:0;max-width:min(560px,82%);padding:10px 12px;border-radius:18px;box-sizing:border-box}
.chat-bubble-row.mine .whatsapp-bubble{align-self:flex-end}
.chat-bubble-body{display:block;white-space:pre-wrap;word-break:break-word}
.chat-bubble-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:4px;font-size:11px;color:#64748b}
.bubble-delivery.read{color:#0ea5e9;font-weight:700}
.bubble-delivery.sent{color:#64748b;font-weight:700}
@media (max-width:640px){
  .messages-box-title{min-height:42px;font-size:13px}
  .whatsapp-bubble{max-width:88%}
}

.quota-number{font-weight:800}
.quota-number.total{color:#2563eb}
.quota-number.ok{color:#16a34a}
.quota-number.warn{color:#f59e0b}
.quota-number.danger{color:#dc2626}

.package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.package-card{border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:18px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.06);border-top:4px solid var(--pkg-color,#6b7280)}.package-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.package-name{font-weight:800;font-size:18px}.package-stars{color:#f59e0b}.package-price{font-size:24px;font-weight:800;margin:12px 0}.package-features{padding-left:18px;color:#475569;display:grid;gap:8px}.package-actions-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.package-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb, var(--pkg-color) 16%, white);color:var(--pkg-color);font-weight:700}.pkg-stars{color:#f59e0b}.admin-nav-group summary{list-style:none;cursor:pointer;font-weight:700;padding:12px 14px;border-radius:12px;background:#f8fafc;margin:6px 0}.admin-nav-group summary::-webkit-details-marker{display:none}.admin-subnav{display:grid;padding:8px 0 0 10px;gap:6px}.admin-subnav a{padding:10px 12px;border-radius:10px}.admin-subnav a.active{background:#eef2ff;color:#3730a3}.messages-filter-bar.single-title-bar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}

/* v28 admin colored bubble menu */
.admin-color-nav{display:grid;gap:10px}
.admin-bubble{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;font-weight:700;border:1px solid rgba(15,23,42,.06);box-shadow:0 8px 18px rgba(15,23,42,.05);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;text-decoration:none}
.admin-bubble:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(15,23,42,.08);filter:saturate(1.05)}
.admin-bubble.active{outline:2px solid rgba(15,23,42,.12)}
.admin-nav-group summary.admin-bubble{margin:0;list-style:none}
.colorful-subnav{padding:10px 0 0 6px;gap:8px}
.colorful-subnav .admin-bubble{font-size:14px;border-radius:14px}
.bubble-dashboard{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8}
.bubble-store{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#0f172a}
.bubble-settings{background:linear-gradient(135deg,#ecfeff,#cffafe);color:#0f766e}
.bubble-slider{background:linear-gradient(135deg,#fff7ed,#fed7aa);color:#c2410c}
.bubble-packages{background:linear-gradient(135deg,#f5f3ff,#ddd6fe);color:#6d28d9}
.bubble-users{background:linear-gradient(135deg,#fdf2f8,#fbcfe8);color:#be185d}
.bubble-payment{background:linear-gradient(135deg,#ecfccb,#d9f99d);color:#3f6212}
.bubble-home{background:linear-gradient(135deg,#fefce8,#fef08a);color:#a16207}
.bubble-categories{background:linear-gradient(135deg,#eef2ff,#c7d2fe);color:#4338ca}
.bubble-listings{background:linear-gradient(135deg,#fff1f2,#fecdd3);color:#be123c}
.bubble-messages{background:linear-gradient(135deg,#ecfdf5,#bbf7d0);color:#15803d}
.bubble-stats{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7e22ce}
@media (max-width: 768px){.admin-bubble{padding:11px 12px;border-radius:14px}.colorful-subnav{padding-left:0}}

/* v30 admin + packages ui refresh */
.home-search-hidden{display:none!important}
.home-top-search-card{margin-bottom:18px;padding:20px 22px;border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border:1px solid rgba(15,23,42,.06);box-shadow:0 14px 34px rgba(15,23,42,.07)}
.home-top-search-card .search-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 140px;gap:12px;align-items:center}
.home-top-search-card input,.home-top-search-card select{height:48px;border-radius:14px;border:1px solid #dbe4f0;background:#fff;padding:0 14px;font-weight:500}
.home-top-search-card .search-btn{height:48px;border-radius:14px}
.packages-modern-layout{grid-template-columns:260px minmax(0,1fr)}
.packages-sidebar{position:sticky;top:94px}
.package-user-card{border-bottom:none;margin-bottom:14px;padding-bottom:0}
.package-side-note{margin-top:18px;padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid #e5edf7;display:grid;gap:4px}
.package-side-note strong{font-size:.92rem}
.package-side-note span{color:#667085;font-weight:700}
.package-hero-card{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:26px 28px;border-radius:24px;background:linear-gradient(135deg,#111827 0%,#1f3b7a 100%);color:#fff;box-shadow:0 18px 40px rgba(17,24,39,.22);margin-bottom:20px}
.package-hero-card h1{margin:10px 0 8px;font-size:2rem}
.package-hero-card p{margin:0;max-width:640px;color:rgba(255,255,255,.82)}
.package-hero-badge-wrap .package-badge{box-shadow:none}
.package-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}
.package-metric-card{background:#fff;border:1px solid #e8eef5;border-radius:20px;padding:18px 20px;box-shadow:0 10px 28px rgba(15,23,42,.05);display:grid;gap:8px}
.package-metric-card span{font-size:.9rem;color:#667085}
.package-metric-card strong{font-size:1.55rem;line-height:1.1}
.package-metric-card small{color:#0f766e;font-weight:700}
.packages-header-row{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:6px 0 18px}
.packages-header-row h2{margin:0 0 6px}
.packages-header-row p{margin:0;color:#667085}
.package-grid-modern{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.package-card-modern{position:relative;border-radius:24px;padding:22px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid #e6edf5;box-shadow:0 12px 30px rgba(15,23,42,.06);border-top:5px solid var(--pkg-color,#6b7280)}
.package-card-modern.is-active{box-shadow:0 0 0 2px color-mix(in srgb,var(--pkg-color) 26%, white),0 18px 34px rgba(15,23,42,.08)}
.package-plan-subtitle{color:#667085;font-size:.88rem;margin-top:5px}
.package-card-modern .package-price small{font-size:1rem;color:#667085}
.package-feature-pills{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}
.package-feature-pills span{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--pkg-color) 12%, white);color:#334155;font-weight:700;font-size:.88rem}
.package-features-modern{padding-left:18px;display:grid;gap:8px;color:#475569;min-height:90px}
.admin-hero-card{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:26px 28px;border-radius:24px;background:linear-gradient(135deg,#0f172a 0%,#1d4ed8 100%);color:#fff;box-shadow:0 18px 42px rgba(15,23,42,.2);margin-bottom:22px}
.admin-hero-card h1{margin:10px 0 8px;font-size:2rem}
.admin-hero-card p{margin:0;max-width:720px;color:rgba(255,255,255,.82)}
.admin-hero-stats{display:flex;gap:14px;flex-wrap:wrap}
.admin-hero-stats div{min-width:110px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);display:grid}
.admin-hero-stats strong{font-size:1.35rem}
.admin-hero-stats span{font-size:.84rem;color:rgba(255,255,255,.82)}
.admin-section-card{background:#fff;border:1px solid #e7edf5;border-radius:24px;padding:22px;box-shadow:0 12px 28px rgba(15,23,42,.05);margin-bottom:22px}
.section-head-space p{margin:6px 0 0;color:#667085}
.admin-package-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.admin-package-edit-card{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid #e7edf5;border-top:4px solid var(--pkg-color,#6b7280);border-radius:22px;padding:18px;display:grid;gap:14px;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.admin-package-edit-card label{display:block;font-size:.84rem;color:#667085;margin-bottom:6px;font-weight:700}
.admin-package-edit-card input,.admin-package-edit-card select{width:100%;height:44px;border-radius:12px;border:1px solid #dbe4f0;padding:0 12px;background:#fff}
.admin-package-edit-top,.admin-package-edit-grid{display:grid;gap:12px}
.admin-package-edit-top{grid-template-columns:2fr 1fr}
.admin-package-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-package-preview-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:4px}
.admin-preview-stars{color:#f59e0b;font-size:1.1rem;font-weight:800}
.admin-payment-grid input{height:46px;border-radius:14px;border:1px solid #dbe4f0;padding:0 14px}
@media (max-width: 1100px){
  .home-top-search-card .search-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .package-metrics-grid{grid-template-columns:1fr}
  .package-hero-card,.admin-hero-card{flex-direction:column;align-items:flex-start}
}
@media (max-width: 820px){
  .packages-modern-layout{grid-template-columns:1fr}
  .packages-sidebar{position:static}
  .home-top-search-card .search-form{grid-template-columns:1fr}
  .admin-package-edit-top,.admin-package-edit-grid{grid-template-columns:1fr}
}

/* v31 premium admin theme */
body.admin-premium-theme,
.admin-page-layout{background:linear-gradient(180deg,#f5f7fb 0%,#edf2f8 100%)}
.admin-page-layout{gap:22px;align-items:start}
.admin-page-layout .panel-sidebar{position:sticky;top:88px;border-radius:26px;padding:18px;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);box-shadow:0 20px 45px rgba(15,23,42,.08);border:1px solid rgba(15,23,42,.06)}
.admin-page-layout .panel-content{display:grid;gap:20px}
.admin-page-layout .stats-grid{gap:18px}
.admin-page-layout .stat-card{border-radius:24px;padding:22px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);border:1px solid #e7edf5;box-shadow:0 14px 34px rgba(15,23,42,.06)}
.admin-page-layout .stat-card strong{font-size:2rem;letter-spacing:-.04em}
.admin-page-layout .table-card,
.admin-page-layout .admin-section-card{border-radius:26px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);border:1px solid #e8edf5;box-shadow:0 16px 36px rgba(15,23,42,.06)}
.admin-page-layout .section-head{margin-bottom:18px}
.admin-page-layout .section-head h2{font-size:1.28rem;letter-spacing:-.02em}
.admin-page-layout .compact-head a{display:inline-flex;align-items:center;padding:10px 14px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;text-decoration:none;font-weight:700}
.admin-page-layout .modern-table thead th{background:#f8fafc;color:#334155;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}
.admin-page-layout .modern-table tbody tr:hover{background:#f9fbff}
.admin-page-layout .modern-table td,.admin-page-layout .modern-table th{padding:14px 16px}
.admin-page-layout .inline-admin-form,
.admin-page-layout .table-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.admin-page-layout .inline-admin-form select,
.admin-page-layout .inline-admin-form input,
.admin-page-layout .ad-form-grid input,
.admin-page-layout .ad-form-grid select,
.admin-page-layout .ad-form-grid textarea{border-radius:14px;border:1px solid #dbe4f0;background:#fff;min-height:44px;padding:0 14px;box-shadow:0 2px 8px rgba(15,23,42,.02)}
.admin-page-layout .ad-form-grid textarea{padding:12px 14px;min-height:120px}
.admin-page-layout .primary-btn,.admin-page-layout .ghost-btn{border-radius:14px}
.admin-page-layout .table-subtext{color:#667085;font-size:.82rem;margin-top:4px}
.admin-page-layout .user-mini-card{padding-bottom:10px;margin-bottom:4px;border-bottom:1px solid #eef2f6}
.admin-page-layout .avatar-circle{box-shadow:0 10px 22px rgba(255,90,44,.18)}
.admin-page-layout .admin-color-nav{gap:10px}
.admin-page-layout .admin-bubble{padding:12px 14px;border-radius:16px;box-shadow:0 12px 22px rgba(15,23,42,.06)}
.admin-page-layout .admin-bubble.active{outline:2px solid rgba(15,23,42,.08);transform:translateY(-1px)}
.admin-page-layout .colorful-subnav{padding-top:10px}
.admin-page-layout .status-badge{border-radius:999px;padding:7px 12px;font-weight:800}
.admin-page-layout .badge-success{background:#ecfdf3;color:#067647}
.admin-page-layout .badge-warning{background:#fff7ed;color:#c2410c}
.admin-page-layout .badge-error{background:#fef2f2;color:#b42318}
.admin-page-layout .admin-hero-card{margin-bottom:0}
.admin-page-layout .admin-package-edit-card{box-shadow:0 16px 36px rgba(15,23,42,.06)}
@media (max-width: 992px){
  .admin-page-layout{grid-template-columns:1fr}
  .admin-page-layout .panel-sidebar{position:static}
}

/* Homepage category browser - arabam.com inspired */
.category-browser-section {
  padding: 20px 22px;
}
.category-browser-title {
  margin-bottom: 16px;
}
.category-browser-title h2 {
  margin-bottom: 4px;
}
.category-browser-title span {
  color: #667085;
  font-size: .92rem;
}
.category-accordion {
  display: block;
}
.category-browser {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  border: 1px solid #e9eef5;
  border-radius: 22px;
  overflow: hidden;
  background: #fff;
}
.category-browser-nav {
  background: #fbfcfe;
  border-right: 1px solid #e9eef5;
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.category-browser-nav-item {
  width: 100%;
  border: 0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-radius: 16px;
  padding: 12px 14px;
  color: #101828;
  cursor: pointer;
  text-align: left;
}
.category-browser-nav-item:hover,
.category-browser-nav-item.active {
  background: #fff3ee;
  color: var(--primary);
}
.category-browser-nav-copy {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.category-browser-nav-icon {
  width: 22px;
  flex: 0 0 22px;
  text-align: center;
  opacity: .9;
}
.category-browser-nav-label {
  font-weight: 700;
  line-height: 1.25;
}
.category-browser-nav-arrow {
  color: #98a2b3;
  font-size: 1rem;
}
.category-browser-panes {
  min-width: 0;
  background: #fff;
}
.category-browser-pane {
  display: none;
  padding: 18px 20px 20px;
}
.category-browser-pane.active {
  display: block;
}
.category-browser-pane-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eef2f6;
}
.category-browser-pane-head h4 {
  font-size: 1.15rem;
  margin-bottom: 4px;
}
.category-browser-pane-head p {
  color: #667085;
  margin: 0;
  font-size: .9rem;
}
.category-browser-all-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border-radius: 12px;
  background: #fff3ee;
  color: var(--primary);
  font-weight: 700;
  white-space: nowrap;
}
.category-browser-all-link.is-inline {
  display: inline-flex;
  margin-top: 6px;
}
.category-browser-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.category-browser-link {
  border: 1px solid #edf1f6;
  border-radius: 16px;
  padding: 14px 14px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 84px;
}
.category-browser-link span {
  color: #101828;
  font-weight: 700;
  line-height: 1.35;
}
.category-browser-link small {
  color: #667085;
  font-size: .84rem;
}
.category-browser-link:hover {
  border-color: rgba(255,90,44,.22);
  background: #fffaf7;
}
.category-browser-more-row {
  margin-top: 12px;
}
.category-browser-more-link {
  color: var(--primary);
  font-weight: 700;
}
.category-browser-empty {
  border: 1px dashed #d9e1ea;
  border-radius: 18px;
  padding: 18px;
  background: #fbfcfe;
}
.category-browser-empty p {
  margin: 0 0 8px;
  color: #667085;
}
@media (max-width: 1200px) {
  .category-browser-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 992px) {
  .category-browser {
    grid-template-columns: 1fr;
  }
  .category-browser-nav {
    border-right: 0;
    border-bottom: 1px solid #e9eef5;
  }
}
@media (max-width: 720px) {
  .category-browser-section {
    padding: 18px;
  }
  .category-browser-pane,
  .category-browser-nav {
    padding: 12px;
  }
  .category-browser-pane-head {
    flex-direction: column;
    align-items: stretch;
  }
  .category-browser-links {
    grid-template-columns: 1fr;
  }
}

/* Homepage compact category sidebar fix */
.home-category-sidebar-card {
  padding: 18px;
}
.sidebar-title-row.compact {
  margin-bottom: 14px;
}
.simple-home-category-wrap {
  display: block;
}
.home-category-sidebar {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.home-category-group {
  border-bottom: 1px solid #eef2f6;
  padding-bottom: 12px;
}
.home-category-group:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.home-category-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}
.home-category-main-link {
  font-size: .98rem;
  font-weight: 800;
  color: #101828;
  line-height: 1.3;
}
.home-category-all-link {
  color: var(--primary);
  font-size: .85rem;
  font-weight: 700;
  white-space: nowrap;
}
.home-category-sub-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.home-category-sub-link {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #f8fafc;
  border: 1px solid #eef2f6;
  color: #475467;
  font-size: .84rem;
  line-height: 1.2;
}
.home-category-sub-link:hover {
  color: var(--primary);
  border-color: rgba(255,90,44,.18);
  background: #fff7f3;
}
.home-category-sub-link.more {
  color: var(--primary);
  font-weight: 700;
  background: #fff3ee;
}
@media (max-width: 992px) {
  .home-category-sidebar-card {
    order: 0;
  }
}

/* User provided sidebar-like category menu */
.home-category-sidebar-card {
    padding: 0;
    overflow: hidden;
}
.home-category-sidebar-card .sidebar-title-row.compact {
    padding: 18px 18px 14px;
    margin: 0;
    border-bottom: 1px solid #eee;
}
.menu-sidebar-like {
    background: #fff;
}
.vertical-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}
.menu-sidebar-like .menu-item {
    border-bottom: 1px solid #f5f5f5;
}
.menu-sidebar-like .menu-item:last-child {
    border-bottom: 0;
}
.menu-sidebar-like .menu-btn {
    width: 100%;
    padding: 7px 11px;
    background: none;
    border: none;
    color: #555;
    text-align: left;
    font-size: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    transition: 0.2s;
}
.menu-sidebar-like .menu-btn:hover {
    background-color: #fcfcfc;
    color: #e67e22;
}
.menu-sidebar-like .menu-btn.single-link {
    text-decoration: none;
}
.menu-sidebar-like .arrow {
    font-size: 12px;
    transition: transform 0.3s;
    color: #ccc;
}
.menu-sidebar-like .submenu {
    max-height: 0;
    overflow: hidden;
    background-color: #fafafa;
    transition: max-height 0.3s ease-out;
}
.menu-sidebar-like .submenu a {
    display: block;
    padding: 11px 18px 11px 36px;
    color: #666;
    text-decoration: none;
    font-size: 14px;
    border-top: 1px solid #f1f1f1;
}
.menu-sidebar-like .submenu a:hover {
    background-color: #f1f1f1;
    color: #000;
}
.menu-sidebar-like .submenu-all-link,
.menu-sidebar-like .submenu-more-link {
    font-weight: 700;
    color: #e67e22 !important;
}
.menu-sidebar-like .menu-item.active .submenu {
    max-height: 520px;
    overflow-y: auto;
}
.menu-sidebar-like .menu-item.active .arrow {
    transform: rotate(180deg);
    color: #e67e22;
}
.menu-sidebar-like .menu-item.active > .menu-btn {
    color: #e67e22;
    font-weight: 600;
}
@media (max-width: 992px) {
    .home-category-sidebar-card {
        padding: 0;
    }
}

/* Results filter menu adapted to sidebar submenu style */
.results-filter {
  border-radius: 24px;
}
.results-filter .section-head.compact-head {
  padding-bottom: 10px;
  margin-bottom: 8px;
  border-bottom: 1px solid #eee;
}
.results-filter-form.enhanced-results-form {
  gap: 10px;
}
.results-filter .filter-group {
  border: 1px solid #f1f1f1;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
}
.results-filter .filter-group > summary {
  list-style: none;
  width: 100%;
  padding: 15px 18px;
  background: none;
  color: #555;
  font-size: 15px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  transition: 0.2s;
}
.results-filter .filter-group > summary::-webkit-details-marker {
  display: none;
}
.results-filter .filter-group > summary::after {
  content: '▾';
  font-size: 12px;
  color: #ccc;
  transition: transform 0.3s;
}
.results-filter .filter-group[open] > summary {
  color: #e67e22;
  background: #fcfcfc;
}
.results-filter .filter-group[open] > summary::after {
  transform: rotate(180deg);
  color: #e67e22;
}
.results-filter .filter-group-body {
  background: #fafafa;
  border-top: 1px solid #f1f1f1;
  padding: 14px 16px 16px;
}
.results-filter .form-group label {
  font-size: .84rem;
  margin-bottom: 6px;
  color: #667085;
}
.results-filter input,
.results-filter select,
.results-filter textarea {
  border-radius: 12px;
  border-color: #e5e7eb;
  background: #fff;
}
.results-filter .checkbox-chip {
  border-radius: 999px;
  background: #fff;
}
.results-filter .filter-action-row {
  padding-top: 8px;
}

.no-results-warning {
  margin: 12px 0 20px;
  padding: 16px 18px;
  border-radius: 14px;
  border: 1px solid rgba(230,126,34,.22);
  background: #fff7ef;
  color: #8a4b12;
  font-weight: 600;
}

.detail-quick-meta-single {
  grid-template-columns: 1fr;
}

.detail-spec-sidebar-surface {
  margin-top: 18px;
}

.detail-sidebar-v15 .detail-spec-surface {
  padding: 20px;
}

.detail-sidebar-v15 .premium-head {
  align-items: start;
  flex-direction: column;
}

.detail-sidebar-v15 .premium-head p {
  font-size: .86rem;
}

.detail-sidebar-v15 .spec-row {
  grid-template-columns: 140px minmax(0, 1fr);
  min-height: 50px;
}

.detail-sidebar-v15 .spec-label,
.detail-sidebar-v15 .spec-value {
  padding: 12px 14px;
  font-size: .94rem;
}

@media (max-width: 1100px) {
  .detail-sidebar-v15 .detail-spec-surface {
    margin-top: 24px;
  }
}

@media (max-width: 768px) {
  .detail-quick-meta-single {
    grid-template-columns: 1fr;
  }

  .detail-sidebar-v15 .spec-row {
    grid-template-columns: 1fr;
  }
}

/* Similar listings carousel */
.similar-listings-surface {
  margin-top: 28px;
  overflow: hidden;
}
.similar-head-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.similar-carousel-nav {
  display: flex;
  gap: 10px;
}
.similar-nav-btn {
  width: 44px;
  height: 44px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 999px;
  background: linear-gradient(180deg, #ffffff 0%, #f3f6fb 100%);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}
.similar-carousel {
  overflow-x: auto;
  padding: 6px 4px 10px;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
.similar-carousel::-webkit-scrollbar {
  display: none;
}
.similar-carousel-track {
  display: flex;
  gap: 18px;
}
.similar-card {
  flex: 0 0 calc(25% - 14px);
  min-width: 255px;
  max-width: 320px;
  border-radius: 24px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(246,248,252,0.98) 100%);
  border: 1px solid rgba(148, 163, 184, 0.18);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.similar-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.13);
  border-color: rgba(37, 99, 235, 0.22);
}
.similar-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.similar-card-media {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #eef2f7;
}
.similar-card-media::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 15, 30, 0.02) 20%, rgba(10, 15, 30, 0.28) 100%);
}
.similar-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}
.similar-card:hover .similar-card-media img {
  transform: scale(1.05);
}
.similar-card-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 1;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.similar-card-badge.premium {
  background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
}
.similar-card-body {
  padding: 16px 16px 18px;
}
.similar-card-body h3 {
  margin: 0 0 12px;
  font-size: 17px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 48px;
}
.similar-card-specs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}
.similar-card-specs span {
  padding: 7px 10px;
  border-radius: 999px;
  background: #eef4ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 600;
}
.similar-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #475569;
  font-size: 14px;
}
.similar-card-meta strong {
  color: #0f172a;
  font-size: 18px;
}
@media (max-width: 1199px) {
  .similar-card {
    flex-basis: calc(33.333% - 12px);
  }
}
@media (max-width: 767px) {
  .similar-head-row {
    align-items: flex-start;
    flex-direction: column;
  }
  .similar-card {
    flex-basis: 84%;
    min-width: 84%;
  }
}

/* DETAIL CONTACT ACTIONS */
.detail-contact-card {
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.detail-action-btn {
  min-height: 52px;
  padding: 0 18px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  font-weight: 800;
  font-size: .96rem;
  border: 1px solid transparent;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
  text-align: center;
}

.detail-action-btn:hover {
  transform: translateY(-2px);
}

.detail-action-phone {
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  color: #fff;
  box-shadow: 0 16px 34px rgba(220, 38, 38, .22);
}

.detail-action-whatsapp {
  background: linear-gradient(135deg, #25d366 0%, #16a34a 100%);
  color: #fff;
  box-shadow: 0 16px 34px rgba(22, 163, 74, .22);
}

.detail-action-outline {
  background: #fff;
  border-color: #e5e7eb;
  color: #111827;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.detail-action-outline:hover,
.compare-toggle.detail-action-outline.is-active {
  border-color: rgba(255, 90, 44, .35);
  color: var(--primary);
  background: rgba(255, 90, 44, .05);
}

/* MODERN SIMILAR LISTINGS */
.similar-listings-surface {
  margin-top: 28px;
  padding: 26px;
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.similar-head-row {
  margin-bottom: 22px;
}

.similar-carousel {
  overflow: hidden;
  position: relative;
}

.similar-carousel-track {
  display: flex;
  gap: 18px;
  will-change: transform;
}

.similar-carousel.is-ready .similar-carousel-track {
  transition: transform .45s cubic-bezier(.22,.61,.36,1);
}

.similar-card {
  flex: 0 0 calc(25% - 14px);
  min-width: calc(25% - 14px);
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, .9);
  background: #fff;
  box-shadow: 0 20px 40px rgba(15, 23, 42, .07);
}

.similar-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
  height: 100%;
}

.similar-card-media {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: linear-gradient(135deg, #e2e8f0 0%, #f8fafc 100%);
}

.similar-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}

.similar-card:hover .similar-card-media img {
  transform: scale(1.06);
}

.similar-card-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 1;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.similar-card-badge.premium {
  background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
}

.similar-card-body {
  padding: 16px 16px 18px;
}

.similar-card-body h3 {
  margin: 0 0 12px;
  font-size: 17px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 48px;
}

.similar-card-specs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.similar-card-specs span {
  padding: 7px 10px;
  border-radius: 999px;
  background: #eef4ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 700;
}

.similar-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #475569;
  font-size: 14px;
}

.similar-card-meta strong {
  color: #0f172a;
  font-size: 18px;
}

.similar-carousel-nav {
  display: flex;
  gap: 10px;
}

.similar-nav-btn {
  width: 46px;
  height: 46px;
  border: none;
  border-radius: 50%;
  background: #fff;
  color: #0f172a;
  box-shadow: 0 14px 30px rgba(15, 23, 42, .09);
  cursor: pointer;
  font-size: 1.55rem;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.similar-nav-btn:hover {
  transform: translateY(-2px);
  background: var(--primary);
  color: #fff;
}

.similar-empty-state {
  width: 100%;
  border: 1px dashed #cbd5e1;
  border-radius: 22px;
  padding: 32px 20px;
  text-align: center;
  color: #64748b;
  background: #fff;
}

@media (max-width: 1199px) {
  .similar-card {
    flex-basis: calc(33.333% - 12px);
    min-width: calc(33.333% - 12px);
  }
}

@media (max-width: 767px) {
  .similar-head-row {
    align-items: flex-start;
    flex-direction: column;
  }
  .similar-listings-surface {
    padding: 18px;
  }
  .similar-card {
    flex-basis: calc(86% - 4px);
    min-width: calc(86% - 4px);
  }
}

.similar-carousel {
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
.similar-carousel.is-dragging {
  cursor: grabbing;
}
.similar-carousel.is-dragging .similar-carousel-track {
  transition: none !important;
}
.similar-carousel-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 18px;
  flex-wrap: wrap;
}
.similar-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  border: none;
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .06);
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, width .2s ease;
}
.similar-dot.active {
  width: 28px;
  background: var(--primary);
}
.similar-card.listing-type-premium {
  border-color: rgba(245, 158, 11, .45);
  box-shadow: 0 22px 46px rgba(245, 158, 11, .14);
}
.similar-card.listing-type-premium .similar-card-body {
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,247,237,1) 100%);
}
.similar-card.listing-type-vitrin {
  border-color: rgba(255, 90, 44, .28);
}
.similar-card-badge.premium {
  box-shadow: 0 12px 24px rgba(234, 88, 12, .28);
}

.similar-card-package {
  position: absolute;
  right: 14px;
  top: 14px;
  z-index: 1;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .94);
  color: #0f172a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  box-shadow: 0 10px 20px rgba(15, 23, 42, .10);
}

.similar-card-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

.similar-card-price-row strong {
  color: #0f172a;
  font-size: 1.15rem;
  line-height: 1.2;
}

.similar-card-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.similar-info-chip {
  border: 1px solid #e5edf5;
  border-radius: 16px;
  padding: 10px 10px 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.similar-info-chip small {
  display: block;
  font-size: 11px;
  color: #64748b;
  margin-bottom: 5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.similar-info-chip span {
  display: block;
  color: #0f172a;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  word-break: break-word;
}

@media (max-width: 767px) {
  .similar-card-info-grid {
    grid-template-columns: 1fr;
  }
}

/* Similar cards compact typography */
.similar-card-body h3 {
  font-size: 15px;
  min-height: 42px;
}

.similar-card-specs span {
  font-size: 11px;
  padding: 6px 9px;
}

.similar-card-price-row strong {
  font-size: 1.02rem;
}

.similar-info-chip {
  padding: 8px 9px 10px;
}

.similar-info-chip small {
  font-size: 10px;
  margin-bottom: 4px;
}

.similar-info-chip span {
  font-size: 12px;
  line-height: 1.25;
}

/* PREMIUM BREADCRUMB */
.breadcrumb-pro {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
  font-size: 13px;
}

.crumb-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 13px;
  border-radius: 999px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border: 1px solid #e5e7eb;
  color: #334155;
  text-decoration: none;
  font-weight: 700;
  transition: all .25s ease;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04);
}

.crumb-item:hover {
  background: linear-gradient(135deg, var(--primary), #ff7a4d);
  border-color: transparent;
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(255, 90, 44, 0.22);
}

.crumb-icon {
  font-size: 14px;
  line-height: 1;
}

.crumb-divider {
  color: #94a3b8;
  font-size: 14px;
  font-weight: 700;
}

.crumb-current {
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff5a2c, #ff7a4d);
  color: #fff;
  font-weight: 800;
  box-shadow: 0 10px 22px rgba(255, 90, 44, 0.24);
  letter-spacing: .01em;
}

@media (max-width: 767px) {
  .breadcrumb-pro {
    gap: 6px;
    font-size: 12px;
    margin-bottom: 16px;
  }

  .crumb-item,
  .crumb-current {
    padding: 6px 11px;
  }

  .crumb-divider {
    font-size: 12px;
  }
}

/* Home categories: direct parent links + vertical scroll */
.home-category-sidebar-card .category-accordion,
.home-category-sidebar.menu-sidebar-like {
  max-height: 560px;
  overflow-y: auto;
  padding-right: 6px;
}

.home-category-sidebar-card .category-accordion::-webkit-scrollbar,
.home-category-sidebar.menu-sidebar-like::-webkit-scrollbar {
  width: 8px;
}

.home-category-sidebar-card .category-accordion::-webkit-scrollbar-thumb,
.home-category-sidebar.menu-sidebar-like::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, 0.7);
  border-radius: 999px;
}

.vertical-menu-direct {
  display: grid;
  gap: 10px;
}

.menu-item-direct {
  list-style: none;
}

.direct-category-link {
  width: 100%;
  min-height: 52px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid #edf0f5;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #344054;
  font-size: 0.96rem;
  font-weight: 700;
  text-decoration: none;
  transition: all .22s ease;
  box-shadow: 0 8px 16px rgba(15, 23, 42, 0.04);
}

.direct-category-link:hover {
  color: var(--primary);
  border-color: rgba(255, 90, 44, 0.28);
  background: rgba(255, 90, 44, 0.05);
  transform: translateY(-1px);
}

.direct-category-link .arrow {
  color: #98a2b3;
  font-size: 18px;
  line-height: 1;
}

@media (max-width: 1100px) {
  .home-category-sidebar-card .category-accordion,
  .home-category-sidebar.menu-sidebar-like {
    max-height: 420px;
  }
}

/* Results listing grid: 4 columns to 3 columns */
.results-listing-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1280px) {
  .results-listing-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Ultra compact main category menu spacing */
.home-category-sidebar {
  gap: 4px;
}
.home-category-group {
  padding-bottom: 4px;
  margin-bottom: 0;
}
.home-category-group-head {
  margin-bottom: 4px;
  gap: 6px;
}
.vertical-menu-direct {
  gap: 4px;
}
.direct-category-link,
.category-browser-nav-item {
  min-height: 34px;
  padding: 7px 10px;
  border-radius: 10px;
}
.direct-category-link {
  box-shadow: none;
  font-size: 0.9rem;
  line-height: 1.15;
}
.direct-category-link .arrow,
.category-browser-nav-arrow {
  font-size: 14px;
}
.category-browser-nav {
  padding: 6px;
  gap: 3px;
}
.category-browser {
  grid-template-columns: 235px minmax(0, 1fr);
}
.category-browser-nav-copy {
  gap: 7px;
}
.category-browser-nav-icon {
  width: 18px;
  flex: 0 0 18px;
}
.category-browser-nav-label {
  line-height: 1.1;
  font-size: 0.9rem;
}

/* v6 extra tight main category/menu vertical density */
.home-category-sidebar {
  gap: 1px;
}
.home-category-group {
  padding-bottom: 1px;
}
.home-category-group-head {
  margin-bottom: 2px;
}
.vertical-menu-direct {
  gap: 1px;
}
.menu-item-direct {
  margin: 0;
}
.direct-category-link,
.category-browser-nav-item {
  min-height: 24px;
  padding: 7px 11px;
  border-radius: 7px;
}
.direct-category-link {
  font-size: 0.8rem;
  line-height: 1;
}
.category-browser-nav {
  padding: 3px;
  gap: 1px;
}
.category-browser {
  grid-template-columns: 210px minmax(0, 1fr);
}
.category-browser-nav-copy {
  gap: 5px;
}
.category-browser-nav-icon {
  width: 14px;
  flex: 0 0 14px;
  font-size: 12px;
}
.category-browser-nav-label {
  font-size: 0.8rem;
  line-height: 1;
}
.direct-category-link .arrow,
.category-browser-nav-arrow {
  font-size: 11px;
  line-height: 1;
}
.category-browser-section {
  padding: 14px 16px;
}
.category-browser-title {
  margin-bottom: 8px;
}
.category-browser-pane-head {
  margin-bottom: 10px;
  padding-bottom: 8px;
}

/* direct category click: remove right pane / slider behavior */
.category-browser-direct-list {
  display: block;
}
.category-browser-direct-list .category-browser-nav {
  width: 100%;
  max-width: 100%;
}
.category-browser-direct-list .category-browser-nav-item {
  display: flex;
  text-decoration: none;
}
.category-browser-direct-list .category-browser-panes,
.category-browser-direct-list [data-category-browser-pane] {
  display: none !important;
}

/* 2026-03 premium home hero slider */
.hero-slider-only {
  margin-top: 10px;
}
.hero-single-wrap {
  position: relative;
}
.hero-image-slider {
  min-height: 430px;
  border-radius: 30px;
  overflow: hidden;
  background: #0f172a;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.22);
  isolation: isolate;
}
.hero-image-slider::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(255,255,255,0.16), transparent 34%);
  pointer-events: none;
  z-index: 1;
}
.hero-image-slider .slide-item,
.hero-image-slider .slide-item img,
.hero-image-slider .hero-slide-video {
  width: 100%;
  height: 100%;
  min-height: 430px;
}
.hero-image-slider .slide-item {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity .45s ease, transform .45s ease;
  transform: scale(1.02);
}
.hero-image-slider .slide-item.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}
.hero-image-slider img,
.hero-slide-video {
  object-fit: cover;
  filter: saturate(1.03) contrast(1.02);
}
.hero-slider-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(9, 14, 30, 0.78) 0%, rgba(9, 14, 30, 0.42) 36%, rgba(9, 14, 30, 0.08) 70%),
    linear-gradient(180deg, rgba(15, 23, 42, 0.08), rgba(15, 23, 42, 0.48));
  z-index: 1;
}
.premium-hero-overlay {
  left: 34px;
  right: auto;
  bottom: 34px;
  max-width: 560px;
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  backdrop-filter: none;
  z-index: 2;
}
.premium-hero-overlay h1 {
  margin: 0;
  font-size: clamp(1.8rem, 3vw, 3.25rem);
  line-height: 1.04;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #fff;
  text-shadow: 0 12px 32px rgba(0,0,0,.28);
}
.premium-hero-overlay p {
  margin: 14px 0 0;
  max-width: 520px;
  font-size: clamp(0.98rem, 1.4vw, 1.14rem);
  line-height: 1.65;
  color: rgba(255,255,255,.86);
  text-shadow: 0 8px 24px rgba(0,0,0,.22);
}
.hero-slider-dots {
  right: 30px;
  bottom: 26px;
  gap: 8px;
  z-index: 3;
}
.hero-slider-dots .slider-dot {
  width: 30px;
  height: 4px;
  border-radius: 999px;
  background: rgba(255,255,255,.32);
}
.hero-slider-dots .slider-dot.active {
  background: #fff;
  transform: none;
}
.slider-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 46px;
  height: 46px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  background: rgba(15,23,42,.28);
  color: #fff;
  backdrop-filter: blur(10px);
  z-index: 3;
}
.slider-nav-prev { left: 18px; }
.slider-nav-next { right: 18px; }
@media (max-width: 768px) {
  .hero-image-slider,
  .hero-image-slider .slide-item,
  .hero-image-slider .slide-item img,
  .hero-image-slider .hero-slide-video {
    min-height: 300px;
  }
  .premium-hero-overlay {
    left: 18px;
    right: 18px;
    bottom: 20px;
    max-width: none;
  }
  .premium-hero-overlay h1 {
    font-size: 1.6rem;
  }
  .premium-hero-overlay p {
    font-size: .95rem;
    line-height: 1.55;
  }
  .slider-nav {
    width: 40px;
    height: 40px;
  }
}

/* Premium cinematic homepage slider */
.premium-cinematic-slider {
  position: relative;
  min-height: clamp(460px, 72vh, 760px);
  border-radius: 34px;
  overflow: hidden;
  background: #0f172a;
  box-shadow: 0 28px 70px rgba(15, 23, 42, 0.22);
  isolation: isolate;
}
.premium-cinematic-slider::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,0.18), transparent 28%),
    linear-gradient(115deg, rgba(15,23,42,0.14), rgba(15,23,42,0.04) 35%, rgba(15,23,42,0.55));
  z-index: 1;
  pointer-events: none;
}
.premium-cinematic-slider::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: 33px;
  border: 1px solid rgba(255,255,255,0.16);
  pointer-events: none;
  z-index: 4;
}
.premium-cinematic-slider .slide-item,
.premium-cinematic-slider .slide-item img,
.premium-cinematic-slider .hero-slide-video {
  min-height: clamp(460px, 72vh, 760px);
}
.premium-cinematic-slider .slide-item {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transform: scale(1.02);
  transition: opacity .75s ease, transform 1.1s ease, visibility .75s ease;
}
.premium-cinematic-slider .slide-item.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}
.premium-cinematic-slider img,
.premium-cinematic-slider .hero-slide-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.08);
  transition: transform 7s ease;
}
.premium-cinematic-slider .slide-item.active img,
.premium-cinematic-slider .slide-item.active .hero-slide-video {
  transform: scale(1.01);
}
.premium-cinematic-slider .hero-slider-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(8,15,30,0.68) 0%, rgba(8,15,30,0.34) 34%, rgba(8,15,30,0.12) 55%, rgba(8,15,30,0.42) 100%),
    linear-gradient(180deg, rgba(8,15,30,0.10) 0%, rgba(8,15,30,0.42) 100%);
  z-index: 2;
}
.premium-cinematic-slider .premium-hero-overlay {
  position: absolute;
  left: clamp(24px, 4vw, 48px);
  right: auto;
  bottom: clamp(24px, 5vw, 48px);
  z-index: 3;
  width: min(540px, calc(100% - 48px));
  padding: 22px 24px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,0.18);
  background: linear-gradient(180deg, rgba(255,255,255,0.22), rgba(255,255,255,0.10));
  backdrop-filter: blur(18px) saturate(155%);
  -webkit-backdrop-filter: blur(18px) saturate(155%);
  box-shadow: 0 24px 55px rgba(15, 23, 42, 0.24);
}
.premium-cinematic-slider .premium-hero-overlay h1,
.premium-cinematic-slider .premium-hero-overlay h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.8rem, 3.2vw, 3rem);
  line-height: 1.04;
  letter-spacing: -0.03em;
  text-shadow: 0 10px 30px rgba(15,23,42,0.35);
}
.premium-cinematic-slider .premium-hero-overlay p {
  margin: 12px 0 0;
  color: rgba(255,255,255,0.86);
  font-size: clamp(.98rem, 1.4vw, 1.08rem);
  line-height: 1.6;
}
.premium-cinematic-slider .premium-hero-overlay:empty {
  display: none;
}
.premium-cinematic-slider .slider-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 52px;
  height: 52px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.12);
  color: #fff;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 14px 34px rgba(15,23,42,0.22);
  z-index: 5;
  cursor: pointer;
  transition: transform .22s ease, background .22s ease, border-color .22s ease;
}
.premium-cinematic-slider .slider-nav:hover {
  transform: translateY(-50%) scale(1.04);
  background: rgba(255,255,255,0.18);
  border-color: rgba(255,255,255,0.28);
}
.premium-cinematic-slider .slider-nav-prev { left: 18px; }
.premium-cinematic-slider .slider-nav-next { right: 18px; }
.premium-cinematic-slider .hero-slider-dots {
  position: absolute;
  left: clamp(24px, 4vw, 48px);
  right: auto;
  bottom: 16px;
  z-index: 5;
  display: flex;
  gap: 10px;
}
.premium-cinematic-slider .slider-dot {
  width: 26px;
  height: 8px;
  border-radius: 999px;
  border: none;
  background: rgba(255,255,255,0.34);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.1);
  transition: width .28s ease, background .28s ease, transform .28s ease;
}
.premium-cinematic-slider .slider-dot.active {
  width: 46px;
  background: rgba(255,255,255,0.95);
  transform: translateY(-1px);
}
.hero.hero-slider-only .hero-single-wrap {
  display: block;
}
.hero.hero-slider-only .hero-stats-below {
  margin-top: 18px;
}
@media (max-width: 991px) {
  .premium-cinematic-slider,
  .premium-cinematic-slider .slide-item,
  .premium-cinematic-slider .slide-item img,
  .premium-cinematic-slider .hero-slide-video {
    min-height: clamp(340px, 58vh, 560px);
  }
  .premium-cinematic-slider .premium-hero-overlay {
    left: 16px;
    right: 16px;
    width: auto;
    bottom: 18px;
    padding: 18px 18px;
    border-radius: 22px;
  }
  .premium-cinematic-slider .slider-nav {
    width: 44px;
    height: 44px;
  }
  .premium-cinematic-slider .slider-nav-prev { left: 12px; }
  .premium-cinematic-slider .slider-nav-next { right: 12px; }
  .premium-cinematic-slider .hero-slider-dots {
    left: 16px;
    bottom: 10px;
  }
}
@media (max-width: 640px) {
  .premium-cinematic-slider,
  .premium-cinematic-slider .slide-item,
  .premium-cinematic-slider .slide-item img,
  .premium-cinematic-slider .hero-slide-video {
    min-height: 320px;
  }
  .premium-cinematic-slider .premium-hero-overlay {
    padding: 16px;
  }
  .premium-cinematic-slider .premium-hero-overlay p {
    font-size: .95rem;
    line-height: 1.5;
  }
  .premium-cinematic-slider .slider-nav {
    display: none;
  }
}

/* remove hero slider side arrows */
.hero-image-slider .slider-nav { display: none !important; }

/* urgent homepage section */
.hero-stats-below,.mini-cards{display:none !important;}
.menu-sidebar-like .urgent-link{background:linear-gradient(135deg,#fff7ed,#ffedd5);color:#c2410c;font-weight:700;}
.urgent-showcase{
  margin:26px 0;
  padding:22px;
  border-radius:30px;
  background:linear-gradient(135deg,#111111 0%,#6b7280 100%);
  color:#e5e7eb;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 20px 48px rgba(0,0,0,.28);
}
.urgent-showcase .section-head h2,
.urgent-showcase .section-head a{color:#f3f4f6;}
.urgent-marquee{overflow:hidden;position:relative;}
.urgent-track{display:flex;gap:16px;width:max-content;animation:urgentTicker 32s linear infinite;}
.urgent-marquee:hover .urgent-track{animation-play-state:paused;}
.urgent-card{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:320px;
  padding:12px 14px;
  border-radius:22px;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(14px);
  color:#f9fafb;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
.urgent-card img{width:88px;height:66px;object-fit:cover;border-radius:14px;flex:0 0 auto;}
.urgent-card-body{display:grid;gap:4px;}
.urgent-card-body strong{font-size:15px;line-height:1.3;color:#f9fafb;}
.urgent-card-body small{color:#cbd5e1;}
.urgent-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:4px 10px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;}
@keyframes urgentTicker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@media (max-width:768px){.urgent-card{min-width:260px}.urgent-showcase{padding:18px}}
  .urgent-grid{grid-template-columns:1fr}
}
@media (max-width:768px){.urgent-card{min-width:260px}.urgent-showcase{padding:18px}}

/* homepage compact premium listing layout */
.compact-listings-section .listing-grid.four-col-listing {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
}

.compact-listings-section .listing-card {
  border-radius: 14px;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
  overflow: hidden;
}

.compact-listings-section .listing-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 22px rgba(15, 23, 42, 0.08);
}

.compact-listings-section .listing-card:nth-child(6n + 1) {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.compact-listings-section .listing-card:nth-child(6n + 2) {
  background: linear-gradient(180deg, #ffffff 0%, #fdf8ff 100%);
}

.compact-listings-section .listing-card:nth-child(6n + 3) {
  background: linear-gradient(180deg, #ffffff 0%, #f7fffb 100%);
}

.compact-listings-section .listing-card:nth-child(6n + 4) {
  background: linear-gradient(180deg, #ffffff 0%, #fffaf3 100%);
}

.compact-listings-section .listing-card:nth-child(6n + 5) {
  background: linear-gradient(180deg, #ffffff 0%, #f8f9ff 100%);
}

.compact-listings-section .listing-card:nth-child(6n + 6) {
  background: linear-gradient(180deg, #ffffff 0%, #fff7f8 100%);
}

.compact-listings-section .listing-image img {
  height: 132px;
}

.compact-listings-section .listing-body {
  padding: 8px 9px 9px;
}

.compact-listings-section .listing-body::before {
  left: 9px;
  right: 9px;
}

.compact-listings-section .listing-body h3 {
  font-size: 0.83rem;
  line-height: 1.2;
  margin-bottom: 4px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.05em;
}

.compact-listings-section .listing-body p {
  font-size: 0.72rem;
  line-height: 1.25;
  margin-bottom: 6px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.compact-listings-section .listing-meta {
  gap: 4px;
  align-items: flex-end;
}

.compact-listings-section .listing-meta span {
  font-size: 0.7rem;
}

.compact-listings-section .listing-meta strong {
  font-size: 0.84rem;
}

.compact-listings-section .tag {
  top: 7px;
  left: 7px;
  padding: 4px 7px;
  font-size: 0.61rem;
}

.featured-compact-section .fav-btn {
  top: 7px;
  right: 7px;
  width: 29px;
  height: 29px;
  font-size: 0.84rem;
}

@media (max-width: 1540px) {
  .compact-listings-section .listing-grid.four-col-listing {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 1280px) {
  .compact-listings-section .listing-grid.four-col-listing {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (max-width: 1080px) {
  .compact-listings-section .listing-grid.four-col-listing {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .compact-listings-section .listing-image img {
    height: 144px;
  }
}

@media (max-width: 820px) {
  .compact-listings-section .listing-grid.four-col-listing {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .compact-listings-section .listing-image img {
    height: 152px;
  }
}

@media (max-width: 720px) {
  .compact-listings-section .listing-grid.four-col-listing {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  .compact-listings-section .listing-image img {
    height: 136px;
  }

  .compact-listings-section .listing-body {
    padding: 8px;
  }
}

@media (max-width: 520px) {
  .compact-listings-section .listing-grid.four-col-listing {
    grid-template-columns: 1fr;
  }
}

/* premium showcase shells aligned with urgent section */
.premium-showcase-shell{
  margin:26px 0;
  padding:22px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 44px rgba(15,23,42,.14);
  overflow:hidden;
  position:relative;
}
.premium-showcase-shell::before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.04));
  pointer-events:none;
}
.premium-showcase-shell > *{position:relative; z-index:1;}
.premium-showcase-shell .section-head{
  margin-bottom:16px;
}
.premium-showcase-shell .section-head h2,
.premium-showcase-shell .section-head a,
.premium-showcase-shell .section-head span{
  color:#fff;
}
.premium-showcase-shell .section-head span{opacity:.78;}
.section-brands{
  background:linear-gradient(135deg,#0f172a 0%,#1d4ed8 55%,#38bdf8 100%);
}
.section-premium{
  background:linear-gradient(135deg,#20103d 0%,#5b21b6 48%,#c084fc 100%);
}
.section-vitrin{
  background:linear-gradient(135deg,#0f3b37 0%,#0f766e 52%,#5eead4 100%);
}
.section-latest{
  background:linear-gradient(135deg,#3f1d12 0%,#c2410c 56%,#fdba74 100%);
}
.section-featured{
  background:linear-gradient(135deg,#111827 0%,#374151 50%,#94a3b8 100%);
}
.section-brands .brand-chip{background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.16); color:#fff; backdrop-filter:blur(10px);}
.section-brands .brand-chip-copy small{color:rgba(255,255,255,.72);}
.section-brands .brand-chip-logo{background:linear-gradient(135deg,rgba(255,255,255,.3),rgba(255,255,255,.1));}
.section-brands .brand-marquee{mask-image:linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);}
.premium-showcase-shell .listing-card{
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px);
  box-shadow:0 12px 24px rgba(0,0,0,.14);
}
.premium-showcase-shell .listing-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 28px rgba(0,0,0,.18);
}
.premium-showcase-shell .listing-body h3,
.premium-showcase-shell .listing-body p,
.premium-showcase-shell .listing-meta span,
.premium-showcase-shell .listing-meta strong{
  color:#fff;
}
.premium-showcase-shell .listing-body p{opacity:.82;}
.premium-showcase-shell .listing-meta strong{font-weight:800;}
.premium-showcase-shell .listing-body::before{background:rgba(255,255,255,.12);}
.premium-showcase-shell .tag{box-shadow:0 8px 20px rgba(0,0,0,.18);}
.section-premium .tag{background:linear-gradient(135deg,#f59e0b,#f97316);}
.section-vitrin .tag{background:linear-gradient(135deg,#14b8a6,#0ea5e9);}
.section-latest .tag{background:linear-gradient(135deg,#fb7185,#f97316);}
.section-featured .tag{background:linear-gradient(135deg,#60a5fa,#818cf8);}
.section-featured .fav-btn{background:rgba(255,255,255,.15); color:#fff; border:1px solid rgba(255,255,255,.2);}
@media (max-width:768px){
  .premium-showcase-shell{padding:18px; border-radius:22px;}
}

/* homepage light premium sections + title-only cards */
.urgent-showcase,
.premium-showcase-shell{
  margin:20px 0;
  padding:16px;
  border-radius:24px;
  border:1px solid rgba(15,23,42,.06);
  box-shadow:0 10px 28px rgba(15,23,42,.06);
}
.urgent-showcase{
  background:linear-gradient(135deg,#ffffff 0%,#f9fafb 48%,#f5f7fb 100%);
  color:#111827;
}
.urgent-showcase .section-head h2,
.urgent-showcase .section-head a{color:#111827;}
.urgent-card{
  min-width:280px;
  padding:9px 10px;
  gap:10px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(15,23,42,.06);
  color:#111827;
  box-shadow:0 6px 18px rgba(15,23,42,.06);
}
.urgent-card img{width:80px;height:58px;border-radius:12px;}
.urgent-card-body{gap:2px;}
.urgent-card-body strong{font-size:13px;line-height:1.25;}
.urgent-card-body small,
.urgent-badge{display:none !important;}

.premium-showcase-shell::before{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.56));}
.premium-showcase-shell .section-head{margin-bottom:12px;}
.premium-showcase-shell .section-head h2,
.premium-showcase-shell .section-head a,
.premium-showcase-shell .section-head span{color:#0f172a;}
.premium-showcase-shell .section-head span{opacity:.62;}
.section-brands{background:linear-gradient(135deg,#ffffff 0%,#fbfdff 50%,#f4f8ff 100%);}
.section-premium{background:linear-gradient(135deg,#ffffff 0%,#fdfbff 52%,#f7f2ff 100%);}
.section-vitrin{background:linear-gradient(135deg,#ffffff 0%,#f8fffd 52%,#eefcf8 100%);}
.section-latest{background:linear-gradient(135deg,#ffffff 0%,#fffdf8 52%,#fff6ea 100%);}
.section-featured{background:linear-gradient(135deg,#ffffff 0%,#fbfbfc 52%,#f2f4f7 100%);}
.section-brands .brand-chip{
  background:rgba(255,255,255,.88);
  border-color:rgba(15,23,42,.08);
  color:#111827;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
  backdrop-filter:none;
}
.section-brands .brand-chip-copy small{color:#64748b;}
.section-brands .brand-chip-logo{background:linear-gradient(135deg,#f8fafc,#eef2ff);}

.compact-listings-section .listing-grid.four-col-listing{grid-template-columns:repeat(7, minmax(0, 1fr));gap:8px;}
.compact-listings-section .listing-card,
.premium-showcase-shell .listing-card{
  border-radius:12px;
  border:1px solid rgba(15,23,42,.06);
  background:rgba(255,255,255,.9) !important;
  box-shadow:0 6px 16px rgba(15,23,42,.05);
  backdrop-filter:none;
}
.compact-listings-section .listing-card:hover,
.premium-showcase-shell .listing-card:hover{transform:translateY(-2px);box-shadow:0 10px 18px rgba(15,23,42,.08);}
.compact-listings-section .listing-image img{height:114px;}
.compact-listings-section .listing-body{padding:7px 8px 8px;min-height:auto;}
.compact-listings-section .listing-body::before{display:none;}
.compact-listings-section .listing-body h3,
.premium-showcase-shell .listing-body h3{
  color:#0f172a;
  font-size:.8rem;
  line-height:1.22;
  margin:0;
  min-height:1.95em;
}
.compact-listings-section .listing-body p,
.compact-listings-section .listing-meta,
.compact-listings-section .tag,
.compact-listings-section .fav-btn,
.urgent-showcase .tag,
.premium-showcase-shell .listing-body p,
.premium-showcase-shell .listing-meta,
.premium-showcase-shell .tag,
.premium-showcase-shell .fav-btn{display:none !important;}

@media (max-width:1540px){.compact-listings-section .listing-grid.four-col-listing{grid-template-columns:repeat(6,minmax(0,1fr));}}
@media (max-width:1280px){.compact-listings-section .listing-grid.four-col-listing{grid-template-columns:repeat(5,minmax(0,1fr));}}
@media (max-width:1080px){.compact-listings-section .listing-grid.four-col-listing{grid-template-columns:repeat(4,minmax(0,1fr));}.compact-listings-section .listing-image img{height:122px;}}
@media (max-width:820px){.compact-listings-section .listing-grid.four-col-listing{grid-template-columns:repeat(3,minmax(0,1fr));}.compact-listings-section .listing-image img{height:132px;}}
@media (max-width:720px){.compact-listings-section .listing-grid.four-col-listing{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.compact-listings-section .listing-image img{height:124px;}.urgent-card{min-width:240px;}}
@media (max-width:520px){.compact-listings-section .listing-grid.four-col-listing{grid-template-columns:1fr;}}

/* restore urgent section old premium look */
.urgent-showcase{
  margin:26px 0;
  padding:22px;
  border-radius:28px;
  border:none;
  box-shadow:none;
  background:linear-gradient(135deg,#111827 0%,#1f2937 48%,#7c2d12 100%);
  color:#fff;
  overflow:hidden;
}
.urgent-showcase .section-head h2,
.urgent-showcase .section-head a{color:#fff;}
.urgent-card{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:320px;
  padding:12px 14px;
  border-radius:22px;
  background:rgba(255,255,255,.1);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:none;
  color:#fff;
  box-shadow:0 12px 32px rgba(0,0,0,.18);
}
.urgent-card img{width:88px;height:66px;object-fit:cover;border-radius:14px;flex:0 0 auto;}
.urgent-card-body{display:grid;gap:4px;}
.urgent-card-body strong{font-size:15px;line-height:1.3;}
.urgent-card-body small{display:block !important;color:rgba(255,255,255,.78);}
.urgent-badge{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:max-content;
  padding:4px 10px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
@media (max-width:768px){
  .urgent-showcase{padding:18px;}
  .urgent-card{min-width:260px;}
}

/* refined homepage showcase styling for brands/premium/vitrin/latest/featured */
.section-brands,
.section-premium,
.section-vitrin,
.section-latest,
.section-featured{
  position:relative;
  padding:18px 18px 16px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 18px 42px rgba(15,23,42,.07);
  overflow:hidden;
}
.section-brands::after,
.section-premium::after,
.section-vitrin::after,
.section-latest::after,
.section-featured::after{
  content:"";
  position:absolute;
  inset:auto -8% -42% auto;
  width:210px;
  height:210px;
  border-radius:50%;
  opacity:.32;
  filter:blur(6px);
  pointer-events:none;
}
.section-brands::after{background:radial-gradient(circle,#dbeafe 0%,rgba(219,234,254,0) 72%);}
.section-premium::after{background:radial-gradient(circle,#ede9fe 0%,rgba(237,233,254,0) 72%);}
.section-vitrin::after{background:radial-gradient(circle,#ccfbf1 0%,rgba(204,251,241,0) 72%);}
.section-latest::after{background:radial-gradient(circle,#fde68a 0%,rgba(253,230,138,0) 72%);}
.section-featured::after{background:radial-gradient(circle,#e2e8f0 0%,rgba(226,232,240,0) 72%);}

.premium-showcase-shell .section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(15,23,42,.06);
}
.premium-showcase-shell .section-head h2{
  font-size:1.04rem;
  font-weight:800;
  letter-spacing:-.02em;
}
.premium-showcase-shell .section-head a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(15,23,42,.07);
  box-shadow:0 6px 14px rgba(15,23,42,.05);
  font-size:.82rem;
  font-weight:700;
}
.premium-showcase-shell .section-head a:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 18px rgba(15,23,42,.08);
}
.premium-showcase-shell .section-head span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.8rem;
  font-weight:600;
  color:#64748b;
}

.section-brands{background:linear-gradient(135deg,#ffffff 0%,#f8fbff 48%,#eff6ff 100%);}
.section-premium{background:linear-gradient(135deg,#ffffff 0%,#fcfaff 52%,#f6f0ff 100%);}
.section-vitrin{background:linear-gradient(135deg,#ffffff 0%,#f6fffd 52%,#ecfdf5 100%);}
.section-latest{background:linear-gradient(135deg,#ffffff 0%,#fffdf7 52%,#fff7ed 100%);}
.section-featured{background:linear-gradient(135deg,#ffffff 0%,#fbfcfe 52%,#f1f5f9 100%);}

.section-brands .brand-chip{
  min-height:92px;
  border-radius:20px;
  padding:12px 14px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.section-brands .brand-chip:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 28px rgba(15,23,42,.10);
}
.section-brands .brand-chip-logo{
  width:44px;
  height:44px;
  border-radius:14px;
  font-size:1rem;
  font-weight:800;
}
.section-brands .brand-chip-copy strong{
  font-size:.95rem;
}
.section-brands .brand-chip img{
  width:54px;
  height:54px;
  border-radius:14px;
}

.compact-listings-section .listing-grid.four-col-listing{
  gap:10px;
}
.compact-listings-section .listing-card,
.premium-showcase-shell .listing-card{
  border-radius:16px;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  overflow:hidden;
}
.compact-listings-section .listing-card:hover,
.premium-showcase-shell .listing-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 28px rgba(15,23,42,.10);
}
.compact-listings-section .listing-image{
  padding:7px 7px 0;
}
.compact-listings-section .listing-image img{
  height:118px;
  border-radius:12px;
}
.compact-listings-section .listing-body{
  padding:8px 9px 10px;
}
.compact-listings-section .listing-body h3,
.premium-showcase-shell .listing-body h3{
  font-size:.82rem;
  line-height:1.28;
  min-height:2.1em;
}

@media (max-width:900px){
  .section-brands,
  .section-premium,
  .section-vitrin,
  .section-latest,
  .section-featured{
    padding:15px 14px 14px;
    border-radius:22px;
  }
  .premium-showcase-shell .section-head{
    gap:10px;
    flex-wrap:wrap;
  }
  .premium-showcase-shell .section-head a{
    min-height:32px;
    padding:0 11px;
  }
}

/* corporate stores addon */
.store-marquee .store-chip{min-width:360px;align-items:center;gap:14px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);box-shadow:0 14px 30px rgba(15,23,42,.08)}
.store-chip-logo{width:58px;height:58px;border-radius:18px;background:#eef2ff;color:#1e293b;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 58px;font-weight:800}
.store-chip-logo img{width:100%;height:100%;object-fit:cover}
.store-chip-side{margin-left:auto;display:flex;align-items:center;gap:12px}
.store-chip-side img{width:72px;height:56px;border-radius:14px;object-fit:cover;border:1px solid rgba(15,23,42,.08)}
.store-chip-badge{padding:6px 10px;border-radius:999px;background:#ecfeff;color:#0f766e;font-size:12px;font-weight:700;white-space:nowrap}
.store-page-wrap .container{display:block}
.store-hero-shell{margin-bottom:24px}
.store-hero-cover{position:relative;border-radius:30px;overflow:hidden;min-height:290px;background:#0f172a;background-size:cover;background-position:center;box-shadow:0 25px 50px rgba(15,23,42,.18)}
.store-hero-overlay{position:absolute;inset:0;background:linear-gradient(115deg,rgba(15,23,42,.86),rgba(15,23,42,.35))}
.store-hero-content{position:relative;z-index:1;display:grid;grid-template-columns:110px 1fr minmax(200px,260px);gap:22px;align-items:end;padding:32px;color:#fff}
.store-logo-box{width:110px;height:110px;border-radius:28px;background:#fff;color:#0f172a;display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:800;overflow:hidden;box-shadow:0 12px 30px rgba(15,23,42,.25)}
.store-logo-box img{width:100%;height:100%;object-fit:cover}
.store-badge{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.14);backdrop-filter:blur(12px);font-size:12px;font-weight:700;margin-bottom:10px}
.store-hero-copy h1{font-size:34px;line-height:1.05;margin:0 0 10px}
.store-hero-copy p{margin:0;color:rgba(255,255,255,.88);max-width:760px}
.store-hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.store-hero-meta span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);font-size:13px}
.store-hero-actions{display:grid;gap:10px}
.store-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px}
.store-side-card,.dealer-store-card{background:linear-gradient(180deg,#fff,#f8fafc)}
.store-info-list{display:grid;gap:12px}
.store-info-list div{display:grid;gap:3px;padding:10px 0;border-bottom:1px solid rgba(15,23,42,.06)}
.store-info-list span,.dealer-store-meta{font-size:12px;color:#64748b}
.dealer-store-head{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.dealer-store-logo{width:58px;height:58px;border-radius:18px;background:#eef2ff;color:#1e293b;display:flex;align-items:center;justify-content:center;overflow:hidden;font-weight:800}
.dealer-store-logo img{width:100%;height:100%;object-fit:cover}
.dealer-store-desc{margin:0 0 14px;color:#475569;font-size:14px;line-height:1.55}
.form-check-line label{display:flex;align-items:center;gap:10px;font-weight:600}
@media (max-width: 980px){.store-hero-content{grid-template-columns:1fr;padding:24px;align-items:start}.store-content-grid{grid-template-columns:1fr}.store-chip{min-width:300px}}

/* store premium continuation */
.store-status-strip{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.store-status-pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#eef2f7;color:#334155;font-size:13px;font-weight:700}
.store-status-pill.is-active{background:#dcfce7;color:#166534}.store-status-pill.is-approved{background:#dbeafe;color:#1d4ed8}
.store-stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 22px}
.store-stat-box{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:18px 16px;box-shadow:0 12px 28px rgba(15,23,42,.06)}
.store-stat-box span{display:block;font-size:12px;color:#64748b;margin-bottom:8px}.store-stat-box strong{font-size:24px;color:#0f172a}
.store-feature-surface{margin-bottom:20px}.store-feature-chips{display:flex;flex-wrap:wrap;gap:10px}.store-feature-chips span{padding:10px 14px;border-radius:999px;background:#fff7ed;color:#9a3412;font-weight:700;font-size:13px;border:1px solid #fdba74}
.store-mini-showcase{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.store-mini-slide{min-height:120px;border-radius:18px;background-size:cover;background-position:center;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:14px;color:#fff;font-weight:700;box-shadow:0 14px 26px rgba(15,23,42,.12)}.store-mini-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,0),rgba(15,23,42,.78))}.store-mini-slide span{position:relative;z-index:1;line-height:1.3}
.store-reviews-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:18px}.store-reviews-list{display:grid;gap:12px}.store-review-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:16px;box-shadow:0 10px 24px rgba(15,23,42,.06)}.store-review-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.store-review-head span{color:#f59e0b;font-weight:800}.store-review-card p{margin:0 0 8px;color:#334155;line-height:1.6}.store-review-card small{color:#94a3b8}.store-review-form{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:18px;display:grid;gap:12px}.store-review-form label{display:grid;gap:8px;color:#334155;font-weight:600}.store-review-form input,.store-review-form select,.store-review-form textarea{width:100%;border:1px solid #dbe3ee;border-radius:14px;padding:12px 14px;background:#fff}
.store-hours-list{display:grid;gap:10px}.store-hours-list div{padding:11px 12px;border-radius:14px;background:#f8fafc;color:#334155;border:1px solid rgba(15,23,42,.06)}.empty-state-mini{padding:18px;border-radius:16px;background:#f8fafc;color:#64748b}
@media (max-width:1100px){.store-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.store-mini-showcase{grid-template-columns:repeat(3,minmax(0,1fr))}.store-reviews-grid{grid-template-columns:1fr}}
@media (max-width:720px){.store-stats-row,.store-mini-showcase{grid-template-columns:1fr 1fr}.store-mini-slide{min-height:92px}}

.store-chip-rating{display:flex;align-items:center;gap:8px;font-style:normal;font-size:12px;color:#f59e0b;font-weight:700;margin-top:4px}
.store-chip-rating b{color:#475569;font-weight:800}
.store-rating-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 0}
.store-stars{color:#f59e0b;font-size:1.05rem;letter-spacing:1px}
.store-rating-row strong{font-size:1rem;color:#fff}
.store-rating-row small{color:rgba(255,255,255,.82)}
.store-campaign-surface{overflow:hidden}
.store-campaign-slider{position:relative;border-radius:24px;overflow:hidden;background:#0f172a}
.store-campaign-track{display:flex;transition:transform .55s ease}
.store-campaign-slide{min-width:100%;min-height:280px;position:relative;background-size:cover;background-position:center;display:flex;align-items:flex-end}
.store-campaign-overlay{position:absolute;inset:0;background:linear-gradient(110deg,rgba(15,23,42,.88),rgba(15,23,42,.35))}
.store-campaign-copy{position:relative;z-index:2;padding:28px;max-width:560px;color:#fff;display:grid;gap:10px}
.store-campaign-copy span{display:inline-flex;width:max-content;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);padding:7px 12px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.02em}
.store-campaign-copy h3{margin:0;font-size:2rem;line-height:1.1}
.store-campaign-copy p{margin:0;color:rgba(255,255,255,.86);line-height:1.6}
.store-campaign-dots{position:absolute;left:24px;bottom:18px;display:flex;gap:8px;z-index:3}
.store-campaign-dot{width:10px;height:10px;border-radius:999px;border:none;background:rgba(255,255,255,.35);cursor:pointer;padding:0}
.store-campaign-dot.is-active{background:#fff;width:28px}
.store-search-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:12px}
.store-search-form input,.store-search-form select{width:100%;border:1px solid #dbe3ee;border-radius:14px;padding:12px 14px;background:#fff}
.store-search-form .primary-btn{white-space:nowrap}
@media (max-width:980px){.store-search-form{grid-template-columns:1fr 1fr}.store-search-form .primary-btn{width:100%}.store-campaign-copy h3{font-size:1.55rem}}
@media (max-width:680px){.store-search-form{grid-template-columns:1fr}.store-campaign-slide{min-height:220px}.store-campaign-copy{padding:20px}}

.store-side-column{display:grid;gap:16px;align-self:start}
.store-side-nav{position:sticky;top:90px;display:grid;gap:8px}
.store-side-nav a{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid rgba(15,23,42,.08);color:#0f172a;font-weight:700;text-decoration:none;transition:.2s ease}
.store-side-nav a:hover{transform:translateY(-1px);border-color:rgba(59,130,246,.35);color:#2563eb}
.store-rating-card{display:grid;gap:14px}
.store-rating-summary{display:grid;gap:6px;justify-items:start}.store-rating-summary strong{font-size:2rem;line-height:1;color:#0f172a}.store-rating-summary span{color:#f59e0b;font-weight:800}.store-rating-summary small{color:#64748b}
.store-rating-bars{display:grid;gap:9px}.store-rating-bar-row{display:grid;grid-template-columns:44px 1fr 34px;gap:10px;align-items:center}.store-rating-bar-row span,.store-rating-bar-row strong{font-size:13px;font-weight:700;color:#334155}.store-rating-bar{height:10px;border-radius:999px;background:#e2e8f0;overflow:hidden}.store-rating-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f59e0b,#fbbf24)}
.store-campaign-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:42px;height:42px;border:none;border-radius:999px;background:rgba(255,255,255,.18);backdrop-filter:blur(12px);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(15,23,42,.18)}
.store-campaign-arrow.is-prev{left:16px}.store-campaign-arrow.is-next{right:16px}.store-campaign-arrow:hover{background:rgba(255,255,255,.28)}
@media (max-width:980px){.store-side-nav{position:static}.store-campaign-arrow{width:36px;height:36px;font-size:20px}}
@media (max-width:680px){.store-campaign-arrow{display:none}}

/* Footer kurumsal links + fallback store showcase */
.store-chip-empty{
  border-style:dashed;
  opacity:.96;
}
.store-chip-empty .store-chip-side{
  background:#111827;
  color:#fff;
  border-radius:999px;
  padding:6px 10px;
}

/* Compare panel should stay above detail map and Leaflet layers */
.compare-floating-panel {
  z-index: 5000;
}
.compare-toast {
  z-index: 5001;
}
.detail-map-box,
.listing-location-map,
.detail-map,
.leaflet-container,
.leaflet-pane,
.leaflet-top,
.leaflet-bottom,
.leaflet-control-container {
  position: relative;
  z-index: 1;
}
.leaflet-popup,
.leaflet-control,
.leaflet-pane,
.leaflet-top,
.leaflet-bottom {
  z-index: 2;
}
#compareFloatingPanelWrap {
  position: relative;
  z-index: 5000;
}

/* Results page: 6-column compact listing cards */
.results-listing-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.results-listing-grid .listing-card {
  border-radius: 14px;
}
.results-listing-grid .listing-image img {
  height: 128px;
}
.results-listing-grid .tag {
  top: 8px;
  left: 8px;
  padding: 5px 8px;
  font-size: 0.68rem;
}
.results-listing-grid .fav-btn {
  top: 8px;
  right: 8px;
  width: 30px;
  height: 30px;
  font-size: 0.92rem;
}
.results-listing-grid .listing-body {
  padding: 10px;
}
.results-listing-grid .listing-body h3 {
  font-size: 0.82rem;
  line-height: 1.28;
  margin-bottom: 4px;
}
.results-listing-grid .listing-body p {
  font-size: 0.72rem;
  line-height: 1.3;
  margin-bottom: 6px;
}
.results-listing-grid .listing-meta {
  gap: 6px;
}
.results-listing-grid .listing-meta span,
.results-listing-grid .listing-meta strong,
.results-listing-grid .listing-card-tools,
.results-listing-grid .ghost-btn.small-btn,
.results-listing-grid .compare-trigger-btn {
  font-size: 0.72rem;
}
.results-listing-grid .listing-card-tools {
  margin-top: 6px;
  gap: 6px;
}
@media (max-width: 1700px) {
  .results-listing-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (max-width: 1440px) {
  .results-listing-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1180px) {
  .results-listing-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .results-listing-grid .listing-image img { height: 140px; }
}
@media (max-width: 860px) {
  .results-listing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .results-listing-grid { grid-template-columns: 1fr; }
}

/* Results page: show only image + title + price */
.results-page .listing-card .fav-btn,
.results-page .listing-card .tag,
.results-page .listing-card .listing-body p,
.results-page .listing-card .listing-meta span,
.results-page .listing-card .listing-meta .location,
.results-page .listing-card .listing-extra,
.results-page .listing-card .listing-specs,
.results-page .listing-card .listing-actions,
.results-page .listing-card .badge,
.results-page .listing-card .meta-row,
.results-page .listing-card .city,
.results-page .listing-card .year,
.results-page .listing-card .fuel,
.results-page .listing-card .transmission,
.results-page .listing-card .km {
  display: none !important;
}

.results-page .listing-card .listing-body {
  padding: 8px 9px !important;
}

.results-page .listing-card .listing-body h3 {
  margin: 0 0 6px 0 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  min-height: 32px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.results-page .listing-card .listing-meta {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 0 !important;
  margin-top: 0 !important;
}

.results-page .listing-card .listing-meta strong {
  display: block !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}

.results-page .listing-card .listing-image {
  aspect-ratio: 4 / 3 !important;
  min-height: auto !important;
}

.results-page .listing-card .listing-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Results sort bar: do not overlap listing cards */
.sticky-results-topbar{
  position: static !important;
  top: auto !important;
  z-index: auto !important;
  margin-bottom: 18px !important;
}

.results-content{
  overflow: visible !important;
}

/* Results pagination: centered with 5-page sliding window */
.pagination-bar-centered{
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
}

.pagination-bar-centered .pagination-numbers{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  min-width: 0 !important;
}

.pagination-bar-centered .ghost-btn.small-btn{
  flex: 0 0 auto !important;
}

/* Results filters reordered */
.results-filter-form .filter-group summary{
  font-weight: 800 !important;
}

/* Results filters compact + improved */
.results-filter{
  gap: 10px !important;
}

.results-filter-form{
  gap: 10px !important;
}

.results-filter-form .filter-group{
  border-radius: 16px !important;
  overflow: hidden !important;
}

.results-filter-form .filter-group summary{
  padding: 12px 14px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

.results-filter-form .filter-group-body{
  padding: 12px !important;
}

.results-filter-form .filter-grid-two{
  gap: 10px !important;
}

.results-filter-form .form-group{
  margin: 0 !important;
}

.results-filter-form .form-group label{
  font-size: 12px !important;
  line-height: 1.2 !important;
  margin-bottom: 6px !important;
  font-weight: 700 !important;
}

.results-filter-form input,
.results-filter-form select,
.results-filter-form textarea{
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 11px !important;
  border-radius: 12px !important;
  font-size: 13px !important;
}

.results-filter-form textarea{
  min-height: 90px !important;
  padding: 10px 11px !important;
}

.results-filter-form .range-input-row{
  gap: 8px !important;
}

.results-filter-form .checkbox-group-wrap{
  gap: 8px !important;
}

.results-filter-form .checkbox-chip{
  padding: 7px 10px !important;
  min-height: 34px !important;
  border-radius: 10px !important;
  font-size: 12px !important;
}

.results-filter-form .checkbox-chip input{
  width: 14px !important;
  height: 14px !important;
  min-height: 14px !important;
  padding: 0 !important;
}

.results-filter-form .full-span{
  grid-column: 1 / -1 !important;
}

.results-filter .card-head{
  margin-bottom: 10px !important;
}

.results-filter .card-head h2{
  font-size: 16px !important;
  line-height: 1.2 !important;
}

.results-filter .card-head span{
  font-size: 12px !important;
}

.filter-action-row{
  gap: 10px !important;
  margin-top: 6px !important;
}

.filter-action-row .ghost-btn,
.filter-action-row .primary-btn{
  min-height: 40px !important;
  padding: 0 14px !important;
  border-radius: 12px !important;
  font-size: 13px !important;
}

@media (max-width: 1280px){
  .results-layout{
    grid-template-columns: 280px minmax(0,1fr) !important;
    gap: 18px !important;
  }
  .results-filter-form .filter-group summary{
    padding: 11px 12px !important;
  }
  .results-filter-form .filter-group-body{
    padding: 10px !important;
  }
}

@media (max-width: 1100px){
  .results-filter-form input,
  .results-filter-form select,
  .results-filter-form textarea{
    height: 42px !important;
    min-height: 42px !important;
  }
}

/* Detail seller panel upgraded */
.seller-info-panel{display:grid;gap:14px}
.seller-standard-head{align-items:center}
.dealer-panel-block{display:grid;gap:12px}
.dealer-brand-row{display:flex;align-items:center;gap:12px}
.dealer-brand-logo{width:54px;height:54px;border-radius:14px;overflow:hidden;background:#f3f4f6;display:grid;place-items:center;font-weight:800;color:#111827;border:1px solid rgba(148,163,184,.22)}
.dealer-brand-logo img{width:100%;height:100%;object-fit:cover}
.dealer-brand-copy{display:grid;gap:2px}
.dealer-brand-copy strong{font-size:15px;line-height:1.2}
.dealer-brand-copy small{color:#667085;font-weight:700}
.dealer-owner-line{font-weight:700;color:#111827}
.dealer-inline-actions{display:flex;flex-wrap:wrap;gap:10px}
.dealer-inline-link{font-size:13px;font-weight:700;color:#111827;padding:0}
.dealer-inline-link:hover{color:#ff5a2c}

/* Store page fixes: whatsapp visibility + slider removed */
.store-contact-actions .detail-action-whatsapp,
.store-contact-actions .detail-action-whatsapp:link,
.store-contact-actions .detail-action-whatsapp:visited,
.store-contact-actions .detail-action-whatsapp span,
.store-contact-actions .detail-action-whatsapp strong,
.store-contact-actions .detail-action-whatsapp small,
.store-contact-actions .detail-action-whatsapp i {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.store-contact-actions .detail-action-whatsapp {
  background: #16a34a !important;
  border-color: #16a34a !important;
}

.store-contact-actions .detail-action-whatsapp:hover {
  filter: brightness(0.96) !important;
}

.store-campaign-slider,
.store-campaigns,
.store-campaign-track,
.store-campaign-nav,
.store-campaign-item {
  display: none !important;
}

.store.php-whatsapp-fix .detail-action-whatsapp,
.store-page .detail-action-whatsapp,
.store-whatsapp-btn,
a[href*="wa.me"] {
  color: #fff;
}

/* Step wizard and detail extensions */
.ad-wizard-page{padding:28px 0 60px}
.wizard-shell{display:grid;gap:22px}
.wizard-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.wizard-step{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:16px 18px;display:flex;gap:12px;align-items:center;box-shadow:0 18px 40px rgba(15,23,42,.06)}
.wizard-step span{width:38px;height:38px;border-radius:999px;background:#eff6ff;color:#1d4ed8;display:grid;place-items:center;font-weight:700}
.wizard-step strong{display:block;font-size:.98rem;color:#111827}
.wizard-step small{display:block;color:#6b7280}
.wizard-step.is-active{border-color:#2563eb;box-shadow:0 18px 45px rgba(37,99,235,.16)}
.wizard-step.is-active span{background:#2563eb;color:#fff}
.wizard-panel{display:none;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:26px;box-shadow:0 20px 50px rgba(15,23,42,.08)}
.wizard-panel.is-active{display:block}
.wizard-card,.preview-card,.upload-card,.expertise-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:20px;box-shadow:0 16px 38px rgba(15,23,42,.06)}
.wizard-grid{display:grid;gap:18px}
.two-col-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.three-col-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.category-steps-stack,.upload-zone-grid,.equipment-accordion-stack,.vertical-summary-accordion,.preview-tab-block,.expertise-layout{display:grid;gap:18px}
.editor-shell{border:1px solid rgba(15,23,42,.12);border-radius:18px;overflow:hidden;background:#fff}
.editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:12px;border-bottom:1px solid rgba(15,23,42,.08);background:#f8fafc}
.editor-toolbar button{border:1px solid rgba(15,23,42,.12);background:#fff;border-radius:12px;padding:8px 10px;font-weight:600;cursor:pointer}
.rich-editor{min-height:220px;padding:18px;outline:none;line-height:1.65}
.equipment-accordion{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;overflow:hidden}
.equipment-accordion summary{list-style:none;cursor:pointer;padding:16px 18px;font-weight:700;display:flex;justify-content:space-between;gap:16px}
.equipment-accordion summary::-webkit-details-marker{display:none}
.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.checkbox-chip{display:flex;align-items:center;gap:10px;border:1px solid rgba(15,23,42,.1);border-radius:14px;padding:12px;background:#f8fafc}
.upload-zone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.sortable-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}
.sortable-preview-item{position:relative;border:1px solid rgba(15,23,42,.12);border-radius:16px;background:#fff;padding:8px;display:grid;gap:8px;cursor:grab}
.sortable-preview-item img,.sortable-preview-item video{width:100%;height:92px;object-fit:cover;border-radius:12px;background:#e5e7eb}
.sortable-preview-item span{font-size:.82rem;color:#6b7280;text-align:center}
.form-hint{font-size:.88rem;color:#6b7280}
.video-hint.error{color:#b91c1c;font-weight:700}
.expertise-layout{grid-template-columns:1.1fr .9fr}
.expertise-layout-single{display:block}.expertise-card-visual-full{padding:16px 18px}.expertise-upload-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;padding:18px 20px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.05)}.expertise-upload-copy{display:flex;flex-direction:column;gap:6px;max-width:720px}.expertise-upload-copy strong{font-size:15px;font-weight:800;color:#0f172a}.expertise-upload-copy span{font-size:13px;line-height:1.6;color:#64748b}.expertise-upload-inline{margin-left:auto;min-width:300px;max-width:360px}.expertise-upload-inline label{display:block;margin-bottom:8px;font-size:13px;font-weight:700;color:#0f172a}.expertise-upload-inline input[type=file]{width:100%;padding:12px 14px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:#fff}.expertise-upload-inline small{display:block;margin-top:8px;color:#64748b}.existing-file-link{margin:8px 0 0}.existing-file-link a{font-weight:700;color:#2563eb}
.expertise-legend{display:flex;flex-wrap:wrap;gap:10px}
.legend-chip{border:1px solid rgba(15,23,42,.1);border-radius:999px;padding:8px 12px;background:#fff;font-weight:700;cursor:pointer}
.legend-chip.is-active{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}
.expertise-car-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.expertise-part{border:none;border-radius:16px;padding:14px 10px;background:#f8fafc;border:1px solid rgba(15,23,42,.08);font-weight:700;cursor:pointer;transition:.2s}
.expertise-part:hover{transform:translateY(-1px)}
.status-original{background:#ecfdf5 !important;color:#047857 !important}
.status-painted{background:#fef3c7 !important;color:#b45309 !important}
.status-local_painted{background:#ede9fe !important;color:#6d28d9 !important}
.status-changed{background:#fee2e2 !important;color:#b91c1c !important}
.listing-preview-surface{display:grid;gap:20px}
.preview-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:20px}
.preview-media img{width:100%;min-height:320px;max-height:420px;object-fit:cover;border-radius:24px;background:#e5e7eb}
.preview-copy{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:22px;display:grid;gap:14px;box-shadow:0 16px 38px rgba(15,23,42,.06)}
.preview-copy h2{margin:0;font-size:1.7rem}
.preview-price{font-size:2rem;font-weight:800;color:#111827}
.preview-meta-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.preview-meta-list div{background:#f8fafc;border-radius:16px;padding:12px 14px}
.preview-meta-list span{display:block;font-size:.8rem;color:#6b7280}
.preview-meta-list strong{display:block;margin-top:4px;color:#111827}
.preview-tab-block{grid-template-columns:repeat(2,minmax(0,1fr))}
.preview-equipments{display:grid;gap:12px}
.preview-equipment-group{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:16px}
.preview-equipment-group strong{display:block;margin-bottom:8px}
.preview-equipment-group ul{margin:0;padding-left:18px;color:#475569}
.wizard-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:24px}
.wizard-actions .ghost-btn,.wizard-actions .primary-btn,.wizard-actions .secondary-btn{min-width:160px}
.detail-layout-extended{align-items:start}
.detail-quick-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.detail-tab-surface{display:grid;gap:18px}
.detail-tab-nav{display:flex;flex-wrap:wrap;gap:10px;border-bottom:1px solid rgba(15,23,42,.08);padding-bottom:8px}
.detail-tab-btn{border:none;background:#eef2ff;color:#334155;padding:11px 16px;border-radius:999px;font-weight:700;cursor:pointer}
.detail-tab-btn.is-active{background:#1d4ed8;color:#fff}
.detail-tab-panel{display:none}
.detail-tab-panel.is-active{display:block}
.equipment-pills{display:flex;flex-wrap:wrap;gap:10px}
.equipment-pill{display:inline-flex;padding:10px 14px;border-radius:999px;background:#f8fafc;border:1px solid rgba(15,23,42,.1);font-weight:600;color:#334155}
.expertise-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.expertise-summary-item{border-radius:18px;padding:14px 16px;border:1px solid rgba(15,23,42,.08)}
.expertise-summary-item strong{display:block;margin-bottom:4px}
.detail-video-box video{width:100%;border-radius:20px;background:#0f172a}
.detail-link-row{margin-top:18px}
.contact-state-note{background:#f8fafc;border:1px solid rgba(15,23,42,.08);color:#475569;padding:12px 14px;border-radius:16px}
.cms-page-surface{padding:28px}
.cms-page-body{font-size:1rem;line-height:1.8}
.page-content-shell{display:grid;gap:18px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (max-width: 1100px){
  .wizard-progress,.two-col-grid,.three-col-grid,.detail-quick-meta-grid,.preview-hero,.preview-tab-block,.expertise-layout{grid-template-columns:1fr}.expertise-upload-bar{flex-direction:column}.expertise-upload-inline{margin-left:0;min-width:100%;max-width:100%}
  .checkbox-grid,.expertise-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 720px){
  .wizard-panel{padding:18px}
  .wizard-step{padding:14px}
  .checkbox-grid,.expertise-summary-grid,.expertise-car-grid,.preview-meta-list{grid-template-columns:1fr}
  .upload-zone-grid{grid-template-columns:1fr}
}

/* STEP1 WIDTH FIX */
.post-ad-container{max-width:1400px;width:100%;margin:0 auto;}
.step-1-wrapper{width:100%;}

/* Step 1 filter-style layout */
.step1-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:end;}
.step1-filter-grid .form-group{min-width:0;}
@media (max-width: 1200px){.step1-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width: 768px){.step1-filter-grid{grid-template-columns:1fr;}}

/* CKEditor */
.ck-editor__editable_inline {
  min-height: 320px;
}

.rich-editor-wrap{width:100%;background:#fff;border:1px solid rgba(15,23,42,.14);border-radius:14px;overflow:hidden}
.rich-editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:10px;background:#f8fafc;border-bottom:1px solid rgba(15,23,42,.08)}
.rich-editor-toolbar .re-btn,.rich-editor-toolbar .re-select,.rich-editor-toolbar .re-color{height:36px;border:1px solid rgba(15,23,42,.12);border-radius:10px;background:#fff;color:#0f172a}
.rich-editor-toolbar .re-btn{padding:0 12px;cursor:pointer;font:inherit}
.rich-editor-toolbar .re-btn.is-active{background:#0f172a;color:#fff}
.rich-editor-toolbar .re-select{padding:0 10px;min-width:98px}
.rich-editor-toolbar .re-color{width:42px;padding:4px}
.rich-editor-surface{min-height:360px;padding:14px;outline:none;line-height:1.65}
.rich-editor-source{display:block;width:100%;min-height:360px;border:0;outline:none;padding:14px;font:13px/1.5 monospace;resize:vertical}
.rich-editor-surface table td,.rich-editor-surface table th{padding:6px;border:1px solid #cbd5e1}
.rich-editor-surface blockquote{margin:12px 0;padding:12px 16px;border-left:4px solid #94a3b8;background:#f8fafc}

.wysiwyg-toolbar .wysiwyg-color-icon{
    display:inline-block;
    margin-left:4px;
    font-size:11px;
    opacity:.75;
    vertical-align:middle;
}

/* GLOBAL MOBILE CLEANUP 2026-03-23 */
@media (max-width: 992px) {
  html, body {
    overflow-x: hidden;
  }

  .container {
    width: min(var(--container), calc(100% - 20px));
  }

  .page-wrap {
    padding: 20px 0 44px;
  }

  .topbar-inner {
    min-height: auto;
    gap: 10px;
    padding: 12px 0;
    flex-wrap: wrap;
  }

  .logo {
    font-size: 1.05rem;
  }

  .main-layout,
  .panel-layout,
  .detail-layout,
  .detail-layout-premium-v15,
  .compare-selected-grid,
  .profile-summary-grid,
  .dashboard-stats-grid,
  .store-content-grid,
  .store-reviews-grid,
  .package-grid,
  .package-grid-modern,
  .wizard-grid,
  .two-col-grid,
  .ad-form-grid,
  .admin-package-card-grid,
  .admin-package-edit-grid,
  .admin-payment-grid,
  .admin-user-edit-grid,
  .role-permissions-grid,
  .expertise-layout,
  .contact-rule-grid {
    grid-template-columns: 1fr !important;
  }

  .results-topbar,
  .section-head,
  .card-head,
  .store-hero-content,
  .store-search-form,
  .messages-chat-header,
  .package-hero {
    flex-direction: column;
    align-items: stretch;
  }

  .results-sort-form,
  .results-sort-form select,
  .results-sort-form input,
  .results-sort-form button,
  .form-actions-row,
  .form-actions-row > *,
  .listing-card-tools,
  .listing-card-tools > * {
    width: 100%;
  }

  .listing-card-tools,
  .form-actions-row {
    flex-direction: column;
  }

  .thumb-grid,
  .detail-thumb-grid,
  .store-mini-showcase,
  .dashboard-stats-grid,
  .package-metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .table-card,
  .compare-table-wrap,
  .admin-table-wrap {
    overflow-x: auto;
  }

  .table-card table,
  .compare-table,
  table.responsive-table {
    min-width: 680px;
  }

  .page-title-block h1,
  .hero-copy h1,
  .store-hero-copy h1,
  .detail-title-block h1 {
    font-size: clamp(1.45rem, 6vw, 2rem);
    line-height: 1.2;
  }

  .detail-main-image img,
  .detail-gallery-main img,
  .listing-image img {
    height: auto;
  }
}

@media (max-width: 640px) {
  .container {
    width: calc(100% - 16px);
  }

  .logo-badge {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }

  .card-pad,
  .wizard-card,
  .table-card,
  .auth-card,
  .results-topbar,
  .results-filter,
  .detail-gallery-card,
  .detail-side-card,
  .store-hero-card,
  .package-card {
    padding: 16px !important;
    border-radius: 18px;
  }

  .listing-grid,
  .results-listing-grid,
  .store-grid,
  .compare-grid,
  .favorites-grid,
  .admin-package-card-grid,
  .sortable-preview-grid {
    grid-template-columns: 1fr !important;
  }

  .thumb-grid,
  .detail-thumb-grid,
  .store-mini-showcase,
  .dashboard-stats-grid,
  .package-metrics-grid {
    grid-template-columns: 1fr !important;
  }

  .mobile-nav {
    padding: 8px 16px 16px;
  }

  input,
  select,
  textarea,
  button {
    font-size: 16px;
  }

  .results-topbar strong,
  .results-topbar span {
    display: block;
  }
}

/* PWA + advanced mobile refinements */
.pwa-install-bar{position:fixed;left:16px;right:16px;bottom:calc(82px + env(safe-area-inset-bottom,0px));z-index:70;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:18px;background:rgba(15,23,42,.96);color:#fff;border:1px solid rgba(148,163,184,.22);box-shadow:0 20px 40px rgba(15,23,42,.28)}
.pwa-install-bar strong{display:block;font-size:15px}
.pwa-install-bar span{display:block;font-size:13px;opacity:.8}
.pwa-install-actions{display:flex;gap:10px;flex-wrap:wrap}

@media (max-width: 980px){
  .panel-layout,
  .detail-layout,
  .store-content-grid,
  .messages-live-layout,
  .results-layout.big-filter-layout,
  .compare-selected-grid,
  .profile-layout,
  .profile-shell{grid-template-columns:1fr !important}

  .panel-sidebar,
  .detail-sidebar,
  .messages-conversation-sidebar{position:static !important;top:auto !important}

  .panel-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .panel-nav a{justify-content:center}
}

@media (max-width: 640px){
  .panel-nav{grid-template-columns:1fr}
  .detail-summary-head,
  .detail-gallery-toolbar,
  .results-topbar,
  .store-search-form,
  .dealer-inline-actions,
  .messages-filter-bar,
  .compare-toolbar,
  .conversation-row,
  .profile-summary-grid,
  .profile-card-actions,
  .section-head.compact-head,
  .card-head{flex-direction:column;align-items:stretch}

  .table-actions,
  .dealer-inline-actions,
  .listing-card-tools,
  .row-actions{flex-wrap:wrap}

  .detail-price-box,
  .detail-contact-card,
  .detail-summary-surface,
  .store-search-surface,
  .store-showcase-surface,
  .messages-chat-card,
  .conversation-list,
  .compare-table-card,
  .panel-sidebar,
  .panel-content > .table-card{min-width:0}

  .pwa-install-bar{left:10px;right:10px;bottom:calc(78px + env(safe-area-inset-bottom,0px));padding:12px 14px;flex-direction:column;align-items:stretch}
  .pwa-install-actions{width:100%}
  .pwa-install-actions > *{flex:1}
}

/* PREMIUM FRONTEND THEME OVERRIDES */
:root {
  --premium-navy: #0f172a;
  --premium-surface: rgba(255,255,255,0.88);
  --premium-border: rgba(148, 163, 184, 0.18);
  --premium-glow: 0 18px 50px rgba(15, 23, 42, 0.10);
}

body.frontend-premium {
  background:
    radial-gradient(circle at top left, rgba(255, 90, 44, 0.08), transparent 26%),
    radial-gradient(circle at top right, rgba(59, 130, 246, 0.07), transparent 24%),
    linear-gradient(180deg, #f8fbff 0%, #f2f5fb 42%, #eef3f9 100%);
}

.frontend-premium .topbar-mini {
  background: linear-gradient(90deg, #0f172a, #172554 48%, #0f172a);
  color: rgba(255,255,255,0.92);
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.frontend-premium .topbar-mini-inner {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.frontend-premium .topbar-mini-copy,
.frontend-premium .topbar-mini-links {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}
.frontend-premium .topbar-mini span,
.frontend-premium .topbar-mini a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,0.88);
  font-size: 0.86rem;
}
.frontend-premium .topbar-mini a:hover { color: #fff; }

.frontend-premium .topbar {
  background: rgba(255,255,255,0.78);
  border-bottom: 1px solid rgba(255,255,255,0.65);
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.05);
}
.frontend-premium.is-scrolled .topbar {
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.12);
}

.frontend-premium .topbar-inner { min-height: 88px; }
.frontend-premium .logo { font-size: 1.22rem; letter-spacing: -0.02em; }
.frontend-premium .logo-badge { border-radius: 16px; box-shadow: 0 18px 36px rgba(255, 90, 44, 0.28); }
.frontend-premium .header-search,
.frontend-premium .results-filter,
.frontend-premium .results-topbar,
.frontend-premium .card-surface,
.frontend-premium .listing-card,
.frontend-premium .detail-surface,
.frontend-premium .brand-chip,
.frontend-premium .urgent-card,
.frontend-premium .flash,
.frontend-premium .footer-brand-panel,
.frontend-premium .footer-cta-card,
.frontend-premium .market-highlight-card {
  backdrop-filter: blur(14px);
 
  box-shadow: var(--premium-glow);
}
.frontend-premium .premium-nav a::after {
  content: '';
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--primary), #fb7185);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .22s ease;
}
.frontend-premium .premium-nav a.active::after,
.frontend-premium .premium-nav a:hover::after { transform: scaleX(1); }

.frontend-premium .hero-single-wrap,
.frontend-premium .premium-showcase-shell,
.frontend-premium .urgent-showcase,
.frontend-premium .featured-compact-section,
.frontend-premium .results-layout,
.frontend-premium .detail-layout-premium-v15 {
  position: relative;
  z-index: 1;
}
.frontend-premium .hero-single-wrap {
  border-radius: 30px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(15, 23, 42, 0.14);
}
.frontend-premium .premium-hero-overlay {
  background: linear-gradient(180deg, rgba(15,23,42,0.08), rgba(15,23,42,0.66));
  border: 1px solid rgba(255,255,255,0.18);
  max-width: 640px;
}
.frontend-premium .premium-hero-overlay h1 { font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.02; letter-spacing: -0.03em; }
.frontend-premium .premium-hero-overlay p { max-width: 56ch; color: rgba(255,255,255,0.88); }

.frontend-premium .market-highlights {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 22px;
  margin-bottom: 12px;
}
.frontend-premium .market-highlight-card {
  padding: 22px 20px;
  border-radius: 24px;
  display: flex;
  align-items: center;
  gap: 16px;
}
.frontend-premium .market-highlight-icon {
  width: 54px; height: 54px; border-radius: 18px; display: grid; place-items: center;
  background: linear-gradient(135deg, rgba(255,90,44,0.14), rgba(59,130,246,0.14));
  color: var(--primary); font-size: 1.25rem;
}
.frontend-premium .market-highlight-card strong { display:block; font-size: 1.4rem; letter-spacing: -0.03em; }
.frontend-premium .market-highlight-card small { color: var(--muted); }

.frontend-premium .section-head h2 { font-size: clamp(1.3rem, 2vw, 2rem); letter-spacing: -0.03em; }
.frontend-premium .section-head a { font-weight: 700; color: var(--primary); }
.frontend-premium .listing-grid { gap: 22px; }
.frontend-premium .listing-card {
  border-radius: 26px;
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.frontend-premium .listing-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 28px 60px rgba(15, 23, 42, 0.14);
  border-color: rgba(255, 90, 44, 0.18);
}
.frontend-premium .listing-image { overflow: hidden; }
.frontend-premium .listing-image img { aspect-ratio: 16/10; object-fit: cover; transition: transform .45s ease; }
.frontend-premium .listing-card:hover .listing-image img { transform: scale(1.05); }
.frontend-premium .listing-body { padding: 18px 18px 20px; }
.frontend-premium .listing-body h3 { font-size: 1.02rem; line-height: 1.35; min-height: 2.8em; }
.frontend-premium .listing-meta strong { font-size: 1.08rem; }
.frontend-premium .tag { border-radius: 999px; padding: 7px 12px; font-weight: 800; }
.frontend-premium .fav-btn { top: 14px; right: 14px; width: 44px; height: 44px; border-radius: 16px; background: rgba(255,255,255,0.92); box-shadow: 0 10px 24px rgba(15,23,42,0.12); }

.frontend-premium .urgent-card,
.frontend-premium .brand-chip { border-radius: 24px; overflow: hidden; }
.frontend-premium .urgent-card-body,
.frontend-premium .brand-chip-copy { padding-right: 10px; }

.frontend-premium .results-layout {
  gap: 24px;
  align-items: start;
}
.frontend-premium .results-filter {
  position: sticky; top: 118px; border-radius: 28px; padding: 22px;
}
.frontend-premium .results-topbar {
  border-radius: 24px; padding: 18px 20px; margin-bottom: 20px;
}
.frontend-premium .results-filter-form .form-group label,
.frontend-premium .results-sort-form label { font-size: 0.8rem; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); font-weight: 800; }
.frontend-premium input,
.frontend-premium select,
.frontend-premium textarea {
  border-radius: 16px; border: 1px solid rgba(148, 163, 184, 0.22); background: rgba(255,255,255,0.9);
  min-height: 50px; padding: 0 16px;
}
.frontend-premium textarea { min-height: 140px; padding: 14px 16px; }
.frontend-premium input:focus,
.frontend-premium select:focus,
.frontend-premium textarea:focus { outline: none; border-color: rgba(255,90,44,0.5); box-shadow: 0 0 0 4px rgba(255, 90, 44, 0.10); }
.frontend-premium .detail-gallery-premium,
.frontend-premium .detail-summary-surface,
.frontend-premium .detail-contact-card,
.frontend-premium .detail-spec-surface,
.frontend-premium .similar-listings-surface { border-radius: 28px; }
.frontend-premium .detail-price { font-size: clamp(1.8rem, 3vw, 2.6rem); letter-spacing: -0.04em; }
.frontend-premium .detail-action-btn { border-radius: 16px; min-height: 50px; }
.frontend-premium .detail-sidebar { position: sticky; top: 118px; }

.frontend-premium .premium-site-footer {
  margin-top: 64px;
  padding: 0 0 110px;
  background: linear-gradient(180deg, rgba(15,23,42,0.02), rgba(15,23,42,0.05));
}
.frontend-premium .footer-premium-shell {
  border-radius: 34px;
  padding: 34px;
  background: linear-gradient(180deg, rgba(255,255,255,0.82), rgba(255,255,255,0.95));
  border: 1px solid rgba(148, 163, 184, 0.18);
  box-shadow: 0 32px 80px rgba(15, 23, 42, 0.10);
}

.frontend-premium .footer-premium-top { display:grid; grid-template-columns: 1.3fr .9fr; gap: 22px; margin-bottom: 26px; }
.frontend-premium .footer-brand-panel,
.frontend-premium .footer-cta-card { border-radius: 28px; padding: 24px; }
.frontend-premium .footer-brand-mark { display:flex; align-items:flex-start; gap: 16px; margin-bottom: 18px; }
.frontend-premium .footer-brand-mark strong { display:block; font-size: 1.15rem; margin-bottom: 8px; }
.frontend-premium .footer-brand-mark p,
.frontend-premium .footer-cta-card p { color: var(--muted); max-width: 60ch; }
.frontend-premium .footer-trust-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.frontend-premium .footer-trust-grid span { display:flex; align-items:center; gap:10px; font-weight:600; color: var(--text); }
.frontend-premium .footer-kicker { display:inline-flex; padding: 7px 12px; border-radius:999px; background: rgba(255,90,44,0.1); color: var(--primary); font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 14px; }
.frontend-premium .footer-cta-card strong { display:block; font-size: 1.42rem; line-height: 1.15; margin-bottom: 10px; letter-spacing: -0.03em; }
.frontend-premium .footer-cta-actions { display:flex; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.frontend-premium .footer-premium-grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 22px; padding: 10px 0 0; }
.frontend-premium .footer-premium-grid h4 { font-size: .92rem; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); margin-bottom: 12px; }
.frontend-premium .footer-premium-grid a { display:block; padding: 8px 0; color: var(--text); opacity: .88; }
.frontend-premium .footer-premium-grid a:hover { color: var(--primary); opacity: 1; }
.frontend-premium .footer-bottom-bar { display:flex; justify-content:space-between; gap: 18px; align-items:center; margin-top: 26px; padding-top: 20px; border-top: 1px solid rgba(148, 163, 184, 0.18); color: var(--muted); }
.frontend-premium .footer-bottom-links { display:flex; gap: 14px; flex-wrap: wrap; }

@media (max-width: 1100px) {
  .frontend-premium .market-highlights,
  .frontend-premium .footer-premium-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .frontend-premium .footer-premium-top { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .frontend-premium .topbar-mini { display: none; }
  .frontend-premium .results-filter { position: static; }
  .frontend-premium .detail-sidebar { position: static; }
}
@media (max-width: 768px) {
  .frontend-premium .container { width: min(var(--container), calc(100% - 22px)); }
  .frontend-premium .topbar-inner { min-height: 78px; }
  .frontend-premium .market-highlights { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .frontend-premium .footer-premium-shell { padding: 24px 18px 110px; border-radius: 28px; }
  .frontend-premium .footer-trust-grid,
  .frontend-premium .footer-premium-grid,
  .frontend-premium .footer-bottom-bar { grid-template-columns: 1fr; display:grid; }
  .frontend-premium .footer-bottom-bar { gap: 12px; }
}
@media (max-width: 560px) {
  .frontend-premium .market-highlights { grid-template-columns: 1fr; }
  .frontend-premium .market-highlight-card { padding: 18px; border-radius: 20px; }
  .frontend-premium .footer-premium-grid { grid-template-columns: 1fr; }
  .frontend-premium .footer-cta-actions { flex-direction: column; }
}

/* === Frontend premium ultra pack === */
.auth-page-premium {
  position: relative;
  overflow: hidden;
  padding: 42px 0 60px;
  background:
    radial-gradient(circle at top left, rgba(255, 106, 61, 0.18), transparent 30%),
    radial-gradient(circle at right center, rgba(17, 24, 39, 0.12), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,0.88), rgba(246,248,252,0.95));
}

.auth-shell {
  display: grid;
  grid-template-columns: 1.1fr minmax(360px, 520px);
  gap: 28px;
  align-items: stretch;
}

.auth-side {
  position: relative;
  padding: 38px;
  border-radius: 32px;
  background: linear-gradient(150deg, rgba(17,24,39,0.96), rgba(38,48,66,0.94));
  color: #fff;
  box-shadow: 0 28px 60px rgba(15, 23, 42, 0.22);
  overflow: hidden;
}

.auth-side::before {
  content: "";
  position: absolute;
  inset: auto -70px -70px auto;
  width: 220px;
  height: 220px;
  border-radius: 999px;
  background: rgba(255, 106, 61, 0.18);
  filter: blur(8px);
}

.auth-side h1 {
  margin: 18px 0 14px;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.05;
  color: #fff;
}

.auth-side > p {
  max-width: 560px;
  color: rgba(255,255,255,0.78);
  font-size: 1.02rem;
}

.auth-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px;
}

.auth-feature-card {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.1);
  backdrop-filter: blur(10px);
}

.auth-feature-card strong {
  display: block;
  margin-bottom: 8px;
  color: #fff;
  font-size: 0.98rem;
}

.auth-feature-card span {
  display: block;
  color: rgba(255,255,255,0.72);
  font-size: 0.92rem;
  line-height: 1.5;
}

.auth-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 28px;
}

.auth-metrics div {
  min-width: 110px;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.12);
}

.auth-metrics strong {
  display: block;
  font-size: 1.4rem;
  color: #fff;
}

.auth-metrics span {
  color: rgba(255,255,255,0.7);
  font-size: 0.9rem;
}

.premium-auth-card {
  padding: 34px;
  border-radius: 32px;
  border: 1px solid rgba(226, 232, 240, 0.9);
  box-shadow: 0 28px 55px rgba(15, 23, 42, 0.12);
}

.auth-card .auth-header h2 {
  margin: 14px 0 10px;
  font-size: 2rem;
}

.auth-inline-links {
  margin-top: 16px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.auth-inline-links a {
  font-weight: 600;
}

.auth-trust-row {
  margin-top: 20px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.auth-trust-row span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255, 106, 61, 0.08);
  border: 1px solid rgba(255, 106, 61, 0.16);
  font-size: 0.92rem;
  font-weight: 600;
}

.premium-panel-sidebar {
  position: sticky;
  top: 108px;
  border: 1px solid rgba(226, 232, 240, 0.9);
  box-shadow: 0 22px 45px rgba(15, 23, 42, 0.08);
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,252,0.98));
}

.premium-panel-sidebar .panel-nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 14px;
  border-radius: 14px;
  transition: 0.22s ease;
}

.premium-panel-sidebar .panel-nav a.active,
.premium-panel-sidebar .panel-nav a:hover {
  background: rgba(255, 106, 61, 0.1);
  color: var(--primary);
}

.premium-panel-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.premium-panel-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  padding: 28px 30px;
  border-radius: 28px;
  border: 1px solid rgba(226, 232, 240, 0.9);
  background:
    radial-gradient(circle at top right, rgba(255, 106, 61, 0.12), transparent 24%),
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(248,250,252,0.98));
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
}

.premium-panel-hero h1 {
  margin: 12px 0 10px;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
  line-height: 1.08;
}

.premium-panel-hero p {
  margin: 0;
  max-width: 760px;
  color: var(--muted);
}

.premium-panel-hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.user-quick-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.user-quick-card {
  padding: 20px 22px;
  border-radius: 22px;
  border: 1px solid rgba(226, 232, 240, 0.9);
  background: rgba(255,255,255,0.95);
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.06);
}

.user-quick-card span {
  display: block;
  color: var(--muted);
  font-size: 0.9rem;
  margin-bottom: 8px;
}

.user-quick-card strong {
  font-size: 1.1rem;
}

.favorites-hero-block {
  padding-bottom: 8px;
}

.favorites-toolbar {
  margin-top: 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.favorites-empty-state {
  text-align: center;
  padding: 42px 28px;
  border-radius: 28px;
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
}

.empty-state-actions {
  margin-top: 18px;
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.favorites-premium-grid {
  gap: 22px;
}

.premium-favorite-card {
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, 0.9);
  box-shadow: 0 20px 35px rgba(15, 23, 42, 0.08);
}

.compare-summary-strip {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.compare-summary-strip span {
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255, 106, 61, 0.08);
  border: 1px solid rgba(255, 106, 61, 0.16);
  font-weight: 600;
  font-size: 0.92rem;
}

.compact-message-hero {
  padding-top: 22px;
  padding-bottom: 22px;
}

.page-messages .messages-chat-card,
.page-dashboard .table-card,
.page-favorites .listing-card,
.page-compare .compare-table-card,
.page-store .detail-surface {
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
}

.page-store .store-side-card,
.page-store .store-stat-box,
.page-store .store-feature-surface {
  border: 1px solid rgba(226, 232, 240, 0.85);
}

.page-dashboard .modern-table tr td,
.page-dashboard .modern-table tr th,
.page-messages .modern-table tr td,
.page-messages .modern-table tr th {
  vertical-align: middle;
}

@media (max-width: 1100px) {
  .auth-shell {
    grid-template-columns: 1fr;
  }

  .auth-feature-grid,
  .user-quick-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .premium-panel-hero {
    flex-direction: column;
    align-items: flex-start;
  }

  .premium-panel-sidebar {
    position: static;
  }
}

@media (max-width: 768px) {
  .auth-page-premium {
    padding-top: 24px;
  }

  .auth-side,
  .premium-auth-card,
  .premium-panel-hero,
  .user-quick-card {
    padding: 22px;
    border-radius: 22px;
  }

  .auth-feature-grid,
  .user-quick-grid {
    grid-template-columns: 1fr;
  }

  .auth-inline-links,
  .favorites-toolbar,
  .premium-panel-hero-actions,
  .empty-state-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

/* === Custom ultra premium frontend layer === */
:root {
  --premium-bg-1: #0f172a;
  --premium-bg-2: #111827;
  --premium-ink: #0f172a;
  --premium-line: rgba(148, 163, 184, 0.18);
  --premium-glow: 0 30px 80px rgba(15, 23, 42, 0.14);
}

.page-noise {
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image: radial-gradient(rgba(15, 23, 42, 0.035) 1px, transparent 1px);
  background-size: 18px 18px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,0.18), transparent 32%);
  z-index: 0;
}

body.frontend-premium > * { position: relative; z-index: 1; }

.topbar-mini {
  background: linear-gradient(90deg, rgba(15,23,42,0.98), rgba(31,41,55,0.92));
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 60;
  backdrop-filter: blur(16px);
  background: rgba(255,255,255,0.72);
  border-bottom: 1px solid rgba(226,232,240,0.8);
  box-shadow: 0 16px 40px rgba(15,23,42,0.04);
}

body.is-scrolled .topbar {
  background: rgba(255,255,255,0.9);
  box-shadow: 0 18px 45px rgba(15,23,42,0.08);
}

.logo {
  gap: 12px;
}

.logo-badge {
  width: 46px;
  height: 46px;
  border-radius: 16px;
  background: linear-gradient(135deg, #ff6a3d, #ff945d 55%, #ffd0a8);
  box-shadow: 0 12px 28px rgba(255,106,61,0.3);
}

.logo-text {
  font-size: 1.18rem;
  letter-spacing: -0.02em;
}

.premium-nav {
  padding: 6px;
  border-radius: 999px;
  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(226,232,240,0.85);
  box-shadow: 0 16px 28px rgba(15,23,42,0.05);
}

.premium-nav a {
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 700;
}

.premium-nav a.active,
.premium-nav a:hover {
  background: linear-gradient(135deg, rgba(255,106,61,0.14), rgba(255,106,61,0.06));
  color: var(--primary);
}

.header-search {
  background: rgba(255,255,255,0.8);
  border: 1px solid rgba(226,232,240,0.9);
  box-shadow: 0 18px 34px rgba(15,23,42,0.06);
}

.header-premium-ribbon {
  border-bottom: 1px solid rgba(226,232,240,0.65);
  background: linear-gradient(180deg, rgba(255,255,255,0.88), rgba(247,249,252,0.92));
}

.header-premium-ribbon-inner {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 12px 0;
}

.header-premium-ribbon a,
.header-ribbon-note {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,0.82);
  border: 1px solid rgba(226,232,240,0.9);
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--text);
  box-shadow: 0 12px 24px rgba(15,23,42,0.05);
}

.header-ribbon-note {
  background: linear-gradient(135deg, rgba(255,106,61,0.12), rgba(17,24,39,0.06));
}

.main-layout {
  gap: 24px;
}

.home-category-sidebar-card,
.promo-card,
.card-surface,
.detail-surface,
.results-filter,
.results-topbar,
.premium-auth-card,
.sidebar-card {
  border: 1px solid rgba(226,232,240,0.78);
  box-shadow: var(--premium-glow);
}

.signature-home-panel {
  display: grid;
  grid-template-columns: 1.35fr 0.9fr;
  gap: 22px;
  padding: 28px;
  border-radius: 34px;
  background:
    radial-gradient(circle at top right, rgba(255,106,61,0.16), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(247,249,252,0.98));
  border: 1px solid rgba(226,232,240,0.92);
  box-shadow: 0 34px 80px rgba(15,23,42,0.12);
}

.signature-home-copy h1 {
  margin: 14px 0 12px;
  font-size: clamp(2.2rem, 4vw, 4rem);
  line-height: 1;
  letter-spacing: -0.04em;
}

.signature-home-copy p {
  max-width: 720px;
  color: var(--muted);
  font-size: 1.05rem;
}

.signature-home-actions,
.signature-home-metrics,
.signature-floating-stack {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.signature-home-actions { margin-top: 18px; }
.signature-home-metrics { margin-top: 18px; }
.signature-home-metrics span,
.signature-floating-stack div {
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255,255,255,0.78);
  border: 1px solid rgba(226,232,240,0.9);
  font-weight: 600;
  box-shadow: 0 12px 24px rgba(15,23,42,0.06);
}

.signature-home-metrics strong,
.signature-floating-stack strong { display: block; font-size: 1rem; color: var(--text); }
.signature-floating-stack span { display:block; margin-bottom:6px; color: var(--muted); font-size: .86rem; }

.signature-editorial-card {
  height: 100%;
  padding: 24px;
  border-radius: 28px;
  background: linear-gradient(160deg, rgba(15,23,42,0.98), rgba(30,41,59,0.94));
  color: #fff;
  box-shadow: 0 24px 60px rgba(15,23,42,0.25);
}

.signature-editorial-card small {
  display: inline-block;
  margin-bottom: 14px;
  color: rgba(255,255,255,0.68);
  text-transform: uppercase;
  letter-spacing: .16em;
}

.signature-editorial-card strong {
  display: block;
  font-size: 1.4rem;
  line-height: 1.3;
  margin-bottom: 18px;
}

.signature-editorial-card ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.signature-editorial-card li { display:flex; gap:10px; align-items:center; color: rgba(255,255,255,0.84); }

.search-card.clean-search-card.slider-search-card.home-top-search-card {
  padding: 24px;
  border-radius: 28px;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(226,232,240,0.9);
  box-shadow: 0 22px 50px rgba(15,23,42,0.08);
}

.premium-cinematic-slider,
.hero-single-wrap,
.hero-slider-overlay,
.home-slider {
  border-radius: 32px;
}

.hero-single-wrap {
  overflow: hidden;
  box-shadow: 0 32px 80px rgba(15,23,42,0.18);
}

.hero-slider-shade {
  background: linear-gradient(135deg, rgba(6,11,20,0.1), rgba(6,11,20,0.68));
}

.premium-hero-overlay {
  max-width: 720px;
  padding: 28px 30px;
  border-radius: 28px;
  background: linear-gradient(150deg, rgba(7,12,22,0.78), rgba(7,12,22,0.42));
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.12);
}

.market-highlights {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}

.market-highlight-card,
.store-stat-box,
.user-quick-card {
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(247,249,252,0.98));
  border: 1px solid rgba(226,232,240,0.92);
  box-shadow: 0 18px 34px rgba(15,23,42,0.08);
}

.signature-category-rail,
.signature-editorial-strip,
.urgent-showcase,
.brand-showcase,
.listings.compact-listings-section {
  margin-top: 22px;
}

.signature-category-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.signature-category-card {
  padding: 22px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,252,0.98));
  border: 1px solid rgba(226,232,240,0.88);
  box-shadow: 0 20px 34px rgba(15,23,42,0.06);
  transition: transform .22s ease, box-shadow .22s ease;
}

.signature-category-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 28px 45px rgba(15,23,42,0.12);
}

.signature-category-icon {
  display: inline-flex;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255,106,61,0.16), rgba(255,106,61,0.06));
  color: var(--primary);
  font-size: 1.2rem;
  margin-bottom: 14px;
}

.signature-category-card strong { display:block; font-size: 1.02rem; margin-bottom: 6px; }
.signature-category-card small { color: var(--muted); }

.signature-editorial-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.signature-editorial-strip article {
  padding: 24px;
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,249,252,0.98));
  border: 1px solid rgba(226,232,240,0.86);
  box-shadow: 0 18px 34px rgba(15,23,42,0.06);
}

.signature-editorial-strip h3 {
  margin: 14px 0 12px;
  font-size: 1.3rem;
}

.listing-card {
  border-radius: 26px;
  border: 1px solid rgba(226,232,240,0.9);
  box-shadow: 0 24px 38px rgba(15,23,42,0.08);
  overflow: hidden;
}

.listing-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 34px 54px rgba(15,23,42,0.12);
}

.listing-image::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 55%;
  background: linear-gradient(180deg, transparent, rgba(8,12,20,0.08));
  pointer-events: none;
}

.listing-image { position: relative; }
.listing-body { padding: 20px; }
.listing-body h3 { font-size: 1.08rem; line-height: 1.35; }

.results-editorial-hero {
  padding: 24px 0 0;
}

.results-editorial-inner {
  display: grid;
  grid-template-columns: 1.35fr .9fr;
  gap: 18px;
  padding: 26px;
  border-radius: 30px;
  background:
    radial-gradient(circle at top right, rgba(255,106,61,0.14), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(248,250,252,0.98));
  border: 1px solid rgba(226,232,240,0.92);
  box-shadow: 0 28px 60px rgba(15,23,42,0.10);
}

.results-editorial-copy h1 {
  margin: 14px 0 12px;
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.02;
}

.results-editorial-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  align-content: start;
}

.results-editorial-stats div,
.results-curation-strip span {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(226,232,240,0.9);
  box-shadow: 0 14px 30px rgba(15,23,42,0.06);
}

.results-editorial-stats span { display:block; color: var(--muted); font-size: .88rem; margin-bottom: 6px; }
.results-editorial-stats strong { font-size: 1.3rem; }

.results-curation-strip {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.results-curation-strip span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 14px;
  border-radius: 999px;
}

.results-filter,
.results-topbar,
.sticky-results-topbar {
  border-radius: 28px;
  background: rgba(255,255,255,0.9);
}

.detail-signature-hero {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 18px;
  margin-bottom: 24px;
  padding: 28px;
  border-radius: 32px;
  background:
    radial-gradient(circle at top right, rgba(255,106,61,0.14), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(247,249,252,0.98));
  border: 1px solid rgba(226,232,240,0.92);
  box-shadow: 0 28px 56px rgba(15,23,42,0.10);
}

.detail-signature-hero h1 {
  margin: 14px 0 12px;
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.04;
}

.detail-signature-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.detail-signature-metrics div {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(226,232,240,0.9);
  box-shadow: 0 14px 28px rgba(15,23,42,0.06);
}
.detail-signature-metrics span { display:block; color: var(--muted); font-size: .9rem; margin-bottom: 6px; }
.detail-signature-metrics strong { font-size: 1.06rem; }

.detail-gallery-premium,
.detail-summary-surface,
.seller-info-panel,
.detail-spec-sidebar-surface,
.similar-listings-surface,
.store-hero-shell,
.store-signature-band,
.store-search-surface,
.store-showcase-surface,
.store-side-card,
.store-review-card,
.store-review-form {
  border: 1px solid rgba(226,232,240,0.88);
  box-shadow: 0 24px 48px rgba(15,23,42,0.08);
}

.store-signature-band {
  display: grid;
  grid-template-columns: 1.2fr 0.9fr;
  gap: 18px;
  margin: 22px 0;
  padding: 24px 26px;
  border-radius: 28px;
  background:
    radial-gradient(circle at right top, rgba(255,106,61,0.14), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(247,249,252,0.98));
}

.store-signature-band h2 {
  margin: 14px 0 12px;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.08;
}

.store-signature-points {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-content: start;
}

.store-signature-points span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 15px;
  border-radius: 999px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(226,232,240,0.9);
  font-weight: 700;
}

.store-campaign-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.store-campaign-card {
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,0.9);
  background: rgba(255,255,255,0.96);
  box-shadow: 0 16px 30px rgba(15,23,42,0.08);
}

.store-campaign-media {
  height: 150px;
  background-size: cover;
  background-position: center;
  background-color: #e5e7eb;
}

.store-campaign-body {
  padding: 16px;
}

.store-campaign-body span { display:block; color: var(--primary); font-size: .88rem; font-weight:700; margin-bottom:8px; }
.store-campaign-body strong { display:block; line-height:1.35; }

.footer-signature-band {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 22px;
  padding: 28px;
  margin-bottom: 22px;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(255,255,255,0.98), rgba(248,250,252,0.98));
  border: 1px solid rgba(226,232,240,0.92);
  box-shadow: 0 28px 54px rgba(15,23,42,0.10);
}

.footer-signature-band h3 {
  margin: 14px 0 12px;
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  line-height: 1.08;
}

.footer-signature-band p { color: var(--muted); max-width: 720px; }

.footer-signature-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.footer-signature-stats div {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(226,232,240,0.9);
  box-shadow: 0 14px 28px rgba(15,23,42,0.06);
}
.footer-signature-stats strong { display:block; font-size: 1.3rem; }
.footer-signature-stats span { color: var(--muted); }

.reveal-on-scroll {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .5s ease, transform .5s ease;
}

.reveal-on-scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 1100px) {
  .signature-home-panel,
  .results-editorial-inner,
  .detail-signature-hero,
  .store-signature-band,
  .footer-signature-band {
    grid-template-columns: 1fr;
  }

  .market-highlights,
  .signature-category-grid,
  .signature-editorial-strip,
  .store-campaign-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .results-editorial-stats,
  .detail-signature-metrics {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 768px) {
  .header-premium-ribbon-inner,
  .signature-home-actions,
  .signature-home-metrics,
  .results-curation-strip,
  .store-signature-points {
    flex-direction: column;
    align-items: stretch;
  }

  .market-highlights,
  .signature-category-grid,
  .signature-editorial-strip,
  .store-campaign-grid,
  .results-editorial-stats,
  .detail-signature-metrics,
  .footer-signature-stats {
    grid-template-columns: 1fr;
  }

  .signature-home-panel,
  .results-editorial-inner,
  .detail-signature-hero,
  .store-signature-band,
  .footer-signature-band,
  .search-card.clean-search-card.slider-search-card.home-top-search-card {
    padding: 20px;
    border-radius: 24px;
  }

  .premium-nav {
    display: none;
  }
}

body{
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.85), transparent 26%),
    radial-gradient(circle at right center, rgba(226,232,240,.55), transparent 22%),
    linear-gradient(180deg,#f8fbff 0%,#f2f5fa 100%);
  color:var(--text);
}

.topbar{
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(226,232,240,.86);
  box-shadow:0 10px 30px rgba(15,23,42,.04);
}

.topbar-inner{
  min-height:88px;
}

.logo{
  font-size:1.24rem;
  letter-spacing:-.02em;
}

.logo-badge{
  width:46px;
  height:46px;
  border-radius:16px;
  background:linear-gradient(135deg,#ff5a2c,#ff8a5c);
  box-shadow:0 16px 34px rgba(255,90,44,.24);
}

.header-search{
  border-radius:18px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(226,232,240,.9);
  box-shadow:0 10px 26px rgba(15,23,42,.05);
}

.header-search input::placeholder{
  color:#94a3b8;
}

.nav a{
  position:relative;
  font-weight:600;
}

.nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-8px;
  width:0;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--primary),#ff8a5c);
  transition:.24s ease;
}

.nav a:hover::after,
.nav a.active::after{
  width:100%;
}

.ghost-btn,
.primary-btn{
  min-height:48px;
  border-radius:16px;
  font-weight:700;
  letter-spacing:-.01em;
}

.ghost-btn{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}

.primary-btn{
  background:linear-gradient(135deg,#ff5a2c,#ff7a59);
  box-shadow:0 18px 34px rgba(255,90,44,.22);
}

.primary-btn:hover,
.ghost-btn:hover{
  transform:translateY(-2px);
}

.sidebar-card,
.hero-content,
.search-card,
.listing-card,
.detail-card,
.detail-description-box,
.detail-specs-box,
.auth-card,
.mini-card{
  border-radius:28px;
  border:1px solid rgba(226,232,240,.92);
  box-shadow:var(--shadow);
}

.hero-content,
.search-card,
.detail-card{
  box-shadow:var(--shadow-strong);
}

.section-head h2{
  font-size:1.95rem;
  letter-spacing:-.04em;
}

.section-head a{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.listing-card{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,251,253,.98));
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.listing-card:hover{
  transform:translateY(-7px);
  box-shadow:0 26px 50px rgba(15,23,42,.13);
  border-color:rgba(255,90,44,.20);
}

.listing-image{
  overflow:hidden;
}

.listing-image img{
  transition:transform .6s ease;
}

.listing-card:hover .listing-image img{
  transform:scale(1.05);
}

.listing-body h3{
  letter-spacing:-.02em;
}

.tag{
  border-radius:999px;
  box-shadow:0 10px 20px rgba(15,23,42,.10);
}

.sidebar-card h3,
.detail-card h3,
.detail-description-box h3,
.detail-specs-box h3{
  letter-spacing:-.02em;
}

input,
select,
textarea{
  border-radius:16px;
  border:1px solid rgba(226,232,240,.95);
  background:rgba(255,255,255,.95);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}

input:focus,
select:focus,
textarea:focus{
  outline:none;
  border-color:rgba(255,90,44,.45);
  box-shadow:0 0 0 4px rgba(255,90,44,.10);
}

.footer,
.site-footer{
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.06), transparent 24%),
    linear-gradient(135deg,#0f172a 0%,#1e293b 100%);
  color:#e2e8f0;
}

.site-footer a,
.footer a{
  color:#e2e8f0;
}

.site-footer a:hover,
.footer a:hover{
  color:#fff;
}

.page-title-block,
.detail-hero,
.store-hero,
.results-hero{
  border-radius:30px;
  box-shadow:var(--shadow-strong);
}

/* detail gallery watermark + tabs refinements */
.detail-gallery-slide {
  position: absolute;
  inset: 0;
  overflow: hidden;
  cursor: zoom-in;
}
.detail-gallery-slide img,
.detail-lightbox-image {
  transition: transform .45s ease;
}
.detail-gallery-slide:hover img {
  transform: scale(1.08);
}
.detail-gallery-watermark,
.detail-lightbox-watermark {
  position: absolute;
  right: 18px;
  bottom: 18px;
  z-index: 4;
  pointer-events: none;
}
.detail-gallery-watermark img,
.detail-lightbox-watermark img {
  max-width: 132px;
  max-height: 58px;
  opacity: .34;
  filter: drop-shadow(0 10px 20px rgba(0,0,0,.16));
}
.detail-gallery-toolbar {
  z-index: 5;
}
.detail-gallery-zoom {
  min-width: 44px;
  min-height: 44px;
  padding: 0;
  font-size: 1.15rem;
}
.detail-package-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.detail-package-card {
  background: rgba(248,250,252,.95);
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 20px;
  padding: 16px;
  display: grid;
  gap: 12px;
}
.detail-package-card h3 {
  margin: 0;
  font-size: 1rem;
}
.paint-status-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}
.paint-pill {
  background: rgba(30,41,59,.06);
}
.detail-expertise-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.expertise-summary-item.is-original { background: rgba(16,185,129,.08); border-color: rgba(16,185,129,.24); }
.expertise-summary-item.is-painted { background: rgba(251,191,36,.12); border-color: rgba(251,191,36,.24); }
.expertise-summary-item.is-local-painted { background: rgba(59,130,246,.10); border-color: rgba(59,130,246,.24); }
.expertise-summary-item.is-changed { background: rgba(239,68,68,.10); border-color: rgba(239,68,68,.24); }
.site-watermark-preview {
  width: 100%;
  min-height: 88px;
  border: 1px dashed rgba(15,23,42,.14);
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  background: rgba(248,250,252,.9);
}
.site-watermark-preview img {
  max-width: 220px;
  max-height: 72px;
  object-fit: contain;
}
@media (max-width: 960px) {
  .detail-package-grid,
  .detail-expertise-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .detail-gallery-watermark,
  .detail-lightbox-watermark {
    right: 12px;
    bottom: 12px;
  }
  .detail-gallery-watermark img,
  .detail-lightbox-watermark img {
    max-width: 102px;
    max-height: 46px;
  }
}

/* package tab all-options view */
.equipment-pills-all {
  gap: 8px;
}
.equipment-pill-option {
  align-items: center;
  gap: 7px;
  font-size: .84rem;
  font-weight: 600;
  line-height: 1.35;
  padding: 9px 12px;
  background: rgba(248,250,252,.95);
  color: #64748b;
}
.equipment-pill-option .equipment-pill-text {
  display: inline-block;
}
.equipment-pill-option.is-selected {
  background: rgba(16,185,129,.10);
  border-color: rgba(16,185,129,.30);
  color: #065f46;
  box-shadow: 0 8px 18px rgba(16,185,129,.10);
}
.equipment-pill-option.is-unselected {
  background: rgba(248,250,252,.92);
  border-color: rgba(15,23,42,.08);
  color: #64748b;
}
.equipment-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #16a34a;
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  flex: 0 0 auto;
}

/* modern package tab refresh */
.detail-package-grid-modern {
  gap: 18px;
}
.detail-package-card-modern {
  position: relative;
  background:
    radial-gradient(circle at top right, rgba(59,130,246,.08), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.98));
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 24px;
  padding: 18px;
  gap: 14px;
  box-shadow: 0 18px 38px rgba(15,23,42,.08);
}
.detail-package-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(148,163,184,.14);
}
.detail-package-card-head h3 {
  margin: 0;
  font-size: 1.02rem;
  letter-spacing: -.01em;
}
.detail-package-card-head p {
  margin: 6px 0 0;
  font-size: .86rem;
  color: #64748b;
}
.detail-package-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 58px;
  padding: 8px 12px;
  border-radius: 999px;
  background: linear-gradient(135deg, #eff6ff, #dbeafe);
  color: #1d4ed8;
  font-size: .84rem;
  font-weight: 800;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}
.equipment-pills-all {
  gap: 10px;
}
.equipment-pill-option {
  align-items: center;
  gap: 9px;
  min-height: 42px;
  font-size: .87rem;
  font-weight: 700;
  line-height: 1.35;
  padding: 10px 13px;
  border-radius: 14px;
  background: rgba(248,250,252,.95);
  color: #64748b;
  transition: .22s ease;
}
.equipment-pill-option .equipment-pill-text {
  display: inline-block;
}
.equipment-pill-option.is-selected {
  background: linear-gradient(135deg, rgba(16,185,129,.12), rgba(220,252,231,.96));
  border-color: rgba(16,185,129,.28);
  color: #065f46;
  box-shadow: 0 12px 24px rgba(16,185,129,.10);
}
.equipment-pill-option.is-unselected {
  background: rgba(248,250,252,.92);
  border-color: rgba(148,163,184,.16);
  color: #64748b;
}
.equipment-pill-option:hover {
  transform: translateY(-1px);
}
.equipment-check-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}
.equipment-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 19px;
  height: 19px;
  border-radius: 999px;
  background: #16a34a;
  color: #fff;
  font-size: .72rem;
  font-weight: 900;
  box-shadow: 0 8px 14px rgba(22,163,74,.18);
}
.equipment-check-muted {
  background: rgba(148,163,184,.14);
  color: #94a3b8;
  box-shadow: none;
}
@media (max-width: 960px) {
  .detail-package-card-head {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* vertical package tab layout - 10pt */
.detail-package-grid,
.detail-package-grid-modern {
  display: grid;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

.detail-package-card,
.detail-package-card-modern {
  width: 100%;
  border-radius: 20px;
}

.detail-package-card-head {
  align-items: center;
  padding-bottom: 10px;
}

.detail-package-card h3,
.detail-package-card-head h3 {
  font-size: 10pt !important;
  line-height: 1.35;
  margin: 0;
}

.detail-package-card-head p {
  font-size: 10pt !important;
  line-height: 1.4;
  margin-top: 4px;
}

.detail-package-count {
  font-size: 10pt !important;
  min-width: 68px;
  padding: 7px 12px;
}

.equipment-pills,
.equipment-pills-all {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.equipment-pill,
.equipment-pill-option,
.equipment-pill-option .equipment-pill-text {
  font-size: 10pt !important;
  line-height: 1.35;
}

.equipment-pill-option {
  min-height: 40px;
  border-radius: 12px;
  padding: 8px 12px;
}

.equipment-check {
  width: 18px;
  height: 18px;
  font-size: 10pt !important;
}

@media (max-width: 960px) {
  .detail-package-grid,
  .detail-package-grid-modern {
    grid-template-columns: 1fr !important;
  }

  .detail-package-card-head {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between;
  }
}

/* detail sidebar scrolls with content */
.detail-sidebar.detail-sidebar-v15,
.detail-sidebar-v15 {
  position: static !important;
  top: auto !important;
}

/* ribbon search replacement */
.header-premium-ribbon-search-wrap {
  justify-content: center;
}

.ribbon-search {
  width: min(100%, 980px);
  max-width: 980px;
  margin: 0 auto;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(226,232,240,0.92);
  box-shadow: 0 18px 34px rgba(15,23,42,0.08);
}

.ribbon-search input {
  min-width: 0;
}

@media (max-width: 768px) {
  .ribbon-search {
    max-width: 100%;
    width: 100%;
  }
}

/* header/footer promo cleanup */
.header-premium-ribbon,
.footer-signature-band,
.footer-premium-top {
  display: none !important;
}

/* footer stats band removed */
.footer-signature-stats {
  display: none !important;
}

/* ===== Global frontend premium rollout ===== */
body.frontend-premium {
  background:
    radial-gradient(circle at top left, rgba(37, 99, 235, 0.07), transparent 22%),
    linear-gradient(180deg, #f8fbff 0%, #f2f6fb 100%);
  color: #0f172a;
}

body.frontend-premium .page-wrap,
body.frontend-premium .auth-page {
  padding-top: 28px;
  padding-bottom: 48px;
}

body.frontend-premium .topbar-mini {
  background: linear-gradient(90deg, #0f172a, #172554);
  color: rgba(255,255,255,.86);
  font-size: 12px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

body.frontend-premium .topbar-mini-inner,
body.frontend-premium .topbar-mini-copy,
body.frontend-premium .topbar-mini-links {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

body.frontend-premium .topbar-mini-inner {
  justify-content: space-between;
  padding: 8px 0;
}

body.frontend-premium .topbar-mini a,
body.frontend-premium .topbar-mini span {
  opacity: .96;
}

body.frontend-premium .site-header-premium {
  position: sticky;
  top: 0;
  z-index: 110;
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(226,232,240,.9);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

body.frontend-premium .topbar-inner {
  min-height: 84px;
}

body.frontend-premium .desktop-nav a,
body.frontend-premium .premium-nav a {
  padding: 10px 14px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 700;
  color: #334155;
}

body.frontend-premium .desktop-nav a:hover,
body.frontend-premium .desktop-nav a.active,
body.frontend-premium .premium-nav a:hover,
body.frontend-premium .premium-nav a.active {
  background: rgba(37,99,235,.08);
  color: #2563eb;
}

body.frontend-premium .primary-btn,
body.frontend-premium .btn-primary,
body.frontend-premium button[type="submit"] {
  background: linear-gradient(135deg, #2563eb, #1d4ed8);
  border: 1px solid transparent;
  color: #fff;
  box-shadow: 0 12px 24px rgba(37,99,235,.22);
}

body.frontend-premium .page-title-block,
body.frontend-premium .results-editorial-inner,
body.frontend-premium .favorites-hero-block,
body.frontend-premium .compare-page-head,
body.frontend-premium .auth-card,
body.frontend-premium .store-hero,
body.frontend-premium .dashboard-hero,
body.frontend-premium .profile-hero,
body.frontend-premium .page-hero,
body.frontend-premium .messages-shell > .messages-sidebar,
body.frontend-premium .messages-shell > .messages-main {
  background: linear-gradient(135deg, #0f172a 0%, #172554 55%, #1d4ed8 100%);
  color: #fff;
  border-radius: 28px;
  box-shadow: 0 22px 48px rgba(15,23,42,.14);
  border: 1px solid rgba(255,255,255,.06);
}

body.frontend-premium .page-title-block h1,
body.frontend-premium .results-editorial-copy h1,
body.frontend-premium .auth-card h1,
body.frontend-premium .store-hero h1,
body.frontend-premium .dashboard-hero h1,
body.frontend-premium .profile-hero h1,
body.frontend-premium .page-hero h1 {
  color: #fff;
  letter-spacing: -.03em;
}

body.frontend-premium .page-title-block p,
body.frontend-premium .results-editorial-copy p,
body.frontend-premium .auth-card p,
body.frontend-premium .store-hero p,
body.frontend-premium .dashboard-hero p,
body.frontend-premium .profile-hero p,
body.frontend-premium .page-hero p,
body.frontend-premium .page-title-block .summary-chip span {
  color: rgba(255,255,255,.82);
}

body.frontend-premium .hero-badge,
body.frontend-premium .summary-chip,
body.frontend-premium .compare-summary-strip span,
body.frontend-premium .results-editorial-stats > div,
body.frontend-premium .detail-floating-chip {
  background: rgba(255,255,255,.12);
  color: #fff;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  backdrop-filter: blur(8px);
}

body.frontend-premium .card-pad,
body.frontend-premium .empty-state,
body.frontend-premium .listing-card,
body.frontend-premium .detail-gallery,
body.frontend-premium .detail-summary-card,
body.frontend-premium .detail-sidebar > *,
body.frontend-premium .detail-main-column > section,
body.frontend-premium .results-filter,
body.frontend-premium .results-content,
body.frontend-premium .compare-table-wrap,
body.frontend-premium .auth-form-wrap,
body.frontend-premium .profile-layout > *,
body.frontend-premium .dashboard-grid > *,
body.frontend-premium .store-layout > *,
body.frontend-premium .package-card,
body.frontend-premium .page-content-card,
body.frontend-premium .messages-card,
body.frontend-premium .ad-wizard-step,
body.frontend-premium .wizard-panel,
body.frontend-premium .info-card,
body.frontend-premium .stats-card,
body.frontend-premium .panel-card,
body.frontend-premium .form-card,
body.frontend-premium table,
body.frontend-premium .modal-content {
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  border: 1px solid #e5edf5;
  border-radius: 22px;
  box-shadow: 0 12px 32px rgba(15,23,42,.07);
}

body.frontend-premium .listing-card,
body.frontend-premium .card-pad,
body.frontend-premium .empty-state,
body.frontend-premium .results-filter,
body.frontend-premium .results-content,
body.frontend-premium .dashboard-grid > *,
body.frontend-premium .profile-layout > *,
body.frontend-premium .store-layout > *,
body.frontend-premium .package-card,
body.frontend-premium .messages-card,
body.frontend-premium .panel-card,
body.frontend-premium .form-card {
  padding: 18px;
}

body.frontend-premium .listing-card:hover,
body.frontend-premium .card-pad:hover,
body.frontend-premium .package-card:hover,
body.frontend-premium .stats-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(15,23,42,.10);
}

body.frontend-premium .listing-image,
body.frontend-premium .detail-gallery-main,
body.frontend-premium .detail-gallery-thumbs img {
  border-radius: 18px;
  overflow: hidden;
}

body.frontend-premium input,
body.frontend-premium select,
body.frontend-premium textarea {
  min-height: 46px;
  border: 1px solid #dbe6f0;
  border-radius: 14px;
  background: #fff;
  box-shadow: none;
}

body.frontend-premium textarea {
  min-height: 120px;
}

body.frontend-premium input:focus,
body.frontend-premium select:focus,
body.frontend-premium textarea:focus {
  border-color: rgba(37,99,235,.35);
  box-shadow: 0 0 0 4px rgba(37,99,235,.08);
  outline: none;
}

body.frontend-premium label,
body.frontend-premium .form-group label,
body.frontend-premium .field-label {
  font-size: 12px;
  font-weight: 800;
  color: #475569;
  letter-spacing: .01em;
  margin-bottom: 7px;
}

body.frontend-premium table {
  width: 100%;
  overflow: hidden;
}

body.frontend-premium table th {
  background: #f8fbff;
  color: #334155;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .04em;
}

body.frontend-premium table th,
body.frontend-premium table td {
  padding: 12px 14px;
  border-color: #e9eef5;
}

body.frontend-premium .section-head,
body.frontend-premium .compact-head,
body.frontend-premium .section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 14px;
  margin-bottom: 16px;
  border-bottom: 1px solid #e5edf5;
}

body.frontend-premium .section-head h2,
body.frontend-premium .section-header h2,
body.frontend-premium .section-title {
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -.02em;
  color: #0f172a;
}

body.frontend-premium .empty-state {
  text-align: center;
}

body.frontend-premium .global-premium-footer {
  position: relative;
  overflow: hidden;
  margin-top: 56px;
  background: linear-gradient(180deg, #0b1220 0%, #111b31 100%);
  color: rgba(255,255,255,.78);
}

body.frontend-premium .global-premium-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(37,99,235,.18), transparent 25%);
  pointer-events: none;
}

body.frontend-premium .footer-premium-shell {
  position: relative;
  z-index: 2;
  padding: 54px 0 22px;
}

body.frontend-premium .footer-premium-top {
  display: grid;
  grid-template-columns: minmax(260px, 1.15fr) minmax(0, 2fr);
  gap: 36px;
  padding-bottom: 26px;
}

body.frontend-premium .footer-brand-link {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: #fff;
}

body.frontend-premium .footer-logo-badge,
body.frontend-premium .footer-logo-image {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  object-fit: contain;
  background: linear-gradient(135deg, #2563eb, #1d4ed8);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 24px rgba(37,99,235,.24);
}

body.frontend-premium .footer-brand-link strong {
  display: block;
  font-size: 24px;
  line-height: 1.1;
}

body.frontend-premium .footer-brand-link small,
body.frontend-premium .footer-brand-text {
  color: rgba(255,255,255,.76);
}

body.frontend-premium .footer-brand-text {
  max-width: 420px;
  margin-top: 14px;
  line-height: 1.8;
}

body.frontend-premium .footer-mini-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

body.frontend-premium .footer-mini-pills span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.08);
}

body.frontend-premium .footer-premium-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 24px;
}

body.frontend-premium .footer-menu-column h4 {
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 14px;
}

body.frontend-premium .footer-menu-column a {
  display: block;
  color: rgba(255,255,255,.74);
  margin-bottom: 10px;
}

body.frontend-premium .footer-menu-column a:hover {
  color: #fff;
  transform: translateX(2px);
}

body.frontend-premium .footer-bottom-bar {
  border-top: 1px solid rgba(255,255,255,.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  padding-top: 18px;
  font-size: 13px;
}

body.frontend-premium .footer-bottom-links {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

body.frontend-premium .mobile-bottom-bar {
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(12px);
  border-top: 1px solid #e2e8f0;
}

@media (max-width: 991px) {
  body.frontend-premium .footer-premium-top {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  body.frontend-premium .topbar-mini { display: none; }
  body.frontend-premium .page-title-block,
  body.frontend-premium .results-editorial-inner,
  body.frontend-premium .auth-card,
  body.frontend-premium .store-hero,
  body.frontend-premium .dashboard-hero,
  body.frontend-premium .profile-hero,
  body.frontend-premium .page-hero {
    border-radius: 22px;
  }
  body.frontend-premium .card-pad,
  body.frontend-premium .listing-card,
  body.frontend-premium .empty-state,
  body.frontend-premium .results-filter,
  body.frontend-premium .results-content,
  body.frontend-premium .package-card,
  body.frontend-premium .panel-card,
  body.frontend-premium .form-card {
    border-radius: 18px;
    padding: 16px;
  }
}

/* ===== GLOBAL PREMIUM ROLLOUT V2 ===== */
body.frontend-premium {
  background:
    radial-gradient(circle at top left, rgba(255,90,44,.08), transparent 20%),
    radial-gradient(circle at top right, rgba(37,99,235,.08), transparent 24%),
    linear-gradient(180deg, #f8fbff 0%, #f3f6fb 100%);
}

.page-wrap {
  position: relative;
}

.page-title-block,
.editorial-page-hero,
.payment-hero,
.auth-mini-side {
  background: linear-gradient(135deg, #0f172a 0%, #172554 55%, #1d4ed8 100%);
  color: #fff;
  border-radius: 28px;
  padding: 28px 30px;
  box-shadow: 0 24px 55px rgba(15, 23, 42, 0.16);
  position: relative;
  overflow: hidden;
}

.page-title-block::before,
.editorial-page-hero::before,
.payment-hero::before,
.auth-mini-side::before {
  content: "";
  position: absolute;
  width: 220px;
  height: 220px;
  border-radius: 999px;
  right: -70px;
  top: -90px;
  background: rgba(255,255,255,0.08);
}

.page-title-block > *,
.editorial-page-hero > *,
.payment-hero > *,
.auth-mini-side > * {
  position: relative;
  z-index: 1;
}

.page-title-block h1,
.editorial-page-hero h1,
.payment-hero h1,
.auth-mini-side h1,
.auth-mini-side h2 {
  margin: 8px 0 10px;
  font-size: clamp(1.75rem, 2vw, 2.5rem);
  line-height: 1.08;
  letter-spacing: -0.03em;
}

.page-title-block p,
.editorial-page-hero p,
.payment-hero p,
.auth-mini-side p {
  margin: 0;
  max-width: 760px;
  color: rgba(255,255,255,0.82);
  font-size: 0.96rem;
}

.page-content-shell,
.payment-shell,
.auth-shell-mini {
  display: grid;
  gap: 24px;
}

.editorial-page-hero,
.payment-hero {
  margin-bottom: 20px;
}

.auth-shell-mini {
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
  align-items: stretch;
}

.auth-mini-side {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
}

.auth-mini-points {
  display: grid;
  gap: 12px;
}

.auth-mini-points span {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.88);
  font-weight: 600;
}

.auth-mini-points i {
  font-size: 1rem;
}

.auth-page.auth-page-premium,
.auth-page {
  padding: 32px 0 64px;
}

.auth-page .auth-card {
  background: rgba(255,255,255,0.97);
  border: 1px solid rgba(228,231,236,.9);
  border-radius: 26px;
  box-shadow: 0 20px 50px rgba(15,23,42,.10);
}

.table-card,
.detail-surface,
.results-filter,
.results-topbar,
.listing-card,
.package-card,
.package-metric-card,
.package-hero-card,
.user-quick-card,
.dashboard-stat-card,
.summary-chip,
.panel-sidebar,
.panel-content > .table-card,
.premium-panel-hero,
.store-side-card,
.store-feature-item,
.store-campaign-card,
.empty-state,
.empty-state-mini,
.modern-chat-card,
.cms-page-surface,
.payment-main-card {
  border: 1px solid rgba(228,231,236,.95);
  box-shadow: 0 14px 35px rgba(15, 23, 42, 0.07);
}

.card-pad,
.table-card,
.detail-surface,
.payment-main-card {
  border-radius: 24px;
}

.section-head h1,
.section-head h2,
.section-head h3 {
  letter-spacing: -0.02em;
}

.section-head.compact-head {
  align-items: center;
  gap: 12px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eef2f7;
}

.section-head.compact-head h2,
.section-head.compact-head h3 {
  font-size: 1.08rem;
}

.modern-table th,
.modern-table td,
.table-card table th,
.table-card table td {
  padding-top: 14px;
  padding-bottom: 14px;
}

.form-group input,
.form-group select,
.form-group textarea,
.results-filter-form input,
.results-filter-form select,
.results-filter-form textarea,
.profile-form-grid input,
.profile-form-grid select,
.profile-form-grid textarea,
.auth-form input,
.auth-form select,
.auth-form textarea {
  border-radius: 14px;
  border: 1px solid #dbe3ee;
  min-height: 48px;
  box-shadow: none;
}

.form-group textarea,
.results-filter-form textarea,
.profile-form-grid textarea,
.auth-form textarea {
  min-height: 120px;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.results-filter-form input:focus,
.results-filter-form select:focus,
.results-filter-form textarea:focus,
.profile-form-grid input:focus,
.profile-form-grid select:focus,
.profile-form-grid textarea:focus,
.auth-form input:focus,
.auth-form select:focus,
.auth-form textarea:focus {
  border-color: rgba(37,99,235,.38);
  box-shadow: 0 0 0 4px rgba(37,99,235,.08);
  outline: 0;
}

.editorial-page-meta,
.payment-meta-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.editorial-page-meta span,
.payment-meta-strip span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.12);
  font-size: .83rem;
  font-weight: 700;
}

.payment-shell {
  max-width: 980px;
  margin: 0 auto;
}

.payment-main-card .flash.info {
  border-radius: 16px;
}

.demo-link-box {
  margin-top: 18px;
  border-radius: 16px;
  padding: 14px 16px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  font-size: .92rem;
}

.demo-link-box a {
  color: var(--primary-dark);
  word-break: break-all;
}

@media (max-width: 991px) {
  .auth-shell-mini {
    grid-template-columns: 1fr;
  }
  .page-title-block,
  .editorial-page-hero,
  .payment-hero,
  .auth-mini-side {
    padding: 24px 22px;
    border-radius: 24px;
  }
}

@media (max-width: 575px) {
  .page-title-block,
  .editorial-page-hero,
  .payment-hero,
  .auth-mini-side {
    padding: 20px 18px;
    border-radius: 20px;
  }
  .page-title-block h1,
  .editorial-page-hero h1,
  .payment-hero h1,
  .auth-mini-side h1,
  .auth-mini-side h2 {
    font-size: 1.5rem;
  }
}

/* ===== Global premium rollout v3: deep inner pages ===== */
.page-wrap {
  position: relative;
}

body.frontend-premium .page-wrap::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 320px;
  background: radial-gradient(circle at top left, rgba(255,90,44,.08), transparent 36%), radial-gradient(circle at top right, rgba(37,99,235,.07), transparent 28%);
  pointer-events: none;
}

body.frontend-premium .container {
  position: relative;
  z-index: 1;
}

body.frontend-premium .page-title-block,
body.frontend-premium .premium-panel-hero,
body.frontend-premium .store-hero-shell,
body.frontend-premium .editorial-page-hero,
body.frontend-premium .detail-summary-surface,
body.frontend-premium .results-topbar,
body.frontend-premium .package-hero-card {
  border: 1px solid rgba(228,231,236,.9);
  box-shadow: 0 18px 50px rgba(15,23,42,.08);
}

body.frontend-premium .page-title-block,
body.frontend-premium .premium-panel-hero,
body.frontend-premium .editorial-page-hero {
  border-radius: 28px;
  padding: 28px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,251,255,.96));
}

body.frontend-premium .page-title-block h1,
body.frontend-premium .premium-panel-hero h1,
body.frontend-premium .editorial-page-hero h1,
body.frontend-premium .detail-summary-head h1 {
  letter-spacing: -.04em;
}

body.frontend-premium .table-card,
body.frontend-premium .detail-surface,
body.frontend-premium .summary-chip,
body.frontend-premium .listing-card,
body.frontend-premium .message-card,
body.frontend-premium .store-side-card,
body.frontend-premium .dashboard-stat-card,
body.frontend-premium .auth-feature-card,
body.frontend-premium .user-quick-card {
  background: rgba(255,255,255,.97);
  border: 1px solid rgba(228,231,236,.92);
  box-shadow: 0 14px 34px rgba(15,23,42,.06);
}

body.frontend-premium .table-card:hover,
body.frontend-premium .listing-card:hover,
body.frontend-premium .store-side-card:hover,
body.frontend-premium .summary-chip:hover,
body.frontend-premium .user-quick-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(15,23,42,.1);
}

body.frontend-premium .table-card,
body.frontend-premium .detail-surface,
body.frontend-premium .listing-card,
body.frontend-premium .store-side-card,
body.frontend-premium .message-card,
body.frontend-premium .summary-chip,
body.frontend-premium .user-quick-card,
body.frontend-premium .dashboard-stat-card {
  transition: .22s ease;
}

body.frontend-premium .section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eef2f6;
}

body.frontend-premium .section-head h2,
body.frontend-premium .section-head h1 {
  margin: 0;
  font-size: clamp(1.1rem, 2vw, 1.45rem);
}

body.frontend-premium .modern-table thead th {
  position: sticky;
  top: 0;
  background: #fbfcfe;
  z-index: 1;
}

body.frontend-premium .modern-table th,
body.frontend-premium .modern-table td {
  padding: 15px 14px;
  font-size: .94rem;
}

body.frontend-premium .modern-table tbody tr:hover {
  background: #fcfdff;
}

body.frontend-premium .mini-btn,
body.frontend-premium .table-actions a,
body.frontend-premium .table-actions button,
body.frontend-premium .listing-card-tools a,
body.frontend-premium .listing-card-tools button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  font-size: .86rem;
  font-weight: 700;
}

body.frontend-premium .table-actions a:hover,
body.frontend-premium .table-actions button:hover,
body.frontend-premium .listing-card-tools a:hover,
body.frontend-premium .listing-card-tools button:hover,
body.frontend-premium .mini-btn:hover {
  color: var(--primary);
  border-color: rgba(255,90,44,.3);
}

/* Results */
body.page-results .results-layout {
  grid-template-columns: 320px minmax(0,1fr);
  gap: 28px;
}
body.page-results .results-filter {
  top: 106px;
}
body.page-results .results-filter,
body.page-results .results-content {
  display: grid;
  gap: 18px;
}
body.page-results .results-filter .table-card,
body.page-results .results-filter .detail-surface,
body.page-results .results-filter-form {
  border-radius: 24px;
  padding: 22px;
  background: rgba(255,255,255,.97);
  border: 1px solid rgba(228,231,236,.94);
  box-shadow: 0 16px 34px rgba(15,23,42,.07);
}
body.page-results .results-topbar {
  border-radius: 24px;
  padding: 22px 24px;
  background: linear-gradient(135deg, #ffffff, #f8fbff);
}
body.page-results .results-child-cats a,
body.page-results .results-child-cats button,
body.page-results .results-child-cats span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--line);
  font-weight: 700;
  font-size: .88rem;
}
body.page-results .results-topbar h1,
body.page-results .results-topbar h2,
body.page-results .results-topbar strong {
  font-size: clamp(1.25rem, 2vw, 1.55rem);
}
body.page-results .listing-grid,
body.page-results .two-col-listing {
  gap: 18px;
}
body.page-results .listing-card {
  border-radius: 24px;
  overflow: hidden;
}
body.page-results .listing-image img {
  height: 240px;
  object-fit: cover;
}
body.page-results .listing-body {
  padding: 18px;
}
body.page-results .listing-body h3 {
  font-size: 1rem;
  line-height: 1.35;
}
body.page-results .listing-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
}
body.page-results .listing-meta strong {
  font-size: 1.05rem;
  color: var(--primary);
}

/* Detail */
body.page-results .detail-layout,
body.page-results .detail-layout-premium-v15 {
  gap: 24px;
  align-items: start;
}
body.page-results .detail-summary-surface {
  padding: 28px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(247,250,255,.98));
}
body.page-results .detail-gallery-premium,
body.page-results .detail-map-box,
body.page-results .detail-contact-card,
body.page-results .detail-spec-surface,
body.page-results .similar-listings-surface,
body.page-results .detail-tab-surface {
  border-radius: 28px;
}
body.page-results .detail-price {
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  color: var(--primary);
}
body.page-results .detail-summary-head,
body.page-results .detail-summary-meta,
body.page-results .detail-actions,
body.page-results .detail-highlights {
  gap: 14px;
}
body.page-results .detail-chip,
body.page-results .detail-pill,
body.page-results .detail-stat,
body.page-results .detail-badge {
  border-radius: 999px;
}
body.page-results .detail-gallery-slide,
body.page-results .detail-main-image img {
  border-radius: 24px;
}
body.page-results .detail-thumb {
  border-radius: 16px;
}
body.page-results .detail-sidebar-spec-surface .modern-table td,
body.page-results .detail-sidebar-spec-surface .modern-table th {
  white-space: normal;
}

/* Panel pages */
body.page-dashboard .panel-layout,
body.page-profile .panel-layout,
body.page-messages .panel-layout,
body.page-packages .panel-layout {
  grid-template-columns: 300px minmax(0,1fr);
  gap: 28px;
}
body.page-dashboard .panel-sidebar,
body.page-profile .panel-sidebar,
body.page-messages .panel-sidebar,
body.page-packages .panel-sidebar {
  top: 106px;
}
body.page-dashboard .premium-panel-sidebar,
body.page-profile .premium-panel-sidebar,
body.page-messages .premium-panel-sidebar {
  border-radius: 28px;
  padding: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,251,255,.98));
}
body.page-dashboard .premium-panel-content,
body.page-profile .premium-panel-content,
body.page-messages .premium-panel-content,
body.page-packages .packages-modern-content {
  display: grid;
  gap: 18px;
}
body.page-dashboard .premium-panel-hero,
body.page-profile .premium-panel-hero,
body.page-messages .premium-panel-hero,
body.page-packages .package-hero-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
}
body.page-dashboard .user-quick-grid,
body.page-profile .user-quick-grid,
body.page-packages .package-metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
body.page-dashboard .user-quick-card,
body.page-profile .user-quick-card,
body.page-packages .package-metric-card {
  padding: 18px 18px;
  border-radius: 22px;
}
body.page-dashboard .user-quick-card span,
body.page-profile .user-quick-card span,
body.page-packages .package-metric-card span {
  display: block;
  color: var(--muted);
  margin-bottom: 8px;
}
body.page-dashboard .user-quick-card strong,
body.page-profile .user-quick-card strong,
body.page-packages .package-metric-card strong {
  font-size: 1.08rem;
}
body.page-dashboard .panel-nav a,
body.page-profile .panel-nav a,
body.page-messages .panel-nav a,
body.page-packages .panel-nav a {
  min-height: 48px;
  display: flex;
  align-items: center;
  border: 1px solid transparent;
  border-radius: 16px;
}
body.page-dashboard .panel-nav a.active,
body.page-profile .panel-nav a.active,
body.page-messages .panel-nav a.active,
body.page-packages .panel-nav a.active,
body.page-dashboard .panel-nav a:hover,
body.page-profile .panel-nav a:hover,
body.page-messages .panel-nav a:hover,
body.page-packages .panel-nav a:hover {
  border-color: rgba(255,90,44,.12);
  box-shadow: 0 10px 24px rgba(255,90,44,.08);
}

/* Messages */
body.page-messages .messages-live-layout {
  grid-template-columns: 340px minmax(0,1fr);
}
body.page-messages .messages-conversation-sidebar,
body.page-messages .messages-chat-card {
  border-radius: 28px;
}
body.page-messages .conversation-list,
body.page-messages .compact-conversation-list,
body.page-messages .slim-conversation-list {
  display: grid;
  gap: 12px;
}
body.page-messages .conversation-item {
  display: block;
  padding: 14px 14px;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: #fff;
}
body.page-messages .conversation-item:hover,
body.page-messages .conversation-item.active {
  border-color: rgba(255,90,44,.24);
  background: #fff8f5;
}
body.page-messages .chat-thread {
  display: grid;
  gap: 14px;
  max-height: 72vh;
  overflow: auto;
  padding-right: 4px;
}
body.page-messages .chat-bubble {
  max-width: min(78%, 720px);
  padding: 14px 16px;
  border-radius: 20px;
  border: 1px solid var(--line);
  background: #fff;
}
body.page-messages .chat-bubble.is-own,
body.page-messages .chat-bubble.own,
body.page-messages .chat-bubble.me {
  margin-left: auto;
  background: linear-gradient(135deg, #fff0ea, #fff7f3);
  border-color: rgba(255,90,44,.18);
}
body.page-messages .message-reply-box {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #eef2f6;
}
body.page-messages .message-reply-form {
  display: grid;
  gap: 12px;
}

/* Favorites / compare */
body.page-favorites .favorites-toolbar,
body.page-compare .compare-toolbar,
body.page-compare .compare-summary-strip {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
}
body.page-favorites .favorites-premium-grid,
body.page-compare .compare-selected-grid {
  gap: 18px;
}
body.page-favorites .premium-favorite-card,
body.page-compare .compare-selected-card {
  border-radius: 24px;
  overflow: hidden;
}
body.page-compare .compare-table-card {
  border-radius: 28px;
}
body.page-compare .compare-table-wrap {
  overflow: auto;
}
body.page-compare .best-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  background: #ecfdf3;
  color: #067647;
  font-size: .75rem;
  font-weight: 800;
  margin-top: 6px;
}

/* Store / CMS / packages */
body.page-store .store-hero-shell,
body.page-page .editorial-page-hero,
body.page-packages .package-hero-card {
  border-radius: 30px;
  overflow: hidden;
}
body.page-store .store-content-grid {
  gap: 24px;
}
body.page-store .store-showcase-grid,
body.page-store .store-stats-row,
body.page-packages .packages-grid {
  gap: 18px;
}
body.page-store .store-side-card,
body.page-packages .package-card {
  border-radius: 24px;
}
body.page-page .cms-page-body,
body.page-page .detail-rich-text {
  font-size: 1rem;
  line-height: 1.85;
}
body.page-page .cms-page-body h2,
body.page-page .detail-rich-text h2 {
  font-size: 1.55rem;
  margin: 28px 0 14px;
}

@media (max-width: 1200px) {
  body.page-results .results-layout,
  body.page-dashboard .panel-layout,
  body.page-profile .panel-layout,
  body.page-messages .messages-live-layout,
  body.page-packages .panel-layout {
    grid-template-columns: 1fr;
  }
  body.page-dashboard .user-quick-grid,
  body.page-profile .user-quick-grid,
  body.page-packages .package-metrics-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 780px) {
  body.frontend-premium .page-title-block,
  body.frontend-premium .premium-panel-hero,
  body.frontend-premium .editorial-page-hero,
  body.frontend-premium .package-hero-card,
  body.page-results .results-topbar,
  body.page-results .results-filter-form,
  body.page-results .results-filter .table-card {
    padding: 20px;
    border-radius: 22px;
  }
  body.page-dashboard .premium-panel-hero,
  body.page-profile .premium-panel-hero,
  body.page-messages .premium-panel-hero,
  body.page-packages .package-hero-card,
  body.page-favorites .favorites-toolbar,
  body.page-compare .compare-toolbar,
  body.page-compare .compare-summary-strip,
  body.page-results .results-topbar {
    flex-direction: column;
    align-items: flex-start;
  }
  body.page-dashboard .user-quick-grid,
  body.page-profile .user-quick-grid,
  body.page-packages .package-metrics-grid,
  body.page-results .two-col-listing {
    grid-template-columns: 1fr;
  }
  body.page-messages .chat-bubble {
    max-width: 100%;
  }
  body.page-results .listing-image img {
    height: 220px;
  }
}

/* ==== Shared homepage-style header/footer applied sitewide ==== */
.ovx-global-header { position: sticky; top: 0; z-index: 1000; background: rgba(255,255,255,.9); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(229,237,245,.95); }
.ovx-topbar { background: linear-gradient(90deg, #0f172a, #172554); color: rgba(255,255,255,.86); font-size: 12px; padding: 8px 0; }
.ovx-topbar-info { display:flex; gap:18px; flex-wrap:wrap; align-items:center; }
.ovx-topbar-info span { display:inline-flex; align-items:center; gap:7px; }
.ovx-main-nav { padding: 14px 0; }
.ovx-brand { display:flex; align-items:center; gap:12px; font-weight:800; color:#0f172a; font-size:22px; letter-spacing:-.03em; text-decoration:none; }
.ovx-brand-icon { width:46px; height:46px; border-radius:14px; display:flex; align-items:center; justify-content:center; color:#fff; background:linear-gradient(135deg,#2563eb,#1d4ed8); box-shadow:0 10px 24px rgba(37,99,235,.28); flex-shrink:0; }
.ovx-brand-logo-image { width:46px; height:46px; border-radius:14px; object-fit:cover; box-shadow:0 10px 24px rgba(15,23,42,.12); flex-shrink:0; }
.ovx-nav-menu { display:flex; gap:8px; align-items:center; justify-content:center; flex-wrap:wrap; }
.ovx-nav-menu a { color:#334155; font-size:14px; font-weight:700; padding:10px 14px; border-radius:10px; transition:all .25s ease; text-decoration:none; }
.ovx-nav-menu a:hover, .ovx-nav-menu a.active { color:#2563eb; background:rgba(37,99,235,.08); }
.ovx-nav-actions { display:flex; justify-content:flex-end; align-items:center; gap:10px; flex-wrap:wrap; }
.ovx-btn-soft, .ovx-btn-main { display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:12px; padding:12px 16px; font-size:14px; font-weight:700; border:1px solid transparent; transition:all .25s ease; text-decoration:none; cursor:pointer; }
.ovx-btn-soft { color:#334155; background:#fff; border-color:#e2e8f0; box-shadow:0 2px 10px rgba(15,23,42,.06); }
.ovx-btn-main { color:#fff; background:linear-gradient(135deg,#2563eb,#1d4ed8); box-shadow:0 12px 24px rgba(37,99,235,.24); }
.ovx-btn-soft:hover, .ovx-btn-main:hover { transform:translateY(-2px); }
.ovx-mobile-header { display:none; padding:14px 0; border-top:1px solid rgba(229,237,245,.95); }
.ovx-brand-mobile { font-size:18px; }
.ovx-mobile-menu-btn { width:44px; height:44px; border:none; border-radius:12px; background:linear-gradient(135deg,#2563eb,#1d4ed8); color:#fff; box-shadow:0 12px 24px rgba(37,99,235,.24); }
.ovx-mobile-nav { display:none; border-top:1px solid #e5edf5; background:#fff; padding:14px; }
.ovx-mobile-nav.show, .ovx-mobile-nav.active { display:block; }
.ovx-mobile-nav-head { font-size:14px; font-weight:800; color:#0f172a; margin-bottom:10px; }
.ovx-mobile-nav a { display:block; padding:11px 0; color:#334155; font-weight:700; border-bottom:1px solid #eef2f7; text-decoration:none; }
.ovx-mobile-nav a:last-child { border-bottom:none; }

.ovx-footer { background:linear-gradient(180deg,#0b1220 0%,#111b31 100%); color:rgba(255,255,255,.76); margin-top:50px; position:relative; overflow:hidden; }
.ovx-footer:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at top right, rgba(37,99,235,.18), transparent 25%); pointer-events:none; }
.ovx-footer-top { padding:54px 0 26px; position:relative; z-index:2; }
.ovx-footer-brand { display:flex; align-items:center; gap:12px; font-size:24px; font-weight:800; color:#fff; margin-bottom:16px; }
.ovx-footer-logo-image { width:44px; height:44px; border-radius:14px; object-fit:cover; box-shadow:0 10px 24px rgba(15,23,42,.18); }
.ovx-footer-text { max-width:420px; font-size:14px; line-height:1.8; margin-bottom:22px; }
.ovx-socials { display:flex; gap:12px; flex-wrap:wrap; }
.ovx-socials a { width:38px; height:38px; border-radius:12px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.08); color:#fff; display:flex; align-items:center; justify-content:center; transition:all .25s ease; text-decoration:none; }
.ovx-socials a:hover { transform:translateY(-2px); background:#2563eb; }
.ovx-footer-title { color:#fff; font-size:16px; font-weight:800; margin-bottom:16px; }
.ovx-footer-links { list-style:none; padding:0; margin:0; }
.ovx-footer-links li { margin-bottom:10px; }
.ovx-footer-links a, .ovx-footer-links span, .ovx-footer-bottom-wrap a { color:rgba(255,255,255,.74); font-size:14px; transition:all .25s ease; text-decoration:none; }
.ovx-footer-links a:hover, .ovx-footer-bottom-wrap a:hover { color:#fff; padding-left:4px; }
.ovx-footer-bottom { border-top:1px solid rgba(255,255,255,.08); padding:18px 0; position:relative; z-index:2; }
.ovx-footer-bottom-wrap { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:13px; }

.ovx-footer-main-row { align-items:flex-start; }
.ovx-footer-menu-col { display:flex; }
.ovx-footer-menu-sections { width:100%; display:flex; flex-wrap:wrap; align-items:flex-start; gap:20px 18px; }
.ovx-footer-menu-group { flex:0 0 calc(50% - 9px); max-width:calc(50% - 9px); min-width:220px; }
.ovx-footer-contact-col { margin-left:auto; }
@media (max-width: 991.98px) {
  .ovx-footer-menu-group { flex:0 0 calc(50% - 9px); max-width:calc(50% - 9px); min-width:0; }
  .ovx-footer-contact-col { margin-left:0; }
}
@media (max-width: 575.98px) {
  .ovx-footer-menu-group { flex:0 0 100%; max-width:100%; }
}
@media (max-width: 991px) {
  .ovx-topbar { display:none; }
  .ovx-main-nav { display:none; }
  .ovx-mobile-header { display:block; }
  .ovx-nav-actions { justify-content:flex-start; }
}

/* ===== Global adaptive wide layout rollout ===== */
:root {
  --site-shell-max: 1720px;
  --site-shell-gutter: 24px;
}

.container,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl,
.container-fluid,
.narrow-container,
.post-ad-container {
  width: min(calc(100% - (var(--site-shell-gutter) * 2)), var(--site-shell-max)) !important;
  max-width: var(--site-shell-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.page-content-shell,
.auth-shell,
.results-layout,
.store-page-wrap,
.ovx-page-wrap {
  width: 100%;
}

@media (max-width: 1440px) {
  :root {
    --site-shell-max: 1480px;
    --site-shell-gutter: 22px;
  }
}

@media (max-width: 1200px) {
  :root {
    --site-shell-max: 1280px;
    --site-shell-gutter: 18px;
  }
}

@media (max-width: 991px) {
  :root {
    --site-shell-max: 100%;
    --site-shell-gutter: 14px;
  }
}

@media (max-width: 575px) {
  :root {
    --site-shell-gutter: 10px;
  }
}

@media (max-width: 768px) {
  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl,
  .container-fluid,
  .narrow-container,
  .post-ad-container {
    width: calc(100% - 24px) !important;
  }
}

/* detail page fixes: breadcrumb, seller links, gallery counter + hover zoom */
.breadcrumb-pro {
  gap: 10px;
}
.crumb-item {
  background: #ffffff;
  border-color: #dbe3ee;
  color: #334155;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}
.crumb-item:hover {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
  box-shadow: 0 10px 22px rgba(37, 99, 235, 0.12);
}
.crumb-divider {
  color: #94a3b8;
}
.crumb-current {
  background: #1d4ed8;
  color: #fff;
  box-shadow: 0 10px 22px rgba(37, 99, 235, 0.22);
}
.seller-name-link {
  color: inherit;
  text-decoration: none;
  transition: color .2s ease, opacity .2s ease;
}
.seller-name-link:hover {
  color: #2563eb;
}
.dealer-owner-line .seller-name-link {
  font-weight: 700;
}
.detail-gallery-toolbar-topright {
  position: absolute;
  top: 14px;
  right: 14px;
  left: auto;
  bottom: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  pointer-events: none;
}
.detail-gallery-counter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 68px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: #fff;
  font-weight: 800;
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18);
}
.detail-gallery-slide {
  cursor: zoom-in;
}
.detail-gallery-slide img {
  transform-origin: var(--zoom-x, 50%) var(--zoom-y, 50%);
  will-change: transform;
}
.detail-gallery-slide.is-zooming img,
.detail-gallery-slide:hover img {
  transform: scale(1.7);
}
@media (max-width: 991px) {
  .detail-gallery-slide.is-zooming img,
  .detail-gallery-slide:hover img {
    transform: none;
  }
  .detail-gallery-toolbar-topright {
    top: 10px;
    right: 10px;
  }
}

/* detail breadcrumb readability fix */
.breadcrumb-pro .crumb-item,
.breadcrumb-pro .crumb-item:link,
.breadcrumb-pro .crumb-item:visited {
  color: #1e293b !important;
}
.breadcrumb-pro .crumb-item .crumb-icon,
.breadcrumb-pro .crumb-item span {
  color: inherit !important;
}
.breadcrumb-pro .crumb-divider {
  color: #64748b !important;
}
.breadcrumb-pro .crumb-current {
  background: #ffffff !important;
  border: 1px solid #dbe3ee;
  color: #1e293b !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

.final-legal-confirm{margin:18px 0 14px;padding:14px 16px;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#f8fafc;}
.final-legal-chip{display:flex !important;width:100%;border-radius:14px;}
.final-legal-chip span{font-size:14px;font-weight:700;line-height:1.45;}
.final-legal-links{margin:10px 0 0;font-size:13px;line-height:1.6;color:#475569;}
.final-legal-links a{font-weight:700;}

.contact-reveal-btn{position:relative}
.contact-reveal-btn.is-revealed{letter-spacing:.01em}



/* ===== Adaptive 80% site width layout ===== */
:root {
  --site-shell-width: 80vw;
  --site-shell-max: 80vw;
  --site-shell-gutter: 16px;
}

.container,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl,
.container-fluid,
.narrow-container,
.post-ad-container {
  width: min(calc(100% - (var(--site-shell-gutter) * 2)), var(--site-shell-width)) !important;
  max-width: var(--site-shell-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 1920px) {
  :root {
    --site-shell-width: 80vw;
    --site-shell-gutter: 18px;
  }
}

@media (max-width: 1600px) {
  :root {
    --site-shell-width: 82vw;
    --site-shell-gutter: 18px;
  }
}

@media (max-width: 1366px) {
  :root {
    --site-shell-width: 86vw;
    --site-shell-gutter: 16px;
  }
}

@media (max-width: 1200px) {
  :root {
    --site-shell-width: 90vw;
    --site-shell-gutter: 16px;
  }
}

@media (max-width: 991px) {
  :root {
    --site-shell-width: 100%;
    --site-shell-gutter: 14px;
  }
}

@media (max-width: 575px) {
  :root {
    --site-shell-gutter: 10px;
  }
}
