/* ============================================================
   乐侃创意沙龙 · 站点主题 v3（2026-10-29 重做）
   设计语言：克制的人文质感
     - 底色 暖白 #FBF9F5，卡片纯白 + 极淡描边
     - 主色 陶土红 #B3402B（只用于强调，不铺面）
     - 字色 墨 #1A1917 / 次级 #5A554D / 弱 #948D82
     - 圆角 10px，阴影极轻，靠留白和层次而非边框堆砌
   ============================================================ */

:root {
  --lk-ink: #1a1917;
  --lk-ink-2: #5a554d;
  --lk-sub: #948d82;
  --lk-line: #eae5dc;
  --lk-line-2: #f2eee7;
  --lk-bg: #fbf9f5;
  --lk-card: #ffffff;
  --lk-accent: #b3402b;
  --lk-accent-soft: #f5ebe8;
  --lk-gold: #b8873b;
}

html, body {
  background: var(--lk-bg) !important;
  color: var(--lk-ink);
  -webkit-font-smoothing: antialiased;
}

/* ================= 顶栏 ================= */
._app-header_vqtwa_1 { background: rgba(255,255,255,.92) !important; backdrop-filter: saturate(180%) blur(12px); }
._main-header_vqtwa_8,
._top-header_vqtwa_15 {
  background: transparent !important;
  border-bottom: 1px solid var(--lk-line-2) !important;
  box-shadow: none !important;
}
._main-header_vqtwa_8 { padding: 14px 0 !important; }
._main-header_vqtwa_8 img { filter: none !important; max-height: 38px; width: auto; }

/* 搜索框 */
._input_vqtwa_54, [class*="_input_"] input {
  background: #f5f2ec !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  height: 40px !important;
  font-size: 13.5px !important;
  transition: all .2s;
}
._input_vqtwa_54:focus-within, [class*="_input_"] input:focus {
  background: #fff !important;
  border-color: var(--lk-line) !important;
}

/* ================= 轮播 ================= */
._slider-box_7an91_1 {
  border-radius: 14px !important;
  overflow: hidden;
  margin-top: 22px;
  box-shadow: 0 2px 20px rgba(26,25,23,.05);
}
._slider-box_7an91_1 img {
  width: 100% !important;
  height: auto !important;
  max-height: 440px !important;
  aspect-ratio: 16 / 9;
  object-fit: cover !important;
}

/* ================= 三宫格板块入口 ================= */
.lk-sections {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin: 34px 0 10px;
}
.lk-section {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 28px 28px 26px;
  background: #fff;
  border: 1px solid var(--lk-line-2);
  border-radius: 14px;
  text-decoration: none;
  overflow: hidden;
  transition: transform .22s cubic-bezier(.2,.8,.3,1), box-shadow .22s, border-color .22s;
}
.lk-section::before {
  content: "";
  position: absolute; left: 0; top: 0; bottom: 0;
  width: 3px;
  background: var(--lk-accent);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform .28s ease;
}
.lk-section:hover {
  transform: translateY(-4px);
  border-color: var(--lk-line);
  box-shadow: 0 16px 40px rgba(26,25,23,.09);
}
.lk-section:hover::before { transform: scaleY(1); }

.lk-section-mark {
  width: 46px; height: 46px;
  border-radius: 12px;
  margin-bottom: 18px;
  position: relative;
}
.lk-section-mark::after {
  content: "";
  position: absolute; inset: 13px;
  border: 2px solid rgba(255,255,255,.9);
  border-radius: 4px;
}
.lk-mark-salon  { background: linear-gradient(140deg, #b3402b, #cf6a52); }
.lk-mark-news   { background: linear-gradient(140deg, #3f6b52, #5f9070); }
.lk-mark-report { background: linear-gradient(140deg, #6a6155, #938876); }

.lk-section-name {
  font-size: 19px; font-weight: 600;
  color: var(--lk-ink); letter-spacing: .5px;
}
.lk-section-desc {
  margin-top: 9px;
  font-size: 13px; color: var(--lk-sub); line-height: 1.65;
}
.lk-section-count {
  margin-top: 16px;
  font-size: 12px; color: var(--lk-accent);
  letter-spacing: .4px;
  padding: 3px 10px;
  background: var(--lk-accent-soft);
  border-radius: 999px;
  display: inline-block;
}

/* ================= 精选区块标题 ================= */
._index-section-box_1dpgl_1 { margin-top: 52px; }
._index-section-title_1dpgl_5 {
  display: flex; align-items: center; justify-content: space-between;
  padding-bottom: 16px; margin-bottom: 26px;
  position: relative;
}
._index-section-title_1dpgl_5::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0;
  height: 1px; background: linear-gradient(90deg, var(--lk-line), transparent);
}
._index-section-title-text_1dpgl_10 {
  font-size: 21px; font-weight: 600; color: var(--lk-ink);
  letter-spacing: .6px;
  display: flex; align-items: center; gap: 11px;
}
._index-section-title-text_1dpgl_10::before {
  content: ""; display: block;
  width: 3px; height: 18px;
  background: var(--lk-accent);
  border-radius: 2px;
}

/* ================= 课程卡片 ================= */
._index-section-body_1dpgl_17 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}
.vod-course-item { min-width: 0; }

._vod-course-item-comp_1wv1j_1 {
  height: auto !important;
  display: flex !important;
  flex-direction: column;
  background: #fff !important;
  border: 1px solid var(--lk-line-2) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 2px rgba(26,25,23,.03) !important;
  transition: transform .22s cubic-bezier(.2,.8,.3,1), box-shadow .22s, border-color .22s !important;
}
._vod-course-item-comp_1wv1j_1:hover {
  transform: translateY(-4px);
  border-color: var(--lk-line) !important;
  box-shadow: 0 18px 38px rgba(26,25,23,.10) !important;
}

/* 封面：16:9 满宽，裁切填充 */
._vod-course-thumb_1wv1j_12 {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  border-radius: 0 !important;
  overflow: hidden;
  background: #f4f1ea;
  flex: 0 0 auto;
}
._vod-course-thumb_1wv1j_12,
._vod-course-thumb_1wv1j_12 > div,
._vod-course-thumb_1wv1j_12 [class*="thumb-bar"] { width: 100% !important; }

/* 文字区 */
._vod-course-body_1wv1j_26 {
  padding: 14px 15px 16px !important;
  display: flex !important;
  flex-direction: column;
  flex: 1 1 auto;
}

/* 标题：关键修复 —— 干掉原生的 margin-bottom:20px */
._vod-course-title_1wv1j_34 {
  width: 100% !important;
  height: auto !important;
  margin: 0 0 10px 0 !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  color: var(--lk-ink) !important;
  white-space: normal !important;
  text-overflow: clip !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.85em;
  text-align: left;
}

/* 底部信息行 */
._vod-course-info_1wv1j_48 {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: auto !important;
  padding-top: 0 !important;
  min-height: 18px;
}
._vod-course-sub_1wv1j_55 {
  color: var(--lk-sub) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  background: #f7f4ee;
  padding: 2px 8px;
  border-radius: 4px;
  white-space: nowrap;
}
._vod-course-charge_1wv1j_67 {
  color: var(--lk-accent) !important;
  font-weight: 600 !important;
  font-size: 13.5px !important;
  letter-spacing: .2px;
}

/* ================= 课程列表页：分类 tab ================= */
._category-box_1vnzs_1 {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--lk-line-2) !important;
  padding: 6px 0 0 !important;
  margin-bottom: 28px !important;
}
._item_1vnzs_29, ._active-item_1vnzs_49 {
  font-size: 14px !important;
  padding: 10px 18px !important;
  border-radius: 8px 8px 0 0 !important;
  transition: all .18s;
}
._active-item_1vnzs_49 {
  color: var(--lk-accent) !important;
  font-weight: 600 !important;
  position: relative;
}
._active-item_1vnzs_49::after {
  content: ""; position: absolute; left: 18px; right: 18px; bottom: 0;
  height: 2px; background: var(--lk-accent); border-radius: 2px 2px 0 0;
}

/* 二级分类行 */
._category-box_14b2m_1 {
  background: transparent !important;
  border: none !important;
  margin-bottom: 24px !important;
}
._active-item_14b2m_34 {
  background: var(--lk-accent) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 5px 14px !important;
  font-size: 12.5px !important;
}

/* 列表网格 */
._list-box_4noe9_1 { row-gap: 26px !important; column-gap: 22px !important; }

/* ================= 课程详情页 ================= */
._course-info_12lp8_1 {
  background: #fff !important;
  border: 1px solid var(--lk-line-2) !important;
  border-radius: 14px !important;
  padding: 28px !important;
  box-shadow: 0 1px 2px rgba(26,25,23,.03);
}
._course-info-title_12lp8_40 {
  font-size: 25px !important;
  font-weight: 600 !important;
  color: var(--lk-ink) !important;
  line-height: 1.45 !important;
  letter-spacing: .3px;
}
._desc_12lp8_61 {
  font-size: 14px !important;
  color: var(--lk-ink-2) !important;
  line-height: 1.9 !important;
  margin-top: 14px !important;
}
._course-thumb_12lp8_16 {
  width: 340px !important;
  aspect-ratio: 16 / 9;
  border-radius: 10px !important;
  overflow: hidden;
  background: #f4f1ea;
}
._course-thumb_12lp8_16 img { width: 100% !important; height: 100% !important; object-fit: cover !important; }

/* 详情页 tab */
._item-tab_12lp8_* { font-size: 15px !important; }

/* 正文 */
._coursr-desc_12lp8_123 {
  background: #fff !important;
  border: 1px solid var(--lk-line-2);
  border-radius: 14px;
  padding: 40px 46px !important;
  margin-top: 22px !important;
  line-height: 2 !important;
  font-size: 15.5px !important;
  color: var(--lk-ink-2) !important;
  box-shadow: 0 1px 2px rgba(26,25,23,.03);
}
._coursr-desc_12lp8_123 p { margin: 0 0 1.2em; }
._coursr-desc_12lp8_123 img {
  max-width: 100% !important; height: auto !important;
  border-radius: 8px; display: block; margin: 1.4em auto;
  box-shadow: 0 2px 12px rgba(26,25,23,.06);
}
._coursr-desc_12lp8_123 h2,
._coursr-desc_12lp8_123 h3 {
  color: var(--lk-ink) !important; font-weight: 600 !important;
  margin: 1.6em 0 .75em !important; line-height: 1.55 !important;
}
._coursr-desc_12lp8_123 h2 { font-size: 19px !important; }
._coursr-desc_12lp8_123 h3 { font-size: 16.5px !important; }
._coursr-desc_12lp8_123 blockquote {
  border-left: 3px solid var(--lk-accent);
  background: var(--lk-accent-soft);
  padding: 12px 18px; margin: 1.2em 0;
  border-radius: 0 6px 6px 0;
  color: var(--lk-ink-2);
}

/* 按钮 */
._buy-button_12lp8_93 {
  background: var(--lk-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  font-size: 14.5px !important;
  padding: 11px 26px !important;
  font-weight: 500 !important;
  transition: all .2s;
}
._buy-button_12lp8_93:hover { background: #99341f !important; }
._role-button_12lp8_107 {
  background: #fff !important;
  color: var(--lk-gold) !important;
  border: 1px solid var(--lk-gold) !important;
  border-radius: 8px !important;
  font-size: 14.5px !important;
  padding: 10px 24px !important;
}
._has-button_12lp8_82 {
  background: #f4f1ea !important;
  color: var(--lk-sub) !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  padding: 10px 22px !important;
}

/* ================= 课时列表 ================= */
[class*="chapter-name"] {
  font-size: 15.5px !important;
  font-weight: 600 !important;
  color: var(--lk-ink) !important;
  padding: 18px 0 12px !important;
  border-bottom: 1px solid var(--lk-line-2);
  letter-spacing: .3px;
}
[class*="video-item"] {
  padding: 14px 12px !important;
  margin: 0 -12px;
  border-bottom: 1px solid #f7f4ee;
  border-radius: 8px;
  transition: background .16s;
}
[class*="video-item"]:hover { background: #f8f5f0; }
[class*="video-title"] {
  font-size: 14.5px !important;
  color: var(--lk-ink) !important;
  line-height: 1.65 !important;
}
[class*="video-duration"] {
  font-size: 12.5px !important;
  color: var(--lk-sub) !important;
  font-variant-numeric: tabular-nums;
}

/* ================= 会员中心 ================= */
[class*="role-item"], [class*="vip-card"], [class*="role-box"] {
  border-radius: 14px !important;
  border: 1px solid var(--lk-line-2) !important;
  box-shadow: 0 1px 2px rgba(26,25,23,.03) !important;
}

/* ================= 页脚 ================= */
._footer-box_1dfpo_1 {
  margin-top: 72px;
  padding: 36px 0 30px !important;
  border-top: 1px solid var(--lk-line-2);
  color: var(--lk-sub);
  font-size: 12.5px;
}

/* ================= 响应式 ================= */
@media (max-width: 1240px) {
  ._index-section-body_1dpgl_17 { grid-template-columns: repeat(3, minmax(0,1fr)); }
  ._list-box_4noe9_1 { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width: 900px) {
  .lk-sections { grid-template-columns: 1fr; gap: 14px; }
  .lk-section { flex-direction: row; align-items: center; padding: 20px 22px; }
  .lk-section-mark { margin-bottom: 0; margin-right: 16px; width: 40px; height: 40px; flex: 0 0 auto; }
  .lk-section-mark::after { inset: 10px; }
  .lk-section-count { margin-top: 0; margin-left: auto; }
  ._index-section-body_1dpgl_17 { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
  ._list-box_4noe9_1 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; row-gap: 18px !important; column-gap: 14px !important; }
  ._coursr-desc_12lp8_123 { padding: 24px 20px !important; }
  ._course-thumb_12lp8_16 { width: 100% !important; }
}

/* 价格为空时不占位（charge=0 时组件会渲染空 div） */
._vod-course-charge_1wv1j_67:empty { display: none !important; }

/* 保证同一行卡片等高：标题固定两行高度 */
._vod-course-body_1wv1j_26 { min-height: 92px; justify-content: space-between; }
._vod-course-title_1wv1j_34 { min-height: 2.85em !important; max-height: 2.85em; }

/* 列表页卡片宽度自适应（原生写死 264px） */
._vod-course-thumb_1wv1j_12 { width: 100% !important; }
._vod-course-item-comp_1wv1j_1 { width: 100% !important; }

/* ================= 详情页正文：排版修正（2026-10-29）=================
   短书富文本自带 line-height:1.5em / font-size:16px / <br><br> 空行，
   已从 HTML 里清除内联样式，这里统一由 CSS 接管。
   目标：段距紧凑、行距舒适、图片不撑满。 */
._coursr-desc_12lp8_123 {
  font-size: 15.5px !important;
  line-height: 1.85 !important;
  color: #3b3833 !important;
  padding: 32px 38px !important;
}
._coursr-desc_12lp8_123 p {
  margin: 0 0 .85em !important;
  line-height: 1.85 !important;
}
._coursr-desc_12lp8_123 p:last-child { margin-bottom: 0 !important; }
._coursr-desc_12lp8_123 br { line-height: 1.85 !important; }
/* 连续 br 造成的空行压掉 */
._coursr-desc_12lp8_123 br + br { display: none; }
._coursr-desc_12lp8_123 span { font-size: inherit !important; font-family: inherit !important; color: inherit !important; line-height: inherit !important; }
._coursr-desc_12lp8_123 section { margin: 0 !important; }
._coursr-desc_12lp8_123 img {
  max-width: 88% !important;
  margin: 1.1em auto !important;
  border-radius: 8px;
  box-shadow: 0 2px 14px rgba(26,25,23,.07);
}
._coursr-desc_12lp8_123 h1,
._coursr-desc_12lp8_123 h2 { font-size: 19px !important; margin: 1.3em 0 .6em !important; }
._coursr-desc_12lp8_123 h3 { font-size: 16.5px !important; margin: 1.1em 0 .5em !important; }
._coursr-desc_12lp8_123 ul,
._coursr-desc_12lp8_123 ol { margin: .6em 0 1em !important; padding-left: 1.4em !important; }
._coursr-desc_12lp8_123 li { margin-bottom: .35em !important; line-height: 1.8 !important; }
/* 正文外层容器不要叠加额外间距 */
._coursr-desc_12lp8_123 > div { margin: 0 !important; }



/* 筹备中的板块：降低视觉权重 */
.lk-section-soon { opacity: .62; }
.lk-section-soon .lk-section-count { background: #f1ede6; color: #948d82; }
.lk-section-soon:hover { transform: none; box-shadow: 0 4px 14px rgba(26,25,23,.05); }

/* 会员方案 */
.membership{padding:56px 0}
.membership h1{font-size:34px;margin:8px 0 12px}
.membership-lead{color:#6b6560;margin:0 0 26px}
.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;max-width:820px}
.plan-card{border:1px solid #eae5dc;border-radius:14px;padding:24px;background:#fff}
.plan-card h2{font-size:20px;margin:0 0 10px}
.plan-price{color:#b3402b;margin:0 0 8px}
.plan-price b{font-size:30px}
.plan-price span{color:#948d82;font-size:13px}
.plan-scope{color:#5a554d;font-size:14px;margin:0 0 16px}
.plan-note{color:#948d82;font-size:13px;margin-top:10px}

/* 子分类与月份筛选 */
.subcategory-tabs{display:inline-flex;gap:4px;flex-wrap:wrap;margin:0 0 20px;padding:4px;background:#f4f1ea;border-radius:12px}
.subcategory-tabs button{border:0;background:transparent;border-radius:9px;padding:9px 16px;font-size:14px;color:#5a554d;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s}
.subcategory-tabs button:hover{color:#1a1917}
.subcategory-tabs button[aria-pressed="true"]{background:#fff;color:#1a1917;font-weight:600;box-shadow:0 1px 3px rgba(26,25,23,.12)}
.month-filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}
.month-filters button{border:1px solid #e7e2d9;background:#fff;border-radius:999px;padding:6px 12px;font-size:12.5px;color:#6b6560;cursor:pointer}
.month-filters button[aria-pressed="true"]{background:#b3402b;border-color:#b3402b;color:#fff}
.month-row .report-row-copy h3{font-size:21px}
.month-row .report-row-copy span{color:#8a8478}
