.lesson-detail{padding:0}.lesson-detail__content{padding:1.25rem 1.5rem 2rem;line-height:1.75;font-size:.94rem;color:var(--fg)}.lesson-detail__content.markdown-body h1{font-size:1.5rem;font-weight:800;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--accent)}.lesson-detail__content.markdown-body h2{font-size:1.25rem;font-weight:700;margin:2rem 0 .75rem;padding-bottom:.35rem;border-bottom:1px solid var(--border);color:var(--accent)}.lesson-detail__content.markdown-body h3{font-size:1.1rem;font-weight:600;margin:1.5rem 0 .5rem;color:var(--fg)}.lesson-detail__content.markdown-body h4{font-size:1rem;font-weight:600;margin:1.25rem 0 .4rem}.lesson-detail__content.markdown-body p{margin:.5rem 0}.lesson-detail__content.markdown-body ul,.lesson-detail__content.markdown-body ol{margin:.5rem 0;padding-left:1.5rem}.lesson-detail__content.markdown-body li{margin:.25rem 0}.lesson-detail__content.markdown-body blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:4px solid var(--accent);background:var(--bg-elevated, var(--bg-surface));border-radius:0 6px 6px 0;color:var(--fg-muted, var(--fg))}.lesson-detail__content.markdown-body table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.88rem}.lesson-detail__content.markdown-body th,.lesson-detail__content.markdown-body td{padding:.5rem .75rem;border:1px solid var(--border);text-align:left}.lesson-detail__content.markdown-body th{background:var(--bg-elevated, var(--bg-surface));font-weight:600}.lesson-detail__content.markdown-body tr:nth-child(2n){background:var(--bg-surface, hsl(0, 0%, 97%))}[data-theme=dark] .lesson-detail__content.markdown-body tr:nth-child(2n){background:#242424}.lesson-detail__content.markdown-body pre{background:#f3f4f7;color:#272c35;padding:1rem 1.25rem;border-radius:8px;overflow-x:auto;font-size:.85rem;line-height:1.55;margin:.75rem 0;border:1px solid hsl(220,15%,88%)}.lesson-detail__content.markdown-body pre:not(.allow-copy):not(.cm-editor pre){-webkit-user-select:none;user-select:none}.lesson-detail__content.markdown-body pre.allow-copy,.lesson-runnable-editor *{-webkit-user-select:auto;user-select:auto}[data-theme=dark] .lesson-detail__content.markdown-body pre{background:#1a1d23;color:#e6e6e6;border-color:#303541}.lesson-detail__content.markdown-body code{font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:.88em}.lesson-detail__content.markdown-body :not(pre)>code{background:#e9edf2;color:#c62a5e;padding:.15rem .4rem;border-radius:4px;font-size:.85em}[data-theme=dark] .lesson-detail__content.markdown-body :not(pre)>code{background:#2b303b;color:#e28da9}.lesson-runnable-block{margin:.75rem 0 1rem;border-radius:8px;border:2px solid var(--accent);overflow:hidden;background:var(--bg-surface, hsl(0, 0%, 98%))}[data-theme=dark] .lesson-runnable-block{background:#16181d;border-color:#369}.lesson-runnable-editor{min-height:160px}.lesson-runnable-editor .cm-editor{height:auto}.lesson-runnable-editor .cm-scroller{overflow:visible}.lesson-runnable-editor .cm-content,.lesson-runnable-editor .cm-gutter{min-height:160px}.lesson-runnable-toolbar{justify-content:flex-start;border-top:1px solid var(--border);border-bottom:0}[data-theme=dark] .lesson-runnable-toolbar{border-top-color:var(--border)}.lesson-runnable-output{display:none;border-top:1px solid var(--border)}.lesson-runnable-output.is-visible{display:block}.lesson-output-loading{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;color:var(--fg-muted);font-size:.85rem}.lesson-output-result{padding:.75rem 1rem}.lesson-output-header{display:flex;align-items:center;gap:.4rem;font-weight:600;font-size:.85rem;margin-bottom:.4rem}.lesson-output-result--success .lesson-output-header{color:#2c9653}.lesson-output-result--error .lesson-output-header{color:#d22d2d}[data-theme=dark] .lesson-output-result--success .lesson-output-header{color:#66cc8b}[data-theme=dark] .lesson-output-result--error .lesson-output-header{color:#db7070}.lesson-output-code{margin:0;padding:.6rem .8rem;background:#f3f4f7;color:#272c35;border-radius:6px;font-size:.82rem;font-family:JetBrains Mono,Fira Code,monospace;line-height:1.5;overflow-x:auto;white-space:pre-wrap;word-break:break-word;border:1px solid hsl(220,15%,88%)}[data-theme=dark] .lesson-output-code{background:#1a1d23;color:#e0e0e0;border-color:#303541}.lesson-navigation{display:flex;justify-content:space-between;gap:1rem;padding:2rem 1.5rem 1.5rem;margin-top:1rem;border-top:1px solid var(--border)}.lesson-nav-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface, #fff);color:var(--fg);cursor:pointer;transition:all .2s;max-width:48%;text-align:left}.lesson-nav-btn:hover{border-color:var(--accent);background:var(--bg-elevated, hsl(210, 20%, 96%));transform:translateY(-2px);box-shadow:0 4px 12px #00000014}[data-theme=dark] .lesson-nav-btn:hover{background:#23272f}.lesson-nav-btn--next{margin-left:auto;text-align:right}.lesson-nav-btn__label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.lesson-nav-btn__title{display:block;font-size:.85rem;font-weight:500;color:var(--fg);margin-top:.15rem}@media(max-width:768px){.lesson-detail__content{padding:1rem;font-size:.9rem}.lesson-navigation{flex-direction:column;padding:1.5rem 1rem 1rem}.lesson-nav-btn{max-width:100%}.lesson-nav-btn--next{margin-left:0;text-align:left;flex-direction:row-reverse}}.table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.88rem;color:var(--fg);vertical-align:top;border-color:var(--border)}.table>thead,.table>tbody,.table>tfoot{border-color:inherit}.table th,.table td{padding:.55rem .75rem;border-bottom:1px solid var(--border);text-align:left}.table th{background:var(--bg-elevated, var(--bg-surface));font-weight:600;white-space:nowrap}.table>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd),.table.table-striped>tbody>tr:nth-of-type(odd),table.table-striped tr:nth-child(odd){background:transparent}.table-striped>tbody>tr:nth-of-type(2n),.table.table-striped>tbody>tr:nth-of-type(2n),table.table-striped tr:nth-child(2n){background:var(--bg-surface, hsl(210, 20%, 97%))}[data-theme=dark] .table-striped>tbody>tr:nth-of-type(2n),[data-theme=dark] .table.table-striped>tbody>tr:nth-of-type(2n),[data-theme=dark] table.table-striped tr:nth-child(2n){background:#1e2229}.table-bordered,.table-bordered th,.table-bordered td{border:1px solid var(--border)}.table-hover>tbody>tr:hover,table.table-hover tr:hover{background:var(--bg-elevated, hsl(210, 20%, 94%))}[data-theme=dark] .table-hover>tbody>tr:hover,[data-theme=dark] table.table-hover tr:hover{background:#272c35}.table-sm th,.table-sm td{padding:.3rem .5rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-nowrap{white-space:nowrap}.img-fluid{max-width:100%;height:auto}.test-cases-container{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.lesson-test-case-result{padding:.75rem;border-radius:6px;background:var(--bg-surface);border:1px solid var(--border-subtle)}.lesson-test-case-result.success{border-left:3px solid var(--success)}.lesson-test-case-result.error{border-left:3px solid var(--danger)}.lesson-test-case-result .test-name{font-weight:600;margin-bottom:.5rem}.lesson-test-case-result .test-input pre,.lesson-test-case-result .test-output pre{margin:.25rem 0 .5rem;padding:.5rem;background:var(--bg-body);border-radius:4px;border:1px solid var(--border-subtle);white-space:pre-wrap}.lesson-progress-badge{font-size:.75rem;color:#fff;padding:.15rem .4rem;border-radius:12px;margin-left:.5rem;font-weight:500;display:inline-flex;align-items:center;gap:.25rem}.lesson-progress-badge.progress-low{background:var(--surface-strong);color:var(--text-muted);border:1px solid var(--border)}.lesson-progress-badge.progress-medium{background:#f2930d}.lesson-progress-badge.progress-high{background:var(--info)}.lesson-progress-badge.progress-success{background:var(--success)}
