/* Swiper pagination */
.swiper-pagination-bullet-active { background: #1b5e20 !important; }
.product-swiper { background: #f5f5f5; }

/* Product description images fill full width, break out of p-4 padding */
#rvg-details img {
    width: calc(100% + 2rem);
    margin-left: -1rem;
    margin-right: -1rem;
    height: auto;
    display: block;
}

/* Spec selector buttons */
.spec-btn {
    border: 1.5px solid #d1d5db;
    border-radius: 6px;
    padding: 5px 12px;
    font-size: 12px;
    cursor: pointer;
    transition: all .15s;
    background: #fff;
}
.spec-btn.selected {
    border-color: #1b5e20;
    background: #1b5e20;
    color: #ffd700;
    font-weight: 700;
}
.spec-btn:disabled { opacity: .45; cursor: not-allowed; }

/* Admin toggle switch */
.toggle-switch { position: relative; display: inline-block; width: 44px; height: 24px; }
.toggle-switch input { opacity: 0; width: 0; height: 0; }
.toggle-slider {
    position: absolute; inset: 0;
    background: #ccc; border-radius: 24px;
    cursor: pointer; transition: .3s;
}
.toggle-slider:before {
    content: ''; position: absolute;
    height: 18px; width: 18px;
    left: 3px; bottom: 3px;
    background: #fff; border-radius: 50%; transition: .3s;
}
.toggle-switch input:checked + .toggle-slider { background: #1b5e20; }
.toggle-switch input:checked + .toggle-slider:before { transform: translateX(20px); }
