:root{--lesson-ink:#101716;--lesson-paper:#f0eee7;--lesson-surface:rgba(255,255,255,.45);--lesson-line:rgba(16,23,22,.18);--lesson-accent:#38c3b0;--lesson-muted:#66706e;--lesson-dark:#111817}
html{overflow-x:clip}
body.lesson-page-standard{margin:0;overflow-x:clip;color:var(--lesson-ink);background:var(--lesson-paper);font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo",system-ui,sans-serif;line-height:1.78;word-break:keep-all}
.lesson-page-standard .page,.lesson-page-standard .wrap{width:100%;max-width:none;margin:0;padding:0 0 clamp(4rem,7vw,7rem);background:transparent;box-shadow:none}
.lesson-page-standard .topbar{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:5.5rem;margin:0;padding:0 5vw;color:var(--lesson-ink);background:var(--lesson-paper);border:0;border-bottom:1px solid var(--lesson-line);border-radius:0}
.lesson-page-standard .topbar .brand{color:var(--lesson-ink)}.lesson-page-standard .topbar .brand-mark{border-radius:0;background:var(--lesson-dark)}
.lesson-page-standard .environment{color:var(--lesson-muted);background:transparent;border-color:var(--lesson-line);border-radius:0}
.lesson-page-standard .hero,.lesson-page-standard .top{position:relative;overflow:hidden;width:100%;min-height:0;margin:0;padding:clamp(4rem,7vw,7rem) max(5vw,calc((100vw - 1200px)/2)) clamp(4rem,7vw,6rem);color:var(--lesson-ink);background:var(--lesson-paper);border:0;border-bottom:1px solid var(--lesson-line);border-radius:0;box-shadow:none;text-align:left}
.lesson-page-standard .hero::before,.lesson-page-standard .top::before{position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#38c3b0 0 18%,transparent 18% 35%,#e67a62 35% 53%,transparent 53% 70%,#5e91c9 70% 88%,transparent 88%);content:""}
.lesson-page-standard .hero::after,.lesson-page-standard .top::after{display:none}.lesson-page-standard .hero>*,.lesson-page-standard .top>*{position:relative;z-index:1}
.lesson-page-standard .eyebrow{margin-bottom:1.4rem;color:var(--lesson-accent);font-size:.72rem;letter-spacing:.2em}
.lesson-page-standard .hero h1,.lesson-page-standard .top h1{max-width:920px;margin:0;color:var(--lesson-ink);font-family:Georgia,"Times New Roman","Noto Serif KR",serif;font-size:clamp(2.5rem,5vw,5.3rem);font-weight:600;line-height:1.02;letter-spacing:-.04em;text-wrap:balance}
.lesson-page-standard .hero .lead,.lesson-page-standard .hero .desc,.lesson-page-standard .hero p,.lesson-page-standard .top p{max-width:760px;margin-top:1.8rem;color:var(--lesson-muted);font-size:clamp(.95rem,1.25vw,1.08rem);line-height:1.8}
.lesson-page-standard .hero-flow{margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--lesson-line)}
.lesson-page-standard .hero-flow span{padding:0 1rem 0 0;color:var(--lesson-muted);background:transparent;border:0;border-radius:0;font-size:.72rem;letter-spacing:.07em}
.lesson-page-standard .chapter-purpose,.lesson-page-standard .goal-grid,.lesson-page-standard .toc,.lesson-page-standard .section,.lesson-page-standard .footer{width:min(1200px,90vw);margin-right:auto;margin-left:auto}
.lesson-page-standard .chapter-purpose{margin-top:clamp(4rem,7vw,7rem)}
.lesson-page-standard .toc{margin-top:clamp(3rem,5vw,5rem);margin-bottom:0;padding:2rem;background:var(--lesson-surface);border-color:var(--lesson-line);border-radius:0}
.lesson-page-standard .section{position:relative;margin-bottom:0;padding:clamp(3.4rem,7vw,6.5rem) 0;border-top:1px solid var(--lesson-line)}
.lesson-page-standard .section::before{position:absolute;top:-1px;left:0;width:9rem;height:3px;background:var(--lesson-accent);content:""}
.lesson-page-standard .section h2{max-width:900px;margin-bottom:2.4rem;padding-bottom:0;color:var(--lesson-ink);border:0;font-family:Georgia,"Times New Roman","Noto Serif KR",serif;font-size:clamp(2rem,3.8vw,3.5rem);font-weight:600;line-height:1.08;letter-spacing:-.035em}
.lesson-page-standard .section-intro,.lesson-page-standard .section>p{max-width:850px}
.lesson-page-standard .purpose-card,.lesson-page-standard .concept-card,.lesson-page-standard .pipeline-step,.lesson-page-standard .exercise,.lesson-page-standard .prompt-box,.lesson-page-standard .callout,.lesson-page-standard .table-wrap,.lesson-page-standard details{background:var(--lesson-surface);border-color:var(--lesson-line);border-radius:0;box-shadow:none}
.lesson-page-standard .callout{border-left:4px solid var(--lesson-accent)}
.lesson-page-standard .table-wrap{max-width:100%;overflow-x:auto}.lesson-page-standard table{min-width:680px;border-top:2px solid var(--lesson-ink);border-bottom:1px solid var(--lesson-ink)}
.lesson-page-standard th,.lesson-page-standard td{border-color:var(--lesson-line)}
.lesson-page-standard .code-block,.lesson-page-standard pre{max-width:100%;border-radius:0;box-shadow:none}
.lesson-page-standard .footer{padding-top:2rem;border-top:1px solid var(--lesson-line);color:var(--lesson-muted)}
.lesson-page-standard .wrap>section,.lesson-page-standard .wrap>.intro,.lesson-page-standard .wrap>.verify,.lesson-page-standard .wrap>footer,body.lesson-page-standard>nav.toc,body.lesson-page-standard>main,body.lesson-page-standard>footer{width:min(1200px,90vw);max-width:1200px;margin-right:auto;margin-left:auto}
.lesson-page-standard .wrap>section,body.lesson-page-standard>main>section{position:relative;margin-bottom:0;padding:clamp(3.4rem,7vw,6.5rem) 0;border-top:1px solid var(--lesson-line);background:transparent;border-right:0;border-bottom:0;border-left:0;border-radius:0;box-shadow:none}
.lesson-page-standard .wrap>section::before,body.lesson-page-standard>main>section::before{position:absolute;top:-1px;left:0;width:9rem;height:3px;background:var(--lesson-accent);content:""}
.lesson-page-standard .wrap>section h2,body.lesson-page-standard>main>section h2.section-title{max-width:900px;color:var(--lesson-ink);font-family:Georgia,"Times New Roman","Noto Serif KR",serif;font-size:clamp(2rem,3.8vw,3.5rem);font-weight:600;line-height:1.08;letter-spacing:-.035em}
.lesson-page-standard .wrap>.intro{margin-top:clamp(3rem,5vw,5rem);margin-bottom:clamp(3rem,5vw,5rem)}
body.lesson-page-standard>nav.toc{margin-top:clamp(3rem,5vw,5rem);padding:2rem;background:var(--lesson-surface);border:1px solid var(--lesson-line);border-radius:0;box-shadow:none}
body.ai-guide-page.lesson-page-standard,body.ai-template-page.lesson-page-standard{color:var(--lesson-ink);background:var(--lesson-paper)}
.ai-guide-page.lesson-page-standard .course-nav{color:var(--lesson-ink);background:var(--lesson-paper);border-bottom-color:var(--lesson-line)}
.ai-guide-page.lesson-page-standard .course-nav a{color:var(--lesson-ink)}.ai-guide-page.lesson-page-standard .course-nav .brand-mark{color:#fff;background:var(--lesson-dark)}.ai-guide-page.lesson-page-standard .course-nav .nav-links a:hover{color:#071412;background:var(--lesson-accent)}
.ai-guide-page.lesson-page-standard .guide-nav{box-sizing:border-box;width:min(1200px,90vw);max-width:1200px;margin-right:auto;margin-left:auto}
.ai-guide-page.lesson-page-standard .course-hero{position:relative;min-height:0;padding:clamp(4rem,7vw,7rem) 0 clamp(4rem,7vw,6rem);color:var(--lesson-ink);background:var(--lesson-paper);border-bottom:1px solid var(--lesson-line)}
.ai-guide-page.lesson-page-standard .course-hero::before,body.ai-guide-page.lesson-page-standard>main>header::before,body.ai-template-page.lesson-page-standard main>header::before{position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#38c3b0 0 18%,transparent 18% 35%,#e67a62 35% 53%,transparent 53% 70%,#5e91c9 70% 88%,transparent 88%);content:""}
.ai-guide-page.lesson-page-standard .course-hero::after{display:none}.ai-guide-page.lesson-page-standard .course-hero .hero-inner{position:relative;z-index:1}
.ai-guide-page.lesson-page-standard .course-hero h1,body.ai-guide-page.lesson-page-standard>main>header h1,body.ai-template-page.lesson-page-standard main>header h1{max-width:920px;margin:0;color:var(--lesson-ink);font-family:Georgia,"Times New Roman","Noto Serif KR",serif;font-size:clamp(2.5rem,5vw,5.3rem);font-weight:600;line-height:1.02;letter-spacing:-.04em;text-wrap:balance}
.ai-guide-page.lesson-page-standard .course-hero p,.ai-guide-page.lesson-page-standard .breadcrumb,.ai-guide-page.lesson-page-standard .breadcrumb a,.ai-guide-page.lesson-page-standard .course-meta span{color:var(--lesson-muted)}
.ai-guide-page.lesson-page-standard .course-code,.ai-guide-page.lesson-page-standard .course-meta span{color:#0b7466;background:transparent;border-color:var(--lesson-line)}
.ai-guide-page.lesson-page-standard .guide,body.ai-guide-page.lesson-page-standard>main,body.ai-template-page.lesson-page-standard main{width:min(1200px,90vw);max-width:1200px;margin:clamp(3rem,5vw,5rem) auto;padding:0 0 clamp(4rem,7vw,7rem);background:transparent;box-shadow:none}
.ai-guide-page.lesson-page-standard .guide>article,body.ai-guide-page.lesson-page-standard>main>article{padding:0}
body.ai-guide-page.lesson-page-standard>main>header,body.ai-template-page.lesson-page-standard main>header{position:relative;margin:0 0 clamp(3rem,5vw,5rem);padding:clamp(4rem,7vw,7rem) 0 clamp(4rem,7vw,6rem);color:var(--lesson-ink);background:var(--lesson-paper);border-top:0;border-bottom:1px solid var(--lesson-line)}
body.ai-guide-page.lesson-page-standard>main>header p,body.ai-template-page.lesson-page-standard main>header p,body.ai-template-page.lesson-page-standard main>header>p:first-child{color:var(--lesson-muted)}
body.ai-guide-page.lesson-page-standard>main>header .course-links a{color:var(--lesson-ink);background:var(--lesson-surface);border-color:var(--lesson-line)}
body.ai-guide-page.lesson-page-standard>main>header .course-links a:hover,body.ai-guide-page.lesson-page-standard>main>header .course-links a:focus-visible{color:#fff;background:var(--lesson-dark);border-color:var(--lesson-dark)}
.ai-guide-page.lesson-page-standard .guide h2,.ai-guide-page.lesson-page-standard main>article h2,.ai-template-page.lesson-page-standard main>h2{position:relative;max-width:900px;margin-top:clamp(3.4rem,7vw,6.5rem);padding-top:clamp(2.4rem,5vw,4rem);padding-bottom:0;color:var(--lesson-ink);border-top:1px solid var(--lesson-line);border-bottom:0;font-family:Georgia,"Times New Roman","Noto Serif KR",serif;font-size:clamp(2rem,3.8vw,3.5rem);font-weight:600;line-height:1.08;letter-spacing:-.035em}
.ai-guide-page.lesson-page-standard .guide h2::before,.ai-guide-page.lesson-page-standard main>article h2:not(.part-title)::before,.ai-template-page.lesson-page-standard main>h2::before{position:absolute;top:-1px;left:0;width:9rem;height:3px;margin:0;background:var(--lesson-accent);content:""}
.ai-guide-page.lesson-page-standard main>article h2.part-title{color:#fff;background:var(--lesson-dark);border-top:0}
body.course-home-lesson-standard{color:var(--lesson-ink);background:var(--lesson-paper)}
.course-home-lesson-standard .course-nav{color:var(--lesson-ink);background:var(--lesson-paper);border-color:var(--lesson-line)}.course-home-lesson-standard .nav-links a{color:var(--lesson-ink)}
.course-home-lesson-standard .course-hero{min-height:auto;padding:clamp(4rem,7vw,7rem) 0 clamp(4rem,7vw,6rem);color:var(--lesson-ink);background:var(--lesson-paper);border-bottom:1px solid var(--lesson-line)}
.course-home-lesson-standard .course-hero::before{position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#38c3b0 0 18%,transparent 18% 35%,#e67a62 35% 53%,transparent 53% 70%,#5e91c9 70% 88%,transparent 88%);content:""}
.course-home-lesson-standard .course-hero::after{display:none}.course-home-lesson-standard .breadcrumb,.course-home-lesson-standard .course-hero p,.course-home-lesson-standard .course-meta span{color:var(--lesson-muted)}
.course-home-lesson-standard .course-code{color:var(--lesson-accent)}.course-home-lesson-standard .course-hero h1{max-width:920px;color:var(--lesson-ink);font-size:clamp(2.5rem,5vw,5.3rem);line-height:1.02}
.course-home-lesson-standard .content{padding:clamp(4rem,7vw,7rem) 0}.course-home-lesson-standard .material-card{min-height:22rem}
@media(max-width:700px){.lesson-page-standard .topbar{grid-template-columns:1fr;min-height:5rem;padding:1rem;gap:.75rem}.lesson-page-standard .hero,.lesson-page-standard .top{padding:4rem 1rem}.lesson-page-standard .hero h1,.lesson-page-standard .top h1{font-size:2.5rem}.lesson-page-standard .chapter-purpose,.lesson-page-standard .goal-grid,.lesson-page-standard .toc,.lesson-page-standard .section,.lesson-page-standard .footer,.lesson-page-standard .wrap>section,.lesson-page-standard .wrap>.intro,.lesson-page-standard .wrap>.verify,.lesson-page-standard .wrap>footer,body.lesson-page-standard>nav.toc,body.lesson-page-standard>main,body.lesson-page-standard>footer{width:calc(100% - 2rem)}.lesson-page-standard .chapter-purpose,.lesson-page-standard .goal-grid,.lesson-page-standard .pipeline,.lesson-page-standard .rubric,.lesson-page-standard .grid-2,.lesson-page-standard .compare{grid-template-columns:1fr}.lesson-page-standard table{min-width:640px}.course-home-lesson-standard .course-hero{min-height:auto;padding:4rem 0}.course-home-lesson-standard .course-hero h1{font-size:2.5rem}.course-home-lesson-standard .material-card{min-height:19rem}.ai-guide-page.lesson-page-standard .course-hero{padding:4rem 0}.ai-guide-page.lesson-page-standard .course-hero h1,body.ai-guide-page.lesson-page-standard>main>header h1,body.ai-template-page.lesson-page-standard main>header h1{font-size:2.5rem}.ai-guide-page.lesson-page-standard .guide-nav,.ai-guide-page.lesson-page-standard .guide,body.ai-guide-page.lesson-page-standard>main,body.ai-template-page.lesson-page-standard main{width:calc(100% - 2rem)}body.ai-guide-page.lesson-page-standard>main>header,body.ai-template-page.lesson-page-standard main>header{padding:4rem 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{body.lesson-page-standard{background:#fff;font-size:10.5pt}.lesson-page-standard .topbar,.lesson-page-standard .toc{display:none!important}.lesson-page-standard .hero{padding:1.5rem 0 2rem;color:#111;background:#fff;border-bottom:3px solid #111}.lesson-page-standard .hero h1,.lesson-page-standard .hero .lead,.lesson-page-standard .hero .desc{color:#111}.lesson-page-standard .section{padding:2rem 0}.lesson-page-standard .section,.lesson-page-standard .callout,.lesson-page-standard .table-wrap,.lesson-page-standard .code-block{break-inside:avoid}.lesson-page-standard .footer{display:none}.ai-guide-page.lesson-page-standard main>article h2.part-title{color:#111;background:#eee;border-top:1px solid #777}@page{size:A4;margin:16mm}}
