/* SEE-TECH 2026-10-31 — REGOLA GRAFICA SENZA PANNELLI / RIGHE ROSSI
   Ambito: superfici UI, pulsanti, cornici, separatori. Non modifica foto, logo o contenuti.
   Indipendente dal menu (layout/menu.js intatti). */
:root {
 --st-neutral-panel: #262a30;
 --st-neutral-panel-hover: #343941;
 --st-neutral-line: #666b73;
 --st-neutral-paper: #f2f3f4;
 color-scheme: only light !important;
}
html {color-scheme:only light!important}
section.cta {
 background:#181b20!important;
 background-image:linear-gradient(125deg,#15171b,#262930)!important;
 border-color:var(--st-neutral-line)!important;
}
body :is(a.btn,button.btn,.vf-view,.zoom-help-trigger,.vf-public-ribbon,
          .visit-choose-action,.precheck-pill),
body :is(.smoke-copy,.service-request-link) > a,
#search-form .searchbox button,
#contenuto section.contact > a {
 background-color:var(--st-neutral-panel)!important;
 background-image:none!important;
 border-color:var(--st-neutral-line)!important;
 color:#fff!important;
}
body :is(a.btn,button.btn,.vf-view,.zoom-help-trigger,.visit-choose-action,.precheck-pill):hover,
body :is(.smoke-copy,.service-request-link) > a:hover,
#search-form .searchbox button:hover,
#contenuto section.contact > a:hover {
 background-color:var(--st-neutral-panel-hover)!important;
 background-image:none!important;
 border-color:#969ba3!important;
 color:#fff!important;
}
body :is(.virtual-tag,.thermal-tag,.visit-duration-badge,.intro-detail,.virtual-note,
 .visit-bills,.visit-note,.visit-limit-foot,.visit-limits-box,.step-symbol,
 .visit-choose-icon,.notice,.note,.caution,.intubamento-link-box,.hero-notice,
 .virtual-entry,.altri-servizi-slogan,.featured-service-copy,.smoke-feature,
 .visit-feature-mark,.price-option.is-selected,.price-option,
 .filter.active,.filter[aria-pressed="true"]) {
 border-color:var(--st-neutral-line)!important;
}
body :is(.step-symbol,.visit-choose-icon,.price-option.is-selected) {
 background-color:var(--st-neutral-panel)!important;
 background-image:none!important;
 color:#fff!important;
}
body :is(.intro-detail,.visit-bills,.visit-note,.virtual-entry) {
 background-color:var(--st-neutral-paper)!important;
 background-image:none!important;
}
body .vf-public-ribbon {color:#fff!important;}
body :is(.filter.active,.filter[aria-pressed="true"]) {
 background-color:#e6e8eb!important;
 color:#22252b!important;
 box-shadow:inset 0 0 0 1px #6b717a!important;
}
body :is(#st-unified-nav,.st-unified-nav) {
 border-top-color:var(--st-neutral-line)!important;
}
#st-unified-nav .st-contact-shortcut {
 border-color:var(--st-neutral-line)!important;
}
#st-unified-nav .dropdown-menu {
 border-top-color:var(--st-neutral-line)!important;
}
body header.nav, body footer {
 border-top-color:var(--st-neutral-line)!important;
 border-bottom-color:var(--st-neutral-line)!important;
}
body :is(.smoke-feature,.altri-servizi-slogan,.featured-service-copy,.virtual-note,
 .notice,.note,.caution,.hero-notice,.intubamento-link-box) {
 border-left-color:var(--st-neutral-line)!important;
 border-top-color:var(--st-neutral-line)!important;
 border-bottom-color:var(--st-neutral-line)!important;
}
#contenuto details {
 border-color:#c6c9ce!important;
}
#st-unified-nav .dropdown-menu>a:hover,
#st-unified-nav .dropdown-menu>a:focus-visible {
 background:#353940!important;
}

/* Residual warm separators and selected duration card identified by browser QA. */
html body button.price-option.is-selected {
 border-color:#abb0b8!important;
 background:#262a30!important;
}
html body main h3,
html body main a:not(.btn) {
 border-color:#6b7079!important;
}

html body button.price-option.is-selected {
 box-shadow:0 0 0 2px rgba(130,136,145,.22)!important;
}

/* 31/10/2026 - Fix for visually red pseudo-elements, identified from phone screenshots.
   Explicit neutral backgrounds remain neutral under Android automatic darkening.
   CSS-only: preserve links, menu markup, typography, forms and service content. */
#prima-di-contattarci .precheck-intro h2::after {
  background:#777e88!important;
  background-image:none!important;
  border-color:#777e88!important;
}
#prima-di-contattarci .precheck-steps::before {
  background:#858b93!important;
  background-image:none!important;
}
#prima-di-contattarci .precheck-steps > li::before,
#prima-di-contattarci .precheck-steps > li:last-child::before {
  background:#393e46!important;
  background-image:none!important;
  color:#ffffff!important;
  border:1px solid #858b93!important;
}
#prima-di-contattarci .precheck-list > li::before {
  background:#393e46!important;
  background-image:none!important;
  color:#ffffff!important;
  border-color:#858b93!important;
}
body .faq-list summary::after,
body .visit-limits-box.included li::before {
  color:#bbc0c9!important;
  border-color:#7e858f!important;
}
