:root{--paper:#f8f8e8;--paper-2:#efedd4;--panel:#fbfbf2;--line:#d9d5b3;--rule:#eceadb;--field:#b9b594;--ink:#222;--muted:#666;--faint:#999;--blue:#006699;--blue-dark:#004477;--blue-soft:#eef6fa;--nav:#003399;--note:#ffffdd;--note-line:#e6d98a;--mark:#fff3b8;--mark-line:#d9b400;--ok:#2e7d32;--error:#a3321b;--radius:4px;--font-ko:"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif;--font:Verdana,Geneva,var(--font-ko)}body,html{overscroll-behavior:none;margin:0}html{height:100%}body{min-height:100%;display:flex;flex-direction:column;font-family:var(--font);font-size:15px;background-color:var(--paper);color:var(--ink);word-break:keep-all;overflow-wrap:break-word}a{text-underline-offset:2px}button,input,textarea{font-family:var(--font)}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:0;background:var(--blue);color:#fff;padding:8px 16px;z-index:10001;font-size:14px;text-decoration:none}.skip-link:focus{top:0}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hidden{display:none}.list-unstyled{list-style:none}.muted{color:var(--muted);font-weight:400}kbd{font:11px var(--font);border:1px solid #c9c5a3;border-bottom-width:2px;border-radius:3px;padding:0 4px;background:#fff;color:var(--ink)}.wrapper{display:flex;flex:1 0 auto}.sidebar{width:277px;background-color:var(--paper);border-right:1px solid #ccc;padding:20px;box-sizing:border-box;position:fixed;top:0;left:0;height:100vh;overflow-y:auto}.sidebar-content{box-sizing:border-box;position:relative}.logo-menu-wrap{display:flex;justify-content:space-between;align-items:center}.site-name{font-size:17px;font-weight:700;margin:0;padding-bottom:5px;border-bottom:1px solid #bbb;flex:1}.site-name a{color:var(--ink);text-decoration:none}.mobile-menu{display:none;flex-direction:column;justify-content:space-between;width:23px;height:16px;cursor:pointer;background:0 0;border:none;padding:0}.mobile-menu span{display:block;height:2px;width:100%;background-color:#333;border-radius:2px;transition:transform .2s ease,opacity .2s ease}.continue-box{display:block;margin:16px 0 0;padding:9px 12px;border:1px solid var(--blue);border-radius:var(--radius);background:#fff;color:var(--blue);font-size:12px;line-height:1.4;text-decoration:none}.continue-box:hover{background:var(--blue-soft)}.continue-box[hidden]{display:none}.continue-title{display:block;font-size:13px;font-weight:700;color:var(--blue-dark)}.sidebar-links{list-style:none;padding-left:0;margin:16px 0 0}.sidebar-links li{margin:0 0 4px}.sidebar-links a{display:flex;align-items:center;gap:10px;padding:6px 10px;margin:0 -10px;border-radius:var(--radius);color:var(--nav);font-size:14px;text-decoration:none}.sidebar-links a:hover{background:var(--paper-2)}.sidebar-links a[aria-current=page]{background:var(--paper-2);font-weight:700}.sidebar-links a[aria-current=page] span{text-decoration:none}.icon{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sidebar-links .icon{color:var(--blue)}.donate-section{margin-top:20px;padding-top:12px;border-top:1px solid #bbb}.donate-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;color:#333;text-decoration:none;border-radius:var(--radius);font-weight:700;font-size:13px;border:1px solid #c69a2e;background:linear-gradient(#ffe49a,#fc6);box-shadow:0 1px 0 #fff inset,0 1px 0 rgba(0,0,0,.06)}.donate-btn .icon{color:#a0521d}.donate-btn:hover{background:#fd8;border-color:#983;color:#000}.main-content{flex-grow:1;padding:40px;background-color:#fff;max-width:800px;margin-left:277px;font-size:15px;line-height:1.65}:where(.main-content) h1{font-size:26px;line-height:1.3;letter-spacing:-.2px;margin:0 0 12px}:where(.main-content) h2{font-size:20px;line-height:1.3;margin:30px 0 16px}:where(.main-content) h3{font-size:16px;margin:22px 0 8px}:where(.main-content) p{line-height:1.65;margin:16px 0}:where(.main-content) li{line-height:1.65;margin-bottom:10px}:where(.main-content) a{color:var(--blue);text-decoration:underline}:where(.main-content) a:hover{color:var(--blue-dark)}.main-content .list-unstyled{padding-left:30px}.getting-started{margin-left:20px;margin-bottom:20px}.lede{font-size:16px}.note{background:var(--note);border:1px solid var(--note-line);border-radius:var(--radius);padding:12px 16px;margin:20px 0}.note ul{margin:8px 0 0}.note li:last-child{margin-bottom:0}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid var(--blue);border-radius:var(--radius);font:bold 14px/1.3 var(--font);text-decoration:none;cursor:pointer}.btn svg{width:13px;height:13px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.btn small{font-weight:400;font-size:12px;opacity:.85}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}.btn-secondary{background:#fff;color:var(--blue);font-weight:400}.btn-secondary:hover{background:var(--blue-soft);color:var(--blue-dark)}.btn-lg{padding:10px 18px;font-size:15px}.btn-sm{padding:5px 10px;font-size:13px}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.link-btn{background:0 0;border:0;padding:0;color:var(--blue);font:13px var(--font);text-decoration:underline;cursor:pointer}.btn .i-pause,.btn .i-play,.cta-row .btn svg,.i-pause,.i-play{fill:currentColor;stroke:none}.pill{display:inline-flex;align-items:center;padding:6px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--blue);font-size:13px;text-decoration:none}.pill:hover{background:var(--paper)}.meter{display:block;height:5px;background:var(--paper-2);border-radius:3px;overflow:hidden;margin:0 0 18px}.meter>i{display:block;height:100%;width:0;background:var(--blue)}.crumbs{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;font-size:13px;color:var(--muted);margin:0 0 6px}.crumbs a{color:var(--blue);text-decoration:none}.crumbs a:hover{text-decoration:underline}.fold{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);margin:0 0 20px}.fold summary{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:700;cursor:pointer;list-style:none}.fold summary::-webkit-details-marker{display:none}.fold summary::before{content:"";width:0;height:0;border-left:5px solid var(--muted);border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .15s ease}.fold[open] summary::before{transform:rotate(90deg)}.fold summary small{margin-left:auto;font-weight:400;font-size:13px;color:var(--muted)}.fold ol{margin:0;padding:0 18px 12px 38px;font-size:14px}.fold li{margin:0 0 6px}.fold-body{padding:0 16px 4px;font-size:14px}.fold-body p{margin:0 0 12px}.facts{display:flex;flex-wrap:wrap;gap:6px 20px;list-style:none;margin:0 0 22px;padding:10px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-size:13px;color:#444}:where(.main-content) .facts li{margin:0}.facts b{color:var(--ink)}.check{display:inline-flex;align-items:center;gap:6px;color:var(--ink);cursor:pointer;user-select:none}.check input{width:14px;height:14px;margin:0;accent-color:var(--blue)}.lesson-head h1{margin-bottom:6px}.lesson-context{color:#444;font-style:italic;margin:0 0 16px}.day-nav{display:flex;justify-content:space-between;gap:8px;margin:12px 0 18px}.day-nav .pill[rel=next]{margin-left:auto}.dialogue>h2{margin:24px 0 12px}.audio-soon{color:#555;font-style:italic;font-size:14px;margin:-4px 0 14px}.course-page .audio-soon{margin:-6px 0 20px}.studybar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin:0 0 6px;font-size:13px}.play-all{padding:4px 11px;font-size:13px}.play-all .i-pause,.play-all[aria-pressed=true] .i-play{display:none}.play-all[aria-pressed=true] .i-pause{display:block}.play-all svg{width:10px;height:10px}.seg{display:inline-flex;align-items:baseline;gap:2px;color:var(--muted)}.seg-label{margin-right:4px}.seg button{font:13px var(--font);padding:2px 4px;margin:0;border:0;background:0 0;color:var(--blue);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.seg button:hover{color:var(--blue-dark)}.seg button[aria-pressed=true]{color:var(--ink);font-weight:700;text-decoration:none;cursor:default}.keys{font-size:11px;color:var(--faint);margin:0 0 12px}.keys kbd{font-size:11px;border:0;padding:0;background:0 0;color:var(--muted);font-weight:700}.no-js .done-box,.no-js .keys,.no-js .line-side,.no-js .play,.no-js .studybar{display:none}.lines{list-style:none;margin:0 0 24px;padding:0;border-top:1px solid var(--rule)}.line{display:grid;grid-template-columns:34px minmax(0,1fr) auto;column-gap:12px;align-items:start;padding:12px 8px 12px 6px;border-bottom:1px solid var(--rule);border-left:3px solid transparent;scroll-margin:90px 0 110px}:where(.main-content) .line{margin:0}.line.is-current{background:#fffbe3;border-left-color:#e8d57a}.play{grid-column:1;grid-row:1;width:28px;height:28px;margin:2px 0 0;padding:0;border-radius:50%;border:1px solid #aac3d0;background:#fff;color:var(--blue);display:grid;place-items:center;cursor:pointer}.play:hover{border-color:var(--blue);background:var(--blue-soft)}.play svg{width:10px;height:10px}.play .i-play{margin-left:1px}.is-playing .play .i-play,.play .i-pause{display:none}.is-playing .play .i-pause{display:block}.is-playing .play{border-color:var(--blue);background:var(--blue);color:#fff}.line.has-error .play{border-color:var(--error);color:var(--error)}.line-no{grid-column:1;grid-row:1;justify-self:center;padding-top:3px;font-size:13px;color:var(--faint)}.line-text{grid-column:2;grid-row:1;min-width:0}:where(.main-content) .ko{font-size:19px;line-height:1.45;color:#111;margin:0;word-break:keep-all;overflow-wrap:break-word}:where(.main-content) .rom{display:none;font-size:14px;line-height:1.5;color:#7c6b2c;margin:2px 0 0;overflow-wrap:break-word}.show-rom .rom{display:block}:where(.main-content) .en{font-size:14px;line-height:1.5;color:var(--muted);margin:3px 0 0;transition:filter .15s ease,opacity .15s ease}.spk{margin-right:2px;color:var(--faint);font-size:15px;font-weight:700;vertical-align:1px}.spk::after{content:":"}.line-hidden{display:none;grid-column:2;grid-row:1;padding-top:7px;color:var(--muted)}.line-side{grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:center;gap:2px}.num{font-size:12px;color:var(--faint);padding-top:3px}.report-btn{display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:var(--radius);background:0 0;color:#aca889;cursor:pointer}.report-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}.report-btn:hover,.report-btn[aria-expanded=true]{color:var(--blue);background:var(--paper)}@media (hover:hover){.report-btn{opacity:0}.line:hover .report-btn,.report-btn:focus-visible,.report-btn[aria-expanded=true]{opacity:1}}.line audio{grid-column:2/-1;width:100%;max-width:320px;height:32px;margin-top:8px}.js .line audio{display:none}.hide-en .dialogue .en{filter:blur(5px);opacity:.7;cursor:pointer;user-select:none}.hide-en .dialogue .line.peek .en{filter:none;opacity:1}.listen-only .dialogue:not(.dialogue--text) .line-text{display:none}.listen-only .dialogue:not(.dialogue--text) .line-hidden{display:block}.report-form{grid-column:2/-1;margin:10px 0 2px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);font-size:13px}.report-form label{display:block;margin:0 0 6px}.report-form textarea{display:block;width:100%;box-sizing:border-box;min-height:64px;padding:6px 8px;border:1px solid var(--field);border-radius:var(--radius);font-size:14px;resize:vertical}.report-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:8px}:where(.main-content) .report-status{margin:8px 0 0;font-size:13px}.report-status.is-ok{color:var(--ok)}.report-status.is-error{color:var(--error)}.done-box{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px;border:1px dashed var(--line);border-radius:var(--radius);margin:0 0 18px}.btn-done{background:#fff;border-color:var(--ok);color:var(--ok)}.btn-done:hover{background:#f1f8f1}.btn-done[aria-pressed=true]{background:var(--ok);color:#fff}.btn-done svg{stroke-width:2.2}.done-box .when-done,.done-box.is-done .when-todo{display:none}.done-box.is-done .when-done{display:inline}:where(.main-content) .done-note{flex:1 1 260px;margin:0;font-size:13px;color:var(--muted)}.anki-box{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:14px 16px;margin:0 0 20px}.anki-box h2{font-size:16px;margin:0 0 4px}:where(.main-content) .anki-box p{font-size:13px;color:#555;margin:0 0 10px}.anki-box .btn-row{margin:0}.pagination{display:flex;justify-content:space-between;margin:30px 0 15px}.pagination a{font-size:15px;text-decoration:none;padding:5px;margin:-5px}.pagination .next{margin-left:auto}.support-break{margin:20px 0}.mini{position:fixed;left:0;right:0;bottom:0;z-index:10000;display:flex;align-items:center;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--line);box-shadow:0 -2px 8px rgba(0,0,0,.06);font-size:13px}.mini[hidden]{display:none}.mini-text{flex:1;min-width:0}.mini-text b{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-text span{color:var(--muted)}.mini-btn{width:38px;height:38px;flex:none;padding:0;border-radius:50%;border:1.5px solid var(--blue);background:#fff;color:var(--blue);display:grid;place-items:center;cursor:pointer}.mini-btn.main{background:var(--blue);color:#fff}.mini-btn svg{width:14px;height:14px;fill:currentColor}.mini-speed{flex:none;padding:5px 10px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--blue);font:bold 13px var(--font);cursor:pointer}.lesson-video-section{margin:1.5em 0}.lesson-video{max-width:760px;margin:0 auto;border:1px solid #c9c9b0;border-radius:6px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.12);background:#000}.lesson-video video{display:block;width:100%;height:auto;aspect-ratio:16/9}.video-caption{max-width:760px;margin:.6em auto 0;text-align:center;font-size:.9em;color:#555}.banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:14px 16px;margin:6px 0 22px}.banner-text{flex:1 1 320px}.banner-text small{display:block;margin-top:2px;font-size:13px;color:#555}.banner .btn{white-space:nowrap}.level-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 20px}@media (max-width:600px){.level-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.level-card{display:flex;flex-direction:column;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);text-decoration:none}.main-content a.level-card{color:var(--ink);text-decoration:none}.level-card:hover{background:var(--paper)}.cefr{display:inline-block;padding:1px 6px;border-radius:3px;background:var(--blue);color:#fff;font-size:11px;font-weight:700}.level-card b{display:block;margin:6px 0 2px;font-size:15px;color:var(--nav)}.level-card small{display:block;font-size:12px;line-height:1.5;color:var(--muted)}.level-card .cefr{align-self:flex-start}.level-card .meter{height:4px;margin:auto 0 0}.level-card>small:not(.level-card-done){margin-bottom:8px}.level-card .level-card-done{margin-top:4px;font-size:11px;min-height:16px}.finder{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 18px}.no-js .finder{display:none}.search-field{flex:1 1 260px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--field);border-radius:var(--radius);background:#fff}.search-field:focus-within{outline:2px solid var(--blue);outline-offset:1px}.search-field svg{width:15px;height:15px;flex:none;fill:none;stroke:#888;stroke-width:1.5}.search-field input{flex:1;min-width:0;padding:9px 0;border:0;outline:0;background:0 0;font-size:15px;color:var(--ink)}.finder .check{font-size:13px;color:var(--muted)}:where(.main-content) .finder-status{flex-basis:100%;margin:0;font-size:13px;color:var(--muted)}.finder-status:empty{display:none}.level-block{margin-top:28px}.level-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;border-bottom:1px solid var(--line);padding-bottom:4px}.level-head h2{margin:0}.level-meta{font-size:13px;color:var(--muted)}.daylist{columns:2;column-gap:28px;list-style:none;margin:8px 0 8px;padding:0;font-size:14px}.daylist li{break-inside:avoid;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:baseline;gap:0 4px;padding:4px 4px 4px 0;border-bottom:1px dotted #e1dec6;line-height:1.45}:where(.main-content) .daylist li{margin:0}.daylist li[hidden]{display:none}.js .daylist.is-folded:not(.is-filtering)>.past-fold{display:none}.daylist a{display:grid;grid-template-columns:64px minmax(0,1fr);color:var(--nav);text-decoration:none}.daylist a:hover [itemprop=name]{text-decoration:underline}.main-content .daylist a{text-decoration:none}.daylist .d{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.daylist .tick{color:var(--ok);font-weight:700}.daylist .is-done .tick::before{content:"\2713"}.daylist li.is-next{background:var(--mark)}.daylist .soon{font-size:12px;color:#a19c70;white-space:nowrap}.more{display:inline-block;margin:6px 0 8px;padding:4px 0;border:0;background:0 0;color:var(--blue);font:13px var(--font);text-decoration:underline;cursor:pointer}.more[hidden],.no-js .more{display:none}.can-do{padding-left:22px}.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 20px}.cta-row .btn svg{width:12px;height:12px}.res-list{list-style:none;padding:0;margin:0 0 18px}.res-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid var(--rule)}:where(.main-content) .res-list li{margin:0}.res-name{font-weight:700}:where(.main-content) .res-what{grid-column:1;margin:0;font-size:13px;color:#555}.res-level{grid-column:2;grid-row:1/span 2;align-self:center;padding:1px 6px;border:1px solid var(--blue);border-radius:3px;color:var(--blue);font-size:11px;font-weight:700;white-space:nowrap}.way-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0 0 20px}.way-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:14px}.way-card h3{margin:0 0 4px}:where(.main-content) .way-card p{font-size:13px;color:#555;margin:0 0 10px}.footer{background-color:#ddd;text-align:center;padding:15px;font-size:12px;color:#444;border-top:1px solid #ccc;box-sizing:border-box;width:100%;z-index:1;position:relative}.footer p{margin:0}.footer-nav{margin-top:5px}.footer-nav ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;row-gap:6px;padding-left:0;margin:10px 0 0}.footer-nav li{white-space:nowrap}.footer-nav a{color:#444;text-decoration:none;font-size:12px;margin:0 7.5px}.footer-nav a:hover{text-decoration:underline}.footer-nav li:not(:last-child)::after{content:'|';color:#999}@media (max-width:768px){.wrapper{flex-direction:column}.main-content{margin-left:0;margin-top:46px;padding:20px;max-width:100%}.sidebar{width:100%;height:auto;padding:12px 20px;position:fixed;z-index:9999;background:#fff;border-right:none;border-bottom:1px solid #ccc;overflow:visible;transition:opacity .4s ease}.site-name{border-bottom:0;padding:0;font-size:18px}.mobile-menu{display:flex}.mobile-menu.open span:first-child{transform:rotate(45deg) translate(5px,5px)}.mobile-menu.open span:nth-child(2){opacity:0}.mobile-menu.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.sidebar-wrap{display:none}.sidebar-wrap.open{display:block;max-height:calc(100vh - 60px);overflow-y:auto;padding-bottom:6px}.sidebar-content{width:100%;z-index:1000}.menu-backdrop{position:fixed;inset:0;z-index:9998;background:rgba(40,38,20,.35)}.lede{font-size:15px}.studybar{gap:6px 18px;margin-bottom:12px}.seg button{padding:5px 6px}.keys{display:none}.line{grid-template-columns:32px minmax(0,1fr) auto;column-gap:10px;padding-right:2px}:where(.main-content) .ko{font-size:18px}.num{display:none}.daylist{columns:1}.banner .btn{flex:1 1 100%;justify-content:center}.pagination{margin:20px calc(50% - 50vw) 5px;padding:10px 20px}body.scrolled-300 .pagination{position:sticky;position:-webkit-sticky;bottom:0;z-index:1000;background:#fff;left:0;box-shadow:0 -2px 4px rgba(0,0,0,.08)}body.scrolled-300.at-original .pagination{box-shadow:none}body.mini-open{padding-bottom:64px}body.mini-open .pagination{visibility:hidden}}@media (min-width:769px){.mini{display:none}}@media (max-width:480px){.footer-nav ul{column-gap:4px}.footer-nav li:not(:last-child)::after{content:none}}@media (hover:none){.keys{display:none}}@media (min-width:769px) and (max-width:1024px){.sidebar{width:220px}.main-content{margin-left:220px}.daylist{columns:1}}@media (prefers-reduced-motion:reduce){*,::after,::before{transition:none!important}}