.toyox-header-search-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; min-width: 0; }
.toyox-header-search-row > #searchtop { flex: 1 1 260px; min-width: 0; }
.toyox-header-cta, .toyox-parts-submit { min-height: 48px; padding: 0 16px; border: 1px solid #079fdf; border-radius: 8px; font-size: 14px; font-weight: 600; }
.toyox-header-cta { flex: 0 0 auto; color: #0877aa; background: #edf8fe; }
.toyox-header-cta:hover { background: #dff2fc; }
.toyox-header-cta:focus-visible, .toyox-parts-popup :focus-visible { outline: 2px solid #079fdf; outline-offset: 2px; }
.toyox-parts-popup { position: relative; box-sizing: border-box; width: calc(100vw - 32px); max-width: 560px; max-height: calc(100vh - 32px); overflow-y: auto; margin: 16px auto; padding: 24px; background: #fff; color: #172f43; border-radius: 12px; }
.toyox-parts-popup *, .toyox-parts-popup *::before, .toyox-parts-popup *::after { box-sizing: border-box; }
.toyox-parts-popup h2 { padding-right: 28px; margin: 0 0 20px; font-size: 24px; }
.toyox-parts-close { position: absolute; top: 8px; right: 8px; width: 44px; height: 44px; border: 0; background: transparent; font-size: 28px; }
.toyox-parts-fields { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 14px; }
.toyox-parts-fields label { display: block; min-width: 0; font-weight: 600; }
.toyox-parts-fields small { font-weight: 400; color: #526b7b; }
.toyox-parts-fields input, .toyox-parts-fields textarea { display: block; width: 100%; min-height: 44px; margin-top: 6px; padding: 10px; border: 1px solid #a5bcd0; border-radius: 6px; font: inherit; background: #f7fafd; }
.toyox-parts-fields textarea { resize: vertical; }
.toyox-parts-wide { grid-column: 1/-1; }
.toyox-parts-error { display: block; font-size: 13px; font-weight: 400; color: #a92626; }
.toyox-parts-error:empty, .toyox-parts-status:empty { display: none; }
.toyox-parts-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.toyox-parts-consent { display: block; margin: 16px 0; font-size: 13px; }
.toyox-parts-status { margin: 16px 0; overflow-wrap: anywhere; }
.toyox-parts-submit { width: 100%; color: #fff; background: #079fdf; }
.toyox-parts-submit[disabled] { opacity: .65; cursor: wait; }
.toyox-parts-popup [hidden] { display: none !important; }
.toyox-parts-success { padding: 12px 0; text-align: center; }
.toyox-parts-success__check { display: block; margin: 0 auto 20px; }
.toyox-parts-success h2 { padding: 0; color: #198754; }
.toyox-parts-success p { margin: 0 0 24px; line-height: 1.6; }
@media (max-width: 991px) {
  .toyox-header-search-row > #searchtop, .toyox-header-cta { flex-basis: 100%; width: 100%; }
}
@media (max-width: 575px) {
  .toyox-parts-popup { padding: 20px 16px; }
  .toyox-parts-fields { grid-template-columns: minmax(0,1fr); }
}

/* Variant 5: header CTA only; existing search and popup styles remain unchanged. */
.toyox-header-cta.toyox-header-cta--card {
  display: flex;
  align-items: center;
  gap: 5px;
  width: 184px;
  height: 48px;
  padding: 6px;
  border-color: #91c9e6;
  background: #edf8fe;
  text-align: left;
  cursor: pointer;
}
.toyox-header-cta.toyox-header-cta--card:hover { border-color: #079fdf; background: #dff2fc; }
.toyox-header-cta__car { flex: 0 0 22px; color: #079fdf; }
.toyox-header-cta__copy { display: flex; flex: 1 1 auto; min-width: 0; flex-direction: column; gap: 2px; }
.toyox-header-cta__title { color: #163d56; font-size: 13px; font-weight: 700; line-height: 16px; white-space: nowrap; }
.toyox-header-cta__subtitle { color: #426b83; font-size: 11.5px; font-weight: 400; line-height: 13px; white-space: nowrap; }
.toyox-header-cta__arrow { flex: 0 0 12px; margin-left: auto; color: #079fdf; }
@media (max-width: 991px) {
  .toyox-header-cta.toyox-header-cta--card { width: 100%; }
  .toyox-header-cta--card .toyox-header-cta__title { font-size: 14px; }
  .toyox-header-cta--card .toyox-header-cta__subtitle { font-size: 12px; }
}

/* V1.3: equal label/input alignment; no header/search design change. */
.toyox-parts-caption { display: block; min-height: 20px; line-height: 20px; }
.toyox-parts-fields > label.field { display: flex; flex-direction: column; }
.toyox-parts-fields > label.field > input { height: 44px; }
.toyox-parts-file-list { list-style: none; padding: 0; margin: 0; overflow-wrap: anywhere; }
.toyox-parts-file-list:empty { display: none; }
.toyox-parts-file-list li { display: flex; align-items: center; gap: 8px; }
.toyox-parts-file-list span { min-width: 0; flex: 1; }
.toyox-parts-file-list button { min-width: 44px; min-height: 44px; border: 1px solid #a5bcd0; border-radius: 6px; background: #f7fafd; }

/* Mobile CTA review: all existing desktop rules above remain unchanged. */
.toyox-header-cta__mobile-copy, .toyox-mobile-cta, .toyox-mobile-cta-space { display: none; }
.toyox-mobile-cta[hidden], .toyox-mobile-cta-space[hidden] { display: none !important; }
@media (max-width: 768px) {
  .toyox-header-search-row { flex-direction: column; align-items: stretch; gap: 10px; }
  .toyox-header-search-row > #searchtop { flex: 0 0 auto; width: 100%; }
  .toyox-header-search-row > .toyox-header-cta--card {
    box-sizing: border-box; flex: 0 0 auto; width: 100%; min-height: 60px; height: auto;
    gap: 12px; padding: 10px 14px; border-color: #0877aa; background: #0877aa;
    box-shadow: 0 3px 10px rgba(7, 159, 223, .14);
  }
  .toyox-header-search-row .toyox-header-cta--card:hover { background: #06638f; border-color: #06638f; }
  .toyox-header-cta--card .toyox-header-cta__desktop-copy { display: none; }
  .toyox-header-cta--card .toyox-header-cta__mobile-copy { display: block; white-space: normal; overflow-wrap: anywhere; }
  .toyox-header-cta--card .toyox-header-cta__title { color: #fff; font-size: 16px; line-height: 21px; }
  .toyox-header-cta--card .toyox-header-cta__subtitle { color: #fff; font-size: 13px; line-height: 18px; }
  .toyox-header-cta--card .toyox-header-cta__car, .toyox-header-cta--card .toyox-header-cta__arrow { color: #fff; }
  .toyox-mobile-cta {
    display: block; box-sizing: border-box; position: fixed; z-index: 1030;
    inset-inline: 0; left: 0; right: 0; bottom: 0; padding: 10px 12px;
    padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    background: #fff; border-top: 1px solid #dce9f2; box-shadow: 0 -3px 14px rgba(22, 61, 86, .10);
  }
  .toyox-mobile-cta__button {
    display: block; box-sizing: border-box; width: 100%; min-height: 48px; padding: 12px;
    border: 1px solid #0877aa; border-radius: 8px; background: #0877aa; color: #fff;
    font: inherit; font-size: 16px; line-height: 22px; font-weight: 700; text-align: center;
    white-space: normal; overflow-wrap: anywhere; cursor: pointer;
  }
  .toyox-mobile-cta__button:hover { border-color: #06638f; background: #06638f; }
  .toyox-mobile-cta__button:focus-visible { outline: 2px solid #163d56; outline-offset: 2px; }
  .toyox-mobile-cta-space { display: block; width: 100%; pointer-events: none; }
}
