/* ============================================================
   Riddleling · Aurora 主题（首页 + 子页面共用）
   深色极光 + 玻璃拟态 + 动效。配合 js/aurora.js 使用。
   ============================================================ */

/* ---------- RESET ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter','PingFang SC','Microsoft YaHei',sans-serif;
  background:#03020a;color:#e7e7ee;overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
::selection{background:#8b5cf766;color:#fff}

/* ---------- 光标流光 ---------- */
#cursorGlow{
  position:fixed;top:0;left:0;width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(139,92,246,.18) 0%,rgba(34,211,238,.07) 30%,transparent 60%);
  pointer-events:none;z-index:9999;mix-blend-mode:soft-light;
  transform:translate(-50%,-50%);transition:opacity .4s;opacity:0;
}

/* ---------- 主背景 + 极光 ---------- */
.stage{position:relative;isolation:isolate;min-height:100vh;
  background:linear-gradient(180deg,#060510 0%,#04020b 50%,#02010a 100%);overflow:hidden;}
.aurora-layer{position:absolute;inset:0;z-index:0;filter:blur(80px) brightness(1.35);pointer-events:none;}
.aurora-blob{position:absolute;border-radius:50%;animation:auroraDrift 14s ease-in-out infinite alternate;opacity:.5;mix-blend-mode:screen;}
.aurora-blob:nth-child(1){width:70vw;height:70vw;left:-20%;top:-15%;background:radial-gradient(circle,rgba(139,92,246,.7),transparent 70%);animation-duration:16s}
.aurora-blob:nth-child(2){width:60vw;height:60vw;right:-10%;top:8%;background:radial-gradient(circle,rgba(34,211,238,.42),transparent 65%);animation-duration:18s;animation-delay:-3s}
.aurora-blob:nth-child(3){width:52vw;height:52vw;left:28%;bottom:-12%;background:radial-gradient(circle,rgba(236,72,153,.38),transparent 62%);animation-duration:14s;animation-delay:-6s}
.aurora-blob:nth-child(4){width:40vw;height:40vw;left:4%;bottom:18%;background:radial-gradient(circle,rgba(16,185,129,.28),transparent 55%);animation-duration:20s;animation-delay:-9s}
@keyframes auroraDrift{
  0%{transform:translate(0,0) scale(1) rotate(0deg)}
  25%{transform:translate(3%,-2%) scale(1.05) rotate(2deg)}
  50%{transform:translate(-2%,3%) scale(.95) rotate(-1deg)}
  75%{transform:translate(4%,1%) scale(1.08) rotate(3deg)}
  100%{transform:translate(-1%,-3%) scale(1) rotate(0deg)}
}
.aurora-scan{position:absolute;inset:0;z-index:1;background:linear-gradient(130deg,transparent 30%,rgba(255,255,255,.03) 45%,transparent 55%);background-size:200% 200%;animation:scan 12s ease-in-out infinite;pointer-events:none;}
@keyframes scan{0%,100%{background-position:100% 100%}50%{background-position:0% 0%}}
.grid-overlay{position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;}
.noise{position:absolute;inset:0;z-index:2;opacity:.3;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
#particles{position:absolute;inset:0;z-index:3;pointer-events:none;}

/* ---------- NAV ---------- */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:16px 48px;backdrop-filter:blur(20px);background:rgba(4,3,12,.45);border-bottom:1px solid rgba(255,255,255,.05);}
.logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;letter-spacing:-.3px}
.logo-icon{width:30px;height:30px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:16px;color:#fff;background:conic-gradient(from 180deg,#8b5cf6,#ec4899,#f59e0b,#22d3ee,#8b5cf6);box-shadow:0 0 24px rgba(139,92,246,.6);animation:logoSpin 10s linear infinite;}
@keyframes logoSpin{to{transform:rotate(360deg)}}
.nav-links{display:flex;gap:30px;font-size:13.5px;font-weight:500;color:#b0b0c0;}
.nav-links a{position:relative;transition:color .25s}
.nav-links a.active{color:#fff}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:linear-gradient(90deg,#8b5cf6,#ec4899);border-radius:2px;transition:width .35s cubic-bezier(.4,0,.2,1);}
.nav-links a:hover{color:#fff}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.nav-cta{padding:9px 18px;border-radius:999px;font-size:13px;font-weight:600;color:#fff;background:linear-gradient(135deg,rgba(139,92,246,.25),rgba(236,72,153,.18));border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);transition:all .3s;}
.nav-cta:hover{background:linear-gradient(135deg,rgba(139,92,246,.4),rgba(236,72,153,.32));border-color:rgba(139,92,246,.5);box-shadow:0 0 30px rgba(139,92,246,.3);transform:scale(1.03);}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.nav-toggle span{width:22px;height:2px;background:#e7e7ee;border-radius:2px;transition:.3s}
.nav-actions{display:flex;align-items:center;gap:12px}
.theme-toggle{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;cursor:pointer;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);transition:transform .3s,background .3s,border-color .3s;}
.theme-toggle:hover{background:rgba(255,255,255,.12);border-color:rgba(139,92,246,.5);transform:scale(1.1) rotate(12deg)}

/* ---------- 通用容器/排版 ---------- */
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:15px 26px;border-radius:14px;font-size:15px;font-weight:700;border:0;cursor:pointer;position:relative;overflow:hidden;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;}
.btn-primary{color:#fff;background:linear-gradient(135deg,#8b5cf6,#ec4899);box-shadow:0 10px 40px -8px rgba(236,72,153,.55),0 0 0 1px rgba(255,255,255,.08) inset;}
.btn-primary:hover{transform:scale(1.05);box-shadow:0 16px 60px -8px rgba(236,72,153,.8)}
.btn-ghost{color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(8px);}
.btn-ghost:hover{background:rgba(255,255,255,.12);border-color:rgba(139,92,246,.4);transform:scale(1.05);box-shadow:0 0 30px rgba(139,92,246,.25)}
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.4)}}
@keyframes hueShift{0%{background-position:0% 50%}100%{background-position:100% 50%}}

/* ---------- HERO（首页） ---------- */
.hero{position:relative;z-index:5;text-align:center;padding:80px 20px 30px;max-width:1100px;margin:0 auto;}
.pill{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(8px);font-size:12.5px;color:#c8c8da;animation:fadeInDown .7s .1s both;transition:all .3s;}
.pill:hover{border-color:#8b5cf6;box-shadow:0 0 20px rgba(139,92,246,.2)}
.pill .live{width:7px;height:7px;border-radius:50%;background:#22d3ee;box-shadow:0 0 12px #22d3ee;animation:pulse 1.6s ease-in-out infinite}
.hero h1{margin:28px auto 20px;font-size:clamp(40px,6.2vw,84px);font-weight:900;line-height:1.05;letter-spacing:-.025em;animation:fadeInUp .8s .25s both;}
.hero h1 .grad-text{display:block;background:linear-gradient(180deg,#fff 10%,#cdbcff 55%,#8b5cf6 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero h1 .accent{display:block;background:linear-gradient(135deg,#f0abfc 0%,#ec4899 40%,#f59e0b 75%,#22d3ee 100%);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 200%;animation:hueShift 8s ease-in-out infinite alternate;}
.hero .sub{max-width:660px;margin:0 auto;color:#b0b0c4;font-size:17px;line-height:1.65;animation:fadeInUp .8s .4s both;}
.cta-row{margin-top:34px;display:flex;justify-content:center;gap:14px;flex-wrap:wrap;animation:fadeInUp .8s .55s both}

/* ---------- 子页面 HERO ---------- */
.page-hero{position:relative;z-index:5;text-align:center;padding:90px 20px 20px;max-width:860px;margin:0 auto;}
.page-hero .eyebrow{display:inline-block;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#a78bfa;font-weight:700;margin-bottom:14px;animation:fadeInDown .7s .1s both}
.page-hero h1{font-size:clamp(32px,5vw,60px);font-weight:900;line-height:1.1;letter-spacing:-.02em;background:linear-gradient(180deg,#fff 20%,#cdbcff 70%,#8b5cf6 110%);-webkit-background-clip:text;background-clip:text;color:transparent;animation:fadeInUp .8s .2s both}
.page-hero p{max-width:640px;margin:18px auto 0;color:#b0b0c4;font-size:16px;line-height:1.65;animation:fadeInUp .8s .35s both}

/* ---------- 今日学习预览（首页） ---------- */
.preview-wrap{animation:fadeInUp .8s .7s both;margin:54px auto 0;max-width:520px;padding:0 20px}
.preview{border-radius:24px;padding:22px;text-align:left;background:radial-gradient(150% 200% at 0% 0%,rgba(139,92,246,.4),transparent 50%),radial-gradient(150% 200% at 100% 100%,rgba(34,211,238,.3),transparent 55%),linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px);box-shadow:0 30px 80px -20px rgba(139,92,246,.5);}
.preview-top{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#c8c8da;margin-bottom:14px}
.preview-top strong{font-size:14px;color:#fff}
.lvl-chip{padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;background:rgba(34,211,238,.18);border:1px solid rgba(34,211,238,.35);color:#a5f3fc}
.lesson{border-radius:16px;padding:16px 18px;margin-bottom:14px;background:linear-gradient(135deg,rgba(139,92,246,.22),rgba(236,72,153,.14));border:1px solid rgba(255,255,255,.1)}
.lesson .k{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#c4b5fd;font-weight:700}
.lesson h3{margin:7px 0 4px;font-size:17px;color:#fff}
.lesson p{font-size:13px;color:#b6b6c8}
.tasks{display:flex;flex-direction:column;gap:10px}
.task{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:13px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}
.task .tk{width:20px;height:20px;border-radius:50%;flex:0 0 20px;border:2px solid rgba(255,255,255,.25)}
.task.done .tk{background:#22d3ee;border-color:#22d3ee;box-shadow:0 0 12px rgba(34,211,238,.6)}
.task.current .tk{border-color:#ec4899;background:radial-gradient(circle,#ec4899 40%,transparent 45%);animation:pulse 1.6s ease-in-out infinite}
.task strong{font-size:14px;color:#fff;display:block}
.task span.t{font-size:12px;color:#8a8a9c}

/* ---------- SECTION HEADER ---------- */
.section{position:relative;z-index:5;padding:60px 0}
.section-header{text-align:center;margin-bottom:44px;padding:0 20px}
.section-header .eyebrow{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#a78bfa;font-weight:700;margin-bottom:10px}
.section-header h2{font-size:clamp(26px,4vw,44px);font-weight:800;background:linear-gradient(180deg,#fff 30%,#a78bfa 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.section-header p{color:#a0a0b4;font-size:15px;margin-top:10px;max-width:640px;margin-left:auto;margin-right:auto;line-height:1.6}

/* ---------- STATS ---------- */
.stats{position:relative;z-index:5;max-width:1100px;margin:0 auto;padding:50px 20px 30px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;}
.stat-item{padding:28px 18px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(8px);transition:all .4s;}
.stat-item:hover{background:rgba(139,92,246,.08);border-color:rgba(139,92,246,.3);transform:translateY(-4px);box-shadow:0 20px 40px -20px rgba(139,92,246,.5)}
.stat-num{font-size:clamp(30px,4vw,52px);font-weight:900;background:linear-gradient(135deg,#8b5cf6,#ec4899,#f59e0b);-webkit-background-clip:text;background-clip:text;color:transparent;}
.stat-label{color:#a0a0b4;font-size:13.5px;margin-top:6px;}

/* ---------- 卡片网格（通用） ---------- */
.features-wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.grid{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.card{position:relative;border-radius:22px;padding:30px 26px;background:radial-gradient(100% 100% at 0% 0%,rgba(139,92,246,.2),transparent 60%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px);overflow:hidden;cursor:default;transform-style:preserve-3d;perspective:800px;transition:box-shadow .4s,border-color .3s;will-change:transform;}
.card:hover{border-color:rgba(139,92,246,.3);box-shadow:0 20px 60px -20px rgba(139,92,246,.4)}
.card-glow{position:absolute;inset:0;opacity:0;background:radial-gradient(600px circle at var(--mx,50%) var(--my,50%),rgba(139,92,246,.15),transparent 60%);transition:opacity .3s;pointer-events:none;}
.card:hover .card-glow{opacity:1}
.card .ico{width:46px;height:46px;border-radius:13px;background:linear-gradient(135deg,#8b5cf6,#ec4899);display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 10px 24px -8px rgba(236,72,153,.55);transition:transform .3s;}
.card:hover .ico{transform:scale(1.1) rotate(-6deg)}
.card .num{font-size:26px;font-weight:900;background:linear-gradient(135deg,#a78bfa,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent}
.card h3{margin:14px 0 8px;font-size:18px;transition:color .3s}
.card:hover h3{background:linear-gradient(90deg,#f0abfc,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent}
.card p{margin:0;color:#a0a0b4;font-size:14px;line-height:1.65}
.card p a{color:#c4b5fd}
.card p a:hover{color:#fff}

/* ---------- 学习闭环轮播（首页） ---------- */
.carousel-section{position:relative;z-index:5;padding:90px 20px;max-width:1200px;margin:0 auto}
.carousel-wrap{position:relative;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.06);}
.carousel-track{display:flex;transition:transform .7s cubic-bezier(.4,0,.2,1);will-change:transform}
.slide{flex:0 0 100%;aspect-ratio:16/8;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.slide-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;}
.slide-content{z-index:2;text-align:center;padding:40px}
.slide-content .step-no{font-size:13px;letter-spacing:.2em;color:#c4b5fd;font-weight:800}
.slide-content .emoji{font-size:64px;display:block;margin:10px 0 14px;filter:drop-shadow(0 0 30px rgba(139,92,246,.5))}
.slide-content h3{font-size:clamp(22px,3vw,34px);font-weight:800;color:#fff}
.slide-content p{color:#c2c2d4;margin-top:8px;font-size:15px;max-width:520px;margin-left:auto;margin-right:auto;line-height:1.6}
.slide .glow-ring{position:absolute;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.2),transparent 70%);animation:ringPulse 3s ease-in-out infinite alternate;}
.slide .glow-ring:nth-child(1){top:-30px;right:-30px}
.slide .glow-ring:nth-child(2){bottom:-40px;left:-20px;animation-delay:-1.5s;width:300px;height:300px}
@keyframes ringPulse{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.3);opacity:.9}}
.carousel-controls{display:flex;justify-content:center;gap:12px;margin-top:20px}
.c-dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.15);border:0;cursor:pointer;transition:all .35s}
.c-dot.active{background:#8b5cf6;box-shadow:0 0 16px rgba(139,92,246,.6);width:32px;border-radius:6px}
.c-dot:hover{background:rgba(139,92,246,.5)}

/* ---------- 多语言 marquee ---------- */
.lang-section{position:relative;z-index:5;padding:0 0 40px;overflow:hidden}
.marquee{display:flex;gap:16px;width:max-content;animation:marquee 26s linear infinite}
.marquee:hover{animation-play-state:paused}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.lang-chip{padding:12px 24px;border-radius:14px;font-size:16px;font-weight:700;color:#dcdcea;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);white-space:nowrap}

/* ---------- DOWNLOAD CTA ---------- */
.download-section{position:relative;z-index:5;padding:60px 20px 90px;max-width:1000px;margin:0 auto}
.download-card{border-radius:28px;padding:48px 40px;text-align:center;background:radial-gradient(120% 160% at 0% 0%,rgba(139,92,246,.35),transparent 55%),radial-gradient(120% 160% at 100% 100%,rgba(236,72,153,.3),transparent 55%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px);box-shadow:0 40px 100px -30px rgba(139,92,246,.5)}
.download-card .eyebrow{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#a78bfa;font-weight:700}
.download-card h2{font-size:clamp(26px,3.6vw,42px);font-weight:800;margin:12px 0 12px;color:#fff}
.download-card p{color:#b6b6c8;font-size:15px;max-width:560px;margin:0 auto 28px;line-height:1.6}
.download-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ---------- FOOTER ---------- */
footer{position:relative;z-index:5;border-top:1px solid rgba(255,255,255,.05);padding:48px 20px 28px}
.footer-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.footer-brand{font-weight:800;font-size:20px;display:inline-block;margin-bottom:10px;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent}
.footer-grid p{color:#8a8a9c;font-size:13px;line-height:1.6}
.footer-grid h4{font-size:13px;color:#c8c8da;margin-bottom:12px;font-weight:700}
.footer-grid a{display:block;color:#9a9aac;font-size:13px;margin-bottom:8px;transition:color .25s}
.footer-grid a:hover{color:#fff}
.footer-bottom{max-width:1100px;margin:32px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.05);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#5a5a6a;font-size:12px}
.footer-bottom a{color:#7a7a8a}
.footer-bottom a:hover{color:#b0b0c0}

/* ---------- RESPONSIVE ---------- */
@media(max-width:860px){
  .nav{padding:14px 18px}
  .nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:rgba(6,5,16,.96);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.06);padding:8px 0;display:none}
  .nav-links.open{display:flex}
  .nav-links a{padding:14px 24px}
  .nav-links a::after{display:none}
  .nav-toggle{display:flex}
  .grid-3,.grid-4{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
  .stats{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .stats{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .download-card{padding:36px 22px}
}

/* ============================================================
   主题切换：由 <html data-theme="..."> 控制
   - 默认（无 data-theme / 深色）使用上方深色配色
   - data-theme="light" 启用浅色：柔和粉彩极光 + 浅玻璃
   - 首屏由 <head> 内联脚本设置 data-theme（默认跟随系统），
     用户点击开关后写入 localStorage 手动覆盖
   ============================================================ */
:root[data-theme="dark"]{color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}

[data-theme="light"] body{background:#f4f3fb;color:#211f38}
[data-theme="light"] ::selection{background:#8b5cf640;color:#1a1730}

/* 背景层 */
[data-theme="light"] .stage{background:linear-gradient(180deg,#f7f5ff 0%,#eef2ff 55%,#f8fafc 100%)}
[data-theme="light"] .aurora-layer{filter:blur(90px) brightness(1.05);opacity:.55}
[data-theme="light"] .aurora-blob{opacity:.4;mix-blend-mode:multiply}
[data-theme="light"] .aurora-scan{background:linear-gradient(130deg,transparent 30%,rgba(0,0,0,.02) 45%,transparent 55%)}
[data-theme="light"] .grid-overlay{background-image:linear-gradient(rgba(20,20,60,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(20,20,60,.03) 1px,transparent 1px)}
[data-theme="light"] .noise{opacity:.12}
[data-theme="light"] #particles{opacity:.45}
[data-theme="light"] #cursorGlow{mix-blend-mode:multiply;background:radial-gradient(circle,rgba(139,92,246,.12) 0%,rgba(34,211,238,.05) 30%,transparent 60%)}

/* 导航 */
[data-theme="light"] .nav{background:rgba(255,255,255,.6);border-bottom:1px solid rgba(20,20,60,.08)}
[data-theme="light"] .nav-links{color:#52506a}
[data-theme="light"] .nav-links a.active{color:#1a1730}
[data-theme="light"] .nav-links a:hover{color:#1a1730}
[data-theme="light"] .nav-cta{color:#5b21b6;background:linear-gradient(135deg,rgba(139,92,246,.14),rgba(236,72,153,.1));border:1px solid rgba(139,92,246,.25)}
[data-theme="light"] .nav-cta:hover{background:linear-gradient(135deg,rgba(139,92,246,.22),rgba(236,72,153,.16));border-color:rgba(139,92,246,.45)}
[data-theme="light"] .nav-toggle span{background:#211f38}
[data-theme="light"] .theme-toggle{background:rgba(20,20,60,.04);border:1px solid rgba(20,20,60,.14)}
[data-theme="light"] .theme-toggle:hover{background:rgba(139,92,246,.1);border-color:rgba(139,92,246,.4)}

/* 标题渐变（浅色需要深色起点，否则白色部分消失） */
[data-theme="light"] .hero h1 .grad-text{background:linear-gradient(180deg,#2a2550 10%,#6d28d9 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
[data-theme="light"] .page-hero h1{background:linear-gradient(120deg,#241f45 20%,#7c3aed 110%);-webkit-background-clip:text;background-clip:text;color:transparent}
[data-theme="light"] .section-header h2{background:linear-gradient(120deg,#241f45 30%,#7c3aed 100%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* 正文/说明文字 */
[data-theme="light"] .hero .sub,[data-theme="light"] .page-hero p,[data-theme="light"] .section-header p{color:#5a5870}
[data-theme="light"] .stat-label,[data-theme="light"] .card p,[data-theme="light"] .footer-grid p{color:#5a5870}
[data-theme="light"] .lang-chip{color:#3a3856;background:rgba(20,20,60,.04);border:1px solid rgba(20,20,60,.1)}

/* pill / 按钮 */
[data-theme="light"] .pill{background:rgba(20,20,60,.04);border:1px solid rgba(20,20,60,.12);color:#52506a}
[data-theme="light"] .pill:hover{border-color:#8b5cf6}
[data-theme="light"] .btn-ghost{color:#211f38;background:rgba(20,20,60,.04);border:1px solid rgba(20,20,60,.14)}
[data-theme="light"] .btn-ghost:hover{background:rgba(139,92,246,.1);border-color:rgba(139,92,246,.4)}

/* 玻璃卡片 */
[data-theme="light"] .card{background:radial-gradient(100% 100% at 0% 0%,rgba(139,92,246,.1),transparent 60%),linear-gradient(180deg,rgba(255,255,255,.85),rgba(255,255,255,.6));border:1px solid rgba(20,20,60,.08)}
[data-theme="light"] .card:hover{border-color:rgba(139,92,246,.3);box-shadow:0 20px 50px -22px rgba(139,92,246,.35)}
[data-theme="light"] .card h3{color:#211f38}
[data-theme="light"] .card p a{color:#7c3aed}
[data-theme="light"] .card p a:hover{color:#5b21b6}

/* 统计卡 */
[data-theme="light"] .stat-item{background:rgba(255,255,255,.7);border:1px solid rgba(20,20,60,.07)}
[data-theme="light"] .stat-item:hover{background:rgba(139,92,246,.08);border-color:rgba(139,92,246,.3)}

/* 今日学习预览 */
[data-theme="light"] .preview{background:radial-gradient(150% 200% at 0% 0%,rgba(139,92,246,.18),transparent 50%),radial-gradient(150% 200% at 100% 100%,rgba(34,211,238,.14),transparent 55%),linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.7));border:1px solid rgba(20,20,60,.08);box-shadow:0 30px 70px -28px rgba(139,92,246,.4)}
[data-theme="light"] .preview-top{color:#52506a}
[data-theme="light"] .preview-top strong{color:#211f38}
[data-theme="light"] .lvl-chip{background:rgba(34,211,238,.16);border:1px solid rgba(8,145,178,.35);color:#0e7490}
[data-theme="light"] .lesson{background:linear-gradient(135deg,rgba(139,92,246,.14),rgba(236,72,153,.09));border:1px solid rgba(20,20,60,.07)}
[data-theme="light"] .lesson .k{color:#7c3aed}
[data-theme="light"] .lesson h3{color:#211f38}
[data-theme="light"] .lesson p{color:#5a5870}
[data-theme="light"] .task{background:rgba(20,20,60,.03);border:1px solid rgba(20,20,60,.06)}
[data-theme="light"] .task .tk{border-color:rgba(20,20,60,.25)}
[data-theme="light"] .task strong{color:#211f38}
[data-theme="light"] .task span.t{color:#7a7890}

/* 下载/CTA 卡 */
[data-theme="light"] .download-card{background:radial-gradient(120% 160% at 0% 0%,rgba(139,92,246,.16),transparent 55%),radial-gradient(120% 160% at 100% 100%,rgba(236,72,153,.13),transparent 55%),linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.66));border:1px solid rgba(20,20,60,.08);box-shadow:0 40px 90px -34px rgba(139,92,246,.4)}
[data-theme="light"] .download-card h2{color:#211f38}
[data-theme="light"] .download-card p{color:#5a5870}

/* 页脚 */
[data-theme="light"] footer{border-top:1px solid rgba(20,20,60,.08)}
[data-theme="light"] .footer-grid h4{color:#3a3856}
[data-theme="light"] .footer-grid a{color:#5a5870}
[data-theme="light"] .footer-grid a:hover{color:#1a1730}
[data-theme="light"] .footer-bottom{border-top:1px solid rgba(20,20,60,.08);color:#8a889c}
[data-theme="light"] .footer-bottom a{color:#7a7890}
[data-theme="light"] .footer-bottom a:hover{color:#3a3856}

/* 浅色 + 移动端：菜单展开背景改为浅色 */
@media (max-width:860px){
  [data-theme="light"] .nav-links{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(20,20,60,.08)}
}
