/*
Theme Name: Sheshi Evidence UI
Version: 0.25.0
Description: Light-first, source-led directory system with an optional dark theme.
*/

:root,
html[data-theme="light"] {
  color-scheme: light;
  --surface-page: #ffffff;
  --surface-card: #ffffff;
  --surface-sunken: #f5f7f8;
  --text-primary: #172126;
  --text-secondary: #4e5c63;
  --text-muted: #66767e;
  --text-disabled: #98a3a8;
  --border: #dce3e6;
  --border-strong: #b9c6cc;
  --accent: #3d5666;
  --accent-hover: #304652;
  --accent-active: #233640;
  --accent-text: #3d5666;
  --accent-bg: #ebf0f2;
  --verified: #3d5666;
  --verified-bg: #ebf0f2;
  --attention: #172126;
  --focus: #7e9aa8;
  --sheshi-bg: var(--surface-page);
  --sheshi-surface: var(--surface-card);
  --sheshi-surface-raised: var(--surface-sunken);
  --sheshi-border: var(--border);
  --sheshi-text-primary: var(--text-primary);
  --sheshi-text-secondary: var(--text-secondary);
  --sheshi-text-meta: var(--text-muted);
  --sheshi-text-disabled: var(--text-disabled);
  --sheshi-accent-fill: var(--accent);
  --sheshi-accent-text: var(--accent-text);
  --sheshi-status-official: var(--verified);
  --sheshi-status-official-bg: var(--verified-bg);
  --sheshi-status-official-border: #b9c6cc;
  --sheshi-ink: var(--text-primary);
  --sheshi-white: var(--surface-card);
  --sheshi-sand: var(--surface-page);
  --sheshi-soft: var(--surface-sunken);
  --sheshi-line: var(--border);
  --sheshi-muted: var(--text-secondary);
}

html[data-theme="dark"] {
  color-scheme: dark;
  --surface-page: #10171b;
  --surface-card: #172126;
  --surface-sunken: #1d2a30;
  --text-primary: #f7f9fa;
  --text-secondary: #bcc6cb;
  --text-muted: #96a5ac;
  --text-disabled: #6f7c82;
  --border: #2b3a41;
  --border-strong: #455861;
  --accent: #3d5666;
  --accent-hover: #4a687a;
  --accent-active: #607c8b;
  --accent-text: #9cbac8;
  --accent-bg: #26343c;
  --verified: #9cbac8;
  --verified-bg: #26343c;
  --attention: #f7f9fa;
  --focus: #9cbac8;
  --sheshi-status-official-border: #455861;
}

html { background: var(--surface-page); }

body.sheshi-shell,
body.sheshi-home {
  margin: 0;
  color: var(--text-primary) !important;
  background: var(--surface-page) !important;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

body.sheshi-shell *,
body.sheshi-home * { box-sizing: border-box; text-transform: none !important; }

body.sheshi-shell h1,
body.sheshi-home h1,
body.sheshi-shell h2,
body.sheshi-home h2,
body.sheshi-shell h3,
body.sheshi-home h3,
body.sheshi-shell strong,
body.sheshi-home strong,
body.sheshi-shell button,
body.sheshi-home button { font-weight: 600 !important; }

body.sheshi-shell h1,
body.sheshi-home h1 {
  margin: 0;
  color: var(--text-primary) !important;
  font-family: "Inter Display", Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  font-size: clamp(29px, 4vw, 38px) !important;
  font-weight: 600 !important;
  letter-spacing: -1.2px !important;
  line-height: 1.08 !important;
}

body.sheshi-shell h2,
body.sheshi-home h2 {
  color: var(--text-primary) !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  letter-spacing: -.3px !important;
  line-height: 1.3 !important;
}

body.sheshi-shell h3,
body.sheshi-home h3 {
  color: var(--text-primary) !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  letter-spacing: -.2px !important;
  line-height: 1.3 !important;
}

body.sheshi-shell p,
body.sheshi-home p,
body.sheshi-shell li,
body.sheshi-home li,
body.sheshi-shell dd,
body.sheshi-home dd,
body.sheshi-shell .entry-content,
body.sheshi-home .entry-content {
  color: var(--text-secondary) !important;
  font-size: 16px;
  font-weight: 400;
}

body.sheshi-shell small,
body.sheshi-home small,
body.sheshi-shell dt,
body.sheshi-home dt,
body.sheshi-shell .sheshi-result-facts,
body.sheshi-home .sheshi-result-facts,
body.sheshi-shell .sheshi-profile-meta-line,
body.sheshi-home .sheshi-profile-meta-line {
  color: var(--text-muted) !important;
  font-size: 13px !important;
  line-height: 1.5;
}

body.sheshi-shell p,
body.sheshi-home p,
body.sheshi-shell .entry-content { max-width: 62ch; }

body.sheshi-shell a,
body.sheshi-home a { text-decoration-thickness: 1px; text-underline-offset: 3px; }

body.sheshi-shell a:focus-visible,
body.sheshi-home a:focus-visible,
body.sheshi-shell button:focus-visible,
body.sheshi-home button:focus-visible,
body.sheshi-shell input:focus-visible,
body.sheshi-home input:focus-visible,
body.sheshi-shell select:focus-visible,
body.sheshi-home select:focus-visible,
body.sheshi-shell textarea:focus-visible,
body.sheshi-home textarea:focus-visible,
body.sheshi-shell summary:focus-visible,
body.sheshi-home summary:focus-visible {
  outline: 2px solid var(--focus) !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}

.sheshi-wrap {
  width: min(100% - 80px, 1160px) !important;
  max-width: 1160px !important;
  margin-inline: auto !important;
}

.sheshi-kicker,
.sheshi-eyebrow,
.sheshi-result-meta,
.sheshi-offer-label,
.sheshi-index-count,
.sheshi-facet-group h2,
.sheshi-mobile-section > p {
  color: var(--text-muted) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.5 !important;
  text-transform: none !important;
}

/* Header and theme control */
.sheshi-site-header {
  position: sticky;
  top: 0;
  z-index: 9000;
  border-bottom: 1px solid var(--border) !important;
  color: var(--text-primary) !important;
  background: color-mix(in srgb, var(--surface-card) 96%, transparent) !important;
  box-shadow: none !important;
  backdrop-filter: blur(10px);
}

.sheshi-nav {
  display: grid !important;
  min-height: 64px !important;
  grid-template-columns: auto minmax(0, 1fr) 44px auto !important;
  gap: 16px !important;
  align-items: center !important;
}
.sheshi-brand,
.sheshi-wordmark { color: var(--text-primary) !important; }
.sheshi-wordmark { font-size: 22px !important; font-weight: 600 !important; letter-spacing: -1px !important; }
.sheshi-desktop-nav a { color: var(--text-secondary) !important; font-size: 14px !important; font-weight: 400 !important; }
.sheshi-nav-dropdown > summary { color: var(--text-secondary) !important; font-size: 14px !important; font-weight: 400 !important; }
.sheshi-nav-dropdown > summary { min-height: 44px !important; }
.sheshi-nav-chevron { color: var(--text-muted) !important; stroke: currentColor !important; }
.sheshi-nav-panel { border: 1px solid var(--border) !important; color: var(--text-primary) !important; background: var(--surface-card) !important; box-shadow: none !important; }
.sheshi-nav-panel a strong { color: var(--text-primary) !important; }
.sheshi-nav-panel a span { color: var(--text-muted) !important; font-size: 12.5px !important; }
.sheshi-desktop-nav a:hover,
.sheshi-desktop-nav a[aria-current="page"] { color: var(--text-primary) !important; }
.sheshi-desktop-nav a[aria-current="page"]::after { background: var(--accent) !important; }

.sheshi-theme-toggle {
  display: inline-flex;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid var(--border-strong);
  border-radius: 8px;
  color: var(--text-secondary);
  background: transparent;
  cursor: pointer;
}
.sheshi-theme-toggle:hover { color: var(--text-primary); background: var(--surface-sunken); }
.sheshi-theme-icon { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.75; }
.sheshi-theme-icon-sun { display: none; }
html[data-theme="dark"] .sheshi-theme-icon-sun { display: block; }
html[data-theme="dark"] .sheshi-theme-icon-moon { display: none; }

.sheshi-nav-cta,
.sheshi-mobile-action {
  min-height: 44px !important;
  padding: 0 16px !important;
  border: 1px solid var(--border-strong) !important;
  border-radius: 8px !important;
  color: var(--text-primary) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
.sheshi-nav-cta svg,
.sheshi-mobile-action svg { color: var(--accent-text) !important; stroke: currentColor; }
.sheshi-nav-cta:hover,
.sheshi-mobile-action:hover { border-color: var(--accent) !important; background: var(--surface-sunken) !important; }

.sheshi-mobile-menu summary { width: 44px !important; height: 44px !important; color: var(--text-primary) !important; }
.sheshi-mobile-menu nav { border: 1px solid var(--border) !important; color: var(--text-primary) !important; background: var(--surface-card) !important; box-shadow: none !important; }
.sheshi-mobile-menu:not([open]) > nav { visibility: hidden !important; pointer-events: none !important; }
.sheshi-mobile-menu[open] > nav { visibility: visible !important; }
.sheshi-mobile-menu a { min-height: 44px; color: var(--text-primary) !important; }
.sheshi-menu-toggle-icon span { background: var(--text-primary) !important; }

.sheshi-skip-link,
.sheshi-skip-link:focus {
  z-index: 11000;
  padding: 12px 16px;
  border: 2px solid var(--text-primary) !important;
  color: var(--surface-card) !important;
  background: var(--text-primary) !important;
  box-shadow: none !important;
}

/* Controls and actions */
.sheshi-search input,
.sheshi-search select,
.sheshi-beta-form input,
.sheshi-beta-form select,
.sheshi-beta-form textarea {
  min-height: 44px !important;
  border: 1px solid var(--border-strong) !important;
  border-radius: 8px !important;
  color: var(--text-primary) !important;
  background: var(--surface-card) !important;
  box-shadow: none !important;
  font: 400 16px/1.4 Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
}
.sheshi-search input,
.sheshi-search select,
.sheshi-search button { height: 44px !important; min-height: 44px !important; }
.sheshi-search input::placeholder,
.sheshi-beta-form input::placeholder,
.sheshi-beta-form textarea::placeholder { color: var(--text-muted) !important; opacity: 1; }

.sheshi-search-submit,
.sheshi-button,
.sheshi-beta-form button[type="submit"],
.sheshi-profile-primary-link--cta,
.sheshi-profile-mobile-primary {
  min-height: 44px !important;
  border: 1px solid var(--accent) !important;
  border-radius: 8px !important;
  color: #fff !important;
  background: var(--accent) !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
.sheshi-search-submit:hover,
.sheshi-button:hover,
.sheshi-beta-form button[type="submit"]:hover,
.sheshi-profile-primary-link--cta:hover,
.sheshi-profile-mobile-primary:hover { background: var(--accent-hover) !important; }

.sheshi-text-link,
.sheshi-directory-link,
.sheshi-cta-link,
.sheshi-result-details,
.sheshi-transparency-links a,
.entry-content a { color: var(--accent-text) !important; background: transparent !important; }

/* Hero: one quiet search task, no panel within the panel. */
.sheshi-hero { padding: 64px 0 48px !important; color: var(--text-primary) !important; background: var(--surface-page) !important; }
.sheshi-portal { max-width: 900px !important; margin: 0 auto !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; animation: none !important; opacity: 1 !important; transform: none !important; }
.sheshi-portal .sheshi-eyebrow { margin: 0 0 12px !important; color: var(--accent-text) !important; }
.sheshi-portal h1 { max-width: 760px; }
.sheshi-hero-copy { margin: 12px 0 24px !important; color: var(--text-secondary) !important; font-size: 17px !important; line-height: 1.5 !important; }
.sheshi-front-panel { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
.sheshi-search-hero {
  display: grid !important;
  width: min(100%, 680px) !important;
  grid-template-columns: minmax(0, 1fr) minmax(190px, .55fr) 116px !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.sheshi-search-hero > * { grid-row: 1 !important; min-height: 44px !important; border-radius: 8px !important; }
.sheshi-search-submit-icon { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.75; }
.sheshi-quick-categories { width: min(100%, 900px); margin: 20px 0 0 !important; }
.sheshi-quick-categories > p { margin: 0 0 8px !important; color: var(--text-muted) !important; font-size: 13px !important; }
.sheshi-quick-categories > div { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; }
.sheshi-quick-categories a {
  min-height: 44px !important;
  padding: 0 12px !important;
  border: 1px solid var(--border) !important;
  border-radius: 999px !important;
  color: var(--text-secondary) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 13px !important;
}
.sheshi-quick-categories a:hover { border-color: var(--border-strong) !important; color: var(--text-primary) !important; transform: none !important; }
.sheshi-quick-categories .sheshi-category-icon { width: 20px !important; height: 20px !important; padding: 0 !important; border: 0 !important; color: var(--text-muted) !important; background: transparent !important; }
.sheshi-all-categories span { font-size: 12.5px !important; }
.sheshi-hero-tools { margin-top: 16px !important; padding-top: 16px !important; border-top: 1px solid var(--border) !important; }
.sheshi-hero-tools { font-size: 13px !important; }
.sheshi-hero-tools a { min-height: 44px; color: var(--accent-text) !important; font-size: 13px !important; }
.sheshi-hero-tools > span { color: var(--text-muted) !important; font-size: 13px !important; }

/* One entry-row component for search, taxonomies and home. */
.sheshi-discovery,
.sheshi-results-page,
.sheshi-directory-page,
.sheshi-profile-page,
.sheshi-page { color: var(--text-primary) !important; background: var(--surface-page) !important; }
.sheshi-discovery { padding: 48px 0 !important; border-top: 1px solid var(--border); background: var(--surface-card) !important; }
.sheshi-discovery-head { margin-bottom: 20px !important; }
.sheshi-discovery-head > div:last-child { align-items: flex-end !important; }
.sheshi-discovery-head p { margin: 0; font-size: 13px !important; }
.sheshi-directory-countline { margin: 0 0 16px !important; color: var(--text-muted) !important; font-size: 13px !important; }

.sheshi-results-grid,
.sheshi-results-list,
.sheshi-discovery-grid {
  display: block !important;
  overflow: hidden;
  margin: 0 !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  background: var(--surface-card) !important;
}

.sheshi-result-card--search,
.sheshi-discovery-grid .sheshi-result-card--search {
  display: grid !important;
  min-height: 132px;
  grid-template-columns: 42px minmax(0, 1fr) 176px !important;
  gap: 16px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 20px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border) !important;
  border-radius: 0 !important;
  color: var(--text-primary) !important;
  background: transparent !important;
  box-shadow: none !important;
}
.sheshi-result-card--search:last-child,
.sheshi-discovery-grid .sheshi-result-card--search:last-child { border-bottom: 0 !important; }
.sheshi-result-card--search:hover { background: var(--surface-sunken) !important; transform: none !important; box-shadow: none !important; }
.sheshi-result-card--search > .sheshi-category-icon {
  align-self: start;
  width: 42px !important;
  height: 42px !important;
  padding: 10px !important;
  border: 0 !important;
  border-radius: 8px !important;
  color: var(--text-muted) !important;
  background: var(--surface-sunken) !important;
}
.sheshi-result-card--search > .sheshi-category-icon svg { width: 22px; height: 22px; stroke-width: 1.75; }
.sheshi-result-body { min-width: 0; }
.sheshi-result-title-row { display: flex !important; flex-wrap: wrap !important; align-items: baseline !important; gap: 8px !important; }
.sheshi-result-title-row h2 { margin: 0 !important; font-size: 17px !important; line-height: 1.3 !important; }
.sheshi-result-title-row h2 a { color: var(--text-primary) !important; text-decoration: none !important; }
.sheshi-result-title-row h2 a { font-weight: 600 !important; }
.sheshi-result-title-place { color: var(--text-secondary) !important; }
.sheshi-result-description { margin: 4px 0 !important; color: var(--text-secondary) !important; font-size: 14px !important; line-height: 1.45 !important; }
.sheshi-result-facts { display: flex !important; flex-wrap: wrap !important; gap: 0 !important; margin: 6px 0 0 !important; color: var(--text-muted) !important; font-size: 12.5px !important; }
.sheshi-result-facts span { color: inherit !important; }
.sheshi-result-facts span + span::before { content: "·" !important; margin: 0 7px; color: var(--text-muted); }
.sheshi-result-foot { display: block !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.sheshi-result-links { display: flex !important; flex-direction: column-reverse !important; align-items: stretch !important; gap: 4px !important; }
.sheshi-result-website,
.sheshi-result-details {
  display: inline-flex !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 12px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
.sheshi-result-website {
  border: 1px solid var(--border-strong) !important;
  color: var(--accent-text) !important;
  background: transparent !important;
}
.sheshi-result-details { border: 0 !important; color: var(--accent-text) !important; background: transparent !important; }

.sheshi-meta-chip {
  min-height: 25px !important;
  padding: 3px 8px !important;
  border: 0 !important;
  border-radius: 5px !important;
  color: var(--text-secondary) !important;
  background: var(--surface-sunken) !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  text-transform: none !important;
}
.sheshi-meta-chip--status-official { color: var(--verified) !important; background: var(--verified-bg) !important; font-weight: 600 !important; }
.sheshi-meta-chip--status-editorial,
.sheshi-meta-chip--status-demo { color: var(--text-muted) !important; background: var(--surface-sunken) !important; }
.sheshi-discovery-suggest { min-height: 44px !important; margin-top: 12px !important; border: 1px dashed var(--border-strong) !important; border-radius: 8px !important; color: var(--text-secondary) !important; background: transparent !important; }

/* Directory categories, locations and factual feature rows. */
.sheshi-section,
.sheshi-directory-section,
.sheshi-travel-feature,
.sheshi-organization-paths { padding: 48px 0 !important; color: var(--text-primary) !important; background: var(--surface-page) !important; }
.sheshi-section-soft,
.sheshi-directory-section-dark { background: var(--surface-card) !important; }
.sheshi-section-head,
.sheshi-directory-location-head { margin-bottom: 24px !important; }
.sheshi-section-intro { margin-top: 8px !important; font-size: 16px !important; }
.sheshi-index,
.sheshi-directory-index { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 12px !important; }
.sheshi-index-row,
.sheshi-directory-index > a {
  display: grid !important;
  min-height: 148px !important;
  grid-template-columns: 42px minmax(0, 1fr) auto !important;
  grid-template-rows: auto 1fr auto !important;
  gap: 8px 12px !important;
  align-items: start !important;
  padding: 16px !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  color: var(--text-primary) !important;
  background: var(--surface-card) !important;
  box-shadow: none !important;
}
.sheshi-index-row:hover,
.sheshi-directory-index > a:hover { border-color: var(--border-strong) !important; transform: none !important; box-shadow: none !important; }
.sheshi-index-row .sheshi-category-icon,
.sheshi-directory-index > a .sheshi-category-icon { grid-row: 1 / 3; width: 42px !important; height: 42px !important; padding: 9px !important; border: 0 !important; border-radius: 8px !important; color: var(--text-muted) !important; background: var(--surface-sunken) !important; }
.sheshi-index-row h3,
.sheshi-directory-index > a strong { grid-column: 2; margin: 0 !important; align-self: center; font-size: 17px !important; }
.sheshi-index-row p { grid-column: 2 / -1; margin: 0 !important; font-size: 14px !important; line-height: 1.5 !important; }
.sheshi-index-count,
.sheshi-directory-index > a small { grid-column: 2; color: var(--text-muted) !important; font-size: 12.5px !important; }
.sheshi-index-arrow,
.sheshi-directory-index > a b { grid-column: 3; grid-row: 1; color: var(--accent-text) !important; font-weight: 400 !important; }

.sheshi-note {
  padding: 10px 12px !important;
  border: 0 !important;
  border-left: 2px solid var(--accent) !important;
  border-radius: 0 !important;
  color: var(--text-secondary) !important;
  background: var(--surface-sunken) !important;
  box-shadow: none !important;
  font-size: 13px !important;
}
.sheshi-map-card,
.sheshi-location-column { border: 1px solid var(--border) !important; border-radius: 12px !important; color: var(--text-primary) !important; background: var(--surface-card) !important; box-shadow: none !important; }
.sheshi-dach-map { color: var(--text-secondary) !important; }
.sheshi-map-countries path { fill: var(--surface-sunken) !important; stroke: var(--border-strong) !important; }
.sheshi-map-countries text,
.sheshi-map-markers text { fill: var(--text-secondary) !important; font-size: 12.5px !important; }
.sheshi-map-card-head span { font-size: 12.5px !important; }
.sheshi-map-dot { fill: var(--accent) !important; }
.sheshi-location-list a { min-height: 44px; border-bottom-color: var(--border) !important; color: var(--text-primary) !important; }

.sheshi-travel-feature-layout { display: grid !important; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr) !important; gap: 48px !important; align-items: start !important; }
.sheshi-travel-feature-copy h2 { max-width: 24ch; }
.sheshi-travel-proof { margin: 0; border: 1px solid var(--border); border-radius: 12px; background: var(--surface-card); }
.sheshi-travel-proof div { padding: 16px; border-bottom: 1px solid var(--border); }
.sheshi-travel-proof div:last-child { border-bottom: 0; }
.sheshi-travel-proof dt { color: var(--text-muted) !important; }
.sheshi-travel-proof dd { margin: 4px 0 0; color: var(--text-secondary) !important; }
.sheshi-trust-lead { display: grid !important; grid-template-columns: .8fr 1.2fr !important; gap: 48px !important; align-items: start !important; }
.sheshi-trust-lead > p { margin: 28px 0 0; }
.sheshi-trust-grid { gap: 0 !important; margin-top: 24px !important; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.sheshi-trust-item { padding: 20px !important; border-right: 1px solid var(--border) !important; background: transparent !important; }
.sheshi-trust-item:last-child { border-right: 0 !important; }
.sheshi-offer-card { border: 1px solid var(--border) !important; border-radius: 12px !important; color: var(--text-primary) !important; background: var(--surface-card) !important; box-shadow: none !important; }
.sheshi-offer-number { color: var(--text-muted) !important; font-weight: 400 !important; }
.sheshi-offer-number { font-size: 12.5px !important; }
.sheshi-cta { border: 1px solid var(--border) !important; border-radius: 12px !important; background: var(--surface-card) !important; box-shadow: none !important; }

/* Search and archive layout */
.sheshi-results-search-strip { padding: 16px 0 !important; border-bottom: 1px solid var(--border) !important; background: var(--surface-card) !important; }
.sheshi-results-search { padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
.sheshi-search-results {
  display: grid !important;
  grid-template-columns: minmax(220px, 1fr) minmax(0, .75fr) minmax(0, .65fr) 116px !important;
  gap: 8px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.sheshi-search-results > input[type="search"] { grid-column: 1 !important; }
.sheshi-search-results .sheshi-search-mobile-filter-fields select:first-of-type { grid-column: 2 !important; }
.sheshi-search-results .sheshi-search-mobile-filter-fields select:last-of-type { grid-column: 3 !important; }
.sheshi-search-results > .sheshi-search-submit { grid-column: 4 !important; }
.sheshi-search-results .sheshi-search-mobile-filters,
.sheshi-search-results .sheshi-search-mobile-filter-fields { display: contents !important; }
.sheshi-search-results .sheshi-search-mobile-filters summary { display: none !important; }
.sheshi-results-layout { display: grid !important; grid-template-columns: 250px minmax(0, 1fr) !important; gap: 32px !important; padding-top: 32px !important; padding-bottom: 64px !important; }
.sheshi-results-facets { padding: 0 !important; color: var(--text-primary) !important; background: transparent !important; }
.sheshi-facet-group { margin: 0 0 24px !important; padding: 0 0 24px !important; border-bottom: 1px solid var(--border) !important; }
.sheshi-facet-group h2 { margin: 0 0 8px !important; color: var(--text-primary) !important; font-weight: 600 !important; }
.sheshi-facet-option { min-height: 44px; color: var(--text-secondary) !important; font-size: 13px !important; }
.sheshi-facet-option small { color: var(--text-muted) !important; font-size: 12.5px !important; }
.sheshi-facet-box { border-color: var(--border-strong) !important; background: var(--surface-card) !important; }
.sheshi-facet-option.is-active .sheshi-facet-box { border-color: var(--accent) !important; background: var(--accent) !important; }
.sheshi-results-breadcrumb { color: var(--text-muted) !important; font-size: 13px !important; }
.sheshi-results-breadcrumb a { color: var(--accent-text) !important; }
.sheshi-results-head { margin: 8px 0 16px !important; }
.sheshi-results-toolbar { min-height: 48px !important; margin: 0 0 12px !important; padding: 0 0 12px !important; border-bottom: 1px solid var(--border) !important; }
.sheshi-results-toolbar p,
.sheshi-results-toolbar label { color: var(--text-muted) !important; font-size: 13px !important; }
.sheshi-results-toolbar p strong { color: var(--text-primary) !important; font-size: 17px !important; }
.sheshi-sort-form select { min-height: 44px !important; border-color: var(--border-strong) !important; border-radius: 8px !important; color: var(--text-primary) !important; background: var(--surface-card) !important; }
.sheshi-active-filters { min-height: 44px; margin-bottom: 12px !important; }
.sheshi-active-filters-label { color: var(--text-muted) !important; font-size: 12.5px !important; text-transform: none !important; letter-spacing: 0 !important; }
.sheshi-filter-chip { min-height: 36px !important; border: 1px solid var(--border) !important; color: var(--text-secondary) !important; background: var(--surface-sunken) !important; font-size: 12.5px !important; }
.sheshi-filter-reset { min-height: 44px; color: var(--accent-text) !important; font-size: 13px !important; }
.navigation.pagination .page-numbers { min-width: 44px !important; min-height: 44px !important; border-color: var(--border) !important; color: var(--text-primary) !important; background: var(--surface-card) !important; }
.navigation.pagination .page-numbers.current { border-color: var(--text-primary) !important; color: var(--surface-card) !important; background: var(--text-primary) !important; }

body.tax-listing-category .sheshi-results-page > .sheshi-wrap,
body.tax-location .sheshi-results-page > .sheshi-wrap { padding-top: 48px !important; padding-bottom: 64px !important; }
body.tax-listing-category .sheshi-results-summary,
body.tax-location .sheshi-results-summary { margin: 10px 0 24px !important; }

/* Profile */
.sheshi-profile-frame { padding-top: 32px !important; padding-bottom: 64px !important; }
.sheshi-profile-breadcrumbs { margin-bottom: 16px !important; color: var(--text-muted) !important; font-size: 13px !important; }
.sheshi-profile-breadcrumbs a { color: var(--accent-text) !important; }
.sheshi-profile-layout { display: grid !important; grid-template-columns: minmax(0, 1fr) 340px !important; gap: 32px !important; align-items: start !important; }
.sheshi-profile-identity { margin: 0 !important; padding: 0 0 24px !important; border-bottom: 1px solid var(--border) !important; }
.sheshi-profile-state { margin: 0 0 12px !important; }
.sheshi-profile-state > a { min-height: 44px; color: var(--accent-text) !important; font-size: 12.5px !important; }
.sheshi-profile-lead { margin: 10px 0 !important; color: var(--text-secondary) !important; font-size: 17px !important; line-height: 1.5 !important; }
.sheshi-profile-meta-line { margin: 14px 0 0 !important; padding: 12px 0 0 !important; border-top: 1px solid var(--border) !important; }
.sheshi-profile-meta-line span { color: var(--text-muted) !important; }
.sheshi-profile-meta-line strong { color: var(--text-secondary) !important; font-weight: 600 !important; }
.sheshi-profile-main { min-width: 0; }
.sheshi-profile-section { padding: 24px 0 !important; border-bottom: 1px solid var(--border) !important; }
.sheshi-profile-section h2 { margin: 0 0 10px !important; }
.sheshi-profile-section p { margin: 0; }
.sheshi-service-index { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; }
.sheshi-service-index li { padding: 7px 10px !important; border: 1px solid var(--border) !important; border-radius: 8px !important; color: var(--text-secondary) !important; background: var(--surface-sunken) !important; font-size: 13px !important; }
.sheshi-service-index li strong { color: var(--text-secondary) !important; font-weight: 600 !important; }
.sheshi-profile-contact {
  position: sticky !important;
  top: 88px !important;
  grid-column: 2 !important;
  grid-row: 1 / span 3 !important;
  padding: 20px !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  color: var(--text-primary) !important;
  background: var(--surface-card) !important;
  box-shadow: none !important;
}
.sheshi-profile-contact .sheshi-kicker { margin: 0 0 4px !important; }
.sheshi-profile-contact h2 { margin: 0 0 16px !important; }
.sheshi-profile-desktop-actions { display: grid !important; gap: 8px !important; margin: 0 0 16px !important; }
.sheshi-profile-primary-link--cta { display: flex !important; min-height: 44px !important; align-items: center !important; justify-content: center !important; margin: 0 !important; }
.sheshi-profile-phone-copy { display: grid !important; grid-template-columns: 20px minmax(0, 1fr) auto !important; gap: 8px !important; align-items: center !important; min-height: 44px !important; padding: 0 10px !important; border: 1px solid var(--border-strong) !important; border-radius: 8px !important; color: var(--text-primary) !important; background: transparent !important; }
.sheshi-phone-icon { width: 18px !important; height: 18px !important; color: var(--text-muted) !important; fill: none; stroke: currentColor; stroke-width: 1.75; }
.sheshi-profile-phone-copy button { min-width: 44px; min-height: 36px; border: 0; color: var(--accent-text) !important; background: transparent; }
.sheshi-profile-phone-copy button { min-height: 44px !important; }
.sheshi-profile-contact dl { display: block !important; margin: 0 !important; }
.sheshi-profile-contact dl > div { display: block !important; padding: 10px 0 !important; border-top: 1px solid var(--border) !important; }
.sheshi-profile-contact dt { margin-bottom: 2px; color: var(--text-muted) !important; }
.sheshi-profile-contact dd { margin: 0 !important; overflow-wrap: anywhere; color: var(--text-primary) !important; font-size: 14px !important; line-height: 1.45 !important; }
.sheshi-profile-contact a { color: var(--accent-text) !important; }
.sheshi-profile-contact .sheshi-profile-primary-link--cta { color: #fff !important; }
.sheshi-profile-phone-copy button,
.sheshi-profile-socials > span { font-size: 12.5px !important; }
.sheshi-profile-socials,
.sheshi-contact-source { padding-top: 12px !important; border-top: 1px solid var(--border) !important; }
.sheshi-contact-source { color: var(--text-muted) !important; font-size: 12.5px !important; line-height: 1.5 !important; }
.sheshi-profile-transparency { grid-column: 1; }
.sheshi-profile-management { grid-column: 1; padding: 20px !important; border: 1px solid var(--border) !important; border-radius: 12px !important; color: var(--text-primary) !important; background: var(--surface-card) !important; }
.sheshi-profile-management a { min-height: 44px; border-color: var(--border-strong) !important; border-radius: 8px !important; color: var(--text-primary) !important; background: transparent !important; }
.sheshi-profile-management-primary { color: var(--text-primary) !important; background: var(--surface-sunken) !important; }

/* Content, forms and footer */
.sheshi-page-header,
.sheshi-directory-hero { padding: 48px 0 32px !important; color: var(--text-primary) !important; background: var(--surface-page) !important; }
.sheshi-directory-hero > .sheshi-wrap > p { margin: 8px 0 20px !important; }
.sheshi-directory-hero .sheshi-search { max-width: 680px !important; }
.sheshi-page .entry-content { color: var(--text-secondary) !important; }
.sheshi-beta-form { padding: 24px !important; border: 1px solid var(--border) !important; border-radius: 12px !important; background: var(--surface-card) !important; box-shadow: none !important; }
.sheshi-beta-form label > span { color: var(--text-secondary) !important; font-size: 13px !important; }
.sheshi-form-help,
.sheshi-form-privacy { color: var(--text-muted) !important; font-size: 12.5px !important; }
.sheshi-form-status { border-radius: 8px !important; box-shadow: none !important; }

.sheshi-travel-status span,
.sheshi-travel-route-list em,
.sheshi-travel-label,
.sheshi-travel-provider-index span { font-size: 12.5px !important; line-height: 1.4 !important; }

.sheshi-site-footer { margin: 0 !important; padding: 48px 0 24px !important; border-top: 1px solid var(--border) !important; color: var(--text-primary) !important; background: var(--surface-card) !important; }
.sheshi-site-footer .sheshi-brand,
.sheshi-site-footer .sheshi-wordmark { color: var(--text-primary) !important; }
.sheshi-site-footer p,
.sheshi-site-footer a { color: var(--text-secondary) !important; }
.sheshi-site-footer a { min-height: 44px; }
.sheshi-site-footer .sheshi-copyright { padding-top: 20px !important; border-top-color: var(--border) !important; color: var(--text-muted) !important; font-size: 12.5px !important; }

@media (max-width: 1023px) {
  .sheshi-wrap { width: min(100% - 48px, 1160px) !important; }
  .sheshi-index,
  .sheshi-directory-index { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .sheshi-results-layout { grid-template-columns: 1fr !important; }
  .sheshi-results-facets { display: none !important; }
  .sheshi-search-results { grid-template-columns: minmax(0, 1fr) 116px !important; }
  .sheshi-search-results > input[type="search"] { grid-column: 1 !important; }
  .sheshi-search-results > .sheshi-search-submit { grid-column: 2 !important; }
  .sheshi-search-results .sheshi-search-mobile-filters { display: block !important; grid-column: 1 / -1 !important; }
  body.search .sheshi-search-results .sheshi-search-mobile-filters summary { display: flex !important; min-height: 44px !important; align-items: center; color: var(--text-secondary) !important; }
  .sheshi-search-results .sheshi-search-mobile-filter-fields { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding-top: 8px; }
  .sheshi-profile-layout { grid-template-columns: minmax(0, 1fr) 300px !important; gap: 24px !important; }
}

@media (max-width: 767px) {
  .sheshi-wrap { width: calc(100% - 32px) !important; }
  .sheshi-site-header { backdrop-filter: none; }
  .sheshi-nav { min-height: 60px !important; gap: 8px !important; }
  .sheshi-nav { grid-template-columns: auto 1fr 44px 44px !important; }
  .sheshi-brand { grid-column: 1; margin-right: auto; }
  .sheshi-theme-toggle { grid-column: 3; }
  .sheshi-mobile-menu { grid-column: 4; }
  .sheshi-hero { padding: 40px 0 32px !important; }
  .sheshi-hero-copy { font-size: 16px !important; }
  .sheshi-search-hero { grid-template-columns: 1fr !important; gap: 8px !important; }
  .sheshi-search-hero > * { grid-column: 1 !important; grid-row: auto !important; width: 100% !important; }
  .sheshi-quick-categories > div {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding-bottom: 4px;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .sheshi-quick-categories > div::-webkit-scrollbar { display: none; }
  .sheshi-quick-categories a { flex: 0 0 auto; scroll-snap-align: start; }
  .sheshi-all-categories span { font-size: 12.5px !important; }
  .sheshi-hero-tools { display: block !important; }
  .sheshi-hero-tools > div { display: none !important; }
  .sheshi-discovery,
  .sheshi-section,
  .sheshi-directory-section,
  .sheshi-travel-feature,
  .sheshi-organization-paths { padding: 32px 0 !important; }
  .sheshi-discovery-head { display: flex !important; align-items: end !important; }
  .sheshi-discovery-head > div:last-child > p { display: none !important; }
  .sheshi-directory-countline { white-space: normal; }
  .sheshi-result-card--search,
  .sheshi-discovery-grid .sheshi-result-card--search {
    min-height: 0;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 16px !important;
  }
  .sheshi-result-body { grid-column: 2; }
  .sheshi-result-title-row { display: block !important; }
  .sheshi-result-title-row .sheshi-meta-chip { margin: 6px 0 0; }
  .sheshi-result-description { margin-top: 8px !important; }
  .sheshi-result-foot { grid-column: 1 / -1 !important; }
  .sheshi-result-links { display: grid !important; grid-template-columns: 1fr 1fr !important; grid-auto-flow: dense; gap: 8px !important; }
  .sheshi-result-website { grid-column: 2; }
  .sheshi-result-details { grid-column: 1; border: 1px solid var(--border-strong) !important; color: var(--text-primary) !important; }
  .sheshi-index,
  .sheshi-directory-index { grid-template-columns: 1fr !important; }
  .sheshi-index-row,
  .sheshi-directory-index > a { min-height: 132px !important; }
  .sheshi-travel-feature-layout,
  .sheshi-trust-lead { grid-template-columns: 1fr !important; gap: 24px !important; }
  .sheshi-trust-grid { display: block !important; }
  .sheshi-trust-item { border-right: 0 !important; border-bottom: 1px solid var(--border) !important; }
  .sheshi-trust-item:last-child { border-bottom: 0 !important; }
  .sheshi-results-search-strip { padding: 12px 0 !important; }
  .sheshi-search-results { grid-template-columns: minmax(0, 1fr) 52px !important; }
  .sheshi-search-results > .sheshi-search-submit { width: 52px !important; padding: 0 !important; }
  .sheshi-search-results .sheshi-search-submit-label { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; }
  .sheshi-search-results .sheshi-search-submit-icon { display: block !important; }
  .sheshi-search-results .sheshi-search-mobile-filter-fields { grid-template-columns: 1fr !important; }
  .sheshi-results-layout { padding-top: 20px !important; padding-bottom: 48px !important; }
  .sheshi-results-breadcrumb { display: none !important; }
  .sheshi-results-toolbar { align-items: center !important; }
  .sheshi-sort-form label { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; }
  .sheshi-active-filters { flex-wrap: nowrap !important; overflow-x: auto !important; }
  .sheshi-profile-frame { padding-top: 20px !important; padding-bottom: 56px !important; }
  .sheshi-profile-layout { display: block !important; }
  .sheshi-profile-breadcrumbs { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .sheshi-profile-mobile-actions { display: grid !important; gap: 8px !important; margin-top: 16px !important; }
  .sheshi-profile-mobile-actions a { min-height: 44px !important; border-radius: 8px !important; }
  .sheshi-profile-phone-link { border: 1px solid var(--border-strong) !important; color: var(--text-primary) !important; background: transparent !important; }
  .sheshi-service-index li,
  .sheshi-service-index li strong { font-size: 12.5px !important; }
  .sheshi-profile-management p { font-size: 13px !important; }
  .sheshi-profile-contact { position: static !important; margin-top: 24px !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
  .sheshi-profile-contact > .sheshi-kicker,
  .sheshi-profile-contact > h2,
  .sheshi-profile-desktop-actions { display: none !important; }
  .sheshi-profile-contact dl { border-top: 1px solid var(--border); }
  .sheshi-profile-transparency,
  .sheshi-profile-management { margin-top: 24px !important; }
  .sheshi-profile-mobile-callbar {
    padding-bottom: calc(0px + env(safe-area-inset-bottom)) !important;
    border-top: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
    background: var(--surface-card) !important;
    box-shadow: none !important;
  }
  .sheshi-profile-mobile-callbar a { min-height: 44px !important; border: 1px solid var(--accent) !important; border-radius: 8px !important; color: #fff !important; background: var(--accent) !important; }
  .sheshi-profile-page.has-mobile-callbar { padding-bottom: calc(72px + env(safe-area-inset-bottom)) !important; }
  .sheshi-beta-form { padding: 16px !important; }
  .sheshi-footer-grid { display: block !important; }
}

@media (forced-colors: active) {
  .sheshi-meta-chip,
  .sheshi-result-card--search,
  .sheshi-theme-toggle { border: 1px solid CanvasText !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
