body.dark-mode * {
  scrollbar-color: var(--e-global-color-primary) #000 !important;
}

/* Override Elementor Global Colors for Dark Mode */
body.dark-mode {
    --e-global-color-7c4d0cd: #17191A !important; /* Background */
    --e-global-color-c32f9d4: #27292D !important; /* Secondary bg */
    --e-global-color-text: #ffffff !important; /* Text color */
    --e-global-color-secondary: #cccccc !important; /* Secondary text */
    background-color: #17191A !important;
}

/* Force dark background on all Elementor sections */


/* Force light text on all Elementor text elements */
body.dark-mode .elementor-text-editor,
body.dark-mode .elementor-widget-text,
body.dark-mode p {
    color: #ffffff !important;
}

/* Dark Mode Specific Styles */
body.dark-mode .menu-circle {
    background: var(--e-global-color-primary);
}

body.dark-mode .menu-circle svg {
    color: #27292D;
}

body.dark-mode .menu-label {
    background: #333;
    color: #fff;
}

body.dark-mode .menu-label::after {
    border-top-color: #333;
}

/* Force dark theme on body and html */
body.dark-mode,
html.dark-mode {
    background-color: #27292D !important;
    color: #ffffff !important;
}

/* Override any white/light backgrounds */
body.dark-mode *[style*="background-color: #F0F0F6"],
body.dark-mode *[style*="background-color: #FFFFFF"],
body.dark-mode *[style*="background-color: white"] {
    background-color: #17191A !important;
}

/* Override any dark text colors */
body.dark-mode *[style*="color: #2E2E2E"],
body.dark-mode *[style*="color: #000000"],
body.dark-mode *[style*="color: black"] {
    color: #ffffff !important;
}

/* Smooth transitions for theme switching */
body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

.menu-circle {
    transition: background-color 0.3s ease;
}

.menu-circle svg {
    transition: color 0.3s ease;
}

.elementor-element,
.elementor-widget-container,
.elementor-heading-title,
.elementor-text-editor {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

/* Theme Toggle Button */
.theme-toggle-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--e-global-color-c32f9d4);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border: none;
    position: relative;
}

.theme-toggle-btn:hover {
    background: var(--e-global-color-primary);
}

.theme-toggle-btn svg {
    stroke: var(--e-global-color-text);
}

.theme-toggle-btn:hover svg {
    stroke: var(--e-global-color-text);
}

.mobile-toggle {
    position: fixed !important;
    bottom: 10px !important;
    left: 10px !important;
    z-index: 9999 !important;
    width: 50px !important;
    height: 50px !important;
    background: var(--e-global-color-primary) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
    aspect-ratio: 1 !important;
}

@media (min-width: 1025px) {
    .mobile-toggle {
        display: none !important;
    }
}

.theme-toggle-btn .sun-icon {
    display: block;
    color: var(--e-global-color-text);
    width: 18px;
    height: 18px;
    stroke-width: 2;
}

.theme-toggle-btn .moon-icon {
    display: none;
    color: #27292D;
    width: 18px;
    height: 18px;
    stroke-width: 2;
}

body.dark-mode .theme-toggle-btn .sun-icon {
    display: none;
}

body.dark-mode .theme-toggle-btn .moon-icon {
    display: block;
}

/* Theme toggle label */
.theme-toggle-label {
    position: absolute;
    bottom: 45px;
    background: #000;
    color: #fff;
    padding: 8px 12px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    pointer-events: none;
}

.theme-toggle-label::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #000;
}

.theme-toggle-btn:hover .theme-toggle-label {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

body.dark-mode .theme-toggle-label {
    background: #333;
    color: #fff;
}

body.dark-mode .theme-toggle-label::after {
    border-top-color: #333;
}

.elementor-kit-6 button,
.elementor-kit-6 input[type="button"],
.elementor-kit-6 input[type="submit"],
.elementor-kit-6 .elementor-button {
    color: #2E2E2E !important;
}

.info-label span {
    color: #2E2E2E !important;
}

.social-link svg {
    fill: #2E2E2E !important;
}

.custom-icon-menu a:hover .menu-circle svg,
.custom-icon-menu .current-menu-item .menu-circle svg,
.custom-icon-menu a .menu-circle svg {
    color: #2E2E2E !important;
}

body.dark-mode .lista-testi-accordion .accordion-header {
    background: var(--e-global-color-7c4d0cd);
    color: var(--e-global-color-text);
    border: none
}

body.dark-mode .lista-testi-accordion .accordion-content {
    background: var(--e-global-color-7c4d0cd);
    border: none;
}

body.dark-mode .track-controls button svg {
    color: #2E2E2E !important;
}

body.dark-mode .music-track {
    background: var(--e-global-color-7c4d0cd) !important;
}

body.dark-mode .track-controls-wrapper {
    background: #000 !important;
}

body.dark-mode .track-controls-title {
    color: var(--e-global-color-text) !important;
}