:root{--c-bg: #ffffff;--c-fg: #111111;--c-subtle: #444444;--c-link: #0b6cff;--c-border: #dcdcdc}:root.dark{--c-bg: #0b0b0c;--c-fg: #e8e8ea;--c-subtle: #b3b3b7;--c-link: #8ab4ff;--c-border: #2b2b2f}html,body{background:var(--c-bg);color:var(--c-fg);margin:0;padding:0}a{color:var(--c-link);text-decoration:none}a:hover{text-decoration:underline}hr{border:0;border-top:1px solid var(--c-border)}.container{max-width:900px;margin:0 auto;padding:1.25rem}.list{list-style:none;padding:0;margin:1rem 0}.list li{padding:.4rem 0;border-bottom:1px dashed var(--c-border);word-break:break-word}.page-title{margin:1rem 0 .5rem}.subtle{color:var(--c-subtle);font-size:.95rem}:root{--accent: #2337ff;--accent-dark: #000d8a;--black: 15, 18, 25;--gray: 96, 115, 159;--gray-light: 229, 233, 240;--gray-dark: 34, 41, 57;--gray-gradient: rgba(var(--gray-light), 50%), #fff;--box-shadow: 0 0 0 transparent;--font-size-base: clamp(1.02rem, .96rem + .24vw, 1.1rem);--line-height-base: 1.72;--content-measure: 74ch;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.35rem;--space-lg: 2rem;--space-xl: 2.8rem;--font-family-primary: "Dank Mono", monospace;--font-family-mono: "Dank Mono", monospace}html{width:100%;overflow-x:hidden}*,*:before,*:after{box-sizing:border-box}header[data-astro-cid-3ef6ksr2]{margin:0;padding:0 1em;background:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}@font-face{font-family:Dank Mono;src:url(/fonts/DankMonoNerdFontMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Dank Mono;src:url(/fonts/DankMonoNerdFontMono-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Dank Mono;src:url(/fonts/DankMonoNerdFontMono-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}body{font-family:var(--font-family-primary);margin:0;padding:0;max-width:100%;text-align:left;background:#fff;word-wrap:break-word;overflow-wrap:break-word;overflow-x:hidden;color:rgb(var(--gray-dark));font-size:var(--font-size-base);line-height:var(--line-height-base)}main{width:min(100%,1200px);max-width:1200px;margin:0 auto;padding:clamp(1.4rem,2.5vw,2.8rem) clamp(1rem,2vw,1.5rem)}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-xs) 0;color:rgb(var(--black));line-height:1.22}h1{font-size:clamp(1.75rem,1.46rem + 1.2vw,2.3rem);font-weight:700}h2{font-size:clamp(1.42rem,1.28rem + .62vw,1.76rem)}h3{font-size:clamp(1.25rem,1.16rem + .44vw,1.48rem)}h4{font-size:clamp(1.12rem,1.06rem + .28vw,1.25rem)}h5{font-size:1rem}strong,b{font-weight:700}a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:color .2s ease,border-bottom-color .2s ease}a:hover{color:var(--accent-dark);border-bottom-color:var(--accent)}p{margin:0 0 var(--space-md) 0}.prose p{margin-bottom:var(--space-md)}textarea{width:100%}input{font-size:1rem}textarea,input,button,select,option{font-family:var(--font-family-primary);font-size:1rem}table{width:100%}img{max-width:100%;height:auto;border-radius:0}.obsidian-media-embed{margin:.9rem 0}.obsidian-media-embed-card{margin:.9rem 0;padding:.45rem .55rem;border:1px solid color-mix(in srgb,var(--c-border) 78%,transparent);background:color-mix(in srgb,var(--c-bg-mute) 72%,var(--c-bg) 28%);border-radius:12px}.obsidian-audio-card{width:min(100%,420px)}.obsidian-video-card{width:min(100%,680px)}.obsidian-audio-embed,.obsidian-video-embed{display:block;width:min(100%,680px);max-width:100%}.obsidian-audio-card .obsidian-audio-embed,.obsidian-video-card .obsidian-video-embed{margin:0;width:100%}.obsidian-media-caption{margin:.35rem 0 0;font-size:.82rem;color:rgb(var(--gray-dark),.72)}code{font-family:var(--font-family-mono);padding:2px 5px;background-color:transparent;border-radius:0}pre{font-family:var(--font-family-mono);padding:1rem 1.15rem;margin:var(--space-md) 0;border-radius:0}pre>code{all:unset}blockquote{border-left:4px solid var(--accent);padding:0 0 0 1rem;margin:var(--space-md) 0;font-size:1rem;line-height:1.7}hr{border:none;border-top:1px solid transparent;margin:var(--space-xl) 0}:where(article,.prose,.content-area){line-height:1.75}:where(article,.prose,.content-area) :where(p,ul,ol,pre,blockquote,table,figure,hr){margin-top:var(--space-md);margin-bottom:var(--space-md)}:where(article,.prose,.content-area) :where(h1,h2,h3,h4){margin-top:calc(var(--space-xl) + 1.2em);margin-bottom:var(--space-sm);scroll-margin-top:5.5rem}:where(article,.prose,.content-area) :where(h5,h6){margin-top:var(--space-xl);margin-bottom:var(--space-sm);scroll-margin-top:5.5rem}:where(article,.prose,.content-area) :where(p+p){margin-top:var(--space-sm)}:where(article,.prose,.content-area)>:first-child{margin-top:0!important}:where(article,.prose,.content-area) :where(li){line-height:1.65}.katex{position:relative}.katex .katex-mathml{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.katex-display{display:block;margin:var(--space-md) 0;overflow-x:auto;overflow-y:hidden}.katex-display>.katex{display:block;text-align:center}@media(max-width:968px){main{padding-inline:0}}@media(max-width:720px){body{font-size:1rem;line-height:1.68}main{padding-block:1rem}:where(article,.prose,.content-area) :where(h1,h2,h3,h4){margin-top:calc(2rem + 1.2em)}:where(article,.prose,.content-area) :where(h5,h6){margin-top:2rem}}.dark{--accent: #4f83ff;--accent-dark: #1a3a9a;--black: 245, 245, 245;--gray: 159, 173, 189;--gray-light: 71, 85, 105;--gray-dark: 217, 217, 217;--gray-gradient: rgba(var(--gray-light), 50%), rgb(30 30 30)}.dark body{background:#000!important;color:#fff}.dark header{background:#000!important;border-bottom:1px solid transparent}.dark nav{background:#000}.dark .card{border-color:transparent}.dark main{color:#fff}.dark h1,.dark h2,.dark h3,.dark h4,.dark h5,.dark h6{color:rgb(var(--black))}.dark a{color:var(--accent)}.dark code{background-color:transparent;color:rgb(var(--gray-dark))}.dark pre{background-color:transparent}.dark blockquote{border-left-color:var(--accent)}.dark hr{border-top-color:transparent}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}.callout{--c-border: rgba(71, 85, 105, .28);--c-bg: rgba(148, 163, 184, .12);--c-accent: #334155;--c-icon: "ⓘ";--c-icon-bg: rgba(51, 65, 85, .14);--c-icon-border: rgba(51, 65, 85, .24);position:relative;border:1px solid var(--c-border);border-left:4px solid var(--c-accent);background:var(--c-bg);border-radius:10px;padding:.85rem 1rem .95rem;margin:1.1rem 0}.callout:before{content:var(--c-icon);position:absolute;top:.6rem;right:.7rem;width:1.28rem;height:1.28rem;border-radius:999px;border:1px solid var(--c-icon-border);background:var(--c-icon-bg);color:var(--c-accent);font-size:.82rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.callout-title{font-weight:600;font-size:.8em;letter-spacing:.01em;padding-right:1.9rem;margin:0 0 .5rem}.callout-body>:first-child{margin-top:0}.callout-body>:last-child{margin-bottom:0}.callout-note{--c-accent:#64748b;--c-border:rgba(100, 116, 139, .36);--c-bg:rgba(100, 116, 139, .13);--c-icon:"ⓘ";--c-icon-bg:rgba(100, 116, 139, .2);--c-icon-border:rgba(100, 116, 139, .34)}.callout-info{--c-accent:#2563eb;--c-border:rgba(37, 99, 235, .36);--c-bg:rgba(37, 99, 235, .12);--c-icon:"ℹ";--c-icon-bg:rgba(37, 99, 235, .2);--c-icon-border:rgba(37, 99, 235, .35)}.callout-tip{--c-accent:#059669;--c-border:rgba(5, 150, 105, .36);--c-bg:rgba(5, 150, 105, .12);--c-icon:"✓";--c-icon-bg:rgba(5, 150, 105, .2);--c-icon-border:rgba(5, 150, 105, .35)}.callout-important{--c-accent:#7c3aed;--c-border:rgba(124, 58, 237, .38);--c-bg:rgba(124, 58, 237, .12);--c-icon:"★";--c-icon-bg:rgba(124, 58, 237, .2);--c-icon-border:rgba(124, 58, 237, .35)}.callout-warning{--c-accent:#d97706;--c-border:rgba(217, 119, 6, .39);--c-bg:rgba(217, 119, 6, .14);--c-icon:"⚠";--c-icon-bg:rgba(217, 119, 6, .21);--c-icon-border:rgba(217, 119, 6, .36)}.callout-caution,.callout-danger{--c-accent:#dc2626;--c-border:rgba(220, 38, 38, .4);--c-bg:rgba(220, 38, 38, .14);--c-icon:"⛔";--c-icon-bg:rgba(220, 38, 38, .2);--c-icon-border:rgba(220, 38, 38, .36)}.callout-quote{--c-accent:#334155;--c-border:rgba(51, 65, 85, .3);--c-bg:rgba(51, 65, 85, .1);--c-icon:"❝";--c-icon-bg:rgba(51, 65, 85, .18);--c-icon-border:rgba(51, 65, 85, .3);font-style:italic}.dark .callout{--c-border: rgba(148, 163, 184, .38);--c-bg: rgba(15, 23, 42, .38);--c-accent: #f9fafb;--c-icon-bg: rgba(248, 250, 252, .15);--c-icon-border: rgba(248, 250, 252, .32)}.dark .callout-note{--c-accent:#cbd5e1;--c-border:rgba(148, 163, 184, .45);--c-bg:rgba(100, 116, 139, .2);--c-icon:"ⓘ";--c-icon-bg:rgba(148, 163, 184, .26);--c-icon-border:rgba(148, 163, 184, .46)}.dark .callout-info{--c-accent:#93c5fd;--c-border:rgba(96, 165, 250, .48);--c-bg:rgba(37, 99, 235, .22);--c-icon:"ℹ";--c-icon-bg:rgba(96, 165, 250, .26);--c-icon-border:rgba(96, 165, 250, .5)}.dark .callout-tip{--c-accent:#6ee7b7;--c-border:rgba(52, 211, 153, .48);--c-bg:rgba(5, 150, 105, .22);--c-icon:"✓";--c-icon-bg:rgba(52, 211, 153, .25);--c-icon-border:rgba(52, 211, 153, .48)}.dark .callout-important{--c-accent:#ddd6fe;--c-border:rgba(196, 181, 253, .5);--c-bg:rgba(124, 58, 237, .24);--c-icon:"★";--c-icon-bg:rgba(196, 181, 253, .27);--c-icon-border:rgba(196, 181, 253, .5)}.dark .callout-warning{--c-accent:#fcd34d;--c-border:rgba(251, 191, 36, .5);--c-bg:rgba(217, 119, 6, .24);--c-icon:"⚠";--c-icon-bg:rgba(251, 191, 36, .28);--c-icon-border:rgba(251, 191, 36, .5)}.dark .callout-caution,.dark .callout-danger{--c-accent:#fca5a5;--c-border:rgba(248, 113, 113, .5);--c-bg:rgba(220, 38, 38, .24);--c-icon:"⛔";--c-icon-bg:rgba(248, 113, 113, .27);--c-icon-border:rgba(248, 113, 113, .5)}.dark .callout-quote{--c-accent:#e2e8f0;--c-border:rgba(148, 163, 184, .44);--c-bg:rgba(51, 65, 85, .24);--c-icon:"❝";--c-icon-bg:rgba(148, 163, 184, .22);--c-icon-border:rgba(148, 163, 184, .4);font-style:italic;color:#f3f4f6}.mermaid{display:flex;justify-content:center;padding:1.5rem 0;margin:1rem 0}.dark .mermaid{--mermaid-bg: rgba(0, 0, 20, .9);--mermaid-node-bg: rgba(0, 50, 100, .8);--mermaid-node-border: #00ffff;--mermaid-edge-color: #00ff00;--mermaid-label-color: #ffffff;--mermaid-cluster-bg: rgba(100, 0, 100, .6);--mermaid-cluster-border: #ff00ff}.dark .mermaid svg{background:transparent!important}.dark .mermaid .node rect,.dark .mermaid .node circle,.dark .mermaid .node ellipse,.dark .mermaid .node polygon,.dark .mermaid .node path{fill:var(--mermaid-node-bg)!important;stroke:var(--mermaid-node-border)!important;stroke-width:2px!important;filter:drop-shadow(0 0 6px var(--mermaid-node-border))!important}.dark .mermaid .edgePath .path{stroke:var(--mermaid-edge-color)!important;stroke-width:3px!important;filter:drop-shadow(0 0 4px var(--mermaid-edge-color))!important}.dark .mermaid text{fill:var(--mermaid-label-color)!important;font-weight:700!important;text-shadow:0 0 6px var(--mermaid-label-color)!important}.dark .mermaid .edgeLabel text,.dark .mermaid .node text,.dark .mermaid .cluster text,.dark .mermaid .flowchartLabel text,.dark .mermaid .pieLabel text,.dark .mermaid .actor text,.dark .mermaid .note text{fill:var(--mermaid-label-color)!important;text-shadow:0 0 6px var(--mermaid-label-color)!important}.dark .mermaid span,.dark .mermaid .label,.dark .mermaid .nodeLabel,.dark .mermaid .nodetext,.dark .mermaid foreignObject span,.dark .mermaid text.node-label,.dark .mermaid text.cluster-label{fill:var(--mermaid-label-color)!important;color:var(--mermaid-label-color)!important;text-shadow:0 0 6px var(--mermaid-label-color)!important}.dark .mermaid span.edge-label,.dark .mermaid .edge-label,.dark .mermaid .edgeLabel{background-color:#1f1919!important;fill:#fff!important;color:#fff!important;text-shadow:none!important}.dark .mermaid [id*=edgeLabel] rect,.dark .mermaid [id*=edgeLabel]{fill:#1f1919!important;stroke:none!important}.dark .mermaid .cluster rect,.dark .mermaid .cluster polygon{fill:var(--mermaid-cluster-bg)!important;stroke:var(--mermaid-cluster-border)!important;stroke-width:2px!important;filter:drop-shadow(0 0 8px var(--mermaid-cluster-border))!important}.tag{font-size:.85rem;padding:.01rem 1rem!important;border:1px solid transparent;border-radius:0;color:#374151;background:transparent!important;text-decoration:none;display:inline-block;transition:opacity .2s}.tag:hover{opacity:.8}.dark .tag{border-color:transparent;color:#e5e7eb;background:transparent!important}.dvlist{margin:1rem 0}.dvlist-header{font-size:.9rem;color:var(--c-subtle);margin-bottom:.25rem}.dvlist-items{padding-left:1rem}.dvlist-items li{margin:.15rem 0}.dvlist .meta{color:var(--c-subtle);font-size:.85em}ul{list-style:none;padding-left:0;margin-left:0;margin-top:1.15em;margin-bottom:1.4em;text-align:left}ul>li{position:relative;padding-left:.82em;margin:.45em 0}ul>li:before{content:"→";position:absolute;left:0;top:.18em;font-size:.96em;color:#d4d700;text-align:center}ul ul>li{padding-left:1.08em;margin:.28em 0;text-align:left}ul ul>li:before{content:"○";position:absolute;left:.2em;top:.22em;font-size:.85em}ul ul ul>li{padding-left:1.08em;margin:.25em 0;text-align:left}ul ul ul>li:before{content:"▪";position:absolute;left:.04em;top:.02em;font-size:1.8em}ol{counter-reset:item;padding-left:0;margin-left:0;margin-top:1.15em;margin-bottom:1.4em;list-style:none}ol>li{counter-increment:item;margin:.45em 0;padding-left:1.15em;position:relative;line-height:1.6;text-align:left}ol>li:before{content:counter(item);position:absolute;left:-1em;top:.15em;width:1.6em;height:1.6em;line-height:1.6em;border:1px solid;border-radius:50%;text-align:center;font-size:.7em}ol ol>li:before,ol ol ol>li:before,ol ol ol ol>li:before{content:none!important;border:none!important;background:none!important;position:static!important;margin-right:0!important;width:auto!important;height:auto!important;display:inline!important}ol ol{list-style:none;padding-left:2em;margin-left:0;list-style-position:inside}ol ol>li{padding-left:0;margin:.3em 0}ol ol>li::marker{content:"▣ "}ol ol ol{list-style:none;padding-left:3.5em;margin-left:0;list-style-position:inside}ol ol ol>li{padding-left:0;margin:.3em 0}ol ol ol>li::marker{content:"▸ "}ol ol ol ol{list-style:none;padding-left:5em;margin-left:0;list-style-position:inside}ol ol ol ol>li{padding-left:0;margin:.3em 0}ol ol ol ol>li::marker{content:"– "}.hljs{display:block;overflow-x:auto;padding:.5em;background:#3f3f3f;color:#dcdcdc}.hljs-keyword,.hljs-selector-tag,.hljs-tag{color:#e3ceab}.hljs-template-tag{color:#dcdcdc}.hljs-number{color:#8cd0d3}.hljs-variable,.hljs-template-variable,.hljs-attribute{color:#efdcbc}.hljs-literal{color:#efefaf}.hljs-subst{color:#8f8f8f}.hljs-title,.hljs-name,.hljs-selector-id,.hljs-selector-class,.hljs-section,.hljs-type{color:#efef8f}.hljs-symbol,.hljs-bullet,.hljs-link{color:#dca3a3}.hljs-deletion,.hljs-string,.hljs-built_in,.hljs-builtin-name{color:#cc9393}.hljs-addition,.hljs-comment,.hljs-quote,.hljs-meta{color:#7f9f7f}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.bibtex.normal{color:var(--text-faint)}.bibtex.value{color:var(--text-muted)}.bibtex.key{color:var(--text-faint)}.bibtex.header,.bibtex.entry{color:var(--text-accent)}.lily-score,.lilypond-block{margin:1.5rem 0;text-align:center;overflow-x:auto}.lilypond-block img,.lily-score img{display:block;width:auto;max-width:100%;height:auto;margin:0 auto;object-fit:contain}.dark .lilypond-block img,.dark .lily-score img{filter:invert(1)}:is(#lesson-forum,#forum-reader-root) .forum-post-list{overflow-x:hidden!important;gap:.36rem!important}:is(#lesson-forum,#forum-reader-root) .forum-grid{grid-template-columns:1fr!important;gap:.9rem!important}:is(#lesson-forum,#forum-reader-root) .forum-panel{border:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 88%,transparent)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-stage{display:none!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-column{display:grid!important;gap:.72rem!important;width:100%!important;min-width:0!important;border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-stage{border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-list{display:grid!important;gap:.72rem!important;max-height:none!important;overflow:visible!important;width:100%!important;min-width:0!important}:is(#lesson-forum,#forum-reader-root) .forum-new-thread,:is(#lesson-forum,#forum-reader-root) .forum-thread-item{border:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 88%,transparent)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:.72rem!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;justify-self:stretch!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-item:nth-child(odd){background:transparent!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-item:nth-child(2n){background:transparent!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-item.active{background:transparent!important;border-color:transparent!important;box-shadow:none!important}:is(#lesson-forum,#forum-reader-root) .forum-new-thread .forum-panel-title{margin:0 0 .55rem!important}:is(#lesson-forum,#forum-reader-root) .forum-new-thread{border:0!important}:is(#lesson-forum,#forum-reader-root) .forum-new-thread[open] .forum-fold-summary{border-bottom:0!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-shell{width:100%!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-input{color:var(--forum-text-primary, #1c1f23)!important;caret-color:var(--forum-text-primary, #1c1f23)!important;font-family:var(--font-family-mono, "Dank Mono", monospace)!important;line-height:1.6!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-toggle{width:100%!important;border:none!important;background:transparent!important;text-align:left!important;color:var(--forum-text-primary, #1c1f23)!important;cursor:pointer!important;padding:0!important;display:grid!important;gap:.35rem!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-top{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:.45rem!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-title{font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.2!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--forum-accent, #2f5d8c) 42%,transparent)!important;outline-offset:2px!important;border-radius:0!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-caret{justify-self:end!important;color:var(--forum-text-secondary, #6b7480)!important;font-size:.74rem!important;line-height:1!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-trailing{display:inline-flex!important;align-items:center!important;gap:.38rem!important;justify-self:end!important;margin-right:5px!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-counts{display:inline-flex!important;align-items:center!important;gap:.35rem!important;opacity:.5!important;font-size:.67rem!important;line-height:1!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-count{font-weight:700!important;position:relative;cursor:help}:is(#lesson-forum,#forum-reader-root) .forum-thread-count-messages{color:#2563eb!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-count-replies{color:#16a34a!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-count:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + .35rem);transform:translate(-50%,.3rem);padding:.2rem .38rem;border-radius:6px;background:#111827f0;color:#fff;font-size:.62rem;line-height:1.1;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:12}:is(#lesson-forum,#forum-reader-root) .forum-thread-count:hover:after,:is(#lesson-forum,#forum-reader-root) .forum-thread-count:focus-visible:after{opacity:1;transform:translate(-50%)}:is(#lesson-forum,#forum-reader-root) .forum-thread-divider{border:0!important;border-top:1px solid color-mix(in srgb,var(--forum-border-soft, #e2e8ee) 86%,transparent)!important;margin:.34rem 0 .3rem!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-meta,:is(#lesson-forum,#forum-reader-root) .forum-thread-author,:is(#lesson-forum,#forum-reader-root) .forum-thread-date,:is(#lesson-forum,#forum-reader-root) .forum-thread-panel-copy{display:none!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-inline-panel{margin-top:.62rem!important;padding-top:.62rem!important;display:grid!important;gap:.62rem!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-actions{margin-top:0!important;display:inline-flex!important;justify-content:flex-end!important;align-items:center!important;gap:.3rem!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-actions[hidden]{display:none!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-inline-panel[hidden]{display:none!important}:is(#lesson-forum,#forum-reader-root) .forum-fold{margin-top:.72rem!important;border:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 88%,transparent)!important;border-radius:0!important;background:transparent!important}:is(#lesson-forum,#forum-reader-root) .forum-fold[hidden]{display:none!important}:is(#lesson-forum,#forum-reader-root) .forum-fold-summary{list-style:none!important;cursor:pointer!important;padding:.6rem .72rem!important;font-size:.78rem!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:var(--forum-text-secondary, var(--c-fg-dim, #6b7480))!important}:is(#lesson-forum,#forum-reader-root) .forum-fold-summary::-webkit-details-marker{display:none!important}:is(#lesson-forum,#forum-reader-root) .forum-fold[open] .forum-fold-summary{border-bottom:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 88%,transparent)!important}:is(#lesson-forum,#forum-reader-root) .forum-thread-inline-panel .forum-post-list{max-height:none!important;overflow:visible!important}:is(#lesson-forum,#forum-reader-root) .forum-panel .forum-field,:is(#lesson-forum,#forum-reader-root) .forum-panel .forum-textarea,:is(#lesson-forum,#forum-reader-root) .forum-panel .forum-select{width:100%!important;max-width:100%!important;display:block!important;margin:0!important;box-sizing:border-box!important;border-radius:0!important;background:transparent!important}:is(#lesson-forum,#forum-reader-root) .forum-post{display:grid!important;grid-template-columns:1fr!important;gap:.44rem!important;padding:.52rem!important;border:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 88%,transparent)!important;border-radius:0!important;background:transparent!important;box-sizing:border-box}:is(#lesson-forum,#forum-reader-root) .forum-post-identity{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;column-gap:.55rem!important;align-items:center!important;justify-items:start!important}:is(#lesson-forum,#forum-reader-root) .forum-post.forum-post-role-instructor{background:transparent!important;border-color:color-mix(in srgb,var(--forum-role-instructor, #2f5d8c) 30%,var(--forum-border-soft, #e2e8ee) 70%)!important}:is(#lesson-forum,#forum-reader-root) .forum-post.forum-post-role-student{background:transparent!important;border-color:color-mix(in srgb,var(--forum-text-secondary, #6b7480) 14%,var(--forum-border-soft, #e2e8ee) 86%)!important}:is(#lesson-forum,#forum-reader-root) .forum-post-main{min-width:0!important;max-width:100%!important;overflow:visible!important;padding:.04rem .12rem .08rem 10px!important}:is(#lesson-forum,#forum-reader-root) .forum-post-avatar{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;aspect-ratio:1 / 1!important;border-radius:50%!important;overflow:hidden!important;clip-path:circle(50% at 50% 50%)!important;object-fit:cover!important;object-position:center!important}:is(#lesson-forum,#forum-reader-root) img.forum-post-avatar{display:block!important}:is(#lesson-forum,#forum-reader-root) span.forum-post-avatar{display:inline-flex!important;align-items:center;justify-content:center;font-size:.55rem!important;line-height:1!important}:is(#lesson-forum,#forum-reader-root) .forum-post-name{font-size:.72rem!important;line-height:1.2!important;font-weight:600!important;display:block!important}:is(#lesson-forum,#forum-reader-root) .forum-post-header{display:flex!important;justify-content:flex-start!important;align-items:flex-start!important;margin-top:-.08rem!important;margin-bottom:.18rem!important;text-align:left!important}:is(#lesson-forum,#forum-reader-root) .forum-post-date{display:block!important;font-size:.68rem!important;line-height:1.1!important;opacity:.6!important;text-align:left!important;margin-top:.1rem!important}:is(#lesson-forum,#forum-reader-root) .forum-post-badges,:is(#lesson-forum,#forum-reader-root) .forum-role-badge{display:none!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-action-btn svg{width:.8rem;height:.8rem;display:block;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}:is(#lesson-forum,#forum-reader-root) .forum-editor-dropzone{position:relative!important;display:block!important;width:100%!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-dropzone-overlay{position:absolute!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;border:1.5px dashed color-mix(in srgb,var(--forum-accent, var(--accent, #2f6fff)) 24%,transparent)!important;border-radius:10px!important;background:color-mix(in srgb,var(--forum-accent, var(--accent, #2f6fff)) 10%,transparent)!important;color:var(--forum-accent, var(--accent, #2f6fff))!important;opacity:0!important;pointer-events:none!important;transition:opacity .14s ease,background .14s ease,border-color .14s ease!important;z-index:2!important;backdrop-filter:blur(1.5px)!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-dropzone-label{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:7.2rem!important;padding:.38rem .72rem!important;border-radius:999px!important;border:1px solid color-mix(in srgb,var(--forum-accent, var(--accent, #2f6fff)) 26%,transparent)!important;background:color-mix(in srgb,var(--forum-bg-panel, rgba(255,255,255,.94)) 78%,var(--forum-accent, var(--accent, #2f6fff)) 22%)!important;font-size:.76rem!important;font-weight:600!important;letter-spacing:.06em!important;text-transform:uppercase!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-dropzone.is-upload-target .forum-editor-dropzone-overlay{opacity:1!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-dropzone.is-upload-target .forum-textarea{outline:2px dashed color-mix(in srgb,var(--forum-accent, var(--accent, #2f6fff)) 42%,transparent)!important;outline-offset:1px!important;background:color-mix(in srgb,var(--forum-accent, var(--accent, #2f6fff)) 6%,var(--forum-bg-panel, #fff))!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-dropzone.is-uploading .forum-editor-dropzone-overlay{opacity:.82!important}:is(#lesson-forum,#forum-reader-root) .forum-editor-action-spacer{width:.4rem;min-width:.4rem;height:1.42rem;display:inline-block;opacity:0;pointer-events:none}:is(#lesson-forum,#forum-reader-root) .forum-post-body{font-size:.95rem!important;line-height:1.62!important;min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;word-break:break-word!important;color:var(--forum-text-primary, var(--c-fg, #1c1f23))!important;opacity:1!important;visibility:visible!important}:is(#lesson-forum,#forum-reader-root) .forum-post-body :is(p,ul,ol,pre,blockquote,table,.mermaid,.katex-display,.lily-score,.callout){max-width:100%!important;margin:0 0 .32rem!important}:is(#lesson-forum,#forum-reader-root) .forum-post-body :is(p,ul,ol,li,div,span,strong,em,a,blockquote,table,thead,tbody,tr,th,td){color:inherit!important;opacity:1!important;visibility:visible!important}:is(#lesson-forum,#forum-reader-root) .forum-post-body a{color:var(--forum-accent, var(--accent, #2f6fff))!important}:is(#lesson-forum,#forum-reader-root) .forum-post-body blockquote{color:var(--forum-text-secondary, var(--c-fg-dim, #6b7480))!important}:is(#lesson-forum,#forum-reader-root) .forum-post-body pre,:is(#lesson-forum,#forum-reader-root) .forum-post-body table,:is(#lesson-forum,#forum-reader-root) .forum-post-body .mermaid,:is(#lesson-forum,#forum-reader-root) .forum-post-body .lily-score,:is(#lesson-forum,#forum-reader-root) .forum-post-body .katex-display{display:block!important;overflow-x:auto!important}:is(#lesson-forum,#forum-reader-root) .forum-post-body>:last-child{margin-bottom:0!important}:is(#lesson-forum,#forum-reader-root) .forum-edit-textarea{min-height:11.6rem!important}:is(#lesson-forum,#forum-reader-root) .forum-form-actions{width:100%!important;margin:0!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:.3rem!important}:is(#lesson-forum,#forum-reader-root) #forum-reply-form{margin-bottom:0!important;gap:.35rem!important}:is(#lesson-forum,#forum-reader-root) .forum-post-actions{width:100%!important;margin-left:0!important;margin-top:.25rem!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:.3rem!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reactions{display:inline-flex!important;align-items:center!important;gap:.38rem!important;margin-right:auto!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-item{display:inline-flex!important;align-items:center!important;gap:.16rem!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-count{min-width:1.2ch;text-align:right;font-size:.6rem!important;line-height:1!important;font-weight:700!important;color:var(--forum-text-secondary, #64748b);opacity:.58}:is(#lesson-forum,#forum-reader-root) .forum-action-btn{width:1.56rem!important;height:1.56rem!important;min-width:1.56rem!important;min-height:1.56rem!important;border:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 88%,transparent)!important;border-radius:0!important;display:inline-flex!important;align-items:center;justify-content:center;padding:.14rem!important;margin:0!important;text-transform:uppercase!important;letter-spacing:.03em;font-weight:900!important;font-size:.58rem!important;line-height:1!important;color:var(--forum-text-secondary, var(--c-fg-dim, #6b7480))!important;cursor:pointer;background:transparent!important;opacity:1!important;touch-action:manipulation;position:relative;transition:background .14s ease,color .14s ease,border-color .14s ease}:is(#lesson-forum,#forum-reader-root) .forum-action-btn:hover{background:color-mix(in srgb,var(--forum-bg-subtle, #eef2f5) 65%,transparent)!important;color:var(--forum-text-primary, var(--c-fg, #1c1f23))!important;opacity:1!important}:is(#lesson-forum,#forum-reader-root) .forum-action-btn:active{opacity:1!important}:is(#lesson-forum,#forum-reader-root) .forum-action-btn:focus-visible{outline:1px solid color-mix(in srgb,var(--forum-accent, var(--accent, #2f6fff)) 70%,transparent);outline-offset:1px}:is(#lesson-forum,#forum-reader-root) .forum-action-btn:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + .42rem);transform:translate(-50%,.35rem);padding:.22rem .45rem;border-radius:0;background:#111827f0;color:#fff;font-size:.66rem;line-height:1.2;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .14s ease,transform .14s ease;z-index:15}:is(#lesson-forum,#forum-reader-root) .forum-action-btn:hover:after,:is(#lesson-forum,#forum-reader-root) .forum-action-btn:focus-visible:after{opacity:1;transform:translate(-50%)}:is(#lesson-forum,#forum-reader-root) .forum-action-r,:is(#lesson-forum,#forum-reader-root) .forum-action-e,:is(#lesson-forum,#forum-reader-root) .forum-action-p,:is(#lesson-forum,#forum-reader-root) .forum-action-h,:is(#lesson-forum,#forum-reader-root) .forum-action-f{color:var(--forum-text-secondary, var(--c-fg-dim, #6b7480))!important}:is(#lesson-forum,#forum-reader-root) .forum-action-b,:is(#lesson-forum,#forum-reader-root) .forum-action-c{color:#b3261e!important;border-color:color-mix(in srgb,#b3261e 42%,var(--forum-border-soft, #d8dee6) 58%)!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-btn{border:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 86%,transparent)!important;background:transparent!important;color:var(--forum-text-secondary, #64748b)!important;font-size:.78rem!important;font-weight:900!important;opacity:.86!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-btn:hover,:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-btn:focus-visible{opacity:1!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-btn.is-active{color:var(--forum-text-primary, var(--c-fg, #1c1f23))!important;border-color:color-mix(in srgb,var(--forum-accent, var(--accent, #2f6fff)) 60%,var(--forum-border-soft, #d8dee6) 40%)!important;opacity:1!important;box-shadow:none!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-useful.is-active{background:transparent!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-clarifies.is-active{background:transparent!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reaction-reference.is-active{background:transparent!important}:is(#lesson-forum,#forum-reader-root) .forum-secondary-btn:not(.forum-action-btn){border-radius:0!important;border:1px solid color-mix(in srgb,var(--forum-border-soft, #d8dee6) 88%,transparent)!important;background:transparent!important;color:var(--forum-text-primary, var(--c-fg, #1f2937))!important;min-height:2rem!important;padding:.32rem .72rem!important}@media(max-width:968px){:is(#lesson-forum,#forum-reader-root) .forum-post{grid-template-columns:1fr!important}:is(#lesson-forum,#forum-reader-root) .forum-post-reply{margin-left:.35rem!important}:is(#lesson-forum,#forum-reader-root) .forum-form-actions,:is(#lesson-forum,#forum-reader-root) .forum-post-actions{justify-content:flex-end!important}:is(#lesson-forum,#forum-reader-root) .forum-action-btn{width:1.72rem!important;height:1.72rem!important;min-width:1.72rem!important;min-height:1.72rem!important;font-size:.6rem!important}}
