/* Redwave option / variant selection — black + red theme */

:root {
    --rw-opt-bg: #0a0a0a;
    --rw-opt-surface: rgba(255, 255, 255, 0.045);
    --rw-opt-border: rgba(255, 255, 255, 0.1);
    --rw-opt-accent: #ff4545;
    --rw-opt-accent-soft: rgba(255, 69, 69, 0.18);
    --rw-opt-accent-glow: rgba(255, 69, 69, 0.45);
    --rw-opt-text: #ffffff;
    --rw-opt-muted: rgba(255, 255, 255, 0.62);
    --rw-opt-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ── Product card color swatches (home + listing) ── */
.redwave-home .product-card-color-swatches,
.redwave-product-card .product-card-color-swatches {
    background: rgba(10, 10, 10, 0.88);
    border: 1px solid var(--rw-opt-border);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.redwave-home .product-card-color-swatch,
.redwave-product-card .product-card-color-swatch {
    border-color: transparent;
    transition:
        border-color 0.25s var(--rw-opt-ease),
        transform 0.25s var(--rw-opt-ease),
        box-shadow 0.25s var(--rw-opt-ease);
}

.redwave-home .product-card-color-swatch:hover,
.redwave-home .product-card-color-swatch.active,
.redwave-product-card .product-card-color-swatch:hover,
.redwave-product-card .product-card-color-swatch.active {
    border-color: var(--rw-opt-accent);
    transform: none !important;
    box-shadow: none !important;
}

/* ── Product detail page variants ── */
.redwave-product-details-page .product-variant {
    background: var(--rw-opt-surface) !important;
    border: 1px solid var(--rw-opt-border) !important;
    border-radius: 12px !important;
}

.redwave-product-details-page .product-variant .variant-item,
.redwave-product-details-page .product-variant.collapsed .variant-item {
    border-top-color: rgba(255, 255, 255, 0.08) !important;
}

.redwave-product-details-page .product-variant .more-toggle-btn {
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--rw-opt-muted) !important;
    transition: background 0.25s var(--rw-opt-ease), color 0.25s var(--rw-opt-ease);
}

.redwave-product-details-page .product-variant .more-toggle-btn:hover {
    background: var(--rw-opt-accent-soft) !important;
    color: var(--rw-opt-accent) !important;
}

.redwave-product-details-page .product-variant .variant-item-select,
.redwave-product-details-page .product-variant .aiz-megabox-elem {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid var(--rw-opt-border) !important;
    color: var(--rw-opt-text) !important;
    border-radius: 8px !important;
    transition:
        border-color 0.25s var(--rw-opt-ease),
        background 0.25s var(--rw-opt-ease),
        transform 0.2s var(--rw-opt-ease),
        box-shadow 0.25s var(--rw-opt-ease);
}

.redwave-product-details-page .product-variant .variant-item-select .text-dark,
.redwave-product-details-page .product-variant .aiz-megabox-elem .text-dark {
    color: var(--rw-opt-text) !important;
}

.redwave-product-details-page .product-variant label.aiz-megabox:hover .variant-item-select,
.redwave-product-details-page .product-variant label.aiz-megabox:hover .aiz-megabox-elem {
    border-color: rgba(255, 69, 69, 0.45) !important;
    transform: translateY(-1px);
}

.redwave-product-details-page .product-variant .aiz-megabox > input:checked ~ .aiz-megabox-elem,
.redwave-product-details-page .product-variant .variant-item-select.active {
    outline: 2px solid var(--rw-opt-accent) !important;
    outline-offset: 0;
    border-color: var(--rw-opt-accent) !important;
    background: var(--rw-opt-accent-soft) !important;
    box-shadow: 0 0 20px var(--rw-opt-accent-soft);
}

.redwave-product-details-page .product-variant .aiz-megabox > input:checked ~ .aiz-megabox-elem .text-dark {
    color: var(--rw-opt-text) !important;
    font-weight: 600;
}

.redwave-product-details-page .product-variant button:hover .dot {
    background-color: var(--rw-opt-accent) !important;
}

/* Product detail purchase buttons (main column) — override theme golden primary */
.redwave-product-details-page .redwave-cart-qty-box .redwave-pd-actions button.buy-now,
.redwave-product-details-page .redwave-cart-qty-box .redwave-pd-actions button.rw-pd-btn-buy,
.redwave-product-details-page .redwave-pd-actions .buy-now,
.redwave-product-details-page .redwave-pd-actions .rw-pd-btn-buy {
    background-color: #141414 !important;
    background-image: none !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

.redwave-product-details-page .redwave-cart-qty-box .redwave-pd-actions button.add-to-cart,
.redwave-product-details-page .redwave-cart-qty-box .redwave-pd-actions button.rw-pd-btn-cart,
.redwave-product-details-page .redwave-pd-actions .add-to-cart,
.redwave-product-details-page .redwave-pd-actions .rw-pd-btn-cart {
    background-color: var(--rw-opt-accent) !important;
    background-image: none !important;
    border: 1px solid var(--rw-opt-accent) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

.redwave-product-details-page .redwave-pd-actions .add-to-cart:hover,
.redwave-product-details-page .redwave-pd-actions .rw-pd-btn-cart:hover {
    background-color: #e03d3d !important;
    border-color: #e03d3d !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.redwave-product-details-page .redwave-pd-actions button.buy-now span,
.redwave-product-details-page .redwave-pd-actions button.add-to-cart span,
.redwave-product-details-page .redwave-pd-actions .buy-now span,
.redwave-product-details-page .redwave-pd-actions .add-to-cart span,
.redwave-product-details-page #add_to_cart_count {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.redwave-product-details-page .text-orange,
.redwave-product-details-page .hov-text-orange:hover {
    color: var(--rw-opt-accent) !important;
}

/* ── Add to cart modal ── */
#addToCart .modal-content {
    background: var(--rw-opt-bg) !important;
    border: 1px solid var(--rw-opt-border);
    color: var(--rw-opt-text);
}

#addToCart .modal-header,
#addToCart .modal-body,
#addToCart .modal-footer {
    background: transparent !important;
    border-color: var(--rw-opt-border) !important;
}

#addToCart .text-dark,
#addToCart .text-secondary,
#addToCart .fw-700,
#addToCart .fw-600 {
    color: var(--rw-opt-text) !important;
}

#addToCart .text-secondary {
    color: var(--rw-opt-muted) !important;
}

#addToCart .text-primary,
#addToCart .text-blue,
#addToCart #chosen_price {
    color: var(--rw-opt-accent) !important;
}

#addToCart .bg-light {
    background: var(--rw-opt-surface) !important;
    border: 1px solid var(--rw-opt-border);
}

#addToCart #option-choice-form .aiz-megabox-elem {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid var(--rw-opt-border) !important;
    color: var(--rw-opt-text) !important;
    transition:
        border-color 0.25s var(--rw-opt-ease),
        background 0.25s var(--rw-opt-ease),
        transform 0.2s var(--rw-opt-ease);
}

#addToCart #option-choice-form label.aiz-megabox:hover .aiz-megabox-elem {
    border-color: rgba(255, 69, 69, 0.5) !important;
}

#addToCart #option-choice-form .aiz-megabox > input:checked ~ .aiz-megabox-elem {
    outline: 2px solid var(--rw-opt-accent) !important;
    border-color: var(--rw-opt-accent) !important;
    background: var(--rw-opt-accent-soft) !important;
    color: var(--rw-opt-text) !important;
    box-shadow: 0 0 16px var(--rw-opt-accent-soft);
}

#addToCart .btn-primary {
    background-color: var(--rw-opt-accent) !important;
    border-color: var(--rw-opt-accent) !important;
}

#addToCart .btn-primary:hover {
    background-color: #e03d3d !important;
    border-color: #e03d3d !important;
}

#addToCart .aiz-plus-minus {
    border-color: var(--rw-opt-border) !important;
    background: var(--rw-opt-surface) !important;
}

#addToCart .aiz-plus-minus .input-number {
    color: var(--rw-opt-text) !important;
    background: rgba(0, 0, 0, 0.35) !important;
}

/* ── Select option offcanvas ── */
#rightOffcanvas.redwave-option-offcanvas {
    background: var(--rw-opt-bg) !important;
    color: var(--rw-opt-text);
    border-left: 1px solid var(--rw-opt-border);
}

#rightOffcanvas.redwave-option-offcanvas > .border-bottom {
    border-bottom-color: var(--rw-opt-border) !important;
}

/* Offcanvas pricing block — high contrast on dark panel */
#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-pricing-label {
    color: var(--rw-opt-text) !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-pricing-block {
    background: var(--rw-opt-surface) !important;
    border: 1px solid var(--rw-opt-border) !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-price-current {
    color: #ffffff !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-price-unit {
    color: var(--rw-opt-muted) !important;
    opacity: 1 !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-price-mrp {
    color: var(--rw-opt-muted) !important;
    opacity: 1 !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-discount-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 4px;
    margin-left: 8px;
    color: #0a0a0a !important;
    background: var(--rw-opt-accent) !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-gst-note {
    color: var(--rw-opt-accent) !important;
    opacity: 1 !important;
}

#rightOffcanvas.redwave-option-offcanvas .right-offcanvas-body {
    color: var(--rw-opt-text);
}

#rightOffcanvas.redwave-option-offcanvas .text-dark,
#rightOffcanvas.redwave-option-offcanvas .fw-700,
#rightOffcanvas.redwave-option-offcanvas h5,
#rightOffcanvas.redwave-option-offcanvas h6 {
    color: var(--rw-opt-text) !important;
}

#rightOffcanvas.redwave-option-offcanvas .text-secondary,
#rightOffcanvas.redwave-option-offcanvas .text-gray,
#rightOffcanvas.redwave-option-offcanvas .opacity-60,
#rightOffcanvas.redwave-option-offcanvas .opacity-70,
#rightOffcanvas.redwave-option-offcanvas .opacity-80 {
    color: var(--rw-opt-muted) !important;
    opacity: 1 !important;
}

#rightOffcanvas.redwave-option-offcanvas .text-primary,
#rightOffcanvas.redwave-option-offcanvas .text-blue,
#rightOffcanvas.redwave-option-offcanvas #chosen_price,
#rightOffcanvas.redwave-option-offcanvas .hov-text-blue:hover {
    color: var(--rw-opt-accent) !important;
}

#rightOffcanvas.redwave-option-offcanvas .bg-light {
    background: var(--rw-opt-surface) !important;
    border: 1px solid var(--rw-opt-border) !important;
}

#rightOffcanvas.redwave-option-offcanvas .border-soft-light,
#rightOffcanvas.redwave-option-offcanvas .border-bottom-dashed {
    border-color: var(--rw-opt-border) !important;
}

#rightOffcanvas.redwave-option-offcanvas .border.rounded-2,
#rightOffcanvas.redwave-option-offcanvas .border-dashed {
    border-color: var(--rw-opt-border) !important;
    background: var(--rw-opt-surface) !important;
}

#rightOffcanvas.redwave-option-offcanvas #option-choice-form .aiz-megabox-elem {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid var(--rw-opt-border) !important;
    color: var(--rw-opt-text) !important;
    transition:
        border-color 0.25s var(--rw-opt-ease),
        background 0.25s var(--rw-opt-ease),
        transform 0.2s var(--rw-opt-ease),
        box-shadow 0.25s var(--rw-opt-ease);
}

#rightOffcanvas.redwave-option-offcanvas #option-choice-form label.aiz-megabox:hover .aiz-megabox-elem {
    border-color: rgba(255, 69, 69, 0.5) !important;
    transform: translateY(-1px);
}

#rightOffcanvas.redwave-option-offcanvas #option-choice-form .aiz-megabox > input:checked ~ .aiz-megabox-elem {
    outline: 2px solid var(--rw-opt-accent) !important;
    border-color: var(--rw-opt-accent) !important;
    background: var(--rw-opt-accent-soft) !important;
    box-shadow: 0 0 18px var(--rw-opt-accent-soft);
}

#rightOffcanvas.redwave-option-offcanvas #option-choice-form .aiz-megabox > input:checked ~ .aiz-megabox-elem .rounded {
    box-shadow: 0 0 0 2px var(--rw-opt-accent);
}

#rightOffcanvas.redwave-option-offcanvas .aiz-plus-minus {
    border-color: var(--rw-opt-border) !important;
    background: var(--rw-opt-surface) !important;
}

#rightOffcanvas.redwave-option-offcanvas .aiz-plus-minus .inc-btn:hover:not(:disabled),
#rightOffcanvas.redwave-option-offcanvas .aiz-plus-minus .dec-btn:hover:not(:disabled) {
    background-color: var(--rw-opt-accent) !important;
    border-color: var(--rw-opt-accent) !important;
}

#rightOffcanvas.redwave-option-offcanvas .btn-primary,
#rightOffcanvas.redwave-option-offcanvas .btn-soft-primary {
    background-color: var(--rw-opt-accent) !important;
    border-color: var(--rw-opt-accent) !important;
}

#rightOffcanvas.redwave-option-offcanvas .discount-badge {
    background: var(--rw-opt-accent) !important;
    color: #0a0a0a !important;
}

/* Close button */
#rightOffcanvas.redwave-option-offcanvas .la-close,
#rightOffcanvas.redwave-option-offcanvas button .la-close {
    color: var(--rw-opt-muted) !important;
}

#rightOffcanvas.redwave-option-offcanvas button:hover .la-close {
    color: var(--rw-opt-accent) !important;
}

/* Kill remaining blue utility classes inside offcanvas */
#rightOffcanvas.redwave-option-offcanvas .text-blue,
#rightOffcanvas.redwave-option-offcanvas .hov-text-blue:hover,
#rightOffcanvas.redwave-option-offcanvas .animate-underline-blue:hover,
#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-link,
#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-stock {
    color: var(--rw-opt-accent) !important;
}

#rightOffcanvas.redwave-option-offcanvas .bg-soft-blue,
#rightOffcanvas.redwave-option-offcanvas .hov-bg-blue:hover,
#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-btn-cart,
#rightOffcanvas.redwave-option-offcanvas .add-to-cart {
    background-color: var(--rw-opt-accent) !important;
    color: #ffffff !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-btn-cart:hover,
#rightOffcanvas.redwave-option-offcanvas .add-to-cart:hover {
    background-color: #e03d3d !important;
    color: #ffffff !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-btn-buy,
#rightOffcanvas.redwave-option-offcanvas .buy-now {
    background-color: #141414 !important;
    border: 1px solid var(--rw-opt-border) !important;
    color: #ffffff !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-btn-buy:hover,
#rightOffcanvas.redwave-option-offcanvas .buy-now:hover {
    background-color: #1f1f1f !important;
    border-color: rgba(255, 69, 69, 0.4) !important;
}

#rightOffcanvas.redwave-option-offcanvas .rw-offcanvas-footer {
    background: var(--rw-opt-bg) !important;
    border-top-color: var(--rw-opt-border) !important;
}

#rightOffcanvas.redwave-option-offcanvas .border-top-dashed {
    border-top-color: var(--rw-opt-border) !important;
}

#rightOffcanvas.redwave-option-offcanvas #chosen_price {
    color: #ffffff !important;
}

#rightOffcanvas.redwave-option-offcanvas .input-number,
#rightOffcanvas.redwave-option-offcanvas .aiz-plus-minus .input-number {
    color: var(--rw-opt-text) !important;
    -webkit-text-fill-color: var(--rw-opt-text);
}

/* Override global aiz megabox blue outline */
#rightOffcanvas.redwave-option-offcanvas .aiz-megabox > input:checked ~ .aiz-megabox-elem,
#rightOffcanvas.redwave-option-offcanvas .product-variant .aiz-megabox > input:checked ~ .aiz-megabox-elem {
    outline-color: var(--rw-opt-accent) !important;
    border-color: var(--rw-opt-accent) !important;
}

#rightOffcanvas.redwave-option-offcanvas svg path[fill="#007bff"],
#rightOffcanvas.redwave-option-offcanvas svg path[fill="#0080ff"],
#rightOffcanvas.redwave-option-offcanvas svg path[fill="#0080fe"] {
    fill: var(--rw-opt-accent) !important;
}

@media (prefers-reduced-motion: reduce) {
    .redwave-product-details-page .product-variant .variant-item-select,
    .redwave-product-details-page .product-variant .aiz-megabox-elem,
    #addToCart #option-choice-form .aiz-megabox-elem,
    #rightOffcanvas.redwave-option-offcanvas #option-choice-form .aiz-megabox-elem {
        transition: none;
    }
}

/* Product detail — Meesho-style sticky bar (Add to Cart + Buy Now) */
#smart-bar.rw-smart-bar--meesho {
    --rw-sb-brand: #ff4545;
    --rw-sb-brand-hover: #e03d3d;
    z-index: 1030;
    left: 0;
    right: 0;
    width: 100%;
    padding: 10px 12px;
    padding-bottom: max(10px, env(safe-area-inset-bottom, 0px));
    background-color: #ffffff !important;
    border-top: 1px solid #eeeeee;
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.08) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

#smart-bar.rw-smart-bar--meesho.smart-bar,
#smart-bar.rw-smart-bar--meesho.smart-bar-mobile {
    margin-bottom: 0 !important;
}

#smart-bar.rw-pd-sticky-cta,
#smart-bar.rw-smart-bar--meesho {
    margin-bottom: 0 !important;
    bottom: 0 !important;
}

#smart-bar.rw-smart-bar--meesho .rw-smart-bar-actions {
    display: flex;
    align-items: stretch;
    gap: 10px;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn {
    flex: 1 1 0;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    min-height: 48px;
    padding: 12px 14px;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0;
    text-transform: none;
    white-space: nowrap;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    background-image: none !important;
    box-shadow: none;
    -webkit-tap-highlight-color: transparent;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn:active:not(:disabled) {
    opacity: 0.92;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn.d-none,
#smart-bar.rw-smart-bar--meesho .buy-now.d-none,
#smart-bar.rw-smart-bar--meesho .add-to-cart.d-none {
    display: none !important;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn-cart {
    background-color: #ffffff !important;
    color: var(--rw-sb-brand) !important;
    border: 1px solid var(--rw-sb-brand) !important;
    -webkit-text-fill-color: var(--rw-sb-brand) !important;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn-cart:hover {
    background-color: #fff5f5 !important;
    color: var(--rw-sb-brand-hover) !important;
    border-color: var(--rw-sb-brand-hover) !important;
    -webkit-text-fill-color: var(--rw-sb-brand-hover) !important;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn-buy {
    background-color: var(--rw-sb-brand) !important;
    color: #ffffff !important;
    border: 1px solid var(--rw-sb-brand) !important;
    -webkit-text-fill-color: #ffffff !important;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn-buy:hover {
    background-color: var(--rw-sb-brand-hover) !important;
    border-color: var(--rw-sb-brand-hover) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn-out {
    flex: 1 1 100%;
    background-color: #f5f5f5 !important;
    color: #999999 !important;
    border: 1px solid #e0e0e0 !important;
    -webkit-text-fill-color: #999999 !important;
    cursor: not-allowed;
}

#smart-bar.rw-smart-bar--meesho .rw-sb-btn-out:not(.d-none) {
    display: inline-flex !important;
}

@media (max-width: 380px) {
    #smart-bar.rw-smart-bar--meesho {
        padding-left: 10px;
        padding-right: 10px;
    }

    #smart-bar.rw-smart-bar--meesho .rw-sb-btn {
        font-size: 14px;
        min-height: 44px;
        padding: 10px 8px;
    }

    #smart-bar.rw-smart-bar--meesho .rw-smart-bar-actions {
        gap: 8px;
    }
}
