/* 课程区样式 · 2026-09-30 精简版（所有课程页共用这一份） */

/* 首屏 */
.course-hero { background: linear-gradient(160deg, var(--green-100), var(--cream) 46%, var(--cream-2)); padding: 72px 0 56px; }
.course-hero .eyebrow { display: inline-block; }
.course-hero h1 { font-family: var(--font-serif); font-size: clamp(30px, 4.2vw, 46px); line-height: 1.32; color: var(--green-950); margin: 14px 0 16px; }
.br-sm { display: none; }
.course-hero .lead { font-size: 16.5px; line-height: 1.9; color: var(--ink-2); max-width: 46ch; }
.course-tags { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 0; }
.course-tags li { list-style: none; padding: 6px 14px; border-radius: 999px; font-size: 13px; letter-spacing: .06em; background: rgba(227, 178, 91, .16); color: var(--gold-600); }

/* 清单页首屏：给谁看 + 免费说明 */
.course-audience { margin: 26px 0 0; padding: 20px 24px; max-width: 620px; border-radius: 14px;
  background: rgba(255, 255, 255, .72); border: 1px solid rgba(122, 139, 79, .14); }
.course-audience-title { font-size: 12.5px; letter-spacing: .16em; color: var(--gold-600); margin-bottom: 10px; }
.course-audience-list li { list-style: none; position: relative; padding-left: 17px; font-size: 14.5px; line-height: 1.95; color: var(--ink-2); }
.course-audience-list li::before { content: ""; position: absolute; left: 1px; top: 12px; width: 6px; height: 6px; border-radius: 50%; background: var(--gold-600); }
.course-free-note { margin-top: 18px; font-size: 13.5px; color: var(--ink-2); }

/* 免费课清单 */
.course-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.course-item { display: grid; grid-template-columns: 216px minmax(0, 1fr); gap: 20px; align-items: center;
  background: #fff; border: 1px solid rgba(122, 139, 79, .14); border-radius: 18px; padding: 18px; box-shadow: var(--shadow);
  transition: transform .25s ease, box-shadow .25s ease; }
.course-item:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.course-thumb, .course-body, .course-no, .course-name, .course-intro, .course-go { display: block; }
.course-thumb { position: relative; border-radius: 12px; overflow: hidden; background: var(--green-100); }
.course-thumb img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.course-thumb .ct-dur { position: absolute; right: 8px; bottom: 8px; padding: 2px 7px; border-radius: 5px; background: rgba(0, 0, 0, .62); color: #fff; font-size: 11.5px; }
.course-thumb .ct-play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 46px; height: 46px; border-radius: 50%; background: rgba(255, 255, 255, .94); }
.course-thumb .ct-play::after { content: ""; position: absolute; left: 19px; top: 15px; border-left: 14px solid var(--green-700); border-top: 8px solid transparent; border-bottom: 8px solid transparent; }
.course-no { font-size: 12px; letter-spacing: .16em; color: var(--gold-600); }
.course-name { font-family: var(--font-serif); font-size: 19px; line-height: 1.4; color: var(--green-950); margin: 5px 0 8px; }
.course-intro { font-size: 14px; line-height: 1.7; color: var(--ink-2); }
.course-go { margin-top: 12px; font-size: 13.5px; font-weight: 600; color: var(--green-700); }
.course-go::after { content: " →"; }
.course-item.is-soon { background: rgba(122, 139, 79, .05); border-style: dashed; box-shadow: none; }
.course-item.is-soon .course-thumb { display: grid; place-items: center; aspect-ratio: 16 / 9; background: rgba(122, 139, 79, .08); }
.course-item.is-soon .course-thumb span { font-size: 12.5px; letter-spacing: .1em; color: var(--green-700); }
.course-item.is-soon .course-name { color: var(--ink-2); }
.course-item.is-soon .course-go { color: var(--ink-2); font-weight: 400; }
.course-item.is-soon .course-go::after { content: ""; }

/* 播放区 */
.lesson-player { border-radius: 16px; overflow: hidden; background: #0B0D09; box-shadow: 0 18px 44px rgba(22, 26, 12, .22); }
.lesson-player video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: #0B0D09; }
.course-meta { margin-top: 18px; font-size: 14.5px; line-height: 1.85; color: var(--ink-2); }
.course-note { margin-top: 10px; font-size: 13px; line-height: 1.85; color: var(--ink-2); }
.course-back { margin-top: 30px; }
.course-back a { font-size: 14px; color: var(--green-700); border-bottom: 1px solid rgba(122, 139, 79, .4); }

/* 清单页首屏 · 前面的节奏：先把现象讲一遍（晒背、八段锦 / 过度养生）*/
.course-open { max-width: 620px; }
.course-open p { font-size: 15.5px; line-height: 1.95; color: var(--ink-2); }
.course-open p + p { margin-top: 8px; }

/* 清单页首屏 · 转折之后我们的答案：给思路，也给做法 */
.course-answer { max-width: 620px; margin-bottom: 2px; }
.course-answer p { font-size: 16px; line-height: 1.95; color: var(--ink-2); }
.course-answer p + p { margin-top: 14px; padding-left: 14px; border-left: 3px solid var(--gold-600);
  font-size: 18px; line-height: 1.8; color: var(--green-950); }
.course-answer strong { font-weight: 600; color: var(--green-700); }

/* 课程清单上方的小标题 */
.course-list-title { font-size: 12.5px; letter-spacing: .16em; color: var(--gold-600); margin-bottom: 16px; }

/* 脾胃健康自测 · 通栏色带（2026-10-10 Molly 定：要看上去跟上面是"两块"） */
.course-selftest-band { background: var(--green-700); padding: 58px 0 64px; }
.course-selftest { max-width: 620px; }
.course-selftest-title { font-family: var(--font-serif); font-size: 19px; line-height: 1.5; color: var(--cream); }
.course-selftest-title span { font-size: 13px; letter-spacing: .04em; color: rgba(251, 245, 236, .68); }
.course-selftest-lead { margin-top: 16px; }
.course-selftest-lead p { font-size: 15.5px; line-height: 1.95; color: rgba(251, 245, 236, .9); }
.course-selftest-lead p + p { margin-top: 8px; }
.course-selftest-go { margin-top: 20px; }
.course-selftest-go a { display: inline-block; padding: 11px 28px; border-radius: 999px;
  background: var(--cream); color: var(--green-900); font-size: 14.5px; font-weight: 600; }
.course-selftest-go a:hover { background: var(--gold-500); }
.course-next-line { margin-top: 26px; max-width: 620px; font-size: 14.5px; line-height: 1.9; color: var(--ink-2); }
.course-next-line a { color: var(--green-700); font-weight: 600; border-bottom: 1px solid rgba(122, 139, 79, .45); }
.course-next-go { margin-top: 16px; }
.course-next-go a { display: inline-block; padding: 10px 26px; border-radius: 999px;
  background: var(--green-700); color: #fff; font-size: 14.5px; font-weight: 600; }
.course-next-go a:hover { background: var(--green-900); }

/* 第二组小标题（2026-10-09 加：十字中医之后的一组，驭膳厨医） */
.course-list-title-2 { margin-top: 46px; }

/* 系列课页 · 一页多节（2026-10-09 加：驭膳厨医） */
.lesson-item + .lesson-item { margin-top: 54px; }
.lesson-item { scroll-margin-top: 96px; }
.lesson-index-title { font-size: 13px; letter-spacing: .04em; color: var(--ink-2); margin-bottom: 10px; }
.lesson-index { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 34px; }
.lesson-index li { list-style: none; }
.lesson-index a { display: inline-flex; align-items: baseline; gap: 8px; padding: 8px 14px; border-radius: 999px;
  background: rgba(227, 178, 91, .14); border: 1px solid rgba(122, 139, 79, .16); font-size: 13.5px; color: var(--green-950); }
.lesson-index a span { font-size: 12px; color: var(--ink-2); }
.lesson-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 12px; margin-bottom: 14px; }
.lesson-no { font-size: 12px; letter-spacing: .16em; color: var(--gold-600); }
.lesson-title { font-family: var(--font-serif); font-size: 22px; line-height: 1.4; color: var(--green-950); margin: 0; }
.lesson-dur { font-size: 13px; color: var(--ink-2); }
.lesson-desc { margin: 14px 0 0; font-size: 14.5px; line-height: 1.85; color: var(--ink-2); }

@media (max-width: 1100px) { .course-list { grid-template-columns: 1fr; } }
@media (max-width: 860px) { .course-hero { padding: 56px 0 44px; } }
@media (max-width: 620px) {
  .course-item { grid-template-columns: 1fr; gap: 14px; padding: 14px; }
  .course-name { font-size: 18px; }
  .course-open p { font-size: 14.5px; }
  .course-answer p { font-size: 15.5px; }
  .course-answer p + p { font-size: 16.5px; }
  .lesson-item + .lesson-item { margin-top: 40px; }
  .lesson-title { font-size: 19px; }
  .br-sm { display: inline; }
}
