/* Picture choices retain native radio/checkbox behavior and readable labels. */
.r2-range-fields { display: grid; grid-template-columns: minmax(0,1fr) 12px minmax(0,1fr); align-items: center; gap: 6px; }
#buyer-intake-form .r2-range-fields select, #buyer-intake-form .r2-range-fields input[type=number] { min-width: 0; border-radius: 13px; border-color: #898694; padding: 10px 14px; }
.r2-range-dash { text-align: center; color: #a9a5af; }
.r2-intake-grid .r2-style-card:not(:has(.r2-intake-photo)) { grid-column: 1 / -1; justify-self: start; }
.r2-intake-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.r2-style-card .r2-intake-photo {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.r2-style-card .r2-intake-photo[hidden] { display: none; }
.r2-style-card input {
  inset-inline-start: 8px;
  inset-inline-end: auto;
  top: 8px;
}
.r2-style-card:not(:has(.r2-intake-photo:not([hidden]))) {
  flex-direction: row;
  align-items: center;
  padding: 8px;
}
.r2-style-card:not(:has(.r2-intake-photo:not([hidden]))) input {
  position: static;
  flex: 0 0 22px;
}
.r2-intake-card .r2-style-label { flex: 1; }
.r2-style-card:has(input:checked) .r2-intake-photo { opacity: .7; }
/* Symbols replace only choices with a recognizable visual meaning. */
#buyer-intake-form .r2-symbol-chip > span { min-width: 86px; min-height: 78px; gap: 8px; padding: 14px 18px; border-width: 2px; position: relative; }
#buyer-intake-form .r2-symbol-chip img { width: 40px; height: 40px; object-fit: contain; }
#buyer-intake-form .r2-road-chip > span { min-width: 110px; min-height: 108px; padding: 12px; }
#buyer-intake-form .r2-road-chip img { width: 80px; height: 80px; }
#buyer-intake-form .r2-symbol-chip input:checked + span::after { content: '✓'; position: absolute; top: 2px; inset-inline-end: 4px; font: bold 14px/1 sans-serif; color: var(--r2-red); }
.r2-symbol-name { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.r2-symbol-tooltip { display: none; position: absolute; z-index: 20; top: calc(100% + 5px); inset-inline-start: 0; box-sizing: border-box; width: 100%; overflow-wrap: anywhere; padding: 7px 10px; background: #211c1a; color: white; font-size: 12px; font-style: normal; line-height: 1.4; border-radius: 3px; pointer-events: none; }
.r2-symbol-chip:hover .r2-symbol-tooltip, .r2-symbol-chip:focus-within .r2-symbol-tooltip { display: block; }
@media (max-width: 599px) {
  .r2-intake-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
