/* .serp-mock — a stylized, static fake Google-search-results panel for
   public/auto/index.html's Shop Watch section. Load AFTER tokens.css. See
   public/components/README.md for load order.

   One-off illustrative content, not a data-driven component — no <x-*> tag
   or expand.mjs entry, same as .feature-grid/.media-split (real CSS-driven
   patterns with no matching leaf/wrapper tag). Values translated from
   design/auto-microsite-page.dc.html's own comp figure onto this file's
   real tokens — the comp's local --ink/--muted/--rule/--surface names and
   one hardcoded hex (#ff9a2e) don't exist in this token system.

   Your shop is deliberately NOT winning: second on rating, third of four
   on review count. The gap is the product; a mock where the shop already
   wins has no reason to exist. The caption is load-bearing, not
   decorative — it heads off both a trademark read and a reader mistaking
   this for their real data.

   Ratings use the regular sans stack with tabular-nums, not a monospace
   font: public/components/marker.css's .tag rule already rejected adding
   a monospace family "for one element" as a new font dependency — same
   call here, and tabular-nums gets the same aligned-digit effect. */
.serp-mock {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.serp-mock__panel {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: var(--border-width-hairline) solid var(--color-border-subtle);
  border-radius: var(--radius-default);
  background-color: var(--color-surface-raised);
}

.serp-mock__searchbar {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  padding: var(--space-2) var(--space-3);
  border-bottom: var(--border-width-hairline) solid var(--color-border-subtle);
}

.serp-mock__searchbar-icon {
  flex: none;
  width: 15px;
  height: 15px;
  color: var(--color-text-muted);
}

.serp-mock__searchbar-text {
  font-size: var(--size-200);
  color: var(--color-text-muted);
}

.serp-mock__map {
  position: relative;
  height: 96px;
  background-color: var(--color-surface-hover);
  border-bottom: var(--border-width-hairline) solid var(--color-border-subtle);
}

.serp-mock__map-roads {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.serp-mock__map-roads path {
  stroke: var(--color-border-subtle);
  stroke-width: 7;
  opacity: 0.85;
}

.serp-mock__pin {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.serp-mock__pin--you {
  left: 126px;
  top: 34px;
  width: 22px;
  height: 22px;
  background-color: var(--color-mark-accent);
}

.serp-mock__pin-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: var(--color-text-on-accent);
}

.serp-mock__pin--1,
.serp-mock__pin--2,
.serp-mock__pin--3 {
  width: 11px;
  height: 11px;
  background-color: var(--color-border-strong);
}

.serp-mock__pin--1 {
  left: 56px;
  top: 20px;
}

.serp-mock__pin--2 {
  left: 214px;
  top: 56px;
}

.serp-mock__pin--3 {
  left: 262px;
  top: 24px;
}

.serp-mock__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.serp-mock__row {
  display: flex;
  align-items: baseline;
  gap: var(--space-1);
  padding: var(--space-2) var(--space-3);
  border-bottom: var(--border-width-hairline) solid var(--color-border-subtle);
}

.serp-mock__row:last-child {
  border-bottom: none;
}

.serp-mock__row--you {
  background-color: var(--color-surface-hover);
}

.serp-mock__row-dot {
  flex: none;
  width: 8px;
  height: 8px;
  margin-top: 0.35em;
  border-radius: 50%;
  background-color: var(--color-border-strong);
}

.serp-mock__row--you .serp-mock__row-dot {
  background-color: var(--color-mark-accent);
}

.serp-mock__row-name {
  flex: 1;
  font-size: var(--size-200);
  color: var(--color-text-muted);
}

.serp-mock__row--you .serp-mock__row-name {
  font-weight: var(--weight-semibold);
  color: var(--color-text-primary);
}

.serp-mock__row-rating {
  flex: none;
  font-size: var(--size-100);
  font-variant-numeric: tabular-nums;
  color: var(--color-text-muted);
}

.serp-mock__caption {
  font-size: var(--size-200);
  color: var(--color-text-muted);
}
