body.theme-neon {
  color-scheme: dark;
  background:
    radial-gradient(circle at 12% 0%, rgba(82, 255, 240, 0.09), transparent 24%),
    radial-gradient(circle at 88% 12%, rgba(124, 160, 255, 0.11), transparent 22%),
    linear-gradient(180deg, #030913 0%, #07192b 52%, #051221 100%);
}

body.theme-neon .hero-band--mint {
  background:
    radial-gradient(circle at 16% 20%, rgba(82, 255, 240, 0.16), transparent 20%),
    radial-gradient(circle at 84% 18%, rgba(124, 160, 255, 0.16), transparent 22%),
    radial-gradient(circle at 50% 66%, rgba(255, 84, 214, 0.06), transparent 26%),
    linear-gradient(180deg, #04101a 0%, #0a1828 54%, #071220 100%);
}

body.theme-neon .hero-band__inner::before {
  content: "";
  position: absolute;
  inset: 8px 0;
  border-radius: 38px;
  background:
    linear-gradient(135deg, rgba(82, 255, 240, 0.08), rgba(124, 160, 255, 0.05)),
    radial-gradient(circle at top left, rgba(82, 255, 240, 0.1), transparent 32%);
  border: 1px solid rgba(82, 255, 240, 0.1);
  box-shadow:
    inset 0 1px 0 rgba(210, 255, 251, 0.06),
    0 28px 56px rgba(0, 0, 0, 0.3);
  pointer-events: none;
}

body.theme-neon .hero-band__text {
  position: relative;
  z-index: 1;
}

body.theme-neon .hero-band--mint .hero-band__text h1,
body.theme-neon .hero-band--mint .hero-band__text p,
body.theme-neon .ktpl-hero-line h1,
body.theme-neon .ktpl-hero-line p {
  color: #f5fffe;
  text-shadow:
    0 2px 14px rgba(0, 0, 0, 0.45),
    0 0 18px rgba(82, 255, 240, 0.18);
}

body.theme-neon .hero-band__back,
body.theme-neon .hero-back-btn {
  background: rgba(8, 24, 38, 0.9);
  color: #52fff0;
  border-color: rgba(124, 255, 244, 0.58);
  box-shadow:
    0 14px 28px rgba(0, 0, 0, 0.26),
    0 0 0 1px rgba(82, 255, 240, 0.12) inset;
}

body.theme-neon .lesson-title--pill {
  color: #f5fffe;
  background: linear-gradient(180deg, rgba(8, 24, 38, 0.72), rgba(10, 28, 44, 0.54));
  border-color: rgba(82, 255, 240, 0.18);
  box-shadow:
    0 10px 26px rgba(0, 0, 0, 0.22),
    0 0 0 1px rgba(82, 255, 240, 0.1) inset;
}

body.theme-neon .subject-card {
  background:
    linear-gradient(180deg, rgba(7, 20, 33, 0.98) 0%, rgba(11, 29, 46, 0.99) 100%);
  border-color: rgba(64, 255, 233, 0.16);
  box-shadow:
    0 28px 66px rgba(0, 0, 0, 0.34),
    0 0 0 1px rgba(64, 255, 233, 0.08) inset;
}

body.theme-neon .subject-card::before {
  background:
    radial-gradient(circle at top right, rgba(82, 255, 240, 0.08), transparent 52%),
    linear-gradient(180deg, rgba(82, 255, 240, 0.05), transparent);
}

body.theme-neon .subject-card::after {
  background: radial-gradient(circle, rgba(82, 255, 240, 0.1), transparent 68%);
}

body.theme-neon .subject-card h2,
body.theme-neon .subject-card h3,
body.theme-neon .subject-card p,
body.theme-neon .subject-card small,
body.theme-neon .subject-subtitle,
body.theme-neon .subject-meta {
  color: #f5fffe;
}

body.theme-neon .subject-card h2,
body.theme-neon .subject-card h3 {
  color: #f6fffe;
  text-shadow:
    0 0 22px rgba(82, 255, 240, 0.12),
    0 1px 0 rgba(0, 0, 0, 0.28);
}

body.theme-neon .subject-meta,
body.theme-neon .lesson-content p,
body.theme-neon .lesson-content li,
body.theme-neon .lesson-content td,
body.theme-neon .lesson-content th,
body.theme-neon .lesson-content small,
body.theme-neon .lesson-content span,
body.theme-neon .caption {
  color: #cceefe;
}

body.theme-neon .subject-card .btn {
  color: #041723;
  background: linear-gradient(135deg, #56fff0, #63a9ff);
  box-shadow:
    0 16px 32px rgba(82, 151, 255, 0.28),
    0 0 0 1px rgba(82, 255, 240, 0.18) inset;
}

body.theme-neon .subject-card:hover {
  border-color: rgba(95, 255, 241, 0.34);
  box-shadow:
    0 34px 74px rgba(0, 0, 0, 0.38),
    0 0 0 1px rgba(64, 255, 233, 0.14) inset,
    0 0 30px rgba(82, 255, 240, 0.1);
}

body.theme-neon .subject-grid {
  position: relative;
  z-index: 1;
}

body.theme-neon .btn-ghost-sm {
  color: #52fff0;
  background: rgba(8, 24, 38, 0.78);
  border-color: rgba(82, 255, 240, 0.22);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}

body.theme-neon .lesson-content {
  background:
    radial-gradient(circle at top left, rgba(82, 255, 240, 0.06), transparent 30%),
    radial-gradient(circle at bottom right, rgba(124, 160, 255, 0.08), transparent 26%),
    linear-gradient(180deg, rgba(6, 18, 31, 0.985) 0%, rgba(9, 23, 38, 0.995) 100%);
  color: #f5fffe;
  border-color: rgba(64, 255, 233, 0.24);
  box-shadow:
    0 28px 72px rgba(0, 0, 0, 0.36),
    0 0 0 1px rgba(82, 255, 240, 0.08) inset;
}

body.theme-neon .lesson-content::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 120px;
  background: linear-gradient(180deg, rgba(82, 255, 240, 0.07), transparent);
  pointer-events: none;
}

body.theme-neon .lesson-content h2,
body.theme-neon .lesson-content h3,
body.theme-neon .lesson-content h4 {
  color: #b6fffb;
  text-shadow:
    0 0 20px rgba(82, 255, 240, 0.16),
    0 0 30px rgba(124, 160, 255, 0.08);
}

body.theme-neon .lesson-content h2::before {
  background: linear-gradient(135deg, #78fff3, #8bb8ff);
  color: #04161d;
  border: 1px solid rgba(210, 255, 251, 0.86);
  box-shadow:
    0 16px 32px rgba(0, 0, 0, 0.28),
    0 0 0 1px rgba(210, 255, 251, 0.44) inset,
    0 0 30px rgba(82, 255, 240, 0.26);
}

body.theme-neon .lesson-content h3::before {
  background: linear-gradient(135deg, rgba(82, 255, 240, 0.22), rgba(124, 160, 255, 0.28));
  color: #f4fffe;
  border: 1px solid rgba(82, 255, 240, 0.34);
  box-shadow:
    0 12px 24px rgba(0, 0, 0, 0.22),
    0 0 22px rgba(82, 255, 240, 0.14);
}

body.theme-neon .lesson-content li::marker {
  color: #52fff0;
}

body.theme-neon .lesson-content a,
body.theme-neon .term,
body.theme-neon .lesson-content strong,
body.theme-neon .de-bai__title {
  color: #dffffb;
}

body.theme-neon .lesson-content em {
  color: #f9fffe;
}

body.theme-neon .note,
body.theme-neon .warning,
body.theme-neon .tip,
body.theme-neon .definition,
body.theme-neon .example,
body.theme-neon blockquote,
body.theme-neon .de-bai {
  box-shadow:
    0 18px 36px rgba(0, 0, 0, 0.24),
    0 0 0 1px rgba(64, 255, 233, 0.08) inset;
}

body.theme-neon .definition,
body.theme-neon .example,
body.theme-neon blockquote {
  background:
    linear-gradient(180deg, rgba(9, 28, 44, 0.98), rgba(7, 20, 33, 0.97));
  border-color: rgba(98, 231, 255, 0.34);
}

body.theme-neon .note {
  background: linear-gradient(180deg, rgba(8, 36, 31, 0.98), rgba(5, 24, 20, 0.96));
  border-color: rgba(74, 222, 128, 0.28);
}

body.theme-neon .tip {
  background: linear-gradient(180deg, rgba(8, 28, 48, 0.96), rgba(6, 20, 35, 0.94));
  border-color: rgba(96, 165, 250, 0.3);
}

body.theme-neon .warning {
  background: linear-gradient(180deg, rgba(58, 28, 8, 0.96), rgba(37, 18, 5, 0.94));
  border-color: rgba(245, 158, 11, 0.32);
}

body.theme-neon .de-bai {
  background: linear-gradient(180deg, rgba(8, 30, 30, 0.96), rgba(6, 22, 25, 0.94));
  border-color: rgba(82, 255, 240, 0.22);
}

body.theme-neon .lesson-content table,
body.theme-neon .lesson-content .ktpl-data-table {
  background: linear-gradient(180deg, rgba(7, 21, 34, 0.99), rgba(8, 24, 38, 0.97));
  border-color: rgba(90, 230, 255, 0.26);
  box-shadow:
    0 20px 46px rgba(0, 0, 0, 0.32),
    0 0 0 1px rgba(82, 255, 240, 0.12) inset,
    0 0 20px rgba(82, 255, 240, 0.08);
}

body.theme-neon .lesson-content thead th {
  background: linear-gradient(180deg, rgba(82, 255, 240, 0.28), rgba(124, 160, 255, 0.24));
  color: #f8fffe;
  border-bottom-color: rgba(82, 255, 240, 0.18);
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.24);
}

body.theme-neon .lesson-content td {
  color: #eef9ff;
  background: rgba(9, 24, 38, 0.98);
  border-top-color: rgba(82, 255, 240, 0.16);
}

body.theme-neon .lesson-content tbody tr:nth-child(even) td {
  background: rgba(11, 29, 46, 1);
}

body.theme-neon .lesson-content tbody tr:hover td {
  background: rgba(15, 40, 62, 1);
}

body.theme-neon pre {
  background: #020915;
  color: #f4fffe;
  border: 1px solid rgba(82, 255, 240, 0.18);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.24);
}
