/* =========================================================
   DARK BLUE THEME OVERRIDE
   Loaded after style.css / plugins.css / responsive.css.
   Only recolors the site — no structural / layout changes.
   ========================================================= */

:root{
  --db-bg:            #0a0e1a;   /* page background */
  --db-bg-alt:        #0e1526;   /* section alt background */
  --db-surface:       #121a30;   /* header, cards, boxes */
  --db-surface-2:     #182241;   /* dropdowns, hover surfaces */
  --db-surface-3:     #1e2a4e;   /* inputs, table rows */
  --db-border:        #26314f;
  --db-border-light:  #33436b;
  --db-text:          #dbe4fb;
  --db-text-muted:    #93a3c9;
  --db-heading:       #f2f5ff;
  --db-accent:        #2f6fed;   /* primary blue */
  --db-accent-hover:  #4f8bff;
  --db-accent-dark:   #1f4fbb;
  --db-white-swap:    #121a30;   /* replaces old #fff backgrounds */
  --db-black-swap:    #2f6fed;   /* replaces old #000 backgrounds (buttons etc.) */
}

/* ---------- base ---------- */
html, body{
  background-color: var(--db-bg) !important;
  color: var(--db-text) !important;
}

body, p, span, li, td, th, label, div{
  color: var(--db-text);
}

h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{
  color: var(--db-heading) !important;
}

a{ color: var(--db-accent); }
a:hover, a:focus, a:active{ color: var(--db-accent-hover) !important; }

hr{ border-color: var(--db-border) !important; }

/* ---------- generic surfaces (headers, dropdowns, menus, modals, cards) ---------- */
.top-header,
.stickyNav,
.site-header,
#header-cart,
.search,
#siteNav > li .megamenu,
#siteNav > li ul.dropdown,
#currencies, #language,
.tab_container,
.collection-box,
.grid-products .item,
.product-single,
.modal, .modal-content,
.quick-view-modal,
.mfp-content,
footer, .footer,
.newsletter,
.newsletter-section,
.cart-table, .cart_table,
table,
.pre-footer,
#pre-loader,
.breadcrumb,
.sidebar,
.filter-sidebar,
.accordion, .panel,
.tooltip, .tooltip-inner,
.select2-dropdown,
.dropdown-menu,
.newsletter-wrap,
#popup-container,
.newsletter-left,
.mfp-bg{
  background-color: var(--db-surface) !important;
  border-color: var(--db-border) !important;
}

.newsletter-wrap h2,
.newsletter-wrap p,
.newsletter-wrap label{
  color: var(--db-heading) !important;
}

.newsletter-section .section-header label,
.newsletter-section .section-header span,
.newsletter-section label,
.newsletter-section h2{
  color: var(--db-heading) !important;
}

.promotion-header{
  background-color: #14213d !important;
  color: #a9c6ff !important;
}

/* page title / breadcrumb bar (checkout, contact, about, etc.) */
.page.section-header,
.bredcrumbWrap,
.breadcrumbs,
.map-section__overlay{
  background-color: var(--db-surface) !important;
  border-color: var(--db-border) !important;
}
.page.section-header h1{
  color: var(--db-heading) !important;
}
.bredcrumbWrap a, .breadcrumbs a{
  color: var(--db-text-muted) !important;
}
.bredcrumbWrap span, .breadcrumbs span{
  color: var(--db-text) !important;
}

/* bootstrap cards used for payment accordion etc. */
.card{
  background-color: var(--db-surface) !important;
  border-color: var(--db-border) !important;
}
.card-header{
  background-color: var(--db-surface-2) !important;
  border-color: var(--db-border) !important;
}
.card-link, .card-header a{
  color: var(--db-accent) !important;
}
.card-body{
  background-color: var(--db-surface) !important;
  color: var(--db-text) !important;
}

/* generic bootstrap tables (order summary, cart, compare) */
table{
  background-color: var(--db-surface) !important;
}
table thead th, table tbody td, table tbody th,
table tfoot td, table tfoot th{
  background-color: var(--db-surface) !important;
  color: var(--db-text) !important;
  border-color: var(--db-border) !important;
}

/* hover / secondary surfaces */
#siteNav > li ul.dropdown li a:hover,
.mini-products-list li:hover,
.select2-results__option--highlighted{
  background-color: var(--db-surface-2) !important;
}

/* ---------- text colors that were pure black/dark-gray ---------- */
.top-header, .top-header a, .top-header p, .top-header select, .top-header .fa,
.top-header span.selected-currency, .top-header .language-dd,
#siteNav > li > a,
#siteNav > li .megamenu li.lvl-1 a.lvl-1,
#siteNav > li .megamenu li.lvl-1 li .site-nav,
#siteNav > li ul.dropdown li a,
.site-header__cart,
#cart-title strong,
#header-cart .priceRow,
.mini-products-list li .pName,
.grid-products .item .product-name a,
.grid-products .item .product-price,
.product-price .price,
.product-price__price,
.grid-view-item__title,
.tab-slider-product .tabs > li.active,
.collection-grid-item__title,
#currencies li, #language li,
.slick-prev:before, .slick-next:before,
.sold-out span{
  color: var(--db-text) !important;
}

.mini-products-list li .pName:hover{ color: var(--db-accent-hover) !important; }

/* ---------- buttons ---------- */
.btn,
.slideshow .btn,
.variants.add button,
a.quick-view, a.wishlist, .cartIcon, .add-to-compare,
.button-style2 .cartIcon, .button-style2 .quick-view-popup,
.button-style2 .wishlist, .button-style2 .compare,
.button-style2 .variants.add button,
.grid-products-hover-btn .cartIcon, .grid-products-hover-btn .add-to-compare,
input[type="submit"], input[type="button"],
button{
  background-color: var(--db-accent) !important;
  color: #ffffff !important;
  border-color: var(--db-accent) !important;
}

.btn:hover, .btn:focus,
.variants.add button:hover,
a.quick-view:hover, a.wishlist:hover, .cartIcon:hover, .add-to-compare:hover,
input[type="submit"]:hover, input[type="button"]:hover,
button:hover{
  background-color: var(--db-accent-hover) !important;
  opacity: 1 !important;
  color:#fff !important;
}

.btn--secondary{
  background-color: var(--db-surface-3) !important;
  color: var(--db-text) !important;
  border: 1px solid var(--db-border-light) !important;
}
.collection-box .collection-grid-item__title.btn--secondary:hover,
.btn--secondary:hover{
  background-color: var(--db-accent) !important;
  color:#fff !important;
}

.grid-products-hover-gry .cartIcon, .grid-products-hover-gry .add-to-compare{
  background-color: var(--db-surface-3) !important;
  color: var(--db-text) !important;
}

/* labels / badges */
.product-labels .lbl,
#siteNav a .lbl,
.site-header__cart-count{
  background-color: var(--db-accent) !important;
  color: #fff !important;
}

/* ---------- forms ---------- */
input, select, textarea{
  background-color: var(--db-surface-3) !important;
  color: var(--db-text) !important;
  border: 1px solid var(--db-border-light) !important;
}
input::placeholder, textarea::placeholder{
  color: var(--db-text-muted) !important;
}
input:focus, select:focus, textarea:focus{
  border-color: var(--db-accent) !important;
  outline: none !important;
}

/* checkout / login / register boxes */
.login-form, .register-form, .checkout-form,
.customer-form, .account-form,
.contact-form, .box, .card, .panel-body{
  background-color: var(--db-surface) !important;
  border-color: var(--db-border) !important;
}

/* ---------- tables (cart / compare) ---------- */
table th, table td{
  border-color: var(--db-border) !important;
  color: var(--db-text) !important;
}
table thead th{
  background-color: var(--db-surface-2) !important;
}

/* ---------- backgrounds that were light gray ---------- */
.bg-light, .section-bg, .grey-bg, .light-bg,
.collection-box .collection-grid-item__title.btn--secondary{
  background-color: var(--db-bg-alt) !important;
}

/* ---------- images: subtle dim so bright product photos sit better on dark bg ---------- */
.product-image img,
.grid-products img,
.slideshow img{
  filter: brightness(0.94);
}

/* ---------- scrollbar ---------- */
::-webkit-scrollbar{ width:10px; height:10px; }
::-webkit-scrollbar-track{ background: var(--db-bg); }
::-webkit-scrollbar-thumb{ background: var(--db-border-light); border-radius:5px; }
::-webkit-scrollbar-thumb:hover{ background: var(--db-accent); }

/* ---------- misc overlays ---------- */
.slideshow__overlay.bottom:before{
  background: linear-gradient(to bottom, rgba(10,14,26,0) 0%, #0a0e1a 100%) !important;
}

/* ---------- corner rounding only (structure/animation untouched) ---------- */
.grid-products .item .product-image,
.grid-products .item .product-image img,
.collection-grid-item__image-wrapper,
.collection-grid-item__image{
  border-radius: 20px !important;
}

.product-labels .lbl,
.product-labels .on-sale,
.product-labels .pr-label1,
.product-labels .pr-label2,
.product-labels .pr-label3{
  border-radius: 999px !important;
}

a.quick-view, a.wishlist, .cartIcon, .add-to-compare,
.button-style2 .cartIcon, .button-style2 .quick-view-popup,
.button-style2 .wishlist, .button-style2 .compare{
  border-radius: 12px !important;
}

.variants.add button,
.btn,
.add-btn,
input[type="submit"], input[type="button"],
button{
  border-radius: 14px !important;
}

/* ---------- product slider arrows: always visible, not hover-only ---------- */
.slick-arrow,
.productSlider .slick-arrow,
.productPageSlider .slick-arrow,
.productSlider-style1 .slick-arrow,
.productSlider-style2 .slick-arrow,
.productSlider-fullwidth .slick-arrow,
.grid-products .slick-arrow,
.collection-box .slick-arrow,
.collection-grid-4item .slick-arrow,
.logo-bar .slick-arrow,
.slideshow .slick-prev,
.slideshow .slick-next{
  opacity: 1 !important;
  visibility: visible !important;
  background-color: var(--db-accent) !important;
  box-shadow: 0 2px 6px rgba(0,0,0,.35) !important;
}
.slick-arrow:hover,
.productSlider .slick-arrow:hover,
.productPageSlider .slick-arrow:hover,
.grid-products .slick-arrow:hover,
.collection-box .slick-arrow:hover,
.logo-bar .slick-arrow:hover{
  background-color: var(--db-accent-hover) !important;
}
.slick-prev:before, .slick-next:before,
.slideshow .slick-prev:before, .slideshow .slick-next:before{
  color: #ffffff !important;
}
.slick-arrow{
  z-index: 20 !important;
}


/* Validation messages */
.field-validation-error,
span.field-validation-error,
.validation-summary-errors,
.text-danger {
    color: #ff4d4d !important;
    font-size: 14px;
    font-weight: 500;
    display: block;
    margin-top: 5px;
}

/* Validation summary */
.validation-summary-errors {
    color: #ff4d4d !important;
}

    /* Validation summary list */
    .validation-summary-errors ul {
        margin: 0;
        padding-left: 20px;
    }

    .validation-summary-errors li {
        color: #ff4d4d !important;
    }

/* Invalid input */
input.input-validation-error,
select.input-validation-error,
textarea.input-validation-error {
    border-color: #ff4d4d !important;
}

/* Valid input */
input.input-validation-valid,
select.input-validation-valid,
textarea.input-validation-valid {
    border-color: #28a745;
}





/* Remove background from category/product cards */
.productSlider .item,
.productSlider .product-image,
.productSlider .product-details {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}


.product-rows .item,
.product-rows .item > div,
.product-rows .product-image,
.product-rows .product-details,
.product-rows .product-name,
.product-rows .product-price {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}


/* Remove background from Related Products */
.related-product,
.related-product .productPageSlider,
.related-product .item,
.related-product .product-image,
.related-product .product-details {
    background-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

