@font-face{font-family:Noto Sans SC;src:url(../fonts/noto-sc-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans SC;src:url(../fonts/noto-sc-bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(../fonts/noto-latin-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(../fonts/noto-latin-bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--blue:#064BFA;--white:#FFFFFF;--ink:#111723;--green:#00C98D;--on-green:#002B80;--line:color-mix(in srgb,var(--blue) 28%,var(--white));--wash:color-mix(in srgb,var(--blue) 5%,var(--white));--canvas-w:1920px;--canvas-h:1080px;--safe-x:96px;--title-top:64px;--title-height:144px;--content-top:248px;--content-bottom:136px;--footer-bottom:48px;--font:"Noto Sans","Noto Sans SC",sans-serif;--title-size:80px;--title-line:104px;--body-size:40px;--body-line:60px;--group-size:48px;--group-line:64px;--diagram-size:36px;--diagram-line:48px;--aux-size:26px;--url-size:32px;--footer-size:28px;--slogan-size:40px;--symbol-size:80px;--flow-lead-size:80px;--flow-secondary-size:64px;--ui-size:14px;--ui-small:13px;--ui-title:20px;--ui-mobile-title:16px;--course-cover-size:208px;--course-cover-line:236px;--cover-size:176px;--cover-line:200px;--statement-size:120px;--statement-line:152px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--ease:cubic-bezier(.16,1,.3,1);--feedback:.14s;--switch:.36s;--focus:3px solid var(--blue);--dock-height:56px;font-family:var(--font);color:var(--ink);background:var(--ink);font-synthesis:none}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden}body{overscroll-behavior:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible{outline:var(--focus);outline-offset:5px}a{color:var(--blue);text-underline-offset:.18em}::selection{background:var(--green);color:var(--on-green)}button{touch-action:manipulation}svg{display:block}p,h1,h2,h3{margin:0}strong,b{font-weight:700}button{color:inherit}button,a{transition:background-color var(--feedback),color var(--feedback)}.app{height:100dvh;display:grid;grid-template-rows:minmax(0,1fr) var(--dock-height);position:relative;background:var(--ink)}.stage-viewport{display:flex;align-items:center;justify-content:center;min-height:0;min-width:0;overflow:hidden;position:relative}.stage-box{position:relative;flex:none}.scaled-stage{position:absolute;top:0;left:0;width:var(--canvas-w);height:var(--canvas-h);transform-origin:top left}.slide{width:var(--canvas-w);height:var(--canvas-h);position:relative;overflow:hidden;background:var(--white);color:var(--ink);font-size:var(--body-size);line-height:var(--body-line);isolation:isolate}.slide strong,.slide h2,.slide h1{color:var(--blue)}.theme-blue{background:var(--blue);color:var(--white)}.theme-green{background:var(--green);color:var(--on-green)}.theme-blue h1,.theme-blue strong{color:var(--white)}.theme-green h1,.theme-green strong{color:var(--on-green)}.slide-header{position:absolute;left:var(--safe-x);right:var(--safe-x);top:var(--title-top);height:var(--title-height)}.slide-title{font-size:var(--title-size);line-height:var(--title-line);font-weight:700;letter-spacing:-.025em;overflow-wrap:normal;word-break:normal}.title-line{display:block}.slide-footer{position:absolute;left:var(--safe-x);right:var(--safe-x);bottom:var(--footer-bottom);display:flex;justify-content:flex-end;align-items:baseline;font-size:var(--footer-size);line-height:40px;font-weight:700;color:var(--blue)}.theme-blue .slide-footer{color:var(--white)}.theme-green .slide-footer{color:var(--on-green)}.page-number{font-variant-numeric:tabular-nums;white-space:nowrap}.content{position:absolute;left:var(--safe-x);right:var(--safe-x);top:var(--content-top);bottom:var(--content-bottom)}.slide h2{font-size:var(--group-size);line-height:var(--group-line);font-weight:700}.emphasis{font-weight:700;color:var(--blue)}.lead{color:var(--blue);font-weight:700}.rule{height:2px;background:var(--line);flex:none;transform-origin:left center}.cover-title{position:absolute;left:var(--safe-x);top:224px;right:var(--safe-x);font-size:var(--cover-size);line-height:var(--cover-line);font-weight:700;letter-spacing:-.035em;z-index:1}.cover-title-course{font-size:var(--course-cover-size);line-height:var(--course-cover-line)}.cover-slogan{position:absolute;left:var(--safe-x);bottom:140px;font-size:var(--slogan-size);line-height:56px;z-index:1}.cover-light{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}.cover-halo{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.light-wash{position:absolute;inset:0;background:radial-gradient(ellipse at 0% 0%,color-mix(in srgb,var(--white) 12%,transparent),transparent 38%)}.toolbar{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--white);border-top:1px solid var(--line);padding:4px 16px;z-index:10;white-space:nowrap;font-size:var(--ui-size);line-height:20px}.toolbar button{border:0;background:transparent;border-radius:6px;height:44px;min-width:44px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.toolbar button:hover:not(:disabled){background:var(--wash);color:var(--blue)}.toolbar button[aria-pressed=true]{background:var(--blue);color:var(--white)}.toolbar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.toolbar .toolbar-position{font-variant-numeric:tabular-nums;color:var(--blue);font-weight:700}.toolbar-divider{width:1px;height:24px;background:var(--line);margin:0 6px}.toolbar .tool-expand{min-width:160px}.toolbar .more-tools{display:contents}.toolbar .mobile-menu{display:none}.rotation-hint{position:absolute;top:16px;left:16px;right:16px;text-align:center;color:var(--white);font-size:var(--ui-size);line-height:24px;display:none;pointer-events:none}.toast{position:fixed;bottom:72px;left:50%;transform:translate(-50%);background:var(--white);color:var(--on-green);font-size:var(--ui-size);line-height:24px;border:1px solid var(--line);padding:10px 18px;border-radius:8px;z-index:50;max-width:90vw;text-align:center}.loading-fonts{position:absolute;top:16px;left:50%;transform:translate(-50%);padding:8px 16px;color:var(--white);background:var(--on-green);border-radius:6px;font-size:var(--ui-size);z-index:30}.modal{border:0;padding:0;border-radius:12px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px);background:var(--white);color:var(--ink);box-shadow:0 16px 64px #11172366}.modal::backdrop{background:#111723dc}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 24px;border-bottom:1px solid var(--line)}.modal-header h2{font-size:var(--ui-title);line-height:28px;color:var(--blue)}.modal-close{border:0;background:var(--wash);color:var(--blue);min-width:44px;min-height:44px;border-radius:6px;font-size:var(--ui-size)}.directory-dialog{width:1120px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:24px;overflow:auto;max-height:calc(100dvh - 160px);scrollbar-color:var(--blue) var(--wash);scrollbar-width:thin}.directory-item{display:block;border:2px solid transparent;background:transparent;padding:8px;border-radius:6px;text-align:left;min-width:0}.directory-item:hover{background:var(--wash)}.directory-item[aria-current=page]{border-color:var(--blue)}.thumb-viewport{width:100%;aspect-ratio:16/9;overflow:hidden;position:relative;pointer-events:none;background:var(--wash);container-type:inline-size}.thumb-viewport>.slide{transform:scale(calc(100cqw/1920px));transform-origin:top left}.directory-label{display:flex;gap:10px;margin-top:10px;font-size:var(--ui-size);line-height:22px}.directory-label b{color:var(--blue);font-variant-numeric:tabular-nums}.slide-preview .image-hint{display:none}.zoom-dialog{width:calc(100vw - 48px)}.zoom-content{padding:16px;display:flex;justify-content:center;background:var(--ink)}.zoom-content img{display:block;max-width:100%;height:auto;object-fit:contain;max-height:calc(100dvh - 160px)}.zoom-footer{padding:8px 20px;font-size:var(--ui-size);overflow-wrap:anywhere;line-height:22px}.help-text{font-size:var(--ui-small);line-height:20px;color:var(--ink);padding:0 24px 16px}@media(max-width:980px){.toolbar{padding:4px 8px;gap:4px}.toolbar button{padding:0 8px}.toolbar .wide-label{display:none}.toolbar-divider{margin:0 4px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.mobile-menu{display:inline-flex!important}.toolbar .more-tools{display:none}.toolbar.tools-open .more-tools{display:flex;position:absolute;bottom:64px;left:12px;right:12px;flex-wrap:wrap;justify-content:center;background:var(--white);padding:12px;border-radius:8px;border:1px solid var(--line)}.toolbar .toolbar-divider.secondary{display:none}.directory-grid{grid-template-columns:1fr;gap:12px;padding:16px}.modal-header{padding:12px 16px}.modal-header h2{font-size:var(--ui-mobile-title)}.toolbar button{min-width:44px}.directory-dialog .help-text{display:none}}@media(orientation:portrait)and (max-width:900px){.rotation-hint{display:block}}@media(prefers-reduced-motion:reduce){button,a{transition:color .1s,background-color .1s}}@font-face{font-family:Noto Sans Mono;src:url(../fonts/noto-mono.ttf) format("truetype");font-weight:100 900;font-display:swap}:root{--key-size:64px;--key-line:80px;--support-size:34px;--support-line:52px;--code-size:32px;--code-line:44px;--short-code-size:34px;--short-code-line:48px;--mono:"Noto Sans Mono","Noto Sans SC",monospace;--syntax-accent:var(--on-green);--code-wash:#F4F7FF;--code-focus:#D9F9EE;--tree-step:40px;--body-gap:28px;--group-gap:48px;--column-gap:64px}.content{display:flex;flex-direction:column;gap:32px}.main-zones{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--column-gap);min-height:0;flex:1;align-items:start}.left-zone,.right-zone,.stack-zone,.top-zone,.bottom-zone,.semantic-group{display:flex;flex-direction:column;gap:var(--body-gap);min-width:0}.stack-zone{flex:1;min-height:0;gap:var(--group-gap)}.top-zone,.bottom-zone{flex:none}.bottom-zone:empty{display:none}.semantic-group{gap:12px}.notes-zone{display:flex;gap:var(--column-gap)}.notes-zone>*{flex:1;min-width:0}.body-text,.text-group p{white-space:pre-line;overflow-wrap:break-word;font-size:var(--body-size);line-height:var(--body-line)}.role-support,.role-support p{font-size:var(--support-size);line-height:var(--support-line)}.role-lead{font-size:var(--group-size);line-height:var(--group-line);color:var(--blue)}.role-key{font-size:var(--key-size);line-height:var(--key-line);font-weight:700;color:var(--blue)}.role-conclusion{color:var(--blue);font-weight:700;font-size:var(--body-size);line-height:var(--body-line)}.text-group{display:flex;flex-direction:column;gap:20px}.text-group h2{font-size:var(--group-size);line-height:var(--group-line)}.text-group.role-key h2{font-size:var(--key-size);line-height:var(--key-line)}.block-label{font-size:var(--aux-size)!important;line-height:36px!important;color:var(--blue);font-weight:400}.inline-emphasis{font-weight:700}.columns-code .main-zones{grid-template-columns:1112px minmax(0,1fr)}.columns-module .main-zones{grid-template-columns:1040px minmax(0,1fr)}.columns-document .main-zones{grid-template-columns:1152px minmax(0,1fr)}.columns-diagram .main-zones{grid-template-columns:980px minmax(0,1fr)}.layout-code .right-zone{padding-top:44px;gap:var(--body-gap)}.columns-module .right-zone{padding-top:0}.comparison-columns{display:grid;gap:var(--column-gap);align-items:start}.comparison-columns>section{min-width:0;padding-top:24px;border-top:3px solid var(--blue)}.comparison-columns h2{font-size:var(--group-size);line-height:var(--group-line);margin-bottom:28px}.comparison-details{display:flex;flex-direction:column;gap:var(--body-gap)}.comparison-primary{font-size:var(--body-size);line-height:var(--body-line)}.comparison-secondary{font-size:var(--support-size);line-height:var(--support-line)}.comparison-columns code{font-family:var(--mono);font-size:var(--short-code-size);line-height:var(--short-code-line);overflow-wrap:anywhere}.comparison-columns h2 code{font:inherit}.teaching-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:var(--support-size);line-height:var(--support-line)}.teaching-table th,.teaching-table td{vertical-align:top;text-align:left;padding:12px 28px 12px 0;border-bottom:1px solid var(--line);white-space:pre-line;overflow-wrap:break-word}.teaching-table th{color:var(--blue);font-weight:700;padding-top:0;padding-bottom:20px}.teaching-table tbody tr:last-child td{border-bottom:0}.teaching-table th:last-child,.teaching-table td:last-child{padding-right:0}.teaching-table code{font-family:var(--mono);font-size:var(--code-size);line-height:var(--code-line);overflow-wrap:anywhere}.teaching-table td:first-child{color:var(--on-green)}.table-features th{font-size:var(--aux-size);line-height:36px;font-weight:400}.table-features td{padding-top:24px;padding-bottom:24px;font-size:var(--body-size);line-height:var(--body-line)}.table-features td:first-child,.table-features td:first-child code{font-family:var(--font);font-size:var(--key-size);line-height:var(--key-line);font-weight:700;color:var(--blue)}.anatomy-table{display:grid;grid-template-columns:auto 1fr auto;gap:24px;text-align:center}.anatomy-table>div{display:flex;flex-direction:column;gap:16px;min-width:0;font-size:var(--support-size);line-height:var(--support-line)}.anatomy-table code{font-family:var(--mono);font-size:var(--short-code-size)}.anatomy-table small{font-size:var(--aux-size);line-height:36px;color:var(--blue);border-top:1px solid var(--blue);padding-top:8px}.code-block{min-width:0;position:relative;flex:none}.code-top{display:flex;justify-content:space-between;align-items:center;font-size:var(--aux-size);line-height:36px;color:var(--blue);margin-bottom:8px;min-height:36px}.copy-code{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;color:var(--blue);font-size:var(--aux-size);height:36px;padding:0 8px}.copy-code svg{height:26px;width:26px;fill:none;stroke:currentColor;stroke-width:1.8}.copy-code:hover{background:var(--code-focus)}.code-block pre{margin:0;padding:20px 24px;background:var(--code-wash);font-family:var(--mono);font-size:var(--short-code-size);line-height:var(--short-code-line);white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2;border:1px solid var(--line);font-variant-ligatures:none}.code-full pre{font-size:var(--code-size);line-height:var(--code-line)}.code-block code{font-family:inherit;font-size:inherit;line-height:inherit;white-space:normal}.code-line{display:block;white-space:pre-wrap;min-height:var(--short-code-line);padding-left:var(--continuation-indent,0ch);text-indent:calc(-1 * var(--continuation-indent,0ch));box-decoration-break:clone;-webkit-box-decoration-break:clone}.code-full .code-line{min-height:var(--code-line)}.token-tag,.token-attribute,.token-entity{white-space:nowrap}.token-value{white-space:pre-wrap;overflow-wrap:normal}.code-focus{background:var(--code-focus);outline:1px solid var(--green);outline-offset:2px}.token-tag{color:var(--blue)}.token-attribute,.token-entity{color:var(--on-green)}.token-value{color:var(--ink)}.token-comment{color:var(--on-green)}.mapping{font-size:var(--support-size);line-height:var(--support-line)}.mapping>.block-label{margin-bottom:12px}.mapping-rows{display:flex;flex-direction:column;gap:4px}.mapping-rows>div{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:12px}.mapping code{font-family:var(--mono);font-size:var(--short-code-size);color:var(--blue)}.mapping-arrow{color:var(--blue)}.tree{font-size:var(--support-size);line-height:var(--support-line);position:relative;color:var(--ink)}.tree-row{position:relative;display:flex;align-items:flex-start;min-height:52px;white-space:pre-wrap}.tree-row:first-child{color:var(--blue);font-weight:700;margin-bottom:20px;font-size:var(--body-size);line-height:var(--body-line)}.tree-row+.tree-row{margin-top:8px}.tree-row svg{width:32px;height:52px;flex:none;fill:none;stroke:var(--blue);stroke-width:2;margin-left:-32px}.tree-level-1{padding-left:40px}.tree-level-2{padding-left:80px}.tree-level-3{padding-left:120px}.tree-level-4{padding-left:160px}.tree-row span{min-width:0;overflow-wrap:anywhere}.display-text{font-family:var(--mono);white-space:pre-wrap;overflow-wrap:break-word;color:var(--blue)}.display-text code{font:inherit}.display-text.role-support{font-family:var(--font);color:var(--ink)}.flow-strip{display:flex;align-items:center;gap:24px}.flow-segment{display:flex;align-items:center;gap:24px;flex:1;min-width:0}.flow-segment:last-child{flex:0 1 auto}.flow-segment strong{font-size:var(--group-size);line-height:var(--group-line);color:var(--blue);text-align:center;flex:1}.flow-arrow{width:64px;height:40px;flex:none;overflow:visible}.flow-arrow path{stroke:var(--blue);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}.navigation-diagram{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:48px;min-height:188px}.navigation-node{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--blue)}.navigation-node code{font-family:var(--mono);font-size:var(--group-size);line-height:var(--group-line)}.navigation-node span{font-size:var(--body-size);line-height:var(--body-line)}.navigation-connections{display:flex;flex-direction:column;gap:12px;text-align:center;font-family:var(--mono);font-size:var(--short-code-size);line-height:var(--short-code-line)}.navigation-connections>div{display:flex;flex-direction:column;align-items:center}.navigation-connections .flow-arrow{width:100%;height:28px}.learning-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 40px;margin-top:28px}.learning-topics section{border-top:1px solid var(--line);padding-top:16px}.learning-topics h2{margin-bottom:12px}.learning-topics p{font-size:var(--support-size);line-height:var(--support-line)}.form-relations{display:flex;flex-direction:column;gap:32px;font-size:var(--support-size);line-height:var(--support-line)}.form-relations code{font-family:var(--mono);font-size:var(--short-code-size);line-height:var(--short-code-line);color:var(--blue)}.form-identity{display:flex;align-items:center;gap:24px}.form-identity>span{font-size:var(--aux-size);line-height:36px;text-align:center;color:var(--blue)}.form-identity .flow-arrow{width:120px}.form-field{display:flex;flex-direction:column;gap:12px}.field-result{color:var(--blue)}.syntax-diagram{font-size:var(--aux-size);line-height:36px;color:var(--blue);position:relative}.syntax-over{text-align:center;font-weight:700}.syntax-brace{width:100%;height:20px;fill:none;stroke:var(--blue);stroke-width:2}.syntax-token-row{display:flex;justify-content:center;align-items:center;padding:44px 0;white-space:pre;font-family:var(--mono);font-size:var(--short-code-size);line-height:var(--short-code-line)}.syntax-token{position:relative}.syntax-token code{font:inherit;color:var(--ink)}.syntax-token-label{position:absolute;left:0;right:0;text-align:center;font-family:var(--font);font-size:var(--aux-size);line-height:36px;color:var(--blue);font-weight:400}.label-above{bottom:calc(100% + 8px);border-bottom:1px solid var(--blue)}.label-below{top:calc(100% + 8px);border-top:1px solid var(--blue)}.syntax-element .syntax-token-row{justify-content:space-between;padding-top:8px;font-size:var(--group-size);line-height:var(--group-line)}.syntax-attributes .syntax-over:empty{display:none}.design-image,.design-crop{position:relative;border:1px solid var(--line);padding:0;background:var(--white);display:flex;justify-content:center;align-items:center;min-height:0;width:100%;overflow:hidden}.design-image>img{width:100%;height:100%;object-fit:contain;display:block}.design-crop>svg{width:100%;height:100%}.image-hint{position:absolute;right:12px;bottom:12px;background:var(--white);color:var(--blue);font-size:var(--aux-size);line-height:36px;padding:4px 12px;opacity:0;transition:opacity .14s}.design-image:hover .image-hint,.design-image:focus-visible .image-hint{opacity:1}.analysis-main{display:grid;grid-template-columns:200px 1fr;gap:48px;flex:1;min-height:0}.analysis-overview{display:flex;flex-direction:column;gap:16px;min-height:0}.analysis-overview .design-image{flex:1}.analysis-regions{display:grid;grid-template-rows:1fr 1.35fr 1fr;gap:24px;min-height:0}.analysis-region{display:grid;grid-template-columns:420px 1fr;gap:40px;min-height:0;align-items:stretch}.region-description{display:flex;flex-direction:column;gap:12px;justify-content:center}.region-description h2{display:flex;align-items:center;gap:16px}.region-description h2>b{font-size:var(--aux-size);line-height:40px;width:40px;height:40px;text-align:center;border-radius:50%;background:var(--green);color:var(--on-green)}.region-description>div{display:flex;flex-wrap:wrap;gap:4px 28px;font-size:var(--support-size);line-height:var(--support-line)}.reading-main{display:grid;grid-template-columns:680px 1fr;gap:64px;min-height:0;flex:1}.reading-images{display:grid;grid-template-columns:160px 1fr;gap:24px;min-height:0}.reading-notes{padding-top:16px}.reading-content .flow-strip strong{font-size:var(--support-size);line-height:var(--support-line)}.card-observations{display:grid;grid-template-columns:560px 1fr;gap:64px;flex:1;min-height:0}.card-pair{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;padding-top:16px}.card-observation{position:relative;width:100%;height:460px;border:1px solid var(--line);padding:0;background:var(--white)}.card-observation svg{width:100%;height:100%;object-fit:contain}.card-observation>span{position:absolute;left:8px;top:8px;background:var(--green);color:var(--on-green);width:40px;height:40px;border-radius:50%;font-size:var(--aux-size);line-height:40px}.card-notes{display:flex;flex-direction:column;gap:32px}.card-structure>h2{font-size:var(--aux-size);line-height:36px;margin-bottom:12px}.card-structure .tree{display:flex;flex-wrap:wrap;gap:8px 24px}.card-structure .tree-row:first-child{width:100%;margin-bottom:0}.card-structure .tree-row:not(:first-child){padding-left:0}.card-structure .tree-row svg{display:none}.card-notes .comparison-columns h2{font-size:var(--body-size);line-height:var(--body-line);margin-bottom:20px}.card-notes .comparison-primary,.card-notes .comparison-secondary{font-size:var(--support-size);line-height:var(--support-line)}.card-notes .comparison-details{gap:20px}.evolution .flow-strip strong{font-size:var(--support-size);line-height:var(--support-line)}.evolution .flow-arrow{width:48px}.task-cover{position:absolute;inset:0}.task-cover h1{position:absolute;left:96px;top:160px;font-size:var(--cover-size);line-height:var(--cover-line);font-weight:700;letter-spacing:-.035em}.task-subtitle{position:absolute;left:96px;right:96px;top:592px;font-size:var(--support-size);line-height:var(--support-line)}.task-cover .flow-strip{position:absolute;left:96px;right:96px;top:684px;max-width:1420px}.theme-blue .flow-strip strong{color:var(--white)}.theme-blue .flow-arrow path{stroke:var(--green)}.task-question{position:absolute;left:96px;right:96px;top:788px;font-size:var(--body-size);line-height:var(--body-line)}.task-conclusion{position:absolute;left:96px;right:96px;bottom:140px;font-size:var(--support-size);line-height:var(--support-line)}.chapter-subtitle{position:absolute;left:96px;right:96px;bottom:156px;display:flex;gap:64px;font-size:var(--group-size);line-height:64px}.site-map{flex:1;min-height:0;text-align:center}.site-map>h2{font-size:var(--aux-size);line-height:36px;margin-bottom:16px}.site-node{background:transparent;border:0;display:inline-flex;align-items:center;gap:20px;min-height:84px;text-align:left;padding:4px;color:var(--blue);font-size:var(--support-size);line-height:var(--support-line)}.site-node:hover{background:var(--code-wash)}.site-node img{width:64px;height:84px;object-fit:contain;border:1px solid var(--line)}.site-branches{width:100%;height:48px;fill:none;stroke:var(--blue);stroke-width:3}.site-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-column{display:flex;flex-direction:column;align-items:center;gap:8px}.site-column>.flow-arrow{transform:rotate(90deg);height:24px;width:40px}.site-content>.comparison-columns{flex:none}.site-content .comparison-columns h2{margin-bottom:16px}.responsibility-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:80px;margin-top:48px;flex:1}.responsibility-columns h2{font-size:var(--key-size);line-height:var(--key-line);margin-bottom:28px}.responsibility-columns h3{font-size:var(--support-size);line-height:var(--support-line);margin-bottom:28px;font-weight:400;color:var(--on-green)}.responsibility-columns p{font-size:var(--body-size);line-height:var(--body-line)}.variant-two-statements .stack-zone{padding-top:32px;gap:80px}.variant-two-statements .text-group{max-width:1400px;gap:28px}.variant-two-statements .text-group:first-child h2{font-family:var(--mono);font-size:var(--key-size);line-height:var(--key-line)}.density-spacious{gap:48px}.density-spacious .comparison-columns h2{font-size:var(--key-size);line-height:var(--key-line);margin-bottom:40px}.density-spacious .comparison-details{gap:40px}.density-spacious .comparison-columns>section{padding-top:32px}.density-spacious .teaching-table td{padding-top:24px;padding-bottom:24px}.density-spacious .left-zone,.density-spacious .right-zone{gap:48px}.zoom-dialog{height:calc(100dvh - 40px);overflow:hidden}.zoom-tools{display:flex;align-items:center;gap:12px;padding:8px 24px;font-size:var(--ui-size);line-height:20px}.zoom-tools button{min-height:44px;padding:0 16px;border:0;border-radius:6px;background:var(--wash);color:var(--blue)}.zoom-tools button[aria-pressed=true]{background:var(--blue);color:var(--white)}.zoom-content{height:calc(100% - 144px);overflow:auto;display:block;text-align:center;scrollbar-color:var(--blue) var(--ink);scrollbar-width:thin}.zoom-content img{margin:auto}.zoom-fit img{max-width:100%;height:100%;max-height:100%;object-fit:contain}.zoom-width img{width:100%;height:auto;max-height:none;max-width:none}.zoom-content:focus-visible{outline:var(--focus);outline-offset:-4px}.slide-preview .copy-code{display:none}.slide-preview .code-top{height:36px}.slide-preview .slide{pointer-events:none}@media(max-width:600px){.zoom-tools{padding:6px 12px;gap:8px}.zoom-tools span{display:none}.zoom-dialog .modal-header h2{max-width:calc(100% - 64px)}.zoom-content{height:calc(100% - 132px)}}
