/* =================================================================
   ЛК — тематический фон по вкладкам (синхрон с parallax / logo)
   ================================================================= */

#nb-dashboard-wrapper {
    --dash-bg-base: #0d0a06;
    --dash-bg-glow-a: rgba(255, 200, 80, 0.07);
    --dash-bg-glow-b: rgba(180, 130, 40, 0.06);
    --dash-bg-glow-c: rgba(255, 215, 0, 0.04);
}

#nb-dashboard-wrapper::before {
    background-color: var(--dash-bg-base) !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 15% 20%, var(--dash-bg-glow-a) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 85%, var(--dash-bg-glow-b) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, var(--dash-bg-glow-c) 0%, transparent 55%) !important;
    transition: background-color 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

body:has(#nb-dashboard-wrapper),
html:has(#nb-dashboard-wrapper) {
    transition: background-color 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* overview — базовое тёплое золото (default) */

#nb-dashboard-wrapper[data-parallax-theme="overview"],
#nb-dashboard-wrapper[data-parallax-theme="default"] {
    --dash-bg-base: #0d0a06;
    --dash-bg-glow-a: rgba(255, 200, 80, 0.07);
    --dash-bg-glow-b: rgba(180, 130, 40, 0.06);
    --dash-bg-glow-c: rgba(255, 215, 0, 0.04);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="overview"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="overview"]),
body:has(#nb-dashboard-wrapper[data-parallax-theme="default"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="default"]) {
    background-color: #0d0a06 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 15% 20%, rgba(255, 200, 80, 0.06) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 85%, rgba(180, 130, 40, 0.05) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(255, 215, 0, 0.03) 0%, transparent 55%) !important;
}

/* music — теплее, янтарнее */

#nb-dashboard-wrapper[data-parallax-theme="music"] {
    --dash-bg-base: #100a04;
    --dash-bg-glow-a: rgba(255, 190, 70, 0.085);
    --dash-bg-glow-b: rgba(210, 140, 30, 0.07);
    --dash-bg-glow-c: rgba(255, 215, 0, 0.05);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="music"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="music"]) {
    background-color: #100a04 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 12% 18%, rgba(255, 190, 70, 0.075) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 90% 82%, rgba(210, 140, 30, 0.06) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 52% 48%, rgba(255, 215, 0, 0.04) 0%, transparent 55%) !important;
}

/* subscription — насыщенное золото */

#nb-dashboard-wrapper[data-parallax-theme="subscription"] {
    --dash-bg-base: #110c05;
    --dash-bg-glow-a: rgba(255, 215, 0, 0.09);
    --dash-bg-glow-b: rgba(255, 180, 40, 0.075);
    --dash-bg-glow-c: rgba(255, 230, 120, 0.05);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="subscription"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="subscription"]) {
    background-color: #110c05 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 18% 22%, rgba(255, 215, 0, 0.08) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 85% 80%, rgba(255, 180, 40, 0.065) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(255, 230, 120, 0.038) 0%, transparent 55%) !important;
}

/* contests — золото + лёгкий розовый */

#nb-dashboard-wrapper[data-parallax-theme="contests"] {
    --dash-bg-base: #100809;
    --dash-bg-glow-a: rgba(255, 200, 80, 0.08);
    --dash-bg-glow-b: rgba(255, 64, 129, 0.045);
    --dash-bg-glow-c: rgba(255, 180, 60, 0.045);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="contests"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="contests"]) {
    background-color: #100809 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 14% 20%, rgba(255, 200, 80, 0.07) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 84%, rgba(255, 64, 129, 0.04) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(255, 180, 60, 0.035) 0%, transparent 55%) !important;
}

/* ai — глубокий фиолет */

#nb-dashboard-wrapper[data-parallax-theme="ai"] {
    --dash-bg-base: #0a0610;
    --dash-bg-glow-a: rgba(176, 38, 255, 0.075);
    --dash-bg-glow-b: rgba(120, 40, 200, 0.055);
    --dash-bg-glow-c: rgba(255, 64, 180, 0.035);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="ai"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="ai"]) {
    background-color: #0a0610 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 16% 18%, rgba(176, 38, 255, 0.065) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 86% 86%, rgba(120, 40, 200, 0.05) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 48% 52%, rgba(255, 64, 180, 0.03) 0%, transparent 55%) !important;
}

/* games — фиолет + золото */

#nb-dashboard-wrapper[data-parallax-theme="games"] {
    --dash-bg-base: #0c0812;
    --dash-bg-glow-a: rgba(160, 80, 255, 0.07);
    --dash-bg-glow-b: rgba(255, 215, 0, 0.045);
    --dash-bg-glow-c: rgba(140, 60, 220, 0.04);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="games"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="games"]) {
    background-color: #0c0812 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 14% 20%, rgba(160, 80, 255, 0.06) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 84%, rgba(255, 215, 0, 0.04) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(140, 60, 220, 0.032) 0%, transparent 55%) !important;
}

/* social — бирюза + розовый */

#nb-dashboard-wrapper[data-parallax-theme="social"] {
    --dash-bg-base: #060d10;
    --dash-bg-glow-a: rgba(0, 188, 212, 0.065);
    --dash-bg-glow-b: rgba(255, 64, 129, 0.04);
    --dash-bg-glow-c: rgba(80, 200, 220, 0.035);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="social"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="social"]) {
    background-color: #060d10 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 15% 20%, rgba(0, 188, 212, 0.055) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 85%, rgba(255, 64, 129, 0.035) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(80, 200, 220, 0.028) 0%, transparent 55%) !important;
}

/* services — нейтральное золото */

#nb-dashboard-wrapper[data-parallax-theme="services"] {
    --dash-bg-base: #0e0a06;
    --dash-bg-glow-a: rgba(255, 210, 90, 0.075);
    --dash-bg-glow-b: rgba(190, 145, 45, 0.055);
    --dash-bg-glow-c: rgba(255, 215, 0, 0.038);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="services"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="services"]) {
    background-color: #0e0a06 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 15% 20%, rgba(255, 210, 90, 0.065) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 85%, rgba(190, 145, 45, 0.05) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(255, 215, 0, 0.032) 0%, transparent 55%) !important;
}

/* finance — тёмный + emerald */

#nb-dashboard-wrapper[data-parallax-theme="finance"] {
    --dash-bg-base: #080f0a;
    --dash-bg-glow-a: rgba(76, 175, 80, 0.06);
    --dash-bg-glow-b: rgba(255, 215, 0, 0.045);
    --dash-bg-glow-c: rgba(50, 140, 70, 0.035);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="finance"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="finance"]) {
    background-color: #080f0a !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 14% 22%, rgba(76, 175, 80, 0.05) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 82%, rgba(255, 215, 0, 0.038) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(50, 140, 70, 0.028) 0%, transparent 55%) !important;
}

/* docs — чуть прохладнее */

#nb-dashboard-wrapper[data-parallax-theme="docs"] {
    --dash-bg-base: #0a0c0e;
    --dash-bg-glow-a: rgba(255, 200, 80, 0.06);
    --dash-bg-glow-b: rgba(0, 188, 212, 0.04);
    --dash-bg-glow-c: rgba(255, 215, 0, 0.032);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="docs"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="docs"]) {
    background-color: #0a0c0e !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 15% 20%, rgba(255, 200, 80, 0.05) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 85%, rgba(0, 188, 212, 0.032) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(255, 215, 0, 0.028) 0%, transparent 55%) !important;
}

/* profile — мягкое тепло */

#nb-dashboard-wrapper[data-parallax-theme="profile"] {
    --dash-bg-base: #0d0a07;
    --dash-bg-glow-a: rgba(255, 210, 100, 0.065);
    --dash-bg-glow-b: rgba(180, 130, 50, 0.05);
    --dash-bg-glow-c: rgba(255, 220, 140, 0.035);
}

body:has(#nb-dashboard-wrapper[data-parallax-theme="profile"]),
html:has(#nb-dashboard-wrapper[data-parallax-theme="profile"]) {
    background-color: #0d0a07 !important;
    background-image:
        radial-gradient(ellipse 120% 80% at 15% 20%, rgba(255, 210, 100, 0.055) 0%, transparent 50%),
        radial-gradient(ellipse 100% 70% at 88% 85%, rgba(180, 130, 50, 0.042) 0%, transparent 45%),
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(255, 220, 140, 0.03) 0%, transparent 55%) !important;
}

@media (prefers-reduced-motion: reduce) {
    #nb-dashboard-wrapper::before,
    body:has(#nb-dashboard-wrapper),
    html:has(#nb-dashboard-wrapper) {
        transition: none !important;
    }
}
