/* Approved field-only exceptions. Original template CSS and layout stay intact. */

/* Light category panels must not inherit the photo-hero white text/shadow. */
main .yrvenok-archive-heading-panel h1 {
  color: #1A2530 !important;
  text-shadow: none !important;
}

/* Inherit the button's own foreground, including hover/selected/disabled states.
   Do not set every span on the page to one global text color. */
:is(a, button).rounded-full :is(span, i, svg) {
  color: inherit !important;
}

/* Only the original RFQ form receives the agreed field dimensions. Hidden
   context/honeypot fields, newsletter inputs and surrounding layout are untouched. */
main .yrvenok-rfq-form input[id]:is([type="text"], [type="email"], [type="tel"], [type="url"], [type="number"], [type="date"]),
main .yrvenok-rfq-form select {
  box-sizing: border-box;
  font-size: 16px !important;
  line-height: 24px;
  height: 48px !important;
  padding: 11px 16px;
}

main .yrvenok-rfq-form label[for],
main .yrvenok-rfq-form #yrvenok-topic-label {
  font-size: 14px !important;
  margin-bottom: 8px;
}

main .yrvenok-rfq-form > :not([hidden]) ~ :not([hidden]) {
  margin-top: 16px;
}

/* RFQ-only optional fields and recovery states; surrounding template is unchanged. */
.yrvenok-rfq-form [hidden] { display: none !important; }
.yrvenok-rfq-form legend { font-size: 14px; font-weight: 600; margin-bottom: 8px; }
.yrvenok-rfq-form label[for] { display: block; }
.yrvenok-rfq-form textarea { font-size: 16px !important; line-height: 24px; resize: vertical; }
.yrvenok-rfq-item { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .65fr) auto; gap: 16px; align-items: start; margin-block: 16px; }
.yrvenok-rfq-item > button { margin-top: 28px; }
.yrvenok-rfq-buying { border: 1px solid #DEE2E5; border-radius: 12px; padding: 16px; }
.yrvenok-rfq-buying summary { cursor: pointer; font-size: 16px; font-weight: 600; }
.yrvenok-rfq-buying-fields { display: grid; gap: 16px; padding-top: 16px; }
.yrvenok-rfq-help { font-size: 14px !important; line-height: 1.5; margin-top: 8px; }
.yrvenok-rfq-checks { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.yrvenok-rfq-checks label { display: inline-flex; gap: 8px; align-items: center; min-height: 44px; font-size: 14px; }
.yrvenok-rfq-checks input { width: 18px; height: 18px; }
.yrvenok-rfq-secondary { min-height: 44px; padding: 8px 16px; border: 1px solid #DEE2E5; border-radius: 999px; font-size: 14px; color: #27455C; }
.yrvenok-rfq-secondary:hover { border-color: #00857C; }
.yrvenok-rfq-form :is(input, select, textarea):focus-visible { outline: 2px solid #00857C !important; outline-offset: 2px; }
.yrvenok-rfq-form [aria-invalid="true"] { border-color: #991B1B !important; }
.yrvenok-rfq-summary { background: #FEF2F2; border: 1px solid #FECACA; border-radius: 12px; padding: 16px; }
.yrvenok-rfq-summary :is(a, li, strong), .yrvenok-rfq-error { color: #991B1B !important; }
.yrvenok-rfq-summary ul { list-style: disc; padding-left: 20px; }
.yrvenok-rfq-summary a { text-decoration: underline; }
.yrvenok-rfq-error { font-size: 14px !important; line-height: 1.5; margin-top: 8px; }
.yrvenok-rfq-form :disabled { cursor: not-allowed; }
.yrvenok-rfq-form :is(input, select, textarea):disabled { opacity: .75; }
.yrvenok-rfq-recovery { display: flex; flex-wrap: wrap; gap: 8px; }
.yrvenok-rfq-recovery p { flex-basis: 100%; }
#yrvenok-rfq-summary, #yrvenok-rfq-items, #yrvenok-rfq-status { scroll-margin-top: 100px; }
@media (max-width: 767px) {
  .yrvenok-rfq-item { grid-template-columns: minmax(0, 1fr); }
  .yrvenok-rfq-item > button { justify-self: start; margin-top: 0; }
}

/* Existing shared-control states: closed answers occupy no space; unavailable
   back-to-top controls cannot remain an invisible keyboard stop. */
main .faq-body[aria-hidden="true"] { display: none !important; }
#scroll-top[hidden] { display: none !important; }
