/* Esplora owns its layout and native advanced-filter disclosure; legacy surfaces exclude this page.
 * Query/state and shared press feedback keep their existing single owners. */
body.tbp-core-cerca {
  --tbp-search-green: var(--tbp-green, #084828);
  --tbp-search-sage: var(--tbp-sage, #F4F7F5);
  --tbp-search-gold: var(--tbp-gold, #C9A227);
  --tbp-search-line: var(--tbp-line, #E6EDE8);
}
html body.tbp-core-cerca #main { width: 100% !important; margin: 0 auto !important; padding: 0 !important; }
html body.tbp-core-cerca .tbp-cerca-page {
  width: min(1160px, calc(100% - 24px));
  margin: 0 auto;
  padding-top: 8px;
}
html body.tbp-core-cerca .tbp-cerca-page__head { margin: 0 0 12px; }
html body.tbp-core-cerca .tbp-cerca-page__head h1 {
  margin: 0 0 4px !important;
  color: var(--tbp-search-green);
  font-size: clamp(1.75rem, 4vw, 2rem) !important;
  font-weight: 800;
  letter-spacing: -.04em;
  line-height: 1.15 !important;
}
html body.tbp-core-cerca .tbp-cerca-page__lede {
  margin: 0 !important;
  color: var(--tbp-muted, #5D786B);
  font-size: .9375rem !important;
  line-height: 1.4 !important;
}
html body.tbp-core-cerca .tbp-filter-wrapper,
html body.tbp-core-cerca #tbp-filter-form,
html body.tbp-core-cerca :is(#tbp-filters-panel, .tbp-more-filters__grid) {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.tbp-core-cerca .tbp-filter-wrapper,
html body.tbp-core-cerca #tbp-filter-form { display: block !important; }
html body.tbp-core-cerca #tbp-filters-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: start;
  gap: 16px 12px !important;
}
html body.tbp-core-cerca .tbp-more-filters { grid-column: 1 / -1; min-width: 0; margin: 0; }
html body.tbp-core-cerca #tbp-filter-form .tbp-more-filters__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 12px 20px;
  padding: 0 !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-cerca-toolbar {
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  background: transparent !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-cerca-toolbar input[type="search"],
html body.tbp-core-cerca #tbp-filter-form #tbp-filter-luogo,
html body.tbp-core-cerca #tbp-filter-form .tbp-field--data input:not([type="hidden"]) {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid #D1D5DB !important;
  border-radius: 16px !important;
  background: #fff !important;
  color: var(--tbp-search-green) !important;
  font: 500 16px/1.3 Manrope, -apple-system, BlinkMacSystemFont, sans-serif !important;
  box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
}
html body.tbp-core-cerca #tbp-filter-form input::placeholder {
  color: #6B7280 !important;
  font-size: .8125rem !important;
  font-weight: 400 !important;
  opacity: 1;
}
html body.tbp-core-cerca #tbp-filter-form :is(input, a, button):focus-visible,
html body.tbp-core-cerca #tbp-filter-form :is(.tbp-primary-chip, .tbp-sheet-row):has(input:focus-visible) {
  outline: 2px solid #6B7280 !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
}
html body.tbp-core-cerca #tbp-filter-form :is(.tbp-primary-chip, .tbp-sheet-row) input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}
/* One neutral field border; keyboard focus must not add a second decorative box. */
html body.tbp-core-cerca #tbp-filter-form :is(#tbp-filter-q, #tbp-filter-luogo, .tbp-field--data input:not([type="hidden"])):focus {
  border-color: #6B7280 !important;
  outline: none !important;
  box-shadow: none !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section__head { margin: 0 0 8px !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-search-query-head label { display: block !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section__title {
  margin: 0 !important;
  color: var(--tbp-search-green) !important;
  font: 750 .875rem/1.3 Manrope, -apple-system, BlinkMacSystemFont, sans-serif !important;
  letter-spacing: -.015em !important;
  white-space: normal !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section__lead {
  display: block;
  margin: 4px 0 0 !important;
  font: 500 .8125rem/1.4 Manrope, -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: #6B7280 !important;
  white-space: normal !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section__body,
html body.tbp-core-cerca #tbp-filter-form .tbp-dove-card {
  display: block;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section--dove { position: relative !important; z-index: 10; }
html body.tbp-core-cerca #tbp-filter-form .tbp-dove-search {
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-dove-geo {
  display: grid !important;
  place-items: center !important;
  width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: var(--tbp-search-sage) !important;
  box-shadow: none !important;
  cursor: pointer;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-dove-input-wrap {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-field--data { margin: 0 !important; padding: 0 !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-luogo-suggest {
  position: absolute !important;
  z-index: 80 !important;
  top: calc(100% + 4px) !important;
  right: 0 !important;
  left: 0 !important;
  max-height: 280px;
  overflow-y: auto !important;
  margin: 0 !important;
  padding: 4px !important;
  border: 1px solid var(--tbp-search-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 12px 24px rgba(8, 72, 40, .12) !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-luogo-suggest[hidden] { display: none !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-luogo-suggest button {
  width: 100% !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--tbp-search-green) !important;
  text-align: left !important;
  box-shadow: none !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-luogo-suggest button:is(:hover, :focus-visible, .is-active) { background: var(--tbp-search-sage) !important; }
html body.tbp-core-cerca #tbp-filter-form :is(.tbp-choice-pair, .tbp-choice-row) {
  position: relative !important;
  isolation: isolate !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 4px !important;
  width: min(100%, var(--tbp-choice-width, 100%)) !important;
  margin: 0 !important;
  padding: 4px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: var(--tbp-search-sage) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
/* Compact controls, not full-height navigation tiles; categories keep their own geometry. */
html body.tbp-core-cerca #tbp-filter-form [data-pair] {
  --tbp-chip-icon-size: var(--tbp-icon, 48px);
  background: transparent !important;
  gap: 8px !important;
}
html body.tbp-core-cerca #tbp-filter-form [data-pair] .tbp-primary-chip {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 58px !important;
  padding: 4px !important;
  border: 1px solid #D1D5DB !important;
  background: #fff !important;
}
html body.tbp-core-cerca #tbp-filter-form [data-pair] .tbp-primary-chip.active {
  border-color: transparent !important;
  background: transparent !important;
}
html body.tbp-core-cerca #tbp-filter-form [data-pair] .tbp-primary-chip label { font-size: .75rem !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-choice-row[data-pair] .tbp-primary-chip {
  --tbp-chip-icon-size: var(--tbp-icon, 48px);
  flex-direction: column !important;
  gap: 3px !important;
  min-height: 58px !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-choice-row { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-choice-lens {
  position: absolute !important;
  z-index: 0 !important;
  top: 0 !important;
  left: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(120deg, #FFD300, #C9A227) !important;
  box-shadow: none !important;
  transition: transform 380ms cubic-bezier(.22,1,.36,1), width 380ms cubic-bezier(.22,1,.36,1), height 380ms cubic-bezier(.22,1,.36,1), opacity 160ms ease !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-choice-lens.is-on { opacity: 1 !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-rows: 48px auto !important;
  justify-items: center !important;
  align-content: start !important;
  gap: 4px !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 4px 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--tbp-search-green) !important;
  box-shadow: none !important;
  transform: none !important;
  cursor: pointer !important;
}
html body.tbp-core-cerca #tbp-filter-form :is(.tbp-dove-geo, .tbp-primary-chip) img {
  display: block !important;
  width: var(--tbp-chip-icon-size, 48px) !important;
  height: var(--tbp-chip-icon-size, 48px) !important;
  min-width: var(--tbp-chip-icon-size, 48px) !important;
  max-width: var(--tbp-chip-icon-size, 48px) !important;
  min-height: var(--tbp-chip-icon-size, 48px) !important;
  max-height: var(--tbp-chip-icon-size, 48px) !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  filter: none !important;
  transform: none !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip label {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font: 650 .8125rem/1.25 Manrope, -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  text-align: center !important;
  letter-spacing: -.015em !important;
  white-space: normal !important;
  cursor: inherit;
}
html body.tbp-core-cerca #tbp-filter-form :is(.tbp-primary-chip, .tbp-sheet-row) input[type="checkbox"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip.active { color: #4A3500 !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip.is-locked { opacity: .5 !important; cursor: not-allowed !important; }
@media (hover: hover) {
  html body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip:not(.active):not(.is-locked):hover { background: #E6EDE8 !important; }
}
html body.tbp-core-cerca #tbp-filter-form .tbp-cats-row {
  display: flex !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  padding: 6px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: #5D786B #F4F7F5;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-cat-chip { flex: 0 0 80px !important; width: 80px !important; max-width: 80px !important; scroll-snap-align: start; }
html body.tbp-core-cerca #tbp-filter-form .tbp-cat-chip.active { background: var(--tbp-search-gold) !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-options-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section--language .tbp-filter-options-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-sheet-row {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 8px !important;
  border: 1px solid var(--tbp-search-line) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--tbp-search-green) !important;
  box-shadow: none !important;
  cursor: pointer;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-sheet-check { display: none !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-sheet-row:has(input:checked) { border-color: var(--tbp-search-green) !important; background: var(--tbp-search-green) !important; color: #fff !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-sheet-text { color: inherit !important; font-size: .8125rem !important; font-weight: 650 !important; line-height: 1.3 !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-range-wrapper { padding: 0 4px !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-range-container { position: relative !important; width: 100% !important; height: 44px !important; margin: 0 !important; }
html body.tbp-core-cerca #tbp-filter-form .slider-track { position: absolute !important; top: 19px !important; right: 0 !important; left: 0 !important; height: 6px !important; border-radius: 999px !important; background: var(--tbp-search-sage); }
html body.tbp-core-cerca #tbp-filter-form .tbp-range-container input[type="range"] {
  position: absolute !important; top: 0 !important; left: 0 !important;
  width: 100% !important; height: 44px !important; margin: 0 !important; padding: 0 !important;
  border: 0 !important; box-shadow: none !important; pointer-events: none !important;
  -webkit-appearance: none !important; appearance: none !important; background: transparent !important;
}
html body.tbp-core-cerca #tbp-filter-form input[type="range"]::-webkit-slider-thumb {
  width: 44px !important; height: 44px !important; border: 10px solid transparent !important;
  border-radius: 50% !important; background: var(--tbp-search-green) padding-box !important;
  box-shadow: none !important; pointer-events: auto !important; -webkit-appearance: none !important; appearance: none !important; cursor: ew-resize;
}
html body.tbp-core-cerca #tbp-filter-form input[type="range"]::-moz-range-thumb {
  box-sizing: border-box; width: 44px !important; height: 44px !important; border: 10px solid transparent !important;
  border-radius: 50% !important; background: var(--tbp-search-green) padding-box !important;
  box-shadow: none !important; pointer-events: auto !important; cursor: ew-resize;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-price-boxes { display: flex !important; justify-content: space-between !important; gap: 12px !important; margin: 0 !important; }
html body.tbp-core-cerca #tbp-filter-form .price-box { display: flex !important; align-items: baseline; gap: 4px; margin: 0 !important; padding: 0 !important; background: transparent !important; }
html body.tbp-core-cerca #tbp-filter-form .price-box label { margin: 0 !important; color: var(--tbp-muted, #5D786B) !important; font-size: .8125rem !important; font-weight: 500 !important; }
html body.tbp-core-cerca #tbp-filter-form .price-box .val { color: var(--tbp-search-green) !important; font-size: .9375rem !important; font-weight: 750 !important; }
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-actions { grid-column: 1 / -1; display: flex !important; align-items: center !important; gap: 12px !important; margin: 0 !important; padding: 0 !important; }
html body.tbp-core-cerca #tbp-filter-form :is(.tbp-filter-reset, .tbp-search-results-link) {
  display: inline-flex !important; align-items: center; justify-content: center;
  min-height: 44px !important; margin: 0 !important; padding: 0 12px !important;
  border: 1px solid var(--tbp-search-line) !important; border-radius: 12px !important;
  background: #fff !important; color: var(--tbp-search-green) !important;
  font-size: .875rem !important; font-weight: 700 !important; text-decoration: none; box-shadow: none !important;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-search-results-link { border-color: var(--tbp-search-green) !important; background: var(--tbp-search-green) !important; color: #fff !important; }
html body.tbp-core-cerca .tbp-view-toggle,
html body.tbp-core-cerca #tbp-map-wrapper:not(.tbp-map-wrapper--page) { display: none !important; }
html body.tbp-core-cerca #tbp-results-container { width: 100% !important; max-width: none !important; margin: 16px 0 0 !important; scroll-margin-top: calc(var(--tbp-header-h, 72px) + 12px); }

@media (min-width: 380px) and (max-width: 739px) {
  html body.tbp-core-cerca #tbp-filters-panel { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section { grid-column: 1 / -1; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section--language .tbp-filter-options-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (min-width: 740px) {
  html body.tbp-core-cerca :is(#tbp-filters-panel, .tbp-more-filters__grid) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section--cats { grid-column: 1 / -1; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-field--data { padding-top: 0 !important; }
}
/* Shared text/control rows align neighbouring sections without fixed-height copy. */
@supports (grid-template-rows: subgrid) {
  @media (min-width: 740px) {
    html body.tbp-core-cerca #tbp-filter-form .tbp-more-filters__grid > .tbp-filter-section {
      display: grid !important;
      grid-template-rows: subgrid;
      grid-row: span 2;
      align-self: stretch;
      row-gap: 0;
    }
    html body.tbp-core-cerca #tbp-filter-form .tbp-more-filters__grid > .tbp-filter-section > :not(.tbp-filter-section__head) {
      align-self: start;
    }
  }
}
@media (min-width: 1100px) {
  html body.tbp-core-cerca :is(#tbp-filters-panel, .tbp-more-filters__grid) { grid-template-columns: repeat(6, minmax(0, 1fr)) !important; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section { grid-column: span 2; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section--dove { grid-column: span 4; }
  html body.tbp-core-cerca #tbp-filter-form :is(.tbp-filter-section--diff, .tbp-filter-section--risk) { grid-column: span 3; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-filter-section--cats { grid-column: 1 / -1; }
}
@media (max-width: 379px) {
  html body.tbp-core-cerca #tbp-filter-form .tbp-choice-pair[data-pair] .tbp-primary-chip { gap: 2px !important; padding-inline: 2px !important; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-choice-pair[data-pair] .tbp-primary-chip label { font-size: .6875rem !important; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-cerca-toolbar { grid-template-columns: minmax(0, 1fr); }
  html body.tbp-core-cerca #tbp-filter-form .tbp-filter-options-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (prefers-reduced-motion: reduce) {
  html body.tbp-core-cerca #tbp-filter-form .tbp-choice-lens { transition: none !important; }
}

/* Optional reading guidance, never a required wizard or animated prompt. */
html body.tbp-core-cerca .tbp-filter-guide {
  margin: 0 0 20px;
  padding: 16px 18px;
  border-radius: 12px;
  background: var(--tbp-surface, var(--tbp-search-sage));
  color: var(--tbp-night-text, var(--tbp-search-green));
}
html body.tbp-core-cerca .tbp-filter-guide h2 {
  margin: 0 0 6px !important;
  color: inherit;
  font-weight: 750;
  font-family: inherit;
  font-size: 1rem !important;
  line-height: 1.4 !important;
}
html body.tbp-core-cerca .tbp-filter-guide p {
  margin: 4px 0 0;
  color: inherit;
  font-size: .875rem;
  line-height: 1.55;
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-flow-arrow {
  display: inline-flex;
  width: 22px;
  height: 22px;
  margin-inline-end: 6px;
  vertical-align: middle;
  color: var(--tbp-night-text, var(--tbp-search-green));
}
html body.tbp-core-cerca #tbp-filter-form .tbp-filter-flow-arrow svg {
  display: block;
  flex: none;
  transform: rotate(90deg);
}
@media (min-width: 740px) and (max-width: 1099px) {
  html body.tbp-core-cerca #tbp-filter-form :is(.tbp-filter-section--data, .tbp-filter-section--mode, .tbp-filter-section--diff, .tbp-filter-section--duration, .tbp-filter-section--price) .tbp-filter-flow-arrow svg { transform: none; }
}
@media (min-width: 1100px) {
  html body.tbp-core-cerca #tbp-filter-form :is(.tbp-filter-section--data, .tbp-filter-section--mode, .tbp-filter-section--mastro, .tbp-filter-section--risk, .tbp-filter-section--language, .tbp-filter-section--price) .tbp-filter-flow-arrow svg { transform: none; }
}

html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-filter-section__title::before {
  color: var(--tbp-night-text) !important;
  background: var(--tbp-night-raised) !important;
}

/* ==========================================================================
   Filtro prezzo ridisegnato (23/9, Elind: «deve sembrare voluto»).
   - Traccia 6 px: parte spenta attenuata, intervallo scelto in verde #084828
     (nel tema scuro un verde chiaro che si legge sul nero).
   - Pomelli tondi da 28 px visibili, bordo verde e ombra; l'area da toccare
     resta 44 x 44 (bordo trasparente attorno al disco).
   - La traccia parte e finisce al centro dei pomelli (22 px di rientro), cosi'
     il tratto verde arriva esattamente sotto ciascun pomello.
   - Min e Max agli estremi, stessa tipografia: etichetta 13 px, valore 16 px
     extrabold; nel tema scuro valori ed euro bianchi.
   Il colore lo decide il CSS: lo script passa solo --tbp-p1 e --tbp-p2.
   ========================================================================== */
@layer tbp-appearance {
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container {
    --tbp-range-off: #dbe4de;
    --tbp-range-on: #084828;
    --tbp-range-thumb: #ffffff;
    position: relative !important;
    height: 44px !important;
    margin: 4px 0 0 !important;
  }
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-range-container {
    --tbp-range-off: #3a403d;
    --tbp-range-on: #5cc28c;
    --tbp-range-thumb: #141414;
  }
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container .slider-track {
    position: absolute !important;
    top: 19px !important;
    left: 22px !important;
    right: 22px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: linear-gradient(to right,
      var(--tbp-range-off) 0 var(--tbp-p1, 0%),
      var(--tbp-range-on) var(--tbp-p1, 0%) var(--tbp-p2, 100%),
      var(--tbp-range-off) var(--tbp-p2, 100%) 100%) !important;
  }
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container input[type="range"] {
    height: 44px !important;
    background: transparent !important;
  }
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container input[type="range"]::-webkit-slider-runnable-track {
    height: 44px !important; background: transparent !important; border: 0 !important;
  }
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    appearance: none !important;
    box-sizing: border-box !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    border: 8px solid transparent !important;
    border-radius: 50% !important;
    background: radial-gradient(circle closest-side, var(--tbp-range-thumb) calc(100% - 3.5px), var(--tbp-range-on) calc(100% - 3px)) padding-box !important;
    box-shadow: none !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .28)) !important;
    pointer-events: auto !important;
    cursor: ew-resize;
  }
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container input[type="range"]::-moz-range-thumb {
    box-sizing: border-box !important;
    width: 28px !important;
    height: 28px !important;
    border: 3px solid var(--tbp-range-on) !important;
    border-radius: 50% !important;
    background: var(--tbp-range-thumb) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .28), 0 0 0 8px transparent !important;
    pointer-events: auto !important;
    cursor: ew-resize;
  }
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container input[type="range"]:focus-visible { outline: none !important; }
  html body.tbp-core-cerca #tbp-filter-form .tbp-range-container input[type="range"]:focus-visible::-webkit-slider-thumb {
    background: radial-gradient(circle closest-side, var(--tbp-range-thumb) calc(100% - 3.5px), var(--tbp-range-on) calc(100% - 3px)) padding-box !important;
    border-color: rgba(201, 162, 39, .55) !important;
  }

  html body.tbp-core-cerca #tbp-filter-form .tbp-price-boxes {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: 12px !important;
    margin: 2px 0 0 !important;
    padding: 0 6px !important;
  }
  html body.tbp-core-cerca #tbp-filter-form .price-box {
    display: flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }
  html body.tbp-core-cerca #tbp-filter-form .price-box label {
    margin: 0 !important;
    color: #5D786B !important;
    -webkit-text-fill-color: #5D786B !important;
    font: 500 13px/1.3 Manrope, "DM Sans", sans-serif !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
  }
  html body.tbp-core-cerca #tbp-filter-form .price-box .val,
  html body.tbp-core-cerca #tbp-filter-form .price-box .val span {
    color: #084828 !important;
    -webkit-text-fill-color: #084828 !important;
    font: 800 16px/1.3 Manrope, "DM Sans", sans-serif !important;
    font-variant-numeric: tabular-nums;
  }
  html body.tbp-core-cerca #tbp-filter-form .price-box .val span { margin-right: .12em; }
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .price-box label {
    color: #b5b5b5 !important;
    -webkit-text-fill-color: #b5b5b5 !important;
  }
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .price-box .val,
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .price-box .val span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }
}

/* Tema scuro, 1/10 (collaudo: 12 scelte bianche con testo #EDEDED, 1,17:1; scelta attiva #EDEDED sull'oro,
   1,6:1; righe di durata e lingua bianche). Scelte e righe prendono la superficie rialzata del tema scuro,
   come le categorie qui sotto; la scelta attiva resta sull'oro con il testo scuro del tema chiaro; la riga
   scelta resta verde, con la linea verde chiara del tema scuro per distinguerla. Nel livello tbp-appearance
   perché lì sta la regola che schiarisce ogni etichetta. */
@layer tbp-appearance {
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form [data-pair] .tbp-primary-chip:not(.active) {
    border-color: var(--tbp-night-line) !important;
    background: var(--tbp-night-raised) !important;
  }
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip.active,
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip.active label {
    color: #4A3500 !important;
    -webkit-text-fill-color: #4A3500 !important;
  }
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-sheet-row {
    border-color: var(--tbp-night-line) !important;
    background: var(--tbp-night-raised) !important;
  }
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-sheet-row,
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-sheet-row .tbp-sheet-text {
    color: var(--tbp-night-text) !important;
    -webkit-text-fill-color: var(--tbp-night-text) !important;
  }
  html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-sheet-row:has(input:checked) {
    border-color: #9BDBB5 !important;
    background: var(--tbp-search-green) !important;
  }
  @media (hover: hover) {
    html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-primary-chip:not(.active):not(.is-locked):hover,
    html[data-tbp-theme="dark"] body.tbp-core-cerca #tbp-filter-form .tbp-sheet-row:not(:has(input:checked)):hover {
      background: #2B302D !important;
    }
  }
}
