/* Dark / light theme — style-only; loaded after styles.css */

[data-theme="dark"] {
    color-scheme: dark;
    --product-photo-bg: #1e2d4a;
    --theme-bg: #0d0d0d;
    --theme-surface: #1a1a1a;
    --theme-surface-2: #242424;
    --theme-surface-muted: #2e2e2e;
    --theme-text: #f0f0f0;
    --theme-text-muted: #a8a8a8;
    --theme-text-subtle: #e0e0e0;
    --theme-border: #3a3a3a;
    --theme-border-light: #333333;
    --theme-border-input: #4a4a4a;
    --theme-accent: #ffffff;
    --theme-accent-hover: #e0e0e0;
    --theme-on-accent: #0d0d0d;
    --theme-icon: #f0f0f0;
    --theme-input-bg: #242424;
}

/* Theme toggle (injected into header) */
.theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    margin: 0;
    border: 1px solid var(--theme-border, #e0e0e0);
    border-radius: 50%;
    background: var(--theme-surface-muted, #f0f0f0);
    color: var(--theme-icon, #000);
    cursor: pointer;
    flex-shrink: 0;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.theme-toggle:hover {
    transform: scale(1.05);
    border-color: var(--theme-text-muted, #666);
}

.theme-toggle:focus-visible {
    outline: 2px solid var(--theme-accent, #000);
    outline-offset: 2px;
}

.theme-toggle .theme-toggle-icon--light {
    display: none;
}

[data-theme="dark"] .theme-toggle .theme-toggle-icon--dark {
    display: none;
}

[data-theme="dark"] .theme-toggle .theme-toggle-icon--light {
    display: inline-block;
}

.header--on-hero .theme-toggle {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.35);
    background: rgba(0, 0, 0, 0.25);
}

.header--on-hero .theme-toggle:hover {
    background: rgba(0, 0, 0, 0.4);
    border-color: rgba(255, 255, 255, 0.55);
}

.header-icons {
    align-items: center;
}

.header-icons .theme-toggle {
    font-size: 16px;
}

/* —— Dark mode component overrides —— */

[data-theme="dark"] .section-header h2,
[data-theme="dark"] .footer-column h4,
[data-theme="dark"] .payment-methods h4 {
    color: var(--theme-text);
}

[data-theme="dark"] .footer {
    background-color: var(--theme-surface);
    border-top-color: var(--theme-border);
}

[data-theme="dark"] .footer-column ul li a,
[data-theme="dark"] .footer-logo h3,
[data-theme="dark"] .footer-column p,
[data-theme="dark"] .copyright p {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .footer-column ul li a:hover {
    color: var(--theme-text);
}

[data-theme="dark"] .footer-bottom {
    border-top-color: var(--theme-border);
}

[data-theme="dark"] .newsletter-signup {
    border-color: var(--theme-border);
}

[data-theme="dark"] .newsletter-signup input {
    background: var(--theme-input-bg);
    color: var(--theme-text);
}

[data-theme="dark"] .newsletter-text,
[data-theme="dark"] .country-selector-footer {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .payment-icon:not(.visa):not(.mastercard):not(.paypal):not(.cod) {
    background-color: var(--theme-surface-muted);
    color: var(--theme-text);
}

[data-theme="dark"] .bottom-nav {
    background-color: var(--theme-surface);
    border-top-color: var(--theme-border);
}

[data-theme="dark"] .nav-item {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .nav-item.active,
[data-theme="dark"] .nav-item:hover {
    color: var(--theme-text);
}

[data-theme="dark"] .header-icons i,
[data-theme="dark"] .country-selector {
    color: var(--theme-icon);
}

[data-theme="dark"] .cart-count {
    background-color: var(--theme-accent);
    color: var(--theme-on-accent);
}

[data-theme="dark"] .header--on-hero .navigation.mobile-open {
    background: var(--theme-surface);
}

[data-theme="dark"] .header--on-hero .navigation.mobile-open .nav-menu a {
    color: var(--theme-text);
}

[data-theme="dark"] .navigation.mobile-open {
    background-color: var(--theme-surface);
    border-top-color: var(--theme-border);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .navigation.mobile-open .nav-menu li {
    border-bottom-color: var(--theme-border);
}

[data-theme="dark"] .la-social-link {
    background: var(--theme-surface-2);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

[data-theme="dark"] .la-social-icon {
    background: var(--theme-surface-muted);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

[data-theme="dark"] .la-social--sidebar .la-social-link {
    background: var(--theme-surface);
}

[data-theme="dark"] .auth-modal-content,
[data-theme="dark"] .user-menu,
[data-theme="dark"] .purchase-form-content {
    background-color: var(--theme-surface);
    color: var(--theme-text);
}

[data-theme="dark"] .auth-header h2,
[data-theme="dark"] .form-group label,
[data-theme="dark"] .user-name,
[data-theme="dark"] .menu-item,
[data-theme="dark"] .forgot-password,
[data-theme="dark"] .auth-footer a,
[data-theme="dark"] .purchase-form-header h2 {
    color: var(--theme-text);
}

[data-theme="dark"] .auth-header p,
[data-theme="dark"] .checkbox-label,
[data-theme="dark"] .auth-footer p,
[data-theme="dark"] .user-email,
[data-theme="dark"] .modal-close,
[data-theme="dark"] .purchase-form-header p {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .modal-close:hover {
    color: var(--theme-text);
}

[data-theme="dark"] .form-group input,
[data-theme="dark"] .purchase-form .form-group input,
[data-theme="dark"] .purchase-form .form-group textarea {
    background: var(--theme-input-bg);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

[data-theme="dark"] .form-group input:focus,
[data-theme="dark"] .purchase-form .form-group input:focus,
[data-theme="dark"] .purchase-form .form-group textarea:focus {
    border-color: var(--theme-accent);
}

[data-theme="dark"] .auth-divider::before,
[data-theme="dark"] .auth-footer,
[data-theme="dark"] .user-info,
[data-theme="dark"] .menu-divider {
    border-color: var(--theme-border);
}

[data-theme="dark"] .auth-divider span,
[data-theme="dark"] .social-auth-btn {
    background-color: var(--theme-surface);
    color: var(--theme-text);
    border-color: var(--theme-border);
}

[data-theme="dark"] .social-auth-btn:hover {
    background-color: var(--theme-surface-muted);
    border-color: var(--theme-text-muted);
}

[data-theme="dark"] .user-avatar {
    background-color: var(--theme-surface-muted);
    color: var(--theme-text-muted);
}

[data-theme="dark"] .menu-item:hover {
    background-color: var(--theme-surface-muted);
}

[data-theme="dark"] .cart-drawer {
    background: var(--theme-surface);
}

[data-theme="dark"] .cart-drawer-header,
[data-theme="dark"] .cart-shipping-bar,
[data-theme="dark"] .cart-line-item,
[data-theme="dark"] .cart-recommendation-item {
    border-color: var(--theme-border-light);
}

[data-theme="dark"] .cart-drawer-title,
[data-theme="dark"] .cart-line-name,
[data-theme="dark"] .cart-line-price,
[data-theme="dark"] .cart-recommendation-name,
[data-theme="dark"] .cart-recommendation-price {
    color: var(--theme-text);
}

[data-theme="dark"] .cart-drawer-close {
    background: var(--theme-surface-2);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

[data-theme="dark"] .cart-shipping-msg,
[data-theme="dark"] .cart-line-variant,
[data-theme="dark"] .cart-empty,
[data-theme="dark"] .cart-recommendation-brand,
[data-theme="dark"] .cart-line-remove {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .cart-shipping-progress {
    background: var(--theme-surface-muted);
}

[data-theme="dark"] .cart-qty button {
    background: var(--theme-surface-2);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

[data-theme="dark"] .cart-drawer-footer,
[data-theme="dark"] .cart-checkout-btn {
    background: var(--theme-surface);
    border-color: var(--theme-border);
}

[data-theme="dark"] .product-page-details {
    background: var(--theme-surface);
    color: var(--theme-text-subtle);
}

[data-theme="dark"] .product-page-title,
[data-theme="dark"] .product-page-price,
[data-theme="dark"] .product-page-details .product-page-title,
[data-theme="dark"] .product-page-details .product-page-price,
[data-theme="dark"] .product-option-label {
    color: var(--theme-text);
}

[data-theme="dark"] .product-page-tax-note,
[data-theme="dark"] .product-page-details .product-detail-category,
[data-theme="dark"] .product-select-trigger .product-select-chevron {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .product-select-trigger,
[data-theme="dark"] .product-select-dropdown,
[data-theme="dark"] .product-size-btn {
    background: var(--theme-input-bg);
    border-color: var(--theme-border-input);
    color: var(--theme-text);
}

[data-theme="dark"] .product-gallery-carousel {
    background: var(--theme-surface);
    border-bottom-color: var(--theme-border);
}

[data-theme="dark"] .product-gallery-thumb.active {
    border-color: var(--theme-accent);
}

[data-theme="dark"] .gallery-nav {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .gallery-nav:hover:not(:disabled) {
    color: var(--theme-text);
}

[data-theme="dark"] .gallery-progress-track {
    background: var(--theme-surface-muted);
}

[data-theme="dark"] .gallery-progress-bar {
    background: var(--theme-text-muted);
}

[data-theme="dark"] .product-back-link,
[data-theme="dark"] .product-back-btn {
    color: var(--theme-icon);
}

[data-theme="dark"] .color-extra {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .choose-options-btn:hover,
[data-theme="dark"] .auth-btn:hover {
    background-color: var(--theme-accent-hover);
}

[data-theme="dark"] .product-card:focus-visible {
    outline-color: var(--theme-accent);
}

[data-theme="dark"] .section-header h2 {
    color: var(--theme-text);
}

[data-theme="dark"] .auth-btn,
[data-theme="dark"] .choose-options-btn,
[data-theme="dark"] .cart-checkout-btn,
[data-theme="dark"] .view-all-btn {
    background-color: var(--theme-accent);
    color: var(--theme-on-accent);
}

/* Product page — cart buttons: dark fill, light text */
[data-theme="dark"] .product-page-actions .buy-btn {
    background-color: var(--theme-surface-2);
    color: var(--theme-text);
    border: 1px solid var(--theme-border);
}

[data-theme="dark"] .product-page-actions .buy-btn:hover {
    background-color: var(--theme-surface-muted);
    color: #ffffff;
}

/* Purchase form submit: light button on dark section for contrast */
[data-theme="dark"] .product-purchase-form .submit-purchase-btn {
    background-color: #ffffff;
    color: #121212;
    border: none;
}

[data-theme="dark"] .product-purchase-form .submit-purchase-btn:hover {
    background-color: #e8e8e8;
    color: #000000;
}

[data-theme="dark"] .product-buy-now-btn {
    border-top-color: var(--theme-border);
}

[data-theme="dark"] .product-purchase-section {
    background-color: var(--theme-bg);
    border-top-color: var(--theme-border);
}

[data-theme="dark"] .product-purchase-header h2,
[data-theme="dark"] .product-purchase-form .form-group label {
    color: var(--theme-text);
}

[data-theme="dark"] .product-purchase-header p,
[data-theme="dark"] #purchaseFormProductInfo {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .product-purchase-form .form-group input,
[data-theme="dark"] .product-purchase-form .form-group textarea {
    background-color: var(--theme-surface-2);
    border: 1px solid var(--theme-border-input);
    color: var(--theme-text);
}

[data-theme="dark"] .product-purchase-form .form-group input:focus,
[data-theme="dark"] .product-purchase-form .form-group textarea:focus {
    border-color: var(--theme-text-muted);
    outline: none;
}

[data-theme="dark"] .product-purchase-form .submit-purchase-btn:disabled {
    background-color: var(--theme-surface-muted);
    color: var(--theme-text-muted);
}

[data-theme="dark"] .product-size-help {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .product-size-help:hover {
    color: var(--theme-text);
}

[data-theme="dark"] .product-select-trigger,
[data-theme="dark"] .product-select-value {
    background-color: var(--theme-surface-2);
    border-color: var(--theme-border-input);
    color: var(--theme-text);
}

[data-theme="dark"] .product-accordions {
    border-top-color: var(--theme-border);
}

[data-theme="dark"] .product-accordion {
    border-bottom-color: var(--theme-border);
}

[data-theme="dark"] .product-accordion-trigger {
    background-color: var(--theme-surface);
    color: var(--theme-text);
}

[data-theme="dark"] .product-accordion-title,
[data-theme="dark"] .product-accordion-icon,
[data-theme="dark"] .product-accordion-chevron {
    color: var(--theme-text);
}

[data-theme="dark"] .product-accordion-panel {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .product-page-details {
    background-color: transparent;
}

[data-theme="dark"] .cart-footer-tab {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .cart-footer-tab.is-active {
    color: var(--theme-text);
    border-bottom-color: var(--theme-text);
}

[data-theme="dark"] .cart-order-note {
    background: var(--theme-input-bg);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

[data-theme="dark"] .cart-shipping-text,
[data-theme="dark"] .cart-tax-note {
    color: var(--theme-text-muted);
}

[data-theme="dark"] .cart-recommendation-add {
    background: var(--theme-surface-2);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

[data-theme="dark"] .product-not-found h1 {
    color: var(--theme-text);
}

[data-theme="dark"] .color-dot.white {
    border-color: var(--theme-border);
}
