/* 课程页 chrome · 与书拆同一套左对齐杂志头
   作用域：body.lys-course / body.ls-course
   不拆课程壳（sidebar + lesson）；只校正居中 Hero、重复顶栏、页脚。 */

body.lys-course,
body.ls-course{
  text-align:left;
}
body.lys-course a:focus-visible,
body.ls-course a:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:3px;
}
body.lys-course .cat-kicker,
body.ls-course .cat-kicker,
body.lys-course .course-kicker,
body.ls-course .course-kicker{
  display:inline-flex;align-items:center;gap:10px;
}
body.lys-course .cat-kicker::before,
body.ls-course .cat-kicker::before,
body.lys-course .course-kicker::before,
body.ls-course .course-kicker::before,
body.lys-course .course-hero .eyebrow::before,
body.ls-course .course-hero .eyebrow::before{
  content:"";width:28px;height:4px;background:var(--accent);border-radius:2px;display:inline-block;
}

/* 本页主题钮（portal 已有）；保留含目录的顶栏，只去掉重复 logo / 面包屑 */
body.lys-course .theme-toggle,
body.ls-course .theme-toggle,
body.lys-course .theme-btn,
body.ls-course .theme-btn,
body.lys-course .topnav-logo,
body.ls-course .topnav-logo,
body.lys-course .breadcrumb-mini,
body.ls-course .breadcrumb-mini{
  display:none !important;
}

/* 全屏居中 Hero → 杂志左文 */
body.lys-course .hero,
body.ls-course .hero,
body.lys-course section.hero,
body.ls-course section.hero,
body.lys-course .course-hero,
body.ls-course .course-hero{
  min-height:0 !important;
  text-align:left !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  margin-left:0 !important;
  margin-right:auto !important;
  max-width:1080px !important;
  padding-top:clamp(48px,8vh,88px) !important;
  padding-bottom:clamp(40px,6vh,72px) !important;
}
body.lys-course .course-hero{
  padding-top:12px !important;
  padding-bottom:36px !important;
}
body.lys-course .hero h1,
body.ls-course .hero h1{
  text-align:left !important;
  background:none !important;
  -webkit-text-fill-color:var(--text-primary) !important;
  color:var(--text-primary) !important;
  font-family:var(--serif);
}
body.lys-course .hero-sub,
body.ls-course .hero-sub,
body.lys-course .hero p,
body.ls-course .hero p{
  margin-left:0 !important;
  margin-right:0 !important;
  max-width:680px;
  text-align:left !important;
}
body.lys-course .hero-stats,
body.ls-course .hero-stats,
body.lys-course .badge-row,
body.ls-course .badge-row{
  justify-content:flex-start !important;
}
body.lys-course .badge,
body.ls-course .badge{
  color:var(--text-secondary) !important;
  border-color:var(--border) !important;
  background:var(--bg-card) !important;
}

/* 威科夫 / 海龟等 Tailwind 居中首屏 */
body.ls-course .text-center.max-w-3xl.mx-auto,
body.lys-course .text-center.max-w-3xl.mx-auto,
body.lys-course #page-home .text-center,
body.ls-course #page-home .text-center,
body.lys-course #content > div > .text-center,
body.ls-course #content > div > .text-center{
  text-align:left !important;
  margin-left:0 !important;
  margin-right:auto !important;
  max-width:1080px !important;
}
body.lys-course #page-home .mx-auto,
body.ls-course #page-home .mx-auto{
  margin-left:0 !important;
  margin-right:auto !important;
}
body.lys-course .content-page,
body.ls-course .content-page{
  margin-left:0 !important;
  margin-right:auto !important;
  text-align:left !important;
}
body.lys-course .section-divider,
body.ls-course .section-divider{
  margin-left:0 !important;
  margin-right:auto !important;
}

/* 目录标题不要再居中 */
body.lys-course h2[style*="text-align:center"],
body.ls-course h2[style*="text-align:center"],
body.lys-course p[style*="text-align:center"]{
  text-align:left !important;
}

body.lys-course footer,
body.ls-course footer,
body.lys-course footer.text-center,
body.ls-course footer.text-center{
  text-align:left !important;
}

/* ── 课程阅读系统：七门课共用同一套内容节奏 ── */
body.lys-course,
body.ls-course{
  --course-reading:860px;
  --course-gap:clamp(28px,4vw,48px);
  --course-card-pad:clamp(18px,3vw,28px);
  color:var(--text-primary);
  background:var(--bg-primary);
}
body.lys-course .main,
body.ls-course .main,
body.lys-course main#content,
body.ls-course main#content{
  min-width:0;
}
body.lys-course .main > :not(.hero):not(.course-hero),
body.ls-course .main > :not(.hero):not(.course-hero),
body.lys-course main#content > *,
body.ls-course main#content > *{
  max-width:var(--course-reading);
  margin-left:auto;
  margin-right:auto;
}
body.lys-course .main h1,
body.ls-course .main h1,
body.lys-course main#content h1,
body.ls-course main#content h1{
  font-family:var(--serif) !important;
  font-size:clamp(30px,4.2vw,44px) !important;
  line-height:1.2 !important;
  letter-spacing:-.02em;
  color:var(--text-primary) !important;
}
body.lys-course .main h2,
body.ls-course .main h2,
body.lys-course main#content h2,
body.ls-course main#content h2{
  font-family:var(--serif) !important;
  font-size:clamp(22px,2.8vw,28px) !important;
  line-height:1.35 !important;
  color:var(--text-primary) !important;
  margin-top:var(--course-gap);
  margin-bottom:16px;
  padding-bottom:10px;
  border-bottom:1px solid var(--border);
}
body.lys-course .main h3,
body.ls-course .main h3,
body.lys-course main#content h3,
body.ls-course main#content h3{
  font-family:var(--serif) !important;
  font-size:clamp(18px,2.2vw,22px) !important;
  line-height:1.4 !important;
  color:var(--text-primary) !important;
  margin-top:30px;
  margin-bottom:12px;
}
body.lys-course .main p,
body.ls-course .main p,
body.lys-course .main li,
body.ls-course .main li,
body.lys-course main#content p,
body.ls-course main#content p,
body.lys-course main#content li,
body.ls-course main#content li{
  line-height:1.8;
}
body.lys-course .card,
body.ls-course .card,
body.lys-course .vs-card,
body.ls-course .vs-card,
body.lys-course .lesson-card,
body.ls-course .lesson-card,
body.lys-course .chapter-card,
body.ls-course .chapter-card,
body.lys-course .content-card,
body.ls-course .content-card,
body.lys-course .tool-card,
body.ls-course .tool-card,
body.lys-course .quiz-card,
body.ls-course .quiz-card{
  background:var(--bg-card) !important;
  border:1px solid var(--border) !important;
  border-radius:var(--radius-lg,10px) !important;
  box-shadow:none !important;
}
body.lys-course .card,
body.ls-course .card,
body.lys-course .vs-card,
body.ls-course .vs-card,
body.lys-course .lesson-card,
body.ls-course .lesson-card,
body.lys-course .content-card,
body.ls-course .content-card{
  padding:var(--course-card-pad);
}
body.lys-course .card-grid,
body.ls-course .card-grid,
body.lys-course .lesson-grid,
body.ls-course .lesson-grid,
body.lys-course .module-grid,
body.ls-course .module-grid{
  gap:16px !important;
}
body.lys-course .sidebar,
body.ls-course .sidebar{
  border-right:1px solid var(--border) !important;
  box-shadow:none !important;
  background:var(--bg-secondary) !important;
}
body.lys-course .nav-group-title,
body.ls-course .nav-group-title{
  font-size:11px !important;
  letter-spacing:.08em;
  color:var(--text-muted) !important;
}
body.lys-course .nav-item,
body.ls-course .nav-item{
  min-height:40px;
  border-radius:var(--radius-sm,6px) !important;
  color:var(--text-secondary) !important;
}
body.lys-course .nav-item:hover,
body.ls-course .nav-item:hover{
  color:var(--text-primary) !important;
  background:var(--bg-hover) !important;
}
body.lys-course .nav-item.active,
body.ls-course .nav-item.active,
body.lys-course .nav-item.is-active,
body.ls-course .nav-item.is-active{
  color:var(--accent-2) !important;
  background:var(--accent-soft) !important;
  box-shadow:inset 3px 0 0 var(--accent);
}
body.lys-course table,
body.ls-course table{
  width:100%;
  border-collapse:collapse;
  font-size:14px;
}
body.lys-course th,
body.ls-course th,
body.lys-course td,
body.ls-course td{
  padding:11px 12px;
  border-bottom:1px solid var(--border);
  text-align:left;
}
body.lys-course th,
body.ls-course th{
  background:var(--bg-tertiary);
  color:var(--text-primary);
}

@media(max-width:760px){
  body.lys-course .main,
  body.ls-course .main,
  body.lys-course main#content,
  body.ls-course main#content{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  body.lys-course .main > :not(.hero):not(.course-hero),
  body.ls-course .main > :not(.hero):not(.course-hero),
  body.lys-course main#content > *,
  body.ls-course main#content > *{
    width:100%;
  }
  body.lys-course .card-grid,
  body.ls-course .card-grid,
  body.lys-course .lesson-grid,
  body.ls-course .lesson-grid,
  body.lys-course .module-grid,
  body.ls-course .module-grid{
    grid-template-columns:1fr !important;
  }
}
