/* A 版 · 原版活力蓝。仅视觉层；不改变滚动容器、路由、题库或作答状态。 */
html[data-ui-theme="vitality-blue"] {
  --vb-blue:#1cb0f6; --vb-edge:#1492d6; --vb-soft:#ddf2ff; --vb-ink:#0b6fa6;
  --vb-text:#203d55; --vb-muted:#607b90; --vb-line:#dceaf4;
  --vb-shadow:0 6px 18px rgba(32,105,158,.07),inset 0 1px 0 #fff;
}
html[data-ui-theme="vitality-blue"] body {
  background-color:#f4f9ff;
  background-image:radial-gradient(ellipse at 8% 0%,#def3ff 0,transparent 44%),radial-gradient(ellipse at 95% 26%,#edf0ff 0,transparent 40%),radial-gradient(ellipse at 7% 90%,#e6f8f1 0,transparent 35%);
  background-attachment:scroll;
}
html[data-ui-theme="vitality-blue"] .app-header {
  background:#fff !important; border:1px solid var(--vb-line) !important;
  box-shadow:var(--vb-shadow) !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
}
html[data-ui-theme="vitality-blue"] .hd2-nav { gap:12px; }
html[data-ui-theme="vitality-blue"] .hd2-nav > :is(.summer-entry,.tutor-entry) {
  position:relative; overflow:hidden; isolation:isolate; min-height:80px;
  border:1px solid #36b8f4 !important; border-bottom:3px solid var(--vb-edge) !important;
  border-radius:17px !important; padding:13px 16px !important;
  background:linear-gradient(120deg,#25bdf9 0%,#1cb0f6 52%,#229fed 100%) !important;
  box-shadow:0 5px 12px #169dde20,inset 0 1px 0 #ffffff66 !important;
  color:#fff !important; transform:none !important; animation:none !important;
  justify-content:flex-start; text-align:left; gap:12px;
}
html[data-ui-theme="vitality-blue"] .hd2-nav > .tutor-entry {
  background:linear-gradient(120deg,#1cb0f6 0%,#199bef 64%,#438eef 100%) !important;
}
html[data-ui-theme="vitality-blue"] .hd2-nav > :is(.summer-entry,.tutor-entry)::after {
  content:""; position:absolute; inset:auto -30px -66px auto; width:150px; height:150px;
  border:18px solid #ffffff14; border-radius:50%; background:none !important; opacity:1;
  pointer-events:none; transform:none; animation:none !important; z-index:-1;
}
html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) :is(.se-t,.se-sub,.se-arrow) { color:#fff !important; }
html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) .se-tx { flex:1; min-width:0; }
html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) .se-t { font-size:18px !important; font-weight:900 !important; }
html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) .se-sub { font-size:12px; opacity:.94; }
html[data-ui-theme="vitality-blue"] :is(.se-ic,.te-ic) {
  display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px;
  border-radius:13px; background:#ffffff27 !important; color:#fff !important;
  border:1px solid #ffffff40; box-shadow:inset 0 1px 0 #ffffff55; font-size:25px;
}
html[data-ui-theme="vitality-blue"] .hd2-pill {
  min-height:44px; padding:8px 12px; border:1px solid var(--vb-line) !important;
  background:linear-gradient(#fff,#f4f9fe) !important; color:var(--vb-ink) !important;
  box-shadow:0 2px 0 #e0ebf4 !important; transform:none !important;
}
html[data-ui-theme="vitality-blue"] .home-hero {
  background:linear-gradient(115deg,#e0f3ff,#edf5ff 70%,#f1efff) !important;
  border:1px solid #cee5f6 !important; border-radius:20px !important;
  box-shadow:var(--vb-shadow) !important; color:var(--vb-text) !important;
}
html[data-ui-theme="vitality-blue"] .home-hero::before {
  background:radial-gradient(circle,#fff9 1px,transparent 2px) 0 0/18px 18px !important; opacity:.5;
}
html[data-ui-theme="vitality-blue"] .home-hero :is(h1,.eyebrow,.hero-stats strong) { color:var(--vb-ink) !important; text-shadow:none !important; }
html[data-ui-theme="vitality-blue"] .home-hero :is(.muted,.hero-stats span) { color:#53758f !important; }
html[data-ui-theme="vitality-blue"] .hero-stats > div { background:#ffffffb8 !important; border:1px solid #d9eaf6 !important; box-shadow:inset 0 1px 0 #fff !important; }
html[data-ui-theme="vitality-blue"] .subject-switch { border:1px solid #d7e7f3 !important; background:#edf5fc !important; padding:5px !important; }
html[data-ui-theme="vitality-blue"] .subject-tab { min-height:44px; border-radius:11px !important; color:#40647e !important; }
html[data-ui-theme="vitality-blue"] .subject-tab.is-active {
  background:linear-gradient(#31bcf8,#1cb0f6) !important; border-color:#189fde !important;
  color:#fff !important; box-shadow:0 3px 0 #1596d4,inset 0 1px 0 #ffffff50 !important;
}
html[data-ui-theme="vitality-blue"] .action-cluster {
  --cluster-ink:#176da4; --cluster-edge:#5db9f0; --cluster-tint:#eaf6ff;
  padding:15px !important; border:1px solid #deebf5 !important; border-top:3px solid var(--cluster-edge) !important;
  border-radius:16px !important; background:linear-gradient(135deg,#fff 36%,var(--cluster-tint)) !important; box-shadow:var(--vb-shadow) !important;
}
html[data-ui-theme="vitality-blue"] .action-cluster[data-cluster-kind="favorite"] { --cluster-ink:#97600d; --cluster-edge:#efbd50; --cluster-tint:#fff7e4; }
html[data-ui-theme="vitality-blue"] .action-cluster[data-cluster-kind="wrong"] { --cluster-ink:#b44845; --cluster-edge:#ec8e85; --cluster-tint:#fff0ee; }
html[data-ui-theme="vitality-blue"] .action-cluster-label { display:flex; gap:9px; align-items:center; color:var(--cluster-ink) !important; font-size:18px !important; font-weight:900; }
html[data-ui-theme="vitality-blue"] .action-cluster-icon { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:var(--cluster-tint); border:1px solid var(--cluster-edge); font-size:21px; }
html[data-ui-theme="vitality-blue"] .action-cluster-buttons :is(button,.ghost-button) { min-height:44px !important; font-size:13px !important; padding:8px 10px !important; border-radius:10px !important; }

/* 共用控件：保持触控面积，但收紧装饰；按下不位移，不改变保存态。 */
html[data-ui-theme="vitality-blue"] :is(.primary-button,.secondary-button,.ghost-button,.ssl-cta) {
  min-height:44px; padding:10px 16px !important; border-radius:12px !important;
  font-size:14px !important; line-height:1.4; box-sizing:border-box;
  transition:background-color .15s,box-shadow .15s; transform:none !important;
}
html[data-ui-theme="vitality-blue"] :is(.primary-button,.ssl-cta:not(.ghost),.tutor-ask-btn) {
  color:#fff !important; background:linear-gradient(#2cbaf8,#1aa8ee) !important;
  border:1px solid #1aa3e5 !important; border-bottom:3px solid #138fd0 !important;
  box-shadow:0 3px 8px #128bc01a,inset 0 1px 0 #ffffff50 !important;
}
html[data-ui-theme="vitality-blue"] :is(.secondary-button,.ghost-button,.ssl-cta.ghost) {
  color:#37617f !important; border:1px solid #d6e4ef !important; border-bottom:2px solid #cadde9 !important;
  background:linear-gradient(#fff,#f6faff) !important; box-shadow:inset 0 1px 0 #fff !important;
}
html[data-ui-theme="vitality-blue"] #root [data-action*="ask-tutor"],
html[data-ui-theme="vitality-blue"] [data-action="open-tutor"] {
  min-height:44px; color:#fff !important; font-weight:850;
  background:linear-gradient(#2cbbf9,#1aa9ef) !important; border:1px solid #1aa3e5 !important;
  border-bottom:3px solid #138fd0 !important; box-shadow:inset 0 1px 0 #ffffff50 !important;
}
html[data-ui-theme="vitality-blue"] :is(button,[role="button"],.ssl-cta):focus-visible { outline:3px solid #0876b8; outline-offset:3px; }
html[data-ui-theme="vitality-blue"] :is(.primary-button,.secondary-button,.ghost-button,.ssl-cta,.subject-tab):active { transform:none !important; box-shadow:inset 0 2px 4px #124c7c22 !important; }
html[data-ui-theme="vitality-blue"] :is(button,.ssl-cta):disabled { cursor:not-allowed; }
html[data-ui-theme="vitality-blue"] :is(.panel,.question-panel,.review-card) { border-color:var(--vb-line) !important; box-shadow:var(--vb-shadow) !important; }
html[data-ui-theme="vitality-blue"] :is(.question-panel,.review-card,.ssl-stem,.ssl-fb) { background:#fff !important; }
html[data-ui-theme="vitality-blue"] :is(.ssl-fill,.ssl-sol,#quizFreeInput) { border-radius:11px; border-color:#cbdfea; background:#fff; }
html[data-ui-theme="vitality-blue"] :is(.ssl-fill,.ssl-sol,#quizFreeInput):focus { outline:2px solid #1cb0f64a; outline-offset:1px; border-color:#1cb0f6; }

/* 课程与练习只换皮肤：不重设 .ssl-scroll 的尺寸、滚动或定位。 */
html[data-ui-theme="vitality-blue"] .ssl-shell { background:linear-gradient(135deg,#eef8ff,#f5f7ff 68%,#effaf6); }
html[data-ui-theme="vitality-blue"] .ssl-top { background:linear-gradient(110deg,#2bbbf9,#1cb0f6 56%,#219deb); box-shadow:0 3px 9px #1b96d326,inset 0 1px 0 #ffffff55; border-bottom:1px solid #159bd8; }
html[data-ui-theme="vitality-blue"] .ssl-top-btn { min-width:44px; min-height:44px; }
html[data-ui-theme="vitality-blue"] :is(.ssl-study-group,.ssl-chapter) { border-color:#d6e8f4; box-shadow:var(--vb-shadow); }
html[data-ui-theme="vitality-blue"] .ssl-study-group-head { background:linear-gradient(#fff,#f0f8ff); }
html[data-ui-theme="vitality-blue"] .ssl-study-lesson { background:linear-gradient(#fff,#fbfdff); border-color:#dce9f3; box-shadow:0 2px 0 #d9e7f0; }
html[data-ui-theme="vitality-blue"] .ssl-study-practice { background:linear-gradient(#f0fbff,#e1f4ff); border-color:#badff4; color:#0b6fa6; box-shadow:0 2px 0 #c8e2f0; }
html[data-ui-theme="vitality-blue"] .ssl-study-practice.done { background:linear-gradient(#f4fff9,#e7f7ee); border-color:#bfe3cd; color:#28724b; }
html[data-ui-theme="vitality-blue"] .ssl-study-practice.unavailable { background:#f5f7fa; border-color:#e1e7ed; color:#83909e; box-shadow:none; }
html[data-ui-theme="vitality-blue"] :is(.ssl-seg,.ssl-chip) { min-height:44px; }
html[data-ui-theme="vitality-blue"] .ssl-fb { border:1px solid #d8e8f3; border-radius:17px; padding:19px; box-shadow:var(--vb-shadow); color:var(--vb-text); }
html[data-ui-theme="vitality-blue"] .ssl-answer { padding:12px 14px; border-radius:10px; border-left:3px solid #1cb0f6; background:#f0f9ff; color:#244b68; }
html[data-ui-theme="vitality-blue"] .ssl-explain { font-size:17px; line-height:1.9; color:#293e51; }
html[data-ui-theme="vitality-blue"] .ssl-myans { background:#f7fafc; border:1px solid #e0eaf1; border-radius:10px; padding:11px 13px; }
html[data-ui-theme="vitality-blue"] .selfrate-prompt { margin:17px 0 10px; font-size:14px; color:#355772; }
html[data-ui-theme="vitality-blue"] .subjective-self-actions { gap:9px !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
html[data-ui-theme="vitality-blue"] .subjective-self-actions .answer-option {
  display:flex; justify-content:center; align-items:center; gap:7px; min-height:46px !important;
  padding:10px 9px !important; border-radius:11px !important; font-size:14px !important; line-height:1.4;
  transform:none !important; transition:box-shadow .12s; margin:0;
}
html[data-ui-theme="vitality-blue"] .subjective-self-actions .answer-letter { background:transparent !important; color:inherit !important; border:0 !important; width:auto !important; height:auto !important; box-shadow:none !important; font-size:17px; }
html[data-ui-theme="vitality-blue"] .subjective-self-actions .answer-option strong { font-size:15px !important; line-height:1.4; }
html[data-ui-theme="vitality-blue"] :is(.subjective-self-actions,.qz-self) [data-verdict="correct"] { --verdict-ink:#24734c; --verdict-bg:#e6f8eb; --verdict-edge:#a9d9b7; }
html[data-ui-theme="vitality-blue"] :is(.subjective-self-actions,.qz-self) [data-verdict="partial"] { --verdict-ink:#95600e; --verdict-bg:#fff2d2; --verdict-edge:#e8cb83; }
html[data-ui-theme="vitality-blue"] :is(.subjective-self-actions,.qz-self) [data-verdict="wrong"] { --verdict-ink:#b2403d; --verdict-bg:#ffe8e6; --verdict-edge:#eab3ad; }
html[data-ui-theme="vitality-blue"] :is(.subjective-self-actions,.vitality-tutor .qz-self) [data-verdict] {
  background:linear-gradient(#fff,var(--verdict-bg)) !important; color:var(--verdict-ink) !important;
  border:1px solid var(--verdict-edge) !important; border-bottom:3px solid var(--verdict-edge) !important;
  box-shadow:inset 0 1px 0 #fff,0 2px 5px #24466309 !important;
}
html[data-ui-theme="vitality-blue"] .subjective-self-actions [data-verdict].is-selected { outline:2px solid var(--verdict-ink); outline-offset:1px; background:var(--verdict-bg) !important; }

/* 小优老师嵌入页与独立页用同一套；不覆盖框选画布或照片尺寸。 */
html[data-ui-theme="vitality-blue"] .tutor-modal-bar { background:linear-gradient(110deg,#25bbf8,#1cb0f6 55%,#289eec); box-shadow:inset 0 1px 0 #ffffff50; }
html[data-ui-theme="vitality-blue"] .tutor-modal-close { min-height:44px; min-width:44px; transform:none !important; }
html[data-ui-theme="vitality-blue"] .tutor-modal-btn { min-height:44px; transform:none !important; }
html[data-ui-theme="vitality-blue"] .vitality-tutor :is(.brandbar,.topbar) { background:#fff; backdrop-filter:none; -webkit-backdrop-filter:none; border-bottom:1px solid #d9e8f3; }
html[data-ui-theme="vitality-blue"] .vitality-tutor .beat { background:#fff; border:1px solid #d7e9f5; border-left:3px solid #31b8f3; box-shadow:var(--vb-shadow); animation:none; }
html[data-ui-theme="vitality-blue"] .vitality-tutor .step-title { color:#234c6b; font-weight:800; }
html[data-ui-theme="vitality-blue"] .vitality-tutor .tag { color:#1678ae; background:#e7f5ff; }
html[data-ui-theme="vitality-blue"] .vitality-tutor :is(.continue,.primary,.ghost,.topbtn,.file-label,#askKnow) { min-height:44px; padding:10px 14px; border-radius:11px; font-size:14px; line-height:1.4; transform:none !important; }
html[data-ui-theme="vitality-blue"] .vitality-tutor :is(.continue,.primary) { background:linear-gradient(#2cbbf9,#1aa9ef) !important; border:1px solid #1aa3e5 !important; border-bottom:3px solid #138fd0 !important; box-shadow:inset 0 1px 0 #ffffff50 !important; color:#fff !important; }
html[data-ui-theme="vitality-blue"] .vitality-tutor :is(.ghost,.topbtn,.file-label,#askKnow) { background:linear-gradient(#fff,#f3f9fd); border:1px solid #cbdfea; border-bottom:2px solid #cbdfea; color:#316785; }
html[data-ui-theme="vitality-blue"] .vitality-tutor .qz-self { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
html[data-ui-theme="vitality-blue"] .vitality-tutor .qz-self button { min-height:46px !important; margin:0; padding:9px !important; font-size:14px !important; }
html[data-ui-theme="vitality-blue"] .vitality-tutor .quiz-card { background:#fff; border:1px solid #d7e7f3; box-shadow:var(--vb-shadow); }
html[data-ui-theme="vitality-blue"] .vitality-tutor .mascot { animation:none; }
@media(max-width:600px) {
  /* 窄屏保留全部顶栏操作和关闭键，不让横向挤压把关闭键推出屏幕。 */
  html[data-ui-theme="vitality-blue"] .tutor-modal-bar { position:relative; flex-wrap:wrap; gap:7px; padding:8px 10px; }
  html[data-ui-theme="vitality-blue"] .tutor-modal-version { min-height:30px; display:flex; align-items:center; margin:0 54px 0 0; border:0; }
  html[data-ui-theme="vitality-blue"] .tutor-modal-actions { width:100%; min-width:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
  html[data-ui-theme="vitality-blue"] .tutor-modal-actions > .tutor-modal-btn { grid-row:1; padding:8px 4px; font-size:12px; min-width:0; }
  html[data-ui-theme="vitality-blue"] .tutor-tier-seg { grid-column:1/-1; grid-row:2; display:flex; justify-content:center; }
  html[data-ui-theme="vitality-blue"] .tutor-tier-opt { flex:1; min-height:38px; white-space:nowrap; }
  html[data-ui-theme="vitality-blue"] .tutor-modal-close { position:absolute; right:10px; top:5px; margin:0; }
  html[data-ui-theme="vitality-blue"] .hd2-nav > :is(.summer-entry,.tutor-entry) { min-width:0; flex-basis:100%; padding:12px 14px !important; }
  html[data-ui-theme="vitality-blue"] .hd2-pills { gap:7px; }
  html[data-ui-theme="vitality-blue"] .home-hero { padding:18px !important; }
  html[data-ui-theme="vitality-blue"] .action-cluster { padding:13px !important; }
  html[data-ui-theme="vitality-blue"] .subjective-self-actions .answer-option { gap:4px; padding:9px 5px !important; font-size:13px !important; }
  html[data-ui-theme="vitality-blue"] .subjective-self-actions .answer-option strong { font-size:13px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-fb { padding:14px; }
  html[data-ui-theme="vitality-blue"] .ssl-explain { font-size:16px; }
  html[data-ui-theme="vitality-blue"] .vitality-tutor .qz-self button { padding:9px 4px !important; font-size:13px !important; }
}

/* ===== 质感升级 v2「学习驾驶舱」（仅平板/电脑 ≥700px；手机不动）
   深蓝顶栏带 + 白色浮卡 + 单行科目切换 + Nunito 数字 + 编号分组卡。
   纯视觉层：不改 DOM、滚动容器、路由与作答状态。圆角 12/16/24/胶囊；阴影 卡片/浮层 两档。 ===== */
@media (min-width:700px) {
  html[data-ui-theme="vitality-blue"] {
    --pl-navy:#0f4d82; --pl-ink:#0f2c46; --pl-body:#4c6780; --pl-muted:#7a8fa3;
    --pl-line:#e3ecf4; --pl-soft:#eaf6fe; --pl-soft-edge:#c4e6fa;
    --pl-card:0 1px 2px #0b3a630d,0 6px 20px #0b3a6312; --pl-float:0 4px 10px #0b3a6314,0 18px 40px #0b3a631f;
    --pl-num:"WYXNum",-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  }
  html[data-ui-theme="vitality-blue"] body:has(#root) {
    background:#f2f6fa !important;
    background-image:radial-gradient(#0b3a630a 1px,transparent 1.2px) !important; background-size:22px 22px !important;
  }

  /* —— 顶栏：深蓝品牌带 —— */
  html[data-ui-theme="vitality-blue"] .app-header.hd2 {
    position:relative; overflow:hidden; isolation:isolate;
    background:linear-gradient(128deg,#1670b3 0%,#1b8bd3 50%,#27aaf0 100%) !important;
    border:0 !important; border-radius:0 0 28px 28px !important; padding:18px 24px 22px !important;
    box-shadow:0 10px 30px #1670b32e !important;
  }
  html[data-ui-theme="vitality-blue"] .app-header.hd2::before {
    content:""; position:absolute; z-index:-1; pointer-events:none; inset:-120px -80px auto auto; width:420px; height:420px; border-radius:50%;
    background:radial-gradient(circle,#ffffff1f 0,#ffffff08 55%,transparent 70%);
  }
  html[data-ui-theme="vitality-blue"] .app-header.hd2::after {
    content:""; position:absolute; z-index:-1; pointer-events:none; left:-60px; bottom:-140px; width:300px; height:300px; border-radius:50%;
    border:40px solid #ffffff0d;
  }
  /* 品牌字标：去白卡，直接落在深蓝带上。「无忧学」阿里妈妈数黑体白色印章 +「错题清系统」得意黑 */
  html[data-ui-theme="vitality-blue"] .hd2 .brand-logo-button {
    background:transparent !important; box-shadow:none !important; border:0 !important; padding:2px 0 !important; gap:7px !important; transform:none !important;
  }
  html[data-ui-theme="vitality-blue"] .hd2 .brand-logo { gap:12px !important; align-items:center; }
  html[data-ui-theme="vitality-blue"] .hd2 .brand-badge {
    font-family:"WYXShuHei","WYXLogo","PingFang SC",sans-serif !important; font-weight:400 !important;
    font-size:25px !important; letter-spacing:2px !important; line-height:1 !important;
    color:var(--pl-navy) !important; background:#fff !important; padding:7px 11px 8px 13px !important; border-radius:11px !important;
    box-shadow:0 4px 0 #ffd23f,0 10px 20px #04203a40 !important; text-shadow:none !important;
  }
  html[data-ui-theme="vitality-blue"] .hd2 .brand-name {
    font-family:"WYXSmiley","WYXLogo","PingFang SC",sans-serif !important; font-weight:400 !important;
    font-size:31px !important; letter-spacing:1px !important; line-height:1 !important;
    background:none !important; -webkit-text-fill-color:#fff !important; color:#fff !important;
  }
  html[data-ui-theme="vitality-blue"] .hd2 .brand-credit {
    color:#dcefff !important; font-size:12px !important; font-weight:700 !important; letter-spacing:.12em !important; margin-top:4px !important;
  }
  html[data-ui-theme="vitality-blue"] .hd2 .brand-credit .bc-x { color:#ffd23f !important; }

  html[data-ui-theme="vitality-blue"] .is-quiz-view .hd2 .brand-badge { font-size:19px !important; padding:5px 9px 6px 10px !important; box-shadow:0 3px 0 #ffd23f !important; }
  html[data-ui-theme="vitality-blue"] .is-quiz-view .hd2 .brand-name { font-size:24px !important; }

  /* 学生信息 + 学段 + 退出：合成一枚玻璃胶囊，学段为分段控件 */
  html[data-ui-theme="vitality-blue"] .hd2-top { align-items:center !important; row-gap:12px !important; }
  html[data-ui-theme="vitality-blue"] .hd2-user {
    gap:6px !important; flex-wrap:nowrap !important; align-items:center;
    background:#ffffff14; border:1px solid #ffffff26; border-radius:999px; padding:5px 5px 5px 16px;
    box-shadow:inset 0 1px 0 #ffffff1a;
  }
  @media (max-width:880px) { html[data-ui-theme="vitality-blue"] .hd2-user { flex-wrap:wrap !important; border-radius:22px; } }
  html[data-ui-theme="vitality-blue"] .hd2 .cur-stu { color:#dcefff !important; font-size:13px !important; font-weight:700 !important; display:inline-flex; align-items:center; gap:6px; margin-right:4px; }
  html[data-ui-theme="vitality-blue"] .hd2 .cur-stu strong { color:#fff !important; font-size:15px; font-weight:800; }
  html[data-ui-theme="vitality-blue"] .hd2 .stage-tag { background:#ffd23f !important; color:#664a00 !important; border:0 !important; font-size:11px !important; font-weight:900 !important; padding:2px 7px !important; border-radius:6px !important; }
  html[data-ui-theme="vitality-blue"] .hd2 .role-badge { background:#ffffff26 !important; color:#fff !important; border:0 !important; }
  html[data-ui-theme="vitality-blue"] .hd2 .stage-switch {
    display:inline-flex !important; gap:2px; padding:3px; border-radius:999px; background:#04203a4d; box-shadow:inset 0 1px 2px #04203a40;
  }
  html[data-ui-theme="vitality-blue"] .hd2-user .ghost-button {
    height:34px !important; min-height:34px !important; padding:0 14px !important; border-radius:999px !important;
    background:transparent !important; border:0 !important; border-bottom:0 !important; box-shadow:none !important;
    color:#e6f4ff !important; font-size:13.5px !important; font-weight:800 !important;
  }
  html[data-ui-theme="vitality-blue"] .hd2-user .ghost-button:hover { background:#ffffff1f !important; color:#fff !important; }
  html[data-ui-theme="vitality-blue"] .hd2-user .stage-switch-opt.is-active {
    background:#fff !important; color:var(--pl-navy) !important; font-weight:900 !important; box-shadow:0 2px 6px #04203a40 !important;
  }
  html[data-ui-theme="vitality-blue"] .hd2-user > .ghost-button { background:#ffffff1a !important; color:#fff !important; }
  html[data-ui-theme="vitality-blue"] .hd2-user > .ghost-button:hover { background:#ffffff33 !important; }
  html[data-ui-theme="vitality-blue"] .hd2 .go-home-nav-button {
    background:#ffffff1a !important; color:#fff !important; border:1px solid #ffffff33 !important; border-radius:999px !important; box-shadow:none !important;
  }

  /* 两大主入口：深蓝带上的白色浮卡 */
  html[data-ui-theme="vitality-blue"] .hd2-nav > :is(.summer-entry,.tutor-entry) {
    background:#fff !important; border:0 !important; border-radius:20px !important; min-height:88px;
    box-shadow:0 8px 22px #04203a38 !important; color:var(--pl-ink) !important; padding:16px 18px !important;
  }
  html[data-ui-theme="vitality-blue"] .hd2-nav > :is(.summer-entry,.tutor-entry)::after {
    inset:auto -40px -70px auto; border:22px solid #1cb0f612 !important;
  }
  html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) .se-t { color:var(--pl-ink) !important; font-size:19px !important; }
  html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) .se-sub { color:var(--pl-muted) !important; opacity:1; font-size:12.5px; }
  html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) :is(.se-ic,.te-ic) {
    flex-basis:48px; width:48px; height:48px; border-radius:14px; border:0;
    background:linear-gradient(145deg,#2cc0ff,#1488d8) !important; box-shadow:0 6px 14px #1492d655,inset 0 1px 0 #ffffff66;
  }
  html[data-ui-theme="vitality-blue"] .tutor-entry :is(.se-ic,.te-ic) { background:linear-gradient(145deg,#ffdc5c,#ffb82a) !important; box-shadow:0 6px 14px #e8a91c55,inset 0 1px 0 #ffffff77; }
  html[data-ui-theme="vitality-blue"] :is(.summer-entry,.tutor-entry) .se-arrow {
    display:grid; place-items:center; width:32px; height:32px; border-radius:50%;
    background:var(--pl-soft); color:#0b6fa6 !important; font-size:20px; font-weight:900;
  }
  html[data-ui-theme="vitality-blue"] .hd2-pill {
    background:#ffffff17 !important; color:#fff !important; border:1px solid #ffffff33 !important;
    box-shadow:none !important; min-height:40px;
  }
  html[data-ui-theme="vitality-blue"] .hd2-pill:hover { background:#ffffff2b !important; }
  html[data-ui-theme="vitality-blue"] .hd2-pill.is-live { background:#58cc02 !important; border-color:#7ee02f !important; }

  /* —— 科目切换：单行分段控件 —— */
  html[data-ui-theme="vitality-blue"] .subject-switch-bar { display:block !important; margin-top:4px; }
  html[data-ui-theme="vitality-blue"] .subject-switch-side { margin-top:8px; padding:0 4px; }
  html[data-ui-theme="vitality-blue"] .subject-switch {
    display:flex !important; flex-wrap:wrap; gap:4px !important; width:100%; box-sizing:border-box;
    background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:16px !important;
    padding:5px !important; box-shadow:var(--pl-card) !important;
  }
  html[data-ui-theme="vitality-blue"] .subject-tab {
    flex:1 1 0; min-width:96px; min-height:46px; margin:0 !important;
    background:transparent !important; border:0 !important; box-shadow:none !important;
    color:var(--pl-body) !important; font-size:15px !important; font-weight:800 !important; border-radius:12px !important;
  }
  html[data-ui-theme="vitality-blue"] .subject-tab:hover { background:#f1f7fc !important; color:var(--pl-ink) !important; }
  html[data-ui-theme="vitality-blue"] .subject-tab.is-active {
    background:linear-gradient(135deg,#1a7fc6,#22a2ea) !important; color:#fff !important;
    box-shadow:0 4px 12px #1a7fc640 !important;
  }
  html[data-ui-theme="vitality-blue"] .subject-switch-side .muted { font-size:13px; color:var(--pl-muted) !important; }

  /* —— 冲刺区 hero —— */
  html[data-ui-theme="vitality-blue"] .home-hero {
    position:relative; overflow:hidden; isolation:isolate;
    background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:24px !important;
    box-shadow:var(--pl-card) !important; padding:28px 30px !important;
  }
  html[data-ui-theme="vitality-blue"] .home-hero::before { display:none !important; }
  html[data-ui-theme="vitality-blue"] .home-hero::after {
    content:""; position:absolute; z-index:-1; pointer-events:none; right:-70px; top:-70px; width:320px; height:320px; border-radius:50%;
    background:radial-gradient(circle at 40% 60%,#d9f0ff 0,#eef8ff 45%,transparent 70%);
  }
  html[data-ui-theme="vitality-blue"] .home-hero h1 { color:var(--pl-navy) !important; font-size:28px !important; font-weight:900 !important; line-height:1.3; letter-spacing:.01em; margin:10px 0 8px !important; }
  html[data-ui-theme="vitality-blue"] .home-hero .muted { color:var(--pl-body) !important; font-size:14px !important; line-height:1.75; max-width:34em; }
  html[data-ui-theme="vitality-blue"] :is(.home-hero,.section-block) .eyebrow {
    display:inline-flex; align-items:center; gap:6px; margin:0 !important; width:fit-content; align-self:flex-start;
    padding:4px 11px; border-radius:999px; background:var(--pl-soft); color:#0b6fa6 !important;
    font-size:12px !important; font-weight:800 !important; letter-spacing:.06em; text-transform:none;
  }
  html[data-ui-theme="vitality-blue"] :is(.home-hero,.section-block) .eyebrow::before { content:""; width:6px; height:6px; border-radius:50%; background:#1cb0f6; }
  html[data-ui-theme="vitality-blue"] .hero-stats {
    display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0 !important;
    margin-top:18px !important; padding:4px 0; background:#f6fafd; border:1px solid #e6eff6; border-radius:16px;
  }
  html[data-ui-theme="vitality-blue"] .hero-stats > div {
    background:transparent !important; border:0 !important; box-shadow:none !important; border-radius:0 !important;
    padding:12px 16px !important; display:flex; flex-direction:column; gap:2px;
  }
  html[data-ui-theme="vitality-blue"] .hero-stats > div + div { border-left:1px solid #e1ebf3 !important; }
  html[data-ui-theme="vitality-blue"] .hero-stats strong { font-family:var(--pl-num); font-size:34px !important; font-weight:900 !important; line-height:1.1; color:var(--pl-navy) !important; font-variant-numeric:tabular-nums; }
  html[data-ui-theme="vitality-blue"] .hero-stats span { font-size:12.5px !important; color:var(--pl-muted) !important; font-weight:700; }

  /* —— 板块卡 —— */
  html[data-ui-theme="vitality-blue"] .section-block,
  html[data-ui-theme="vitality-blue"] .section-block.export-panel {
    background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:24px !important;
    box-shadow:var(--pl-card) !important; padding:28px 28px 30px !important;
  }
  html[data-ui-theme="vitality-blue"] .section-title h2 { font-size:25px !important; font-weight:900 !important; color:var(--pl-ink) !important; margin-top:10px !important; letter-spacing:.01em; }
  html[data-ui-theme="vitality-blue"] .section-block p.muted { font-size:14px !important; line-height:1.75; color:var(--pl-body) !important; }
  html[data-ui-theme="vitality-blue"] .section-helper-note { padding:10px 14px; border-radius:12px; background:#f6fafd; border:1px dashed #d8e6f1; }

  /* 收藏 / 错题 / 录入：左侧语义色条的工具卡 */
  html[data-ui-theme="vitality-blue"] .action-cluster {
    background:#fff !important; border:1px solid var(--pl-line) !important; border-top:1px solid var(--pl-line) !important;
    border-left:5px solid var(--cluster-edge) !important; border-radius:16px !important; box-shadow:none !important; padding:16px 16px 16px 18px !important;
  }
  html[data-ui-theme="vitality-blue"] .action-cluster-label { font-size:17px !important; }
  html[data-ui-theme="vitality-blue"] .action-cluster-icon { border:0; width:32px; height:32px; border-radius:10px; }

  /* 分组卡：编号 + 主次分明 */
  html[data-ui-theme="vitality-blue"] .exam-grid { counter-reset:plcard; gap:16px !important; }
  html[data-ui-theme="vitality-blue"] .exam-card {
    counter-increment:plcard; position:relative; overflow:hidden; isolation:isolate;
    background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:20px !important;
    box-shadow:var(--pl-card) !important; padding:20px 20px 18px !important;
    transition:transform .18s ease-out,box-shadow .18s ease-out,border-color .18s;
  }
  html[data-ui-theme="vitality-blue"] .exam-card::before {
    content:counter(plcard,decimal-leading-zero); position:absolute; z-index:-1; right:14px; top:4px;
    font-family:var(--pl-num); font-weight:900; font-size:56px; line-height:1; color:#eaf4fb; pointer-events:none;
  }
  html[data-ui-theme="vitality-blue"] .exam-card::after {
    content:""; position:absolute; left:0; top:20px; width:4px; height:26px; border-radius:0 4px 4px 0; background:#1cb0f6;
  }
  html[data-ui-theme="vitality-blue"] .exam-card:hover { transform:translateY(-2px); border-color:var(--pl-soft-edge) !important; box-shadow:var(--pl-float) !important; }
  html[data-ui-theme="vitality-blue"] .exam-card > strong { font-size:18px !important; font-weight:900 !important; color:var(--pl-ink); margin-top:4px; }
  html[data-ui-theme="vitality-blue"] .exam-card .muted { font-size:13.5px !important; line-height:1.7; color:var(--pl-body) !important; }
  html[data-ui-theme="vitality-blue"] .exam-card .trend-inline .muted { color:var(--pl-muted) !important; font-size:12.5px !important; }
  html[data-ui-theme="vitality-blue"] :is(.exam-card,.section-block) .pill { font-family:var(--pl-num),sans-serif; font-size:12px !important; padding:3px 10px !important; border-width:1px !important; font-weight:800 !important; }
  html[data-ui-theme="vitality-blue"] .pill.gold { background:#fff4d1 !important; border-color:#f2d98a !important; color:#8a6300 !important; }
  html[data-ui-theme="vitality-blue"] .exam-card .primary-button {
    margin-top:auto; background:var(--pl-soft) !important; color:#0b6fa6 !important; font-weight:900 !important;
    border:1px solid var(--pl-soft-edge) !important; border-bottom:1px solid var(--pl-soft-edge) !important; box-shadow:none !important;
  }
  html[data-ui-theme="vitality-blue"] .exam-card:hover .primary-button { background:linear-gradient(135deg,#1aa8ee,#1488d8) !important; color:#fff !important; border-color:#1488d8 !important; }

  /* 主按钮更利落：去 3D 厚底，改为扁平渐变 + 柔阴影 */
  html[data-ui-theme="vitality-blue"] #root :is(.primary-button,.ssl-cta:not(.ghost)):not(.exam-card .primary-button):not(:disabled) {
    background:linear-gradient(135deg,#22b4f7,#1492d6) !important; border:0 !important; border-bottom:0 !important;
    box-shadow:0 4px 12px #1492d640 !important; font-weight:800 !important;
  }
  html[data-ui-theme="vitality-blue"] #root :is(.secondary-button,.ghost-button):not(.hd2-user .ghost-button):not(:disabled) {
    background:#fff !important; border:1px solid #d5e3ee !important; border-bottom:1px solid #d5e3ee !important; box-shadow:0 1px 2px #0b3a630d !important; color:#2f5d7d !important;
  }
  html[data-ui-theme="vitality-blue"] #root :is(.primary-button,.secondary-button,.ghost-button,.ssl-cta):disabled {
    background:#f1f5f9 !important; color:#a3b3c2 !important; border:1px dashed #d7e1ea !important; box-shadow:none !important; opacity:1;
  }

  /* 按压反馈 */
  html[data-ui-theme="vitality-blue"] :is(.primary-button,.secondary-button,.ghost-button,.subject-tab,.hd2-pill,.summer-entry,.tutor-entry) { transition:transform .15s ease-out,background-color .15s,box-shadow .15s !important; }
  html[data-ui-theme="vitality-blue"] :is(.primary-button,.secondary-button,.ghost-button,.subject-tab,.hd2-pill,.summer-entry,.tutor-entry):not(:disabled):active { transform:scale(.97) !important; }
  html[data-ui-theme="vitality-blue"] .hd2-nav > :is(.summer-entry,.tutor-entry):hover { transform:translateY(-2px) !important; }

  /* 轻便模式：关掉装饰层 */
  html[data-ui-theme="vitality-blue"] body.lite-mode :is(.app-header.hd2,.home-hero)::before,
  html[data-ui-theme="vitality-blue"] body.lite-mode :is(.app-header.hd2,.home-hero)::after { display:none !important; }
  html[data-ui-theme="vitality-blue"] body.lite-mode { background-image:none !important; }
}

/* ===== 质感升级 v2 · 课程/看课/配套练习（仅 ≥700px；与首页「学习驾驶舱」同一套语言）===== */
@media (min-width:700px) {
  html[data-ui-theme="vitality-blue"] .ssl-shell {
    background:#f2f6fa !important; background-image:radial-gradient(#0b3a630a 1px,transparent 1.2px) !important; background-size:22px 22px !important;
  }
  /* 顶栏：深蓝品牌带 */
  html[data-ui-theme="vitality-blue"] .ssl-top {
    position:relative; overflow:hidden; isolation:isolate; gap:14px !important;
    background:linear-gradient(128deg,#1670b3 0%,#1b8bd3 55%,#27aaf0 100%) !important;
    border:0 !important; border-radius:0 0 24px 24px; padding:14px 24px 16px !important; box-shadow:0 8px 24px #1670b32a !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-top::after {
    content:""; position:absolute; z-index:-1; pointer-events:none; right:-50px; top:-110px; width:260px; height:260px; border-radius:50%; border:34px solid #ffffff0f;
  }
  html[data-ui-theme="vitality-blue"] .ssl-top-btn { width:44px !important; height:44px !important; background:#ffffff1a !important; border:1px solid #ffffff33 !important; font-size:18px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-top-btn:hover { background:#ffffff2e !important; }
  html[data-ui-theme="vitality-blue"] .ssl-top-mid b { font-size:19px !important; letter-spacing:.02em !important; }
  html[data-ui-theme="vitality-blue"] .ssl-top-mid span { color:#dcefff; opacity:1 !important; font-size:12px !important; font-weight:700; letter-spacing:.06em; }
  html[data-ui-theme="vitality-blue"] .ssl-top-star { font-family:var(--pl-num); background:#ffd23f !important; color:#664a00 !important; padding:6px 14px !important; box-shadow:0 3px 0 #e8b21c; }

  /* 学习提醒卡：白卡 + 金色竖条 */
  html[data-ui-theme="vitality-blue"] .student-nudge {
    background:#fff !important; border:1px solid var(--pl-line) !important; border-left:4px solid #ffd23f !important;
    border-radius:14px !important; box-shadow:var(--pl-card) !important; padding:12px 16px !important;
  }
  html[data-ui-theme="vitality-blue"] .student-nudge-icon { background:#fff4d1 !important; color:#b88400 !important; }
  html[data-ui-theme="vitality-blue"] .student-nudge b { color:#8a6300 !important; font-size:12px; letter-spacing:.06em; }
  html[data-ui-theme="vitality-blue"] .student-nudge p { color:var(--pl-ink) !important; font-weight:700; }

  /* 筛选三级：学段=分段轨道，科目=实心胶囊，册别=小描边胶囊 */
  html[data-ui-theme="vitality-blue"] .ssl-chipbar { gap:6px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-stages {
    display:inline-flex !important; max-width:100%; box-sizing:border-box; gap:3px !important; padding:4px !important; margin-bottom:14px !important;
    background:#fff; border:1px solid var(--pl-line); border-radius:16px; box-shadow:var(--pl-card);
  }
  html[data-ui-theme="vitality-blue"] .ssl-stages .ssl-chip {
    background:transparent !important; box-shadow:none !important; border:0 !important; border-radius:12px !important;
    color:var(--pl-body) !important; padding:10px 20px !important; font-size:15px !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-stages .ssl-chip.on { background:linear-gradient(135deg,#1a7fc6,#22a2ea) !important; color:#fff !important; box-shadow:0 4px 12px #1a7fc640 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-chipbar:not(.ssl-stages) .ssl-chip {
    background:#fff !important; border:1px solid #d9e6f0 !important; color:var(--pl-body) !important; font-weight:800 !important; box-shadow:none !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-chipbar:not(.ssl-stages) .ssl-chip.on { background:var(--pl-soft) !important; border-color:#1cb0f6 !important; color:#0b6fa6 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-books .ssl-chip { font-family:var(--pl-num),"PingFang SC",sans-serif; font-size:13px !important; padding:6px 14px !important; }

  /* 讲义库入口：特色卡 */
  html[data-ui-theme="vitality-blue"] .ssl-handout-library {
    background:linear-gradient(120deg,#fff 55%,#eef8ff) !important; border:1px solid var(--pl-line) !important; border-radius:20px !important;
    box-shadow:var(--pl-card) !important; padding:16px 18px !important; margin:6px 0 18px !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-handout-library b { color:var(--pl-ink); font-size:16px !important; font-weight:900; }

  /* 章节卡：编号 + 进度环，与首页分组卡同源 */
  html[data-ui-theme="vitality-blue"] .ssl-chapters { gap:12px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-chapter {
    position:relative; overflow:hidden; isolation:isolate;
    border:1px solid var(--pl-line) !important; border-radius:20px !important; padding:18px 20px !important;
    box-shadow:var(--pl-card) !important; transition:transform .18s ease-out,box-shadow .18s,border-color .18s !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-chapter:not(.locked):hover { transform:translateY(-2px); border-color:var(--pl-soft-edge) !important; box-shadow:var(--pl-float) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-chapter:not(.locked):active { transform:scale(.985) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-ch-ring { width:54px !important; height:54px !important; background:conic-gradient(#1cb0f6 calc(var(--pct)*1%),#e6eef5 0) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-ch-ring i { width:44px !important; height:44px !important; font-family:var(--pl-num); color:var(--pl-navy) !important; font-size:13px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-ch-name { font-size:18px !important; color:var(--pl-ink) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-ch-meta { color:var(--pl-muted) !important; font-size:12.5px !important; font-weight:700; }
  html[data-ui-theme="vitality-blue"] .ssl-ch-badge { font-size:11.5px !important; padding:4px 10px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-ch-go {
    display:grid; place-items:center; width:36px; height:36px; border-radius:50%;
    background:var(--pl-soft); color:#0b6fa6 !important; font-size:13px !important; transition:background .15s,color .15s;
  }
  html[data-ui-theme="vitality-blue"] .ssl-chapter:hover .ssl-ch-go { background:#1cb0f6; color:#fff !important; }

  /* 章内：学习组折叠卡 + 课节行（看课=蓝，配套练习=金，主次分明） */
  html[data-ui-theme="vitality-blue"] :is(.ssl-study-intro,.ssl-handout-library + .ssl-study-intro) {
    background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:16px !important; box-shadow:var(--pl-card); color:var(--pl-body) !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-study-intro b { color:var(--pl-ink) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-groups { gap:14px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-group { border:1px solid var(--pl-line) !important; border-radius:22px !important; box-shadow:var(--pl-card) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-group.open { border-color:var(--pl-soft-edge) !important; box-shadow:var(--pl-float) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-group-head, html[data-ui-theme="vitality-blue"] .ssl-study-group.open .ssl-study-group-head { background:#fff !important; padding:16px 18px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-group-no { font-family:var(--pl-num); width:44px !important; height:44px !important; border-radius:14px !important; font-size:15px !important; background:var(--pl-soft) !important; color:#0b6fa6 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-group.open .ssl-study-group-no { background:linear-gradient(145deg,#1a7fc6,#22a2ea) !important; color:#fff !important; box-shadow:0 4px 10px #1a7fc640; }
  html[data-ui-theme="vitality-blue"] .ssl-study-group-main b { font-size:17px !important; font-weight:900; color:var(--pl-ink); }
  html[data-ui-theme="vitality-blue"] .ssl-study-group-progress b { font-family:var(--pl-num); font-size:16px !important; color:var(--pl-navy); }
  html[data-ui-theme="vitality-blue"] .ssl-study-lessons { background:#f7fafd !important; border-top:1px solid #edf2f7 !important; padding:12px 16px 16px !important; gap:10px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-lesson {
    background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:14px !important; box-shadow:0 1px 2px #0b3a630a !important; padding:12px 14px !important;
    transition:border-color .15s,box-shadow .15s,transform .15s;
  }
  html[data-ui-theme="vitality-blue"] .ssl-study-lesson:hover { border-color:var(--pl-soft-edge) !important; box-shadow:var(--pl-card) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-lesson:active { transform:scale(.985) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-lesson.done { background:#f5fbf0 !important; border-color:#cfe9bf !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-lesson-no { font-family:var(--pl-num); background:#f0f5f9 !important; color:var(--pl-body) !important; font-size:12px !important; border-radius:10px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-lesson-main b { font-size:14.5px !important; color:var(--pl-ink); font-weight:800; }
  html[data-ui-theme="vitality-blue"] .ssl-study-lesson-act { background:var(--pl-soft) !important; color:#0b6fa6 !important; padding:6px 11px !important; border-radius:999px !important; font-size:12px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice {
    background:#fffaf0 !important; border:1px solid #f2d98a !important; color:#8a6300 !important; border-radius:14px !important; box-shadow:none !important;
    transition:background .15s,transform .15s;
  }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice:hover { background:#fff3d1 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice:active { transform:scale(.97) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice b { font-size:12.5px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice small { color:#a08440 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice.done { background:#f1faeb !important; border-color:#cfe9bf !important; color:#3a8d13 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice.done small { color:#6c9a52 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-study-practice.unavailable { background:#f4f7fa !important; border:1px dashed #d7e1ea !important; color:#98a7b5 !important; }

  /* 看课页：影院卡 */
  html[data-ui-theme="vitality-blue"] .ssl-video-wrap { border-radius:22px !important; overflow:hidden; box-shadow:0 18px 40px #04203a38 !important; background:#0b1624; }
  html[data-ui-theme="vitality-blue"] .ssl-video-wrap.is-app-fullscreen { border-radius:0 !important; box-shadow:none !important; }
  html[data-ui-theme="vitality-blue"] .ssl-video-wrap .course-video-controls { background:#0f1d2e !important; padding:10px 16px !important; gap:8px !important; color:#8fa9c2 !important; font-weight:700; }
  html[data-ui-theme="vitality-blue"] .ssl-video-wrap :is(.course-rate,.course-fullscreen) {
    font-family:var(--pl-num),"PingFang SC",sans-serif; min-height:32px !important; border-radius:999px !important; border:1px solid #2a3d54 !important; background:#172a40 !important; color:#d6e6f5 !important; font-weight:800 !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-video-wrap .course-rate.on { background:#1cb0f6 !important; border-color:#1cb0f6 !important; color:#fff !important; }
  html[data-ui-theme="vitality-blue"] .course-watch-meter { margin:14px 4px !important; }
  html[data-ui-theme="vitality-blue"] .course-watch-meter > span { height:8px !important; background:#e3ebf2 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-vid { border:1px solid var(--pl-line) !important; border-radius:14px !important; box-shadow:none !important; }
  html[data-ui-theme="vitality-blue"] .ssl-vid.on { background:var(--pl-soft) !important; border-color:#1cb0f6 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-context-tools {
    background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:18px !important; box-shadow:var(--pl-card) !important; padding:12px 14px !important; gap:10px !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-context-btn { border-radius:12px !important; min-height:42px; padding:9px 14px !important; box-shadow:none !important; }
  html[data-ui-theme="vitality-blue"] .ssl-context-btn.ask { background:var(--pl-soft) !important; color:#0b6fa6 !important; border:1px solid var(--pl-soft-edge) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-context-btn:not(.ask) { background:#fffaf0 !important; color:#8a6300 !important; border:1px solid #f2d98a !important; }
  html[data-ui-theme="vitality-blue"] .ssl-cta:not(.ghost) { min-height:50px !important; padding:12px 26px !important; border-radius:14px !important; font-size:15.5px !important; font-weight:900 !important; }

  /* 配套练习：难度三卡（顶部语义色条） */
  html[data-ui-theme="vitality-blue"] .ssl-intro { color:var(--pl-body) !important; font-size:14px !important; margin:6px 0 18px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-bands { gap:14px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-band {
    position:relative; overflow:hidden; border:1px solid var(--pl-line) !important; border-top:5px solid var(--band-c,#1cb0f6) !important;
    border-radius:20px !important; padding:24px 10px 20px !important; gap:8px !important; box-shadow:var(--pl-card) !important;
    transition:transform .18s ease-out,box-shadow .18s !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-band.b1 { --band-c:#58cc02; } html[data-ui-theme="vitality-blue"] .ssl-band.b2 { --band-c:#ffb020; } html[data-ui-theme="vitality-blue"] .ssl-band.b3 { --band-c:#ff5a4f; }
  html[data-ui-theme="vitality-blue"] .ssl-band:not(:disabled):hover { transform:translateY(-3px); box-shadow:var(--pl-float) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-band:not(:disabled):active { transform:scale(.97) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-band b { font-size:18px !important; color:var(--pl-ink); font-weight:900; }
  html[data-ui-theme="vitality-blue"] .ssl-band-star { font-size:22px !important; letter-spacing:3px !important; color:#ffc528 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-band small { color:var(--pl-muted) !important; font-size:12px !important; font-weight:700; }

  /* 答题：题干卡 + 选项卡 + 反馈卡 */
  html[data-ui-theme="vitality-blue"] .ssl-qbar { height:10px !important; background:#e3ebf2 !important; margin-bottom:14px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-band-tag { border-radius:999px !important; padding:4px 11px !important; font-size:12.5px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-qmeta .muted { color:var(--pl-muted) !important; font-size:13.5px !important; font-weight:700; }
  html[data-ui-theme="vitality-blue"] .ssl-question-timer { background:#fff !important; border:1px solid var(--pl-line) !important; border-radius:14px !important; box-shadow:none !important; }
  html[data-ui-theme="vitality-blue"] .ssl-stem {
    border:1px solid var(--pl-line) !important; border-radius:20px !important; padding:22px 24px !important; box-shadow:var(--pl-card) !important; font-size:17.5px !important; color:#1a2d40;
  }
  html[data-ui-theme="vitality-blue"] .ssl-opts { gap:12px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt {
    border:1.5px solid var(--pl-line) !important; border-radius:16px !important; padding:15px 18px !important; box-shadow:none !important; font-size:16.5px !important;
    transition:border-color .15s,background-color .15s,transform .15s !important;
  }
  html[data-ui-theme="vitality-blue"] .ssl-opt:not(:disabled):hover { border-color:#1cb0f6 !important; background:#f7fcff !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt:not(:disabled):active { transform:scale(.985) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt b { width:32px !important; height:32px !important; border-radius:10px !important; font-family:var(--pl-num),sans-serif; background:#eef5fb !important; color:var(--pl-navy) !important; font-size:15px !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt.right { background:#effbe6 !important; border-color:#8fd65a !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt:is(.right,.wrong) { opacity:1 !important; filter:none !important; color:var(--pl-ink) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt:disabled:not(.right,.wrong) { opacity:.55 !important; filter:none !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt.right b { background:#58cc02 !important; color:#fff !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt.wrong { background:#fff1f0 !important; border-color:#f5a39c !important; }
  html[data-ui-theme="vitality-blue"] .ssl-opt.wrong b { background:#ff5a4f !important; color:#fff !important; }
  html[data-ui-theme="vitality-blue"] .ssl-fb { border-radius:22px !important; padding:22px 24px !important; border:1px solid var(--pl-line) !important; border-top:5px solid #1cb0f6 !important; box-shadow:var(--pl-float) !important; }
  html[data-ui-theme="vitality-blue"] .ssl-fb.ok { border-top-color:#58cc02 !important; }
  html[data-ui-theme="vitality-blue"] .ssl-fb.bad { border-top-color:#ff5a4f !important; }
  html[data-ui-theme="vitality-blue"] .ssl-fb > b:first-child { font-size:18px; font-weight:900; color:var(--pl-ink); }
  html[data-ui-theme="vitality-blue"] .ssl-answer { border-radius:12px !important; border-left-width:4px !important; font-weight:800; }
  html[data-ui-theme="vitality-blue"] .ssl-done h1 { font-size:26px !important; font-weight:900; color:var(--pl-ink); }
}
