.coding-patterns-module__yRE-mq__shell,.coding-patterns-module__yRE-mq__labShell{--pattern-paper:#f3f4ee;--pattern-surface:#fbfcf7;--pattern-ink:#141611;--pattern-muted:#65695f;--pattern-line:#d2d5ca;--pattern-dark-line:#34382e;--pattern-citron:#d8ff45;--pattern-green:#66751d;background:var(--pattern-paper);min-height:100dvh;color:var(--pattern-ink)}.coding-patterns-module__yRE-mq__courseLayout{grid-template-columns:252px minmax(0,1fr);min-height:calc(100dvh - 60px);display:grid}.coding-patterns-module__yRE-mq__courseRail{color:#f7f8f2;background:#151712;grid-template-rows:auto minmax(0,1fr) auto;height:calc(100dvh - 60px);display:grid;position:sticky;top:60px;overflow:hidden}.coding-patterns-module__yRE-mq__courseRail>header{border-bottom:1px solid var(--pattern-dark-line);padding:26px 22px 22px}.coding-patterns-module__yRE-mq__courseRail>header>span,.coding-patterns-module__yRE-mq__courseRail>footer>span,.coding-patterns-module__yRE-mq__courseHero .coding-patterns-module__yRE-mq__kicker,.coding-patterns-module__yRE-mq__learningLoop header>span,.coding-patterns-module__yRE-mq__moduleIndex>header span,.coding-patterns-module__yRE-mq__nextSession small,.coding-patterns-module__yRE-mq__moduleDetails article>span,.coding-patterns-module__yRE-mq__moduleFooter+span{color:#b8d32f;letter-spacing:.04em;font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__courseRail>header strong{margin-top:8px;font-size:1.08rem;display:block}.coding-patterns-module__yRE-mq__courseRail>header p{color:#adb2a5;margin:8px 0 0;font-size:.72rem;line-height:1.5}.coding-patterns-module__yRE-mq__courseRail nav{padding:8px;overflow-y:auto}.coding-patterns-module__yRE-mq__railGroup+.coding-patterns-module__yRE-mq__railGroup{border-top:1px solid var(--pattern-dark-line);margin-top:12px;padding-top:12px}.coding-patterns-module__yRE-mq__railGroup>header{color:#9ca391;letter-spacing:.04em;padding:4px 9px 7px;font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__courseRail nav a{color:#d9ddd2;border-radius:6px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:42px;padding:6px 9px;text-decoration:none;display:grid}.coding-patterns-module__yRE-mq__courseRail nav a>span{color:#8e9586;font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.coding-patterns-module__yRE-mq__courseRail nav a>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:620;overflow:hidden}.coding-patterns-module__yRE-mq__courseRail nav a>small{background:var(--pattern-citron);color:var(--pattern-ink);border-radius:4px;padding:3px 5px;font-size:.6875rem;font-weight:800}.coding-patterns-module__yRE-mq__courseRail>footer{border-top:1px solid var(--pattern-dark-line);padding:18px 22px 22px}.coding-patterns-module__yRE-mq__courseRail>footer strong{margin-top:7px;font-size:.76rem;display:block}.coding-patterns-module__yRE-mq__courseRail>footer>div{background:#373b31;border-radius:999px;height:5px;margin-top:12px;overflow:hidden}.coding-patterns-module__yRE-mq__courseRail>footer i{transform-origin:0;background:var(--pattern-citron);width:100%;height:100%;display:block}.coding-patterns-module__yRE-mq__courseMain{background:var(--pattern-paper);min-width:0}.coding-patterns-module__yRE-mq__courseHero{border-bottom:1px solid var(--pattern-line);grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:end;gap:44px;min-height:260px;padding:40px clamp(26px,4vw,58px) 36px;display:grid}.coding-patterns-module__yRE-mq__courseHero h1{max-width:820px;font-family:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.04em;margin:9px 0 12px;font-size:clamp(2.2rem,4.2vw,4.35rem);font-weight:730;line-height:.98}.coding-patterns-module__yRE-mq__courseHero>div>p:last-child{max-width:700px;color:var(--pattern-muted);margin:0;font-size:.86rem;line-height:1.6}.coding-patterns-module__yRE-mq__courseHero dl{border-block:1px solid var(--pattern-line);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.coding-patterns-module__yRE-mq__courseHero dl>div+div{border-left:1px solid var(--pattern-line)}.coding-patterns-module__yRE-mq__courseHero dt{color:var(--pattern-muted);font-size:.6875rem}.coding-patterns-module__yRE-mq__courseHero dd{margin:6px 0 0;font-size:1.45rem;font-weight:760}.coding-patterns-module__yRE-mq__nextSession{background:#efffb8;border:1px solid #c6d68d;border-radius:10px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:20px;margin:28px clamp(26px,4vw,58px);padding:22px;display:grid}.coding-patterns-module__yRE-mq__sessionMark{background:var(--pattern-ink);width:56px;height:56px;color:var(--pattern-citron);border-radius:8px;place-items:center;font-size:.7rem;font-weight:800;display:grid}.coding-patterns-module__yRE-mq__nextSession h2{margin:4px 0;font-size:1.08rem}.coding-patterns-module__yRE-mq__nextSession p{color:#525943;text-overflow:ellipsis;white-space:nowrap;max-width:780px;margin:0;font-size:.74rem;line-height:1.5;overflow:hidden}.coding-patterns-module__yRE-mq__nextSession>a,.coding-patterns-module__yRE-mq__moduleFooter a,.coding-patterns-module__yRE-mq__moduleFooter>a,.coding-patterns-module__yRE-mq__labHero aside a{background:var(--pattern-ink);color:#fff;border-radius:6px;justify-content:center;align-items:center;gap:18px;min-height:42px;padding:0 15px;font-size:.72rem;font-weight:760;text-decoration:none;display:inline-flex}.coding-patterns-module__yRE-mq__learningLoop{border-block:1px solid var(--pattern-line);background:var(--pattern-surface);grid-template-columns:240px minmax(0,1fr);gap:26px;padding:30px clamp(26px,4vw,58px);display:grid}.coding-patterns-module__yRE-mq__learningLoop h2,.coding-patterns-module__yRE-mq__moduleIndex>header h2,.coding-patterns-module__yRE-mq__practiceHeader h2{letter-spacing:-.025em;margin:5px 0 0;font-size:1.35rem}.coding-patterns-module__yRE-mq__learningLoop ol{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.coding-patterns-module__yRE-mq__learningLoop li{min-height:108px;padding:5px 18px 5px 0}.coding-patterns-module__yRE-mq__learningLoop li+li{border-left:1px solid var(--pattern-line);padding-left:18px}.coding-patterns-module__yRE-mq__learningLoop li span{color:var(--pattern-green);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.coding-patterns-module__yRE-mq__learningLoop li strong{margin-top:14px;font-size:.78rem;display:block}.coding-patterns-module__yRE-mq__learningLoop li p{color:var(--pattern-muted);margin:5px 0 0;font-size:.72rem;line-height:1.45}.coding-patterns-module__yRE-mq__moduleIndex{padding:42px clamp(26px,4vw,58px) 70px}.coding-patterns-module__yRE-mq__moduleIndex>header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px;display:flex}.coding-patterns-module__yRE-mq__moduleIndex>header>p{max-width:540px;color:var(--pattern-muted);margin:0;font-size:.74rem;line-height:1.55}.coding-patterns-module__yRE-mq__moduleLedger{border-top:1px solid #24271f}.coding-patterns-module__yRE-mq__moduleGroup>header{border-bottom:1px solid #24271f;justify-content:space-between;align-items:end;gap:24px;min-height:64px;padding:18px 6px 12px;display:flex}.coding-patterns-module__yRE-mq__moduleGroup+.coding-patterns-module__yRE-mq__moduleGroup>header{margin-top:30px}.coding-patterns-module__yRE-mq__moduleGroup>header span,.coding-patterns-module__yRE-mq__moduleGroup>header p{display:block}.coding-patterns-module__yRE-mq__moduleGroup>header span{color:var(--pattern-green);font-size:.78rem;font-weight:760}.coding-patterns-module__yRE-mq__moduleGroup>header p,.coding-patterns-module__yRE-mq__moduleGroup>header small{color:var(--pattern-muted);margin:5px 0 0;font-size:.6875rem;line-height:1.45}.coding-patterns-module__yRE-mq__module{border-bottom:1px solid var(--pattern-line);scroll-margin-top:78px}.coding-patterns-module__yRE-mq__module summary{cursor:pointer;grid-template-columns:46px minmax(0,1fr) 150px 24px;align-items:center;gap:16px;min-height:94px;padding:14px 6px;list-style:none;display:grid}.coding-patterns-module__yRE-mq__module summary::-webkit-details-marker{display:none}.coding-patterns-module__yRE-mq__module summary:hover{background:#f8f9f4}.coding-patterns-module__yRE-mq__moduleNumber{color:var(--pattern-green);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.72rem;font-weight:760}.coding-patterns-module__yRE-mq__moduleTitle small,.coding-patterns-module__yRE-mq__moduleTitle strong,.coding-patterns-module__yRE-mq__moduleTitle>span,.coding-patterns-module__yRE-mq__moduleMeta small,.coding-patterns-module__yRE-mq__moduleMeta b{display:block}.coding-patterns-module__yRE-mq__moduleTitle small{color:var(--pattern-green);margin-bottom:4px;font-size:.6875rem}.coding-patterns-module__yRE-mq__moduleTitle strong{font-size:.88rem}.coding-patterns-module__yRE-mq__moduleTitle>span{max-width:860px;color:var(--pattern-muted);margin-top:5px;font-size:.72rem;line-height:1.45}.coding-patterns-module__yRE-mq__moduleMeta{text-align:right}.coding-patterns-module__yRE-mq__moduleMeta small{color:var(--pattern-muted);font-size:.6875rem}.coding-patterns-module__yRE-mq__moduleMeta b{color:var(--pattern-green);margin-top:5px;font-size:.7rem}.coding-patterns-module__yRE-mq__module summary>i,.coding-patterns-module__yRE-mq__referenceFold summary>i{font-size:1.25rem;font-style:normal;transition:transform .16s ease-out}.coding-patterns-module__yRE-mq__module[open] summary>i,.coding-patterns-module__yRE-mq__referenceFold[open] summary>i{transform:rotate(45deg)}.coding-patterns-module__yRE-mq__moduleDetails{border:1px solid var(--pattern-line);background:var(--pattern-line);grid-template-columns:1fr 1fr;gap:1px;margin:0 0 18px 62px;display:grid}.coding-patterns-module__yRE-mq__moduleDetails article,.coding-patterns-module__yRE-mq__moduleFooter{background:var(--pattern-surface);padding:20px}.coding-patterns-module__yRE-mq__moduleDetails article p{color:#42463c;margin:8px 0 0;font-size:.76rem;line-height:1.55}.coding-patterns-module__yRE-mq__questionSamples{grid-column:1/-1}.coding-patterns-module__yRE-mq__questionSamples ul{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.coding-patterns-module__yRE-mq__questionSamples li{border:1px solid var(--pattern-line);background:#fff;justify-content:space-between;gap:10px;padding:10px 12px;display:flex}.coding-patterns-module__yRE-mq__questionSamples li strong{font-size:.72rem}.coding-patterns-module__yRE-mq__questionSamples li small{color:var(--pattern-muted);font-size:.6875rem}.coding-patterns-module__yRE-mq__moduleFooter{grid-column:1/-1;justify-content:space-between;align-items:center;gap:18px;display:flex}.coding-patterns-module__yRE-mq__moduleFooter p{max-width:700px;color:var(--pattern-muted);margin:0;font-size:.72rem;line-height:1.45}.coding-patterns-module__yRE-mq__moduleFooter>a{background:var(--pattern-ink);color:#fff}.coding-patterns-module__yRE-mq__labShell{background:#e9ebe3}.coding-patterns-module__yRE-mq__labHero{border-bottom:1px solid var(--pattern-line);background:var(--pattern-paper);grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);min-height:230px;display:grid}.coding-patterns-module__yRE-mq__labHero>div{align-self:end;padding:36px clamp(26px,4vw,58px)}.coding-patterns-module__yRE-mq__labHero>div>p{color:var(--pattern-green);gap:8px;margin:0 0 12px;font-size:.7rem;font-weight:740;display:flex}.coding-patterns-module__yRE-mq__labHero>div>p a{color:inherit}.coding-patterns-module__yRE-mq__labHero h1{max-width:840px;font-family:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.04em;margin:0;font-size:clamp(2.25rem,4.3vw,4.6rem);font-weight:730;line-height:.98}.coding-patterns-module__yRE-mq__labHero aside{color:#f6f7f1;background:#171914;flex-direction:column;justify-content:flex-end;padding:30px clamp(26px,4vw,48px);display:flex}.coding-patterns-module__yRE-mq__labHero aside>span{color:var(--pattern-citron);font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__labHero aside p{color:#c3c8bc;margin:10px 0 18px;font-size:.78rem;line-height:1.55}.coding-patterns-module__yRE-mq__labHero aside a{background:var(--pattern-citron);width:fit-content;color:var(--pattern-ink)}.coding-patterns-module__yRE-mq__patternReference{border-bottom:1px solid var(--pattern-line);background:var(--pattern-surface);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.coding-patterns-module__yRE-mq__patternReference article{min-height:132px;padding:20px clamp(20px,3vw,34px)}.coding-patterns-module__yRE-mq__patternReference article+article{border-left:1px solid var(--pattern-line)}.coding-patterns-module__yRE-mq__patternReference span{color:var(--pattern-green);font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__patternReference h2{margin:16px 0 6px;font-size:.86rem}.coding-patterns-module__yRE-mq__patternReference p{color:var(--pattern-muted);margin:0;font-size:.72rem;line-height:1.5}.coding-patterns-module__yRE-mq__algorithmRoster{border-bottom:1px solid var(--pattern-line);background:var(--pattern-paper);padding:30px clamp(20px,4vw,58px) 34px}.coding-patterns-module__yRE-mq__algorithmRoster>header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:16px;display:flex}.coding-patterns-module__yRE-mq__algorithmRoster>header span{color:var(--pattern-green);font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__algorithmRoster>header h2{letter-spacing:-.025em;margin:5px 0 0;font-size:clamp(1.15rem,2vw,1.65rem)}.coding-patterns-module__yRE-mq__algorithmRoster>header a{color:var(--pattern-ink);text-underline-offset:4px;font-size:.72rem;font-weight:720}.coding-patterns-module__yRE-mq__algorithmTableWrap{border-block:1px solid #24271f;overflow-x:auto}.coding-patterns-module__yRE-mq__algorithmTableWrap table{border-collapse:collapse;width:100%;min-width:720px;font-size:.72rem}.coding-patterns-module__yRE-mq__algorithmTableWrap th,.coding-patterns-module__yRE-mq__algorithmTableWrap td{border-bottom:1px solid var(--pattern-line);text-align:left;padding:11px 14px}.coding-patterns-module__yRE-mq__algorithmTableWrap thead th{color:var(--pattern-muted);font-size:.6875rem;font-weight:680}.coding-patterns-module__yRE-mq__algorithmTableWrap tbody th{color:var(--pattern-ink);font-weight:760}.coding-patterns-module__yRE-mq__algorithmTableWrap tbody td{color:#4f5449}.coding-patterns-module__yRE-mq__algorithmTableWrap tbody tr:last-child>*{border-bottom:0}.coding-patterns-module__yRE-mq__practiceSession{padding:24px clamp(14px,2vw,28px) 34px;scroll-margin-top:72px}.coding-patterns-module__yRE-mq__practiceHeader{justify-content:space-between;align-items:end;gap:20px;max-width:1540px;min-height:66px;margin:0 auto;padding:0 2px 14px;display:flex}.coding-patterns-module__yRE-mq__practiceHeader p{color:var(--pattern-green);margin:0;font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__practiceHeader>p{color:var(--pattern-muted);font-weight:500}.coding-patterns-module__yRE-mq__lab{background:#fff;border:1px solid #c5c9bd;border-radius:10px;grid-template-columns:230px minmax(300px,.9fr) minmax(430px,1.1fr);max-width:1540px;min-height:720px;margin:0 auto;display:grid;overflow:hidden;box-shadow:0 18px 48px #191d1514}.coding-patterns-module__yRE-mq__mobileMode{display:none}.coding-patterns-module__yRE-mq__labNav{border-right:1px solid var(--pattern-line);background:#f0f1eb}.coding-patterns-module__yRE-mq__labNav>header{border-bottom:1px solid var(--pattern-line);padding:20px}.coding-patterns-module__yRE-mq__labNav>header span,.coding-patterns-module__yRE-mq__labNav>header strong,.coding-patterns-module__yRE-mq__labNav>header small{display:block}.coding-patterns-module__yRE-mq__labNav>header span{color:var(--pattern-green);font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__labNav>header strong{margin-top:7px;font-size:.9rem}.coding-patterns-module__yRE-mq__labNav>header small{color:var(--pattern-muted);margin-top:5px;font-size:.6875rem}.coding-patterns-module__yRE-mq__labNav ol{margin:0;padding:8px;list-style:none}.coding-patterns-module__yRE-mq__labNav button{color:#2a2d25;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:8px;width:100%;min-height:60px;padding:9px 10px;display:grid}.coding-patterns-module__yRE-mq__labNav button:hover{background:#e2e5da}.coding-patterns-module__yRE-mq__labNav button[data-active=true]{background:var(--pattern-ink);color:#fff}.coding-patterns-module__yRE-mq__labNav button>span:first-child{font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.coding-patterns-module__yRE-mq__labNav button strong,.coding-patterns-module__yRE-mq__labNav button small{display:block}.coding-patterns-module__yRE-mq__labNav button strong{font-size:.72rem;line-height:1.3}.coding-patterns-module__yRE-mq__labNav button small{color:#72776c;margin-top:4px;font-size:.6875rem}.coding-patterns-module__yRE-mq__labNav button[data-active=true] small{color:#afb5aa}.coding-patterns-module__yRE-mq__labNav button>b{color:#8b9184;font-size:.74rem}.coding-patterns-module__yRE-mq__labNav button[data-complete=true]>b{color:#79a85e}.coding-patterns-module__yRE-mq__problemPanel{border-right:1px solid var(--pattern-line);min-width:0;max-height:720px;padding:30px clamp(24px,3vw,42px);overflow:auto}.coding-patterns-module__yRE-mq__problemMeta{gap:7px;display:flex}.coding-patterns-module__yRE-mq__difficulty,.coding-patterns-module__yRE-mq__minutes{border:1px solid var(--pattern-line);color:var(--pattern-muted);border-radius:999px;padding:5px 7px;font-size:.6875rem;font-weight:700}.coding-patterns-module__yRE-mq__difficulty[data-level=Easy]{color:#27633b;background:#edf7ef;border-color:#a9cdb5}.coding-patterns-module__yRE-mq__difficulty[data-level=Hard]{color:#8d3e32;background:#fff0ed;border-color:#d7b5af}.coding-patterns-module__yRE-mq__problemPanel h3{letter-spacing:-.035em;margin:16px 0 14px;font-size:clamp(1.65rem,2.5vw,2.8rem);line-height:1.02}.coding-patterns-module__yRE-mq__prompt{color:#3f443a;margin:0;font-size:.82rem;line-height:1.65}.coding-patterns-module__yRE-mq__problemPanel h4,.coding-patterns-module__yRE-mq__solutionGrid h4{letter-spacing:.04em;text-transform:uppercase;margin:28px 0 10px;font-size:.6875rem}.coding-patterns-module__yRE-mq__example{font-family:var(--font-geist-mono), ui-monospace, monospace;background:#f7f8f4;border:1px solid #dde0d6;border-radius:6px;margin-bottom:8px;padding:12px;font-size:.7rem;line-height:1.55}.coding-patterns-module__yRE-mq__example strong{color:var(--pattern-green)}.coding-patterns-module__yRE-mq__example p{color:var(--pattern-muted);font-family:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;margin:6px 0 0}.coding-patterns-module__yRE-mq__constraintList,.coding-patterns-module__yRE-mq__walkthrough{color:var(--pattern-muted);margin:0;padding-left:18px;font-size:.74rem;line-height:1.65}.coding-patterns-module__yRE-mq__revealButton,.coding-patterns-module__yRE-mq__mobileContinue{color:#292d24;cursor:pointer;background:#fff;border:1px solid #bdc2b5;border-radius:6px;min-height:42px;font-size:.72rem;font-weight:740}.coding-patterns-module__yRE-mq__problemPanel>.coding-patterns-module__yRE-mq__revealButton{width:100%;margin-top:24px}.coding-patterns-module__yRE-mq__revealButton:hover{background:#f5f9df;border-color:#87973d}.coding-patterns-module__yRE-mq__revealButton:disabled{color:#858a7f;cursor:not-allowed;background:#eff0eb}.coding-patterns-module__yRE-mq__hintList{gap:7px;margin-top:8px;display:grid}.coding-patterns-module__yRE-mq__hintList p{color:#505548;background:#f4f7e8;border:1px solid #d6dbc6;margin:0;padding:11px 12px;font-size:.72rem;line-height:1.5}.coding-patterns-module__yRE-mq__mobileContinue,.coding-patterns-module__yRE-mq__mobileBack{display:none}.coding-patterns-module__yRE-mq__editorPanel{background:#171a16;grid-template-rows:auto minmax(440px,1fr) auto;min-width:0;display:grid}.coding-patterns-module__yRE-mq__editorToolbar{color:#eff2eb;border-bottom:1px solid #30352b;justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:0 14px;display:flex}.coding-patterns-module__yRE-mq__editorToolbar>span,.coding-patterns-module__yRE-mq__editorToolbar>div{align-items:center;gap:8px;display:flex}.coding-patterns-module__yRE-mq__editorToolbar>span{color:#aeb4a7;font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__editorToolbar button,.coding-patterns-module__yRE-mq__solutionActions button{color:#dce1d7;cursor:pointer;background:#252920;border:1px solid #444a3e;border-radius:6px;min-height:34px;padding:0 11px;font-size:.6875rem;font-weight:720}.coding-patterns-module__yRE-mq__runButton{border-color:var(--pattern-citron)!important;background:var(--pattern-citron)!important;color:var(--pattern-ink)!important}.coding-patterns-module__yRE-mq__editorToolbar button:disabled{opacity:.62;cursor:wait}.coding-patterns-module__yRE-mq__editorWrap{min-height:440px;overflow:hidden}.coding-patterns-module__yRE-mq__results{color:#dce1d7;background:#11140f;border-top:1px solid #34392f;max-height:240px;overflow:auto}.coding-patterns-module__yRE-mq__results>header{border-bottom:1px solid #2c3128;justify-content:space-between;align-items:center;min-height:42px;padding:0 14px;display:flex}.coding-patterns-module__yRE-mq__results>header strong,.coding-patterns-module__yRE-mq__results>header span{font-size:.6875rem}.coding-patterns-module__yRE-mq__results>header span{color:#91998b}.coding-patterns-module__yRE-mq__testList{margin:0;padding:8px 14px 14px;list-style:none}.coding-patterns-module__yRE-mq__testList li{color:#b8beb2;grid-template-columns:18px 1fr;gap:8px;padding:7px 0;font-size:.6875rem;display:grid}.coding-patterns-module__yRE-mq__testList li[data-passed=true]>span{color:#a8db7c}.coding-patterns-module__yRE-mq__testList li[data-passed=false]>span{color:#ff9382}.coding-patterns-module__yRE-mq__runtimeError{color:#ff9f90;font-family:var(--font-geist-mono), ui-monospace, monospace;white-space:pre-wrap;margin:0;padding:13px 14px;font-size:.6875rem}.coding-patterns-module__yRE-mq__emptyResults{color:#8a9284;margin:0;padding:16px 14px;font-size:.7rem}.coding-patterns-module__yRE-mq__solutionPanel{border-top:1px solid var(--pattern-line);background:var(--pattern-surface);grid-column:1/-1;padding:28px clamp(24px,4vw,50px)}.coding-patterns-module__yRE-mq__solutionPanel>.coding-patterns-module__yRE-mq__revealButton{width:100%}.coding-patterns-module__yRE-mq__solutionPanel header{justify-content:space-between;gap:20px;display:flex}.coding-patterns-module__yRE-mq__sectionKicker{color:var(--pattern-green);margin:0;font-size:.6875rem;font-weight:760}.coding-patterns-module__yRE-mq__solutionPanel h3{margin:5px 0 0;font-size:1.45rem}.coding-patterns-module__yRE-mq__solutionPanel pre{color:#e9eee5;font-family:var(--font-geist-mono), ui-monospace, monospace;background:#191c16;border-radius:7px;margin:22px 0;padding:18px;font-size:.72rem;line-height:1.6;overflow:auto}.coding-patterns-module__yRE-mq__solutionGrid{grid-template-columns:1fr .55fr;gap:28px;display:grid}.coding-patterns-module__yRE-mq__solutionGrid h4{margin-top:0}.coding-patterns-module__yRE-mq__solutionGrid p{color:var(--pattern-muted);margin:0;font-size:.76rem;line-height:1.55}.coding-patterns-module__yRE-mq__solutionActions{gap:7px;display:flex}.coding-patterns-module__yRE-mq__solutionActions button{color:#343830;background:#fff;border-color:#bcc1b5}.coding-patterns-module__yRE-mq__referenceFold{border-top:1px solid var(--pattern-line);color:#fff;background:#171914;margin:0}.coding-patterns-module__yRE-mq__referenceFold>summary{cursor:pointer;grid-template-columns:140px minmax(0,1fr) 24px;align-items:center;gap:18px;min-height:76px;padding:0 clamp(26px,4vw,58px);list-style:none;display:grid}.coding-patterns-module__yRE-mq__referenceFold>summary::-webkit-details-marker{display:none}.coding-patterns-module__yRE-mq__referenceFold>summary span{color:var(--pattern-citron);font-size:.6875rem}.coding-patterns-module__yRE-mq__referenceFold>summary strong{font-size:.82rem}.coding-patterns-module__yRE-mq__trace{border-top:1px solid var(--pattern-dark-line);padding:30px clamp(26px,4vw,58px) 48px}.coding-patterns-module__yRE-mq__trace header{justify-content:space-between;gap:28px;margin-bottom:24px;display:flex}.coding-patterns-module__yRE-mq__trace h2{margin:0;font-size:1.45rem}.coding-patterns-module__yRE-mq__trace header p{color:#b4baad;max-width:520px;margin:0;font-size:.74rem;line-height:1.55}.coding-patterns-module__yRE-mq__traceSteps{background:var(--pattern-dark-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.coding-patterns-module__yRE-mq__traceSteps article{background:#20231c;min-height:132px;padding:18px}.coding-patterns-module__yRE-mq__traceSteps span{color:var(--pattern-citron);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.coding-patterns-module__yRE-mq__traceSteps strong{margin:24px 0 6px;font-size:.74rem;display:block}.coding-patterns-module__yRE-mq__traceSteps p{color:#abb2a4;margin:0;font-size:.7rem;line-height:1.45}.coding-patterns-module__yRE-mq__courseRail a:focus-visible,.coding-patterns-module__yRE-mq__nextSession a:focus-visible,.coding-patterns-module__yRE-mq__module summary:focus-visible,.coding-patterns-module__yRE-mq__moduleFooter a:focus-visible,.coding-patterns-module__yRE-mq__labHero a:focus-visible,.coding-patterns-module__yRE-mq__labNav button:focus-visible,.coding-patterns-module__yRE-mq__mobileMode button:focus-visible,.coding-patterns-module__yRE-mq__revealButton:focus-visible,.coding-patterns-module__yRE-mq__mobileContinue:focus-visible,.coding-patterns-module__yRE-mq__editorToolbar button:focus-visible,.coding-patterns-module__yRE-mq__solutionActions button:focus-visible,.coding-patterns-module__yRE-mq__referenceFold summary:focus-visible{outline-offset:2px;outline:3px solid #748717}@media (max-width:1080px){.coding-patterns-module__yRE-mq__courseLayout{grid-template-columns:220px minmax(0,1fr)}.coding-patterns-module__yRE-mq__courseHero{grid-template-columns:1fr;gap:24px}.coding-patterns-module__yRE-mq__learningLoop{grid-template-columns:1fr}.coding-patterns-module__yRE-mq__lab{grid-template-columns:205px minmax(280px,.85fr) minmax(380px,1.15fr)}}@media (max-width:900px){.coding-patterns-module__yRE-mq__courseLayout{display:block}.coding-patterns-module__yRE-mq__courseRail{height:auto;display:block;position:static}.coding-patterns-module__yRE-mq__courseRail>header{padding-bottom:16px}.coding-patterns-module__yRE-mq__courseRail nav{border-block:1px solid var(--pattern-dark-line);display:block;overflow:visible}.coding-patterns-module__yRE-mq__railGroup{display:flex;overflow-x:auto}.coding-patterns-module__yRE-mq__railGroup+.coding-patterns-module__yRE-mq__railGroup{margin-top:0;padding-top:0}.coding-patterns-module__yRE-mq__railGroup>header{background:#1c1f19;align-items:center;min-width:112px;padding-inline:12px;display:flex}.coding-patterns-module__yRE-mq__courseRail nav a{min-width:178px}.coding-patterns-module__yRE-mq__courseRail>footer{display:none}.coding-patterns-module__yRE-mq__nextSession{grid-template-columns:52px minmax(0,1fr)}.coding-patterns-module__yRE-mq__nextSession>a{grid-column:2;width:fit-content}.coding-patterns-module__yRE-mq__learningLoop ol{grid-template-columns:repeat(2,1fr)}.coding-patterns-module__yRE-mq__learningLoop li:nth-child(3){border-left:0;padding-left:0}.coding-patterns-module__yRE-mq__learningLoop li:nth-child(n+3){border-top:1px solid var(--pattern-line);padding-top:18px}.coding-patterns-module__yRE-mq__labHero{grid-template-columns:1fr}.coding-patterns-module__yRE-mq__labHero aside{min-height:160px}.coding-patterns-module__yRE-mq__lab{min-height:0;display:block}.coding-patterns-module__yRE-mq__mobileMode{border-bottom:1px solid var(--pattern-line);background:#f5f6f1;grid-template-columns:1fr 1fr;padding:6px;display:grid}.coding-patterns-module__yRE-mq__mobileMode button{min-height:38px;color:var(--pattern-muted);background:0 0;border:0;border-radius:5px;font-size:.72rem;font-weight:740}.coding-patterns-module__yRE-mq__mobileMode button[aria-pressed=true]{background:var(--pattern-ink);color:#fff}.coding-patterns-module__yRE-mq__labNav{border-right:0;border-bottom:1px solid var(--pattern-line)}.coding-patterns-module__yRE-mq__labNav>header{padding:14px 16px}.coding-patterns-module__yRE-mq__labNav ol{display:flex;overflow-x:auto}.coding-patterns-module__yRE-mq__labNav li{min-width:206px}.coding-patterns-module__yRE-mq__problemPanel{border-right:0;max-height:none}.coding-patterns-module__yRE-mq__mobileContinue{border-color:var(--pattern-citron);background:var(--pattern-citron);justify-content:center;align-items:center;gap:18px;width:100%;margin-top:10px;display:flex}.coding-patterns-module__yRE-mq__mobileBack{display:inline-flex;background:0 0!important;border-color:#4a5043!important}.coding-patterns-module__yRE-mq__lab[data-mobile-pane=problem] .coding-patterns-module__yRE-mq__editorPanel,.coding-patterns-module__yRE-mq__lab[data-mobile-pane=problem] .coding-patterns-module__yRE-mq__solutionPanel,.coding-patterns-module__yRE-mq__lab[data-mobile-pane=code] .coding-patterns-module__yRE-mq__labNav,.coding-patterns-module__yRE-mq__lab[data-mobile-pane=code] .coding-patterns-module__yRE-mq__problemPanel{display:none}.coding-patterns-module__yRE-mq__editorPanel{min-height:640px}.coding-patterns-module__yRE-mq__solutionPanel header,.coding-patterns-module__yRE-mq__solutionGrid{display:block}.coding-patterns-module__yRE-mq__solutionActions{margin-top:14px}.coding-patterns-module__yRE-mq__traceSteps{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.coding-patterns-module__yRE-mq__courseLayout,.coding-patterns-module__yRE-mq__courseReaderLayout{display:block}.coding-patterns-module__yRE-mq__courseMain>:where(.coding-patterns-module__yRE-mq__courseHero,.coding-patterns-module__yRE-mq__nextSession,.coding-patterns-module__yRE-mq__learningLoop,.coding-patterns-module__yRE-mq__moduleIndex),.coding-patterns-module__yRE-mq__courseReader .coding-patterns-module__yRE-mq__courseArticle{width:calc(100% - 28px)}}.coding-patterns-module__yRE-mq__shell,.coding-patterns-module__yRE-mq__labShell,.coding-patterns-module__yRE-mq__coursePage,.coding-patterns-module__yRE-mq__courseReaderLayout{--pattern-paper:#fff;--pattern-surface:#fff;background:#fff}.coding-patterns-module__yRE-mq__courseRail{border-right:1px solid var(--pattern-line);height:auto;max-height:calc(100dvh - 92px);color:var(--pattern-ink);background:#fff;position:sticky;top:68px}.coding-patterns-module__yRE-mq__courseRail>header{border-color:var(--pattern-line);padding:18px 16px 15px}.coding-patterns-module__yRE-mq__courseRail>header>span,.coding-patterns-module__yRE-mq__courseRail>footer>span,.coding-patterns-module__yRE-mq__courseHero .coding-patterns-module__yRE-mq__kicker,.coding-patterns-module__yRE-mq__learningLoop header>span,.coding-patterns-module__yRE-mq__moduleIndex>header span,.coding-patterns-module__yRE-mq__nextSession small,.coding-patterns-module__yRE-mq__moduleDetails article>span,.coding-patterns-module__yRE-mq__moduleFooter+span{color:var(--pattern-green)}.coding-patterns-module__yRE-mq__courseRail>header strong{margin-top:5px;font-size:.92rem;font-weight:560}.coding-patterns-module__yRE-mq__courseRail>header p,.coding-patterns-module__yRE-mq__courseRail>footer p{color:var(--pattern-muted)}.coding-patterns-module__yRE-mq__courseRail nav{padding:5px}.coding-patterns-module__yRE-mq__railGroup+.coding-patterns-module__yRE-mq__railGroup,.coding-patterns-module__yRE-mq__courseRail>footer{border-color:var(--pattern-line)}.coding-patterns-module__yRE-mq__railGroup>header{color:var(--pattern-muted)}.coding-patterns-module__yRE-mq__courseRail nav a{min-height:38px;color:var(--pattern-muted);border-radius:2px}.coding-patterns-module__yRE-mq__courseRail nav a>span{color:var(--pattern-muted)}.coding-patterns-module__yRE-mq__courseRail nav a>small{background:#eef0e7}.coding-patterns-module__yRE-mq__courseRail>footer{padding:15px 16px 18px}.coding-patterns-module__yRE-mq__courseRail>footer>div{background:var(--pattern-line);height:3px}.coding-patterns-module__yRE-mq__courseRail>footer i{background:var(--pattern-green)}.coding-patterns-module__yRE-mq__courseHero>div>p:last-child,.coding-patterns-module__yRE-mq__labHero>div>p,.coding-patterns-module__yRE-mq__videoHero>div>p:last-child,.coding-patterns-module__yRE-mq__courseHeader>p:not(:first-child),.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonHeading>p:not(:first-child){max-width:62ch;font-size:.92rem;line-height:1.55}.coding-patterns-module__yRE-mq__courseHero dl>div{padding:11px 12px}.coding-patterns-module__yRE-mq__nextSession{border:0;border-bottom:1px solid var(--pattern-line);background:#fff;border-radius:0;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;margin:0 32px;padding:17px 0}.coding-patterns-module__yRE-mq__sessionMark{width:40px;height:42px;color:var(--pattern-ink);background:#f0f1eb;border-radius:3px}.coding-patterns-module__yRE-mq__nextSession p{color:var(--pattern-muted)}.coding-patterns-module__yRE-mq__nextSession>a,.coding-patterns-module__yRE-mq__moduleFooter a,.coding-patterns-module__yRE-mq__moduleFooter>a,.coding-patterns-module__yRE-mq__labHero aside a{border-radius:3px;min-height:36px}.coding-patterns-module__yRE-mq__module summary{min-height:58px;padding-block:10px}.coding-patterns-module__yRE-mq__moduleDetails{padding:18px 0 24px}.coding-patterns-module__yRE-mq__labHero,.coding-patterns-module__yRE-mq__videoHero,.coding-patterns-module__yRE-mq__courseIntro,.coding-patterns-module__yRE-mq__lessonStack,.coding-patterns-module__yRE-mq__playlistFooter,.coding-patterns-module__yRE-mq__courseHeader,.coding-patterns-module__yRE-mq__howToUse,.coding-patterns-module__yRE-mq__lessonIndex,.coding-patterns-module__yRE-mq__lessonList,.coding-patterns-module__yRE-mq__courseFooter{width:min(760px,100% - 36px);margin-inline:auto}.coding-patterns-module__yRE-mq__labHero,.coding-patterns-module__yRE-mq__videoHero,.coding-patterns-module__yRE-mq__courseHeader{min-height:0;padding-block:40px 30px;display:block}.coding-patterns-module__yRE-mq__labHero aside,.coding-patterns-module__yRE-mq__videoHero dl{max-width:560px;margin-top:24px}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonHeading h1{margin-bottom:12px}.coding-patterns-module__yRE-mq__onThisPage{margin-top:28px}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__concepts,.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonFooter{margin-top:34px}@media (max-width:900px){.coding-patterns-module__yRE-mq__courseLayout{border:0;width:calc(100% - 28px);display:block}.coding-patterns-module__yRE-mq__courseRail{border:1px solid var(--pattern-line);max-height:none;position:static}.coding-patterns-module__yRE-mq__courseHero,.coding-patterns-module__yRE-mq__learningLoop,.coding-patterns-module__yRE-mq__moduleIndex,.coding-patterns-module__yRE-mq__patternReference,.coding-patterns-module__yRE-mq__algorithmRoster,.coding-patterns-module__yRE-mq__practiceSession{margin-inline:0;padding-inline:0}.coding-patterns-module__yRE-mq__courseHero{padding-top:30px}.coding-patterns-module__yRE-mq__nextSession{margin-inline:0}.coding-patterns-module__yRE-mq__courseReaderLayout{border:0;width:100%;margin:0}}@media (max-width:640px){.coding-patterns-module__yRE-mq__nextSession{grid-template-columns:38px minmax(0,1fr)}.coding-patterns-module__yRE-mq__nextSession>a{grid-column:1/-1;justify-self:start}.coding-patterns-module__yRE-mq__courseHero dl>div+div{border-top:1px solid var(--pattern-line);border-left:0}.coding-patterns-module__yRE-mq__courseArticle{width:calc(100% - 30px)}.coding-patterns-module__yRE-mq__courseHero,.coding-patterns-module__yRE-mq__moduleIndex,.coding-patterns-module__yRE-mq__learningLoop{padding-inline:18px}.coding-patterns-module__yRE-mq__courseHero{min-height:0;padding-block:30px}.coding-patterns-module__yRE-mq__courseHero dl{grid-template-columns:repeat(3,minmax(0,1fr))}.coding-patterns-module__yRE-mq__courseHero dl>div{padding:12px 8px}.coding-patterns-module__yRE-mq__nextSession{margin-inline:18px;padding:16px}.coding-patterns-module__yRE-mq__nextSession p{white-space:normal}.coding-patterns-module__yRE-mq__learningLoop ol,.coding-patterns-module__yRE-mq__questionSamples ul,.coding-patterns-module__yRE-mq__moduleDetails,.coding-patterns-module__yRE-mq__traceSteps{grid-template-columns:1fr}.coding-patterns-module__yRE-mq__learningLoop li,.coding-patterns-module__yRE-mq__learningLoop li+li,.coding-patterns-module__yRE-mq__learningLoop li:nth-child(3){border-top:1px solid var(--pattern-line);border-left:0;padding:14px 0}.coding-patterns-module__yRE-mq__moduleIndex>header,.coding-patterns-module__yRE-mq__moduleFooter,.coding-patterns-module__yRE-mq__practiceHeader,.coding-patterns-module__yRE-mq__algorithmRoster>header,.coding-patterns-module__yRE-mq__trace header{display:block}.coding-patterns-module__yRE-mq__moduleIndex>header>p,.coding-patterns-module__yRE-mq__practiceHeader>p,.coding-patterns-module__yRE-mq__algorithmRoster>header>a,.coding-patterns-module__yRE-mq__trace header p{margin-top:12px}.coding-patterns-module__yRE-mq__algorithmRoster>header>a{display:inline-block}.coding-patterns-module__yRE-mq__module summary{grid-template-columns:34px minmax(0,1fr) 20px;gap:10px}.coding-patterns-module__yRE-mq__moduleMeta{text-align:left;grid-column:2}.coding-patterns-module__yRE-mq__module summary>i{grid-area:1/3}.coding-patterns-module__yRE-mq__moduleDetails{margin-left:0}.coding-patterns-module__yRE-mq__questionSamples,.coding-patterns-module__yRE-mq__moduleFooter{grid-column:auto}.coding-patterns-module__yRE-mq__moduleFooter>a{width:100%;margin-top:14px}.coding-patterns-module__yRE-mq__labHero>div,.coding-patterns-module__yRE-mq__labHero aside{padding-inline:20px}.coding-patterns-module__yRE-mq__patternReference{scroll-snap-type:x proximity;display:flex;overflow-x:auto}.coding-patterns-module__yRE-mq__patternReference article{scroll-snap-align:start;min-width:min(78vw,300px);min-height:118px;padding:16px 20px}.coding-patterns-module__yRE-mq__patternReference article+article{border-left:1px solid var(--pattern-line)}.coding-patterns-module__yRE-mq__patternReference h2{margin-top:10px}.coding-patterns-module__yRE-mq__practiceSession{padding-inline:0}.coding-patterns-module__yRE-mq__practiceHeader{padding-inline:18px}.coding-patterns-module__yRE-mq__lab{border-inline:0;border-radius:0}.coding-patterns-module__yRE-mq__problemPanel{padding:24px 20px}.coding-patterns-module__yRE-mq__editorToolbar{align-items:flex-start;padding-block:10px}.coding-patterns-module__yRE-mq__editorToolbar>span,.coding-patterns-module__yRE-mq__editorToolbar>div{flex-wrap:wrap}.coding-patterns-module__yRE-mq__solutionPanel{padding-inline:20px}.coding-patterns-module__yRE-mq__solutionActions{display:grid}.coding-patterns-module__yRE-mq__referenceFold>summary{grid-template-columns:1fr 20px;min-height:84px;padding-inline:20px}.coding-patterns-module__yRE-mq__referenceFold>summary span,.coding-patterns-module__yRE-mq__referenceFold>summary strong{grid-column:1}.coding-patterns-module__yRE-mq__referenceFold>summary i{grid-area:1/2/span 2}.coding-patterns-module__yRE-mq__trace{padding-inline:20px}}@media (max-width:820px){:is(.coding-patterns-module__yRE-mq__shell~.global-quick-nav,.coding-patterns-module__yRE-mq__labShell~.global-quick-nav){grid-template-columns:repeat(4,minmax(0,1fr))}:is(.coding-patterns-module__yRE-mq__shell .site-header>.primary-navigation,.coding-patterns-module__yRE-mq__labShell .site-header>.primary-navigation){display:none}}@media (prefers-reduced-motion:reduce){.coding-patterns-module__yRE-mq__module summary>i,.coding-patterns-module__yRE-mq__referenceFold summary>i{transition:none}}.coding-patterns-module__yRE-mq__courseSource a{color:var(--pattern-citron);margin-top:10px;font-size:.72rem;font-weight:760;text-decoration:none;display:inline-block}.coding-patterns-module__yRE-mq__videoHero{border-bottom:1px solid var(--pattern-line);background:linear-gradient(115deg, #d8ff4533, transparent 44%), var(--pattern-paper);grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:end;gap:clamp(32px,5vw,76px);min-height:390px;padding:56px clamp(26px,4vw,64px) 44px;display:grid}.coding-patterns-module__yRE-mq__videoHero .coding-patterns-module__yRE-mq__kicker,.coding-patterns-module__yRE-mq__courseIntro>div>span,.coding-patterns-module__yRE-mq__lessonHeader>div:nth-child(2)>span,.coding-patterns-module__yRE-mq__conceptSection>header>span,.coding-patterns-module__yRE-mq__diagramFigure>div>span,.coding-patterns-module__yRE-mq__playlistFooter>span{color:var(--pattern-green);letter-spacing:.055em;text-transform:uppercase;font-size:.7rem;font-weight:800}.coding-patterns-module__yRE-mq__videoHero h1{letter-spacing:-.04em;max-width:840px;margin:12px 0 18px;font-size:clamp(2.8rem,5vw,5.8rem);font-weight:750;line-height:.91}.coding-patterns-module__yRE-mq__videoHero>div>p:last-child{max-width:760px;color:var(--pattern-muted);margin:0;font-size:.95rem;line-height:1.72}.coding-patterns-module__yRE-mq__videoHero dl{border-block:1px solid var(--pattern-line);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.coding-patterns-module__yRE-mq__videoHero dl>div{padding:17px 15px}.coding-patterns-module__yRE-mq__videoHero dl>div+div{border-left:1px solid var(--pattern-line)}.coding-patterns-module__yRE-mq__videoHero dt{color:var(--pattern-muted);font-size:.69rem}.coding-patterns-module__yRE-mq__videoHero dd{margin:6px 0 0;font-size:1.7rem;font-weight:780}.coding-patterns-module__yRE-mq__courseIntro{border-bottom:1px solid var(--pattern-line);background:#fffef9;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:48px;padding:40px clamp(26px,4vw,64px);display:grid}.coding-patterns-module__yRE-mq__courseIntro h2{letter-spacing:-.035em;max-width:540px;margin:9px 0 0;font-size:clamp(1.55rem,2.5vw,2.55rem);line-height:1.04}.coding-patterns-module__yRE-mq__courseIntro ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.coding-patterns-module__yRE-mq__courseIntro li{border:1px solid var(--pattern-line);background:var(--pattern-surface);border-radius:9px;min-height:136px;padding:16px}.coding-patterns-module__yRE-mq__courseIntro li b{color:#8b947e;font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.7rem}.coding-patterns-module__yRE-mq__courseIntro li span,.coding-patterns-module__yRE-mq__courseIntro li strong{display:block}.coding-patterns-module__yRE-mq__courseIntro li span{color:var(--pattern-muted);margin-top:25px;font-size:.77rem;line-height:1.5}.coding-patterns-module__yRE-mq__courseIntro li strong{color:var(--pattern-ink);margin-bottom:4px;font-size:.9rem}.coding-patterns-module__yRE-mq__lessonStack{padding:0 clamp(26px,4vw,64px)}.coding-patterns-module__yRE-mq__videoLesson{border-bottom:2px solid var(--pattern-ink);padding:64px 0 72px;scroll-margin-top:76px}.coding-patterns-module__yRE-mq__lessonHeader{grid-template-columns:70px minmax(0,1fr) auto;align-items:start;gap:20px;margin-bottom:28px;display:grid}.coding-patterns-module__yRE-mq__lessonNumber{border:2px solid var(--pattern-ink);background:var(--pattern-citron);width:58px;height:58px;font-family:var(--font-geist-mono), ui-monospace, monospace;border-radius:50% 47% 52% 46%;place-items:center;font-size:.9rem;font-weight:800;display:grid;transform:rotate(-2deg)}.coding-patterns-module__yRE-mq__lessonHeader h2{letter-spacing:-.035em;margin:7px 0 9px;font-size:clamp(2rem,3.6vw,4rem);line-height:.98}.coding-patterns-module__yRE-mq__lessonHeader p{max-width:850px;color:var(--pattern-muted);margin:0;font-size:.87rem;line-height:1.65}.coding-patterns-module__yRE-mq__lessonDuration{border-block:1px solid var(--pattern-line);text-align:right;min-width:92px;padding:10px 12px}.coding-patterns-module__yRE-mq__lessonDuration small,.coding-patterns-module__yRE-mq__lessonDuration strong{display:block}.coding-patterns-module__yRE-mq__lessonDuration small{color:var(--pattern-muted);font-size:.67rem}.coding-patterns-module__yRE-mq__lessonDuration strong{font-family:var(--font-geist-mono), ui-monospace, monospace;margin-top:4px;font-size:.88rem}.coding-patterns-module__yRE-mq__lessonGrid{grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);gap:18px;display:grid}.coding-patterns-module__yRE-mq__videoFrame{background:#11140f;border:1px solid #11140f;border-radius:10px;overflow:hidden;box-shadow:0 12px 32px #171a1624}.coding-patterns-module__yRE-mq__videoFrame iframe{aspect-ratio:16/9;border:0;width:100%;display:block}.coding-patterns-module__yRE-mq__lessonProof{border:1px solid var(--pattern-line);background:#fffef9;border-radius:10px}.coding-patterns-module__yRE-mq__lessonProof section{padding:18px 20px}.coding-patterns-module__yRE-mq__lessonProof section+section{border-top:1px solid var(--pattern-line)}.coding-patterns-module__yRE-mq__lessonProof span{color:var(--pattern-green);letter-spacing:.045em;text-transform:uppercase;font-size:.68rem;font-weight:800}.coding-patterns-module__yRE-mq__lessonProof p{color:#42473e;margin:7px 0 0;font-size:.78rem;line-height:1.58}.coding-patterns-module__yRE-mq__conceptSection{border:1px solid var(--pattern-line);background:#e9ebff;border-radius:10px;margin-top:24px;padding:24px}.coding-patterns-module__yRE-mq__conceptSection>header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:17px;display:flex}.coding-patterns-module__yRE-mq__conceptSection h3{letter-spacing:-.025em;margin:7px 0 0;font-size:clamp(1.25rem,2vw,1.8rem)}.coding-patterns-module__yRE-mq__conceptGrid{background:#c8ccea;border:1px solid #c8ccea;border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.coding-patterns-module__yRE-mq__conceptGrid article{background:#f8f8ff;padding:17px 18px}.coding-patterns-module__yRE-mq__conceptGrid article>div{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.coding-patterns-module__yRE-mq__conceptGrid h4{margin:0;font-size:.9rem}.coding-patterns-module__yRE-mq__conceptGrid a{color:#515a2f;font-family:var(--font-geist-mono), ui-monospace, monospace;flex:none;font-size:.68rem;font-weight:760;text-decoration:none}.coding-patterns-module__yRE-mq__conceptGrid p{color:#555b51;margin:8px 0 0;font-size:.76rem;line-height:1.58}.coding-patterns-module__yRE-mq__conceptGrid .coding-patterns-module__yRE-mq__conceptDiagramLink{color:var(--pattern-ink);font-family:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;background:#fffef9;border:1px solid #c8ccea;border-radius:7px;margin-top:14px;text-decoration:none;display:block;position:relative;overflow:hidden}.coding-patterns-module__yRE-mq__conceptDiagramLink img{width:100%;height:auto;display:block}.coding-patterns-module__yRE-mq__conceptDiagramLink span{border-top:1px solid #d9dceb;padding:8px 10px;font-size:.68rem;font-weight:760;display:block}.coding-patterns-module__yRE-mq__diagramFigure{border:1px solid var(--pattern-line);background:#fffef9;border-radius:10px;margin:24px 0 0;padding:12px}.coding-patterns-module__yRE-mq__diagramFigure>div{justify-content:space-between;align-items:center;gap:20px;padding:5px 5px 13px;display:flex}.coding-patterns-module__yRE-mq__diagramFigure>div a{color:var(--pattern-ink);font-size:.72rem;font-weight:760;text-decoration:none}.coding-patterns-module__yRE-mq__diagramFigure img{border:1px solid #dadbd2;border-radius:6px;width:100%;height:auto;display:block}.coding-patterns-module__yRE-mq__diagramFigure figcaption{color:var(--pattern-muted);padding:10px 5px 3px;font-size:.7rem;line-height:1.5}.coding-patterns-module__yRE-mq__lessonActions{justify-content:space-between;align-items:center;gap:24px;margin-top:18px;display:flex}.coding-patterns-module__yRE-mq__lessonActions p{max-width:760px;color:var(--pattern-muted);margin:0;font-size:.68rem;line-height:1.55}.coding-patterns-module__yRE-mq__lessonActions>div{gap:8px;display:flex}.coding-patterns-module__yRE-mq__lessonActions a,.coding-patterns-module__yRE-mq__playlistFooter>a{border:1px solid var(--pattern-ink);background:var(--pattern-citron);min-height:38px;color:var(--pattern-ink);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;padding:0 14px;font-size:.72rem;font-weight:800;text-decoration:none;display:inline-flex}.coding-patterns-module__yRE-mq__playlistFooter{margin:0 clamp(26px,4vw,64px);padding:72px 0 92px}.coding-patterns-module__yRE-mq__playlistFooter h2{letter-spacing:-.035em;max-width:850px;margin:10px 0 12px;font-size:clamp(2rem,4vw,4.2rem);line-height:.98}.coding-patterns-module__yRE-mq__playlistFooter p{max-width:760px;color:var(--pattern-muted);margin:0 0 22px;font-size:.86rem;line-height:1.65}.coding-patterns-module__yRE-mq__courseSource a:hover,.coding-patterns-module__yRE-mq__courseSource a:focus-visible,.coding-patterns-module__yRE-mq__conceptGrid a:hover,.coding-patterns-module__yRE-mq__conceptGrid a:focus-visible,.coding-patterns-module__yRE-mq__diagramFigure a:hover,.coding-patterns-module__yRE-mq__diagramFigure a:focus-visible{text-underline-offset:3px;text-decoration:underline}.coding-patterns-module__yRE-mq__courseSource a:focus-visible,.coding-patterns-module__yRE-mq__conceptGrid a:focus-visible,.coding-patterns-module__yRE-mq__diagramFigure a:focus-visible,.coding-patterns-module__yRE-mq__lessonActions a:focus-visible,.coding-patterns-module__yRE-mq__playlistFooter>a:focus-visible{outline:3px solid var(--pattern-focus,#748717);outline-offset:3px}.coding-patterns-module__yRE-mq__lessonActions a:hover,.coding-patterns-module__yRE-mq__playlistFooter>a:hover{background:#e5ff7d}@media (max-width:1180px){.coding-patterns-module__yRE-mq__videoHero,.coding-patterns-module__yRE-mq__courseIntro,.coding-patterns-module__yRE-mq__lessonGrid{grid-template-columns:1fr}.coding-patterns-module__yRE-mq__videoHero{min-height:0}.coding-patterns-module__yRE-mq__courseIntro{gap:24px}.coding-patterns-module__yRE-mq__lessonProof{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.coding-patterns-module__yRE-mq__lessonProof section+section{border-top:0;border-left:1px solid var(--pattern-line)}}@media (max-width:760px){.coding-patterns-module__yRE-mq__courseRail>header{display:none}.coding-patterns-module__yRE-mq__videoHero,.coding-patterns-module__yRE-mq__courseIntro{padding-inline:18px}.coding-patterns-module__yRE-mq__videoHero{gap:16px;padding-block:26px 20px}.coding-patterns-module__yRE-mq__videoHero h1{margin-block:9px 12px;font-size:2.6rem;line-height:.91}.coding-patterns-module__yRE-mq__videoHero>div>p:last-child{font-size:.82rem;line-height:1.52}.coding-patterns-module__yRE-mq__videoHero dl>div{padding-block:10px}.coding-patterns-module__yRE-mq__videoHero dd{font-size:1.35rem}.coding-patterns-module__yRE-mq__courseIntro{padding-block:16px;display:block}.coding-patterns-module__yRE-mq__courseIntro h2{margin-top:5px;font-size:1.25rem}.coding-patterns-module__yRE-mq__courseIntro ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}.coding-patterns-module__yRE-mq__courseIntro li{min-height:58px;padding:8px}.coding-patterns-module__yRE-mq__courseIntro li span{margin-top:5px;font-size:0}.coding-patterns-module__yRE-mq__courseIntro li strong{margin:0;font-size:.7rem}.coding-patterns-module__yRE-mq__conceptGrid,.coding-patterns-module__yRE-mq__lessonProof{grid-template-columns:1fr}.coding-patterns-module__yRE-mq__lessonStack{padding-inline:18px}.coding-patterns-module__yRE-mq__videoLesson{padding-block:28px 56px}.coding-patterns-module__yRE-mq__lessonHeader{grid-template-columns:54px minmax(0,1fr);gap:14px}.coding-patterns-module__yRE-mq__lessonNumber{width:48px;height:48px}.coding-patterns-module__yRE-mq__lessonDuration{text-align:left;grid-column:2;width:fit-content}.coding-patterns-module__yRE-mq__lessonProof section+section{border-top:1px solid var(--pattern-line);border-left:0}.coding-patterns-module__yRE-mq__conceptSection{padding:17px}.coding-patterns-module__yRE-mq__lessonActions{display:block}.coding-patterns-module__yRE-mq__lessonActions>div{flex-wrap:wrap;margin-top:14px}.coding-patterns-module__yRE-mq__playlistFooter{margin-inline:18px}}.coding-patterns-module__yRE-mq__coursePage{color:#303030;width:min(920px,100% - 40px);margin:0 auto;padding:52px 0 80px;font-family:Verdana,Geneva,sans-serif;font-size:15px;line-height:1.62}.coding-patterns-module__yRE-mq__coursePage a{color:#00b;text-underline-offset:2px}.coding-patterns-module__yRE-mq__coursePage a:visited{color:#551a8b}.coding-patterns-module__yRE-mq__coursePage a:focus-visible{outline-offset:3px;outline:2px solid #00b}.coding-patterns-module__yRE-mq__courseHeader,.coding-patterns-module__yRE-mq__howToUse,.coding-patterns-module__yRE-mq__lessonIndex,.coding-patterns-module__yRE-mq__lessonList,.coding-patterns-module__yRE-mq__courseFooter{max-width:760px;margin-left:150px}.coding-patterns-module__yRE-mq__courseHeader>p:first-child,.coding-patterns-module__yRE-mq__lessonHeading>p:first-child,.coding-patterns-module__yRE-mq__concept>header>p{color:#999;margin:0 0 7px;font-size:.82rem}.coding-patterns-module__yRE-mq__courseHeader h1{color:#222;letter-spacing:-.035em;margin:0 0 18px;font-size:clamp(2rem,4vw,2.8rem);font-weight:400;line-height:1.14}.coding-patterns-module__yRE-mq__courseHeader>p:not(:first-child){max-width:700px;margin:0 0 14px}.coding-patterns-module__yRE-mq__courseHeader .coding-patterns-module__yRE-mq__courseMeta{color:#777;font-size:.82rem}.coding-patterns-module__yRE-mq__howToUse,.coding-patterns-module__yRE-mq__lessonIndex,.coding-patterns-module__yRE-mq__courseFooter{margin-top:42px}.coding-patterns-module__yRE-mq__howToUse h2,.coding-patterns-module__yRE-mq__lessonIndex h2,.coding-patterns-module__yRE-mq__courseFooter h2{color:#999;text-transform:lowercase;margin:0 0 14px;font-size:1rem;font-weight:400}.coding-patterns-module__yRE-mq__howToUse ol,.coding-patterns-module__yRE-mq__lessonGoals ul,.coding-patterns-module__yRE-mq__lessonChecklist ul{margin:0;padding-left:24px}.coding-patterns-module__yRE-mq__howToUse li,.coding-patterns-module__yRE-mq__lessonGoals li,.coding-patterns-module__yRE-mq__lessonChecklist li{margin-bottom:8px}.coding-patterns-module__yRE-mq__lessonIndex ol{border-top:1px solid #ddd;margin:0;padding:0;list-style:none}.coding-patterns-module__yRE-mq__lessonIndex li{border-bottom:1px solid #ddd;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:16px;margin:0;padding:8px 0;display:grid}.coding-patterns-module__yRE-mq__lessonIndex li a{gap:12px;display:inline-flex}.coding-patterns-module__yRE-mq__lessonIndex li a span,.coding-patterns-module__yRE-mq__lessonIndex li small{color:#999;font-variant-numeric:tabular-nums;font-size:.78rem}.coding-patterns-module__yRE-mq__lessonList{margin-top:70px}.coding-patterns-module__yRE-mq__lesson{border-top:1px solid #ccc;padding-top:58px;scroll-margin-top:82px}.coding-patterns-module__yRE-mq__lesson+.coding-patterns-module__yRE-mq__lesson{margin-top:90px}.coding-patterns-module__yRE-mq__lessonHeading h2{color:#222;letter-spacing:-.025em;margin:0 0 18px;font-size:clamp(1.8rem,3.2vw,2.35rem);font-weight:400;line-height:1.2}.coding-patterns-module__yRE-mq__lessonHeading>p:not(:first-child){margin:0 0 15px}.coding-patterns-module__yRE-mq__lessonGoals,.coding-patterns-module__yRE-mq__mentalModel,.coding-patterns-module__yRE-mq__lessonChecklist{background:#fafafa;border-left:3px solid #bbb;margin:30px 0;padding:18px 20px}.coding-patterns-module__yRE-mq__lessonGoals h3,.coding-patterns-module__yRE-mq__mentalModel h3,.coding-patterns-module__yRE-mq__concepts>h3,.coding-patterns-module__yRE-mq__lessonChecklist h3{color:#555;margin:0 0 11px;font-size:1rem;font-weight:700}.coding-patterns-module__yRE-mq__mentalModel p{margin:0 0 10px}.coding-patterns-module__yRE-mq__mentalModel p:last-child{margin-bottom:0}.coding-patterns-module__yRE-mq__coursePage .coding-patterns-module__yRE-mq__videoFrame{aspect-ratio:16/9;background:#111;border:1px solid #ccc;border-radius:0;width:100%;margin:32px 0;position:relative;overflow:hidden}.coding-patterns-module__yRE-mq__coursePage .coding-patterns-module__yRE-mq__videoFrame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.coding-patterns-module__yRE-mq__concepts{margin-top:46px}.coding-patterns-module__yRE-mq__concepts>h3{border-bottom:1px solid #ccc;padding-bottom:11px}.coding-patterns-module__yRE-mq__concept{border-bottom:1px solid #ddd;padding:42px 0 48px;scroll-margin-top:82px}.coding-patterns-module__yRE-mq__concept>header{padding-right:140px;position:relative}.coding-patterns-module__yRE-mq__concept>header h4{color:#222;letter-spacing:-.015em;margin:0 0 14px;font-size:1.45rem;font-weight:400}.coding-patterns-module__yRE-mq__concept>header>a{font-size:.78rem;position:absolute;top:0;right:0}.coding-patterns-module__yRE-mq__concept>p{margin:0 0 15px}.coding-patterns-module__yRE-mq__conceptDiagram,.coding-patterns-module__yRE-mq__recallSheet{margin:28px 0}.coding-patterns-module__yRE-mq__conceptDiagram a,.coding-patterns-module__yRE-mq__recallSheet a{background:#fff;border:1px solid #ddd;display:block}.coding-patterns-module__yRE-mq__conceptDiagram img,.coding-patterns-module__yRE-mq__recallSheet img{width:100%;height:auto;display:block}.coding-patterns-module__yRE-mq__conceptDiagram figcaption,.coding-patterns-module__yRE-mq__recallSheet figcaption{color:#888;margin-top:8px;font-size:.76rem;line-height:1.45}.coding-patterns-module__yRE-mq__trace,.coding-patterns-module__yRE-mq__interviewNote{border-left:3px solid #ddd;margin:22px 0 0;padding-left:18px}.coding-patterns-module__yRE-mq__interviewNote{border-left-color:#9aa77c}.coding-patterns-module__yRE-mq__trace h5,.coding-patterns-module__yRE-mq__interviewNote h5{color:#555;margin:0 0 5px;font-size:.88rem}.coding-patterns-module__yRE-mq__trace p,.coding-patterns-module__yRE-mq__interviewNote p{margin:0}.coding-patterns-module__yRE-mq__recallSheet{margin-top:34px}.coding-patterns-module__yRE-mq__lessonFooter{border-top:1px solid #ddd;flex-wrap:wrap;gap:8px 18px;margin-top:34px;padding-top:14px;font-size:.82rem;display:flex}.coding-patterns-module__yRE-mq__courseFooter{border-top:1px solid #ccc;padding-top:20px}.coding-patterns-module__yRE-mq__courseFooter p{margin:0 0 12px}@media (max-width:780px){.coding-patterns-module__yRE-mq__coursePage{width:min(100% - 30px,920px);padding-top:32px}.coding-patterns-module__yRE-mq__courseHeader,.coding-patterns-module__yRE-mq__howToUse,.coding-patterns-module__yRE-mq__lessonIndex,.coding-patterns-module__yRE-mq__lessonList,.coding-patterns-module__yRE-mq__courseFooter{max-width:none;margin-left:0}.coding-patterns-module__yRE-mq__lessonList{margin-top:54px}.coding-patterns-module__yRE-mq__lesson{padding-top:42px}.coding-patterns-module__yRE-mq__lesson+.coding-patterns-module__yRE-mq__lesson{margin-top:64px}.coding-patterns-module__yRE-mq__concept>header{padding-right:0}.coding-patterns-module__yRE-mq__concept>header>a{margin-bottom:12px;display:inline-block;position:static}}.coding-patterns-module__yRE-mq__courseReaderLayout{color:#303030;grid-template-columns:270px minmax(0,1fr);width:min(1220px,100%);min-height:calc(100dvh - 60px);margin:0 auto;font-family:Verdana,Geneva,sans-serif;font-size:15px;line-height:1.62;display:grid}.coding-patterns-module__yRE-mq__courseReaderLayout a{color:#00b;text-underline-offset:2px}.coding-patterns-module__yRE-mq__courseReaderLayout a:visited{color:#551a8b}.coding-patterns-module__yRE-mq__courseReaderLayout a:focus-visible{outline-offset:3px;outline:2px solid #00b}.coding-patterns-module__yRE-mq__courseSide{background:#f7f7f4;border-right:1px solid #d8d8d8;grid-template-rows:auto minmax(0,1fr) auto;height:calc(100dvh - 60px);display:grid;position:sticky;top:60px}.coding-patterns-module__yRE-mq__courseSide>header{border-bottom:1px solid #ddd;padding:28px 22px 20px}.coding-patterns-module__yRE-mq__courseSide>header>a{color:#222;font-size:1rem;font-weight:700;text-decoration:none}.coding-patterns-module__yRE-mq__courseSide>header p{color:#777;margin:8px 0 0;font-size:.72rem;line-height:1.5}.coding-patterns-module__yRE-mq__courseSide nav{min-height:0;padding:8px 0;overflow-y:auto}.coding-patterns-module__yRE-mq__courseSide ol{margin:0;padding:0;list-style:none}.coding-patterns-module__yRE-mq__courseSide li{margin:0}.coding-patterns-module__yRE-mq__courseSide li a{color:#555;border-left:3px solid #0000;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:43px;padding:7px 16px 7px 20px;text-decoration:none;display:grid}.coding-patterns-module__yRE-mq__courseSide li a:hover{color:#111;background:#eee}.coding-patterns-module__yRE-mq__courseSide li a.coding-patterns-module__yRE-mq__activeLesson{color:#111;background:#e9e9e5;border-left-color:#555}.coding-patterns-module__yRE-mq__courseSide li span,.coding-patterns-module__yRE-mq__courseSide li small{color:#999;font-variant-numeric:tabular-nums;font-size:.68rem}.coding-patterns-module__yRE-mq__courseSide li strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:400;overflow:hidden}.coding-patterns-module__yRE-mq__courseSide>footer{border-top:1px solid #ddd;padding:15px 22px 20px;font-size:.72rem}.coding-patterns-module__yRE-mq__courseReader{min-width:0}.coding-patterns-module__yRE-mq__courseArticle{width:min(760px,100% - 48px);margin:0 auto;padding:56px 0 90px}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonHeading>p:first-child{color:#999;margin:0 0 7px;font-size:.82rem}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonHeading h1{color:#222;letter-spacing:-.035em;margin:0 0 18px;font-size:clamp(2rem,4vw,2.8rem);font-weight:400;line-height:1.14}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonHeading>p:not(:first-child){margin:0 0 15px}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonGoals h2,.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__mentalModel h2,.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__concepts>h2,.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonChecklist h2{color:#555;margin:0 0 11px;font-size:1rem;font-weight:700}.coding-patterns-module__yRE-mq__onThisPage{border-block:1px solid #ddd;margin:38px 0 0;padding:15px 0}.coding-patterns-module__yRE-mq__onThisPage>strong{color:#777;margin-bottom:7px;font-size:.76rem;font-weight:400;display:block}.coding-patterns-module__yRE-mq__onThisPage>div{flex-wrap:wrap;gap:5px 15px;display:flex}.coding-patterns-module__yRE-mq__onThisPage a{font-size:.78rem}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__concepts{margin-top:42px}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__concept>header h3{color:#222;letter-spacing:-.015em;margin:0 0 14px;font-size:1.45rem;font-weight:400}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__trace h4,.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__interviewNote h4{color:#555;margin:0 0 5px;font-size:.88rem}.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonFooter{margin-top:42px;padding-top:18px;display:block}.coding-patterns-module__yRE-mq__lessonFooter>div{flex-wrap:wrap;gap:8px 18px;display:flex}.coding-patterns-module__yRE-mq__lessonFooter>nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:34px;display:grid}.coding-patterns-module__yRE-mq__lessonFooter>nav a{border-top:1px solid #ccc;flex-direction:column;padding:14px 0;text-decoration:none;display:flex}.coding-patterns-module__yRE-mq__lessonFooter>nav a:last-child{text-align:right}.coding-patterns-module__yRE-mq__lessonFooter>nav a span{color:#999;font-size:.7rem}.coding-patterns-module__yRE-mq__lessonFooter>nav a strong{color:#222;margin-top:3px;font-size:.82rem;font-weight:400}.coding-patterns-module__yRE-mq__mobileLessonIndex{display:none}@media (max-width:900px){.coding-patterns-module__yRE-mq__courseReaderLayout{display:block}.coding-patterns-module__yRE-mq__courseSide{display:none}.coding-patterns-module__yRE-mq__courseReader{width:100%}.coding-patterns-module__yRE-mq__mobileLessonIndex{border-block:1px solid #ccc;width:min(760px,100% - 30px);margin:18px auto 0;display:block}.coding-patterns-module__yRE-mq__mobileLessonIndex summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;padding:11px 0;display:grid}.coding-patterns-module__yRE-mq__mobileLessonIndex summary span{color:#999;grid-row:1/3;font-size:.72rem}.coding-patterns-module__yRE-mq__mobileLessonIndex summary strong{color:#222;font-size:.82rem}.coding-patterns-module__yRE-mq__mobileLessonIndex nav{border-top:1px solid #ddd;max-height:60dvh;padding:5px 0 12px;overflow-y:auto}.coding-patterns-module__yRE-mq__mobileLessonIndex nav a{color:#555;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;padding:8px;font-size:.75rem;text-decoration:none;display:grid}.coding-patterns-module__yRE-mq__mobileLessonIndex nav a.coding-patterns-module__yRE-mq__activeLesson{color:#111;background:#eee}.coding-patterns-module__yRE-mq__mobileLessonIndex nav span,.coding-patterns-module__yRE-mq__mobileLessonIndex nav small{color:#999;font-size:.68rem}.coding-patterns-module__yRE-mq__courseArticle{width:min(760px,100% - 30px);padding-top:38px}}.coding-patterns-module__yRE-mq__courseLayout{border:1px solid #ddd;grid-template-columns:200px minmax(0,1fr);width:min(920px,100% - 36px);min-height:0;margin:24px auto 54px}.coding-patterns-module__yRE-mq__courseRail{color:#222;background:#fff;border-right:1px solid #ddd;height:auto;max-height:calc(100dvh - 92px);position:sticky;top:68px}.coding-patterns-module__yRE-mq__courseRail>header,.coding-patterns-module__yRE-mq__courseRail>footer,.coding-patterns-module__yRE-mq__railGroup+.coding-patterns-module__yRE-mq__railGroup{border-color:#ddd}.coding-patterns-module__yRE-mq__courseRail>header p,.coding-patterns-module__yRE-mq__courseRail>footer p,.coding-patterns-module__yRE-mq__railGroup>header,.coding-patterns-module__yRE-mq__courseRail nav a,.coding-patterns-module__yRE-mq__courseRail nav a>span{color:#777}.coding-patterns-module__yRE-mq__courseRail nav a{border-radius:2px;min-height:38px}.coding-patterns-module__yRE-mq__courseRail nav a:hover,.coding-patterns-module__yRE-mq__courseRail nav a:focus-visible{color:#222;background:#f1f1ed}.coding-patterns-module__yRE-mq__courseMain{background:#fff}.coding-patterns-module__yRE-mq__courseHero{min-height:0;padding:28px 32px 24px;display:block}.coding-patterns-module__yRE-mq__courseHero h1,.coding-patterns-module__yRE-mq__labHero h1,.coding-patterns-module__yRE-mq__videoHero h1,.coding-patterns-module__yRE-mq__courseHeader h1,.coding-patterns-module__yRE-mq__courseArticle .coding-patterns-module__yRE-mq__lessonHeading h1{max-width:22ch;font-size:clamp(2rem,4vw,2.35rem);font-weight:500;line-height:1.12}.coding-patterns-module__yRE-mq__courseHero dl{max-width:560px;margin-top:22px}.coding-patterns-module__yRE-mq__courseHero dd{font-size:1rem}.coding-patterns-module__yRE-mq__nextSession{background:#fff;border:0;border-bottom:1px solid #ddd;border-radius:0;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;margin:0 32px;padding:17px 0}.coding-patterns-module__yRE-mq__sessionMark{color:#222;background:#f0f1eb;border-radius:3px;width:40px;height:42px}.coding-patterns-module__yRE-mq__learningLoop,.coding-patterns-module__yRE-mq__moduleIndex,.coding-patterns-module__yRE-mq__patternReference,.coding-patterns-module__yRE-mq__algorithmRoster,.coding-patterns-module__yRE-mq__practiceSession{margin-inline:32px;padding-block:30px}.coding-patterns-module__yRE-mq__courseReaderLayout{border:1px solid #ddd;grid-template-columns:200px minmax(0,1fr);width:min(960px,100% - 36px);min-height:0;margin:24px auto 54px}.coding-patterns-module__yRE-mq__courseSide{height:auto;max-height:calc(100dvh - 92px);position:sticky;top:68px}.coding-patterns-module__yRE-mq__courseArticle{width:min(720px,100% - 48px);padding:38px 0 64px}@media (max-width:900px){.coding-patterns-module__yRE-mq__courseLayout{border:0;width:calc(100% - 28px);display:block}.coding-patterns-module__yRE-mq__courseRail{border:1px solid #ddd;max-height:none;position:static}.coding-patterns-module__yRE-mq__courseReaderLayout{border:0;width:100%;margin:0}}.coding-patterns-module__yRE-mq__courseLayout,.coding-patterns-module__yRE-mq__courseReaderLayout{border-inline:0;grid-template-columns:220px minmax(0,1fr);width:100%;max-width:none;margin:0}.coding-patterns-module__yRE-mq__courseMain>:where(.coding-patterns-module__yRE-mq__courseHero,.coding-patterns-module__yRE-mq__nextSession,.coding-patterns-module__yRE-mq__learningLoop,.coding-patterns-module__yRE-mq__moduleIndex),.coding-patterns-module__yRE-mq__courseReader .coding-patterns-module__yRE-mq__courseArticle{box-sizing:border-box;width:min(720px,100% - 64px);margin-inline:auto}.coding-patterns-module__yRE-mq__courseMain>.coding-patterns-module__yRE-mq__nextSession,.coding-patterns-module__yRE-mq__courseMain>:where(.coding-patterns-module__yRE-mq__learningLoop,.coding-patterns-module__yRE-mq__moduleIndex){margin-inline:auto}@media (max-width:900px){.coding-patterns-module__yRE-mq__courseLayout,.coding-patterns-module__yRE-mq__courseReaderLayout{display:block}.coding-patterns-module__yRE-mq__courseMain>:where(.coding-patterns-module__yRE-mq__courseHero,.coding-patterns-module__yRE-mq__nextSession,.coding-patterns-module__yRE-mq__learningLoop,.coding-patterns-module__yRE-mq__moduleIndex),.coding-patterns-module__yRE-mq__courseReader .coding-patterns-module__yRE-mq__courseArticle{width:calc(100% - 28px)}}
