/* ==========================================================================
   Front dark theme — global tokens
   ========================================================================== */
html.dark {
    color-scheme: dark;
}

body.front-page {
    background-color: #ffffff;
}

html.dark body.front-page {
    background-color: #0b1220;
    color: #e2e8f0;
}

/* ==========================================================================
   Surfaces & cards
   ========================================================================== */
html.dark .bg-white {
    background-color: #1e293b !important;
}

html.dark [class*="bg-[#F9FAFB]"],
html.dark [class*="bg-[#F5F7FA]"],
html.dark [class*="bg-[#F3F4F6]"],
html.dark [class*="bg-[#E7EAF0]"] {
    background-color: #1e293b !important;
}

html.dark [class*="bg-gray-50"],
html.dark [class*="bg-gray-100"] {
    background-color: #1e293b !important;
}

html.dark .category-tile,
html.dark .mega-cat-card {
    background-color: #334155 !important;
}

html.dark .category-tile-card:hover {
    background-color: #334155 !important;
    border-color: rgba(250, 92, 100, 0.25) !important;
}

/* Pastel chips / badges */
html.dark [class*="bg-[#F0FDF4]"],
html.dark [class*="bg-[#DCFCE7]"],
html.dark [class*="bg-[#FFF1F2]"],
html.dark [class*="bg-[#FFE4E6]"],
html.dark [class*="bg-[#EFF6FF]"],
html.dark [class*="bg-[#FFF7ED]"],
html.dark [class*="bg-[#EEF2FF]"],
html.dark [class*="bg-[#FEF3C7]"],
html.dark [class*="bg-[#FCE7F3]"],
html.dark [class*="bg-[#F0FDFA]"],
html.dark [class*="bg-[#FEF2F2]"],
html.dark [class*="bg-[#FEE2E2]"],
html.dark [class*="bg-[#DBEAFE]"],
html.dark [class*="bg-[#DCFCE7]"],
html.dark [class*="bg-[#E0E7FF]"],
html.dark [class*="bg-[#F3E8FF]"],
html.dark [class*="bg-[#FFEDD5]"] {
    background-color: #334155 !important;
}

/* ==========================================================================
   Typography — titles & body
   ========================================================================== */
html.dark h1,
html.dark h2,
html.dark h3,
html.dark h4,
html.dark h5,
html.dark h6 {
    color: #f8fafc;
}

html.dark [class*="text-[#0C2D5B]"],
html.dark [class*="text-[#0c2d5b]"] {
    color: #f8fafc !important;
}

html.dark [class*="text-[#0C2D5B]/50"],
html.dark [class*="text-[#0c2d5b]/50"] {
    color: #94a3b8 !important;
}

html.dark [class*="text-[#181E25]"],
html.dark [class*="text-[#384656]"],
html.dark [class*="text-[#0c0d0e]"] {
    color: #f1f5f9 !important;
}

html.dark [class*="text-[#67788E]"] {
    color: #94a3b8 !important;
}

html.dark [class*="text-[#ACB8C4]"] {
    color: #64748b !important;
}

html.dark [class*="text-gray-600"],
html.dark [class*="text-gray-700"],
html.dark [class*="text-gray-800"],
html.dark [class*="text-gray-900"] {
    color: #e2e8f0 !important;
}

html.dark .group:hover [class*="text-[#67788E]"] {
    color: #f1f5f9 !important;
}

/* Colored labels on pastel backgrounds */
html.dark [class*="text-[#166534]"],
html.dark [class*="text-[#1E40AF]"],
html.dark [class*="text-[#92400E]"],
html.dark [class*="text-[#9A3412]"],
html.dark [class*="text-[#3730A3]"],
html.dark [class*="text-[#9D174D]"],
html.dark [class*="text-[#115E59]"],
html.dark [class*="text-[#991B1B]"],
html.dark [class*="text-[#D97706]"] {
    color: #e2e8f0 !important;
}

/* Brand / accent text */
html.dark [class*="text-[#FA5C64]"],
html.dark [class*="text-emerald-600"],
html.dark [class*="text-emerald-700"],
html.dark [class*="text-rose-600"],
html.dark [class*="text-rose-700"] {
    color: #ffffff !important;
}

html.dark [class*="text-sky-600"] {
    color: #38bdf8 !important;
}

html.dark .group:hover [class*="group-hover:text-sky-600"] {
    color: #38bdf8 !important;
}

html.dark .group:hover [class*="group-hover:text-violet-700"] {
    color: #a78bfa !important;
}

html.dark [class*="text-[#3B82F6]"],
html.dark [class*="text-[#6366F1]"],
html.dark [class*="text-[#A855F7]"] {
    color: #93c5fd !important;
}

/* ==========================================================================
   Borders & dividers
   ========================================================================== */
html.dark [class*="border-[#E7EAF0]"],
html.dark [class*="border-gray-100"],
html.dark [class*="border-gray-200"] {
    border-color: #475569 !important;
}

/* ==========================================================================
   Gradients (nav / mobile menu)
   ========================================================================== */
html.dark [class*="from-[#f0fdf4]"],
html.dark [class*="to-[#dcfce7]"],
html.dark [class*="from-[#FFF1F2]"],
html.dark [class*="to-[#FFF1F2]"],
html.dark [class*="to-[#FFE4E6]"],
html.dark [class*="from-[#FFE4E6]"],
html.dark [class*="from-[#FFF5F5]"],
html.dark [class*="from-[#FFF8F9]"],
html.dark [class*="from-[#F9FAFB]"],
html.dark [class*="to-[#F3F4F6]"],
html.dark [class*="from-[#FEF3C7]"],
html.dark [class*="to-[#FEF9C3]"],
html.dark [class*="from-[#FCF1F8]"],
html.dark [class*="to-[#FFF7ED]"] {
    --tw-gradient-from: #334155 var(--tw-gradient-from-position) !important;
    --tw-gradient-to: #1e293b var(--tw-gradient-to-position) !important;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

/* Mobile category children panel (gradient ends at white) */
html.dark .mobile-cat-children {
    --tw-gradient-from: #334155 var(--tw-gradient-from-position) !important;
    --tw-gradient-to: #1e293b var(--tw-gradient-to-position) !important;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
    border-color: #475569 !important;
}

html.dark .mobile-cat-children [class*="text-[#4B5C6E]"] {
    color: #cbd5e1 !important;
}

html.dark .mobile-cat-children [class*="text-[#D0D7E0]"] {
    color: #64748b !important;
}

html.dark .mobile-cat-children [class*="hover:border-[#FFE4E6]"]:hover {
    border-color: #FA5C64 !important;
}

html.dark [class*="border-[#FFE4E6]"] {
    border-color: #475569 !important;
}

/* ==========================================================================
   Product cards
   ========================================================================== */
html.dark .product-card {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .product-card [class*="from-slate-50"],
html.dark .product-card [class*="from-violet-50"],
html.dark .product-card [class*="from-rose-50"] {
    --tw-gradient-from: #334155 var(--tw-gradient-from-position) !important;
    --tw-gradient-to: rgb(51 65 85 / 0) var(--tw-gradient-to-position) !important;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

html.dark .product-card [class*="to-gray-100"],
html.dark .product-card [class*="to-purple-50"],
html.dark .product-card [class*="to-pink-50"] {
    --tw-gradient-to: #1e293b var(--tw-gradient-to-position) !important;
}

html.dark .product-card .product-card-title,
html.dark .product-card h3 {
    color: #f1f5f9 !important;
}

html.dark .product-card [class*="text-gray-800"] {
    color: #f1f5f9 !important;
}

html.dark .product-card [class*="text-gray-500"] {
    color: #94a3b8 !important;
}

html.dark .product-card [class*="text-gray-400"] {
    color: #94a3b8 !important;
}

html.dark .product-card [class*="bg-rose-50"] {
    background-color: rgba(250, 92, 100, 0.14) !important;
}

html.dark .product-card [class*="bg-violet-50"] {
    background-color: rgba(139, 92, 246, 0.16) !important;
}

html.dark .product-card span[class*="text-rose-600"],
html.dark .product-card span[class*="text-[#FA5C64]"] {
    color: #FB7185 !important;
}

html.dark .product-card span[class*="text-violet-600"] {
    color: #c4b5fd !important;
}

html.dark .product-card .product-card-category,
html.dark .shop-card-category {
    width: fit-content !important;
    max-width: 100% !important;
    align-self: center !important;
    background-color: rgba(250, 92, 100, 0.2) !important;
    color: #FB7185 !important;
}

html.dark .product-card .product-card-category:hover,
html.dark .shop-card-category:hover {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

html.dark .product-card .product-card-category span,
html.dark .shop-card-category span {
    color: inherit !important;
}

html.dark .product-card.group:hover h3[class*="group-hover:text-emerald"],
html.dark .product-card.group:hover h3[class*="group-hover:text-rose"],
html.dark .product-card.group:hover .product-card-title[class*="group-hover:text-rose"] {
    color: #FB7185 !important;
}

html.dark .product-card.group:hover h3[class*="group-hover:text-violet"] {
    color: #c4b5fd !important;
}

/* ==========================================================================
   Buttons & tabs
   ========================================================================== */
html.dark button[class*="bg-white"][class*="text-[#67788E]"] {
    background-color: #334155 !important;
    color: #cbd5e1 !important;
}

html.dark button[class*="bg-white"][class*="text-[#67788E]"]:hover {
    background-color: #475569 !important;
}

html.dark a[class*="bg-white"][class*="text-[#0C2D5B]"] {
    background-color: #f8fafc !important;
    color: #0f172a !important;
}

html.dark a[class*="bg-white"][class*="text-[#0C2D5B]"]:hover {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

/* ==========================================================================
   Forms
   ========================================================================== */
html.dark input,
html.dark textarea,
html.dark select {
    color: #f1f5f9;
    background-color: transparent;
}

html.dark input::placeholder,
html.dark textarea::placeholder {
    color: #64748b !important;
}

/* ==========================================================================
   Prose / rich content
   ========================================================================== */
html.dark .prose,
html.dark .prose p,
html.dark .prose li {
    color: #94a3b8 !important;
}

html.dark .prose h1,
html.dark .prose h2,
html.dark .prose h3,
html.dark .prose h4,
html.dark .prose strong {
    color: #f8fafc !important;
}

html.dark .prose a {
    color: #ffffff !important;
}

/* ==========================================================================
   Shadows
   ========================================================================== */
html.dark [class*="shadow-[0_8px_40px"],
html.dark [class*="shadow-sm"],
html.dark [class*="shadow-lg"],
html.dark [class*="shadow-xl"],
html.dark [class*="shadow-2xl"] {
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45) !important;
}

/* ==========================================================================
   Homepage slider navigation — same curved flash as light; fill = page bg
   ========================================================================== */
html.dark .category-next,
html.dark .category-prev,
html.dark .home-main-next,
html.dark .home-main-prev {
    background-color: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Paint flash on the SVG itself so rotation/position match light mode */
html.dark .category-next > svg:not(.icon),
html.dark .category-prev > svg:not(.icon),
html.dark .home-main-next > svg:not(.icon),
html.dark .home-main-prev > svg:not(.icon) {
    display: block !important;
    background-color: #0b1220;
    -webkit-mask-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAABwCAMAAACn6OkPAAAAAXNSR0IB2cksfwAAADNQTFRF////////////////////////////////////////////////////////////////////5RDoRwAAABF0Uk5TEAAwcK/v/yCAUJ+/QM+PYN+HzfuJAAABrUlEQVR4nK3X2XbCMAwEUDkr8P8f2lMKgZLEdVbsWJrhoXm+J7EUL2MnTvDjCs9EOTJRDUzUPRON+2WieDLhyWdcI+WDiRFXE4TgsU6i6pjAL5lFfWcClrMI1JNFoMGuQpobE/5lzbVN2PXsQgZjsr2FNZRI+EJtbSSk/WFCH20i5HRlQs7fTCj/8CjymjPhB09E1pZcyOXLEXHonCbSzqkimXK6iDtniKhzlpDeM7FPXFPsBdlimwpArD8RiWWtIrHsTlDMJWMx/UMsptYSEV5CRNjimKg6JnzPhDgqSioGKgoqTv/wjjMVDe3Yi4mRVls+iAgfISIc11hMCw+L6cSHor06sqLaadEhsaQKIOqbw2Lbem2x7VOm2KONJd77pSHmTiARb+2qSE4QTfgqPqg0kR52ijhEuFwcT9RMVHeHRdQIXVy6LB2kIjtKM6GlrkSoUTUWeuSKRF7GQWijTAXNUmbu+zzT2flzFSBNr/lUD2uRQLl/FofUogirFbuAr5gFvn0EYTdrE1pcTEWPb2Ou0XNrLPgtiXzkk9sav/GdyDDEnfFNLIiWXAnlD/TrjyQ2FudeAAAAAElFTkSuQmCC');
    mask-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAABwCAMAAACn6OkPAAAAAXNSR0IB2cksfwAAADNQTFRF////////////////////////////////////////////////////////////////////5RDoRwAAABF0Uk5TEAAwcK/v/yCAUJ+/QM+PYN+HzfuJAAABrUlEQVR4nK3X2XbCMAwEUDkr8P8f2lMKgZLEdVbsWJrhoXm+J7EUL2MnTvDjCs9EOTJRDUzUPRON+2WieDLhyWdcI+WDiRFXE4TgsU6i6pjAL5lFfWcClrMI1JNFoMGuQpobE/5lzbVN2PXsQgZjsr2FNZRI+EJtbSSk/WFCH20i5HRlQs7fTCj/8CjymjPhB09E1pZcyOXLEXHonCbSzqkimXK6iDtniKhzlpDeM7FPXFPsBdlimwpArD8RiWWtIrHsTlDMJWMx/UMsptYSEV5CRNjimKg6JnzPhDgqSioGKgoqTv/wjjMVDe3Yi4mRVls+iAgfISIc11hMCw+L6cSHor06sqLaadEhsaQKIOqbw2Lbem2x7VOm2KONJd77pSHmTiARb+2qSE4QTfgqPqg0kR52ijhEuFwcT9RMVHeHRdQIXVy6LB2kIjtKM6GlrkSoUTUWeuSKRF7GQWijTAXNUmbu+zzT2flzFSBNr/lUD2uRQLl/FofUogirFbuAr5gFvn0EYTdrE1pcTEWPb2Ou0XNrLPgtiXzkk9sav/GdyDDEnfFNLIiWXAnlD/TrjyQ2FudeAAAAAElFTkSuQmCC');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

html.dark .category-next > svg:not(.icon) *,
html.dark .category-prev > svg:not(.icon) *,
html.dark .home-main-next > svg:not(.icon) *,
html.dark .home-main-prev > svg:not(.icon) * {
    display: none !important;
}

html.dark .category-next .icon,
html.dark .category-prev .icon,
html.dark .home-main-next .icon,
html.dark .home-main-prev .icon {
    z-index: 1;
    stroke: #e2e8f0 !important;
    color: #e2e8f0 !important;
}

/* Section link arrows (stroke was black) */
html.dark section svg path[stroke="#000"],
html.dark section svg rect[stroke="#000"] {
    stroke: #94a3b8 !important;
}

html.dark section svg path[style*="stroke: #000"],
html.dark section svg path[style*="stroke:#000"] {
    stroke: #94a3b8 !important;
}

/* ==========================================================================
   Theme toggle & header icon buttons
   ========================================================================== */
[data-theme-toggle],
.header-icon-btn {
    cursor: pointer;
}

html.dark .header-icon-label {
    color: #94a3b8 !important;
}

html.dark .header-icon-btn--neutral {
    background-color: #334155 !important;
    border-color: #475569 !important;
}

html.dark .header-icon-btn--neutral:hover {
    background-color: rgba(250, 92, 100, 0.18) !important;
    border-color: rgba(250, 92, 100, 0.35) !important;
}

html.dark .header-icon-btn--neutral svg path {
    stroke: #cbd5e1 !important;
}

html.dark .header-icon-btn--rose {
    background-color: rgba(250, 92, 100, 0.16) !important;
    border-color: rgba(250, 92, 100, 0.32) !important;
    color: #FB7185 !important;
}

html.dark .header-icon-btn--rose:hover {
    background-color: rgba(250, 92, 100, 0.26) !important;
}

html.dark .header-icon-btn--rose svg {
    color: #FB7185 !important;
}

html.dark .header-icon-btn--rose svg path {
    stroke: #FB7185 !important;
}

html.dark .header-icon-btn--violet {
    background: linear-gradient(145deg, rgba(124, 58, 237, 0.22), rgba(91, 33, 182, 0.28)) !important;
    border-color: rgba(167, 139, 250, 0.4) !important;
    color: #C4B5FD !important;
    box-shadow: 0 4px 16px rgba(91, 33, 182, 0.25) !important;
}

html.dark .header-icon-btn--violet:hover {
    background: linear-gradient(145deg, rgba(124, 58, 237, 0.32), rgba(91, 33, 182, 0.38)) !important;
}

html.dark .header-icon-btn--violet svg {
    color: #C4B5FD !important;
}

html.dark .header-icon-btn--violet svg path {
    stroke: #C4B5FD !important;
}

html.dark .header-icon-btn--sky {
    background-color: rgba(14, 165, 233, 0.16) !important;
    border-color: rgba(56, 189, 248, 0.35) !important;
    color: #7DD3FC !important;
}

html.dark .header-icon-btn--sky:hover {
    background-color: rgba(14, 165, 233, 0.26) !important;
}

html.dark .header-icon-btn--sky svg path {
    stroke: #7DD3FC !important;
}

html.dark .header-icon-btn--accent {
    background-color: rgba(250, 92, 100, 0.16) !important;
    border-color: rgba(250, 92, 100, 0.32) !important;
}

html.dark .header-icon-btn--accent:hover {
    background-color: rgba(250, 92, 100, 0.26) !important;
}

html.dark .header-icon-btn--accent svg path {
    stroke: #FB7185 !important;
}

html.dark .header-icon-btn--green {
    background-color: rgba(16, 185, 129, 0.16) !important;
    border-color: rgba(16, 185, 129, 0.32) !important;
    color: #34D399 !important;
}

html.dark .header-icon-btn--green:hover {
    background-color: rgba(16, 185, 129, 0.26) !important;
}

html.dark .header-icon-btn--green svg {
    color: #34D399 !important;
}

html.dark .header-cart-dropdown,
html.dark .header-wishlist-dropdown {
    background-color: #1e293b !important;
    border: 1px solid #334155;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.45) !important;
}

html.dark .header-cart-dropdown .bg-\[\#F9FAFB\],
html.dark .header-wishlist-dropdown .bg-\[\#F9FAFB\] {
    background-color: #0f172a !important;
}

html.dark .header-cart-dropdown .text-\[\#181E25\],
html.dark .header-wishlist-dropdown .text-\[\#181E25\] {
    color: #e2e8f0 !important;
}

html.dark .header-cart-dropdown .border-\[\#E7EAF0\],
html.dark .header-wishlist-dropdown .border-\[\#E7EAF0\] {
    border-color: #334155 !important;
}

html.dark .header-cart-view-btn {
    color: #ffffff !important;
    background: linear-gradient(to left, #047857, #10B981) !important;
    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.28) !important;
}

html.dark .header-icon-badge--green {
    background-color: #059669 !important;
}

html.dark .header-icon-badge {
    border-color: #1e293b !important;
}

html.dark .back-to-top {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

html.dark .mobile-call-btn {
    background: #16a34a;
    box-shadow: 0 8px 24px rgba(22, 163, 74, 0.4);
}

html.dark .mobile-call-btn::before,
html.dark .mobile-call-btn::after {
    background: #16a34a;
}

/* Theme switch view-transition (circular reveal) */
::view-transition-old(root),
::view-transition-new(root) {
    animation: none;
    mix-blend-mode: normal;
}

::view-transition-old(root) {
    z-index: 1;
}

::view-transition-new(root) {
    z-index: 2;
}

html.theme-switching,
html.theme-switching body {
    transition:
        background-color 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease !important;
}

@media (prefers-reduced-motion: reduce) {
    html.theme-switching,
    html.theme-switching body {
        transition: none !important;
    }

    ::view-transition-old(root),
    ::view-transition-new(root) {
        animation: none !important;
    }
}

/* ==========================================================================
   Misc
   ========================================================================== */
html.dark [class*="bg-white/95"] {
    background-color: rgba(30, 41, 59, 0.95) !important;
}

html.dark [class*="bg-[#FA5C644f]"] {
    background-color: rgba(250, 92, 100, 0.2) !important;
}

html.dark [class*="bg-[#FA5C64]/10"] {
    background-color: rgba(250, 92, 100, 0.15) !important;
}

html.dark [class*="border-[#FA5C64]/20"] {
    border-color: rgba(250, 92, 100, 0.35) !important;
}

html.dark a[class*="text-[#0c0d0e]"] {
    color: #cbd5e1 !important;
}

html.dark a[class*="hover:text-[#FA5C64]"]:hover {
    color: #ffffff !important;
}

html.dark [class*="text-gray-400"] {
    color: #94a3b8 !important;
}

html.dark [class*="text-violet-600"],
html.dark [class*="group-hover:text-violet-700"] {
    color: #c4b5fd !important;
}

html.dark [class*="bg-violet-50"] {
    background-color: #4c1d95 !important;
    color: #e9d5ff !important;
}

html.dark [class*="bg-[#ccd6e0"] {
    background-color: #475569 !important;
}

html.dark .product-card [class*="from-violet-50"],
html.dark .product-card [class*="to-purple-50"] {
    --tw-gradient-from: #312e81 var(--tw-gradient-from-position) !important;
    --tw-gradient-to: #1e293b var(--tw-gradient-to-position) !important;
}

/* ==========================================================================
   Site header
   ========================================================================== */
html.dark .site-header {
    border-color: #475569 !important;
}

@media (min-width: 768px) {
    html.dark .site-header {
        background-color: rgba(11, 18, 32, 0.97);
    }

    html.dark .site-header.is-sticky {
        box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
    }
}

@media (max-width: 767.98px) {
    html.dark .site-header {
        background-color: transparent;
        border-color: transparent !important;
    }

    html.dark .site-header-bar {
        background-color: rgba(15, 23, 42, 0.97);
        border-color: #334155;
        box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
    }
}

html.dark .header-nav-divider {
    background-color: #475569 !important;
}

html.dark .header-search-box {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .header-search-glow__inner {
    background-color: #1e293b !important;
}

/* Mega menu dark mode */
html.dark .dk-mega__aside {
    background: #0f172a !important;
    border-color: #334155 !important;
}

html.dark .dk-mega__panel {
    background: #1e293b !important;
}

html.dark .dk-mega__root-btn {
    color: #cbd5e1 !important;
}

html.dark .dk-mega__root-btn:hover {
    background: rgba(51, 65, 85, 0.55) !important;
}

html.dark .dk-mega__root-btn.is-active {
    background: #334155 !important;
    color: #BF2222 !important;
    box-shadow: none !important;
}

html.dark .dk-mega__thumb {
    background: #0f172a !important;
    border-color: #475569 !important;
}

html.dark .dk-mega__all-link {
    color: #f1f5f9 !important;
}

html.dark .dk-mega__all-link:hover {
    color: #BF2222 !important;
}

html.dark .dk-mega__child {
    background: #0f172a !important;
    border-color: #334155 !important;
}

html.dark .dk-mega__child-btn {
    color: #e2e8f0 !important;
}

html.dark .dk-mega__child-btn:hover {
    background: #1e293b !important;
    color: #BF2222 !important;
}

html.dark .dk-mega__grand-wrap {
    background: #1e293b !important;
    border-color: #334155 !important;
}

html.dark .dk-mega__grand-link {
    color: #94a3b8 !important;
}

html.dark .dk-mega__grand-link:hover {
    color: #BF2222 !important;
    background: rgba(191, 34, 34, 0.12) !important;
}

html.dark .header-search-box input {
    color: #f1f5f9 !important;
}

html.dark .header-search-dropdown {
    background-color: #1e293b !important;
    border: 1px solid #334155;
}

html.dark .header-search-input::placeholder {
    color: #64748b !important;
}

/* Mega menu — keep Digikala-like readable panel in dark mode */
html.dark .ag-mega-menu-shell,
html.dark .ag-mega-menu,
html.dark .ag-mega-menu__panel {
    background-color: #ffffff !important;
    color: #181e25 !important;
}

html.dark .ag-mega-menu__nav {
    background-color: #f5f6f8 !important;
    border-color: #e8ecf1 !important;
}

html.dark .ag-mega-menu h3,
html.dark .ag-mega-menu a,
html.dark .ag-mega-menu button,
html.dark .ag-mega-menu span,
html.dark .ag-mega-menu p {
    color: inherit;
}

html.dark .ag-mega-menu__panel h3 {
    color: #0c2d5b !important;
}

html.dark .ag-mega-menu__panel a[class*="text-[#0C2D5B]"],
html.dark .ag-mega-menu__panel .font-bold {
    color: #0c2d5b !important;
}

html.dark .ag-mega-menu__panel a[class*="text-[#67788E]"],
html.dark .ag-mega-menu__panel [class*="text-[#67788E]"] {
    color: #67788e !important;
}

html.dark .ag-mega-menu__panel a[class*="text-[#FA5C64]"],
html.dark .ag-mega-menu__nav button[class*="text-[#FA5C64]"] {
    color: #fa5c64 !important;
}

html.dark .ag-mega-menu__nav button[class*="text-[#3F4064]"] {
    color: #3f4064 !important;
}

html.dark .ag-mega-menu__panel a:hover,
html.dark .ag-mega-menu__nav button:hover {
    color: #fa5c64 !important;
}

/* ==========================================================================
   Shop page
   ========================================================================== */
.shop-filter-panel {
    background-color: #ffffff;
}

.shop-filter-title {
    color: #181E25;
}

.shop-filter-label {
    color: #67788E;
}

.shop-filter-trigger {
    background-color: #ffffff;
    color: #181E25;
}

.shop-filter-trigger.is-open {
    background-color: #FAFBFC;
}

.shop-filter-body {
    background-color: #ffffff;
}

.shop-filter-input {
    background-color: #ffffff;
    border-color: #F6F9FA;
    color: #181E25;
}

.shop-filter-option:hover {
    background-color: #FAFBFC;
}

.shop-sort-link {
    color: #ACB8C4;
}

.shop-sort-link:hover,
.shop-sort-link.is-active {
    color: #FA5C64;
}

.shop-apply-btn {
    color: #FA5C64;
}

.shop-search-chip {
    background-color: #F3F4F6;
    color: #181E25;
}

.shop-card-item {
    background-color: #ffffff;
}

.shop-card-title,
.shop-card-price {
    color: #181E25;
}

.shop-card-stock {
    color: #6B7280;
}

.shop-pagination {
    background-color: #ffffff;
}

html.dark .shop-filter-panel,
html.dark .shop-filter-trigger,
html.dark .shop-filter-body,
html.dark .shop-card-item,
html.dark .shop-pagination {
    background-color: #1e293b !important;
}

html.dark .shop-filter-title {
    color: #f1f5f9 !important;
}

html.dark .shop-filter-label {
    color: #94a3b8 !important;
}

html.dark .shop-filter-trigger.is-open,
html.dark .shop-filter-option:hover {
    background-color: #334155 !important;
}

html.dark .shop-filter-input {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #f1f5f9 !important;
}

html.dark .shop-sort-link {
    color: #64748b !important;
}

html.dark .shop-sort-link:hover,
html.dark .shop-sort-link.is-active {
    color: #FB7185 !important;
}

html.dark .shop-apply-btn {
    color: #FB7185 !important;
}

html.dark .shop-apply-btn:hover {
    color: #FA5C64 !important;
}

html.dark .shop-search-chip {
    background-color: #334155 !important;
    color: #f1f5f9 !important;
}

html.dark .shop-card-title,
html.dark .shop-card-price {
    color: #f1f5f9 !important;
}

html.dark .shop-card-stock {
    color: #94a3b8 !important;
}

html.dark .shop-card-item {
    border: 1px solid #475569;
}

html.dark .shop-toolbar {
    border-color: #475569 !important;
}

html.dark .shop-breadcrumb a {
    color: #cbd5e1 !important;
}

html.dark .shop-breadcrumb a:hover {
    color: #FB7185 !important;
}

html.dark .shop-page .custom-scrollbar::-webkit-scrollbar-thumb {
    background: #475569;
}

html.dark .shop-pagination [class*="text-[#FA5C64]"] {
    color: #FB7185 !important;
}

html.dark .shop-pagination [class*="bg-[#FA5C64]"] {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

html.dark .shop-pagination [class*="stroke-[#CFD6DF]"] {
    stroke: #64748b !important;
}

html.dark .shop-pagination .group:hover [class*="group-hover:stroke-[#FA5C64]"] {
    stroke: #FB7185 !important;
}

html.dark .shop-pagination .group:hover p {
    color: #FB7185 !important;
}

.shop-stock-toggle.is-off {
    background-color: #E7EAF0;
}

.shop-stock-toggle.is-on {
    background-color: #FA5C64;
}

.shop-stock-toggle-knob {
    background-color: #ffffff;
}

.shop-stock-toggle-knob.is-off {
    left: 16px;
}

.shop-stock-toggle-knob.is-on {
    left: 2px;
}

html.dark .shop-stock-toggle.is-off {
    background-color: #475569 !important;
}

html.dark .shop-stock-toggle.is-on {
    background-color: #FA5C64 !important;
}

html.dark .shop-stock-toggle-knob {
    background-color: #f8fafc !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35) !important;
}

/* ==========================================================================
   Auth / login pages
   ========================================================================== */
body.auth-page {
    background-color: #f9fafb;
}

html.dark body.auth-page {
    background-color: #0b1220;
    color: #e2e8f0;
}

html.dark body.auth-page [class*="text-[#010416]"] {
    color: #f8fafc !important;
}

html.dark body.auth-page [class*="text-[#000000]"] {
    color: #94a3b8 !important;
}

html.dark body.auth-page input {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #f1f5f9 !important;
}

html.dark body.auth-page input[class*="focus:border-[#23DB90]"]:focus {
    border-color: #FA5C64 !important;
}

html.dark body.auth-page input[class*="focus:ring-[#23DB90]"]:focus {
    --tw-ring-color: rgba(250, 92, 100, 0.25) !important;
}

html.dark body.auth-page [class*="text-[#23DB90]"] {
    color: #FB7185 !important;
}

html.dark body.auth-page [class*="text-red-700"] {
    color: #fca5a5 !important;
}

html.dark body.auth-page [class*="border-red-400"] {
    border-color: #f87171 !important;
}

html.dark body.auth-page [class*="bg-red-60"] {
    background-color: rgba(127, 29, 29, 0.35) !important;
}

html.dark body.auth-page [class*="shadow-[0_10px_40px"] {
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5) !important;
}

html.dark body.auth-page .bg-white {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark body.auth-page [data-theme-toggle] {
    background-color: #334155 !important;
    border: 1px solid #475569 !important;
}

html.dark body.auth-page [data-theme-toggle]:hover {
    background-color: rgba(250, 92, 100, 0.18) !important;
    border-color: rgba(250, 92, 100, 0.35) !important;
}

body.auth-page [data-theme-toggle] {
    background-color: #f9fafb;
    border: 1px solid #e7eaf0;
    border-radius: 12px;
}

/* Blog listing */
html.dark .blog-post-card > div,
html.dark .blog-post-card__inner,
html.dark .blog-sidebar,
html.dark .blog-empty {
    background-color: #1e293b !important;
    border-color: #475569 !important;
    background-image: none !important;
}

html.dark .blog-post-card:hover > div,
html.dark .blog-post-card:hover .blog-post-card__inner,
html.dark .group:hover .blog-post-card__inner {
    background-color: #243447 !important;
    background-image: none !important;
    border-color: rgba(251, 113, 133, 0.45) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35) !important;
}

html.dark .blog-post-card h3 {
    color: #f1f5f9 !important;
}

html.dark .blog-post-card:hover h3,
html.dark .blog-post-card .group:hover h3 {
    color: #f1f5f9 !important;
}

html.dark .blog-post-card p {
    color: #94a3b8 !important;
}

html.dark .blog-sidebar .text-\[\#000000\],
html.dark .blog-sidebar__heading {
    color: #f1f5f9 !important;
}

html.dark .blog-filter-select,
html.dark .blog-filter-dropdown {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #f1f5f9 !important;
}

html.dark .blog-filter-dropdown div {
    color: #e2e8f0 !important;
}

html.dark .blog-filter-dropdown div:hover {
    background-color: rgba(250, 92, 100, 0.12) !important;
    color: #FB7185 !important;
}

html.dark .blog-sidebar__input {
    background-color: #1e293b !important;
    border-color: #475569 !important;
    color: #f1f5f9 !important;
}

html.dark .blog-category-link span:first-child {
    color: #cbd5e1 !important;
}

html.dark .blog-category-link.is-active span:first-child,
html.dark .blog-category-link:hover span:first-child {
    color: #FB7185 !important;
}

html.dark .blog-post-card .border-gray-100 {
    border-color: #475569 !important;
}

html.dark .blog-post-card .group-hover\:border-rose-100 {
    border-color: #475569 !important;
}

html.dark .blog-post-card__category,
html.dark .blog-carousel-card__category {
    width: fit-content !important;
    max-width: 100% !important;
    align-self: flex-start !important;
    background-color: rgba(250, 92, 100, 0.2) !important;
    color: #FB7185 !important;
}

html.dark .blog-post-card__category:hover,
html.dark .blog-carousel-card__category:hover {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

html.dark .blog-post-card__category span,
html.dark .blog-carousel-card__category span {
    color: inherit !important;
}

/* Blog single post */
.blog-prose {
    color: #67788E;
    font-size: 12px;
    line-height: 28px;
    max-width: 100%;
    min-width: 0;
    overflow-x: clip;
    overflow-wrap: anywhere;
    word-break: break-word;
}

@media (min-width: 768px) {
    .blog-prose {
        font-size: 14px;
        line-height: 35px;
    }
}

.blog-prose h2,
.blog-prose h3,
.blog-prose h4 {
    color: #384656;
    font-weight: 800;
    margin-top: 30px;
    margin-bottom: 14px;
    padding-bottom: 10px;
    line-height: 1.4;
    scroll-margin-top: 100px;
    max-width: 100%;
    overflow-wrap: anywhere;
    border-bottom: 1px solid #E7EAF0;
}

.blog-prose h2 { font-size: 20px; }
.blog-prose h3 { font-size: 16px; }
.blog-prose h4 { font-size: 14px; }

@media (min-width: 768px) {
    .blog-prose h2 { font-size: 24px; }
    .blog-prose h3 { font-size: 20px; }
    .blog-prose h4 { font-size: 16px; }
}

.blog-prose p {
    margin-top: 20px;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.blog-prose ul,
.blog-prose ol {
    margin-top: 20px;
    margin-right: 15px;
    list-style: decimal;
    max-width: 100%;
}

.blog-prose li {
    margin-top: 8px;
    overflow-wrap: anywhere;
}

.blog-prose a {
    color: #0C2D5B;
    font-weight: 700;
    text-decoration: underline;
    overflow-wrap: anywhere;
}

.blog-prose a:hover {
    color: #FA5C64;
}

.blog-prose figure,
.blog-prose p:has(> img) {
    max-width: 100%;
    margin-inline: 0;
}

.blog-prose img {
    border-radius: 32px;
    margin-top: 20px;
    display: block;
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
}

.blog-prose iframe,
.blog-prose video,
.blog-prose embed,
.blog-prose object {
    max-width: 100% !important;
}

.blog-prose table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
}

.blog-prose pre,
.blog-prose code {
    max-width: 100%;
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-word;
}

.blog-prose strong {
    font-weight: 900;
    color: #384656;
}

html.dark .blog-show-title,
html.dark .blog-show-sidebar h2,
html.dark .blog-toc h2,
html.dark .blog-show-products h2 {
    color: #f1f5f9 !important;
}

html.dark .blog-show-meta {
    color: #94a3b8 !important;
}

html.dark .blog-toc {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

html.dark .blog-toc__link {
    color: #94a3b8 !important;
}

html.dark .blog-toc button span {
    color: #f1f5f9 !important;
}

html.dark .blog-show-cover__frame {
    border-color: #475569 !important;
    background-color: #1e293b !important;
    box-shadow: 0 12px 28px -16px rgba(0, 0, 0, 0.55) !important;
}

html.dark .blog-show-cover__media {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 60%, #7f1d1d 140%) !important;
}

html.dark .blog-show-lead,
html.dark .blog-show-lead-prose,
html.dark .blog-prose,
html.dark .blog-show-author p,
html.dark .blog-comment-body {
    color: #94a3b8 !important;
}

html.dark .blog-comment-author {
    color: #f1f5f9 !important;
}

html.dark .blog-comment-card .blog-comment-reply,
html.dark .blog-comment-reply {
    background-color: #0f172a !important;
    border-color: #475569 !important;
}

html.dark .blog-comment-card [class*="border-[#000000]/10"] {
    border-color: #475569 !important;
}

html.dark .product-comment-reply {
    background-color: #0f172a !important;
    border-color: #334155 !important;
}

html.dark .product-show-tab-panel [class*="bg-[#F9FAFB]"] .product-comment-reply {
    background-color: #0f172a !important;
}

html.dark .product-comment-reply [class*="text-[#67788E]"] {
    color: #cbd5e1 !important;
}

html.dark .product-comment-reply [class*="text-[#FA5C64]"] {
    color: #FB7185 !important;
}

html.dark .blog-prose h2,
html.dark .blog-prose h3,
html.dark .blog-prose h4,
html.dark .blog-prose strong {
    color: #e2e8f0 !important;
}

html.dark .blog-prose h2,
html.dark .blog-prose h3,
html.dark .blog-prose h4 {
    border-bottom-color: #334155;
}

html.dark .blog-prose a {
    color: #FB7185 !important;
}

html.dark .blog-show-author,
html.dark .blog-show-tags,
html.dark .blog-show-products {
    border-color: #475569 !important;
}

html.dark .blog-comment-card,
html.dark .blog-comment-form,
html.dark .blog-comment-empty,
html.dark .blog-product-card,
html.dark .blog-carousel-card {
    background-color: #1e293b !important;
    border-color: #475569 !important;
    background-image: none !important;
}

html.dark .blog-carousel-card:hover {
    background-color: #243447 !important;
    background-image: none !important;
    border-color: rgba(251, 113, 133, 0.45) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35) !important;
}

html.dark .blog-comment-form .bg-\[\#F9FAFC\] {
    background-color: #334155 !important;
}

html.dark .blog-comment-input {
    background-color: #334155 !important;
    color: #f1f5f9 !important;
    border-color: #475569 !important;
}

html.dark .blog-suggested-card p.text-gray-800 {
    color: #f1f5f9 !important;
}

html.dark .blog-suggested-card .group-hover\:text-\[\#FA5C64\],
html.dark .blog-suggested-card:hover p.text-gray-800 {
    color: #FB7185 !important;
}

html.dark .blog-suggested-card p.text-gray-600,
html.dark .blog-suggested-card span.text-gray-500 {
    color: #94a3b8 !important;
}

html.dark .blog-suggested-card {
    border-color: rgba(71, 85, 105, 0.55) !important;
    background-color: transparent !important;
}

html.dark .blog-show-sidebar {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .blog-show-sidebar .border-\[\#E7EAF0\] {
    border-color: #475569 !important;
}

html.dark .blog-product-card {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .blog-carousel-card h3 {
    color: #f1f5f9 !important;
}

html.dark .blog-carousel-card:hover h3 {
    color: #f1f5f9 !important;
}

html.dark .blog-product-card h3 {
    color: #f1f5f9 !important;
}

html.dark .blog-product-card:hover h3 {
    color: #FB7185 !important;
}

/* ==========================================================================
   Product show — tabs & specifications
   ========================================================================== */
html.dark .product-show-tab-nav {
    border-color: #334155 !important;
}

html.dark .product-show-tab-panel {
    background-color: #1e293b !important;
    border: 1px solid #334155;
}

html.dark .product-tab-btn {
    background-color: #334155 !important;
    color: #94a3b8 !important;
}

html.dark .product-tab-btn:hover {
    background-color: #475569 !important;
    color: #e2e8f0 !important;
}

html.dark .product-tab-btn.is-active {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

html.dark .product-spec-item {
    background-color: #0f172a !important;
    border: 1px solid #334155;
}

html.dark .product-spec-item [class*="text-[#181E25]"] {
    color: #f1f5f9 !important;
}

html.dark .product-spec-item [class*="text-[#67788E]"] {
    color: #94a3b8 !important;
}

html.dark .product-short-desc,
html.dark .product-short-desc p,
html.dark .product-short-desc span,
html.dark .product-short-desc li,
html.dark .product-short-desc div,
html.dark .product-short-desc a {
    color: #94a3b8 !important;
}

/* Cart — coupon */
html.dark .cart-coupon__box {
    background: linear-gradient(135deg, rgba(250, 92, 100, 0.12) 0%, #1e293b 55%, rgba(12, 45, 91, 0.25) 100%) !important;
    border-color: rgba(250, 92, 100, 0.25) !important;
}

html.dark .cart-coupon__field {
    background-color: #0f172a !important;
    border-color: #334155 !important;
}

html.dark .cart-coupon__field:focus-within,
html.dark .cart-coupon__field.border-\[\#FA5C64\] {
    border-color: #FA5C64 !important;
    box-shadow: 0 0 0 3px rgba(250, 92, 100, 0.15) !important;
}

html.dark .cart-coupon__input {
    color: #f1f5f9 !important;
}

html.dark .cart-coupon__input::placeholder {
    color: #64748b !important;
}

html.dark .cart-coupon__applied {
    background-color: rgba(15, 23, 42, 0.85) !important;
    border-color: rgba(250, 92, 100, 0.35) !important;
}

html.dark .cart-coupon__notch--start,
html.dark .cart-coupon__notch--end {
    background: linear-gradient(135deg, rgba(250, 92, 100, 0.12) 0%, #1e293b 55%, rgba(12, 45, 91, 0.25) 100%) !important;
    box-shadow: inset 0 0 0 1px rgba(250, 92, 100, 0.35);
}

html.dark .cart-coupon-alert {
    background-color: rgba(239, 68, 68, 0.12) !important;
    border-color: rgba(248, 113, 113, 0.35) !important;
    color: #fca5a5 !important;
}

html.dark .cart-coupon [class*="text-[#181E25]"] {
    color: #f1f5f9 !important;
}

html.dark .cart-coupon [class*="text-[#67788E]"] {
    color: #94a3b8 !important;
}

html.dark .cart-coupon__apply {
    color: #ffffff !important;
}

/* Product — installment calculator */
html.dark .installment-calculator {
    background: linear-gradient(135deg, rgba(0, 138, 242, 0.22) 0%, #1e293b 50%, rgba(0, 138, 242, 0.1) 100%) !important;
    border: 2px solid rgba(0, 138, 242, 0.55) !important;
}

html.dark .installment-calculator__icon {
    background-color: rgba(0, 138, 242, 0.18) !important;
    color: #008AF2 !important;
}

html.dark .installment-calculator__title,
html.dark .installment-calculator__value {
    color: #f1f5f9 !important;
}

html.dark .installment-calculator__subtitle,
html.dark .installment-calculator__label,
html.dark .installment-calculator__hint,
html.dark .installment-calculator__muted {
    color: #94a3b8 !important;
}

html.dark .installment-calculator__select,
html.dark .installment-calculator__input {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

html.dark .installment-calculator__select:focus,
html.dark .installment-calculator__input:focus {
    border-color: #008AF2 !important;
    box-shadow: 0 0 0 3px rgba(0, 138, 242, 0.2);
}

html.dark .installment-calculator__select option {
    background-color: #1e293b;
    color: #f1f5f9;
}

html.dark .installment-calculator__result {
    background-color: #0f172a !important;
    border-color: #334155 !important;
}

html.dark .installment-calculator__inquiry {
    border-color: #334155 !important;
}

html.dark .installment-calculator__heading,
html.dark .installment-calculator__accent,
html.dark .installment-calculator__cta {
    color: #4db4ff !important;
}

html.dark .installment-calculator__submit {
    background: #008AF2 !important;
    color: #ffffff !important;
}

html.dark .installment-calculator__link:hover {
    color: #3ba4f5 !important;
}

html.dark .installment-calculator__input::placeholder {
    color: #64748b !important;
}

html.dark .blog-comment-modal {
    background-color: #1e293b !important;
}

html.dark .blog-comment-modal h4,
html.dark .blog-comment-modal label,
html.dark .blog-comment-modal .font-bold {
    color: #f1f5f9 !important;
}

html.dark .blog-comment-modal .blog-comment-input {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

html.dark .blog-comment-modal .blog-comment-input:focus {
    border-color: #FA5C64 !important;
    background-color: #1e293b !important;
}

html.dark .blog-show-hero {
    border-color: #475569 !important;
}

html.dark .blog-show-article {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .blog-show-title {
    border-color: #475569 !important;
}

html.dark .blog-show-author + button,
html.dark .blog-show-page .bg-white.rounded-2xl,
html.dark .blog-show-page .blog-prose.bg-white,
html.dark .blog-show-sidebar.bg-white {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .blog-show-author .text-\[\#0C2D5B\] {
    color: #f1f5f9 !important;
}

html.dark .blog-show-lead {
    background-color: rgba(250, 92, 100, 0.08) !important;
    border-color: #FA5C64 !important;
}

html.dark .blog-show-tags span {
    background-color: rgba(12, 45, 91, 0.3) !important;
    color: #93c5fd !important;
    border-color: #334155 !important;
}

html.dark .site-page-prose,
html.dark .site-page-prose h2,
html.dark .site-page-prose h3 {
    color: #e2e8f0 !important;
}

html.dark .site-page-hero + div.bg-white,
html.dark .site-page-hero ~ div .bg-white,
html.dark section .bg-white.rounded-3xl {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .contact-map-embed iframe {
    filter: grayscale(0.2) brightness(0.85);
}

/* ==========================================================================
   Site pages — surfaces (typography in site-pages.css)
   ========================================================================== */
html.dark .site-page-card,
html.dark .site-page-section-card,
html.dark .site-page-faq-item,
html.dark .about-page-faq-item,
html.dark .about-page-card,
html.dark .about-page-section-card {
    background-color: #1e293b !important;
    border-color: #475569 !important;
}

html.dark .site-page-faq-trigger {
    background-color: #334155 !important;
}

html.dark .about-page-faq-item > button {
    background-color: #334155 !important;
}

html.dark .about-page-excerpt.site-rich-text {
    color: #94a3b8 !important;
}

html.dark .site-page-faq-trigger:hover,
html.dark .about-page-faq button:hover {
    background-color: rgba(250, 92, 100, 0.12) !important;
}

html.dark .site-page-faq svg[class*="text-[#FA5C64]"],
html.dark .about-page-faq svg[class*="text-[#FA5C64]"] {
    color: #FB7185 !important;
}

html.dark .site-page-card img,
html.dark .about-page img {
    border-color: #475569 !important;
}

html.dark .about-page-video {
    border-color: #475569 !important;
}

/* ==========================================================================
   Homepage — new sections
   ========================================================================== */
html.dark .home-products-carousel h2 {
    color: #f8fafc !important;
}

html.dark .home-products-carousel a[href*="products"],
html.dark .home-products-carousel .text-\[\#0C2D5B\] {
    color: #e2e8f0 !important;
}

html.dark .home-products-carousel--gray {
    background-color: #3f3f3f;
    background-image:
        radial-gradient(ellipse 90% 70% at 8% 0%, rgba(211, 211, 211, 0.18) 0%, transparent 55%),
        radial-gradient(ellipse 80% 60% at 100% 100%, rgba(0, 0, 0, 0.35) 0%, transparent 58%),
        linear-gradient(145deg, #3a3a3a 0%, #2f2f2f 48%, #262626 100%);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
    border: 1px solid rgba(211, 211, 211, 0.16);
}

html.dark .home-partners {
    border-color: #334155 !important;
    background-color: transparent;
}

html.dark .home-partners p {
    color: #94a3b8 !important;
}

html.dark .home-partners__item span {
    color: #e2e8f0 !important;
}

html.dark .home-partners__row {
    opacity: 0.75;
}

html.dark .team-member-card {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

html.dark .team-member-card h3 {
    color: #f1f5f9 !important;
}

html.dark .team-member-card a {
    background-color: #0f172a !important;
    color: #e2e8f0 !important;
}

html.dark .team-member-card a:hover {
    background-color: #FA5C64 !important;
    color: #fff !important;
}

html.dark .team-members-grid + * ,
html.dark .team-page .text-\[\#0C2D5B\] {
    color: #e2e8f0 !important;
}

html.dark .team-page-cta {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

html.dark .team-page-cta h2 {
    color: #f1f5f9 !important;
}

html.dark .team-page-cta p {
    color: #94a3b8 !important;
}

html.dark .team-page-cta a.bg-white {
    background-color: #0f172a !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

html.dark .home-promo-banner a,
html.dark .home-promo-banner > div a {
    border-color: #334155 !important;
}

html.dark .home-categories-section {
    background-color: transparent !important;
}

html.dark .home-cat-card {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

html.dark .site-footer {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

html.dark .site-footer .border-\[\#E7EAF0\],
html.dark .site-footer [class*="border-[#E7EAF0]"] {
    border-color: #334155 !important;
}

html.dark .site-footer input {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

html.dark .home-main-swiper img {
    border-color: #334155;
}

/* why AG + consult — brand red panels (light & dark) */
.home-consult-showcase .home-accent-panel,
.home-why-section .home-accent-panel,
.home-accent-panel--rose {
    background-color: #FA5C64 !important;
    background-image:
        radial-gradient(ellipse 90% 70% at 5% -10%, rgba(255, 255, 255, 0.32) 0%, transparent 55%),
        radial-gradient(ellipse 80% 60% at 100% 110%, rgba(159, 18, 57, 0.5) 0%, transparent 55%),
        radial-gradient(circle at 60% 35%, rgba(251, 113, 133, 0.5) 0%, transparent 45%),
        linear-gradient(145deg, #FB7185 0%, #FA5C64 45%, #E11D48 100%) !important;
    box-shadow: 0 24px 60px rgba(225, 29, 72, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.16);
}

.home-consult-showcase .home-accent-panel::before,
.home-why-section .home-accent-panel::before,
.home-accent-panel--rose::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    opacity: 0.16;
    background-image: radial-gradient(rgba(255, 255, 255, 0.7) 1px, transparent 1px);
    background-size: 18px 18px;
}

html.dark .home-consult-showcase .home-accent-panel,
html.dark .home-why-section .home-accent-panel,
html.dark .home-accent-panel--rose {
    background-color: #3f0a14 !important;
    background-image:
        radial-gradient(ellipse 90% 70% at 5% -10%, rgba(250, 92, 100, 0.45) 0%, transparent 55%),
        radial-gradient(ellipse 80% 60% at 100% 110%, rgba(244, 63, 94, 0.3) 0%, transparent 55%),
        radial-gradient(circle at 60% 35%, rgba(190, 24, 93, 0.4) 0%, transparent 45%),
        linear-gradient(145deg, #3f0a14 0%, #9f1239 48%, #7f1d1d 100%) !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
    border: 1px solid rgba(251, 113, 133, 0.32);
}

html.dark .home-consult-showcase .home-accent-panel::before,
html.dark .home-why-section .home-accent-panel::before,
html.dark .home-accent-panel--rose::before {
    opacity: 0.1;
}

.home-consult-showcase .home-accent-tile,
.home-why-section .home-accent-tile,
.home-accent-tile {
    background-color: rgba(255, 255, 255, 0.14) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(10px);
}

.home-consult-showcase .home-accent-tile.is-active,
.home-consult-showcase .home-accent-tile:hover,
.home-why-section .home-accent-tile:hover,
.home-accent-tile.is-active,
.home-accent-tile:hover {
    background-color: rgba(255, 255, 255, 0.24) !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
}

html.dark .home-consult-showcase .home-accent-tile,
html.dark .home-why-section .home-accent-tile,
html.dark .home-accent-tile {
    background-color: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(251, 113, 133, 0.25) !important;
}

html.dark .home-consult-showcase .home-accent-tile.is-active,
html.dark .home-consult-showcase .home-accent-tile:hover,
html.dark .home-why-section .home-accent-tile:hover,
html.dark .home-accent-tile.is-active,
html.dark .home-accent-tile:hover {
    background-color: rgba(250, 92, 100, 0.2) !important;
    border-color: rgba(251, 113, 133, 0.45) !important;
}

.home-consult-showcase .home-accent-icon,
.home-why-section .home-accent-icon {
    background-color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(225, 29, 72, 0.18);
}

html.dark .home-consult-showcase .home-accent-icon,
html.dark .home-why-section .home-accent-icon {
    background-color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}

/* Icons inside why AG / consult — red on white chip (override global white brand text) */
.home-consult-showcase .home-accent-icon svg,
.home-why-section .home-accent-icon svg,
html.dark .home-consult-showcase .home-accent-icon svg,
html.dark .home-why-section .home-accent-icon svg {
    color: #E11D48 !important;
    stroke: currentColor !important;
}

.home-consult-showcase .home-accent-icon svg path,
.home-why-section .home-accent-icon svg path,
html.dark .home-consult-showcase .home-accent-icon svg path,
html.dark .home-why-section .home-accent-icon svg path {
    stroke: currentColor !important;
}

/* Consult CTA phone icon follows button text color */
.home-consult-showcase .home-on-accent-btn svg,
html.dark .home-consult-showcase .home-on-accent-btn svg {
    color: inherit !important;
    stroke: currentColor !important;
}

.home-consult-showcase .home-on-accent-btn,
.home-consult-showcase a.bg-white {
    background-color: #ffffff !important;
    color: #E11D48 !important;
}

.home-consult-showcase a.bg-white:hover {
    background-color: #0C2D5B !important;
    color: #ffffff !important;
}

html.dark .home-consult-showcase .home-on-accent-btn,
html.dark .home-consult-showcase a.bg-white {
    background-color: #fff1f2 !important;
    color: #be123c !important;
}

html.dark .home-consult-showcase a.bg-white:hover {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

/* Promo consult CTA — keep high contrast in dark mode */
html.dark .home-promo-banner .home-promo-consult-btn,
html.dark .home-promo-banner .home-on-accent-btn.bg-white {
    background-color: #ffffff !important;
    color: #0C2D5B !important;
}

html.dark .home-promo-banner a.group:hover .home-promo-consult-btn,
html.dark .home-promo-banner a.group:hover .home-on-accent-btn.bg-white {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

.home-accent-text,
.home-consult-showcase h2,
.home-consult-showcase h3,
.home-consult-showcase p,
.home-promo-banner h3,
.home-promo-banner p,
.home-why-section h2,
.home-why-section h3,
.home-why-section .home-accent-text {
    color: #ffffff !important;
}

.home-consult-showcase .text-white\/75,
.home-consult-showcase .text-white\/65,
.home-promo-banner .text-white\/80,
.home-promo-banner .text-white\/85,
.home-promo-banner .text-white\/75,
.home-why-section .text-white\/70,
.home-why-section .text-white\/60 {
    color: rgba(255, 255, 255, 0.75) !important;
}

.home-consult-showcase a.bg-white:not(:hover),
.home-promo-banner span.bg-white.text-\[\#0C2D5B\],
.home-promo-banner span.bg-white.text-\[\#FA5C64\] {
    background-color: #ffffff !important;
}

.home-promo-banner span.bg-\[\#FA5C64\] {
    background-color: #FA5C64 !important;
    color: #ffffff !important;
}

.home-products-swiper.swiper {
    overflow: visible !important;
}

html.dark .product-card [class*="bg-transparent"] {
    background-color: transparent !important;
}

html.dark .share-modal {
    background-color: #1a2332 !important;
    color: #e8eef5;
}

html.dark .share-modal h3,
html.dark .share-modal .text-\[\#181E25\] {
    color: #f3f6fb !important;
}

html.dark .share-modal .text-\[\#67788E\],
html.dark .share-modal .text-\[\#67788E\].group-hover\:text-\[\#181E25\] {
    color: #9aa8b8 !important;
}

html.dark .share-modal .border-\[\#F0F2F5\],
html.dark .share-modal .border-\[\#E7EAF0\] {
    border-color: #2a3548 !important;
}

html.dark .share-modal .bg-\[\#F9FAFB\] {
    background-color: #121a26 !important;
}

html.dark .share-modal .bg-\[\#F3F4F6\] {
    background-color: #243044 !important;
}

html.dark .share-modal input {
    color: #e8eef5 !important;
}


/* Product card add-to-cart button */
html.dark .product-add-cart-btn[disabled],
html.dark button.product-add-cart-btn:disabled {
    opacity: 0.55;
}

html.dark div.product-add-cart-btn {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #94a3b8 !important;
}

html.dark div.product-add-cart-btn.text-\[\#B45309\] {
    background-color: rgba(245, 158, 11, 0.12) !important;
    border-color: rgba(245, 158, 11, 0.35) !important;
    color: #fbbf24 !important;
}

/* Brand red — readable on dark surfaces */
html.dark [class*="text-[#BF2222]"],
html.dark .text-\[\#BF2222\] {
    color: #F87171 !important;
}

html.dark [class*="bg-[#BF2222]/10"],
html.dark .bg-\[\#BF2222\]\/10 {
    background-color: rgba(191, 34, 34, 0.22) !important;
}

html.dark .bg-\[\#BF2222\] {
    background-color: #BF2222 !important;
}

html.dark .product-in-stock-badge {
    background-color: rgba(191, 34, 34, 0.22);
    color: #F87171;
}

/* Category / job rich descriptions */
html.dark .shop-category-desc .shop-filter-label,
html.dark .shop-rich-text,
html.dark .shop-rich-text p,
html.dark .shop-rich-text li,
html.dark .shop-rich-text span,
html.dark .shop-rich-text div {
    color: #cbd5e1 !important;
}

html.dark .shop-rich-text--sections h1,
html.dark .shop-rich-text--sections h2,
html.dark .shop-rich-text--sections h3,
html.dark .shop-rich-text--sections h4,
html.dark .shop-rich-text h1,
html.dark .shop-rich-text h2,
html.dark .shop-rich-text h3,
html.dark .shop-rich-text h4,
html.dark .shop-rich-text h5,
html.dark .shop-rich-text h6,
html.dark .product-description-content h1,
html.dark .product-description-content h2,
html.dark .product-description-content h3,
html.dark .product-description-content h4,
html.dark .desc-title {
    color: #f8fafc !important;
    border-bottom-color: #334155;
    background: none !important;
}

html.dark .shop-rich-text--sections p,
html.dark .shop-rich-text--sections ul,
html.dark .shop-rich-text--sections ol,
html.dark .shop-rich-text--sections blockquote,
html.dark .shop-rich-text p,
html.dark .shop-rich-text ul,
html.dark .shop-rich-text ol,
html.dark .shop-rich-text blockquote,
html.dark .product-description-content p,
html.dark .product-description-content ul,
html.dark .product-description-content ol,
html.dark .product-description-content blockquote {
    background: none !important;
    border-color: transparent !important;
    color: #cbd5e1 !important;
}

html.dark .shop-rich-text blockquote,
html.dark .product-description-content blockquote {
    border-right-color: #475569 !important;
}

html.dark .shop-rich-text strong,
html.dark .shop-rich-text b {
    color: #f1f5f9 !important;
}

html.dark .shop-rich-text a {
    color: #F87171 !important;
}

html.dark .shop-rich-text [style*="color:#000"],
html.dark .shop-rich-text [style*="color: #000"],
html.dark .shop-rich-text [style*="color:black"],
html.dark .shop-rich-text [style*="color: black"],
html.dark .shop-rich-text [style*="color:rgb(0"],
html.dark .shop-rich-text [style*="color: rgb(0"],
html.dark .shop-rich-text [style*="color:rgb(51"],
html.dark .shop-rich-text [style*="color: rgb(51"],
html.dark .shop-rich-text [style*="color:#333"],
html.dark .shop-rich-text [style*="color: #333"],
html.dark .shop-rich-text [style*="color:#111"],
html.dark .shop-rich-text [style*="color: #111"],
html.dark .shop-rich-text [style*="color:#222"],
html.dark .shop-rich-text [style*="color: #222"] {
    color: #e2e8f0 !important;
}

html.dark .shop-rich-text [style*="background-color:#fff"],
html.dark .shop-rich-text [style*="background-color: #fff"],
html.dark .shop-rich-text [style*="background-color:white"],
html.dark .shop-rich-text [style*="background-color: white"],
html.dark .shop-rich-text [style*="background:#fff"],
html.dark .shop-rich-text [style*="background: #fff"],
html.dark .shop-rich-text [style*="background:white"],
html.dark .shop-rich-text [style*="background: white"] {
    background-color: #0f172a !important;
}

html.dark .job-tile {
    background: #1e293b !important;
    border-color: #334155 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

html.dark .job-tile:hover {
    border-color: rgba(248, 113, 113, 0.45) !important;
    box-shadow: 0 16px 32px rgba(191, 34, 34, 0.18);
}

html.dark .job-tile__avatar {
    background: #0f172a;
    border-color: #1e293b;
    box-shadow: 0 0 0 1px #334155, 0 8px 18px rgba(0, 0, 0, 0.28);
}

html.dark .job-tile:hover .job-tile__avatar {
    box-shadow: 0 0 0 1px rgba(248, 113, 113, 0.45), 0 10px 22px rgba(191, 34, 34, 0.2);
}

html.dark .job-tile__title {
    color: #f1f5f9;
}

html.dark .job-tile:hover .job-tile__title {
    color: #F87171;
}

html.dark .job-tile__meta {
    color: #64748b;
}
