.shoematch-root {
  --sm-bg: #f6f0e6;
  --sm-bg-soft: #fbf7f0;
  --sm-panel: #fffdf8;
  --sm-panel-2: #f7f0e5;
  --sm-panel-3: #efe5d7;
  --sm-line: rgba(77, 58, 34, 0.14);
  --sm-line-strong: rgba(155, 111, 44, 0.32);
  --sm-heading: #18140f;
  --sm-ink: #2a241d;
  --sm-muted: #6b6257;
  --sm-soft: #8b8175;
  --sm-accent: #a56f24;
  --sm-accent-2: #c98d38;
  --sm-accent-soft: #f2dfbd;
  --sm-button-ink: #171108;
  --sm-input-bg: #fffaf2;
  --sm-chip-bg: rgba(255,255,255,.64);
  --sm-shadow: 0 28px 80px rgba(79, 57, 27, .14);
  --sm-shadow-soft: 0 12px 34px rgba(79, 57, 27, .09);
  --sm-danger: #a33c31;
  color: var(--sm-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at 50% -18%, rgba(211, 164, 92, .23) 0, rgba(211, 164, 92, 0) 34%),
    linear-gradient(180deg, var(--sm-bg-soft), var(--sm-bg));
  border: 1px solid var(--sm-line);
  border-radius: 30px;
  overflow: hidden;
  margin: 24px auto;
  max-width: 1500px;
  box-shadow: var(--sm-shadow);
  isolation: isolate;
  color-scheme: light;
  transition: background .28s ease, border-color .28s ease, box-shadow .28s ease, color .28s ease;
}

.shoematch-root[data-theme="dark"] {
  --sm-bg: #0f100f;
  --sm-bg-soft: #151614;
  --sm-panel: #191a18;
  --sm-panel-2: #1d1e1b;
  --sm-panel-3: #22221f;
  --sm-line: rgba(239, 215, 172, .13);
  --sm-line-strong: rgba(226, 184, 108, .36);
  --sm-heading: #fff9ef;
  --sm-ink: #f1eadf;
  --sm-muted: #c5bbad;
  --sm-soft: #978f84;
  --sm-accent: #d7a453;
  --sm-accent-2: #f0c777;
  --sm-accent-soft: rgba(215,164,83,.16);
  --sm-button-ink: #191108;
  --sm-input-bg: #131411;
  --sm-chip-bg: rgba(255,255,255,.035);
  --sm-shadow: 0 34px 96px rgba(0,0,0,.36);
  --sm-shadow-soft: 0 14px 36px rgba(0,0,0,.22);
  --sm-danger: #f3aaa0;
  color-scheme: dark;
  background:
    radial-gradient(circle at 50% -15%, rgba(142, 103, 52, .22) 0, rgba(142, 103, 52, 0) 35%),
    linear-gradient(180deg, #151614, #0d0e0d 76%);
}

@media (prefers-color-scheme: dark) {
  .shoematch-root[data-theme="auto"] {
    --sm-bg: #0f100f;
    --sm-bg-soft: #151614;
    --sm-panel: #191a18;
    --sm-panel-2: #1d1e1b;
    --sm-panel-3: #22221f;
    --sm-line: rgba(239, 215, 172, .13);
    --sm-line-strong: rgba(226, 184, 108, .36);
    --sm-heading: #fff9ef;
    --sm-ink: #f1eadf;
    --sm-muted: #c5bbad;
    --sm-soft: #978f84;
    --sm-accent: #d7a453;
    --sm-accent-2: #f0c777;
    --sm-accent-soft: rgba(215,164,83,.16);
    --sm-button-ink: #191108;
    --sm-input-bg: #131411;
    --sm-chip-bg: rgba(255,255,255,.035);
    --sm-shadow: 0 34px 96px rgba(0,0,0,.36);
    --sm-shadow-soft: 0 14px 36px rgba(0,0,0,.22);
    --sm-danger: #f3aaa0;
    color-scheme: dark;
    background:
      radial-gradient(circle at 50% -15%, rgba(142, 103, 52, .22) 0, rgba(142, 103, 52, 0) 35%),
      linear-gradient(180deg, #151614, #0d0e0d 76%);
  }
}

.shoematch-root *, .shoematch-root *::before, .shoematch-root *::after { box-sizing: border-box; }
.shoematch-root button, .shoematch-root input, .shoematch-root select { font: inherit; }
.shoematch-root h1, .shoematch-root h2, .shoematch-root h3, .shoematch-root h4,
.shoematch-root p, .shoematch-root strong, .shoematch-root small { color: inherit; }
.shoematch-root h1, .shoematch-root h2, .shoematch-root h3 { color: var(--sm-heading) !important; }
.shoematch-root button { -webkit-tap-highlight-color: transparent; }

.shoematch-shell { padding: 25px clamp(18px, 4vw, 68px) 56px; }
.shoematch-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--sm-line);
}
.shoematch-brand {
  display: flex;
  gap: 11px;
  align-items: center;
  font-family: ui-serif, "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  font-size: 23px;
  font-weight: 650;
  letter-spacing: -.015em;
  color: var(--sm-heading);
}
.shoematch-logo {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid var(--sm-line-strong);
  color: var(--sm-accent-2);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), var(--sm-shadow-soft);
  font-size: 18px;
  font-weight: 700;
}
.shoematch-top-actions { display: flex; align-items: center; gap: 10px; }
.shoematch-badge, .shoematch-live {
  font-size: 11px;
  border: 1px solid var(--sm-line-strong);
  padding: 7px 11px;
  border-radius: 999px;
  color: var(--sm-accent);
  letter-spacing: .035em;
  background: color-mix(in srgb, var(--sm-accent-soft) 56%, transparent);
  white-space: nowrap;
}
.shoematch-status-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--sm-accent);
  margin-right: 6px;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--sm-accent) 12%, transparent);
}
.shoematch-theme-toggle {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--sm-line);
  border-radius: 999px;
  background: var(--sm-panel);
  color: var(--sm-ink);
  padding: 7px 12px;
  cursor: pointer;
  box-shadow: var(--sm-shadow-soft);
  transition: transform .18s ease, border-color .18s ease, background .28s ease, color .28s ease;
}
.shoematch-theme-toggle:hover { transform: translateY(-1px); border-color: var(--sm-line-strong); }
.shoematch-theme-toggle:focus-visible { outline: 3px solid color-mix(in srgb, var(--sm-accent) 24%, transparent); outline-offset: 2px; }
.shoematch-theme-icon { width: 18px; height: 18px; display: grid; place-items: center; color: var(--sm-accent); }
.shoematch-theme-icon svg { width: 18px; height: 18px; display: block; }
.shoematch-theme-label { font-size: 12px; font-weight: 750; }

.shoematch-hero { text-align: center; max-width: 1140px; margin: 52px auto 38px; }
.shoematch-eyebrow, .shoematch-kicker {
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 11px;
  font-weight: 850;
  color: var(--sm-accent);
}
.shoematch-root .shoematch-hero h1 {
  font-family: ui-serif, "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  font-weight: 650 !important;
  letter-spacing: -.045em;
  line-height: 1.02;
  font-size: clamp(38px, 5.4vw, 68px);
  margin: 14px auto 16px;
  max-width: 960px;
  text-wrap: balance;
  text-shadow: 0 1px 0 color-mix(in srgb, var(--sm-panel) 22%, transparent);
}
.shoematch-hero > p {
  color: var(--sm-muted) !important;
  font-size: clamp(15px, 1.5vw, 17px);
  line-height: 1.68;
  margin: 0 auto 28px;
  max-width: 760px;
}

.shoematch-smart-search {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  background: var(--sm-input-bg);
  border: 1px solid var(--sm-line-strong);
  border-radius: 18px;
  padding: 8px 8px 8px 16px;
  box-shadow: var(--sm-shadow-soft), inset 0 1px 0 rgba(255,255,255,.06);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background .28s ease;
}
.shoematch-smart-search:focus-within {
  border-color: var(--sm-accent);
  box-shadow: 0 18px 44px color-mix(in srgb, var(--sm-accent) 14%, transparent), 0 0 0 4px color-mix(in srgb, var(--sm-accent) 10%, transparent);
  transform: translateY(-1px);
}
.shoematch-search-icon { width: 24px; height: 24px; color: var(--sm-accent); line-height: 1; display: grid; place-items: center; }
.shoematch-search-icon svg { width: 21px; height: 21px; }
.shoematch-smart-input {
  width: 100%; min-width: 0; height: 58px;
  border: 0 !important; outline: 0 !important;
  background: transparent !important; color: var(--sm-heading) !important;
  font-size: 17px !important; font-weight: 560;
  padding: 0 4px !important; box-shadow: none !important;
}
.shoematch-smart-input::placeholder { color: var(--sm-soft); opacity: .86; }
.shoematch-smart-button, .shoematch-search {
  border: 1px solid color-mix(in srgb, var(--sm-accent-2) 68%, #6f4714);
  background: linear-gradient(180deg, #f0c977, #c58b34);
  color: var(--sm-button-ink) !important;
  font-weight: 850;
  cursor: pointer;
  border-radius: 12px;
  min-height: 52px;
  padding: 0 23px;
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
  box-shadow: 0 8px 18px rgba(151, 102, 30, .18);
}
.shoematch-smart-button:hover, .shoematch-search:hover { transform: translateY(-1px); filter: brightness(1.045); box-shadow: 0 12px 28px rgba(151, 102, 30, .22); }
.shoematch-smart-button:active, .shoematch-search:active { transform: translateY(0) scale(.995); }
.shoematch-smart-button:focus-visible, .shoematch-search:focus-visible { outline: 3px solid color-mix(in srgb, var(--sm-accent) 24%, transparent); outline-offset: 2px; }
.shoematch-smart-button:disabled, .shoematch-search:disabled { opacity: .68; cursor: wait; }
.shoematch-smart-button.is-loading, .shoematch-search.is-loading { filter: saturate(.72); }

.shoematch-example-row { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; margin-top: 13px; color: var(--sm-soft); font-size: 12px; }
.shoematch-query-chip, .shoematch-chip {
  border: 1px solid var(--sm-line);
  background: var(--sm-chip-bg);
  color: var(--sm-muted);
  border-radius: 999px;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
}
.shoematch-query-chip { padding: 7px 10px; }
.shoematch-query-chip:hover, .shoematch-chip:hover { color: var(--sm-heading); border-color: var(--sm-line-strong); background: var(--sm-accent-soft); transform: translateY(-1px); }
.shoematch-divider { display: flex; align-items: center; gap: 12px; color: var(--sm-soft); font-size: 10px; text-transform: uppercase; letter-spacing: .17em; margin: 20px 0 12px; }
.shoematch-divider::before, .shoematch-divider::after { content: ""; height: 1px; background: var(--sm-line); flex: 1; }

.shoematch-builder {
  display: grid;
  grid-template-columns: minmax(150px,.92fr) auto minmax(150px,.92fr) minmax(190px,1.16fr) auto;
  gap: 8px;
  background: color-mix(in srgb, var(--sm-panel-2) 84%, transparent);
  border: 1px solid var(--sm-line);
  border-radius: 16px;
  padding: 7px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.shoematch-builder select {
  min-height: 50px;
  border-radius: 10px;
  border: 1px solid var(--sm-line);
  background: var(--sm-panel);
  color: var(--sm-heading);
  padding: 0 36px 0 13px;
  font-size: 14px;
  font-weight: 600;
  outline: none;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.shoematch-builder select:hover { border-color: var(--sm-line-strong); }
.shoematch-builder select:focus { border-color: var(--sm-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--sm-accent) 9%, transparent); }
.shoematch-phrase { display: flex; align-items: center; justify-content: center; color: var(--sm-muted); padding: 0 4px; white-space: nowrap; font-size: 13px; }
.shoematch-shoe-color:not([hidden]), .shoematch-shoe-type:not([hidden]) { display: block; }
.shoematch-root.is-color-check .shoematch-builder { grid-template-columns: minmax(140px,.8fr) minmax(150px,.82fr) auto minmax(145px,.82fr) minmax(180px,1fr) auto; }
.shoematch-root.is-color-check .shoematch-shoe-color { order: 2; }
.shoematch-root.is-color-check .shoematch-phrase { order: 3; }
.shoematch-root.is-color-check .shoematch-outfit-color { order: 4; }
.shoematch-root.is-color-check .shoematch-item { order: 5; }
.shoematch-root.is-color-check .shoematch-search { order: 6; }

.shoematch-root.is-shoe-mode .shoematch-builder { grid-template-columns: minmax(160px,.9fr) auto minmax(220px,1.35fr) auto; }
.shoematch-root.is-shoe-mode .shoematch-mode { order: 1; }
.shoematch-root.is-shoe-mode .shoematch-phrase { order: 2; }
.shoematch-root.is-shoe-mode .shoematch-item { order: 3; }
.shoematch-root.is-shoe-mode .shoematch-search { order: 4; }
.shoematch-root.is-shoe-check .shoematch-builder { grid-template-columns: minmax(150px,.85fr) minmax(190px,1fr) auto minmax(220px,1.25fr) auto; }
.shoematch-root.is-shoe-check .shoematch-mode { order: 1; }
.shoematch-root.is-shoe-check .shoematch-shoe-type { order: 2; }
.shoematch-root.is-shoe-check .shoematch-phrase { order: 3; }
.shoematch-root.is-shoe-check .shoematch-item { order: 4; }
.shoematch-root.is-shoe-check .shoematch-search { order: 5; }
.shoematch-query-preview { margin-top: 13px; color: var(--sm-muted); font-family: ui-serif, Georgia, serif; font-style: italic; font-size: 16px; min-height: 22px; }

.shoematch-results-wrap { display: grid; grid-template-columns: minmax(0,2.15fr) minmax(260px,.85fr); gap: 20px; align-items: start; }
.shoematch-results-card, .shoematch-side-card, .shoematch-popular {
  background: linear-gradient(180deg, color-mix(in srgb, var(--sm-panel) 96%, transparent), color-mix(in srgb, var(--sm-panel-2) 96%, transparent));
  border: 1px solid var(--sm-line);
  border-radius: 20px;
  box-shadow: var(--sm-shadow-soft), inset 0 1px 0 rgba(255,255,255,.035);
  transition: background .28s ease, border-color .28s ease, box-shadow .28s ease;
}
.shoematch-results-card { padding: 26px; min-width: 0; }
.shoematch-result-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 13px; }
.shoematch-root .shoematch-result-title {
  font-family: ui-serif, "Iowan Old Style", Georgia, serif;
  font-size: clamp(26px, 3vw, 34px);
  line-height: 1.14;
  letter-spacing: -.025em;
  font-weight: 650 !important;
  margin: 7px 0 6px;
}
.shoematch-interpretation { color: var(--sm-soft); font-size: 12px; }
.shoematch-result-message { border-top: 1px solid var(--sm-line); padding: 12px 0; color: var(--sm-muted); font-size: 13px; }
.shoematch-results { border-top: 1px solid var(--sm-line); }
.shoematch-result-item { border-bottom: 1px solid var(--sm-line); }
.shoematch-result-item:last-child { border-bottom: 0; }
.shoematch-result-row {
  width: 100%;
  display: grid;
  grid-template-columns: 42px 40px minmax(0,1fr) auto 32px;
  gap: 14px;
  align-items: center;
  padding: 17px 4px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--sm-ink);
  text-align: left;
  cursor: pointer;
  appearance: none;
  transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
}
.shoematch-result-row:not(.shoematch-skeleton):hover { background: linear-gradient(90deg, var(--sm-accent-soft), transparent 82%); transform: translateX(2px); }
.shoematch-result-row:focus-visible { outline: 3px solid color-mix(in srgb, var(--sm-accent) 24%, transparent); outline-offset: 2px; }
.shoematch-result-item.is-open > .shoematch-result-row { background: linear-gradient(90deg, var(--sm-accent-soft), transparent 86%); }
.shoematch-row-enter { animation: shoematchFade .3s cubic-bezier(.2,.75,.3,1) both; }
.shoematch-row-enter:nth-child(2){animation-delay:.025s}.shoematch-row-enter:nth-child(3){animation-delay:.05s}.shoematch-row-enter:nth-child(4){animation-delay:.075s}.shoematch-row-enter:nth-child(5){animation-delay:.1s}.shoematch-row-enter:nth-child(6){animation-delay:.125s}.shoematch-row-enter:nth-child(7){animation-delay:.15s}.shoematch-row-enter:nth-child(8){animation-delay:.175s}
@keyframes shoematchFade { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
.shoematch-rank { font-family: ui-serif, Georgia, serif; font-style: italic; color: var(--sm-soft); }
.shoematch-visual {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
}
.shoematch-swatch { border-radius: 50%; background: var(--swatch); border: 1px solid color-mix(in srgb, var(--sm-heading) 18%, transparent); box-shadow: inset 0 0 0 3px rgba(255,255,255,.09), 0 4px 10px rgba(0,0,0,.11); }
.shoematch-visual-icon {
  border-radius: 14px;
  border: 1px solid var(--sm-line-strong);
  background: linear-gradient(180deg, color-mix(in srgb, var(--sm-panel) 94%, transparent), color-mix(in srgb, var(--sm-panel-3) 92%, transparent));
  color: var(--sm-accent);
  box-shadow: var(--sm-shadow-soft), inset 0 1px 0 rgba(255,255,255,.06);
  padding: 6px;
}
.shoematch-visual-icon svg { width: 100%; height: 100%; display: block; }
.shoematch-result-main { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.shoematch-result-main strong { color: var(--sm-heading) !important; font-family: ui-serif, Georgia, serif; font-size: 20px; font-weight: 650; }
.shoematch-result-main small { color: var(--sm-muted) !important; font-size: 13px; line-height: 1.5; }
.shoematch-score { text-align: right; display: flex; flex-direction: column; gap: 3px; }
.shoematch-stars { color: var(--sm-accent); letter-spacing: 1px; font-size: 13px; white-space: nowrap; }
.shoematch-score strong { color: var(--sm-heading) !important; font-weight: 850; }
.shoematch-expand-icon {
  width: 30px;
  height: 30px;
  border: 1px solid var(--sm-line);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--sm-accent);
  background: color-mix(in srgb, var(--sm-panel) 82%, transparent);
  transition: transform .22s ease, border-color .18s ease, background .18s ease;
}
.shoematch-expand-icon svg { width: 17px; height: 17px; display: block; }
.shoematch-result-item.is-open .shoematch-expand-icon { transform: rotate(180deg); border-color: var(--sm-line-strong); background: var(--sm-accent-soft); }
.shoematch-tip-panel { padding: 0 8px 20px 96px; animation: shoematchTipReveal .24s ease both; }
@keyframes shoematchTipReveal { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
.shoematch-tip-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--sm-line);
  border-radius: 15px;
  background: color-mix(in srgb, var(--sm-panel-2) 76%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.shoematch-tip-block { min-width: 0; padding: 4px 6px; }
.shoematch-tip-block > span { display: block; margin-bottom: 5px; color: var(--sm-accent); text-transform: uppercase; letter-spacing: .11em; font-size: 10px; font-weight: 850; }
.shoematch-tip-block p { margin: 0; color: var(--sm-muted) !important; font-size: 12.5px; line-height: 1.58; }
.shoematch-tip-best, .shoematch-tip-quick { border-top: 1px solid var(--sm-line); padding-top: 12px; }
.shoematch-tip-quick p { color: var(--sm-heading) !important; font-weight: 600; }

.shoematch-side-card { padding: 28px; position: sticky; top: 24px; }
.shoematch-root .shoematch-side-card h3 { font-family: ui-serif, Georgia, serif; font-size: 28px; line-height: 1.2; font-weight: 650 !important; letter-spacing: -.02em; margin: 10px 0; }
.shoematch-side-card p { color: var(--sm-muted) !important; line-height: 1.72; font-size: 14px; }
.shoematch-understands { display: flex; flex-wrap: wrap; gap: 7px; margin: 17px 0 22px; }
.shoematch-understands span { border: 1px solid var(--sm-line); background: var(--sm-accent-soft); color: var(--sm-muted); border-radius: 999px; padding: 7px 9px; font-size: 11px; }
.shoematch-rule { display: flex; gap: 12px; align-items: center; padding: 11px 0; border-top: 1px solid var(--sm-line); font-size: 13px; }
.shoematch-rule span { color: var(--sm-accent); letter-spacing: .5px; }
.shoematch-rule strong { color: var(--sm-heading) !important; }

.shoematch-popular { padding: 22px 24px; margin-top: 20px; display: flex; gap: 22px; align-items: center; justify-content: space-between; content-visibility: auto; contain-intrinsic-size: 90px; }
.shoematch-popular p { margin: 4px 0 0; color: var(--sm-soft) !important; font-size: 12px; }
.shoematch-chips { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.shoematch-chip { padding: 9px 13px; }
.shoematch-error { color: var(--sm-danger); padding: 15px 0; }

.shoematch-skeleton > div, .shoematch-skeleton > span {
  display: block;
  border-radius: 8px;
  background: linear-gradient(90deg, var(--sm-panel-2), var(--sm-panel-3), var(--sm-panel-2));
  background-size: 200% 100%;
  animation: shoematchShimmer 1.05s linear infinite;
  height: 14px;
}
.shoematch-skeleton > span { width: 32px; height: 32px; border-radius: 50%; }
.shoematch-skeleton > div:nth-child(1){width:22px}.shoematch-skeleton > div:nth-child(3){width:75%;height:32px}.shoematch-skeleton > div:nth-child(4){width:78px;height:26px}
@keyframes shoematchShimmer { to { background-position: -200% 0; } }

.shoematch-root.is-searching .shoematch-results-card { box-shadow: 0 16px 44px color-mix(in srgb, var(--sm-accent) 10%, transparent); }
.shoematch-root.is-updated .shoematch-results-card { animation: shoematchCardPulse .42s ease; }
@keyframes shoematchCardPulse { 0% { transform: translateY(2px); } 100% { transform: translateY(0); } }

.shoematch-seo-main { max-width: 1500px; margin: 0 auto; padding: 20px; }
.shoematch-seo-intro { max-width: 900px; margin: 20px auto; color: #5b554c; line-height: 1.7; }
.shoematch-seo-related { max-width: 1100px; margin: 24px auto 64px; }
.shoematch-seo-related a { display: inline-block; margin: 5px; padding: 8px 11px; border: 1px solid #ddd; border-radius: 999px; text-decoration: none; }

@media (max-width: 1120px) {
  .shoematch-root.is-color-check .shoematch-builder, .shoematch-root.is-shoe-check .shoematch-builder { grid-template-columns: 1fr 1fr 1fr; }
  .shoematch-root.is-color-check .shoematch-phrase, .shoematch-root.is-shoe-check .shoematch-phrase { display: none; }
  .shoematch-root.is-color-check .shoematch-search, .shoematch-root.is-shoe-check .shoematch-search { grid-column: 1 / -1; }
}
@media (max-width: 980px) {
  .shoematch-builder { grid-template-columns: 1fr 1fr; }
  .shoematch-phrase { display: none; }
  .shoematch-search { grid-column: 1 / -1; }
  .shoematch-results-wrap { grid-template-columns: 1fr; }
  .shoematch-side-card { position: static; }
  .shoematch-popular { align-items: flex-start; flex-direction: column; }
  .shoematch-chips { justify-content: flex-start; }
}
@media (max-width: 640px) {
  .shoematch-root { border-radius: 20px; margin: 12px auto; }
  .shoematch-shell { padding: 17px 12px 30px; }
  .shoematch-topbar { padding-bottom: 15px; }
  .shoematch-badge { display: none; }
  .shoematch-brand { font-size: 20px; }
  .shoematch-logo { width: 34px; height: 34px; }
  .shoematch-theme-toggle { padding: 7px 10px; }
  .shoematch-theme-label { display: none; }
  .shoematch-hero { margin-top: 34px; }
  .shoematch-root .shoematch-hero h1 { font-size: clamp(36px, 11.4vw, 47px); letter-spacing: -.04em; }
  .shoematch-hero > p { font-size: 15px; }
  .shoematch-smart-search { grid-template-columns: auto 1fr; padding: 8px 9px 8px 12px; }
  .shoematch-smart-input { height: 50px !important; font-size: 15px !important; }
  .shoematch-smart-button { grid-column: 1 / -1; min-height: 48px; }
  .shoematch-example-row { justify-content: flex-start; }
  .shoematch-builder, .shoematch-root.is-color-check .shoematch-builder, .shoematch-root.is-shoe-mode .shoematch-builder, .shoematch-root.is-shoe-check .shoematch-builder { grid-template-columns: 1fr; }
  .shoematch-builder > * { order: initial !important; }
  .shoematch-search { grid-column: auto; }
  .shoematch-results-card { padding: 18px; }
  .shoematch-result-row { grid-template-columns: 28px 34px minmax(0,1fr) 30px; gap: 10px; padding: 15px 0; }
  .shoematch-visual { width: 34px; height: 34px; }
  .shoematch-score { grid-column: 3; text-align: left; flex-direction: row; align-items: center; gap: 10px; }
  .shoematch-expand-icon { grid-column: 4; grid-row: 1 / span 2; width: 28px; height: 28px; }
  .shoematch-tip-panel { padding: 0 0 16px; }
  .shoematch-tip-grid { grid-template-columns: 1fr; padding: 12px; }
  .shoematch-tip-best, .shoematch-tip-quick { border-top: 1px solid var(--sm-line); padding-top: 11px; }
  .shoematch-root .shoematch-result-title { font-size: 25px; }
  .shoematch-live { display: none; }
  .shoematch-side-card { padding: 22px; }
  .shoematch-popular { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .shoematch-root * { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
.shoematch-tip-panel[hidden] { display: none !important; }
.shoematch-skeleton { cursor: default; }

/* v0.5 search intelligence UI */
.shoematch-smart-search-wrap { position: relative; z-index: 12; }
.shoematch-autocomplete {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 8px);
  background: color-mix(in srgb, var(--sm-panel) 98%, transparent);
  border: 1px solid var(--sm-line-strong);
  border-radius: 16px;
  padding: 8px;
  box-shadow: 0 24px 64px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(18px);
  max-height: 340px;
  overflow: auto;
}
.shoematch-autocomplete[hidden] { display: none !important; }
.shoematch-suggestion {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 12px;
  border: 0;
  border-radius: 11px;
  background: transparent;
  color: var(--sm-heading);
  text-align: left;
  cursor: pointer;
  transition: background .16s ease, transform .16s ease;
}
.shoematch-suggestion:hover,.shoematch-suggestion.is-active { background: var(--sm-accent-soft); transform: translateX(2px); }
.shoematch-suggestion span { font-weight: 700; font-size: 13px; }
.shoematch-suggestion small { color: var(--sm-soft); text-transform: uppercase; letter-spacing: .08em; font-size: 9px; white-space: nowrap; }

.shoematch-clarification {
  margin: 16px auto 0;
  max-width: 900px;
  padding: 14px 16px;
  border: 1px solid var(--sm-line-strong);
  border-radius: 15px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--sm-accent-soft) 74%, var(--sm-panel)), var(--sm-panel));
  text-align: left;
}
.shoematch-clarification[hidden] { display: none !important; }
.shoematch-clarification strong { display: block; color: var(--sm-heading)!important; font-size: 13px; margin-bottom: 10px; }
.shoematch-clarification > div { display: flex; flex-wrap: wrap; gap: 8px; }
.shoematch-clarify-chip,.shoematch-related-chip {
  border: 1px solid var(--sm-line);
  background: var(--sm-panel);
  color: var(--sm-muted);
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease;
}
.shoematch-clarify-chip:hover,.shoematch-related-chip:hover { transform: translateY(-1px); border-color: var(--sm-line-strong); background: var(--sm-accent-soft); color: var(--sm-heading); }

.shoematch-related-searches {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 22px;
  border-radius: 18px;
  border: 1px solid var(--sm-line);
  background: linear-gradient(180deg, color-mix(in srgb,var(--sm-panel) 96%,transparent), color-mix(in srgb,var(--sm-panel-2) 96%,transparent));
  box-shadow: var(--sm-shadow-soft);
}
.shoematch-related-searches[hidden] { display: none !important; }
.shoematch-related-searches p { margin: 4px 0 0; color: var(--sm-soft)!important; font-size: 12px; }
.shoematch-related-chips { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }

.shoematch-feedback {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--sm-line);
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 9px 14px;
}
.shoematch-feedback > span { color: var(--sm-muted); font-size: 12px; font-weight: 750; }
.shoematch-feedback > div { display: flex; gap: 7px; }
.shoematch-feedback-button {
  border: 1px solid var(--sm-line);
  background: var(--sm-panel);
  color: var(--sm-muted);
  border-radius: 999px;
  min-height: 34px;
  padding: 6px 10px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  transition: transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease;
}
.shoematch-feedback-button:hover,.shoematch-feedback-button.is-selected { transform: translateY(-1px); border-color: var(--sm-line-strong); background: var(--sm-accent-soft); color: var(--sm-heading); }
.shoematch-feedback-status { grid-column: 1/-1; color: var(--sm-accent)!important; min-height: 14px; font-size: 10px; }

@media (max-width: 720px) {
  .shoematch-autocomplete { top: calc(100% + 7px); max-height: 300px; }
  .shoematch-related-searches { align-items: flex-start; flex-direction: column; }
  .shoematch-related-chips { justify-content: flex-start; }
  .shoematch-feedback { grid-template-columns: 1fr; }
  .shoematch-feedback-status { grid-column: auto; }
}

/* v0.8 SEO hub pages */
.shoematch-hub-main{max-width:1280px;margin:0 auto;padding:36px 22px 72px;color:#24211d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.shoematch-hub-hero{padding:54px clamp(24px,5vw,68px);border-radius:28px;background:radial-gradient(circle at 85% 15%,rgba(214,164,83,.2),transparent 28%),linear-gradient(135deg,#151616,#24231f);color:#fff;box-shadow:0 24px 70px rgba(20,18,14,.16)}
.shoematch-hub-hero>span{display:block;color:#e0b66d;font-size:11px;font-weight:850;letter-spacing:.16em}.shoematch-hub-hero h1{color:#fff!important;font-family:ui-serif,Georgia,serif;font-size:clamp(38px,5vw,62px);line-height:1.03;letter-spacing:-.04em;margin:12px 0 16px}.shoematch-hub-hero p{max-width:760px;color:#d5d0c7!important;font-size:16px;line-height:1.7}.shoematch-hub-meta{display:flex;align-items:center;gap:10px;margin-top:22px;color:#bfb8ad;font-size:12px}.shoematch-hub-meta strong{color:#f0c777}.shoematch-hub-meta i{width:4px;height:4px;border-radius:50%;background:#786f63}
.shoematch-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.shoematch-hub-card{display:flex;flex-direction:column;min-height:210px;padding:24px;border:1px solid #e8e1d6;border-radius:20px;background:#fffdf9;color:#28231c;text-decoration:none;box-shadow:0 10px 30px rgba(65,50,30,.05);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.shoematch-hub-card:hover{transform:translateY(-3px);border-color:#d7b77e;box-shadow:0 18px 42px rgba(65,50,30,.1)}.shoematch-hub-card-kicker{color:#a87328;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:850}.shoematch-hub-card h2{margin:8px 0 8px;color:#201b15!important;font-family:ui-serif,Georgia,serif;font-size:26px;line-height:1.12}.shoematch-hub-card p{color:#6c6257!important;line-height:1.58;font-size:13px;flex:1}.shoematch-hub-card>div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee7dc;padding-top:13px;margin-top:12px}.shoematch-hub-card>div span{color:#7a6d5e;font-size:11px}.shoematch-hub-card>div b{color:#a87328;font-size:11px}.shoematch-hub-footer{max-width:860px;margin:42px auto 0;text-align:center}.shoematch-hub-footer h2{font-family:ui-serif,Georgia,serif;font-size:30px}.shoematch-hub-footer p{color:#70675d;line-height:1.7}
@media(max-width:900px){.shoematch-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.shoematch-hub-main{padding:18px 12px 48px}.shoematch-hub-hero{padding:34px 22px;border-radius:22px}.shoematch-hub-grid{grid-template-columns:1fr}.shoematch-hub-card{min-height:180px}}
.shoematch-parent-hub{font-weight:750;border-color:#cba45e!important;background:#fff7e9!important}

/* v0.9 evidence + SEO quality content */
.shoematch-evidence{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin-top:7px;padding:4px 8px;border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:999px;font-size:10px!important;font-weight:750;line-height:1.2;opacity:.72;letter-spacing:.01em}
.shoematch-guide-content{margin:28px auto 0;max-width:1120px;padding:0 22px;color:var(--shoematch-text,#1a1c22)}
.shoematch-guide-card{border:1px solid var(--shoematch-line,#e7e1d7);background:var(--shoematch-panel,#fff);border-radius:22px;padding:24px;box-shadow:0 16px 45px rgba(18,20,25,.05)}
.shoematch-guide-card+.shoematch-guide-card{margin-top:16px}.shoematch-guide-card>span{display:block;margin-bottom:8px;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;opacity:.6}.shoematch-guide-card h2{margin:0 0 10px;font-size:clamp(22px,3vw,34px);line-height:1.1}.shoematch-guide-card>p{margin:0;max-width:840px;font-size:15px;line-height:1.75;opacity:.78}.shoematch-guide-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}.shoematch-guide-list{display:grid;gap:10px;margin-top:16px}.shoematch-guide-match{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-top:1px solid var(--shoematch-line,#ece7de)}.shoematch-guide-match:first-child{border-top:0;padding-top:0}.shoematch-guide-match strong{display:block;font-size:14px}.shoematch-guide-match small{display:block;margin-top:4px;line-height:1.45;opacity:.65}.shoematch-guide-match b{font-size:16px}.shoematch-guide-checks{display:grid;gap:11px;margin-top:14px}.shoematch-guide-checks p{position:relative;margin:0;padding-left:22px;font-size:13px;line-height:1.6;opacity:.76}.shoematch-guide-checks p:before{content:'✓';position:absolute;left:0;top:0;font-weight:900}.shoematch-guide-confidence{display:inline-flex;margin-top:12px;padding:6px 10px;border-radius:999px;background:rgba(184,137,68,.09);font-size:11px;font-weight:750}.shoematch-smart-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.shoematch-smart-links a{display:inline-flex;padding:8px 11px;border:1px solid var(--shoematch-line,#e7e1d7);border-radius:999px;text-decoration:none;color:inherit;font-size:12px;font-weight:700}.shoematch-smart-links a:hover{transform:translateY(-1px)}
@media(max-width:780px){.shoematch-guide-grid{grid-template-columns:1fr}.shoematch-guide-content{padding:0 14px}.shoematch-guide-card{padding:18px}.shoematch-guide-match{grid-template-columns:1fr auto}}

/* v1.0 accessibility and motion hardening */
.shoematch-root :where(button,a,input,select):focus-visible{outline:3px solid currentColor;outline-offset:3px}.shoematch-root .shoematch-result-toggle:focus-visible,.shoematch-root .shoematch-feedback-button:focus-visible,.shoematch-root .shoematch-suggestion:focus-visible{outline:3px solid #d4a85f;outline-offset:2px}.shoematch-root button,.shoematch-root select,.shoematch-root input{touch-action:manipulation}.shoematch-root .shoematch-feedback-button{min-height:40px}.shoematch-root .shoematch-result-toggle{min-height:58px}
@media(prefers-reduced-motion:reduce){.shoematch-root *,.shoematch-root *::before,.shoematch-root *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
/* v1.1 deeper result evidence */
.shoematch-tip-watch,
.shoematch-tip-meta { border-top: 1px solid var(--sm-line); padding-top: 12px; }
.shoematch-tip-watch > span { color: var(--sm-heading); }
.shoematch-tip-meta { grid-column: span 2; }
.shoematch-tip-meta p { font-size: 11.75px; opacity: .92; }
@media (max-width: 640px) {
  .shoematch-tip-meta { grid-column: auto; }
}

/* v1.3 utility feedback dimensions */
.shoematch-feedback .shoematch-feedback-dimensions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}
.shoematch-feedback-dimension{border:1px solid var(--sm-line);background:transparent;color:var(--sm-soft);border-radius:999px;min-height:30px;padding:5px 9px;cursor:pointer;font-size:10px;font-weight:750;transition:border-color .16s ease,background .16s ease,color .16s ease}
.shoematch-feedback-dimension:hover,.shoematch-feedback-dimension.is-selected{border-color:var(--sm-line-strong);background:var(--sm-accent-soft);color:var(--sm-heading)}
.shoematch-feedback .shoematch-feedback-actions{display:flex;gap:7px;justify-content:flex-end}
.shoematch-root .shoematch-feedback-dimension:focus-visible{outline:3px solid #d4a85f;outline-offset:2px}
@media(max-width:720px){.shoematch-feedback .shoematch-feedback-actions{justify-content:flex-start}}

/* ============================================================
 * ShoeMatch v2 Step 5 — Fast UI
 * Approved direction: clean white/teal, data-first, mobile-first.
 * Scoped to .shoematch-ui-v2 so legacy SEO/support surfaces remain stable.
 * ============================================================ */
.shoematch-root.shoematch-ui-v2 {
  --sm-bg: #f7f8f7;
  --sm-bg-soft: #ffffff;
  --sm-panel: #ffffff;
  --sm-panel-2: #f7f9f8;
  --sm-panel-3: #eef4f2;
  --sm-line: #e2e8e5;
  --sm-line-strong: #cdd9d5;
  --sm-heading: #17211f;
  --sm-ink: #26312f;
  --sm-muted: #65706d;
  --sm-soft: #87918e;
  --sm-accent: #08756d;
  --sm-accent-2: #0b8a80;
  --sm-accent-soft: #e6f3f1;
  --sm-button-ink: #ffffff;
  --sm-input-bg: #ffffff;
  --sm-chip-bg: #ffffff;
  --sm-shadow: 0 20px 60px rgba(31, 50, 46, .08);
  --sm-shadow-soft: 0 6px 22px rgba(31, 50, 46, .06);
  --sm-danger: #a33c31;
  --sm-warm: #f0a326;
  max-width: 1600px;
  margin: 14px auto;
  border-radius: 24px;
  border-color: var(--sm-line);
  background: var(--sm-bg);
  box-shadow: var(--sm-shadow);
  color-scheme: light;
}
.shoematch-root.shoematch-ui-v2[data-theme="dark"] {
  --sm-bg: #111816;
  --sm-bg-soft: #121b18;
  --sm-panel: #18221f;
  --sm-panel-2: #1b2824;
  --sm-panel-3: #22332e;
  --sm-line: #2a3a35;
  --sm-line-strong: #3b514a;
  --sm-heading: #f6fbf9;
  --sm-ink: #e1ece8;
  --sm-muted: #a8b8b2;
  --sm-soft: #83948e;
  --sm-accent: #62cbbf;
  --sm-accent-2: #7bd8ce;
  --sm-accent-soft: #173a34;
  --sm-button-ink: #0d1e1a;
  --sm-input-bg: #141e1b;
  --sm-chip-bg: #17231f;
  --sm-shadow: 0 24px 70px rgba(0,0,0,.26);
  --sm-shadow-soft: 0 8px 26px rgba(0,0,0,.20);
  color-scheme: dark;
  background: var(--sm-bg);
}
.shoematch-root.shoematch-ui-v2[data-theme="auto"] { color-scheme: light; background: var(--sm-bg); }

.shoematch-ui-v2 .shoematch-shell { padding: 0 24px 34px; }
.shoematch-ui-v2 .shoematch-topbar {
  min-height: 66px;
  padding: 0 4px;
  border-bottom: 1px solid var(--sm-line);
  background: var(--sm-panel);
  position: relative;
  z-index: 20;
}
.shoematch-ui-v2 .shoematch-brand {
  text-decoration: none;
  gap: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  letter-spacing: -.035em;
  color: var(--sm-heading);
}
.shoematch-ui-v2 .shoematch-brand strong { color: var(--sm-accent); font-weight: 600; }
.shoematch-ui-v2 .shoematch-app-nav { display: flex; align-items: center; gap: 34px; margin-left: auto; margin-right: auto; }
.shoematch-ui-v2 .shoematch-app-nav a {
  position: relative;
  color: var(--sm-muted);
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  padding: 24px 0 20px;
}
.shoematch-ui-v2 .shoematch-app-nav a:hover,
.shoematch-ui-v2 .shoematch-app-nav a.is-active { color: var(--sm-accent); }
.shoematch-ui-v2 .shoematch-app-nav a.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  border-radius: 2px;
  background: var(--sm-accent);
}
.shoematch-ui-v2 .shoematch-top-actions { gap: 8px; }
.shoematch-ui-v2 .shoematch-speed-badge {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 10px;
  border-radius: 10px;
  border: 1px solid var(--sm-line);
  color: var(--sm-muted);
  background: var(--sm-panel-2);
  font-size: 11px;
  font-weight: 700;
}
.shoematch-ui-v2 .shoematch-status-dot { background: var(--sm-accent); box-shadow: 0 0 0 3px rgba(8,117,109,.10); }
.shoematch-ui-v2 .shoematch-theme-toggle {
  min-width: 40px;
  min-height: 40px;
  padding: 0 10px;
  border-radius: 10px;
  box-shadow: none;
}

.shoematch-ui-v2 .shoematch-hero {
  max-width: none;
  margin: 0;
  padding: 18px 4px 16px;
  text-align: left;
}
.shoematch-ui-v2 .shoematch-intro-copy { margin-bottom: 12px; }
.shoematch-ui-v2 .shoematch-intro-copy .shoematch-eyebrow { display: none; }
.shoematch-ui-v2 .shoematch-intro-copy h1 {
  margin: 0 0 4px !important;
  font-family: inherit !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  letter-spacing: -.025em !important;
  line-height: 1.2 !important;
}
.shoematch-ui-v2 .shoematch-intro-copy > p {
  margin: 0;
  max-width: none;
  color: var(--sm-muted) !important;
  font-size: 12px;
  line-height: 1.5;
}
.shoematch-ui-v2 .shoematch-smart-search-wrap { max-width: none; }
.shoematch-ui-v2 .shoematch-smart-search {
  min-height: 50px;
  padding: 0 0 0 14px;
  grid-template-columns: auto minmax(0,1fr) 58px;
  gap: 8px;
  border-radius: 11px;
  border: 1px solid var(--sm-line-strong);
  background: var(--sm-input-bg);
  box-shadow: 0 2px 8px rgba(31,50,46,.04);
  transform: none;
}
.shoematch-ui-v2 .shoematch-smart-search:focus-within {
  border-color: var(--sm-accent);
  box-shadow: 0 0 0 3px rgba(8,117,109,.10);
  transform: none;
}
.shoematch-ui-v2 .shoematch-search-icon { width: 19px; height: 19px; color: var(--sm-muted); }
.shoematch-ui-v2 .shoematch-search-icon svg { width: 18px; height: 18px; }
.shoematch-ui-v2 .shoematch-smart-input {
  height: 48px !important;
  font-size: 14px !important;
  font-weight: 600;
  color: var(--sm-heading) !important;
}
.shoematch-ui-v2 .shoematch-smart-button {
  min-width: 58px;
  min-height: 48px;
  height: 48px;
  padding: 0;
  border-radius: 0 10px 10px 0;
  border: 0;
  background: var(--sm-accent);
  color: #fff !important;
  box-shadow: none;
  font-size: 0;
}
.shoematch-ui-v2 .shoematch-smart-button span { font-size: 20px; display: inline-block; transform: rotate(-8deg); }
.shoematch-ui-v2 .shoematch-smart-button:hover { background: var(--sm-accent-2); box-shadow: none; transform: none; }
.shoematch-ui-v2 .shoematch-example-row {
  justify-content: flex-start;
  margin-top: 9px;
  gap: 6px;
  font-size: 10px;
}
.shoematch-ui-v2 .shoematch-query-chip {
  padding: 5px 9px;
  font-size: 10px;
  background: var(--sm-panel);
}
.shoematch-ui-v2 .shoematch-divider { display: none; }
.shoematch-ui-v2 .shoematch-query-preview { display: none; }

.shoematch-ui-v2 .shoematch-builder,
.shoematch-ui-v2.is-color-check .shoematch-builder,
.shoematch-ui-v2.is-shoe-mode .shoematch-builder,
.shoematch-ui-v2.is-shoe-check .shoematch-builder {
  display: flex;
  align-items: stretch;
  gap: 7px;
  overflow-x: auto;
  scrollbar-width: thin;
  margin-top: 12px;
  padding: 0 0 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.shoematch-ui-v2 .shoematch-builder::-webkit-scrollbar { height: 4px; }
.shoematch-ui-v2 .shoematch-builder::-webkit-scrollbar-thumb { background: var(--sm-line-strong); border-radius: 999px; }
.shoematch-ui-v2 .shoematch-phrase { display: none !important; }
.shoematch-ui-v2 .shoematch-filter-control {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 5px;
  min-width: max-content;
  min-height: 38px;
  padding-left: 10px;
  border: 1px solid var(--sm-line);
  border-radius: 9px;
  background: var(--sm-panel);
  color: var(--sm-heading);
  white-space: nowrap;
}
.shoematch-ui-v2 .shoematch-filter-control[hidden] { display: none !important; }
.shoematch-ui-v2 .shoematch-filter-control > span {
  color: var(--sm-soft);
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .055em;
}
.shoematch-ui-v2 .shoematch-filter-control select,
.shoematch-ui-v2 .shoematch-builder select {
  min-height: 36px;
  height: 36px;
  width: auto;
  max-width: 190px;
  padding: 0 28px 0 3px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--sm-heading);
  box-shadow: none;
  font-size: 11px;
  font-weight: 750;
}
.shoematch-ui-v2 .shoematch-filter-control:focus-within { border-color: var(--sm-accent); box-shadow: 0 0 0 2px rgba(8,117,109,.08); }
.shoematch-ui-v2 .shoematch-search {
  flex: 0 0 auto;
  min-height: 38px;
  padding: 0 15px;
  border: 0;
  border-radius: 9px;
  background: var(--sm-accent);
  color: #fff !important;
  box-shadow: none;
  font-size: 11px;
}
.shoematch-ui-v2 .shoematch-search:hover { background: var(--sm-accent-2); transform: none; box-shadow: none; }

.shoematch-ui-v2 .shoematch-autocomplete {
  border-color: var(--sm-line-strong);
  border-radius: 12px;
  background: var(--sm-panel);
  backdrop-filter: none;
  box-shadow: 0 16px 50px rgba(31,50,46,.14);
}
.shoematch-ui-v2 .shoematch-suggestion:hover,
.shoematch-ui-v2 .shoematch-suggestion.is-active { background: var(--sm-accent-soft); transform: none; }
.shoematch-ui-v2 .shoematch-clarification {
  max-width: none;
  margin-top: 10px;
  background: var(--sm-accent-soft);
  border-color: rgba(8,117,109,.18);
  border-radius: 10px;
}

.shoematch-ui-v2 .shoematch-results-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 18px;
  align-items: start;
  padding: 0 4px;
}
.shoematch-ui-v2 .shoematch-results-card,
.shoematch-ui-v2 .shoematch-side-card,
.shoematch-ui-v2 .shoematch-popular {
  background: var(--sm-panel);
  border: 1px solid var(--sm-line);
  border-radius: 14px;
  box-shadow: 0 2px 8px rgba(31,50,46,.035);
}
.shoematch-ui-v2 .shoematch-results-card { padding: 14px; }
.shoematch-ui-v2 .shoematch-result-header {
  align-items: flex-end;
  padding: 0 0 8px;
  gap: 14px;
}
.shoematch-ui-v2 .shoematch-kicker {
  color: var(--sm-accent);
  font-size: 9px;
  letter-spacing: .09em;
}
.shoematch-ui-v2 .shoematch-result-title {
  margin: 2px 0 0 !important;
  font-family: inherit !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
}
.shoematch-ui-v2 .shoematch-interpretation { color: var(--sm-muted); font-size: 10px; margin-top: 2px; }
.shoematch-ui-v2 .shoematch-result-message { color: var(--sm-muted); font-size: 10px; margin-bottom: 9px; }
.shoematch-ui-v2 .shoematch-why-button {
  border: 0;
  background: transparent;
  color: var(--sm-accent);
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
}

.shoematch-ui-v2 .shoematch-result-item {
  margin: 0 0 6px;
  border: 1px solid var(--sm-line);
  border-radius: 10px;
  background: var(--sm-panel);
  overflow: hidden;
}
.shoematch-ui-v2 .shoematch-result-item:last-child { margin-bottom: 0; }
.shoematch-ui-v2 .shoematch-result-item.is-open { border-color: rgba(8,117,109,.30); box-shadow: 0 4px 16px rgba(8,117,109,.07); }
.shoematch-ui-v2 .shoematch-result-row {
  width: 100%;
  display: grid;
  grid-template-columns: 26px 56px minmax(0,1fr) 98px 26px;
  align-items: center;
  gap: 9px;
  min-height: 62px;
  padding: 8px 10px;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
}
.shoematch-ui-v2 .shoematch-result-row:hover { background: var(--sm-panel-2); }
.shoematch-ui-v2 .shoematch-rank {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: var(--sm-accent);
  color: #fff;
  font-size: 10px;
  font-weight: 850;
}
.shoematch-ui-v2 .shoematch-visual {
  width: 52px;
  height: 44px;
  border: 0;
  border-radius: 8px;
  background: var(--sm-panel-2);
  color: var(--sm-muted);
}
.shoematch-ui-v2 .shoematch-visual-icon svg { width: 44px; height: 32px; }
.shoematch-ui-v2 .shoematch-swatch { width: 34px; height: 34px; border-radius: 50%; background: var(--swatch); border: 1px solid var(--sm-line-strong); justify-self: center; }
.shoematch-ui-v2 .shoematch-result-main { min-width: 0; }
.shoematch-ui-v2 .shoematch-result-main strong {
  display: block;
  color: var(--sm-heading);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.3;
}
.shoematch-ui-v2 .shoematch-result-main small {
  display: block;
  margin-top: 2px;
  color: var(--sm-muted);
  font-size: 9.5px;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.shoematch-ui-v2 .shoematch-evidence {
  display: inline-block;
  margin-top: 4px;
  padding: 2px 6px;
  border-radius: 999px;
  background: var(--sm-accent-soft);
  color: var(--sm-accent);
  font-size: 8px;
  font-weight: 750;
}
.shoematch-ui-v2 .shoematch-score { display: grid; justify-items: end; gap: 2px; }
.shoematch-ui-v2 .shoematch-score strong { color: var(--sm-accent); font-size: 19px; font-weight: 800; line-height: 1; }
.shoematch-ui-v2 .shoematch-stars { color: var(--sm-warm); font-size: 10px; letter-spacing: 0; }
.shoematch-ui-v2 .shoematch-expand-icon {
  width: 24px;
  height: 24px;
  border: 1px solid var(--sm-line);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--sm-muted);
}
.shoematch-ui-v2 .shoematch-expand-icon svg { width: 13px; height: 13px; transition: transform .18s ease; }
.shoematch-ui-v2 .shoematch-result-item.is-open .shoematch-expand-icon svg { transform: rotate(180deg); }

.shoematch-ui-v2 .shoematch-tip-panel {
  padding: 0 10px 10px;
  border-top: 1px solid var(--sm-line);
  background: #fbfcfb;
}
.shoematch-ui-v2[data-theme="dark"] .shoematch-tip-panel { background: var(--sm-panel-2); }
.shoematch-ui-v2 .shoematch-tip-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 0;
  padding: 8px 0 0;
  border: 0;
  background: transparent;
}
.shoematch-ui-v2 .shoematch-tip-block {
  min-width: 0;
  padding: 9px 12px;
  border-right: 1px solid var(--sm-line);
  border-bottom: 1px solid var(--sm-line);
}
.shoematch-ui-v2 .shoematch-tip-block:nth-child(3n) { border-right: 0; }
.shoematch-ui-v2 .shoematch-tip-block > span { color: var(--sm-heading); font-size: 9px; font-weight: 800; }
.shoematch-ui-v2 .shoematch-tip-block p { margin: 4px 0 0; color: var(--sm-muted); font-size: 9px; line-height: 1.45; }
.shoematch-ui-v2 .shoematch-feedback {
  margin: 8px 0 0;
  padding: 9px 10px;
  border: 1px solid var(--sm-line);
  border-radius: 8px;
  background: var(--sm-panel);
}
.shoematch-ui-v2 .shoematch-feedback > span { font-size: 9px; }
.shoematch-ui-v2 .shoematch-feedback-dimension,
.shoematch-ui-v2 .shoematch-feedback-button { font-size: 9px; min-height: 28px; }

.shoematch-ui-v2 .shoematch-side-stack { display: grid; gap: 10px; position: sticky; top: 12px; }
.shoematch-ui-v2 .shoematch-side-card { padding: 15px; }
.shoematch-ui-v2 .shoematch-side-card h3 { margin: 4px 0 10px !important; font-size: 14px; font-family: inherit !important; font-weight: 800 !important; letter-spacing: -.015em; }
.shoematch-ui-v2 .shoematch-side-card p { margin: 4px 0 10px; color: var(--sm-muted); font-size: 10px; line-height: 1.5; }
.shoematch-ui-v2 .shoematch-decision-list { display: grid; gap: 0; margin: 0 0 12px; }
.shoematch-ui-v2 .shoematch-decision-list > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 0;
  border-bottom: 1px solid var(--sm-line);
}
.shoematch-ui-v2 .shoematch-decision-list dt { color: var(--sm-soft); font-size: 9px; }
.shoematch-ui-v2 .shoematch-decision-list dd { margin: 0; color: var(--sm-heading); font-size: 10px; font-weight: 800; text-align: right; }
.shoematch-ui-v2 .shoematch-edit-profile {
  width: 100%;
  min-height: 34px;
  border: 1px solid var(--sm-line-strong);
  border-radius: 8px;
  background: var(--sm-panel);
  color: var(--sm-accent);
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}
.shoematch-ui-v2 .shoematch-related-searches { display: block; margin: 0; }
.shoematch-ui-v2 .shoematch-related-searches[hidden] { display: none !important; }
.shoematch-ui-v2 .shoematch-related-chips { display: grid; gap: 5px; }
.shoematch-ui-v2 .shoematch-related-chip {
  width: 100%;
  padding: 7px 9px;
  border: 1px solid var(--sm-line);
  border-radius: 8px;
  background: var(--sm-panel-2);
  color: var(--sm-heading);
  text-align: left;
  font-size: 9px;
  cursor: pointer;
}
.shoematch-ui-v2 .shoematch-related-chip:hover { border-color: var(--sm-accent); color: var(--sm-accent); }
.shoematch-ui-v2 .shoematch-intelligence-list { display: grid; gap: 7px; margin: 10px 0 0; padding: 0; list-style: none; }
.shoematch-ui-v2 .shoematch-intelligence-list li { position: relative; padding-left: 18px; color: var(--sm-muted); font-size: 10px; }
.shoematch-ui-v2 .shoematch-intelligence-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: -1px;
  display: grid;
  place-items: center;
  width: 13px;
  height: 13px;
  border: 1px solid var(--sm-accent);
  border-radius: 50%;
  color: var(--sm-accent);
  font-size: 8px;
  font-weight: 900;
}

.shoematch-ui-v2 .shoematch-popular {
  margin: 16px 4px 0;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.shoematch-ui-v2 .shoematch-popular p { margin: 2px 0 0; color: var(--sm-muted); font-size: 9px; }
.shoematch-ui-v2 .shoematch-chips { gap: 5px; }
.shoematch-ui-v2 .shoematch-chip { padding: 6px 9px; font-size: 9px; }
.shoematch-ui-v2 .shoematch-mobile-nav { display: none; }

.shoematch-ui-v2 .shoematch-error { padding: 18px; border: 1px dashed var(--sm-line-strong); border-radius: 10px; color: var(--sm-muted); background: var(--sm-panel-2); }
.shoematch-ui-v2 .shoematch-skeleton { min-height: 58px; margin-bottom: 6px; border: 1px solid var(--sm-line); border-radius: 10px; }
.shoematch-ui-v2 .shoematch-skeleton > div,
.shoematch-ui-v2 .shoematch-skeleton > span { background: var(--sm-panel-3); animation: shoematchShimmer 1.05s linear infinite; }

@media (max-width: 1100px) {
  .shoematch-ui-v2 .shoematch-results-wrap { grid-template-columns: minmax(0,1fr) 260px; gap: 12px; }
  .shoematch-ui-v2 .shoematch-app-nav { gap: 20px; }
  .shoematch-ui-v2 .shoematch-result-row { grid-template-columns: 24px 46px minmax(0,1fr) 84px 24px; }
  .shoematch-ui-v2 .shoematch-visual { width: 44px; }
}

@media (max-width: 860px) {
  .shoematch-root.shoematch-ui-v2 { margin: 0; border-radius: 0; border-left: 0; border-right: 0; box-shadow: none; }
  .shoematch-ui-v2 .shoematch-shell { padding: 0 14px 24px; }
  .shoematch-ui-v2 .shoematch-app-nav { display: none; }
  .shoematch-ui-v2 .shoematch-speed-badge { display: none; }
  .shoematch-ui-v2 .shoematch-topbar { min-height: 58px; position: sticky; top: 0; padding: 0 2px; }
  .shoematch-ui-v2 .shoematch-brand { font-size: 24px; }
  .shoematch-ui-v2 .shoematch-theme-label { display: none; }
  .shoematch-ui-v2 .shoematch-theme-toggle { width: 38px; height: 38px; min-height: 38px; }
  .shoematch-ui-v2 .shoematch-hero { padding: 12px 2px 12px; }
  .shoematch-ui-v2 .shoematch-intro-copy { display: none; }
  .shoematch-ui-v2 .shoematch-smart-search { min-height: 48px; grid-template-columns: minmax(0,1fr) 48px; padding-left: 10px; }
  .shoematch-ui-v2 .shoematch-search-icon { display: none; }
  .shoematch-ui-v2 .shoematch-smart-input { height: 46px !important; font-size: 12px !important; }
  .shoematch-ui-v2 .shoematch-smart-button { grid-column: auto; width: 48px; min-width: 48px; height: 46px; min-height: 46px; }
  .shoematch-ui-v2 .shoematch-example-row { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 2px; }
  .shoematch-ui-v2 .shoematch-example-row > * { flex: 0 0 auto; }
  .shoematch-ui-v2 .shoematch-builder,
  .shoematch-ui-v2.is-color-check .shoematch-builder,
  .shoematch-ui-v2.is-shoe-mode .shoematch-builder,
  .shoematch-ui-v2.is-shoe-check .shoematch-builder { display: flex; grid-template-columns: none; }
  .shoematch-ui-v2 .shoematch-filter-control { min-height: 35px; }
  .shoematch-ui-v2 .shoematch-filter-control select,
  .shoematch-ui-v2 .shoematch-builder select { min-height: 33px; height: 33px; max-width: 148px; font-size: 10px; }
  .shoematch-ui-v2 .shoematch-filter-control > span { font-size: 8px; }
  .shoematch-ui-v2 .shoematch-search { min-height: 35px; }
  .shoematch-ui-v2 .shoematch-results-wrap { grid-template-columns: 1fr; padding: 0 2px; }
  .shoematch-ui-v2 .shoematch-side-stack { position: static; grid-template-columns: 1fr 1fr; }
  .shoematch-ui-v2 .shoematch-decision-card { grid-column: 1 / -1; }
  .shoematch-ui-v2 .shoematch-popular { margin-left: 2px; margin-right: 2px; }
}

@media (max-width: 620px) {
  .shoematch-ui-v2 .shoematch-shell { padding: 0 10px 78px; }
  .shoematch-ui-v2 .shoematch-topbar { min-height: 54px; }
  .shoematch-ui-v2 .shoematch-brand { font-size: 23px; }
  .shoematch-ui-v2 .shoematch-hero { padding-top: 10px; }
  .shoematch-ui-v2 .shoematch-smart-search { border-radius: 10px; }
  .shoematch-ui-v2 .shoematch-smart-button { border-radius: 0 9px 9px 0; }
  .shoematch-ui-v2 .shoematch-example-row > span { display: none; }
  .shoematch-ui-v2 .shoematch-query-chip { font-size: 9px; }
  .shoematch-ui-v2 .shoematch-builder { margin-top: 9px; gap: 5px; }
  .shoematch-ui-v2 .shoematch-filter-control { padding-left: 8px; border-radius: 8px; }
  .shoematch-ui-v2 .shoematch-filter-control select,
  .shoematch-ui-v2 .shoematch-builder select { max-width: 130px; }
  .shoematch-ui-v2 .shoematch-results-card { padding: 0; border: 0; background: transparent; box-shadow: none; }
  .shoematch-ui-v2 .shoematch-result-header { padding: 3px 2px 8px; align-items: center; }
  .shoematch-ui-v2 .shoematch-result-title { font-size: 17px !important; }
  .shoematch-ui-v2 .shoematch-result-message { padding: 0 2px; margin-bottom: 8px; }
  .shoematch-ui-v2 .shoematch-why-button { font-size: 9px; }
  .shoematch-ui-v2 .shoematch-result-item { margin-bottom: 7px; border-radius: 11px; box-shadow: 0 2px 7px rgba(31,50,46,.035); }
  .shoematch-ui-v2 .shoematch-result-row {
    grid-template-columns: 22px 50px minmax(0,1fr) 62px 20px;
    gap: 6px;
    min-height: 78px;
    padding: 8px 7px;
  }
  .shoematch-ui-v2 .shoematch-rank { width: 20px; height: 20px; font-size: 9px; border-radius: 5px; }
  .shoematch-ui-v2 .shoematch-visual { width: 48px; height: 46px; }
  .shoematch-ui-v2 .shoematch-visual-icon svg { width: 42px; }
  .shoematch-ui-v2 .shoematch-result-main strong { font-size: 11px; }
  .shoematch-ui-v2 .shoematch-result-main small { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 8.5px; }
  .shoematch-ui-v2 .shoematch-evidence { font-size: 7px; margin-top: 3px; }
  .shoematch-ui-v2 .shoematch-score strong { font-size: 16px; }
  .shoematch-ui-v2 .shoematch-stars { font-size: 8px; }
  .shoematch-ui-v2 .shoematch-expand-icon { width: 20px; height: 20px; }
  .shoematch-ui-v2 .shoematch-tip-panel { padding: 0 7px 8px; }
  .shoematch-ui-v2 .shoematch-tip-grid { grid-template-columns: 1fr; padding-top: 6px; }
  .shoematch-ui-v2 .shoematch-tip-block { padding: 9px 5px; border-right: 0; }
  .shoematch-ui-v2 .shoematch-tip-block > span { color: var(--sm-accent); }
  .shoematch-ui-v2 .shoematch-tip-block p { font-size: 9px; }
  .shoematch-ui-v2 .shoematch-feedback { padding: 8px; }
  .shoematch-ui-v2 .shoematch-side-stack { grid-template-columns: 1fr; }
  .shoematch-ui-v2 .shoematch-decision-card { grid-column: auto; }
  .shoematch-ui-v2 .shoematch-side-card { padding: 13px; }
  .shoematch-ui-v2 .shoematch-related-chips { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 2px; }
  .shoematch-ui-v2 .shoematch-related-chip { width: auto; flex: 0 0 auto; white-space: nowrap; }
  .shoematch-ui-v2 .shoematch-popular { display: none; }
  .shoematch-ui-v2 .shoematch-mobile-nav {
    position: sticky;
    bottom: 8px;
    z-index: 30;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 3px;
    margin: 14px 0 0;
    padding: 5px;
    border: 1px solid var(--sm-line);
    border-radius: 14px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 12px 36px rgba(31,50,46,.15);
  }
  .shoematch-ui-v2[data-theme="dark"] .shoematch-mobile-nav { background: rgba(24,34,31,.96); }
  .shoematch-ui-v2 .shoematch-mobile-nav button {
    display: grid;
    place-items: center;
    gap: 2px;
    min-height: 43px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: var(--sm-muted);
    cursor: pointer;
  }
  .shoematch-ui-v2 .shoematch-mobile-nav button:first-child { color: var(--sm-accent); background: var(--sm-accent-soft); }
  .shoematch-ui-v2 .shoematch-mobile-nav span { font-size: 15px; line-height: 1; }
  .shoematch-ui-v2 .shoematch-mobile-nav small { font-size: 8px; font-weight: 800; }
}

@media (prefers-reduced-motion: reduce) {
  .shoematch-ui-v2 *, .shoematch-ui-v2 *::before, .shoematch-ui-v2 *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

/* ============================================================
 * ShoeMatch v2 Step 6 - Smooth interaction layer
 * Keeps Step 5 visuals while improving perceived speed, filter
 * ergonomics, progressive detail disclosure and state feedback.
 * ============================================================ */
.shoematch-root.shoematch-ui-v2 { position: relative; overflow: clip; }
.shoematch-ui-v2 .shoematch-progress {
  position: absolute;
  inset: 0 0 auto;
  z-index: 45;
  height: 3px;
  overflow: hidden;
  pointer-events: none;
}
.shoematch-ui-v2 .shoematch-progress span {
  display: block;
  width: 38%;
  height: 100%;
  background: var(--sm-accent);
  opacity: 0;
  transform: translateX(-120%);
}
.shoematch-ui-v2.is-searching .shoematch-progress span {
  opacity: 1;
  animation: shoematchProgress 1.05s ease-in-out infinite;
}
@keyframes shoematchProgress {
  0% { transform: translateX(-120%); }
  60% { transform: translateX(175%); }
  100% { transform: translateX(270%); }
}
.shoematch-ui-v2 .shoematch-search-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 24px;
  margin-top: 5px;
  color: var(--sm-soft);
  font-size: 9px;
}
.shoematch-ui-v2 .shoematch-search-status { color: var(--sm-muted); }
.shoematch-ui-v2 .shoematch-search-shortcut {
  padding: 3px 7px;
  border: 1px solid var(--sm-line);
  border-radius: 6px;
  background: var(--sm-panel-2);
  white-space: nowrap;
}
.shoematch-ui-v2 .shoematch-refine-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  min-height: 28px;
}
.shoematch-ui-v2 .shoematch-refine-summary {
  color: var(--sm-soft);
  font-size: 9px;
}
.shoematch-ui-v2 .shoematch-filter-toggle,
.shoematch-ui-v2 .shoematch-reset-filters {
  min-height: 28px;
  padding: 0 9px;
  border: 1px solid var(--sm-line);
  border-radius: 8px;
  background: var(--sm-panel);
  color: var(--sm-muted);
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: none;
}
.shoematch-ui-v2 .shoematch-filter-toggle { display: none; color: var(--sm-accent); }
.shoematch-ui-v2 .shoematch-reset-filters { margin-left: auto; }
.shoematch-ui-v2 .shoematch-filter-toggle:hover,
.shoematch-ui-v2 .shoematch-reset-filters:hover { border-color: var(--sm-accent); color: var(--sm-accent); }
.shoematch-ui-v2 .shoematch-active-filter-count {
  display: inline-grid;
  place-items: center;
  min-width: 17px;
  height: 17px;
  margin-left: 4px;
  padding: 0 4px;
  border-radius: 999px;
  background: var(--sm-accent);
  color: var(--sm-button-ink);
  font-size: 8px;
}
.shoematch-ui-v2 .shoematch-active-filter-count[hidden] { display: none !important; }
.shoematch-ui-v2 .shoematch-result-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 10px;
  margin-top: 3px;
  color: var(--sm-soft);
  font-size: 8px;
  font-weight: 700;
}
.shoematch-ui-v2 .shoematch-result-freshness { color: var(--sm-accent); }
.shoematch-ui-v2.has-stale-results .shoematch-results {
  opacity: .58;
  transform: translateY(1px);
  transition: opacity .16s ease, transform .16s ease;
  pointer-events: none;
}
.shoematch-ui-v2 .shoematch-results { transition: opacity .16s ease, transform .16s ease; }
.shoematch-ui-v2 .shoematch-result-item { content-visibility: auto; contain-intrinsic-size: 78px; }
.shoematch-ui-v2 .shoematch-more-details {
  display: none;
  width: 100%;
  min-height: 34px;
  margin: 7px 0 2px;
  border: 1px solid var(--sm-line);
  border-radius: 8px;
  background: var(--sm-panel-2);
  color: var(--sm-accent);
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
}
.shoematch-ui-v2 .shoematch-suggestion small { text-transform: capitalize; }
.shoematch-ui-v2 .shoematch-suggestion small::before { content: none; }
.shoematch-ui-v2 .shoematch-suggestion[role="option"] { scroll-margin: 4px; }

@media (max-width: 620px) {
  .shoematch-ui-v2 .shoematch-search-shortcut { display: none; }
  .shoematch-ui-v2 .shoematch-search-meta { min-height: 20px; margin-top: 3px; font-size: 8px; }
  .shoematch-ui-v2 .shoematch-refine-toolbar { margin-top: 6px; }
  .shoematch-ui-v2 .shoematch-filter-toggle { display: inline-flex; align-items: center; }
  .shoematch-ui-v2 .shoematch-refine-summary { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .shoematch-ui-v2 .shoematch-reset-filters { min-width: max-content; }
  .shoematch-ui-v2:not(.is-filters-open) .shoematch-builder,
  .shoematch-ui-v2:not(.is-filters-open).is-color-check .shoematch-builder,
  .shoematch-ui-v2:not(.is-filters-open).is-shoe-mode .shoematch-builder,
  .shoematch-ui-v2:not(.is-filters-open).is-shoe-check .shoematch-builder { display: none; }
  .shoematch-ui-v2.is-filters-open .shoematch-builder,
  .shoematch-ui-v2.is-filters-open.is-color-check .shoematch-builder,
  .shoematch-ui-v2.is-filters-open.is-shoe-mode .shoematch-builder,
  .shoematch-ui-v2.is-filters-open.is-shoe-check .shoematch-builder {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 6px;
    overflow: visible;
    margin-top: 7px;
    padding: 9px;
    border: 1px solid var(--sm-line);
    border-radius: 11px;
    background: var(--sm-panel-2);
    box-shadow: var(--sm-shadow-soft);
  }
  .shoematch-ui-v2.is-filters-open .shoematch-filter-control {
    min-width: 0;
    width: 100%;
    grid-template-columns: 1fr;
    gap: 0;
    padding: 5px 7px;
    background: var(--sm-panel);
  }
  .shoematch-ui-v2.is-filters-open .shoematch-filter-control select,
  .shoematch-ui-v2.is-filters-open .shoematch-builder select {
    width: 100%;
    max-width: none;
    padding-left: 0;
  }
  .shoematch-ui-v2.is-filters-open .shoematch-search { grid-column: 1 / -1; width: 100%; }
  .shoematch-ui-v2 .shoematch-result-meta { font-size: 7.5px; }
  .shoematch-ui-v2 .shoematch-tip-panel:not(.is-show-all) .shoematch-tip-grid .shoematch-tip-block:nth-child(n+7) { display: none; }
  .shoematch-ui-v2 .shoematch-more-details { display: block; }
  .shoematch-ui-v2 .shoematch-result-item.is-open { scroll-margin-top: 64px; }
}

/* v2.0.1 readability floor: keep result data legible on desktop and mobile. */
.shoematch-ui-v2 .shoematch-speed-badge,
.shoematch-ui-v2 .shoematch-intro-copy > p,
.shoematch-ui-v2 .shoematch-example-row,
.shoematch-ui-v2 .shoematch-query-chip,
.shoematch-ui-v2 .shoematch-filter-control > span,
.shoematch-ui-v2 .shoematch-filter-control select,
.shoematch-ui-v2 .shoematch-builder select,
.shoematch-ui-v2 .shoematch-search,
.shoematch-ui-v2 .shoematch-kicker,
.shoematch-ui-v2 .shoematch-interpretation,
.shoematch-ui-v2 .shoematch-result-message,
.shoematch-ui-v2 .shoematch-why-button,
.shoematch-ui-v2 .shoematch-rank,
.shoematch-ui-v2 .shoematch-result-main strong,
.shoematch-ui-v2 .shoematch-result-main small,
.shoematch-ui-v2 .shoematch-evidence,
.shoematch-ui-v2 .shoematch-stars,
.shoematch-ui-v2 .shoematch-tip-block > span,
.shoematch-ui-v2 .shoematch-tip-block p,
.shoematch-ui-v2 .shoematch-feedback > span,
.shoematch-ui-v2 .shoematch-feedback-dimension,
.shoematch-ui-v2 .shoematch-feedback-button,
.shoematch-ui-v2 .shoematch-feedback-status,
.shoematch-ui-v2 .shoematch-side-card p,
.shoematch-ui-v2 .shoematch-decision-list dt,
.shoematch-ui-v2 .shoematch-decision-list dd,
.shoematch-ui-v2 .shoematch-edit-profile,
.shoematch-ui-v2 .shoematch-related-chip,
.shoematch-ui-v2 .shoematch-intelligence-list li,
.shoematch-ui-v2 .shoematch-popular p,
.shoematch-ui-v2 .shoematch-chip,
.shoematch-ui-v2 .shoematch-more-details,
.shoematch-ui-v2 .shoematch-search-meta,
.shoematch-ui-v2 .shoematch-result-meta,
.shoematch-ui-v2 .shoematch-suggestion small,
.shoematch-ui-v2 .shoematch-clarification,
.shoematch-ui-v2 .shoematch-related-searches p,
.shoematch-ui-v2 .shoematch-mobile-nav small {
  font-size: 13px !important;
}
.shoematch-ui-v2 .shoematch-smart-input { font-size: 14px !important; }
.shoematch-ui-v2 .shoematch-tip-block > span,
.shoematch-ui-v2 .shoematch-kicker,
.shoematch-ui-v2 .shoematch-filter-control > span { letter-spacing: .045em; }
.shoematch-ui-v2 .shoematch-tip-block p,
.shoematch-ui-v2 .shoematch-result-main small,
.shoematch-ui-v2 .shoematch-side-card p { line-height: 1.55; }
.shoematch-ui-v2 .shoematch-feedback-dimension,
.shoematch-ui-v2 .shoematch-feedback-button { min-height: 34px; padding: 6px 10px; }
.shoematch-ui-v2 .shoematch-evidence { padding: 4px 8px; }

@media (max-width: 620px) {
  .shoematch-ui-v2 .shoematch-result-row { min-height: 72px; }
  .shoematch-ui-v2 .shoematch-result-main small { -webkit-line-clamp: 3; }
  .shoematch-ui-v2 .shoematch-tip-block { padding: 11px 10px; }
}
.shoematch-ui-v2 .shoematch-refine-summary,
.shoematch-ui-v2 .shoematch-filter-toggle,
.shoematch-ui-v2 .shoematch-reset-filters,
.shoematch-ui-v2 .shoematch-active-filter-count {
  font-size: 13px !important;
}

/* v2.0.2 original sentence-builder restoration
 * Keep the original "What color shoes go with ..." builder as the primary control.
 * Occasion / Style / Season / Priority live in a secondary More options panel.
 */
.shoematch-ui-v2 .shoematch-builder-divider {
  display: flex;
  margin: 18px 0 11px;
  color: var(--sm-soft);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.shoematch-ui-v2 .shoematch-sentence-builder,
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder,
.shoematch-ui-v2.is-shoe-mode .shoematch-sentence-builder,
.shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder {
  display: grid !important;
  align-items: stretch;
  overflow: visible;
  gap: 8px;
  margin-top: 0;
  padding: 7px;
  border: 1px solid var(--sm-line);
  border-radius: 14px;
  background: var(--sm-panel-2);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5);
  grid-template-columns: minmax(145px,.85fr) auto minmax(150px,.9fr) minmax(185px,1.12fr) auto;
}
.shoematch-ui-v2 .shoematch-sentence-builder select {
  display: block;
  width: 100%;
  max-width: none;
  min-width: 0;
  min-height: 48px;
  height: 48px;
  padding: 0 36px 0 13px;
  border: 1px solid var(--sm-line);
  border-radius: 9px;
  background: var(--sm-panel);
  color: var(--sm-heading);
  box-shadow: none;
  font-size: 14px !important;
  font-weight: 700;
}
.shoematch-ui-v2 .shoematch-sentence-builder select:hover { border-color: var(--sm-line-strong); }
.shoematch-ui-v2 .shoematch-sentence-builder select:focus {
  border-color: var(--sm-accent);
  outline: 0;
  box-shadow: 0 0 0 3px rgba(8,117,109,.09);
}
.shoematch-ui-v2 .shoematch-sentence-builder select[hidden] { display: none !important; }
.shoematch-ui-v2 .shoematch-sentence-builder .shoematch-phrase {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 3px;
  color: var(--sm-muted);
  white-space: nowrap;
  font-size: 13px !important;
  font-weight: 650;
}
.shoematch-ui-v2 .shoematch-sentence-builder .shoematch-search {
  width: auto;
  min-width: max-content;
  min-height: 48px;
  height: 48px;
  padding: 0 17px;
  border-radius: 9px;
  font-size: 13px !important;
  font-weight: 800;
}
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder {
  grid-template-columns: minmax(130px,.75fr) minmax(140px,.8fr) auto minmax(140px,.8fr) minmax(175px,1fr) auto;
}
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder .shoematch-mode { order: 1; }
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder .shoematch-shoe-color { order: 2; }
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder .shoematch-phrase { order: 3; }
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder .shoematch-outfit-color { order: 4; }
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder .shoematch-item { order: 5; }
.shoematch-ui-v2.is-color-check .shoematch-sentence-builder .shoematch-search { order: 6; }
.shoematch-ui-v2.is-shoe-mode .shoematch-sentence-builder {
  grid-template-columns: minmax(155px,.85fr) auto minmax(210px,1.25fr) auto;
}
.shoematch-ui-v2.is-shoe-mode .shoematch-sentence-builder .shoematch-mode { order: 1; }
.shoematch-ui-v2.is-shoe-mode .shoematch-sentence-builder .shoematch-phrase { order: 2; }
.shoematch-ui-v2.is-shoe-mode .shoematch-sentence-builder .shoematch-item { order: 3; }
.shoematch-ui-v2.is-shoe-mode .shoematch-sentence-builder .shoematch-search { order: 4; }
.shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder {
  grid-template-columns: minmax(140px,.8fr) minmax(175px,1fr) auto minmax(205px,1.2fr) auto;
}
.shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder .shoematch-mode { order: 1; }
.shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder .shoematch-shoe-type { order: 2; }
.shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder .shoematch-phrase { order: 3; }
.shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder .shoematch-item { order: 4; }
.shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder .shoematch-search { order: 5; }
.shoematch-ui-v2 .shoematch-query-preview {
  display: block;
  min-height: 20px;
  margin: 8px 4px 0;
  color: var(--sm-soft);
  font-family: inherit;
  font-size: 13px;
  font-style: normal;
  text-align: left;
}
.shoematch-ui-v2 .shoematch-context-toolbar {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 34px;
  margin-top: 5px;
}
.shoematch-ui-v2 .shoematch-context-toolbar .shoematch-filter-toggle {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  min-height: 32px;
  font-size: 13px !important;
}
.shoematch-ui-v2 .shoematch-context-toolbar .shoematch-refine-summary {
  font-size: 13px !important;
}
.shoematch-ui-v2 .shoematch-context-toolbar .shoematch-reset-filters {
  margin-left: auto;
  font-size: 13px !important;
}
.shoematch-ui-v2 .shoematch-context-toolbar .shoematch-reset-filters[hidden] { display: none !important; }
.shoematch-ui-v2 .shoematch-context-options {
  display: none;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-top: 6px;
  padding: 9px;
  border: 1px solid var(--sm-line);
  border-radius: 12px;
  background: var(--sm-panel-2);
}
.shoematch-ui-v2.is-filters-open .shoematch-context-options { display: grid; }
.shoematch-ui-v2 .shoematch-context-options .shoematch-filter-control {
  min-width: 0;
  width: 100%;
  min-height: 44px;
  padding-left: 10px;
}
.shoematch-ui-v2 .shoematch-context-options .shoematch-filter-control > span { font-size: 13px !important; }
.shoematch-ui-v2 .shoematch-context-options .shoematch-filter-control select {
  width: 100%;
  max-width: none;
  min-height: 40px;
  height: 40px;
  font-size: 13px !important;
}

@media (max-width: 980px) {
  .shoematch-ui-v2 .shoematch-sentence-builder,
  .shoematch-ui-v2.is-color-check .shoematch-sentence-builder,
  .shoematch-ui-v2.is-shoe-mode .shoematch-sentence-builder,
  .shoematch-ui-v2.is-shoe-check .shoematch-sentence-builder {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .shoematch-ui-v2 .shoematch-sentence-builder > * { order: initial !important; }
  .shoematch-ui-v2 .shoematch-sentence-builder .shoematch-phrase {
    justify-content: flex-start;
    min-height: 28px;
    grid-column: 1 / -1;
  }
  .shoematch-ui-v2 .shoematch-sentence-builder .shoematch-search { grid-column: 1 / -1; width: 100%; }
  .shoematch-ui-v2 .shoematch-context-options { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .shoematch-ui-v2:not(.is-filters-open) .shoematch-sentence-builder,
  .shoematch-ui-v2:not(.is-filters-open).is-color-check .shoematch-sentence-builder,
  .shoematch-ui-v2:not(.is-filters-open).is-shoe-mode .shoematch-sentence-builder,
  .shoematch-ui-v2:not(.is-filters-open).is-shoe-check .shoematch-sentence-builder,
  .shoematch-ui-v2.is-filters-open .shoematch-sentence-builder,
  .shoematch-ui-v2.is-filters-open.is-color-check .shoematch-sentence-builder,
  .shoematch-ui-v2.is-filters-open.is-shoe-mode .shoematch-sentence-builder,
  .shoematch-ui-v2.is-filters-open.is-shoe-check .shoematch-sentence-builder {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 7px;
    margin-top: 0;
    border: 1px solid var(--sm-line);
    border-radius: 11px;
    background: var(--sm-panel-2);
    box-shadow: none;
  }
  .shoematch-ui-v2 .shoematch-sentence-builder > * { grid-column: 1 / -1; order: initial !important; }
  .shoematch-ui-v2 .shoematch-sentence-builder select {
    max-width: none;
    min-height: 44px;
    height: 44px;
    font-size: 14px !important;
  }
  .shoematch-ui-v2 .shoematch-sentence-builder .shoematch-phrase { min-height: 24px; }
  .shoematch-ui-v2 .shoematch-sentence-builder .shoematch-search { min-height: 44px; height: 44px; }
  .shoematch-ui-v2 .shoematch-context-toolbar { flex-wrap: wrap; }
  .shoematch-ui-v2 .shoematch-context-toolbar .shoematch-refine-summary {
    order: 3;
    width: 100%;
    white-space: normal;
  }
  .shoematch-ui-v2 .shoematch-context-options,
  .shoematch-ui-v2.is-filters-open .shoematch-context-options { grid-template-columns: 1fr; }
}

/* v2.0.3 mobile result-card alignment
 * Keep confidence compact and prevent the star/score column from drifting when
 * readable 13px text increases the height of the recommendation copy.
 */
.shoematch-ui-v2 .shoematch-evidence {
  max-width: 100%;
}
.shoematch-ui-v2 .shoematch-confidence-value,
.shoematch-ui-v2 .shoematch-evidence-status {
  white-space: nowrap;
}
.shoematch-ui-v2 .shoematch-score {
  min-width: 0;
  align-self: center;
}
.shoematch-ui-v2 .shoematch-score strong,
.shoematch-ui-v2 .shoematch-stars {
  white-space: nowrap;
}

@media (max-width: 620px) {
  .shoematch-ui-v2 .shoematch-result-row {
    grid-template-columns: 22px 58px minmax(0, 1fr) 72px 22px;
    gap: 7px;
    min-height: 96px;
    padding: 11px 9px;
    align-items: center;
  }
  .shoematch-ui-v2 .shoematch-result-main {
    align-self: center;
    min-width: 0;
  }
  .shoematch-ui-v2 .shoematch-result-main strong {
    line-height: 1.25;
  }
  .shoematch-ui-v2 .shoematch-result-main small {
    margin-top: 4px;
    line-height: 1.4;
    -webkit-line-clamp: 2;
  }
  .shoematch-ui-v2 .shoematch-evidence {
    display: inline-flex;
    align-items: center;
    width: auto;
    max-width: 100%;
    margin-top: 6px;
    padding: 5px 9px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 1.2;
    vertical-align: top;
  }
  .shoematch-ui-v2 .shoematch-confidence-value {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .shoematch-ui-v2 .shoematch-evidence-status {
    display: none;
  }
  .shoematch-ui-v2 .shoematch-score {
    width: 72px;
    justify-self: end;
    align-self: center;
    justify-items: center;
    gap: 4px;
    text-align: center;
  }
  .shoematch-ui-v2 .shoematch-stars {
    display: block;
    width: 100%;
    text-align: center;
    line-height: 1;
    letter-spacing: -0.03em;
  }
  .shoematch-ui-v2 .shoematch-score strong {
    display: block;
    width: 100%;
    text-align: center;
    line-height: 1.05;
  }
  .shoematch-ui-v2 .shoematch-expand-icon {
    justify-self: end;
  }
}

@media (max-width: 390px) {
  .shoematch-ui-v2 .shoematch-result-row {
    grid-template-columns: 21px 52px minmax(0, 1fr) 66px 20px;
    gap: 6px;
    padding-left: 7px;
    padding-right: 7px;
  }
  .shoematch-ui-v2 .shoematch-score {
    width: 66px;
  }
  .shoematch-ui-v2 .shoematch-evidence {
    padding-left: 7px;
    padding-right: 7px;
  }
}


/* v2.0.4 mobile result-card structure
 * Fix the inherited legacy grid-column rule that placed score/rating under the
 * main copy. Mobile gets a stable five-column card and a shorter confidence
 * label, while desktop keeps the full evidence wording.
 */
.shoematch-ui-v2 .shoematch-confidence-mobile { display: none; }

@media (max-width: 620px) {
  .shoematch-ui-v2 .shoematch-result-row {
    grid-template-columns: 22px 54px minmax(0, 1fr) 76px 24px;
    grid-template-rows: auto;
    gap: 7px;
    min-height: 104px;
    padding: 12px 9px;
    align-items: center;
  }
  .shoematch-ui-v2 .shoematch-rank {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: center;
  }
  .shoematch-ui-v2 .shoematch-visual,
  .shoematch-ui-v2 .shoematch-swatch {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center;
  }
  .shoematch-ui-v2 .shoematch-result-main {
    grid-column: 3 !important;
    grid-row: 1 !important;
    min-width: 0;
    align-self: center;
  }
  .shoematch-ui-v2 .shoematch-score {
    grid-column: 4 !important;
    grid-row: 1 !important;
    width: 76px;
    min-width: 76px;
    justify-self: end;
    align-self: center;
    justify-items: center;
    text-align: center;
    gap: 5px;
  }
  .shoematch-ui-v2 .shoematch-expand-icon {
    grid-column: 5 !important;
    grid-row: 1 !important;
    justify-self: end;
    align-self: center;
  }
  .shoematch-ui-v2 .shoematch-confidence-desktop,
  .shoematch-ui-v2 .shoematch-evidence-status { display: none !important; }
  .shoematch-ui-v2 .shoematch-confidence-mobile { display: inline !important; }
  .shoematch-ui-v2 .shoematch-evidence {
    display: inline-flex;
    width: auto;
    max-width: 100%;
    overflow: visible;
    text-overflow: clip;
    padding: 5px 7px;
    white-space: nowrap;
  }
  .shoematch-ui-v2 .shoematch-confidence-mobile {
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
  }
  .shoematch-ui-v2 .shoematch-stars,
  .shoematch-ui-v2 .shoematch-score strong {
    display: block;
    width: 100%;
    margin: 0;
    white-space: nowrap;
    text-align: center;
  }
  .shoematch-ui-v2 .shoematch-stars {
    line-height: 1;
    letter-spacing: -0.04em;
  }
  .shoematch-ui-v2 .shoematch-score strong { line-height: 1.05; }

  /* Keep the final recommendation scrollable above the sticky quick-nav. */
  .shoematch-ui-v2 .shoematch-results { padding-bottom: 92px; }
}

@media (max-width: 390px) {
  .shoematch-ui-v2 .shoematch-result-row {
    grid-template-columns: 20px 48px minmax(0, 1fr) 70px 22px;
    gap: 6px;
    padding: 11px 7px;
  }
  .shoematch-ui-v2 .shoematch-visual { width: 46px; height: 44px; }
  .shoematch-ui-v2 .shoematch-swatch { width: 40px; height: 40px; }
  .shoematch-ui-v2 .shoematch-score { width: 70px; min-width: 70px; }
  .shoematch-ui-v2 .shoematch-evidence { padding-left: 6px; padding-right: 6px; }
}

@media (max-width: 340px) {
  .shoematch-ui-v2 .shoematch-result-row {
    grid-template-columns: 20px 44px minmax(0, 1fr) 66px 20px;
    gap: 5px;
    padding-left: 6px;
    padding-right: 6px;
  }
  .shoematch-ui-v2 .shoematch-visual { width: 42px; }
  .shoematch-ui-v2 .shoematch-swatch { width: 38px; height: 38px; }
  .shoematch-ui-v2 .shoematch-score { width: 66px; min-width: 66px; }
}

/* ============================================================
 * ShoeMatch v2.1.0 — mobile quick-nav alignment + clear swatches
 * Keeps the quick nav centered inside the mobile shell and removes
 * decorative glow/shadow from recommendation colors so the actual
 * swatch remains easy to identify in both Day and Night modes.
 * ============================================================ */
.shoematch-ui-v2 .shoematch-swatch {
  background: var(--swatch) !important;
  box-shadow: none !important;
  filter: none !important;
  outline: none !important;
  border: 2px solid color-mix(in srgb, var(--sm-heading) 30%, transparent) !important;
}

@media (max-width: 620px) {
  .shoematch-root.shoematch-ui-v2 {
    overflow-x: clip;
  }

  .shoematch-ui-v2 .shoematch-mobile-nav {
    left: auto;
    right: auto;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    justify-self: stretch;
    margin: 14px 0 0;
    overflow: hidden;
  }

  .shoematch-ui-v2 .shoematch-mobile-nav button {
    width: 100%;
    max-width: 100%;
    min-width: 0 !important;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 8px 4px !important;
    overflow: hidden;
  }

  .shoematch-ui-v2 .shoematch-mobile-nav span,
  .shoematch-ui-v2 .shoematch-mobile-nav small {
    max-width: 100%;
  }

  .shoematch-ui-v2 .shoematch-mobile-nav small {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: clip;
    text-align: center;
  }

  .shoematch-ui-v2 .shoematch-swatch {
    box-shadow: none !important;
  }
}

/* ShoeMatch v2.1.0 — portable Master Dataset is admin/data-only; frontend visual contract unchanged. */

/* ShoeMatch v2.2.0 — Growth & Validation is operational/admin-only; frontend visual contract remains v2.0.5. */

/* v2.3.2 Keyword Roadmap Step 3: long-tail modifier controls.
 * Six optional dimensions use a calm 3/2/1-column layout while the original
 * sentence builder stays primary. These controls remain inside More options.
 */
@media (min-width: 981px) {
  .shoematch-ui-v2 .shoematch-context-options { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

/* v2.3.5 Keyword Roadmap Step 6: Season + Weather adds a seventh optional
 * context control. The established responsive 3/2/1-column More options
 * layout remains intentionally unchanged so the new control wraps naturally.
 */

/* Step 33: SEO enhancement layer */
.shoematch-breadcrumbs{max-width:1180px;margin:0 auto 18px;padding:0 4px;font-size:13px;line-height:1.5;color:#667085}
.shoematch-breadcrumbs ol{display:flex;align-items:center;gap:8px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.shoematch-breadcrumbs li{display:flex;align-items:center;gap:8px;margin:0;padding:0}
.shoematch-breadcrumbs li:not(:last-child)::after{content:"/";opacity:.55}
.shoematch-breadcrumbs a{text-decoration:none;color:inherit}
.shoematch-breadcrumbs a:hover{text-decoration:underline}
.shoematch-breadcrumbs [aria-current="page"]{font-weight:650;color:inherit}
.shoematch-visual-seo{max-width:980px;margin:22px auto 30px}
.shoematch-visual-seo-frame{overflow:hidden;border-radius:20px;background:#f4f5f7;aspect-ratio:16/9}
.shoematch-visual-seo-image{display:block;width:100%;height:100%;object-fit:cover}
.shoematch-visual-seo figcaption{margin-top:8px;font-size:12px;line-height:1.45;color:#667085}
@media(max-width:720px){.shoematch-breadcrumbs{margin-bottom:14px;padding:0 2px}.shoematch-visual-seo{margin:16px auto 22px}.shoematch-visual-seo-frame{border-radius:14px;aspect-ratio:4/3}}
