.public-page.search-home {
  --bg: #f3f7fc;
  --surface: #ffffff;
  --surface-alt: #edf3fa;
  --input-bg: #f7faff;
  --ink: #14213d;
  --muted: #596b83;
  --line: #d8e2ef;
  --accent: #2962ff;
  --accent-dark: #174bcc;
  --accent-soft: #e8efff;
  --shadow: 0 14px 36px rgba(31, 62, 105, .07);
  color: var(--ink);
  background: var(--bg);
  transition: color .2s ease, background-color .2s ease;
}

html[data-theme="dark"] .public-page.search-home {
  --bg: #0d1728;
  --surface: #14233b;
  --surface-alt: #192b45;
  --input-bg: #101e32;
  --ink: #edf4ff;
  --muted: #aab9ce;
  --line: #2a3d58;
  --accent: #79a0ff;
  --accent-dark: #a8c0ff;
  --accent-soft: #1d3153;
  --shadow: 0 16px 38px rgba(0, 0, 0, .2);
}

.search-home .shell,
.search-home .home-main,
.search-home .footer { color: var(--ink); }
.search-home .topbar,
.search-home .footer { border-color: var(--line); }
.search-home .hero .eyebrow,
.search-home .hero-note,
.search-home .brand-copy small,
.search-home .source-state,
.search-home .footer-line > span,
.search-home .disclaimer summary,
.search-home .disclaimer p { color: var(--muted); }
.search-home .hero h1 em { color: var(--accent); }
.search-home .nav a,
.search-home .nav-dropdown-toggle { color: var(--muted); }
.search-home .nav a:hover,
.search-home .nav a.active,
.search-home .nav-dropdown-toggle:hover,
.search-home .nav-dropdown-toggle.active { color: var(--accent-dark); background: var(--accent-soft); }
.search-home .nav-dropdown-menu { border-color: var(--line); background: var(--surface); box-shadow: var(--shadow); }
.search-home .theme-toggle { width: 40px; height: 40px; display: grid; place-items: center; padding: 0; color: var(--ink); background: var(--surface); transition: color .2s ease, background-color .2s ease, border-color .2s ease; }
.search-home .theme-toggle:hover { border-color: var(--accent); color: var(--accent); background: var(--accent-soft); }
.search-home .theme-icon { width: 19px; height: 19px; display: none; }
.search-home #themeToggle[data-theme-preference="system"] .theme-icon-system,
.search-home #themeToggle[data-theme-preference="light"] .theme-icon-light,
.search-home #themeToggle[data-theme-preference="dark"] .theme-icon-dark { display: block; }

.search-home .home-search-panel,
.search-home .home-ad-card,
.search-home .home-discover a { color: var(--ink); border-color: var(--line); background: var(--surface); }
.search-home .home-search-panel { box-shadow: var(--shadow); transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease; }
.search-home .search-panel-note,
.search-home .catalog-overview,
.search-home .home-discover small { color: var(--muted); }
.search-home .search-input { border-color: var(--line); background: var(--input-bg); transition: background-color .2s ease, border-color .18s ease, box-shadow .18s ease; }
.search-home .search-input:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent); }
.search-home .search-input input { color: var(--ink); }
.search-home .search-input input::placeholder { color: var(--muted); opacity: .8; }
.search-home .search-icon { color: var(--muted); }
.search-home .search-mode-select select,
.search-home .home-catalog-search select,
.search-home .home-catalog-search input { color: var(--ink); border-color: var(--line); background-color: var(--input-bg); }
.search-home #searchButton { background: var(--accent); transition: background-color .18s ease, transform .16s ease; }
.search-home #searchButton:hover { background: var(--accent-dark); }
.search-home #searchButton:active { transform: translateY(1px); }
.search-home .hot-chip { color: var(--muted); background: var(--surface-alt); }
.search-home .hot-chip:hover { color: var(--accent-dark); background: var(--accent-soft); }
.search-home .catalog-overview { border-color: var(--line); }
.search-home .catalog-overview strong { color: var(--ink); }

.search-home .home-catalog-search {
  --line: #d8e2ef;
  --surface: #ffffff;
  --surface-alt: #edf3fa;
  --input-bg: #f7faff;
  --ink: #14213d;
  --muted: #596b83;
  --accent: #2962ff;
  --accent-dark: #174bcc;
  --accent-soft: #e8efff;
}
html[data-theme="dark"] .search-home .home-catalog-search {
  --line: #2a3d58;
  --surface: #14233b;
  --surface-alt: #192b45;
  --input-bg: #101e32;
  --ink: #edf4ff;
  --muted: #aab9ce;
  --accent: #79a0ff;
  --accent-dark: #a8c0ff;
  --accent-soft: #1d3153;
}
.search-home .home-catalog-search .sort-field select,
.search-home .home-catalog-search .filters-grid select,
.search-home .home-catalog-search .price-row input { color: var(--ink); background: var(--input-bg); }
.search-home .home-catalog-search .mode-switch,
.search-home .home-catalog-search .advanced-body { background: var(--surface-alt); }
.search-home .home-catalog-search .mode-button,
.search-home .home-catalog-search .keyword-tabs button { color: var(--muted); }
.search-home .home-catalog-search .mode-button.is-active { color: var(--accent-dark); background: var(--surface); }
.search-home .home-catalog-search .keyword-tabs button.is-active,
.search-home .home-catalog-search .scope-chip.is-active { color: var(--accent-dark); background: var(--accent-soft); }
.search-home .home-catalog-search .keyword-chips button { color: var(--muted); border-color: var(--line); background: var(--input-bg); }
.search-home .home-catalog-search .scope-chip { color: var(--ink); background: var(--surface); }
.search-home .home-catalog-search .product-results,
.search-home .home-catalog-search .shop-card,
.search-home .home-catalog-search .catalog-empty { border-color: var(--line); background: var(--surface); box-shadow: var(--shadow); }
.search-home .home-catalog-search .product-results__columns { color: var(--muted); background: var(--surface-alt); }
.search-home .home-catalog-search .product-result-row { border-color: var(--line); background: var(--surface); }
.search-home .home-catalog-search .product-result-row:hover { background: var(--surface-alt); }
html[data-theme="dark"] .search-home.public-page .home-catalog-search .product-results,
html[data-theme="dark"] .search-home.public-page .home-catalog-search .product-result-row { background: var(--surface); }
html[data-theme="dark"] .search-home.public-page .home-catalog-search .product-results__columns,
html[data-theme="dark"] .search-home.public-page .home-catalog-search .product-result-row:hover { background: var(--surface-alt); }
.search-home .home-catalog-search .product-cell a,
.search-home .home-catalog-search .product-title,
.search-home .home-catalog-search .shop-card h3 { color: var(--ink); }
.search-home .home-catalog-search .product-cell .muted,
.search-home .home-catalog-search .shop-cell,
.search-home .home-catalog-search .shop-cell a,
.search-home .home-catalog-search .updated-cell { color: var(--muted); }
.search-home .home-catalog-search .stock-cell { color: #087a4d; }
html[data-theme="dark"] .search-home .home-catalog-search .stock-cell { color: #72d6a3; }
.search-home .home-catalog-search .stock-cell[data-state="empty"] { color: #b8323d; }
html[data-theme="dark"] .search-home .home-catalog-search .stock-cell[data-state="empty"] { color: #ff8e91; }
.search-home .home-catalog-search .stock-cell[data-state="unknown"] { color: var(--muted); }
.search-home .home-catalog-search .product-result-row .price,
.search-home .shop-product .price { color: #b8323d; }
html[data-theme="dark"] .search-home .home-catalog-search .product-result-row .price,
html[data-theme="dark"] .search-home .shop-product .price { color: #ff9b9b; }
.search-home .results-refresh-button { color: var(--ink); border-color: var(--line); background: var(--surface); }
.search-home .results-heading h2,
.search-home .results-heading p,
.search-home .results-heading #resultState { color: var(--ink); }
.search-home .home-discover a { transition: color .2s ease, background-color .2s ease, border-color .2s ease; }
.search-home .home-discover a:hover { border-color: var(--accent); background: var(--surface-alt); }
.search-home .home-discover strong { color: var(--ink); }
.search-home .home-ad-footer { color: var(--ink); border-color: var(--line); }
.search-home :is(button, a, select, input):focus-visible { outline-color: var(--accent); }

@media (max-width: 580px) {
  .search-home .theme-toggle { width: 40px; height: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  .search-home *, .search-home *::before, .search-home *::after { transition: none !important; animation: none !important; }
}
