/* Deep Dark Mode for UniShop2 */
body, html, #content, .uni-wrapper, .common-home, .product-product, .product-category, .information-information, .product-manufacturer {
    background-color: #0D0005 !important;
    color: #E2E2E2 !important;
}

/* Modules, Cards, Panels */
.product-thumb, .category-wall .item, .category-wall .category-item, .category-list__item, .uni-item, .uni-item-bg,
.product-info, .product-block, .product-data, .tab-content, .tab-pane, #tab-description, .panel, .well, .modal-content, 
.uni-popup, .list-group-item, .dropdown-menu, .cart-dropdown .dropdown-menu, .checkout-checkout .panel,
.account-account .list-group-item, .box, .category-info, .information-info, .information-page, .manufacturer-info,
.product-category-list, .uni-module {
    background-color: #1C000B !important;
    border-color: #2A0012 !important;
    color: #E2E2E2 !important;
    border-radius: 12px !important;
}

/* Manufacturer Category List fixes */
.product-category-list__item {
    background-color: #1C000B !important;
    color: #E2E2E2 !important;
}
.product-category-list__item.selected {
    background-color: #2A0012 !important;
    color: #E6005C !important;
}
.product-category-list__item a { color: #E2E2E2 !important; }

/* Category Wall Text */
.category-list__name, .category-wall .name, .category-wall .item a {
    color: #E2E2E2 !important;
}
.category-list__name:hover, .category-wall .name:hover, .category-wall .item a:hover {
    color: #E6005C !important;
}

/* CATEGORY IMAGES INVERT ONLY - SAFEST SELECTOR POSSIBLE */
.category-list__img, .category-wall__image img {
    filter: invert(1) brightness(1.5) !important;
    background-color: transparent !important;
}

/* Explicitly force NO INVERT on EVERYTHING ELSE */
img, .product-thumb img, .product-page__image-main-img, .product-page__image-addit-img, .option__img, .swiper-slide img, .banner img, .manufacturer-list img, .carousel-inner img, .owl-carousel img {
    filter: none;
}

/* Rounded Buttons & Inputs */
.btn, .form-control, .qty-switch .qty-btn, .qty-switch .qty-input {
    border-radius: 12px !important;
}

/* Qty +/- Background */
.qty-switch .qty-btn, .qty-switch .qty-input {
    background-color: #1C000B !important;
    color: #FFFFFF !important;
    border-color: #2A0012 !important;
}
.qty-switch { background-color: transparent !important; }

/* Product Rounded Images */
.product-thumb .image { 
    background-color: #1C000B !important; 
    border-radius: 12px !important; 
    overflow: hidden !important; 
}
.product-thumb .image img { 
    border-radius: 12px !important; 
}
.product-info .thumbnails .thumbnail, .product-info .image {
    background-color: #1C000B !important;
    border-radius: 12px !important;
    border-color: #2A0012 !important;
    overflow: hidden !important;
}
.product-info .thumbnails .thumbnail img, .product-info .image img {
    border-radius: 12px !important;
}

/* Banners & Manufacturers (White Background) */
/* REMOVED .owl-carousel generally to prevent products from getting white background */
.carousel-banner .item, .manufacturer-list .item, .uni-module .banner-item, .banner, .manufacturer-module .owl-carousel, .carousel-module .owl-carousel {
    background-color: #FFFFFF !important;
    border-radius: 12px !important;
    padding: 10px !important;
}

/* Clear Owl Carousel generic background if any */
.product-module .owl-carousel, .uni-module .owl-carousel {
    background-color: transparent !important;
    padding: 0 !important;
}

/* Product Tags Style */
.product-info .tags a, .product-tags a, .tag a {
    background-color: #A200FF !important;
    color: #FFFFFF !important;
    border-radius: 8px !important;
    padding: 4px 10px !important;
    display: inline-block !important;
    margin: 2px !important;
    text-decoration: none !important;
    border: none !important;
}
.product-info .tags a:hover, .product-tags a:hover, .tag a:hover {
    background-color: #E6005C !important;
    color: #FFFFFF !important;
}

/* Overlay Blur Match Theme */
main.blur:after, footer.blur:after {
    background: rgba(13, 0, 5, 0.8) !important;
}

/* Forms & Inputs */
.form-control, input[type="text"], input[type="password"], input[type="email"], select, textarea { 
    background-color: #1C000B !important; 
    border-color: #2A0012 !important; 
    color: #FFFFFF !important; 
}
#search .form-control, header .search .form-control {
    background-color: #1C000B !important;
    color: #FFFFFF !important;
    border-color: #2A0012 !important;
}

/* Navigation & Tabs */
.nav-tabs { border-color: #2A0012 !important; }
.nav-tabs > li > a { background-color: #1C000B !important; color: #E2E2E2 !important; border-color: #2A0012 !important; border-radius: 12px 12px 0 0 !important; }
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { background-color: #2A0012 !important; color: #FFFFFF !important; border-color: #2A0012 !important; }
.tab-content { padding: 15px; border-radius: 0 0 12px 12px; }

/* Menu Hover */
.main-menu .navbar-nav > li > a:hover, .main-menu .navbar-nav > li:hover > a {
    background-color: #2A0012 !important;
    color: #E6005C !important;
}

/* Text Overrides */
h1, h2, h3, h4, h5, h6, .heading, .product-thumb h4 a, .product-info h1 { color: #FFFFFF !important; }
.description, .text-muted, .breadcrumb > li > a { color: #AAAAAA !important; }
.price, .product-thumb .price { color: #FFFFFF !important; }

/* Manufacturer Specific Overrides */
.carousel-banner .item, .manufacturer-list .item, .brand-list .item, .uni-module .banner-item, .carousel-wrapper .carousel {
    background-color: #FFFFFF !important;
    border-radius: 12px !important;
    padding: 10px;
    box-shadow: inset 0 0 0 1px #E2E2E2;
}

/* Footer subscribe text force */
.footer .subscribe-text, .footer-subscribe .text, .footer .newsletter-text, .footer-newsletter .text {
    color: #FFFFFF !important;
}

/* Fix Slideshow White Lines & Background */
.uni-slideshow, .slideshow, .swiper-viewport, .swiper-slide, #slideshow0 {
    background-color: #000000 !important;
    padding: 0 !important;
    border: none !important;
}

/* ========================================= */
/* DEEP DARK CHECKOUT, CART, LOGIN AUDIT     */
/* ========================================= */

/* 1. Product Data Padding & Spacing */
.product-data {
    margin-top: 15px !important;
    padding-top: 15px !important;
    border-top: 1px solid #2A0012 !important;
}
.product-data__item {
    padding: 6px 0 !important;
    border-bottom: 1px dashed #2A0012 !important;
}

/* 2. Login, Registration, and Popups */
.modal-login, .modal-register, .uni-popup, .modal-content, .modal-header, .modal-body, .modal-footer {
    background-color: #1C000B !important;
    border-color: #2A0012 !important;
    color: #E2E2E2 !important;
    border-radius: 12px !important;
}
.modal-header {
    border-bottom: 1px solid #2A0012 !important;
}
.modal-footer {
    border-top: 1px solid #2A0012 !important;
}
.modal-title, .checkout-login__link, .modal-login__link {
    color: #FFFFFF !important;
}
button.close {
    color: #E2E2E2 !important;
    text-shadow: none !important;
    opacity: 0.8 !important;
}
button.close:hover {
    color: #E6005C !important;
    opacity: 1 !important;
}

/* 3. Shopping Cart (Dropdown & Checkout) */
.cart-dropdown .dropdown-menu, #cart .dropdown-menu, .checkout-cart__wrapper, .checkout-cart__item {
    background-color: #1C000B !important;
    border-color: #2A0012 !important;
    color: #E2E2E2 !important;
    border-radius: 12px !important;
}
.checkout-cart {
    background-color: transparent !important;
}
.checkout-cart__item {
    border: 1px solid #2A0012 !important;
    margin-bottom: 10px !important;
}
.checkout-cart__name, .checkout-cart__price, .checkout-cart__total {
    color: #FFFFFF !important;
}
/* Standard OpenCart Tables */
.table, .table-bordered, .table-responsive, .table > thead > tr > th, .table > tbody > tr > td {
    background-color: #1C000B !important;
    border-color: #2A0012 !important;
    color: #E2E2E2 !important;
}
.table-hover > tbody > tr:hover {
    background-color: #2A0012 !important;
}

/* 4. UniShop2 Custom Checkout */
.unicheckout, .unicheckout__wrapper, .unicheckout__forms, .checkout-customer, .payment-address, .unicheckout__pickup-item, .unicheckout__comment, .unicheckout__payment {
    background-color: transparent !important;
    color: #E2E2E2 !important;
}
.user_data, .checkout-customer__group, .unicheckout__pickup-item, .unicheckout__address, .unicheckout__shipping, .unicheckout__payment, .unicheckout__comment {
    background-color: #1C000B !important;
    border: 1px solid #2A0012 !important;
    border-radius: 12px !important;
    padding: 15px !important;
    margin-bottom: 15px !important;
}
.unicheckout__pickup-select, .checkout-comment, select[name="country_id"], select[name="zone_id"] {
    background-color: #0D0005 !important;
    border: 1px solid #2A0012 !important;
    color: #FFFFFF !important;
    border-radius: 12px !important;
}

/* Fix Checkout Nav Tabs */
.unicheckout__pickup-nav.nav-tabs > li > a {
    background-color: #1C000B !important;
    color: #AAAAAA !important;
    border-color: #2A0012 !important;
}
.unicheckout__pickup-nav.nav-tabs > li.active > a {
    background-color: #2A0012 !important;
    color: #FFFFFF !important;
}
/* Radio buttons and Checkboxes */
.radio label, .checkbox label, .unicheckout__pickup-title, .checkout-customer__group-label {
    color: #E2E2E2 !important;
}

/* 5. Button Text & Contrast */
.btn-primary, .btn-default, .btn-danger, .btn-success {
    color: #FFFFFF !important;
}
.btn-default {
    background-color: #2A0012 !important;
    border-color: #2A0012 !important;
}
.btn-default:hover {
    background-color: #E6005C !important;
    color: #FFFFFF !important;
}
.btn-primary:hover, .add_to_cart:hover {
    background-color: #A200FF !important;
    color: #FFFFFF !important;
}

/* ========================================= */
/* PATCH FOR POPUP CART & OPEN CART CHECKOUT */
/* ========================================= */

/* Popup Cart Modal & Dropdown */
.header-cart__dropdown, .header-cart__wrapper, .header-cart__item, .header-cart__totals, .header-cart__buttons, .header-cart__empty {
    background-color: #1C000B !important;
    color: #E2E2E2 !important;
    border-color: #2A0012 !important;
}
.header-cart__item {
    border-bottom: 1px solid #2A0012 !important;
}
.header-cart__name a, .header-cart__price, .header-cart__total, .header-cart__totals-title, .header-cart__totals-text {
    color: #FFFFFF !important;
}
.header-cart__name a:hover {
    color: #E6005C !important;
}

/* Standard OpenCart Checkout (Accordion) */
#accordion .panel-default, #accordion .panel-heading, #accordion .panel-body, #accordion .panel-title, .panel-group .panel {
    background-color: #1C000B !important;
    color: #FFFFFF !important;
    border-color: #2A0012 !important;
}
#accordion .panel-heading {
    border-bottom: 1px solid #2A0012 !important;
}
#accordion .panel-title a {
    color: #FFFFFF !important;
    text-decoration: none !important;
}
#accordion .panel-title a:hover {
    color: #E6005C !important;
}
#accordion input[type="text"], #accordion input[type="password"], #accordion select, #accordion textarea {
    background-color: #0D0005 !important;
    border: 1px solid #2A0012 !important;
    color: #FFFFFF !important;
    border-radius: 12px !important;
}
#accordion label.control-label, #accordion .radio label, #accordion .checkbox label {
    color: #E2E2E2 !important;
}

/* Footer explicit color override to match standard dark theme instead of being pitch black */
footer {
    background-color: #1C000B !important;
}

/* ========================================= */
/* FORGOT PASSWORD & BLANKET OPEN-CART FORMS */
/* ========================================= */

.uni-form, .account-forgotten, #account-register .row, #account-login .row, .return-form, .contact-form {
    background-color: #1C000B !important;
    border-color: #2A0012 !important;
    color: #E2E2E2 !important;
    border-radius: 12px !important;
    padding: 15px !important;
}

.account-forgotten__heading, .uni-form__heading, legend {
    color: #FFFFFF !important;
    border-bottom: 1px solid #2A0012 !important;
}

/* System Alerts (Success, Warning, Danger) */
.alert-success, .alert-warning, .alert-danger, .alert-info {
    border-radius: 12px !important;
    color: #FFFFFF !important;
    border: none !important;
}