.course-main{padding-block:34px 72px}
.course-heading{margin-bottom:30px}
.course-heading h1{margin:9px 0 0;line-height:1.28;letter-spacing:-.02em}
.course-shell{display:grid;grid-template-columns:272px minmax(0,1fr);border-block:3px solid var(--line)}
.course-sidebar{position:sticky;top:85px;max-height:calc(100vh - 85px);overflow:auto;padding:25px 18px 28px 0;border-right:3px solid var(--line)}
.course-sidebar-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 10px 14px}
.course-sidebar-head strong{font-weight:700}
.course-sidebar-head span{color:var(--accent);white-space:nowrap}
.course-mobile-hint{display:none}
.course-nav{display:grid;gap:2px}
.course-nav a{display:grid;grid-template-columns:29px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:44px;padding:9px 10px;color:var(--ink);text-decoration:none;line-height:1.4}
.course-nav a:hover{background:#eceee7}
.course-nav a[aria-current]{background:#dfe9df;font-weight:700}
.course-nav a span:first-child{color:var(--accent);font-family:var(--font-pali)!important;font-weight:700}
.course-nav a b{color:#487454}
.course-nav a:focus-visible,.vocab-sound:focus-visible,.course-finish button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.course-sidebar-tools{display:grid;gap:8px;margin:24px 10px 0;padding-top:15px;border-top:3px solid var(--line)}
.course-sidebar-tools span{color:var(--muted)}
.course-sidebar-tools a{color:var(--ink);text-decoration:none;font-weight:700}
.course-sidebar-tools a:hover{text-decoration:underline;text-underline-offset:5px}
.course-content{min-width:0;padding:32px 0 42px 42px}
.course-loading{padding:30px;color:var(--muted)}
.course-unit-head{padding-bottom:25px}
.course-unit-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--accent);font-weight:700}
.course-unit-head h2{margin:12px 0 8px;line-height:1.28}
.course-unit-head p{margin:0;color:var(--muted);line-height:1.7}
.course-part{padding:27px 0 33px;border-top:3px solid var(--line)}
.course-part-heading{display:flex;align-items:baseline;gap:16px;margin-bottom:14px}
.course-part-heading span{color:var(--accent);font-family:var(--font-pali)!important;font-weight:700}
.course-part-heading h3{margin:0}
.course-part>p{margin:0 0 15px;color:var(--muted);line-height:1.8}
.vocab-sounds{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}
.vocab-sound{min-width:72px;min-height:44px;padding:8px 14px;border:3px solid var(--line);background:transparent;color:var(--ink);font-family:var(--font-pali)!important;cursor:pointer}
.vocab-sound:hover,.vocab-sound[aria-pressed="true"]{background:var(--wash);border-color:#8da795}
.vocab-sound:disabled{opacity:.5;cursor:wait}
.course-part .course-audio-note{font-size:var(--type-caption)!important}
.course-audio-note a,.course-inline-link,.vocab-sources a{color:var(--ink);font-weight:700;text-underline-offset:5px}
.vocab-table-wrap{overflow-x:auto;border-block:3px solid var(--line)}
.vocab-table{width:100%;border-collapse:collapse;text-align:left}
.vocab-table th,.vocab-table td{padding:14px 10px;border-bottom:3px solid var(--line);vertical-align:top;line-height:1.55}
.vocab-table tbody tr:last-child th,.vocab-table tbody tr:last-child td{border-bottom:0}
.vocab-table thead th{color:var(--muted);font-weight:700}
.vocab-table tbody th{width:27%;font-family:var(--font-pali)!important;font-weight:600;white-space:nowrap}
.vocab-table tbody td:nth-child(2){width:29%;color:var(--ink)}
.vocab-table tbody td:nth-child(3){color:var(--muted)}
.vocab-table a{color:var(--ink);text-underline-offset:4px}
.course-rule{padding-left:16px;border-left:3px solid var(--accent);color:var(--ink)!important}
.course-form-list{margin:22px 0 19px;border-block:3px solid var(--line)}
.course-form-row{display:grid;grid-template-columns:minmax(175px,38%) minmax(0,1fr);gap:18px;align-items:baseline;padding:13px 10px;border-bottom:3px solid var(--line)}
.course-form-row:last-child{border-bottom:0}
.course-form-row strong{font-family:var(--font-pali)!important;font-weight:600;color:var(--ink)}
.course-form-row span{color:var(--muted);line-height:1.6}
.course-practice-list{border-top:3px solid var(--line)}
.course-practice-item{padding:17px 0 0;border-bottom:3px solid var(--line)}
.course-practice-heading{display:flex;gap:12px;align-items:baseline}
.course-practice-heading span{color:var(--accent);font-family:var(--font-pali)!important;font-weight:700}
.course-practice-item>p{margin:8px 0 14px;line-height:1.7}
.course-answer{border-block:3px solid var(--line);padding:12px 0}
.course-practice-item .course-answer{border-bottom:0}
.course-answer summary{cursor:pointer;font-weight:700}
.course-answer p{margin:12px 0 0;line-height:1.8;color:var(--muted)}
.course-finish{padding:22px 0;border-top:3px solid var(--line)}
.course-finish button{min-height:44px;padding:9px 16px;border:0;background:var(--ink);color:#fff;font-weight:700;cursor:pointer}
.course-finish button:hover{background:#315c49}
.course-next{display:flex;justify-content:space-between;gap:20px;border-top:3px solid var(--line);padding-top:18px}
.course-next a{color:var(--ink);font-weight:700;text-underline-offset:5px}
.course-next a:last-child{text-align:right}
.vocab-search-label{display:block;margin:5px 0 8px;font-weight:700}
.vocab-search{display:block;width:min(100%,520px);min-height:46px;padding:9px 13px;border:3px solid var(--line);background:#fbfaf6;color:var(--ink);font:inherit}
.vocab-search:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.vocab-search-count{margin:11px 0 20px;color:var(--muted)}
.vocab-sources{margin:20px 0 0;color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.course-page .course-unit-head h2{font-size:var(--type-title)!important}
.course-page .course-part-heading h3,.course-page .vocab-table tbody th{font-size:var(--type-section)!important}
.course-page .course-nav a,.course-page .course-unit-head p,.course-page .course-part>p:not(.course-audio-note),.course-page .vocab-table td,.course-page .course-rule,.course-page .course-form-row,.course-page .course-practice-item,.course-page .course-answer{font-size:var(--type-body)!important}
.course-page .course-sidebar-head span,.course-page .course-unit-meta,.course-page .course-part-heading span,.course-page .course-sidebar-tools,.course-page .vocab-table thead th{font-size:var(--type-caption)!important}
@media(max-width:850px){.course-shell{grid-template-columns:1fr}.course-sidebar{position:static;max-height:none;border-right:0;border-bottom:3px solid var(--line);padding:16px 0}.course-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 6px}.course-sidebar-tools{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.course-content{padding:28px 0}}
@media(max-width:560px){.course-main{padding-block:22px 45px}.course-heading{margin-bottom:22px}.course-nav{grid-template-columns:1fr;max-height:230px;overflow-y:auto;border-block:3px solid var(--line)}.course-mobile-hint{display:block;margin:0 0 10px;color:var(--muted)}.course-nav a{padding-inline:6px}.vocab-table{min-width:560px}.course-form-row{grid-template-columns:1fr;gap:3px}.course-next{display:grid}.course-next a:last-child{text-align:left}}
