/* Purple/indigo palette — same blade/glass/gloss structure as style.css,
   swaps neon green for the violet-to-indigo gradient from the favicon
   (#621D6E -> #3B3792). Applied via [data-theme="dark"] on <html>,
   set by static/js/theme.js (manual toggle, defaults to dark). */

:root[data-theme="dark"] {
  --g1: #e6d9f5;
  --g2: #8a4fc0;
  --g3: #3b3792;
  --g4: #170f28;
  --btn-y: #b8933e;
  --btn-x: #3b3792;
  --btn-b: #8a3f3f;
}

[data-theme="dark"] body {
  background: radial-gradient(ellipse at 50% 28%, #4b2f6b 0%, #2e1f4a 35%, #150f28 75%, #070512 100%);
  color: #ede3f7;
}

[data-theme="dark"] .window {
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6), 0 0 60px rgba(140, 70, 190, 0.25);
}

[data-theme="dark"] #banner h1 {
  text-shadow: 0 0 18px rgba(140, 70, 190, 0.7), 0 2px 0 var(--g4);
}

[data-theme="dark"] .titlebar {
  background: linear-gradient(180deg, #6a3f9c, #3b2260);
  color: #f0e6fa;
  text-shadow: none;
}

[data-theme="dark"] nav {
  background: linear-gradient(180deg, #3a2456, var(--g4));
}

[data-theme="dark"] nav a:hover {
  color: #f0e6fa;
  box-shadow: 0 0 14px rgba(140, 70, 190, 0.6);
}

[data-theme="dark"] nav a:hover i {
  color: #f0e6fa;
}

[data-theme="dark"] main {
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.05), rgba(0, 0, 0, 0.3)),
    radial-gradient(ellipse at top, #3a2456, var(--g4) 70%);
  color: #ede3f7;
}

[data-theme="dark"] h1, [data-theme="dark"] h2 {
  text-shadow: 0 0 8px rgba(140, 70, 190, 0.5);
}

[data-theme="dark"] a {
  color: #c79bf0;
}

[data-theme="dark"] a:visited {
  color: #9c6fc7;
}

[data-theme="dark"] article ul li a,
[data-theme="dark"] main > ul li a,
[data-theme="dark"] #recent-posts li a,
[data-theme="dark"] #portfolio-highlights li a {
  color: #e6d9f5;
}

[data-theme="dark"] article ul li a:hover,
[data-theme="dark"] main > ul li a:hover,
[data-theme="dark"] #recent-posts li a:hover,
[data-theme="dark"] #portfolio-highlights li a:hover {
  background: linear-gradient(180deg, rgba(140, 70, 190, 0.3), rgba(0, 0, 0, 0.25));
  box-shadow: 0 0 12px rgba(140, 70, 190, 0.4);
}

[data-theme="dark"] .row-meta, [data-theme="dark"] .meta {
  color: #b79bd1;
}

[data-theme="dark"] .row-desc {
  color: #cdb8e3;
}

[data-theme="dark"] .tagline {
  color: #cdb8e3;
}

[data-theme="dark"] footer {
  color: #cdb8e3;
}

[data-theme="dark"] .theme-toggle {
  color: #f0e6fa;
  background: radial-gradient(circle at 30% 30%, #4b2f6b, var(--g3) 55%, var(--g4));
}
