:root{color:#202d3c;font-synthesis:none;--accent:#245d4e;--line:#e1e5e9;--muted:#66717d;background:#f5f6f8;font-family:Segoe UI,system-ui,sans-serif}.profile-bar{z-index:5;background:#f2f7f5;border-bottom:1px solid #d5e4df;align-items:center;gap:.55rem;padding:.45rem 1rem;font-size:.9rem;display:flex;position:sticky;top:0}.profile-bar label{font-weight:700}.profile-bar input{width:12rem;font:inherit;background:#fff;border:1px solid #9bbab0;border-radius:6px;padding:.35rem .55rem}.profile-bar span{color:#46665d;font-size:.82rem}@media (max-width:600px){.profile-bar{flex-wrap:wrap}.profile-bar input{flex:1;min-width:10rem}}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#f5f6f8!important}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button{border:1px solid var(--line);color:inherit;background:#fff;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:7px 10px;font-size:14px;font-weight:550;display:inline-flex}button:hover:not(:disabled){background:#f0f4f2;border-color:#bac9c3}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:2px solid #33775e}button svg{flex-shrink:0}a{color:var(--accent)}pre,code{font-family:Consolas,Cascadia Code,monospace}pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}h1,h2,p{margin:0}h2{font-size:14px;line-height:1.5}.muted{color:var(--muted);font-size:13px}.study-app{flex-direction:column;height:100dvh;display:flex}.study-header{border-bottom:1px solid var(--line);background:#fff;flex-shrink:0;align-items:center;gap:16px;height:58px;padding:0 20px;display:flex}.study-brand{color:#233d35;align-items:center;gap:8px;text-decoration:none;display:flex}.study-brand span{background:#f0f6f3;border:1px solid #c6d8d0;border-radius:5px;padding:5px 7px;font-size:15px;font-weight:800}.study-brand b{letter-spacing:-.5px;font-size:16px}.catalog-trigger{margin-left:12px}.header-divider{border-left:1px solid var(--line);height:20px}.header-course{align-items:center;gap:12px;font-size:13px;font-weight:600;display:flex}.header-course small{color:var(--muted);font-weight:400}.header-spacer{flex:1}.understood{color:var(--muted);border-color:#0000}.understood.is-done{color:var(--accent);background:#edf5f0}.next-lesson{border-color:#c8d4ce}.mobile-tabs{display:none}.study-workspace{grid-template-columns:var(--problem-width) 7px minmax(0, 1fr);flex:1;min-height:0;display:grid}.problem-pane{background:#fff;flex-direction:column;min-height:0;display:flex;overflow:hidden}.problem-heading{padding:25px 24px 0}.eyebrow{letter-spacing:.5px;color:var(--muted);margin-bottom:9px;font-size:11px;font-weight:650}.problem-heading h1{letter-spacing:-.5px;font-size:clamp(25px,1.35vw,32px);font-weight:650;line-height:1.3}.problem-tabs{border-bottom:1px solid var(--line);gap:22px;margin-top:20px;display:flex}.problem-tabs button{color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:10px 0}.problem-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.problem-scroll{flex:1;min-height:0;padding:22px 24px 24px;overflow:auto}.statement,.problem-section p,.how-to-run p{white-space:pre-wrap;font-size:clamp(15px,.9vw,18px);line-height:1.65}.problem-section{margin-top:22px}.problem-section h2,.how-to-run h2{margin-bottom:9px}.source-note{color:#6c614d;border-left:2px solid #d5b47a;margin:20px 0;padding-left:11px;font-size:12px;line-height:1.7}.sample{border:1px solid var(--line);border-radius:7px;margin-top:24px;overflow:hidden}.sample-title{border-bottom:1px solid var(--line);background:#f7f8fa;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.sample-title h2{font-size:13px}.sample-title button{color:var(--accent);background:0 0;border:0;padding:4px 7px;font-size:11px}.sample>small{color:var(--muted);text-transform:uppercase;padding:10px 12px 4px;font-size:10px;font-weight:650;display:block}.sample pre{padding:2px 12px 12px;font-size:clamp(13px,.78vw,16px);line-height:1.7}.sample pre+small{border-top:1px solid #eef0f2}.problem-source{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:7px;margin-top:28px;padding-top:16px;font-size:13px;line-height:1.6;display:flex}.problem-source svg{flex-shrink:0;margin-top:2px}.problem-source a{white-space:nowrap;margin-left:auto}.problem-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:10px 18px;font-size:13px;display:flex}.problem-bottom button{border:0;font-size:12px}.problem-bottom .mobile-next,.problem-bottom .mobile-understood{display:none}.pane-resizer{cursor:col-resize;touch-action:none;background:#f3f4f6;position:relative}.pane-resizer:hover,.pane-resizer:focus{background:#c7d9d0}.pane-resizer:after{content:"";background:#c9ced5;border-radius:2px;width:2px;height:32px;position:absolute;top:50%;left:2px}.code-pane{background:#fbfcfc;flex-direction:column;min-width:0;min-height:0;display:flex}.editor-toolbar{border-bottom:1px solid var(--line);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:49px;padding:0 14px;display:flex}.file-name{align-items:center;gap:8px;font-family:Consolas,monospace;font-size:13px;display:flex}.file-name>span{color:var(--muted);border-left:1px solid var(--line);margin-left:6px;padding-left:10px;font-family:Segoe UI,sans-serif;font-size:10px}.editor-actions{align-items:center;gap:6px;display:flex}.editor-actions button{font-size:13px}.editor-actions .run-button{background:var(--accent);border-color:var(--accent);color:#fff;padding-inline:13px}.run-button span{opacity:.65;border-left:1px solid #ffffff40;margin-left:3px;padding-left:7px;font-size:9px}.editor-actions .run-button:hover{background:#1b493c}.trace-toggle.active{color:var(--accent);background:#eaf3ee;border-color:#b5cfc0}.editor-area{flex:1;min-height:170px;overflow:hidden}.editor-loading{height:100%;color:var(--muted);place-items:center;font-size:13px;display:grid}.debug-current{border-left:3px solid #4d8768;background:#dceee0!important}.debug-previous{background:#f1f4f2}.debug-arrow{background:#47735a;width:5px!important}.console-panel{color:#e4e8ed;background:#18212a;border-top:1px solid #d6dce1;flex-direction:column;flex-shrink:0;height:184px;display:flex}.console-toolbar{background:#202b36;flex-shrink:0;align-items:center;gap:12px;height:34px;padding:0 14px;font-size:11px;display:flex}.console-toolbar strong{font-weight:550}.console-toolbar>span{color:#9daebb;font-size:10px}.console-toolbar button{color:#b9c6ce;background:0 0;border-color:#51606b;margin-left:auto;padding:2px 7px;font-size:10px}.console-body{cursor:text;flex:1;min-height:0;padding:12px 16px;font-family:Consolas,monospace;font-size:14px;line-height:1.65;overflow:auto}.console-empty{color:#aeb8b4;flex-direction:column;gap:4px;padding:4px 0;font:12px/1.6 system-ui,sans-serif;display:flex}.console-empty strong{color:#d3dbd7;font-weight:500}.console-empty code{color:#c3d5cb}.console-body pre{font:inherit;white-space:pre-wrap;display:inline}.console-body form{display:inline}.console-body input{color:#fff;width:min(70%,400px);min-width:30px;font:inherit;caret-color:#9ee0b5;background:0 0;border:0;outline:0;padding:0}.console-body input:focus-visible{outline:none}.console-body form button{color:#9daebb;background:0 0;border:0;padding:0 10px;font-size:14px}.run-error{color:#8b2d1c;background:#fff3ee;flex-shrink:0;justify-content:space-between;gap:10px;max-height:min(220px,30dvh);padding:12px 16px;font-size:clamp(17px,1vw,21px);font-weight:500;line-height:1.65;display:flex;overflow:auto}.run-error button{color:inherit;background:0 0;border:0;align-self:flex-start;min-width:32px;min-height:32px;padding:0}.run-error>span{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.study-notice{background:#eef4f1;border-top:1px solid #d5e4dc;justify-content:space-between;gap:10px;padding:8px 14px;font-size:12px;display:flex}.study-notice button{background:0 0;border:0;padding:0}.guide-intro ol{margin:12px 0 0;padding-left:20px}.guide-intro li{margin-bottom:12px;padding-left:4px;font-size:14px;line-height:1.8}.concept{border-bottom:1px solid #edf0f2;padding:11px 0}.concept code{color:var(--accent);font-size:13px}.concept p{margin-top:4px;font-size:13px!important}.how-to-run{margin-top:24px}.how-to-run p{font-size:13px}.trace-panel{border-top:1px solid var(--line);background:#f7faf8;flex-direction:column;flex-shrink:0;max-height:260px;display:flex}.trace-toolbar{flex-wrap:wrap;align-items:center;gap:9px;padding:9px 12px;font-size:12px;display:flex}.trace-toolbar strong{font-size:12px}.trace-toolbar>span,.trace-toolbar>small{color:var(--muted);font-size:10px}.trace-controls{gap:3px;margin-left:auto;display:flex}.trace-controls button{background:0 0;border:0;padding:4px}.trace-slider{accent-color:var(--accent);width:calc(100% - 24px);height:3px;margin:0 12px 10px}.trace-data{flex:1;min-height:0;max-height:200px;padding:0 14px 12px;overflow:auto}.trace-scalars{flex-wrap:wrap;gap:8px;display:flex}.variable{background:#fff;border:1px solid #dce4df;border-radius:5px;grid-template-columns:1fr auto;gap:3px 10px;min-width:100px;padding:6px 10px;font-family:Consolas,monospace;display:grid}.variable span{color:#57675d;font-size:11px}.variable strong{font-size:13px}.variable small{color:#89948c;grid-column:1/-1;font-size:9px}.changed{background:#e4f0d9!important;border-color:#a2bb83!important}.trace-array{clear:both;margin-top:12px}.trace-matrix{clear:both;margin-top:12px;overflow:auto}.trace-matrix>strong{font:12px Consolas,monospace}.trace-matrix>strong small{color:var(--muted);font-size:10px}.trace-matrix table{border-collapse:separate;border-spacing:4px;margin-top:4px;font:12px Consolas,monospace}.trace-matrix th{color:var(--muted);padding:3px;font-size:9px;font-weight:400}.trace-matrix td{text-align:center;overflow-wrap:anywhere;background:#fff;border:1px solid #d9e1dc;border-radius:4px;min-width:36px;max-width:100px;padding:6px}.trace-matrix td.accessed{border-color:#527e9c;box-shadow:inset 0 -2px #527e9c}.trace-array>strong{font-family:Consolas,monospace;font-size:12px}.trace-array>strong small{color:var(--muted);margin-left:5px;font-size:10px;font-weight:400}.array-cells{gap:5px;margin-top:7px;padding-bottom:5px;display:flex;overflow:auto}.array-cell{text-align:center;background:#fff;border:1px solid #d9e1dc;border-radius:4px;flex-direction:column;flex-shrink:0;min-width:37px;font-family:Consolas,monospace;display:flex}.array-cell b{padding:5px 7px;font-size:13px;font-weight:500}.array-cell small{color:var(--muted);border-top:1px solid #d9e1dc;padding:2px;font-size:9px}.array-cell.accessed{border-color:#527e9c;box-shadow:inset 0 -2px #527e9c}.exchange-figure{float:left;background:#fff;border:1px solid #d9e2de;border-radius:5px;width:220px;margin:0 14px 10px 0;padding:9px 12px}.exchange-figure figcaption{color:var(--muted);font-size:11px}.exchange-stage{width:190px;height:60px;margin-top:9px;position:relative}.exchange-chip{background:#eaf3e4;border:1px solid #88a981;border-radius:5px;place-items:center;width:52px;height:34px;font-family:Consolas,monospace;font-size:15px;display:grid;position:absolute;top:13px}.exchange-left{animation:.6s ease-in-out both exchange-left;left:0}.exchange-right{animation:.6s ease-in-out both exchange-right;left:130px}.exchange-slot{text-align:center;width:52px;color:var(--muted);font-family:Consolas,monospace;font-size:10px;position:absolute;bottom:2px}.exchange-slot-left{left:0}.exchange-slot-right{left:130px}@keyframes exchange-left{0%{transform:translate(0)}50%{transform:translate(65px,-12px)}to{transform:translate(130px)}}@keyframes exchange-right{0%{transform:translate(0)}50%{transform:translate(-65px,12px)}to{transform:translate(-130px)}}.condition-result{background:#fff;border:1px solid #d9e2de;border-radius:4px;align-items:center;gap:10px;margin-bottom:10px;padding:8px 10px;font-size:12px;display:flex}.condition-result code{overflow-wrap:anywhere;flex:1}.condition-result strong{color:#245d4e;font-size:11px}.condition-false strong{color:#9b563b}.call-stack{flex-wrap:wrap;gap:5px;margin-bottom:12px;display:flex}.call-frame{background:#fff;border:1px solid #d9e2de;border-radius:4px;flex-direction:column;gap:3px;padding:6px 9px;display:flex}.call-frame code{font-size:11px}.call-frame small{color:var(--muted);font-size:9px}.call-frame.current{background:#eaf4ed;border-color:#7ba68d}.trace-output{align-items:flex-start;gap:12px;margin-top:12px;font-size:11px;display:flex}.trace-operations{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.trace-operations>div{background:#fff;border:1px solid #d9e2de;border-radius:5px;align-items:center;gap:8px;padding:7px 10px;font-family:Consolas,monospace;font-size:13px;display:flex}.trace-operations strong{color:var(--accent)}.trace-operations span{color:var(--muted)}.return-result{color:var(--accent);align-items:center;gap:7px;margin-bottom:10px;font-size:12px;display:flex}.trace-output small{color:var(--muted);white-space:nowrap}.trace-output pre{max-height:80px;font-size:12px;overflow:auto}.trace-empty{color:var(--muted);border-top:1px solid var(--line);background:#f7faf8;padding:18px;font-size:12px}.study-overlay{z-index:50;background:#15202c66;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.study-dialog{background:#fff;border:1px solid #ccd4dc;border-radius:10px;flex-direction:column;width:min(760px,100%);max-height:min(800px,90dvh);display:flex;overflow:hidden;box-shadow:0 18px 70px #142b3430}.dialog-title{justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.dialog-title h2{font-size:18px}.dialog-title button{border:0;padding:4px}.catalog-search{border:1px solid #cfd7de;border-radius:6px;align-items:center;gap:9px;margin:0 22px 15px;padding:9px 12px;display:flex}.catalog-search svg{color:var(--muted)}.catalog-search input{border:0;outline:none;width:100%;font-size:14px}.collection-tabs{flex-wrap:wrap;gap:7px;padding:0 22px 14px;display:flex}.collection-tabs button{background:#f2f4f6;border:0;font-size:12px}.collection-tabs button.active{color:var(--accent);background:#e4eee8}.catalog-meta{color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;padding:10px 22px;font-size:11px;display:flex}.catalog-list{padding:6px 10px 12px;overflow:auto}.catalog-item{text-align:left;background:#fff;border:0;border-radius:5px;justify-content:flex-start;gap:13px;width:100%;padding:12px;display:flex}.catalog-item.selected{background:#f0f5f2}.item-number{width:30px;height:30px;color:var(--muted);background:#f0f2f5;border-radius:5px;flex-shrink:0;place-items:center;font-size:11px;display:grid}.item-number.complete{color:var(--accent);background:#e2eee7}.catalog-item>span:nth-child(2){flex:1;min-width:0}.catalog-item strong{font-size:13px;font-weight:550;display:block}.catalog-item small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.catalog-item>svg{color:#909ca6}.current-label{color:var(--accent);white-space:nowrap;font-size:10px}.load-more{margin:12px auto;display:flex}.catalog-empty{text-align:center;color:var(--muted);padding:30px;font-size:13px}.reset-description{padding:0 22px 20px;font-size:14px;line-height:1.7}.dialog-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding:15px 22px;display:flex}.primary{background:var(--accent);color:#fff}.fatal{padding:30px}@media (min-width:1500px){.problem-heading{padding:28px 32px 0}.problem-scroll{padding:24px 32px}.editor-toolbar{padding-inline:20px}.console-panel{height:215px}}@media (max-width:1000px){.study-header{gap:10px;padding-inline:12px}.header-course{display:none}.problem-heading{padding:20px 18px 0}.problem-scroll{padding:18px}.problem-heading h1{font-size:21px}.download-code,.file-name>span{display:none}.editor-toolbar{padding-inline:10px}.trace-toolbar>span{display:inline}.trace-toolbar .phase-label{display:none}.trace-panel{max-height:235px}.understood{font-size:11px}.console-panel{height:170px}}@media (max-width:700px){body{overflow:hidden}.study-header{gap:8px;height:52px;padding:0 10px}.study-brand b,.header-divider,.understood,.next-lesson{display:none}.catalog-trigger{margin-left:4px;font-size:12px}.mobile-tabs{border-bottom:1px solid var(--line);background:#fff;flex-shrink:0;gap:20px;height:39px;padding:0 10px;display:flex}.mobile-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;font-size:12px}.mobile-tabs button.active{border-bottom-color:var(--accent);color:var(--accent)}.study-workspace{display:flex}.pane-resizer{display:none}.problem-pane,.code-pane{width:100%;height:100%}.mobile-code .problem-pane,.mobile-problem .code-pane{display:none}.problem-heading h1{font-size:23px}.problem-scroll{padding:18px 20px}.problem-heading{padding:20px 20px 0}.editor-toolbar{height:46px}.file-name{gap:5px;font-size:12px}.editor-actions{gap:4px}.editor-actions button{padding:6px;font-size:11px}.run-button span{display:none}.editor-actions .run-button{padding-inline:10px}.editor-area{min-height:125px}.console-panel{height:150px}.console-body{padding:10px 12px;font-size:13px}.trace-panel{max-height:205px}.trace-toolbar{gap:5px;padding:6px 10px}.trace-toolbar>small{white-space:nowrap;max-width:65px;overflow:hidden}.trace-data{padding-inline:10px}.trace-controls{gap:0}.variable{min-width:80px}.study-overlay{padding:10px}.study-dialog{max-height:94dvh}.dialog-title{padding:15px 16px}.catalog-search{margin-inline:16px}.collection-tabs{gap:5px;padding-inline:16px}.collection-tabs button{padding:6px 8px;font-size:11px}.catalog-meta{padding-inline:16px}.current-label{display:none}.catalog-item{padding:10px 7px}.study-notice{font-size:11px}.problem-bottom{padding:8px 12px}.problem-bottom>span{display:none}.problem-bottom .mobile-next,.problem-bottom .mobile-understood{min-height:32px;display:inline-flex}.problem-bottom .mobile-understood.is-done{color:var(--accent);background:#eaf4ed}.console-body input{font-size:16px}.trace-controls button{min-width:28px;min-height:28px}}@media (prefers-reduced-motion:reduce){.exchange-chip{animation-duration:0s}*{scroll-behavior:auto!important}}.stack-cells{flex-direction:column-reverse;align-items:flex-start}.stack-cells .array-cell{min-width:100px}.graph-toggle{margin:0 0 8px 12px;padding:3px 9px;font-size:11px}.study-graph{max-width:560px}.study-graph p,.study-graph label{font-size:12px;line-height:1.6}.study-graph label{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.study-graph select{background:#fff;border:1px solid #cdd6dc;border-radius:4px;padding:4px 8px}.study-graph svg{width:100%;max-height:310px;display:block}.graph-edge{fill:none;stroke:#94a3b0;stroke-width:1.5px;transition:stroke .2s,stroke-width .2s}.graph-edge.active{stroke:#315e49;stroke-width:3px}.graph-node circle{fill:#f5f7f9;stroke:#8e9ba6;stroke-width:1.5px;transition:fill .2s}.graph-node.visited circle{fill:#dceee0;stroke:#47735a}.graph-node text{fill:#273846;font:14px Consolas,monospace}@media (min-width:701px){.trace-panel.expanded{height:min(54vh,620px);max-height:min(54vh,620px)}.trace-panel.expanded .trace-data{max-height:none}}.course-app{background:#fff;flex-direction:column;height:100dvh;display:flex}.course-header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.course-header nav{flex-wrap:wrap;gap:8px;display:flex}.course-brand{border:0;padding:0;font-size:18px}.course-brand span{background:#eef4f1;border-radius:4px;padding:6px 9px}.course-header .active{color:var(--accent);background:#edf4f0}.course-main{flex:1;min-height:0;padding:36px 24px 64px;overflow:auto}.course-width{max-width:1200px;margin:auto}.course-reading{max-width:900px;margin:auto}.course-app h1{margin:8px 0 18px;font-size:clamp(25px,3vw,36px);line-height:1.3}.course-app h2{margin-bottom:12px;font-size:20px}.course-app h3{margin:0 0 8px;font-size:17px}.course-app p{font-size:clamp(16px,.95vw,19px);line-height:1.7}.course-app .course-eyebrow{color:var(--accent);margin-top:16px;font-size:12px}.course-intro{max-width:760px}.track-switcher{flex-wrap:wrap;gap:8px;margin:20px 0 8px;display:flex}.track-switcher button{padding:10px 14px;font-size:15px}.track-switcher button.active{color:var(--accent);background:#e5f0eb;border-color:#9dbbae}.course-intro-actions{flex-wrap:wrap;gap:10px;margin:22px 0 16px;display:flex}.course-primary{color:#fff;background:#245d4e;border-color:#245d4e;padding:10px 16px}.course-primary:hover:not(:disabled){color:#fff;background:#1b493d}.course-app .course-small{color:var(--muted);font-size:14px;line-height:1.7}.course-how{border-block:1px solid var(--line);margin:24px 0;padding:24px 0}.course-how ol{margin:0;padding-left:22px}.course-how li{padding:5px 0;line-height:1.8}.course-phase{border-bottom:1px solid var(--line);grid-template-columns:36px 1fr;gap:16px;padding:28px 0;display:grid}.course-phase>div:last-child{min-width:0}.phase-toggle{text-align:left;border:0;border-radius:0;justify-content:space-between;gap:12px;width:100%;padding:0;font-size:17px}.phase-toggle span{min-width:0}.phase-toggle small{color:var(--muted);margin-top:6px;font-size:12px;font-weight:400;display:block}.phase-toggle svg{flex-shrink:0;transition:transform .15s}.phase-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.course-app h1:focus{outline:none}.phase-number{background:#eef4f1;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.course-lesson-list{margin:16px 0;padding:0;list-style:none}.course-lesson-list button{text-align:left;border:0;border-bottom:1px solid #edf0f2;border-radius:0;justify-content:flex-start;width:100%;padding:14px 0}.course-lesson-list button span{color:var(--muted);flex-shrink:0;width:46px;font-size:12px}.course-lesson-list button strong{flex:1;font-weight:500}.course-lesson-list button small{color:var(--accent)}.course-app .course-ready{color:var(--muted);font-size:13px}.course-exam-goals{padding:28px 0}.course-exam-goals>div{padding:16px 0}.curated-sources>section{border-bottom:1px solid var(--line);padding:24px 0}.source-lessons{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.course-lead{color:#52616c}.course-back{color:var(--muted);border:0;margin-bottom:16px;padding:0}.reading-steps{border-bottom:1px solid var(--line);gap:10px;margin:26px 0;padding-bottom:12px;display:flex}.reading-steps button{border:0;flex:1;font-weight:500}.reading-steps button.active{color:var(--accent);background:#edf4f0}.reading-steps span{color:var(--muted)}.reading-content>p{margin-bottom:20px}.program-flow{justify-content:space-between;align-items:center;gap:12px;padding:24px 0;display:flex}.program-flow div{border:1px solid var(--line);border-radius:6px;flex:1;padding:16px}.program-flow small,.program-flow b{display:block}.program-flow small{color:var(--muted);margin-bottom:8px}.annotated-example section{border-bottom:1px solid var(--line);padding:16px 0}.annotated-example pre{background:#f4f6f7;border-radius:5px;padding:14px;font-size:15px;line-height:1.7}.annotated-example p{margin-top:10px}.reading-check{border:1px solid var(--line);background:#f6f8f7;border-radius:6px;padding:20px}.reading-check>div{flex-direction:column;gap:8px;margin-top:16px;display:flex}.reading-check button{text-align:left;justify-content:flex-start;padding:12px}.reading-check button.selected{border-color:var(--accent);background:#edf4f0}.reading-feedback{margin-top:16px!important;font-size:14px!important}.reading-tasks{margin:26px 0}.reading-tasks ol{padding-left:22px}.reading-tasks li{padding:6px 0;line-height:1.8}.reading-source{border-top:1px solid var(--line);color:var(--muted);gap:10px;margin-top:30px;padding:22px 0;font-size:12px;display:flex}.reading-source span{margin-top:5px;display:block}.reading-navigation{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding-top:18px;display:flex}.exam-hints details{border-bottom:1px solid var(--line);padding:12px 0}.exam-hints summary,.check-list summary{cursor:pointer;font-size:13px}.exam-hints p{margin-top:10px;font-size:14px;line-height:1.8}.prerequisite-link{margin:8px 0;font-size:12px;display:flex}.check-summary{padding:14px 0;font-size:13px;line-height:1.7}.check-list{max-height:55vh;overflow:auto}.check-list details{border-bottom:1px solid var(--line);padding:12px 0}.check-list details>div{background:#f5f7f8;margin-top:10px;padding:12px}.check-list small{color:var(--muted);margin:10px 0 4px;display:block}.check-list pre{font-size:13px}@media (max-width:700px){.course-header{flex-direction:column;align-items:flex-start;gap:10px;padding:12px}.course-header nav{width:100%}.course-header nav button{flex:1;padding:7px;font-size:11px}.course-main{padding:18px 16px 34px}.reading-steps{gap:3px}.reading-steps button{padding:8px 4px;font-size:12px}.course-phase{grid-template-columns:28px 1fr;gap:10px}.program-flow{gap:5px}.program-flow div{padding:10px;font-size:13px}.program-flow small{font-size:10px}.course-app p{font-size:16px;line-height:1.7}.course-app .course-small{font-size:14px}.learning-trigger{padding:5px;font-size:11px}}@media (min-width:1600px){.problem-heading,.problem-scroll{padding-inline:32px}.course-main{padding-inline:48px}}.reference-preview{white-space:pre;color:#202733;background:#f5f6f8;border:1px solid #d9dde3;border-radius:6px;max-height:55vh;padding:16px;font:13px/1.6 Consolas,monospace;overflow:auto}.course-next{border-left:3px solid #b9c7c1;margin:14px 0;padding:10px 14px}.course-next b,.course-next span{display:block}.course-next span{color:var(--muted);margin-top:5px;font-size:14px}.course-analysis summary{cursor:pointer;font-weight:600}.course-analysis[open] summary{margin-bottom:12px}.trace-record{border:1px solid var(--line);border-radius:5px;margin-top:12px;padding:10px}.trace-record>strong{margin-bottom:8px;font-size:13px;display:block}.trace-record>strong small{color:var(--muted);font-weight:400}.memory-trace{border:1px solid var(--line);border-radius:5px;margin-top:12px;padding:12px}.memory-trace h3{flex-wrap:wrap;align-items:center;gap:12px;margin:0;font-size:13px;display:flex}.memory-trace h3 small{color:var(--muted);font-weight:400}.memory-help{color:var(--muted);margin:8px 0;font-size:12px;line-height:1.6}.memory-roots{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.memory-roots button{padding:5px 8px;font-size:12px}.memory-network{align-items:flex-start;gap:16px;padding:5px;display:flex;overflow:auto}.memory-layer{flex-direction:column;flex-shrink:0;gap:12px;display:flex}.memory-node{background:#fff;border:1px solid #c5cdc9;border-radius:4px;width:190px;padding:9px}.memory-node.selected,.memory-node:focus{outline:2px solid var(--accent);outline-offset:2px}.memory-node>strong{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:7px;font-size:12px;display:block}.memory-node>strong small{color:var(--muted);font-weight:400}.memory-field{justify-content:space-between;align-items:center;gap:8px;padding:4px 0;font-size:12px;display:flex}.memory-field.changed{background:#eef5f0}.memory-field code,.memory-field>span{overflow-wrap:anywhere;min-width:0}.memory-field button{flex-shrink:0;padding:4px 6px;font-size:12px}.detailed-solution{font-size:16px;line-height:1.7}.detailed-solution>h2{margin-bottom:12px;font-size:20px}.detailed-solution>details{border-bottom:1px solid var(--line);padding:14px 0}.detailed-solution summary{cursor:pointer;font-weight:600}.detailed-solution>details[open]>summary{margin-bottom:12px}.detailed-solution ol,.detailed-solution ul{margin:0;padding-left:22px}.detailed-solution li{margin:8px 0}.solution-note{color:var(--muted);font-size:14px}.solution-code{margin-top:14px}.solution-code pre,.solution-result pre{border:1px solid var(--line);background:#f4f6f7;border-radius:5px;padding:12px;font-size:15px}.solution-code p{margin-top:8px}.solution-walkthrough strong,.solution-walkthrough code{display:block}.solution-walkthrough code{color:#245d4e;margin:4px 0;font-size:15px}.solution-result{margin-top:14px}.solution-result pre{margin-top:8px}.solution-case{border-bottom:1px solid var(--line);padding:12px 0}.solution-case code,.solution-input code{white-space:pre-wrap;overflow-wrap:anywhere}.coverage-overview{margin:1.5rem 0 2rem}.coverage-topics{gap:.6rem;display:grid}.coverage-topics details{border:1px solid var(--border,#d8dfdc);border-radius:6px;padding:.9rem 1rem}.coverage-topics summary{cursor:pointer;line-height:1.5}.coverage-topics summary strong{margin-right:.8rem}.coverage-topics summary span{color:#52625b;font-size:.95em;display:inline-block}.coverage-topics p{margin:.8rem 0}
