/* ==========================================================
   THEME SYSTEM
   body.theme-purple-black  -> deep purple/black mode (default)
   body.theme-white         -> full light/white mode
   These selectors are intentionally written as `body.theme-x .thing`
   so they win the cascade over any older hard-coded color rules
   in style.css / setting.css regardless of file order.
========================================================== */

/* ---------- WHITE THEME: CSS VARIABLES ---------- */
body.theme-white{
  --bg-primary:#FFFFFF;
  --bg-secondary:#F5F5F8;
  --sidebar:#FFFFFF;
  --card:#F6F6F9;
  --card-hover:#ECECF2;

  --olive:#7C3AED;
  --olive-light:#9F67FF;
  --rich-green:#7C3AED;
  --rich-green-dark:#5B21B6;
  --forest:#6D28D9;

  --gold:#B45309;
  --cream:#FFFFFF;

  --text-primary:#15151A;
  --text-secondary:#45454E;
  --text-muted:#75757F;

  --border:rgba(15,15,25,.09);
  --glass:rgba(15,15,25,.035);
  --glow:rgba(124,58,237,.20);
}

body.theme-white{
  background:#FFFFFF;
  color-scheme:light;
}

body.theme-white ::-webkit-scrollbar-thumb{background:rgba(0,0,0,0.14);}
body.theme-white ::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,0.22);}

/* ---------- WHITE THEME: STRUCTURAL OVERRIDES (previously hard-coded) ---------- */
body.theme-white .sidebar{background:#FFFFFF;}
body.theme-white .player{background:rgba(255,255,255,.92);backdrop-filter:blur(24px);}

body.theme-white .main{
  background:
    radial-gradient(circle at top right, rgba(124,58,237,.06), transparent 35%),
    radial-gradient(circle at bottom left, rgba(124,58,237,.05), transparent 40%),
    #F5F5F8;
}

body.theme-white .hero{
  background:
    radial-gradient(circle at 80% 30%, rgba(124,58,237,.14), transparent 40%),
    radial-gradient(circle at 10% 100%, rgba(124,58,237,.10), transparent 55%),
    linear-gradient(135deg,#FBF9FF,#F3EEFF,#FBF9FF);
  border:1px solid var(--border);
}
body.theme-white .hero-content h1,
body.theme-white .hero-content p{color:var(--text-primary);}
body.theme-white .hero-content p{color:var(--text-secondary);}

body.theme-white .btn-primary,
body.theme-white .pc-play,
body.theme-white .ctrl-main{
  background:linear-gradient(135deg,#7C3AED,#5B21B6);
  color:#fff;
}

body.theme-white .nav-item.active{
  background:rgba(124,58,237,.10);
  border-left:4px solid #7C3AED;
  color:var(--text-primary);
}

body.theme-white .track-card{
  background:#FFFFFF;
  border:1px solid rgba(15,15,25,.08);
  box-shadow:0 2px 10px rgba(15,15,25,.04);
}
body.theme-white .track-card:hover{
  background:#F3EEFF;
  transform:translateY(-5px);
}

body.theme-white .progress-fill,
body.theme-white .streak-fill{
  background:linear-gradient(90deg,#9F67FF,#5B21B6);
}

body.theme-white .chip.active{
  background:linear-gradient(135deg,#7C3AED,#5B21B6);
  color:#fff;
}

body.theme-white .np-art{
  background:radial-gradient(circle at 35% 30%,rgba(124,58,237,.30),rgba(91,33,182,.35) 45%,rgba(124,58,237,.45) 100%);
}

body.theme-white .avatar-sm,
body.theme-white .avatar-lg{
  background:linear-gradient(145deg,#B45309,#7C3AED);
}

body.theme-white .plan-pill{
  background:linear-gradient(135deg,#F3C969,#B45309);
  color:#1a1400;
}

body.theme-white .brand-mark{
  background:linear-gradient(145deg,#7C3AED,#5B21B6);
}
body.theme-white .brand-mark svg{stroke:#fff;}

/* ---------- WHITE THEME: SETTINGS PAGE ---------- */
body.theme-white .settings-title{color:var(--text-primary);}
body.theme-white .settings-heading{color:var(--text-muted);}

body.theme-white .settings-card{
  background:#FFFFFF;
  border:1px solid rgba(15,15,25,.08);
  box-shadow:0 2px 10px rgba(15,15,25,.04);
}
body.theme-white .settings-card:hover{
  background:#F7F4FF;
  border-color:#7C3AED;
}

body.theme-white .setting-icon{
  background:#F3EEFF;
  color:#7C3AED;
}
body.theme-white .setting-left span{color:var(--text-primary);}
body.theme-white .setting-arrow{color:#9a9aa4;}
body.theme-white .settings-card-hint{color:var(--text-muted);}

body.theme-white .premium-card{
  background:linear-gradient(135deg,#7C3AED,#B45309);
  color:#fff;
}
body.theme-white .premium-card p{color:#fdf2ff;}
body.theme-white .premium-btn{background:#fff;color:#111;}

body.theme-white .social-box{
  background:#FFFFFF;
  border:1px solid rgba(15,15,25,.08);
  color:var(--text-primary);
}
body.theme-white .social-box span{color:var(--text-secondary);}
body.theme-white .social-box:hover{
  background:#F7F4FF;
  border-color:#7C3AED;
}

/* ---------- WHITE THEME: POPUPS ---------- */
body.theme-white .popup-overlay{background:rgba(20,15,30,.35);}
body.theme-white .popup-card{
  background:#FFFFFF;
  border:1px solid rgba(15,15,25,.08);
  box-shadow:0 30px 60px -20px rgba(15,15,25,.25);
}
body.theme-white .popup-card h2{color:var(--text-primary);}
body.theme-white .popup-card p{color:var(--text-muted);}

body.theme-white .timer-btn,
body.theme-white .action-item,
body.theme-white .new-playlist-row input,
body.theme-white .playlist-select-item,
body.theme-white .reminder-item{
  background:#F6F6F9;
  color:var(--text-primary);
  border:1px solid rgba(15,15,25,.06);
}
body.theme-white .timer-btn:hover,
body.theme-white .action-item:hover{
  background:#7C3AED;
  color:#fff;
}
body.theme-white .new-playlist-row input:focus{border-color:#7C3AED;}
body.theme-white .new-playlist-row button{background:#7C3AED;color:#fff;}
body.theme-white .playlist-select-item:hover{background:#ECECF2;}
body.theme-white .playlist-select-item.added{
  background:rgba(124,58,237,.10);
  border:1px solid #7C3AED;
}
body.theme-white .playlist-select-count,
body.theme-white .empty-hint{color:var(--text-muted);}
body.theme-white .playlist-select-check{color:#7C3AED;}

body.theme-white .close-popup{background:#7C3AED;color:#fff;}

body.theme-white .playlist-card{
  background:#FFFFFF;
  border:1px solid rgba(15,15,25,.08);
}
body.theme-white .playlist-card:hover{background:#F7F4FF;}
body.theme-white .playlist-card-art{
  background:linear-gradient(135deg,#7C3AED,#5B21B6);
}
body.theme-white .playlist-card-name{color:var(--text-primary);}
body.theme-white .playlist-card-count{color:var(--text-muted);}

body.theme-white .slider{background:#c9c9d4;}
body.theme-white .switch input:checked+.slider{background:#7C3AED;}

body.theme-white .day-chip.active{background:linear-gradient(135deg,#7C3AED,#5B21B6);}

/* ---------- WHITE THEME: TOAST ---------- */
body.theme-white .reminder-toast{
  background:#FFFFFF;
  border:1px solid rgba(15,15,25,.08);
  box-shadow:0 20px 40px -12px rgba(15,15,25,.18);
}

/* ==========================================================
   PURPLE-BLACK THEME (default, reinforced explicitly)
========================================================== */
body.theme-purple-black .rp-card,
body.theme-purple-black .top-moods{color:var(--text-primary);}
