/* ============================================================
   深表学堂 · 皮肤 D：「AI 创业发射场」（SKIN ONLY）
   ------------------------------------------------------------
   设计目标：不是“培训机构换一套科技蓝”，而是让页面同时传达：
     1. AI 系统感 —— 钴蓝 / 冰青 / 精密网格
     2. 创业行动感 —— 信号橙只出现在按钮、关键数字和转化节点
     3. 青少年生命力 —— 明亮、轻盈、有速度，但不幼稚

   用法：把 index.html 的皮肤层替换为：
     <link rel="stylesheet" href="/static/css/aischool-launchpad.css?v=1">

   本文件只覆写皮肤令牌与装饰层，不改栅格、内容、断点和业务结构。
   ============================================================ */

:root {
  /* ---------- 形态气质：精密但不冷硬 ---------- */
  --radius: 12px;
  --radius-s: 7px;
  --radius-pill: 999px;
  /* 资历小标签收到与其它 chip（.track-flag / .fit-col-head）同一档圆角，
     不再是一排胶囊 */
  --chip-radius: 14px;
  --card-border-w: 1px;
  --card-lift: -6px;
  --dur: .32s;
  --dur-slow: .72s;
  --font-display: "Avenir Next", "DIN Alternate", "Bahnschrift", "PingFang SC", sans-serif;
  --title-tracking: -.55px;
  --title-underline-gap: 13px;
  --rv-y: 18px;
  --rv-f: blur(3px);
  --rv-f-visible: blur(0);

  /* ---------- 明亮画布：冷白，不做医院白 ---------- */
  --bg-body: #f5f7fb;
  --bg-card: rgba(255,255,255,.94);
  --bg-section: #eaf0f7;
  --bg-nav: rgba(248,250,253,.84);
  --bg-nav-panel: rgba(250,252,255,.97);
  --nav-blur: 22px;

  /* ---------- 文字：蓝黑而非纯黑 ---------- */
  --text-primary: #101828;
  --text-secondary: #475467;
  --text-muted: #667085;
  --text-on-brand: #ffffff;

  /* ---------- 角色色，而不是平均撒色 ----------
     蓝 = AI / 系统；橙 = 行动 / 转化；绿 = 成果 / 正向状态 */
  --accent-1: #145ce6;
  --accent-2: #c63f25;
  --accent-3: #007d6a;
  --launch-cyan: #087a8f;
  --launch-cyan-bright: #23b9d1;
  --launch-orange-bright: #ff6b47;

  /* 系统渐变保持冷色；行动按钮在下方单独换成橙色，避免语义混乱 */
  --grad-brand: linear-gradient(112deg, #145ce6 0%, #087a8f 100%);
  --grad-brand-size: 180% 100%;
  --grad-brand-anim: launch-flow 10s ease-in-out infinite;
  --grad-text: linear-gradient(108deg, #101828 0%, #145ce6 52%, #087a8f 100%);
  --grad-text-size: 180% 100%;
  --grad-hero: linear-gradient(108deg, #101828 0%, #145ce6 42%, #087a8f 72%, #c63f25 100%);
  --grad-hero-size: 210% 100%;
  --grad-hero-anim: launch-flow 13s ease-in-out infinite;

  /* ---------- 描边与层次 ---------- */
  --border-1: rgba(16,24,40,.09);
  --border-2: rgba(16,24,40,.17);
  --border-brand: rgba(20,92,230,.30);
  --border-brand-strong: rgba(198,63,37,.34);
  --card-hover-bd: rgba(20,92,230,.34);

  --shadow-1: 0 1px 2px rgba(16,24,40,.04), 0 6px 18px rgba(16,24,40,.045);
  --shadow-2: 0 18px 44px rgba(20,92,230,.12), 0 6px 16px rgba(16,24,40,.07);
  --shadow-nav: 0 8px 28px rgba(16,24,40,.08);
  --shadow-cta: 0 5px 16px rgba(198,63,37,.24);
  --shadow-cta-hover: 0 12px 28px rgba(198,63,37,.30), 0 4px 12px rgba(16,24,40,.09);
  --glow-idle: 0 0 0 1px rgba(20,92,230,.10), 0 5px 14px rgba(20,92,230,.16);
  --glow-peak: 0 0 0 1px rgba(35,185,209,.18), 0 8px 22px rgba(20,92,230,.24);

  --nav-hover-bg: rgba(20,92,230,.055);
  --nav-active-bg: rgba(20,92,230,.09);

  /* ---------- 淡彩语义 ---------- */
  --tint-1-bg: rgba(20,92,230,.07);
  --tint-1-bd: rgba(20,92,230,.20);
  --tint-2-bg: rgba(198,63,37,.07);
  --tint-2-bd: rgba(198,63,37,.20);
  --tint-3-bg: rgba(0,125,106,.085);
  --tint-neutral-bg: rgba(16,24,40,.035);
  --tint-neutral-bd: rgba(16,24,40,.13);
  --highlight-bg: linear-gradient(125deg, rgba(20,92,230,.075), rgba(35,185,209,.05) 58%, rgba(255,107,71,.055));
  --highlight-bd: rgba(20,92,230,.28);
  --rule-top: 2px solid rgba(20,92,230,.20);

  /* ---------- 空间氛围：一冷一暖，网格只做秩序感 ---------- */
  --hero-aura:
    radial-gradient(ellipse 68% 54% at 48% 36%, rgba(20,92,230,.12) 0%, transparent 64%),
    radial-gradient(ellipse 42% 38% at 76% 62%, rgba(255,107,71,.075) 0%, transparent 68%),
    radial-gradient(ellipse 38% 34% at 20% 70%, rgba(35,185,209,.075) 0%, transparent 70%);
  --cta-aura: linear-gradient(180deg, transparent 0%, rgba(20,92,230,.045) 100%);
  --ambient:
    radial-gradient(circle at 9% 8%, rgba(20,92,230,.075), transparent 36%),
    radial-gradient(circle at 92% 18%, rgba(255,107,71,.055), transparent 34%),
    linear-gradient(rgba(20,92,230,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20,92,230,.025) 1px, transparent 1px);
  --ambient-opacity: .86;
  --ambient-anim: launch-ambient 22s ease-in-out infinite;

  /* ---------- 粒子：冷色 AI 信号，成字后退到内容后面 ---------- */
  --particle-rgb: 20, 92, 230;
  --particle-count: 280;
  --particle-link: 48;
  --particle-link-max: 5;
  --particle-alpha: .25;
  --particle-line: .09;
  --particle-form-alpha: .12;
  --particle-form-count: 1050;
}

@keyframes launch-flow {
  0%,100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes launch-ambient {
  0%,100% { opacity:.72; transform:scale(1); }
  50% { opacity:.96; transform:scale(1.018); }
}
@keyframes launch-orbit { to { transform:translate(-50%,-50%) rotate(360deg); } }
@keyframes launch-pulse {
  0%,100% { box-shadow:0 0 0 0 rgba(20,92,230,.18); }
  50% { box-shadow:0 0 0 10px rgba(20,92,230,0); }
}

/* 背景网格使用固定尺寸；网格与粒子都很淡，不能抢正文。 */
body::before {
  background-size: auto, auto, 56px 56px, 56px 56px;
  transform-origin: center top;
}

::selection { background: rgba(35,185,209,.26); color:#101828; }
::-webkit-scrollbar { width:10px; height:10px; }
::-webkit-scrollbar-track { background:#edf1f7; }
::-webkit-scrollbar-thumb {
  background:linear-gradient(180deg, #145ce6, #087a8f);
  border:2px solid #edf1f7; border-radius:8px;
}

/* ---------- 导航：玻璃薄片 + 启动信号线 ---------- */
.nav { border-bottom-color:rgba(20,92,230,.12); }
.nav::after {
  content:''; position:absolute; left:0; right:0; bottom:-1px; height:1px;
  background:linear-gradient(90deg, transparent 5%, rgba(20,92,230,.6) 35%, rgba(35,185,209,.55) 62%, transparent 95%);
  opacity:.55;
}
.nav-logo { letter-spacing:.5px; }
.logo-ai-badge { border-radius:6px; letter-spacing:1.5px; }
.nav-links a.active { box-shadow:inset 0 -2px 0 rgba(20,92,230,.55); }

/* CTA 独占信号橙；蓝色继续代表系统与信息。 */
.nav-cta, .btn-primary {
  background-image:linear-gradient(115deg, #c63f25, #b73520);
  background-size:100% 100%;
  animation:none;
  box-shadow:var(--shadow-cta);
}
.btn-primary { position:relative; overflow:hidden; letter-spacing:.4px; }
.btn-primary::before {
  content:''; position:absolute; inset:-20% auto -20% -55%; width:38%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
  transform:skewX(-18deg); transition:left .7s var(--ease); pointer-events:none;
}
.btn-primary:hover::before { left:125%; }
.btn-outline { background:rgba(255,255,255,.42); backdrop-filter:blur(8px); }
.btn-outline:hover { background:rgba(20,92,230,.075); box-shadow:0 8px 20px rgba(20,92,230,.10); }

/* ---------- 标题系统：短线比大面积渐变更高级 ---------- */
.section-label {
  font-family:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
  letter-spacing:2.4px;
}
.section-label::before { content:'●'; margin-right:8px; font-size:7px; vertical-align:2px; -webkit-text-fill-color:#23b9d1; }
.section-title::after {
  content:''; position:absolute; left:0; bottom:0; width:72px; height:3px; border-radius:3px;
  background:linear-gradient(90deg, #145ce6 0 68%, #ff6b47 68% 100%);
  box-shadow:0 3px 10px rgba(20,92,230,.18);
}
#partners .section-title::after, #contact .section-title::after { left:50%; transform:translateX(-50%); }

/* ---------- Hero：轨道线暗示“发射”，保持留白 ---------- */
.hero::after {
  content:''; position:absolute; left:50%; top:49%;
  width:min(78vw, 720px); aspect-ratio:1; border-radius:50%; pointer-events:none;
  background:conic-gradient(from 42deg, transparent 0 72%, rgba(20,92,230,.30) 82%, rgba(35,185,209,.36) 91%, transparent 100%);
  -webkit-mask:radial-gradient(closest-side, transparent 65%, #000 65.5%, #000 66%, transparent 66.5%);
  mask:radial-gradient(closest-side, transparent 65%, #000 65.5%, #000 66%, transparent 66.5%);
  opacity:.42; animation:launch-orbit 24s linear infinite;
}
.hero h1 { filter:drop-shadow(0 10px 24px rgba(20,92,230,.12)); }
.hero-sub-new { font-weight:700; }
.hero-philosophy { letter-spacing:5px; }
.hero-philosophy::before, .hero-philosophy::after {
  background:linear-gradient(90deg, transparent, rgba(20,92,230,.28), rgba(255,107,71,.22), transparent);
}

/* ---------- 卡片：微玻璃 + 顶部双信号点，不做廉价满屏流光 ---------- */
.phil-card, .track-card, .aspire-card, .stage-card, .path-card,
.project-tier, .eval-card, .fp-item, .course-card, .team-card,
.curriculum-card, .partner-item, .faq-item, .contact-card {
  position:relative; overflow:hidden;
  backdrop-filter:blur(10px);
}
.phil-card::before, .track-card::before, .aspire-card::before, .stage-card::before,
.path-card::before, .project-tier::before, .eval-card::before, .fp-item::before {
  content:''; position:absolute; left:18px; top:0; width:42px; height:2px;
  background:linear-gradient(90deg, #145ce6 0 72%, transparent 72% 80%, #ff6b47 80%);
  border-radius:0 0 2px 2px;
}
.phil-card:hover, .track-card:hover, .aspire-card:hover, .path-card:hover,
.stage-card:hover, .project-tier:hover, .project-case:hover,
.course-card:hover, .team-card:hover, .curriculum-card:hover, .partner-item:hover {
  box-shadow:var(--shadow-2);
}

.track-card.track-primary { box-shadow:inset 3px 0 0 #145ce6, var(--shadow-1); }
.track-card.track-primary:hover { box-shadow:inset 3px 0 0 #145ce6, var(--shadow-2); }
.track-link { font-weight:700; }

.phil-old { filter:saturate(.25); }
.phil-new { background:rgba(20,92,230,.045); border-left-color:#145ce6; }

/* ---------- 课程与成长路径 ---------- */
.aspire-letter {
  border-radius:12px;
  box-shadow:0 8px 20px rgba(20,92,230,.20);
}
.aspire-card.aspire-highlight::before {
  width:64px; background:linear-gradient(90deg, #c63f25 0 74%, transparent 74% 82%, #23b9d1 82%);
}
.aspire-tag { font-family:ui-monospace, "SFMono-Regular", Menlo, monospace; font-style:normal; letter-spacing:.5px; }
.stage-arrow { color:#145ce6; filter:drop-shadow(0 4px 7px rgba(20,92,230,.20)); }
.stage-step { font-family:ui-monospace, "SFMono-Regular", Menlo, monospace; }

/* ---------- 项目与成果：绿色只在“做出来”之后出现 ---------- */
.project-tier-no { color:rgba(20,92,230,.42); }
.project-tier-mode, .path-tag { font-family:ui-monospace, "SFMono-Regular", Menlo, monospace; font-style:normal; }
.project-items li::before { background:#145ce6; box-shadow:0 0 0 3px rgba(20,92,230,.09); }
.project-price { color:#007d6a; background:rgba(0,125,106,.085); }
.project-case { border-left-color:#007d6a; }
.project-case-num { color:#c63f25; }
.project-reverse { border-color:rgba(0,125,106,.24); }
.project-reverse strong, .project-foot strong { color:#007d6a; }
.project-rule { background:linear-gradient(180deg, rgba(20,92,230,.035), rgba(255,255,255,.94)); }

/* ---------- 对比区：旧路褪色，新路用蓝绿成果色 ---------- */
.versus-old { opacity:.72; filter:saturate(.3); }
.versus-new {
  border-color:rgba(20,92,230,.30);
  box-shadow:0 16px 38px rgba(20,92,230,.11), var(--shadow-1);
}
.versus-new .versus-list li::before { background:#007d6a; box-shadow:0 0 0 3px rgba(0,125,106,.10); }
.versus-vs { animation:launch-pulse 3s ease-in-out infinite; }
.versus-punch strong, .versus-extra-main, .versus-line-num { color:#c63f25; }
.versus-extra { border-color:rgba(20,92,230,.24); }
.versus-worst { border-color:rgba(198,63,37,.20); }
.versus-line { border-color:rgba(20,92,230,.22); background:var(--highlight-bg); }

/* ---------- 学费、团队、筛选：可信度优先 ---------- */
.tuition-card.tuition-card-featured {
  border-color:rgba(198,63,37,.28);
  box-shadow:0 12px 30px rgba(198,63,37,.09);
}
.tuition-amount { filter:drop-shadow(0 4px 10px rgba(20,92,230,.12)); }
.instructor-avatar { border-color:rgba(20,92,230,.38); box-shadow:0 0 0 6px rgba(20,92,230,.06); }
.team-avatar { box-shadow:0 8px 20px rgba(20,92,230,.17); }
.team-heading { border-left-color:#145ce6; }
/* 资历标签是注脚不是按钮：信号橙归 CTA、钴蓝归系统信息，
   这里三类同类 chip（导师 / 联创团队 / 顾问）统一退到中性冷灰 */
.instructor-info .tags span, .team-body .tags span, .advisor-tag {
  background: var(--tint-neutral-bg);
  border-color: var(--tint-neutral-bd);
  color: var(--text-secondary);
}
.fit-yes { border-color:rgba(0,125,106,.20); }
.fit-yes .fit-col-head { color:#007d6a; background:rgba(0,125,106,.07); border-color:rgba(0,125,106,.18); }
.fit-yes .fit-list li::before { color:#007d6a; }
.fit-no { opacity:.86; }
.fit-stop-line { border-left-color:rgba(20,92,230,.32); }

/* ---------- FAQ、合作伙伴与页脚 ---------- */
.faq-item.open { border-color:rgba(20,92,230,.26); box-shadow:0 10px 26px rgba(20,92,230,.08); }
.faq-q::after { color:#145ce6; font-family:ui-monospace, Menlo, monospace; }
.partner-item:hover { color:#145ce6; background:rgba(255,255,255,.98); }
.footer {
  background:linear-gradient(180deg, transparent, rgba(20,92,230,.045));
  border-top-color:rgba(20,92,230,.12);
}

/* ---------- 窄屏：减少装饰，不减少信息层级 ---------- */
@media (max-width:768px) {
  :root { --card-lift:-3px; --rv-y:12px; --rv-f:none; }
  body::before { background-size:auto, auto, 42px 42px, 42px 42px; }
  .hero::after { width:120vw; opacity:.26; }
  .hero-philosophy { letter-spacing:2px; }
  .section-label::before { display:none; }
  ::-webkit-scrollbar { width:6px; }
}

/* ---------- 减少动效：所有装饰立即静止，内容仍完整 ---------- */
@media (prefers-reduced-motion:reduce) {
  :root { --grad-brand-anim:none; --grad-hero-anim:none; --ambient-anim:none; }
  body::before, .hero::after, .versus-vs { animation:none; transform:none; }
  .hero::after { transform:translate(-50%,-50%); }
  .btn-primary::before { display:none; }
  .reveal { --rv-y:0px; --rv-f:none; opacity:1; translate:none; filter:none; }
}
