/* Shared release accessibility fixes, preserving existing themes. */
:focus-visible { outline: 3px solid #1967d2 !important; outline-offset: 3px; }
.skip-link { position: fixed; top: -100px; left: 12px; padding: 12px 18px; background: #fff; color: #111; z-index: 99999; }
.skip-link:focus { top: 8px; }
[role="button"] { cursor: pointer; }
.sov:not(.on), .fov:not(.on), .sucov:not(.on), .bsh:not(.visible), .bsh-cta:not(.on) { visibility: hidden; pointer-events: none; }
#release-network-status { position: fixed; left: 8px; right: 8px; top: 54px; z-index: 99999; padding: 12px; border: 1px solid #92400e; background: #fffbeb; color: #78350f; text-align: center; font-size: 14px; }
#quote-status { font-size: .8rem; margin: .65rem 0; line-height: 1.5; }
.fsheet, .suc-content { max-width: 100%; }
.suc-content { overflow-wrap: anywhere; }
button.foot-item { width: 100%; background: none; border: 0; text-align: left; font: inherit; }
@media (max-width: 600px) {
  input, textarea, select { font-size: 16px !important; }
  .sov-row, .qch, .af, .cat-card, .amp, .popt { min-height: 44px; }
  .loc-btn, .sov-back, .sov-clr, .fsh-x, .fbk, .cb, .conc-btn, .conc-send { min-width: 44px; min-height: 44px; }
  .suc-content { width: calc(100% - 24px); padding: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

.toast { white-space: normal; overflow-wrap: anywhere; }
