.lessons-intro{padding-bottom:42px}
.lesson-watch{margin-top:24px;font-size:.94rem;line-height:1.6}
.lesson-contents{padding:30px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.lesson-contents h2{font-size:1.3rem;margin-bottom:18px;scroll-margin-top:90px}
.lesson-contents ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.lesson-contents a{display:inline-block;padding:8px 0;color:var(--accent-link);font-size:1rem;line-height:1.5}
.lesson-contents a:hover,.lesson-return a:hover{color:var(--heading)}
.question-index{margin-top:6px}.question-index summary{width:fit-content;max-width:100%;padding:12px 0;min-height:44px;color:var(--accent-link);font-size:.94rem;line-height:1.5;cursor:pointer}.question-index summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.question-index ul{margin:8px 0 16px;padding-left:20px;border-left:1px solid var(--rule)}.question-index a{font-size:.94rem;overflow-wrap:anywhere}
.lesson-section{border-top:0}
.lesson-section h2{font-size:clamp(1.65rem,3.5vw,2.1rem);line-height:1.35;overflow-wrap:break-word}
.lesson-section h3{scroll-margin-top:90px}
.lesson-break{border:0;border-top:1px solid var(--rule);width:80px;margin:38px 0}
.lesson-section .lesson-return{margin-top:40px;font-size:.94rem}
.lesson-return a{color:var(--accent-link);padding:8px 0;display:inline-block}
@media print{
  .lesson-contents,.lessons-intro .guide-opening,.lesson-return{display:none}
  .lesson-section{break-before:page}
  .lesson-section h2{font-size:19pt}
  .lesson-break{border-color:#bbb;margin:22pt 0}
}
