:root{--background-primary:#fffefa;--background-secondary:#f5f3ed;--background-modifier-border:#e4e0d7;--text-normal:#292c2a;--text-muted:#6c706b;--text-faint:#92958c;--interactive-accent:#956c30;--font-text-size:15px;--ks-blue:53,97,166;--ks-gold:152,106,25}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--background-primary);color:var(--text-normal);font:15px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","Apple SD Gothic Neo","Noto Sans KR",sans-serif}a{color:#3561a6;text-decoration:none}a:hover{text-decoration:underline}button,select{font:inherit}button,select,summary,a{touch-action:manipulation}a:focus-visible,summary:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid #956c30;outline-offset:4px}.skip{position:fixed;left:16px;top:-70px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}.sidebar{position:fixed;inset:0 auto 0 0;width:220px;background:#f5f3ed;border-right:1px solid var(--background-modifier-border);padding:36px 23px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:11px;align-items:center;color:#333a32;font-size:16px;font-weight:700;line-height:1.3}.brand:hover{text-decoration:none}.brand-mark{background:#956c30;color:white;display:grid;place-items:center;border-radius:10px;width:36px;height:40px;font-size:24px;font-weight:500}.brand small{display:block;font-size:10px;font-weight:400;color:var(--text-muted);margin-top:6px}.course-label{font-size:10px;letter-spacing:.16em;color:#81867e;font-weight:650;margin:46px 12px 12px}nav{display:flex;flex-direction:column;gap:5px}nav a{padding:9px 12px;border-radius:6px;color:#5d645c;line-height:1.4}nav a span{display:block;font-size:14px}nav a small{font-size:10px;color:#858a81}nav a:hover{background:#eae8df;text-decoration:none}nav a.active{background:#e9e3d5;color:#79521d}nav a.active span{font-weight:650}.side-footer{margin-top:auto;color:#898d84;font-size:11px;line-height:1.8}.workspace{margin-left:220px}.toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:14px;background:#fffefaee;backdrop-filter:blur(10px);border-bottom:1px solid #efede6;min-height:58px;padding:10px 36px;font-size:12px;color:var(--text-muted)}.toolbar button{border:0;background:none;color:#6c706b;cursor:pointer;padding:2px 8px;font-size:20px}.toolbar #breadcrumb{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar select{font-size:12px;border:1px solid var(--background-modifier-border);background:#fffefa;border-radius:5px;max-width:230px;padding:6px 9px;color:#4c544a}.toolbar select[hidden],.jump-label[hidden]{display:none}main{max-width:1120px;margin:0 auto;padding:35px 52px 90px}article{overflow-wrap:anywhere}article h1{font-size:28px;line-height:1.35;color:#856022;font-weight:700;letter-spacing:-.035em}article h2{font-size:20px;line-height:1.45}article h3{font-size:17px}article h4{font-size:16px}article p{margin:10px 0}article strong{font-weight:650}article small{color:var(--text-muted);font-size:13px}article table{width:100%;border-collapse:collapse;margin:15px 0;font-size:15px}article th,article td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--background-modifier-border);vertical-align:top}article th{font-size:12px;color:var(--text-muted);background:#f5f3ed}article ul,article ol{padding-left:23px}article h1,article h2,article h3,article h4{scroll-margin-top:82px}.korean-study h2{border-left:0;padding-left:0}.callout{margin:16px 0}.callout-title{font-weight:650}.callout-content{min-width:0}.callout-content>:first-child{margin-top:10px}details{border:0}summary{cursor:pointer;list-style:none;font-size:13px;color:#677263;padding:8px 0}summary::-webkit-details-marker{display:none}summary:before{content:'›';display:inline-block;margin-right:8px;transition:transform .15s}details[open]>summary:before{transform:rotate(90deg)}details>.callout-content{padding:0 0 10px 17px}blockquote{border-left:2px solid #ddd7c9;padding-left:15px;margin-left:0}.embedded-note{max-width:100%}.pdf-preview{margin:12px 0}.pdf-preview>a{display:block;font-size:12px;margin-bottom:8px}.pdf-preview iframe{width:100%;height:620px;border:1px solid var(--background-modifier-border);border-radius:4px}.korean-word-lens .callout[data-callout="wl-root"] a{color:var(--wl-title)}.korean-word-lens details.callout>.callout-content{padding-left:0}.korean-word-lens details.callout>summary{display:block}.korean-word-lens details.callout>summary:before{font-weight:400}.korean-word-lens .callout[data-callout="wl-detail"]{margin-top:12px}.korean-word-lens .callout[data-callout="wl-root"]{min-width:0}.korean-word-lens .callout[data-callout="wl-header"]{margin-top:0}.korean-word-lens .callout[data-callout="wl-header"]>.callout-content{padding-top:8px}.korean-word-lens .callout[data-callout="wl-word"]>.callout-title{font-size:30px}.korean-word-lens .callout[data-callout="wl-roots"]>.callout-content{margin-top:14px}.korean-word-lens .callout[data-callout="wl-section"]>.callout-title{color:#75543e}.korean-vocab-soft-rows table{table-layout:fixed}.korean-vocab-soft-rows td:first-child{word-break:keep-all}.korean-vocab-soft-rows td:first-child a{font-size:16px}.korean-vocabulary-menu .vocab-root-summary{font-size:12px;color:#81857d}.korean-vocabulary-menu .vocab-book-example,.korean-vocabulary-menu .vocab-homework-example{display:block;line-height:1.8}.korean-vocabulary-menu td:nth-child(2)>br{display:none}.korean-vocabulary-menu .vocab-root-summary{display:block;margin-top:7px}.korean-course-preview h2{margin-top:38px}.korean-course-preview p>strong>a{font-size:15px}.korean-course-preview small{font-size:12px}.korean-subject>p:first-of-type{font-size:12px;color:var(--text-muted)}input[type=checkbox]{accent-color:#956c30}code{font-size:.9em;background:#f2f0e9;padding:2px 4px;border-radius:3px}pre{white-space:pre-wrap}.obsidian-link{color:#7a806f}hr{border:0;border-top:1px solid var(--background-modifier-border)}
@media(min-width:1500px){main{padding-top:50px}}
@media(max-width:980px){.sidebar{width:185px;padding:25px 14px}.workspace{margin-left:185px}main{padding:28px 28px 70px}.toolbar{padding:9px 18px}.korean-word-compact .callout[data-callout="wl-section"]{grid-template-columns:150px minmax(0,1fr)}.korean-word-compact .callout[data-callout="wl-section"]::before{left:calc(166px + (100% - 166px)*.25);width:calc((100% - 166px)*.5)}}
@media(max-width:700px){.sidebar{position:static;width:100%;padding:16px 18px;border:0;border-bottom:1px solid #e4e0d7}.brand{font-size:15px}.brand-mark{height:32px;width:31px;font-size:20px}.brand small,.course-label,.side-footer,nav a small{display:none}nav{flex-direction:row;overflow:auto;margin-top:16px;gap:4px;padding-bottom:2px}nav a{white-space:nowrap;padding:6px 9px}nav a span{font-size:12px}.workspace{margin:0}.toolbar{padding:8px 12px;min-height:50px;gap:6px}.toolbar select{max-width:160px}.jump-label{display:none}main{padding:24px 18px 60px}article h1{font-size:25px}.korean-word-compact .callout[data-callout="wl-section"]{grid-template-columns:1fr}.korean-word-compact .callout[data-callout="wl-section"]::before{left:25%;width:50%}.pdf-preview iframe{height:460px}.korean-word-lens .callout[data-callout="wl-root"]{border:0}.korean-vocab-soft-rows table{table-layout:auto}.korean-vocab-soft-rows td:first-child{padding-top:12px}.korean-vocab-soft-rows td:first-child a{font-size:18px}}

/* Web reading edition — warm paper, restrained ink, generous hierarchy. */
:root{--background-primary:#fdfcf9;--background-secondary:#f3f1eb;--background-modifier-border:#e7e3da;--text-normal:#30352f;--text-muted:#73776e}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.sidebar{width:232px;padding:34px 22px;background:#f2f0e9;border-right:1px solid #e8e4db}
.brand{letter-spacing:-.025em}.brand-mark{border-radius:11px;background:#7b6243;height:39px;width:36px;box-shadow:0 2px 4px #4236190d}.brand small{letter-spacing:.02em;color:#76796e}
.course-label{margin-top:48px;letter-spacing:.2em;color:#797e70}
nav{gap:4px}nav a{position:relative;border-radius:7px;padding:10px 13px;transition:background .15s,color .15s}nav a span{font-size:13px}nav a small{font-size:10px;letter-spacing:.02em}nav a.active{background:#e5e3d8;color:#4e5b46}nav a.active:before{content:'';position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:#78876a}
.side-footer{border-top:1px solid #deded2;padding-top:18px;font-size:10px;letter-spacing:.025em;color:#777e70}
.workspace{margin-left:232px}.toolbar{min-height:62px;background:#fdfcf9f2;padding-inline:34px;border-color:#eae7df}.toolbar button{width:32px;height:32px;padding:0;border-radius:50%;line-height:1;background:#f1efe8;font-size:17px}.toolbar button:hover{background:#e8e5da}.toolbar #breadcrumb{font-size:11px;letter-spacing:.01em}.toolbar select{background:#f8f7f2;padding:7px 12px;border-radius:6px;font-size:11px}.jump-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase}
main{max-width:1170px;padding:44px 54px 110px}
article h1{font-size:32px;font-weight:650;color:#4f594a;letter-spacing:-.045em;border-bottom:0;padding-bottom:0;margin:0 0 28px;line-height:1.35}
article h2{color:#59624f;letter-spacing:-.025em}article h3{letter-spacing:-.015em}article a{text-underline-offset:4px}article summary{color:#697461}article summary:hover{color:#3c5439}
.korean-course-preview>.overview-subjects{display:none}
.course-unit{position:relative;margin:32px 0 42px;border-top:1px solid #dddcd2;padding-top:23px}
.korean-course-preview .course-unit h2{display:flex;align-items:center;gap:16px;margin:0 0 20px;padding:0;font-size:19px;font-weight:650;border:0;color:#333e32}
.unit-number{font-family:Georgia,serif;font-weight:400;color:#a4aa98;font-size:34px;line-height:1;letter-spacing:-.04em}
.korean-course-preview .subject-preview{display:grid;grid-template-columns:215px minmax(0,1fr);align-items:baseline;gap:16px;padding:10px 0;margin:0;border-top:1px solid #efede7;line-height:1.6}
.subject-preview>br{display:none}.korean-course-preview .subject-preview strong>a{color:#596b50;font-size:13px;font-weight:600}.korean-course-preview .subject-preview small{font-size:12px;color:#777d72}.subject-preview small a{color:#657363}.korean-course-preview .unit-resources{font-size:11px;margin:14px 0 0}.unit-resources a{color:#8a806d}
.korean-subject>h2{margin:46px 0 18px;padding-top:20px;border-top:1px solid #dedfd5;font-size:22px}.korean-subject>h3{margin-top:27px;color:#766047;font-size:16px}
.korean-vocab-soft-rows table{border:0}.korean-vocab-soft-rows th{background:#eeeee6;font-size:11px;letter-spacing:.05em;padding:11px 14px;color:#72796b;font-weight:600}.korean-vocab-soft-rows td{padding:16px 14px;border:0;line-height:1.7}.korean-vocab-soft-rows tbody tr:nth-child(even){background:#f1f2ed}.korean-vocab-soft-rows tbody tr:nth-child(odd){background:transparent}.korean-vocab-soft-rows td:first-child a{font-size:16px;font-weight:650}.korean-vocabulary-menu .vocab-root-summary{font-size:12px;color:#767d72;line-height:1.6}.korean-vocabulary-menu .vocab-homework-example{margin-top:8px}
.korean-word-lens .callout[data-callout="wl-header"]{padding-bottom:25px;margin-bottom:23px;border-bottom:1px solid #e6e3da}.korean-word-lens .callout[data-callout="wl-word"]>.callout-title{font-size:32px;letter-spacing:-.035em}.korean-word-lens .callout[data-callout="wl-root"]>.callout-title{font-size:20px}.korean-word-lens .callout[data-callout="wl-roots"]>.callout-content{gap:22px}.korean-word-compact .callout[data-callout="wl-section"]{padding-block:22px;margin-block:0}.korean-word-compact .callout[data-callout="wl-section"]>.callout-title{font-size:13px;letter-spacing:.005em}.korean-word-compact .callout[data-callout="wl-section"]::before{border-color:#e5e3d9}.korean-word-lens .callout[data-callout="wl-detail"]>summary{font-size:11px;line-height:1.6}.korean-word-lens .callout[data-callout="wl-section"] td{padding-block:10px}.korean-word-lens details.callout:not([data-callout="wl-detail"]){font-size:13px}
@media(max-width:1100px) and (min-width:701px){.sidebar{width:195px;padding-inline:16px}.workspace{margin-left:195px}main{padding:34px 30px 80px}.korean-course-preview .subject-preview{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:700px){.sidebar{width:auto;padding:17px 18px 10px;border-bottom:1px solid #e4e1d7}.brand{font-size:14px}.brand-mark{width:30px;height:32px;border-radius:8px}nav{margin-top:14px;scrollbar-width:none}nav::-webkit-scrollbar{display:none}nav a{padding:9px 11px}nav a.active:before{top:auto;bottom:1px;left:11px;right:11px;width:auto;height:2px}nav a span{font-size:12px}.workspace{margin-left:0}.toolbar{min-height:54px;padding:8px 13px}.toolbar #breadcrumb{font-size:10px}.toolbar select{max-width:155px;font-size:11px}main{padding:28px 20px 70px}article h1{font-size:27px;margin-bottom:24px}.course-unit{margin:24px 0 32px;padding-top:20px}.korean-course-preview .course-unit h2{font-size:18px;gap:12px;margin-bottom:16px}.unit-number{font-size:29px}.korean-course-preview .subject-preview{display:block;padding:11px 0}.subject-preview small{display:block;margin-top:3px}.korean-vocab-soft-rows td{padding:9px 13px}.korean-vocab-soft-rows td:first-child{padding-top:16px}.korean-vocab-soft-rows td:last-child{padding-bottom:16px}.korean-word-lens .callout[data-callout="wl-word"]>.callout-title{font-size:29px}.korean-word-compact .callout[data-callout="wl-section"]{padding-block:19px}.korean-word-compact .callout[data-callout="wl-section"]>.callout-title{font-size:14px}.korean-word-lens .callout[data-callout="wl-roots"]>.callout-content{gap:15px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Navigation already lives in the sidebar and unit selector. */
.korean-study h1{border-bottom:0;box-shadow:none}
.korean-subject>h1+p{display:none}
.korean-subject>h2{border-bottom:0}
@media print{.sidebar,.toolbar,.skip{display:none}.workspace{margin:0}main{max-width:none;padding:0}a{color:inherit}details{break-inside:avoid}.course-unit{break-inside:avoid}}

/* Current Obsidian subject and grammar formats, adapted to semantic HTML. */
.kiip-subject-complete>h2{border-top:0;border-bottom:1px solid color-mix(in srgb,var(--subject-accent) 25%,transparent);padding-top:0}
.kiip-subject-complete>h3{color:var(--subject-accent)}
.kiip-subject-complete.subject-listening>p>strong:first-child{color:var(--subject-accent);font-size:.9em}
.kiip-subject-complete:is(.subject-reading,.subject-listening)>h3::before{content:"";display:block;width:45%;height:1px;margin:2em auto;background:var(--background-modifier-border)}
.kiip-subject-complete:is(.subject-reading,.subject-listening)>h2+h3::before{display:none}
.kiip-subject-complete .callout-content{line-height:1.75}
.el-table{max-width:100%;overflow-x:auto}
.grammar-refinement-v2 h1{font-size:2.1em}
.grammar-refinement-v2 .grammar-title-meta{letter-spacing:normal}
.grammar-refinement-v2 .callout[data-callout="grammar-reminder"]>.callout-title::before{content:none}
.grammar-refinement-v2 .callout[data-callout="grammar-section"]>.callout-content{padding:0 16px 14px}
.embedded-note{padding-top:12px}
@media(max-width:700px){.grammar-refinement-v2 h1{font-size:1.7em}.grammar-refinement-v2 .grammar-title-meta{gap:3px}.kiip-subject-complete>h2{margin-top:2.2em}}
/* Keep nested grammar-table type readable after the Obsidian CSS export. */
.grammar-refinement-v2 table:has(.grammar-matrix-marker) :is(td,th){font-size:13px;line-height:1.6}
.grammar-refinement-v2 table:has(.grammar-matrix-marker) small{font-size:12px}
