/* Dark theme core overrides */
html.dark-theme, body.dark-theme {
    background-color: #121212 !important;
    color: #b0b0b0 !important;
}

/* Typography */
html.dark-theme h1, html.dark-theme h2, html.dark-theme h3, html.dark-theme h4, html.dark-theme h5, html.dark-theme h6,
html.dark-theme .title, html.dark-theme .h1, html.dark-theme .h2, html.dark-theme .h3, html.dark-theme .h4, html.dark-theme .h5, html.dark-theme .h6 {
    color: #ffffff !important;
}

html.dark-theme p, html.dark-theme span, html.dark-theme label, html.dark-theme li {
    color: #b0b0b0;
}

/* Header */
html.dark-theme .header-wrapper,
html.dark-theme .header-middle,
html.dark-theme .header-three-area {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .header-search-box {
    background-color: #242424 !important;
    border-color: #3d3d3d !important;
}

html.dark-theme .header-search-box input.form-control {
    background-color: #242424 !important;
    color: #ffffff !important;
    border-color: #3d3d3d !important;
}

html.dark-theme .header-search-box-categories,
html.dark-theme .nice-select,
html.dark-theme .nice-select .list {
    background-color: #2a2a2a !important;
    border-color: #3d3d3d !important;
    color: #ffffff !important;
}

html.dark-theme .nice-select .option:hover,
html.dark-theme .nice-select .option.focus,
html.dark-theme .nice-select .option.selected.focus {
    background-color: #3d3d3d !important;
    color: #ffffff !important;
}

html.dark-theme .ajax-search-results-dropdown {
    background-color: #1e1e1e !important;
    border-color: #2d2d2d !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4) !important;
}

html.dark-theme .ajax-search-item {
    background-color: #1e1e1e !important;
    color: #ffffff !important;
    border-bottom: 1px solid #2d2d2d !important;
}

html.dark-theme .ajax-search-item:hover {
    background-color: #2a2a2a !important;
}

html.dark-theme .ajax-search-name {
    color: #e0e0e0 !important;
}

/* Navigation */
html.dark-theme .main-nav-link {
    color: #ffffff !important;
}

html.dark-theme .main-nav-link:hover {
    color: #88be10 !important;
}

html.dark-theme .vertical-menu-two .vmenu-btn {
    background-color: #2a2a2a !important;
    color: #ffffff !important;
    border-color: #3d3d3d !important;
}

html.dark-theme .vertical-menu-two .vmenu-content {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .vertical-menu-two .vmenu-item a {
    color: #ffffff !important;
    background-color: #1a1a1a !important;
}

html.dark-theme .vertical-menu-two .vmenu-item a:hover {
    background-color: #2a2a2a !important;
    color: #88be10 !important;
}

html.dark-theme .phone-item-content span {
    color: #a0a0a0 !important;
}

html.dark-theme .phone-item-content a {
    color: #ffffff !important;
}

/* Product Category */
html.dark-theme .product-category-item {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .product-category-item:hover {
    border-color: #88be10 !important;
}

html.dark-theme .product-category-title {
    color: #ffffff !important;
}

/* Product Cards */
html.dark-theme .product-item {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .product-item-thumb {
    background-color: #1a1a1a !important;
}

html.dark-theme .product-item-thumb img {
    background-color: #1a1a1a !important;
}

html.dark-theme .product-item-info {
    background-color: #1a1a1a !important;
}

html.dark-theme .product-item-title a {
    color: #ffffff !important;
}

html.dark-theme .product-item-title a:hover {
    color: #88be10 !important;
}

html.dark-theme .product-item-price {
    color: #ffffff !important;
}

html.dark-theme .info-btn-cart {
    background-color: #2a2a2a !important;
    color: #ffffff !important;
}

html.dark-theme .info-btn-cart:hover {
    background-color: #88be10 !important;
    color: #ffffff !important;
}

html.dark-theme .product-action-btn {
    background-color: #2a2a2a !important;
    color: #ffffff !important;
}

html.dark-theme .product-action-btn:hover {
    background-color: #88be10 !important;
    color: #ffffff !important;
}

/* Features Cards */
html.dark-theme .feature-card {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .feature-card p {
    color: #a0a0a0 !important;
}

/* Brand Logos slider */
html.dark-theme .brand-logo-slider-container {
    background-color: #1a1a1a !important;
}

html.dark-theme .brand-logo-item img {
    filter: brightness(0.8) contrast(1.2);
}

/* Footer area */
html.dark-theme .footer-area {
    background-color: #111111 !important;
}

html.dark-theme .widget-title {
    color: #ffffff !important;
}

html.dark-theme .widget-nav li a {
    color: #b0b0b0 !important;
}

html.dark-theme .widget-nav li a:hover {
    color: #88be10 !important;
}

html.dark-theme .widget-contact-desc,
html.dark-theme .widget-info-item p,
html.dark-theme .widget-info-item a {
    color: #b0b0b0 !important;
}

html.dark-theme .widget-info-item a:hover {
    color: #88be10 !important;
}

html.dark-theme .footer-bottom-two {
    border-top-color: #2d2d2d !important;
}

html.dark-theme .footer-bottom-nav a {
    color: #b0b0b0 !important;
}

html.dark-theme .footer-bottom-nav a:hover {
    color: #88be10 !important;
}

/* Modals & Popups */
html.dark-theme .modal-content {
    background-color: #1a1a1a !important;
    color: #ffffff !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .modal-header,
html.dark-theme .modal-footer {
    border-color: #2d2d2d !important;
}

html.dark-theme .btn-close {
    filter: invert(1) !important;
}

/* Sidebar Offcanvas */
html.dark-theme .offcanvas {
    background-color: #1a1a1a !important;
    color: #ffffff !important;
}

html.dark-theme .offcanvas-header {
    border-bottom: 1px solid #2d2d2d !important;
}

html.dark-theme .offcanvas-menu ul li a {
    color: #ffffff !important;
}

html.dark-theme .offcanvas-menu ul li a:hover {
    color: #88be10 !important;
}

html.dark-theme .sidebar-cart-inner {
    background-color: #1a1a1a !important;
}

html.dark-theme .single-product-cart {
    border-bottom-color: #2d2d2d !important;
}

html.dark-theme .single-product-cart .cart-title h4 a {
    color: #ffffff !important;
}

html.dark-theme .single-product-cart .cart-title span {
    color: #b0b0b0 !important;
}

html.dark-theme .cart-total {
    border-top-color: #2d2d2d !important;
    border-bottom-color: #2d2d2d !important;
    color: #ffffff !important;
}

html.dark-theme .cart-btn,
html.dark-theme .checkout-btn {
    border-color: #3d3d3d !important;
}

html.dark-theme .cart-btn {
    background-color: #2a2a2a !important;
    color: #ffffff !important;
}

/* Breadcrumb / Page Header */
html.dark-theme .page-header-area {
    background-color: #1a1a1a !important;
}

html.dark-theme .breadcrumb-item a {
    color: #b0b0b0 !important;
}

html.dark-theme .breadcrumb-item.active {
    color: #ffffff !important;
}

/* Product Detail Page */
html.dark-theme .product-detail-content .product-detail-title {
    color: #ffffff !important;
}

html.dark-theme .product-detail-price {
    color: #ffffff !important;
}

html.dark-theme .product-detail-meta {
    border-top-color: #2d2d2d !important;
    border-bottom-color: #2d2d2d !important;
    color: #b0b0b0 !important;
}

html.dark-theme .product-detail-meta span strong {
    color: #ffffff !important;
}

html.dark-theme .product-detail-review-icon {
    color: #ffb300 !important;
}

html.dark-theme .product-detail-tab-nav {
    border-bottom-color: #2d2d2d !important;
}

html.dark-theme .product-detail-tab-nav .nav-link {
    color: #b0b0b0 !important;
}

html.dark-theme .product-detail-tab-nav .nav-link.active {
    color: #ffffff !important;
    border-bottom-color: #88be10 !important;
}

html.dark-theme .product-detail-desc {
    color: #b0b0b0 !important;
}

/* Shop filter sidebar */
html.dark-theme .shop-sidebar-wrap {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .shop-sidebar-section-title {
    color: #ffffff !important;
    border-bottom-color: #2d2d2d !important;
}

html.dark-theme .shop-sidebar-category-list li a {
    color: #b0b0b0 !important;
}

html.dark-theme .shop-sidebar-category-list li a:hover {
    color: #88be10 !important;
}

/* Contact Us Page */
html.dark-theme .contact-info-item {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

html.dark-theme .contact-form-wrap {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

/* Account Details Page */
html.dark-theme .myaccount-tab-menu {
    border-color: #2d2d2d !important;
}

html.dark-theme .myaccount-tab-menu a {
    border-bottom-color: #2d2d2d !important;
    color: #b0b0b0 !important;
}

html.dark-theme .myaccount-tab-menu a.active,
html.dark-theme .myaccount-tab-menu a:hover {
    background-color: #2a2a2a !important;
    color: #ffffff !important;
}

html.dark-theme .myaccount-content {
    background-color: #1a1a1a !important;
    border-color: #2d2d2d !important;
}

/* Light / Dark Mode Toggle Button Styling */
.theme-toggle-btn {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 20px;
    color: #353535;
    padding: 8px;
    margin-left: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    transition: background-color 0.3s, color 0.3s, transform 0.3s;
}

.theme-toggle-btn:hover {
    background-color: rgba(0, 0, 0, 0.05);
    transform: scale(1.1);
}

html.dark-theme .theme-toggle-btn {
    color: #ffb300;
}

html.dark-theme .theme-toggle-btn:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

.theme-toggle-btn svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
    transition: transform 0.5s ease;
}

html.dark-theme .theme-toggle-btn svg {
    transform: rotate(360deg);
}

/* Toggle visibility of icons based on theme */
html:not(.dark-theme) .theme-toggle-btn .moon-icon {
    display: block !important;
}
html:not(.dark-theme) .theme-toggle-btn .sun-icon {
    display: none !important;
}
html.dark-theme .theme-toggle-btn .moon-icon {
    display: none !important;
}
html.dark-theme .theme-toggle-btn .sun-icon {
    display: block !important;
}

/* Floating WhatsApp Badge styling */
.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 30px;
    right: 30px;
    background-color: #25d366;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.2);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    cursor: pointer;
    text-decoration: none !important;
}

.whatsapp-float:hover {
    background-color: #128c7e;
    color: #fff;
    transform: scale(1.1) translateY(-5px);
    box-shadow: 2px 5px 20px rgba(0, 0, 0, 0.3);
}

.whatsapp-float svg {
    width: 34px;
    height: 34px;
    fill: currentColor;
}

/* Online indicator dot on whatsapp icon similar to the user image */
.whatsapp-float::after {
    content: '';
    position: absolute;
    width: 14px;
    height: 14px;
    background-color: #0df053;
    border: 2px solid #fff;
    border-radius: 50%;
    top: 2px;
    right: 2px;
    animation: pulse-green 2s infinite;
}

@keyframes pulse-green {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(13, 240, 83, 0.7);
    }
    70% {
        transform: scale(1);
        box-shadow: 0 0 0 6px rgba(13, 240, 83, 0);
    }
    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(13, 240, 83, 0);
    }
}
