:root{--ink:#162925;--muted:#64716b;--line:#dce4df;--green:#12684f;--paper:#f8faf8}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:var(--green)}a:focus-visible{outline:3px solid #d28a19;outline-offset:4px}header{height:88px;padding:0 5%;gap:30px;border-bottom:1px solid var(--line);background:white}.brand,header{display:flex;align-items:center}.brand{gap:15px;font-weight:700}.mark{font-size:36px;font-weight:900;letter-spacing:-3px}.mark span{color:var(--green)}.header-note{margin-left:auto;color:var(--muted);font-size:14px}.header-link{font-size:14px;border-left:1px solid var(--line);padding-left:30px}.week-page,main.home{max-width:1220px;margin:auto;padding:65px 40px 100px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--green)}h1{font-size:clamp(40px,5vw,64px);letter-spacing:-2.5px;line-height:1.08;font-weight:500;margin:22px 0}h1 span{color:var(--green)}.lead{font-size:19px;color:var(--muted);max-width:590px}.section-label{display:flex;align-items:center;justify-content:space-between;margin:55px 0 20px;border-bottom:1px solid var(--line);padding-bottom:12px}.section-label h2{font-size:21px;margin:0}.section-label>span{font-size:14px;color:var(--muted)}.subject-card,.week-card{display:flex;gap:30px;align-items:center;background:white;border:1px solid var(--line);padding:36px;border-radius:12px;transition:border-color .15s,transform .15s}.subject-card:hover,.topic-card:hover,.week-card:hover{border-color:var(--green);transform:translateY(-2px)}.subject-card h2,.week-card h2{font-size:28px;letter-spacing:-.7px;margin:6px 0}.subject-card p,.week-card p{color:var(--muted);margin:10px 0 20px}.course-icon{width:120px;height:150px;background:#e6f1ea;display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:40px;color:var(--green);border-radius:8px;flex-shrink:0}.open-label{margin-left:auto;color:var(--green);font-size:14px;white-space:nowrap;font-weight:700}.pills{display:flex;gap:8px;flex-wrap:wrap}.pills span{font-size:13px;padding:4px 12px;border:1px solid var(--line);border-radius:30px;color:var(--muted)}.bottom-note{display:flex;gap:90px;margin-top:65px;padding-top:25px;border-top:1px solid var(--line)}.bottom-note>span{font-size:12px;letter-spacing:1px;color:var(--muted)}.bottom-note p{margin:0;font-size:19px}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin-bottom:40px}.breadcrumbs a:hover{text-decoration:underline}.week-number{font-size:56px;color:var(--green);border-right:1px solid var(--line);padding-right:30px}.muted{color:var(--muted);font-size:14px}.week-intro{display:grid;grid-template-columns:1fr 1fr;grid-gap:55px;gap:55px;align-items:center}.week-intro h1{font-size:clamp(38px,4vw,54px)}.overview-image{border:1px solid var(--line);background:white;border-radius:12px;padding:18px}.overview-image img{width:100%;display:block;height:auto}.overview-image>span{display:block;border-top:1px solid var(--line);padding-top:13px;margin-top:10px;font-size:12px;letter-spacing:1.5px;color:var(--muted)}.primary{display:inline-block;background:var(--green);color:white;padding:13px 22px;border-radius:6px;margin-top:25px;font-size:15px}.primary:hover{background:#094d38;color:white}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.topic-card{display:flex;flex-direction:column;border:1px solid var(--line);background:white;border-radius:8px;padding:24px;transition:.15s}.topic-number{font-family:Georgia,serif;font-size:27px;color:var(--green)}.topic-card h3{font-size:20px;line-height:1.35;margin:17px 0 10px}.topic-card p{font-size:15px;color:var(--muted);margin:0 0 20px}.topic-meta{margin-top:auto;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}.study-note{max-width:800px;margin-top:50px}.reading-layout{display:grid;grid-template-columns:300px minmax(0,1fr);max-width:1500px;margin:auto}aside{padding:36px 22px;border-right:1px solid var(--line);background:#f0f5f1}aside h2{font-size:29px;margin:5px 12px 23px}aside .eyebrow{margin-left:12px;font-size:11px}.back-week{display:block;font-size:14px;color:var(--muted);margin:0 12px 30px}aside nav{display:flex;flex-direction:column;gap:5px}aside nav a{display:flex;gap:10px;font-size:14px;padding:10px 12px;line-height:1.45;border-radius:5px}aside nav a span{font-size:12px;color:var(--muted);padding-top:2px}aside nav a.active{background:var(--green);color:white}aside nav a.active span{color:#b4dacc}.lesson{width:100%;max-width:900px;padding:40px 55px 90px}.lesson h1{font-size:clamp(33px,3.5vw,48px);margin-bottom:35px;letter-spacing:-1.5px}.lesson-body p{margin:22px 0;font-size:17px}.lesson-body h2{font-size:25px;line-height:1.3;margin:38px 0 15px;letter-spacing:-.5px}.lesson-body .note{background:#edf3ef;border-left:3px solid #7d9d8c;padding:17px 20px;font-size:16px}.lesson-body .remember{color:var(--green);font-weight:700;border-top:1px solid var(--line);padding-top:22px}.lesson-body figure{margin:32px 0}.lesson-body img{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:7px;background:white}.lesson-body figcaption{font-size:14px;color:var(--muted);margin-top:11px;line-height:1.5}.table-wrap{overflow:auto;margin:28px 0}table{border-collapse:collapse;width:100%;background:white;font-size:15px}td,th{padding:13px 16px;text-align:left;border:1px solid var(--line);min-width:100px}th{background:#e8f0eb;font-weight:700}tbody tr:nth-child(2n){background:#f8faf8}.lesson-pagination{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;border-top:1px solid var(--line);margin-top:50px;padding-top:25px}.lesson-pagination a{font-size:15px;line-height:1.5}.lesson-pagination a:last-child{text-align:right}.lesson-pagination small{display:block;font-size:11px;letter-spacing:1.5px;color:var(--muted);margin-bottom:8px}footer{border-top:1px solid var(--line);padding:24px 5%;display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}.skip{position:absolute;left:20px;top:-100px;background:white;padding:10px;z-index:5}.skip:focus{top:5px}@media(max-width:900px){.topic-grid{grid-template-columns:repeat(2,1fr)}.reading-layout{grid-template-columns:230px minmax(0,1fr)}.lesson{padding:35px 25px}.week-intro{gap:25px}.subject-card,.week-card{padding:25px}.open-label{display:none}}@media(max-width:650px){header{height:72px;padding:0 20px}.header-note{display:none}.header-link{margin-left:auto}.home,.week-page,main.home{padding:35px 20px 60px}.topic-grid,.week-intro{grid-template-columns:1fr}.subject-card,.week-card{gap:18px;padding:22px}.course-icon{width:60px;height:90px}.course-icon,.subject-card h2,.week-card h2{font-size:23px}.subject-card p{font-size:15px}.week-number{font-size:34px;padding-right:15px}.section-label{align-items:flex-start;gap:15px}.section-label>span{font-size:12px;max-width:130px}.reading-layout{display:block}aside{padding:18px;border-right:none;border-bottom:1px solid var(--line)}aside .eyebrow,aside h2{display:none}.back-week{margin:0 0 10px}aside nav{flex-direction:row;overflow:auto;max-height:70px}aside nav a{flex-shrink:0;max-width:230px}.lesson{padding:30px 20px 65px}.breadcrumbs{margin-bottom:25px}.bottom-note{gap:25px}.bottom-note p{font-size:16px}footer{gap:20px;font-size:12px}h1{letter-spacing:-1.5px}}body{-webkit-user-select:text;-moz-user-select:text;user-select:text}img{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.week-card+.week-card{margin-top:20px}html{scroll-padding-top:24px}button,summary{font:inherit}[tabindex]:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d28a19;outline-offset:4px}button{cursor:pointer}.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.resource-card{background:#edf3ef;border:1px solid var(--line);border-radius:8px;padding:20px 24px}.resource-card h3{font-size:18px;margin:0 0 10px}.resource-card>span{font-size:14px;color:var(--green)}.resource-card:hover{border-color:var(--green)}.week-pagination{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;margin-top:40px;font-size:15px;color:var(--green)}.resource-label{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:25px 12px 12px}.mobile-week-nav{display:none}.course-sidebar{align-self:start;position:-webkit-sticky;position:sticky;top:0;max-height:100dvh;overflow:auto}.lesson-contents{border:1px solid var(--line);border-radius:8px;padding:18px 22px;background:white;margin:0 0 38px}.lesson-contents summary{cursor:pointer;font-weight:700}.lesson-contents summary span{font-size:12px;font-weight:400;color:var(--muted);margin-left:10px}.lesson-contents ol{list-style:none;margin:16px 0 0;padding:0;column-count:2;column-gap:24px}.lesson-contents li{page-break-inside:avoid;break-inside:avoid;margin:0 0 9px;font-size:14px;line-height:1.5}.lesson-contents li.nested{padding-left:14px}.lesson-contents a:hover{text-decoration:underline}.anchored-heading{scroll-margin-top:24px}.heading-link{font-size:.75em;opacity:0;color:var(--green)}.anchored-heading a:focus-visible .heading-link,.anchored-heading a:hover .heading-link{opacity:1}.lesson-body h3{font-size:21px;line-height:1.4;margin:32px 0 14px}.lesson-body li{margin:9px 0;font-size:17px}.back-top{display:inline-block;margin-top:25px;font-size:14px;color:var(--green)}.table-wrap:focus-visible{outline-offset:3px}.diagram-preview{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;border-radius:7px}.diagram-preview img{transition:border-color .15s}.diagram-preview:hover img{border-color:var(--green)}.diagram-hint{display:block;padding:8px 12px;color:var(--green);background:#edf3ef;font-size:12px;border-radius:0 0 6px 6px;text-align:right}.diagram-dialog{width:min(96vw,1500px);max-width:96vw;max-height:94dvh;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink)}.diagram-dialog::-webkit-backdrop{background:rgba(11,28,22,.78)}.diagram-dialog::backdrop{background:rgba(11,28,22,.78)}body:has(.diagram-dialog[open]){overflow:hidden}.diagram-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 18px;border-bottom:1px solid var(--line);background:white}.diagram-toolbar>span{font-size:14px;line-height:1.4;max-width:60ch}.diagram-toolbar>div{display:flex;flex-shrink:0;gap:8px;align-items:center}.diagram-toolbar a,.diagram-toolbar button{font-size:13px;line-height:1.4;padding:8px 12px;border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink)}.diagram-toolbar a:hover,.diagram-toolbar button:hover{border-color:var(--green);color:var(--green)}.diagram-toolbar button[aria-pressed=true]{background:#edf3ef}.diagram-canvas{overflow:auto;max-height:calc(94dvh - 100px);padding:16px;overscroll-behavior:contain}.lesson-body .diagram-canvas img{width:auto;max-width:100%;max-height:calc(94dvh - 145px);margin:auto;object-fit:contain;border:0;border-radius:0}.lesson-body .diagram-canvas.actual-size img{max-width:none;max-height:none;width:auto;height:auto}.study-note .diagram-canvas img{max-width:100%}@media(max-width:900px){.lesson-contents ol{column-count:1}.diagram-toolbar{flex-wrap:wrap;gap:10px}.diagram-toolbar>span{max-width:100%}.diagram-canvas{max-height:calc(94dvh - 150px)}}@media(max-width:650px){.course-sidebar{position:static;max-height:none;padding:16px 20px}.desktop-week-nav{display:none}.mobile-week-nav{display:block}.mobile-week-nav summary{font-size:14px;font-weight:700;cursor:pointer;color:var(--green);padding:8px 0}.mobile-week-nav nav{flex-direction:column;overflow:visible;max-height:none;margin-top:12px}.mobile-week-nav nav a{max-width:none;flex-shrink:1}.mobile-week-nav .resource-label{display:block;margin-left:12px}.resource-grid{grid-template-columns:1fr}.lesson-contents{padding:15px 18px}.lesson-contents summary span{float:right}.diagram-toolbar>div{gap:6px;flex-wrap:wrap}.diagram-toolbar a,.diagram-toolbar button{font-size:12px;padding:8px}.diagram-canvas{padding:8px}.diagram-dialog{width:96vw}.lesson-pagination{gap:18px}.lesson-pagination a{overflow-wrap:anywhere}.topic-meta{line-height:1.6}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.review-addition{border:2px solid #b5cbbb;border-radius:8px;background:#f0f6f2;padding:20px 24px;margin:28px 0}.lesson-body .review-addition-label{font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:1px;color:#456851;font-weight:700;margin:0 0 10px}.lesson-body .review-addition h3,.lesson-body .review-explanation h3{font-size:20px;margin:0 0 12px;line-height:1.4}.lesson-body .review-addition p,.lesson-body .review-explanation p{font-size:16px;line-height:1.65;margin:12px 0}.lesson-body .review-addition p:last-child{margin-bottom:0}.review-addition .table-wrap{margin:18px 0 4px}.review-addition td,.review-addition th{min-width:65px;padding:10px 12px}.lesson-body .review-source{font-size:12px;color:var(--muted)}.review-source a{text-decoration:underline;text-underline-offset:3px}.review-explanation{margin:28px 0}.review-addition h3,.review-explanation h3{scroll-margin-top:24px}@media(max-width:650px){.review-addition{padding:17px 18px}.review-addition td,.review-addition th{padding:9px 10px}}.lesson-body .review-addition .review-addition-label{font-size:11px;line-height:1.5;margin:0 0 10px}.lesson-body .review-addition .review-source{font-size:12px;color:var(--muted)}.header-search{font-size:14px;color:var(--green);font-weight:700;white-space:nowrap}.course-search-form{display:flex;align-items:end;gap:16px;margin:32px 0 18px}.course-search-form>div:first-child{flex:1 1}.course-search-form label{display:block;font-size:14px;font-weight:700;margin-bottom:7px}.course-search-form input,.course-search-form select{width:100%;min-height:48px;border:1px solid var(--line);border-radius:6px;padding:10px 14px;background:white;color:var(--ink);font:inherit}.course-search-form button{min-height:48px;border:0;border-radius:6px;padding:10px 24px;background:var(--green);color:white}.course-search-form input:focus-visible,.course-search-form select:focus-visible{outline:3px solid #d28a19;outline-offset:3px}.search-status{color:var(--muted)}.search-results{display:grid;grid-gap:16px;gap:16px;margin-top:26px}.search-result{display:block;background:white;border:1px solid var(--line);border-radius:8px;padding:24px;overflow-wrap:anywhere}.search-result:hover{border-color:var(--green)}.search-result h2{font-size:23px;line-height:1.35;margin:12px 0}.search-result p{color:var(--muted);margin:10px 0 16px}.search-result .eyebrow{font-size:11px;letter-spacing:1px}@media(max-width:650px){header{gap:12px;padding:0 16px}.header-note{display:none}.header-search{margin-left:auto}.header-link{padding-left:12px}.course-search-form{flex-wrap:wrap}.course-search-form>div:first-child{flex-basis:100%}.course-search-form>div:nth-child(2){flex:1 1}.search-result{padding:18px}}.subject-card+.subject-card{margin-top:24px}.course-sidebar>.eyebrow,.lesson-body p{overflow-wrap:anywhere}.course-search-form{flex-wrap:wrap}.course-search-form>div:first-child{min-width:240px}.course-search-form>div:nth-child(2){max-width:280px}@media(max-width:650px){.course-search-form>div:nth-child(2){max-width:none;flex-basis:100%}}.math-lesson{--math-blue:#2d5d82;line-height:1.75}.math-lesson .math-introduction{padding-bottom:8px}.math-lesson p{margin:14px 0;font-size:17px;line-height:1.8}.math-lesson .math-section{margin:32px 0;padding:26px 28px;border:1px solid var(--line);border-radius:12px;background:white}.math-lesson .math-section-label{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;font-weight:700;color:var(--muted);margin-bottom:10px}.math-lesson .math-section h2{font-size:23px;line-height:1.4;letter-spacing:-.4px;margin:0 0 20px;font-weight:600}.math-lesson .math-example{border-top:3px solid var(--math-blue);background:#f2f7fb}.math-example .math-section-label{color:var(--math-blue)}.math-lesson .math-practice{border-top:3px solid var(--green);background:#f2f8f4}.math-practice .math-section-label{color:var(--green)}.math-lesson .math-caution{border-left:3px solid #b87920;background:#fffaf0}.math-caution .math-section-label{color:#936016}.math-lesson .math-revision{background:#fff;border-left:3px solid #9aaea3}.math-lesson .math-concept{border:0;border-radius:0;padding:8px 0;background:transparent}.math-lesson .math-concept .math-section-label{display:none}.math-lesson .math-steps{list-style:none;padding:0;margin:16px 0;counter-reset:math-step}.math-lesson .math-steps li{position:relative;padding:12px 0 12px 44px;margin:0;font-size:16px;line-height:1.8;counter-increment:math-step}.math-steps li+li{border-top:1px solid #dce5ed}.math-steps li:before{content:counter(math-step);position:absolute;left:0;top:14px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#deebf4;color:#234e70;font-size:12px;font-weight:700}.math-inline{font-family:Georgia,Times New Roman,serif;font-size:1.08em;white-space:nowrap}.math-inline sub,.math-inline sup{font-size:.72em}.math-equation{font-family:Georgia,Times New Roman,serif;font-size:23px;line-height:1.8;background:white;border:1px solid #dce4df;border-radius:8px;padding:20px 24px;margin:24px 0;overflow-x:auto;text-align:center}.math-lesson .math-exercise{margin:18px 0}.math-lesson .exercise-question{font-weight:500}.math-answer{border-top:1px solid #d3e2d8;margin-top:16px;padding-top:12px}.math-answer summary{font-size:14px;font-weight:700;color:var(--green);cursor:pointer;padding:5px 0}.math-answer>div{padding:12px 0 0;line-height:1.8;font-size:16px}.math-note{padding:14px 18px;border-left:3px solid #8aa397;background:#edf3ef}.math-checklist{padding-left:22px}.math-lesson .math-checklist li{padding:8px 0;border-bottom:1px solid var(--line)}@media(max-width:650px){.math-lesson .math-section{padding:20px 18px;margin:24px 0}.math-lesson .math-concept{padding:4px 0}.math-lesson .math-section h2{font-size:21px}.math-lesson p{font-size:16px}.math-equation{font-size:19px;padding:16px 12px}.math-lesson .math-steps li{padding-left:36px}}.math-lesson .katex{font-size:1.08em}.math-lesson .katex-display{margin:0;overflow-x:auto;overflow-y:hidden;padding:6px 0}.math-lesson .katex-display>.katex{white-space:nowrap}.math-lesson .math-equation{font-size:21px}.math-lesson .katex-inline{overflow-wrap:normal}@media(max-width:650px){.math-lesson .math-equation{font-size:18px}}.math-proof{margin:20px 0}.math-proof .proof-step{margin:26px 0}.math-proof .proof-step>p{margin-bottom:12px}.math-proof .math-equation{margin:12px 0 22px;padding:20px 16px}.proof-conclusion{border-top:1px solid var(--line);padding-top:12px}.proof-conclusion .math-equation{background:#edf5f0;border-color:#c6dbce}.math-proof .katex-block{display:block}.math-steps .math-prose>p{margin:4px 0}.math-steps .math-equation{margin:12px 0}.math-prose>.math-equation{margin:16px 0 22px}.math-lesson .math-equation .katex-display{text-align:center}body{font-size:18px}.lesson-body li,.lesson-body p,.math-answer>div,.math-lesson .math-steps li,.math-lesson p{font-size:20px;line-height:1.8}.lesson-body .note,.lesson-body .review-addition p,.lesson-body .review-explanation p,.math-note{font-size:19px;line-height:1.8}.lesson-body h2{font-size:28px}.lesson-body h3,.math-lesson .math-section h2{font-size:25px}.math-lesson .math-equation{font-size:24px}.math-answer summary{font-size:17px}.lesson-body figcaption{font-size:16px}table{font-size:18px;line-height:1.65}.course-sidebar nav a,.lesson-contents li{font-size:16px}.search-result p,.subject-card p,.topic-card p,.week-card p{font-size:18px}.muted,.pills span,.topic-meta{font-size:15px}.math-lesson .math-section-label{font-size:12px}.lead{font-size:21px}@media(max-width:650px){.lesson-body li,.lesson-body p,.math-answer>div,.math-lesson .math-steps li,.math-lesson p{font-size:18px;line-height:1.8}.lesson-body .note,.lesson-body .review-addition p,.lesson-body .review-explanation p,.math-note{font-size:18px}.lesson-body h2{font-size:25px}.lesson-body h3,.math-lesson .math-section h2{font-size:23px}.math-lesson .math-equation{font-size:20px}.lead{font-size:19px}.search-result p,.subject-card p,.topic-card p,.week-card p,table{font-size:17px}.math-lesson .math-section{padding:20px 16px}}.lesson-code{max-width:100%;overflow-x:auto;white-space:pre;font-size:16px;line-height:1.65;padding:22px;background:#f1f5f3;border:1px solid var(--line);border-radius:10px;-moz-tab-size:4;tab-size:4}.lesson-code code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.algorithms-lesson .katex{font-size:1.06em}.algorithms-lesson .katex-block{display:block;max-width:100%}.algorithms-lesson .katex-display{overflow-x:auto;overflow-y:hidden;padding:10px 0;text-align:left}.algorithms-lesson .katex-display>.katex{text-align:left;white-space:nowrap}.algorithms-lesson .katex-inline{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle;padding:3px 0}.algorithms-lesson td .katex,.algorithms-lesson th .katex{font-size:1em}.algorithms-html{font-size:19px;line-height:1.8;overflow-wrap:break-word}.algorithms-html .box{margin:24px 0;padding:22px 24px;border:1px solid var(--line);border-left:4px solid #477861;border-radius:12px;background:#fff}.algorithms-html .story{background:#f0f6f3}.algorithms-html .board{background:#f5f7fa;border-left-color:#617997}.algorithms-html .ex{background:#f2f8f4}.algorithms-html .check{background:#f6f5f0;border-left-color:#9b8b59}.algorithms-html .tag{display:block;margin-bottom:10px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;line-height:1.5;color:#35624f}.algorithms-html p{margin:12px 0}.algorithms-html ol,.algorithms-html ul{padding-left:1.4em}.algorithms-html li{margin:12px 0}.algorithms-html .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:12px 2px;margin:16px 0;text-align:left}.algorithms-html .katex-display>.katex{text-align:left}.algorithms-html .katex{font-size:1.08em}.algorithms-html .box>.katex{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;margin:14px 0;padding:6px 0}.algorithms-html figure{margin:30px 0;padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px}.algorithms-html figure img{display:block;width:100%;height:auto;max-width:100%}.algorithms-html figcaption{font-size:15px;line-height:1.7;color:var(--muted);margin-top:14px}.algorithms-html figure a{display:block;cursor:zoom-in}.algorithms-html details{margin:16px 0;border-top:1px solid var(--line);padding-top:16px}.algorithms-html summary{cursor:pointer;font-weight:600;line-height:1.6}.algorithms-html details>p{padding:14px;margin:12px 0 0;background:white;border-radius:8px}.algorithms-html .curious{padding:18px;border:1px dashed #a7b8ae;border-radius:10px}.algorithms-html table{width:100%;border-collapse:collapse;font-size:16px}.algorithms-html td,.algorithms-html th{padding:14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.algorithms-html th{background:#edf4ef}.algorithms-html .table-wrap{max-width:100%;overflow-x:auto}.algorithms-html .note{border-left:3px solid var(--line);padding-left:16px;color:var(--muted)}@media(max-width:650px){.algorithms-html{font-size:17px}.algorithms-html .box{padding:16px}.algorithms-html figure{padding:6px}.algorithms-html .katex{font-size:1em}}.algorithms-lesson>p.note:first-child{font-size:17px;line-height:1.65;background:#edf4ef;border:1px solid #cfdfd3;border-left:4px solid #477861;padding:16px 20px;border-radius:8px;margin:20px 0 30px}.algorithms-html .study-points{margin:8px 0;padding-left:1.25em}.algorithms-html .study-points>li{padding-left:5px;margin:0 0 16px}.algorithms-html .study-points>li:last-child{margin-bottom:0}.algorithms-html li>p{margin:8px 0}.algorithms-html .equation-line{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;margin:14px 0;padding:8px 4px;line-height:1.6}.algorithms-html .equation-line>.katex{white-space:nowrap}.algorithms-equation{margin:18px 0 26px;padding:16px 20px;background:#fff;border:1px solid #dce6df;border-radius:10px;max-width:100%}.algorithms-equation .katex-display{margin:0}.algorithms-lesson h3{margin-top:32px;margin-bottom:12px;font-size:22px;line-height:1.4}.algorithms-lesson>ul{margin:12px 0 26px;padding-left:1.25em}.algorithms-lesson>ul>li{margin:0 0 14px;padding-left:5px}.algorithms-lesson>p{max-width:68ch}@media(max-width:650px){.algorithms-equation{padding:12px}.algorithms-lesson h3{font-size:20px}}.algorithms-html .katex-display .katex-html,.algorithms-html .katex-display>.katex{white-space:normal}.algorithms-equation .katex-display>.katex{text-align:left}@media(max-width:900px){.algorithms-reading-layout{display:block}.algorithms-reading-layout .course-sidebar{position:static;max-height:none;padding:16px 24px;border-right:0;border-bottom:1px solid var(--line)}.algorithms-reading-layout .desktop-week-nav{display:none}.algorithms-reading-layout .mobile-week-nav{display:block}.algorithms-reading-layout .mobile-week-nav summary{font-size:14px;font-weight:700;cursor:pointer;padding:8px 0}.algorithms-reading-layout .mobile-week-nav nav{display:flex;flex-direction:column;overflow:visible;max-height:none}.algorithms-reading-layout .mobile-week-nav .resource-label{display:block}.algorithms-reading-layout .lesson{padding:28px 24px;min-width:0}}.algorithms-html .katex{font:normal 1.21em KaTeX_Main,math,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.algorithms-html .katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.algorithms-html .katex .katex-version:after{content:"0.19.0"}.algorithms-html .katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.algorithms-html .katex .katex-html>.katex-newline{display:block}.algorithms-html .katex .katex-base{position:relative;white-space:nowrap;width:min-content}.algorithms-html .katex .katex-base,.algorithms-html .katex .katex-strut{display:inline-block}.algorithms-html .katex .textbf{font-weight:700}.algorithms-html .katex .textit{font-style:italic}.algorithms-html .katex .textrm{font-family:KaTeX_Main}.algorithms-html .katex .textsf{font-family:KaTeX_SansSerif}.algorithms-html .katex .texttt{font-family:KaTeX_Typewriter}.algorithms-html .katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.algorithms-html .katex .mathit{font-family:KaTeX_Main;font-style:italic}.algorithms-html .katex .mathrm{font-style:normal}.algorithms-html .katex .mathbf{font-family:KaTeX_Main;font-weight:700}.algorithms-html .katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.algorithms-html .katex .amsrm,.algorithms-html .katex .mathbb,.algorithms-html .katex .textbb{font-family:KaTeX_AMS}.algorithms-html .katex .mathcal{font-family:KaTeX_Caligraphic}.algorithms-html .katex .mathfrak,.algorithms-html .katex .textfrak{font-family:KaTeX_Fraktur}.algorithms-html .katex .mathboldfrak,.algorithms-html .katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.algorithms-html .katex .mathtt{font-family:KaTeX_Typewriter}.algorithms-html .katex .mathscr,.algorithms-html .katex .textscr{font-family:KaTeX_Script}.algorithms-html .katex .mathsf,.algorithms-html .katex .textsf{font-family:KaTeX_SansSerif}.algorithms-html .katex .mathboldsf,.algorithms-html .katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.algorithms-html .katex .mathitsf,.algorithms-html .katex .mathsfit,.algorithms-html .katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.algorithms-html .katex .mainrm{font-family:KaTeX_Main;font-style:normal}.algorithms-html .katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.algorithms-html .katex .vlist-r{display:table-row}.algorithms-html .katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.algorithms-html .katex .vlist>span{display:block;height:0;position:relative}.algorithms-html .katex .vlist>span>span{display:inline-block}.algorithms-html .katex .vlist>span>.pstrut{overflow:hidden;width:0}.algorithms-html .katex .vlist-t2{margin-right:-2px}.algorithms-html .katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.algorithms-html .katex .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.algorithms-html .katex .katex-thinbox{display:inline-flex;flex-direction:row;max-width:0;width:0}.algorithms-html .katex .msupsub{text-align:left}.algorithms-html .katex .mfrac>span>span{text-align:center}.algorithms-html .katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.algorithms-html .katex .katex-hdashline,.algorithms-html .katex .katex-hline,.algorithms-html .katex .katex-overline .overline-line,.algorithms-html .katex .katex-rule,.algorithms-html .katex .katex-underline .underline-line,.algorithms-html .katex .mfrac .frac-line{min-height:1px}.algorithms-html .katex .mspace{display:inline-block}.algorithms-html .katex .katex-smash{display:inline;line-height:0}.algorithms-html .katex .clap,.algorithms-html .katex .llap,.algorithms-html .katex .rlap{position:relative;width:0}.algorithms-html .katex .clap>.katex-inner,.algorithms-html .katex .llap>.katex-inner,.algorithms-html .katex .rlap>.katex-inner{position:absolute}.algorithms-html .katex .clap>.katex-fix,.algorithms-html .katex .llap>.katex-fix,.algorithms-html .katex .rlap>.katex-fix{display:inline-block}.algorithms-html .katex .llap>.katex-inner{right:0}.algorithms-html .katex .clap>.katex-inner,.algorithms-html .katex .rlap>.katex-inner{left:0}.algorithms-html .katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.algorithms-html .katex .katex-rule{border:0 solid;display:inline-block;position:relative}.algorithms-html .katex .katex-hline,.algorithms-html .katex .katex-overline .overline-line,.algorithms-html .katex .katex-underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.algorithms-html .katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.algorithms-html .katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size1,.algorithms-html .katex .katex-sizing.reset-size1.size1{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size2,.algorithms-html .katex .katex-sizing.reset-size1.size2{font-size:1.2em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size3,.algorithms-html .katex .katex-sizing.reset-size1.size3{font-size:1.4em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size4,.algorithms-html .katex .katex-sizing.reset-size1.size4{font-size:1.6em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size5,.algorithms-html .katex .katex-sizing.reset-size1.size5{font-size:1.8em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size6,.algorithms-html .katex .katex-sizing.reset-size1.size6{font-size:2em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size7,.algorithms-html .katex .katex-sizing.reset-size1.size7{font-size:2.4em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size8,.algorithms-html .katex .katex-sizing.reset-size1.size8{font-size:2.88em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size9,.algorithms-html .katex .katex-sizing.reset-size1.size9{font-size:3.456em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size10,.algorithms-html .katex .katex-sizing.reset-size1.size10{font-size:4.148em}.algorithms-html .katex .fontsize-ensurer.reset-size1.size11,.algorithms-html .katex .katex-sizing.reset-size1.size11{font-size:4.976em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size1,.algorithms-html .katex .katex-sizing.reset-size2.size1{font-size:.8333333333em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size2,.algorithms-html .katex .katex-sizing.reset-size2.size2{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size3,.algorithms-html .katex .katex-sizing.reset-size2.size3{font-size:1.1666666667em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size4,.algorithms-html .katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size5,.algorithms-html .katex .katex-sizing.reset-size2.size5{font-size:1.5em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size6,.algorithms-html .katex .katex-sizing.reset-size2.size6{font-size:1.6666666667em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size7,.algorithms-html .katex .katex-sizing.reset-size2.size7{font-size:2em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size8,.algorithms-html .katex .katex-sizing.reset-size2.size8{font-size:2.4em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size9,.algorithms-html .katex .katex-sizing.reset-size2.size9{font-size:2.88em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size10,.algorithms-html .katex .katex-sizing.reset-size2.size10{font-size:3.4566666667em}.algorithms-html .katex .fontsize-ensurer.reset-size2.size11,.algorithms-html .katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size1,.algorithms-html .katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size2,.algorithms-html .katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size3,.algorithms-html .katex .katex-sizing.reset-size3.size3{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size4,.algorithms-html .katex .katex-sizing.reset-size3.size4{font-size:1.1428571429em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size5,.algorithms-html .katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size6,.algorithms-html .katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size7,.algorithms-html .katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size8,.algorithms-html .katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size9,.algorithms-html .katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size10,.algorithms-html .katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.algorithms-html .katex .fontsize-ensurer.reset-size3.size11,.algorithms-html .katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size1,.algorithms-html .katex .katex-sizing.reset-size4.size1{font-size:.625em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size2,.algorithms-html .katex .katex-sizing.reset-size4.size2{font-size:.75em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size3,.algorithms-html .katex .katex-sizing.reset-size4.size3{font-size:.875em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size4,.algorithms-html .katex .katex-sizing.reset-size4.size4{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size5,.algorithms-html .katex .katex-sizing.reset-size4.size5{font-size:1.125em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size6,.algorithms-html .katex .katex-sizing.reset-size4.size6{font-size:1.25em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size7,.algorithms-html .katex .katex-sizing.reset-size4.size7{font-size:1.5em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size8,.algorithms-html .katex .katex-sizing.reset-size4.size8{font-size:1.8em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size9,.algorithms-html .katex .katex-sizing.reset-size4.size9{font-size:2.16em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size10,.algorithms-html .katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.algorithms-html .katex .fontsize-ensurer.reset-size4.size11,.algorithms-html .katex .katex-sizing.reset-size4.size11{font-size:3.11em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size1,.algorithms-html .katex .katex-sizing.reset-size5.size1{font-size:.5555555556em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size2,.algorithms-html .katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size3,.algorithms-html .katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size4,.algorithms-html .katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size5,.algorithms-html .katex .katex-sizing.reset-size5.size5{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size6,.algorithms-html .katex .katex-sizing.reset-size5.size6{font-size:1.1111111111em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size7,.algorithms-html .katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size8,.algorithms-html .katex .katex-sizing.reset-size5.size8{font-size:1.6em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size9,.algorithms-html .katex .katex-sizing.reset-size5.size9{font-size:1.92em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size10,.algorithms-html .katex .katex-sizing.reset-size5.size10{font-size:2.3044444444em}.algorithms-html .katex .fontsize-ensurer.reset-size5.size11,.algorithms-html .katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size1,.algorithms-html .katex .katex-sizing.reset-size6.size1{font-size:.5em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size2,.algorithms-html .katex .katex-sizing.reset-size6.size2{font-size:.6em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size3,.algorithms-html .katex .katex-sizing.reset-size6.size3{font-size:.7em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size4,.algorithms-html .katex .katex-sizing.reset-size6.size4{font-size:.8em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size5,.algorithms-html .katex .katex-sizing.reset-size6.size5{font-size:.9em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size6,.algorithms-html .katex .katex-sizing.reset-size6.size6{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size7,.algorithms-html .katex .katex-sizing.reset-size6.size7{font-size:1.2em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size8,.algorithms-html .katex .katex-sizing.reset-size6.size8{font-size:1.44em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size9,.algorithms-html .katex .katex-sizing.reset-size6.size9{font-size:1.728em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size10,.algorithms-html .katex .katex-sizing.reset-size6.size10{font-size:2.074em}.algorithms-html .katex .fontsize-ensurer.reset-size6.size11,.algorithms-html .katex .katex-sizing.reset-size6.size11{font-size:2.488em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size1,.algorithms-html .katex .katex-sizing.reset-size7.size1{font-size:.4166666667em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size2,.algorithms-html .katex .katex-sizing.reset-size7.size2{font-size:.5em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size3,.algorithms-html .katex .katex-sizing.reset-size7.size3{font-size:.5833333333em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size4,.algorithms-html .katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size5,.algorithms-html .katex .katex-sizing.reset-size7.size5{font-size:.75em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size6,.algorithms-html .katex .katex-sizing.reset-size7.size6{font-size:.8333333333em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size7,.algorithms-html .katex .katex-sizing.reset-size7.size7{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size8,.algorithms-html .katex .katex-sizing.reset-size7.size8{font-size:1.2em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size9,.algorithms-html .katex .katex-sizing.reset-size7.size9{font-size:1.44em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size10,.algorithms-html .katex .katex-sizing.reset-size7.size10{font-size:1.7283333333em}.algorithms-html .katex .fontsize-ensurer.reset-size7.size11,.algorithms-html .katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size1,.algorithms-html .katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size2,.algorithms-html .katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size3,.algorithms-html .katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size4,.algorithms-html .katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size5,.algorithms-html .katex .katex-sizing.reset-size8.size5{font-size:.625em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size6,.algorithms-html .katex .katex-sizing.reset-size8.size6{font-size:.6944444444em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size7,.algorithms-html .katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size8,.algorithms-html .katex .katex-sizing.reset-size8.size8{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size9,.algorithms-html .katex .katex-sizing.reset-size8.size9{font-size:1.2em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size10,.algorithms-html .katex .katex-sizing.reset-size8.size10{font-size:1.4402777778em}.algorithms-html .katex .fontsize-ensurer.reset-size8.size11,.algorithms-html .katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size1,.algorithms-html .katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size2,.algorithms-html .katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size3,.algorithms-html .katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size4,.algorithms-html .katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size5,.algorithms-html .katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size6,.algorithms-html .katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size7,.algorithms-html .katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size8,.algorithms-html .katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size9,.algorithms-html .katex .katex-sizing.reset-size9.size9{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size10,.algorithms-html .katex .katex-sizing.reset-size9.size10{font-size:1.2002314815em}.algorithms-html .katex .fontsize-ensurer.reset-size9.size11,.algorithms-html .katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size1,.algorithms-html .katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size2,.algorithms-html .katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size3,.algorithms-html .katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size4,.algorithms-html .katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size5,.algorithms-html .katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size6,.algorithms-html .katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size7,.algorithms-html .katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size8,.algorithms-html .katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size9,.algorithms-html .katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size10,.algorithms-html .katex .katex-sizing.reset-size10.size10{font-size:1em}.algorithms-html .katex .fontsize-ensurer.reset-size10.size11,.algorithms-html .katex .katex-sizing.reset-size10.size11{font-size:1.1996142719em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size1,.algorithms-html .katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size2,.algorithms-html .katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size3,.algorithms-html .katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size4,.algorithms-html .katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size5,.algorithms-html .katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size6,.algorithms-html .katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size7,.algorithms-html .katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size8,.algorithms-html .katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size9,.algorithms-html .katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size10,.algorithms-html .katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.algorithms-html .katex .fontsize-ensurer.reset-size11.size11,.algorithms-html .katex .katex-sizing.reset-size11.size11{font-size:1em}.algorithms-html .katex .delimsizing.size1{font-family:KaTeX_Size1}.algorithms-html .katex .delimsizing.size2{font-family:KaTeX_Size2}.algorithms-html .katex .delimsizing.size3{font-family:KaTeX_Size3}.algorithms-html .katex .delimsizing.size4{font-family:KaTeX_Size4}.algorithms-html .katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.algorithms-html .katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.algorithms-html .katex .nulldelimiter{display:inline-block;width:.12em}.algorithms-html .katex .delimcenter,.algorithms-html .katex .op-symbol{position:relative}.algorithms-html .katex .op-symbol.small-op{font-family:KaTeX_Size1}.algorithms-html .katex .op-symbol.large-op{font-family:KaTeX_Size2}.algorithms-html .katex .katex-accent>.vlist-t,.algorithms-html .katex .op-limits>.vlist-t{text-align:center}.algorithms-html .katex .katex-accent .accent-body{position:relative}.algorithms-html .katex .katex-accent .accent-body:not(.accent-full){width:0}.algorithms-html .katex .katex-overlay{display:block}.algorithms-html .katex .mtable .vertical-separator{display:inline-block;min-width:1px}.algorithms-html .katex .mtable .arraycolsep{display:inline-block}.algorithms-html .katex .mtable .col-align-c>.vlist-t{text-align:center}.algorithms-html .katex .mtable .col-align-l>.vlist-t{text-align:left}.algorithms-html .katex .mtable .col-align-r>.vlist-t{text-align:right}.algorithms-html .katex .svg-align{text-align:left}.algorithms-html .katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.algorithms-html .katex svg path{stroke:none}.algorithms-html .katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.algorithms-html .katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.algorithms-html .katex .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.algorithms-html .katex .katex-stretchy:after,.algorithms-html .katex .katex-stretchy:before{content:""}.algorithms-html .katex .hide-tail{overflow:hidden;position:relative;width:100%}.algorithms-html .katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.algorithms-html .katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.algorithms-html .katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.algorithms-html .katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.algorithms-html .katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.algorithms-html .katex .x-arrow-pad{padding:0 .5em}.algorithms-html .katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.algorithms-html .katex .mover,.algorithms-html .katex .munder,.algorithms-html .katex .x-arrow{text-align:center}.algorithms-html .katex .boxpad{padding:0 .3em}.algorithms-html .katex .fbox,.algorithms-html .katex .fcolorbox{border:.04em solid;box-sizing:border-box}.algorithms-html .katex .cancel-pad{padding:0 .2em}.algorithms-html .katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.algorithms-html .katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.algorithms-html .katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.algorithms-html .katex .anglpad{padding:0 .03889em}.algorithms-html .katex .reflectbox{display:inline-block;transform:scaleX(-1)}.algorithms-html .katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.algorithms-html .katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.algorithms-html .katex .mtr-glue{width:50%}.algorithms-html .katex .cd-vert-arrow{display:inline-block;position:relative}.algorithms-html .katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.algorithms-html .katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.algorithms-html .katex-display{display:block;margin:1em 0;text-align:center}.algorithms-html .katex-display>.katex{display:block;text-align:center;white-space:nowrap}.algorithms-html .katex-display>.katex>.katex-html{display:block;position:relative}.algorithms-html .katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.algorithms-html .katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.algorithms-html .katex-display.fleqn>.katex{padding-left:2em;text-align:left}