/* ================================================================
   DYNAMIC THEME COLOR OVERRIDES
   This file overrides static colors with CSS variables for dynamic theming
   ================================================================ */

/* Breadcrumb active link */
.breadcrumb a:hover {
    color: var(--theme-color);
}

/* Gallery thumbnails */
.gallery-thumb:hover,
.gallery-thumb.active {
    border-color: var(--theme-color);
}

/* Product badge */
.product-detail__badge {
    background: var(--theme-light);
    color: var(--theme-color);
}

/* Price */
.product-detail__price-main {
    color: var(--theme-color);
}

/* Variants */
.variant-option:hover,
.variant-option.active {
    border-color: var(--theme-color);
    background: var(--theme-light);
}

.variant-price {
    color: var(--theme-color);
}

/* Review card hover */
.review-card:hover {
    border-color: var(--theme-light);
}

/* Review avatar */
.review-avatar {
    background: var(--theme-color);
}

/* Related products navigation */
.related-nav-btn:hover:not(:disabled) {
    background: var(--theme-color);
    border-color: var(--theme-color);
}

/* Product card view button */
.product-card__view {
    background: var(--theme-light);
    color: var(--theme-color);
}

.product-card:hover .product-card__view {
    background: var(--theme-color);
}

/* Mini testimonials */
.cp-mini-testimonial {
    border-left-color: var(--theme-color);
}

/* Content sections */
.cp-section__list li::before {
    color: var(--theme-color);
}

/* Steps */
.cp-step__number {
    background: var(--theme-color);
}

.cp-steps-detail__item h3 {
    color: var(--theme-color);
}

/* Buttons - Primary */
.btn-primary,
.btn--primary,
.product-cta-primary {
    background: var(--theme-color) !important;
    border-color: var(--theme-color) !important;
}

.btn-primary:hover,
.btn--primary:hover,
.product-cta-primary:hover {
    background: var(--theme-hover) !important;
    border-color: var(--theme-hover) !important;
}

.btn-primary:active,
.btn--primary:active,
.product-cta-primary:active {
    background: var(--theme-hover) !important;
}

/* Add to cart button */
.add-to-cart-btn,
.buy-now-btn,
.mobile-sticky-cta__btn {
    background: var(--theme-color) !important;
    border-color: var(--theme-color) !important;
}

.add-to-cart-btn:hover,
.buy-now-btn:hover,
.mobile-sticky-cta__btn:hover {
    background: var(--theme-hover) !important;
    border-color: var(--theme-hover) !important;
}

/* Links */
a.text-primary,
.link-primary {
    color: var(--theme-color);
}

a.text-primary:hover,
.link-primary:hover {
    color: var(--theme-hover);
}

/* Icons with primary color */
.icon-primary {
    color: var(--theme-color);
}

/* Badges */
.badge-primary {
    background: var(--theme-light);
    color: var(--theme-color);
}

/* Border colors */
.border-primary {
    border-color: var(--theme-color);
}

/* Background colors */
.bg-primary {
    background-color: var(--theme-color);
}

.bg-primary-light {
    background-color: var(--theme-light);
}

/* Focus states */
input:focus,
textarea:focus,
select:focus {
    border-color: var(--theme-color);
    box-shadow: 0 0 0 3px var(--theme-light);
}

/* Checkbox and radio */
input[type="checkbox"]:checked,
input[type="radio"]:checked {
    background-color: var(--theme-color);
    border-color: var(--theme-color);
}

/* Progress bar */
.progress-bar {
    background-color: var(--theme-color);
}

/* Loading spinner */
.spinner {
    border-color: var(--theme-light);
    border-top-color: var(--theme-color);
}

/* Slider/Range input */
input[type="range"]::-webkit-slider-thumb {
    background: var(--theme-color);
}

input[type="range"]::-moz-range-thumb {
    background: var(--theme-color);
}

/* Pagination */
.pagination .active {
    background: var(--theme-color);
    border-color: var(--theme-color);
}

.pagination a:hover {
    color: var(--theme-color);
    border-color: var(--theme-color);
}

/* Rating stars active */
.star.active,
.rating-star.filled {
    color: var(--theme-color);
}

/* CTA sections */
.cta-section {
    background: var(--theme-light);
}

.cta-button {
    background: var(--theme-color);
}

.cta-button:hover {
    background: var(--theme-hover);
}

/* Banner highlights */
.banner-highlight {
    background: var(--theme-color);
}

/* Card active borders */
.card.active,
.card:focus-within {
    border-color: var(--theme-color);
}

/* Tabs */
.tab.active {
    color: var(--theme-color);
    border-bottom-color: var(--theme-color);
}

/* Accordion */
.accordion-header.active {
    color: var(--theme-color);
}

/* Toggle switch */
.toggle-switch.checked {
    background: var(--theme-color);
}

/* Tooltip */
.tooltip {
    background: var(--theme-color);
}

/* Alert primary */
.alert-primary {
    background: var(--theme-light);
    color: var(--theme-color);
    border-color: var(--theme-light-medium);
}

/* Discount badge */
.discount-badge,
.sale-badge {
    background: var(--theme-color);
}

/* Stock status */
.in-stock {
    color: var(--theme-color);
}

/* Price highlight */
.price-highlight {
    color: var(--theme-color);
}

/* Feature icon */
.feature-icon {
    color: var(--theme-color);
}

/* Section divider */
.section-divider {
    border-color: var(--theme-light);
}

/* Hover effects for interactive elements */
.interactive-element:hover {
    color: var(--theme-color);
}

/* Quantity selector buttons */
.quantity-btn:hover {
    background: var(--theme-light);
    color: var(--theme-color);
}

/* Variant selector active state */
.variant-selector.selected {
    border-color: var(--theme-color);
    background: var(--theme-light);
}

/* Product features list checkmarks */
.feature-checkmark {
    color: var(--theme-color);
}

/* Trust badges with theme color */
.trust-badge-icon {
    color: var(--theme-color);
}

/* Urgency timer */
.urgency-timer {
    color: var(--theme-color);
}

/* Social proof indicators */
.social-proof-indicator {
    background: var(--theme-light);
    color: var(--theme-color);
}

/* Shipping info highlight */
.shipping-highlight {
    color: var(--theme-color);
}

/* Bundle offer highlight */
.bundle-offer {
    border-color: var(--theme-color);
    background: var(--theme-light);
}

/* Product tag */
.product-tag {
    background: var(--theme-light);
    color: var(--theme-color);
}

/* Wishlist button active */
.wishlist-btn.active {
    color: var(--theme-color);
}

/* Compare button active */
.compare-btn.active {
    color: var(--theme-color);
}

/* Size guide link */
.size-guide-link {
    color: var(--theme-color);
}

.size-guide-link:hover {
    color: var(--theme-hover);
}

/* Delivery info icon */
.delivery-icon {
    color: var(--theme-color);
}

/* Return policy icon */
.return-icon {
    color: var(--theme-color);
}

/* Guarantee seal */
.guarantee-seal {
    border-color: var(--theme-color);
    color: var(--theme-color);
}

/* Product specifications highlight */
.spec-highlight {
    color: var(--theme-color);
}

/* FAQ active question */
.faq-question.active {
    color: var(--theme-color);
}

/* Newsletter signup button */
.newsletter-btn {
    background: var(--theme-color);
}

.newsletter-btn:hover {
    background: var(--theme-hover);
}

/* Scroll to top button */
.scroll-top-btn {
    background: var(--theme-color);
}

.scroll-top-btn:hover {
    background: var(--theme-hover);
}

/* Mobile menu active item */
.mobile-menu-item.active {
    color: var(--theme-color);
}

/* Search highlight */
.search-highlight {
    background: var(--theme-light);
    color: var(--theme-color);
}

/* Filter active */
.filter-option.active {
    background: var(--theme-color);
}

/* Sort dropdown active */
.sort-option.active {
    color: var(--theme-color);
}

/* Breadcrumb separator */
.breadcrumb-separator {
    color: var(--theme-color);
}
