.diffuse-course{--df-bg: #091417;--df-panel: #0d2024;--df-line: #2c454a;--df-ink: #eef6f1;--df-muted: #a6b7b4;--df-mint: #75dfb4;--df-gold: #f1c96f;--df-blue: #70cbe8;display:grid;gap:2.25rem;padding-block:1rem 5rem;color:var(--df-ink)}.diffuse-course button,.diffuse-course input,.diffuse-course select{font:inherit}.diffuse-course button:focus-visible,.diffuse-course input:focus-visible,.diffuse-course select:focus-visible,.diffuse-course a:focus-visible,.diffuse-course summary:focus-visible{outline:3px solid var(--df-gold);outline-offset:3px}.diffuse-orientation,.diffuse-lesson__header{display:grid;gap:1.2rem;align-items:end}.diffuse-orientation{padding:1.5rem 0 2rem;border-bottom:1px solid var(--gray-700)}.diffuse-orientation>div:first-child{max-width:68ch}.diffuse-orientation span,.diffuse-lesson__header span,.diffuse-viewport header span,.diffuse-gate>strong,.diffuse-prediction>span,.diffuse-action>span,.diffuse-explanation>div>span{color:var(--df-mint);font-size:.72rem;font-weight:850;letter-spacing:.035em}.diffuse-orientation h2{max-width:22ch;margin-top:.55rem;font-size:clamp(1.9rem,5vw,3.6rem);letter-spacing:-.045em;line-height:1.08;text-wrap:balance}.diffuse-orientation p{max-width:66ch;margin-top:.75rem;color:var(--df-muted);line-height:1.75;text-wrap:pretty}.diffuse-mode{display:flex;flex-wrap:wrap;gap:.5rem}.diffuse-mode button,.diffuse-step-nav button,.diffuse-gate button,.diffuse-prediction button,.diffuse-action button,.diffuse-controls button,.diffuse-controls-toggle,.diffuse-pagination button,.diffuse-pagination a{min-height:44px;padding:.68rem .82rem;border:1px solid var(--df-line);border-radius:.55rem;color:var(--df-ink);background:transparent;font-size:.78rem;font-weight:780;cursor:pointer}.diffuse-mode button{display:grid;gap:.2rem;text-align:left}.diffuse-mode button[aria-pressed=true]{border-color:var(--df-mint);background:color-mix(in srgb,var(--df-mint) 10%,transparent)}.diffuse-mode small{color:var(--df-muted);font-size:.65rem;font-weight:500}.diffuse-step-nav{display:grid;grid-template-columns:repeat(17,minmax(9.2rem,1fr));overflow-x:auto;overscroll-behavior-inline:contain;border-block:1px solid var(--gray-700);scrollbar-width:thin}.diffuse-step-nav button{min-width:9.2rem;display:grid;gap:.3rem;align-content:start;border:0;border-right:1px solid var(--gray-700);border-radius:0;text-align:left}.diffuse-step-nav button[aria-current=step]{background:color-mix(in srgb,var(--df-mint) 10%,transparent);box-shadow:inset 0 -3px var(--df-mint)}.diffuse-step-nav span{color:var(--df-mint);font:750 .66rem ui-monospace,monospace}.diffuse-step-nav strong{font-size:.72rem;line-height:1.4}.diffuse-lesson{display:grid;gap:1.5rem}.diffuse-lesson__header{scroll-margin-top:1rem}.diffuse-lesson__header h2{max-width:21ch;margin-top:.4rem;font-size:clamp(2rem,6vw,4.4rem);letter-spacing:-.047em;line-height:1.06;text-wrap:balance}.diffuse-prerequisite{max-width:56ch;padding:1rem;border:1px solid var(--gray-700);border-radius:.65rem;color:var(--df-muted);background:var(--gray-900);line-height:1.7}.diffuse-prerequisite strong{display:block;color:var(--df-ink)}.diffuse-prerequisite p{margin:.25rem 0 0}.diffuse-workbench{position:relative;min-height:37rem;overflow:hidden;padding:1rem;border:1px solid var(--df-line);border-radius:.8rem;background:var(--df-bg)}.diffuse-viewport{display:grid;gap:1rem;min-height:35rem}.diffuse-viewport header{min-height:3.2rem;display:flex;gap:1rem;align-items:end;justify-content:space-between;padding-right:min(19rem,31vw)}.diffuse-viewport header h2{margin-top:.3rem;font-size:1.1rem}.diffuse-viewport header output{color:var(--df-gold);font:800 .82rem ui-monospace,monospace}.diffuse-journey{display:flex;gap:.45rem;align-items:center;overflow-x:auto;color:var(--df-muted);font-size:.65rem}.diffuse-journey span{min-height:32px;display:inline-flex;flex:0 0 auto;gap:.35rem;align-items:center;padding:.35rem .5rem;border:1px solid #294149;background:#0b1b20}.diffuse-journey i{width:.6rem;height:.22rem;background:var(--df-mint)}.diffuse-journey i[data-color=incoming]{background:var(--df-gold)}.diffuse-journey i[data-color=inside]{background:#bd704d}.diffuse-journey b{color:#6b858a}.diffuse-visual{min-height:14rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(10rem,.7fr);gap:1rem;align-items:stretch}.diffuse-visual figure{min-width:0;margin:0}.diffuse-visual svg{width:100%;height:100%;min-height:13rem;border:1px solid #1f383d;background:#081a1e}.diffuse-visual figcaption{display:grid;gap:.25rem;padding:.6rem .7rem;border:1px solid #1f383d;border-top:0;color:var(--df-muted);font-size:.65rem;line-height:1.5}.diffuse-visual figcaption strong{color:var(--df-mint)}.diffuse-ground{fill:none;stroke:#536b6e;stroke-width:4}.diffuse-normal{stroke:var(--df-mint);stroke-width:3}.diffuse-normal[data-visible=false],.diffuse-view[data-visible=false]{opacity:0}.diffuse-light{fill:none;stroke:var(--df-gold);stroke-width:4}.diffuse-view{fill:none;stroke:var(--df-blue);stroke-width:4}.diffuse-point{fill:#f3f8f4}.diffuse-out-ray{stroke:var(--df-mint);stroke-width:2}.diffuse-visual text{fill:var(--df-ink);font:800 13px var(--font-body)}.diffuse-swatch{display:grid;place-items:center;align-content:center;gap:1rem;padding:1rem;border:1px solid #1f383d;background:#081a1e}.diffuse-swatch i{width:min(8rem,70%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,hsl(32 72% calc(12% + var(--diffuse-light) * 68%)),#25170e 70%);box-shadow:0 1rem 2rem #00000061}.diffuse-swatch span{max-width:22ch;color:var(--df-muted);font-size:.68rem;text-align:center;line-height:1.5}.diffuse-readouts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #1f383d;background:#081a1e}.diffuse-readouts>div{display:grid;gap:.25rem;padding:.55rem .65rem;border-right:1px solid #1f383d}.diffuse-readouts>div:last-child{border-right:0}.diffuse-readouts span{color:var(--df-muted);font-size:.6rem}.diffuse-readouts strong{font:750 .7rem ui-monospace,monospace}.diffuse-readouts .danger{color:#ff9a8e}.diffuse-bars{display:grid;gap:.55rem}.diffuse-bars[data-visible=false]{opacity:.34}.diffuse-bars>div{display:grid;grid-template-columns:6.8rem minmax(0,1fr) 3.5rem;gap:.65rem;align-items:center;color:var(--df-muted);font-size:.68rem}.diffuse-bars>div>i{height:.55rem;overflow:hidden;background:#173038}.diffuse-bars>div>i b{display:block;height:100%;background:#54737a}.diffuse-bars>div.is-active>i b{background:var(--df-mint)}.diffuse-bars>div.is-active span{color:var(--df-ink);font-weight:800}.diffuse-bars output{font:700 .68rem ui-monospace,monospace}.diffuse-bars .diffuse-energy>i b{background:var(--df-gold)}.diffuse-controls-toggle{position:absolute;z-index:4;top:.65rem;right:.65rem;background:#10252a}.diffuse-controls{position:absolute;z-index:3;top:3.65rem;right:.65rem;width:min(18rem,calc(100% - 1.3rem));display:grid;gap:.8rem;padding:.85rem;border:1px solid #3b5960;border-radius:.65rem;background:#0d2227;box-shadow:0 1.25rem 3rem #0006}.diffuse-controls>div{display:flex;gap:.5rem;align-items:center;justify-content:space-between}.diffuse-controls>div span{color:var(--df-muted);font-size:.65rem}.diffuse-controls>div span.is-dirty{color:var(--df-gold)}.diffuse-controls>div button{min-height:36px;padding:.4rem .55rem;font-size:.65rem}.diffuse-controls>div button[aria-pressed=true]{border-color:var(--df-mint);color:var(--df-mint)}.diffuse-controls label,.diffuse-controls__ack{display:grid;gap:.5rem}.diffuse-controls__ack{padding:.65rem;border:1px solid var(--df-line);color:var(--df-muted);font-size:.68rem;line-height:1.5}.diffuse-controls__ack strong{color:var(--df-ink)}.diffuse-controls label>span{display:flex;justify-content:space-between;color:var(--df-muted);font-size:.72rem}.diffuse-controls output{color:var(--df-gold);font:800 .78rem ui-monospace,monospace}.diffuse-controls input{width:100%;min-height:44px;accent-color:var(--df-gold)}.diffuse-controls select{min-height:44px;padding:.55rem;border:1px solid var(--df-line);border-radius:.45rem;color:var(--df-ink);background:#10282e}.diffuse-controls p{color:var(--df-muted);font-size:.67rem;line-height:1.55}.diffuse-controls .diffuse-primary{border-color:var(--df-gold);color:#171105;background:var(--df-gold)}.diffuse-controls .diffuse-primary:disabled,.diffuse-controls button:disabled,.diffuse-controls select:disabled,.diffuse-controls input:disabled{cursor:not-allowed;opacity:.45}.diffuse-gate,.diffuse-prediction,.diffuse-action,.diffuse-explanation{display:grid;gap:1rem;padding:1.2rem;border-block:1px solid var(--gray-700);background:color-mix(in srgb,var(--gray-900) 75%,transparent)}.diffuse-gate p,.diffuse-action p,.diffuse-explanation>p,.diffuse-formula p,.diffuse-boundaries p{max-width:68ch;color:var(--df-muted);line-height:1.75}.diffuse-gate p b{color:var(--df-ink)}.diffuse-gate button,.diffuse-action>button{width:fit-content;border-color:var(--df-gold);color:#171105;background:var(--df-gold)}.diffuse-prediction h2{max-width:62ch;font-size:1.25rem;line-height:1.45}.diffuse-prediction>div{display:flex;flex-wrap:wrap;gap:.55rem}.diffuse-prediction>div button{background:#10262d}.diffuse-prediction .diffuse-skip{width:fit-content;padding-inline:0;border:0;color:var(--df-muted);text-decoration:underline;text-underline-offset:.25rem}.diffuse-prediction-feedback{display:grid;gap:.3rem;padding:.75rem;border:1px solid #476066;background:#0b1c20}.diffuse-prediction-feedback[data-correct=true]{border-color:var(--df-mint)}.diffuse-prediction-feedback strong{color:var(--df-ink)}.diffuse-action small{color:var(--df-muted);line-height:1.55}.diffuse-explanation{border-color:color-mix(in srgb,var(--df-mint) 55%,var(--gray-700));background:color-mix(in srgb,var(--df-mint) 5%,var(--df-bg))}.diffuse-explanation h2{margin-top:.3rem;font-size:1.3rem}.diffuse-explanation>p strong{display:block;color:var(--df-ink)}.diffuse-term{max-width:70ch;display:grid;margin:0;border-block:1px solid var(--df-line)}.diffuse-term>div{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--df-line)}.diffuse-term>div:last-child{border-bottom:0}.diffuse-term dt{color:var(--df-mint);font-size:.72rem;font-weight:800}.diffuse-term dd{margin:0;color:var(--df-muted);line-height:1.65}.diffuse-formula{max-width:70ch;display:grid;gap:.5rem;padding:1rem;border:1px solid var(--df-line);background:#08171b}.diffuse-formula>span{color:var(--df-mint);font-size:.68rem;font-weight:800}.diffuse-formula code{overflow-wrap:anywhere;color:var(--df-gold);font:800 .82rem/1.6 ui-monospace,monospace}.diffuse-boundaries{max-width:70ch;display:grid;gap:.6rem}.diffuse-boundaries p{padding:.75rem;border:1px solid var(--df-line)}.diffuse-boundaries strong{display:block;color:var(--df-ink)}.diffuse-explanation blockquote{max-width:70ch;margin:0;padding:1rem;border:1px solid var(--df-line);line-height:1.75}.diffuse-explanation blockquote strong{display:block;color:var(--df-gold)}.diffuse-explanation details{max-width:75ch;border-top:1px solid var(--df-line)}.diffuse-explanation summary{min-height:50px;display:flex;align-items:center;color:var(--df-mint);font-size:.75rem;font-weight:800;cursor:pointer}.diffuse-explanation details>p{color:var(--df-muted);font-size:.7rem}.diffuse-explanation pre{overflow:auto;margin:0;padding:1rem;background:#061116}.diffuse-explanation pre code{color:#d0f3e6;font:700 .76rem/1.7 ui-monospace,monospace}.diffuse-explanation a{min-height:44px;display:inline-flex;align-items:center;color:var(--df-mint);font-size:.75rem;font-weight:800}.diffuse-pagination{display:flex;gap:.65rem;justify-content:space-between}.diffuse-pagination button,.diffuse-pagination a{color:var(--df-mint);text-decoration:none}@media(min-width:50em){.diffuse-orientation,.diffuse-lesson__header{grid-template-columns:minmax(0,1fr) auto}.diffuse-mode{justify-content:flex-end}}@media(max-width:42rem){.diffuse-course{gap:1.55rem;padding-bottom:3rem}.diffuse-mode button{flex:1}.diffuse-step-nav{grid-template-columns:repeat(17,8.8rem)}.diffuse-lesson__header h2{font-size:clamp(1.9rem,9vw,2.8rem)}.diffuse-workbench{min-height:42rem;padding:.65rem}.diffuse-viewport{min-height:40rem}.diffuse-viewport header{padding-top:3.2rem;padding-right:0}.diffuse-viewport header output{font-size:.7rem}.diffuse-visual{grid-template-columns:1fr}.diffuse-swatch{display:none}.diffuse-readouts{grid-template-columns:1fr 1fr}.diffuse-readouts>div:nth-child(2){border-right:0}.diffuse-readouts>div:nth-child(-n+2){border-bottom:1px solid #1f383d}.diffuse-controls-toggle{top:.55rem;right:.55rem}.diffuse-controls{top:3.45rem;right:.55rem;max-height:23rem;overflow-y:auto}.diffuse-pagination>*{flex:1;text-align:center}.diffuse-pagination span{display:none}.diffuse-bars>div{grid-template-columns:5.8rem minmax(0,1fr) 3rem}.diffuse-term>div{grid-template-columns:1fr;gap:.25rem}.diffuse-prediction>div{display:grid}.diffuse-prediction>div button{width:100%;text-align:left}}@media(prefers-reduced-motion:reduce){.diffuse-course *{scroll-behavior:auto}}
