.car-photo-widget { min-width: 0; }
.car-photo-colors.select-img-colors { height: auto; display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin: 24px 0 8px; }
.car-photo-swatches { display: flex; flex-wrap: wrap; gap: 7px; }
.car-photo-color { width: 48px; height: 48px; flex: 0 0 48px; padding: 0; border: 2px solid transparent; border-radius: 50%; background: #fff; box-shadow: 0 3px 4px rgba(0,0,0,.12); cursor: pointer; }
.car-photo-color span { display: block; width: 100%; height: 100%; border-radius: 50%; background: var(--photo-color); }
.car-photo-color.is-selected { border-color: #000; padding: 4px; }
.car-photo-color:focus-visible { outline: 3px solid #135ee2; outline-offset: 4px; }
.car-photo-color-name { color: #0a285c; font-size: 16px; line-height: 24px; }
.car-photo-slider { margin: 0 0 30px; }
.car-photo-slider .slick-slide { margin: 0; }
.car-photo-slider:not(.slick-initialized) > div:not(:first-child) { display: none; }
.car-photo-slider img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; }
.car-photo-slider .slick-dots { bottom: -20px; }
.car-photo-slider .slick-dots li button:before { color: #0a285c; }
.car-photo-placeholder { display: flex; align-items: center; justify-content: center; aspect-ratio: 3 / 2; color: #0a285c; font-size: 16px; }
.car-photo-gallery-loading { min-height: 80px; display: flex; justify-content: center; align-items: center; color: #0a285c; }
.car-photo-gallery-item { display: block; width: 50%; margin: 0; padding: 0; border: 0; background: none; cursor: zoom-in; }
.car-photo-gallery-item img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.car-photo-gallery-item:focus-visible { outline: 3px solid #135ee2; outline-offset: -3px; }
.car-photo-modal .modal-body { padding: 0; position: relative; }
.car-photo-full { display: block; width: 100%; max-height: 75vh; object-fit: contain; }
.car-photo-prev, .car-photo-next { position: absolute; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border: 0; border-radius: 50%; background: #000; color: #fff; font-size: 36px; line-height: 1; cursor: pointer; }
.car-photo-prev { left: 12px; }
.car-photo-next { right: 12px; }
@media (max-width: 767px) {
    .car-photo-colors.select-img-colors { display: flex; margin: 20px 0 8px; gap: 12px; }
    .car-photo-gallery-item-wide { width: 100%; }
}
