html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary-color:#237a4b;--primary-hover:#1f6f46;--primary-active:#176b45;--primary-dark:#145c3c;--primary-bg:#e8f6ed;--primary-text:#176b45;--primary-fill:#237a4b;--accent-color:#ffd43b;--accent-foreground:#0b0d12;--accent-bg:#fff7cc;--success-color:#0f766e;--success-bg:#e6fffb;--success-text:#0f6b63;--warning-color:#b45309;--warning-bg:#fff7e6;--warning-text:#92400e;--danger-color:#c2410c;--danger-bg:#fff1e8;--danger-text:#9a3412;--info-color:#6d28d9;--info-bg:#f5f0ff;--info-text:#5b21b6;--visual-leaf:#237a4b;--visual-lime:#65a30d;--visual-mint:#0d9488;--visual-gold:#b7791f;--visual-coral:#e76f51;--visual-violet:#8b5cf6;--text-primary:#1f2d26;--text-regular:#46554c;--text-secondary:#5d6e63;--text-placeholder:#5d6e63;--text-on-bright:#0b0d12;--border-base:#d8e7dc;--border-light:#eaf2ec;--border-dark:#bdd2c3;--bg-base:#fff;--bg-page:#fbfdfb;--bg-elevated:#fff;--bg-surface:#edf5ef;--bg-surface-hover:#e2eee6;--code-surface-pseudocode-bg:#edf5ef;--code-surface-editor-bg:#f3f8f4;--code-surface-border:#d4e4da;--code-surface-text:#183229;--code-block-bg:#f7fbf8;--code-block-toolbar-bg:#edf5ef;--code-block-border:#d4e4da;--code-block-accent:#ffd43b;--code-block-text:#183229;--code-block-muted:#5d7366;--code-block-line-number:#7c9485;--bg-code:#0c1511;--lab-surface-bg:#f3f8f4;--lab-workspace-bg:#edf4ef;--lab-toolbar-bg:#fff;--hero-border:rgba(35,122,75,.18);--font-size-xs:13px;--font-size-sm:15px;--font-size-ui:15px;--font-size-nav:16px;--font-size-nav-group:16px;--font-size-nav-item:15px;--font-size-base:16px;--font-size-body:16px;--font-size-lg:19px;--font-size-xl:23px;--font-size-2xl:27px;--font-size-3xl:30px;--font-size-display:clamp(2rem, 3.2vw, 2.5rem);--font-size-chapter-title:clamp(1.75rem, 2.8vw, 2.375rem);--line-height-compact:1.4;--line-height-body:1.7;--line-height-ui:1.5;--line-height-heading:1.28;--line-height-display:1.1;--line-height-code:1.55;--control-height-sm:32px;--control-height-md:40px;--control-height-lg:44px;--layout-shell-max:1760px;--layout-catalog-max:1280px;--layout-content-max:1040px;--layout-workspace-max:880px;--layout-prose-max:860px;--layout-book-nav-width:288px;--layout-toc-width:184px;--layout-book-nav-gap:12px;--layout-toc-gap:12px;--layout-page-gutter:32px;--layout-page-gutter-tablet:24px;--layout-page-gutter-mobile:14px;--layout-control-column:300px;--layout-graph-panel-width:360px;--layout-lab-gap:16px;--layout-header-height:64px;--layout-anchor-gap:24px;--layout-anchor-offset:calc(var(--layout-header-height) + var(--layout-anchor-gap));--layout-drawer-max-width:360px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(15,23,42,.04);--shadow-md:0 4px 6px -1px rgba(15,23,42,.05);--shadow-lg:0 10px 15px -3px rgba(15,23,42,.06);--shadow-xl:0 20px 25px -5px rgba(15,23,42,.07);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1)}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--primary-color:#75e0a1;--primary-hover:#1f6f46;--primary-active:#176b45;--primary-text:#a7f3c2;--primary-fill:#237a4b;--primary-bg:rgba(35,122,75,.18);--primary-dark:#145c3c;--accent-color:#ffd43b;--accent-foreground:#0b0d12;--accent-bg:#332b12;--success-color:#5eead4;--success-bg:#0e2622;--success-text:#5eead4;--warning-color:#fbbf24;--warning-bg:#2b2110;--warning-text:#fbbf24;--danger-color:#fb923c;--danger-bg:#30170e;--danger-text:#fb923c;--info-color:#c4b5fd;--info-bg:#241a3a;--info-text:#c4b5fd;--visual-leaf:#75e0a1;--visual-lime:#bef264;--visual-mint:#2dd4bf;--visual-gold:#fbbf24;--visual-coral:#ffa27f;--visual-violet:#ddd6fe;--text-primary:#eaf4ec;--text-regular:#c2d3c8;--text-secondary:#9bb0a2;--text-placeholder:#87998c;--text-on-bright:#0b0d12;--border-base:#2b3d32;--border-light:#223128;--border-dark:#3b5042;--bg-base:#101a15;--bg-page:#08110d;--bg-elevated:#101a15;--bg-surface:#17251e;--bg-surface-hover:#203129;--code-surface-pseudocode-bg:#111e18;--code-surface-editor-bg:#0d1712;--code-surface-border:#2c4236;--code-surface-text:#d7eadf;--code-block-bg:#0c1511;--code-block-toolbar-bg:#132219;--code-block-border:#2c4236;--code-block-accent:#ffd43b;--code-block-text:#d7eadf;--code-block-muted:#9bb0a2;--code-block-line-number:#698273;--bg-code:#0b130f;--lab-surface-bg:#111b15;--lab-workspace-bg:#0b130f;--lab-toolbar-bg:#111b15;--hero-border:#2b3d32;--shadow-sm:0 1px 2px rgba(0,0,0,.35);--shadow-md:0 4px 6px -1px rgba(0,0,0,.4);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.45);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.5)}@media (max-width:767px){:root{--font-size-xs:14px;--font-size-body:17px;--layout-header-height:calc(64px + env(safe-area-inset-top))}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{min-width:0;color:var(--text-primary);background-color:var(--bg-page);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:var(--font-size-body);line-height:var(--line-height-body);overflow-wrap:break-word;overflow-x:clip}#root{width:100%;min-width:0;min-height:100vh}.container{max-width:1400px;padding:0 var(--spacing-md);margin:0 auto}.flex{display:flex}.flex-column{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.text-center{text-align:center}.card{background:var(--bg-elevated);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-lg);transition:all var(--transition-normal);border:1px solid var(--border-light)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-dark);border-color:color-mix(in srgb, var(--primary-color) 30%, transparent);transform:translateY(-1px)}.btn-group{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.page-title{font-size:var(--font-size-3xl);color:var(--text-primary);margin-bottom:var(--spacing-lg);text-align:center;letter-spacing:-.02em;font-weight:700;line-height:var(--line-height-heading)}.page-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);margin-bottom:var(--spacing-xl);text-align:center;font-weight:400}.control-panel{background:var(--bg-elevated);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.control-row{align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap;display:flex}.control-row:last-child{margin-bottom:0}.control-label{color:var(--text-regular);min-width:80px;font-weight:500}.visualizer-container{background:var(--bg-elevated);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);justify-content:center;align-items:flex-end;gap:2px;min-height:400px;display:flex}.info-panel{background:var(--bg-elevated);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-top:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.info-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-md);color:var(--text-primary);font-weight:600}.info-content{color:var(--text-regular);line-height:var(--line-height-body)}.info-content p{margin-bottom:var(--spacing-sm)}.code-block{background:var(--code-surface-pseudocode-bg);color:var(--code-surface-text);padding:var(--spacing-md);border-radius:var(--radius-md);font-family:Fira Code,Consolas,Monaco,JetBrains Mono,monospace;font-size:var(--font-size-sm);margin:var(--spacing-md) 0;line-height:var(--line-height-code);border:1px solid var(--code-surface-border);overflow-x:auto}.code-block code{font-family:inherit}.stats-grid{gap:var(--spacing-md);margin-top:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.stat-item{background:var(--bg-surface);padding:var(--spacing-md);border-radius:var(--radius-sm);text-align:center;border:1px solid var(--border-light);transition:all var(--transition-fast)}.stat-item:hover{border-color:var(--border-dark);border-color:color-mix(in srgb, var(--primary-color) 34%, transparent);transform:translateY(-1px)}.stat-value{font-size:var(--font-size-xl);color:var(--primary-text);letter-spacing:-.02em;font-weight:700}.stat-label{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-xs)}@keyframes pulse-ring{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (min-width:1200px){.container{padding:0 var(--spacing-xl)}}@media (min-width:768px) and (max-width:991px){.visualizer-container{min-height:350px}}@media (max-width:767px){body{font-size:var(--font-size-body)}.control-row{align-items:stretch;gap:var(--spacing-sm);flex-direction:column}.control-label{min-width:auto}}@media (max-width:575px){.visualizer-container{min-height:250px;padding:var(--spacing-sm)}.control-panel{padding:var(--spacing-md)}.btn-group{justify-content:center}.stats-grid{grid-template-columns:repeat(2,1fr)}.card{padding:var(--spacing-md)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html.dark .code-block{background:var(--code-surface-pseudocode-bg);color:var(--code-surface-text);border-color:var(--code-surface-border)}.stdin-required-line{border-left:3px solid var(--primary-color);background:color-mix(in srgb, var(--primary-color) 10%, transparent)}:where(a,button,summary):not(.ant-btn):focus-visible{outline:2px solid var(--primary-text);outline-offset:2px}:where([data-accent=leaf]){--visual-accent-current:var(--visual-leaf)}:where([data-accent=lime]){--visual-accent-current:var(--visual-lime)}:where([data-accent=mint]){--visual-accent-current:var(--visual-mint)}:where([data-accent=gold]){--visual-accent-current:var(--visual-gold)}:where([data-accent=coral]){--visual-accent-current:var(--visual-coral)}:where([data-accent=violet]){--visual-accent-current:var(--visual-violet)}.tag-primary{color:var(--primary-text);background:var(--primary-bg);border-color:var(--primary-color)}.tag-success{color:var(--success-text);background:var(--success-bg);border-color:var(--success-color)}.tag-warning{color:var(--warning-text);background:var(--warning-bg);border-color:var(--warning-color)}.tag-danger{color:var(--danger-text);background:var(--danger-bg);border-color:var(--danger-color)}.tag-info{color:var(--info-text);background:var(--info-bg);border-color:var(--info-color)}@media print{.visualizer-container{box-shadow:none;border:1px solid #000}}#root,.not-found-page{min-height:65vh}.not-found-page{place-items:center;display:grid}@media (max-width:767px){.ant-btn,.ant-input:not(textarea),.ant-input-affix-wrapper,.ant-select-single .ant-select-selector{min-height:var(--control-height-lg)}.ant-select-single .ant-select-selector{align-items:center;display:flex}.ant-select-dropdown .ant-select-item-option{min-height:var(--control-height-lg);align-items:center}.ant-drawer-close{min-width:var(--control-height-lg);min-height:var(--control-height-lg);place-items:center;padding:0;display:inline-grid}.ant-drawer-body{padding-bottom:max(var(--spacing-lg), env(safe-area-inset-bottom))}}@supports (padding:max(0px)){.ant-drawer-body{padding-left:max(var(--spacing-lg), env(safe-area-inset-left));padding-right:max(var(--spacing-lg), env(safe-area-inset-right))}}._shell_bpdk3_1{flex-direction:column;min-height:100vh;display:flex}._skipLink_bpdk3_7{z-index:100;border-radius:var(--radius-sm);color:#fff;background:var(--primary-fill);padding:8px 14px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}._skipLink_bpdk3_7:focus{transform:translateY(0)}._header_bpdk3_23{z-index:20;height:var(--layout-header-height);border-bottom:1px solid var(--border-base);background:var(--bg-base);position:sticky;top:0}._headerInner_bpdk3_32{width:min(100%, var(--layout-shell-max));height:100%;padding:0 var(--layout-page-gutter);align-items:center;gap:var(--spacing-lg);margin:0 auto;display:flex}._navigationMenuButton_bpdk3_42{flex:none;display:inline-flex}._brand_bpdk3_47{min-width:max-content;color:var(--text-primary);align-items:center;gap:10px;display:flex}._brand_bpdk3_47:hover{color:var(--text-primary)}._brand_bpdk3_47>span:last-child{line-height:1.15;display:grid}._brand_bpdk3_47 strong{font-size:var(--font-size-nav)}._brand_bpdk3_47 small{color:var(--text-secondary);font-size:var(--font-size-xs);margin-top:3px}._brandMark_bpdk3_74{color:#fff;background:var(--primary-fill);border-radius:10px;place-items:center;width:34px;height:34px;display:grid;position:relative}._brandMark_bpdk3_74:after{border:2px solid var(--bg-base);background:var(--accent-color);content:"";border-radius:50%;width:9px;height:9px;position:absolute;bottom:-2px;right:-2px}._globalNav_bpdk3_97{align-items:center;gap:4px;height:100%;margin-left:auto;display:flex}._globalNav_bpdk3_97 a{height:100%;color:var(--text-primary);font-size:var(--font-size-nav);place-items:center;padding:0 12px;font-weight:600;display:grid;position:relative}._globalNav_bpdk3_97 a:hover,._globalNav_bpdk3_97 a[aria-current=page]{color:var(--primary-text);font-weight:700}._globalNav_bpdk3_97 a[aria-current=page]:after{background:var(--primary-fill);content:"";height:2px;position:absolute;bottom:-1px;left:12px;right:12px}._main_bpdk3_132{flex:1}._footer_bpdk3_136{width:min(100%, var(--layout-catalog-max));padding:var(--spacing-lg) var(--layout-page-gutter);justify-content:space-between;gap:var(--spacing-md);color:var(--text-secondary);font-size:var(--font-size-sm);margin:0 auto;display:flex}._drawerNavigation_bpdk3_147{gap:var(--spacing-xs);display:grid}._drawerNavigation_bpdk3_147 a{border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-nav);padding:12px;font-weight:600}._drawerNavigation_bpdk3_147 a[aria-current=page]{color:var(--primary-text);background:var(--primary-bg);font-weight:800}._clearProgress_bpdk3_166{margin-top:var(--spacing-lg)}._page_bpdk3_170{width:min(100%, var(--layout-catalog-max));padding:clamp(2.5rem, 6vw, 5rem) var(--layout-page-gutter) 5rem;margin:0 auto}._chapterPage_bpdk3_176{width:min(100%, var(--layout-shell-max));padding:clamp(.875rem, 2vw, 1.25rem) var(--layout-page-gutter) 4rem;margin:0 auto}@media (min-width:768px){._page_bpdk3_170{padding-top:var(--spacing-lg)}}._pageHeader_bpdk3_188{max-width:760px;margin-bottom:max(2rem,min(5vw,4rem))}._pageHeader_bpdk3_188>p,._placeholderPage_bpdk3_194>p{margin:0 0 var(--spacing-sm);color:var(--primary-text);font-size:var(--font-size-xs);letter-spacing:.14em;font-weight:700}._pageHeader_bpdk3_188 h1,._placeholderPage_bpdk3_194 h1{font-size:var(--font-size-display);line-height:var(--line-height-display);letter-spacing:-.03em;margin:0}._pageHeader_bpdk3_188>span,._placeholderPage_bpdk3_194>span:last-child{margin-top:var(--spacing-md);color:var(--text-regular);font-size:var(--font-size-lg);display:block}._pageHeaderActions_bpdk3_218{margin-top:var(--spacing-md);align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}._searchPage_bpdk3_226>.ant-input-affix-wrapper{max-width:760px}._searchSuggestions_bpdk3_230{margin-top:var(--spacing-sm);gap:var(--spacing-sm);flex-wrap:wrap;display:flex}._searchSuggestions_bpdk3_230 button{min-height:var(--control-height-lg);border:1px solid var(--border-base);border-radius:var(--radius-full);color:var(--text-regular);background:var(--bg-elevated);font-size:var(--font-size-sm);cursor:pointer;align-items:center;padding:6px 12px;display:inline-flex}._searchSuggestions_bpdk3_230 button:hover,._searchSuggestions_bpdk3_230 button[aria-pressed=true]{border-color:var(--primary-color);color:var(--primary-text);background:var(--primary-bg)}._searchSuggestions_bpdk3_230 button:focus-visible{border-color:var(--primary-color);color:var(--primary-text);background:var(--primary-bg)}._searchResults_bpdk3_258{width:100%;max-width:100%;margin-top:var(--spacing-xl);align-items:stretch;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));display:grid}._searchCount_bpdk3_268,._searchHint_bpdk3_269{color:var(--text-secondary);font-size:var(--font-size-sm);grid-column:1/-1}._searchResults_bpdk3_258 article{min-width:0;padding:var(--spacing-md);align-content:start;gap:var(--spacing-sm);border:1px solid var(--border-base);border-radius:var(--radius-md);background:var(--bg-elevated);display:grid}._searchResults_bpdk3_258 article>div{align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);font-size:var(--font-size-xs);display:flex}._searchResults_bpdk3_258 article a{color:var(--text-primary);gap:3px;display:grid}._searchResults_bpdk3_258 article a>span{color:var(--text-secondary);font-size:var(--font-size-sm)}._searchResults_bpdk3_258 article p{color:var(--text-regular);font-size:var(--font-size-sm);margin:0}._partsList_bpdk3_311{gap:var(--spacing-xl);display:grid}._part_bpdk3_311{padding-top:var(--spacing-lg);border-top:1px solid var(--border-base);grid-template-columns:minmax(180px,.8fr) minmax(0,2fr);gap:max(1rem,min(5vw,4rem));display:grid}._partHeading_bpdk3_324>span{color:var(--primary-text);font-size:var(--font-size-sm)}._partHeading_bpdk3_324 h2{margin:2px 0 var(--spacing-sm);font-size:var(--font-size-xl)}._partHeading_bpdk3_324 p{color:var(--text-secondary);margin:0}._part_bpdk3_311 ol{gap:var(--spacing-sm);margin:0;padding:0;list-style:none;display:grid}._part_bpdk3_311 li a{padding:var(--spacing-md);border:1px solid transparent;border-left:3px solid var(--visual-accent-current,transparent);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-elevated);display:grid}._part_bpdk3_311 li a:hover{border-color:var(--primary-color);color:var(--text-primary)}._part_bpdk3_311 li a>span{color:var(--primary-text);font-size:var(--font-size-xs);font-weight:700}._part_bpdk3_311 li a>strong{font-size:var(--font-size-nav);margin-top:3px}._part_bpdk3_311 li a>small{margin-top:var(--spacing-xs);color:var(--text-secondary);font-size:var(--font-size-sm)}._projectGrid_bpdk3_379{gap:var(--spacing-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}._projectCard_bpdk3_385{min-width:0;padding:var(--spacing-lg);border:1px solid var(--border-base);border-top:3px solid var(--visual-accent-current,var(--primary-color));border-radius:var(--radius-lg);background:var(--bg-elevated);flex-direction:column;display:flex}._projectNumber_bpdk3_396{color:var(--primary-text);font-family:Fira Code,Consolas,monospace;font-size:var(--font-size-xs);letter-spacing:.08em}._projectCardTopline_bpdk3_403{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}._projectCard_bpdk3_385 h2{margin:var(--spacing-md) 0;font-size:var(--font-size-lg);line-height:var(--line-height-heading)}._projectCard_bpdk3_385>p{color:var(--text-regular);margin:0}._projectCard_bpdk3_385 dl{margin:var(--spacing-lg) 0;gap:var(--spacing-xs);display:grid}._projectCard_bpdk3_385 dl>div{justify-content:space-between;gap:var(--spacing-sm);display:flex}._projectCard_bpdk3_385 dt{color:var(--text-secondary);font-size:var(--font-size-sm)}._projectCard_bpdk3_385 dd{color:var(--text-regular);font-size:var(--font-size-sm);text-align:right;margin:0}._projectCard_bpdk3_385>a{margin-top:auto}._scenarioTags_bpdk3_449{margin-bottom:var(--spacing-lg);gap:var(--spacing-xs);flex-wrap:wrap;display:flex}._placeholderPage_bpdk3_194{max-width:680px;min-height:58vh;padding:5rem var(--layout-page-gutter);place-content:center start;margin:0 auto;display:grid}._placeholderIcon_bpdk3_465{width:52px;height:52px;margin-bottom:var(--spacing-lg);border-radius:var(--radius-lg);color:var(--primary-text);background:var(--primary-bg);place-items:center;font-size:24px;display:grid}._breadcrumb_bpdk3_477{min-width:0;color:var(--text-secondary);font-size:var(--font-size-xs);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:0;line-height:1.35;display:flex}._chapterTopline_bpdk3_489{justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:6px;display:flex}._chapterTopline_bpdk3_489 ._breadcrumb_bpdk3_477{margin-bottom:0}._readingTime_bpdk3_501{color:var(--text-secondary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;flex:none}._chapterLayout_bpdk3_508{justify-content:center;align-items:start;gap:var(--spacing-lg);display:grid}._chapterLayout_bpdk3_508[data-layout=three-column]{grid-template-columns:var(--layout-book-nav-width) minmax(0, 1fr) var(--layout-toc-width);gap:var(--layout-book-nav-gap) var(--layout-toc-gap)}._chapterLayout_bpdk3_508[data-layout=toc]{grid-template-columns:minmax(0, var(--layout-content-max)) var(--layout-toc-width);gap:var(--layout-toc-gap)}._chapterLayout_bpdk3_508[data-layout=single]{grid-template-columns:minmax(0, var(--layout-content-max))}._article_bpdk3_532{width:100%;max-width:var(--layout-content-max);justify-self:center;min-width:0}._chapterTitle_bpdk3_539{font-size:var(--font-size-chapter-title);font-weight:800;line-height:var(--line-height-heading);letter-spacing:-.025em;text-wrap:balance;margin-bottom:12px}._bookNavColumn_bpdk3_548,._tocColumn_bpdk3_549{top:calc(var(--layout-anchor-offset) + var(--spacing-sm));max-height:calc(100vh - var(--layout-anchor-offset) - var(--spacing-lg));position:sticky;overflow:auto}._bookNavColumn_bpdk3_548{padding-right:var(--spacing-md);border-right:1px solid var(--border-base)}._courseRail_bpdk3_561{height:calc(100vh - var(--layout-anchor-offset) - var(--spacing-lg));height:calc(100dvh - var(--layout-anchor-offset) - var(--spacing-lg));display:grid;overflow:hidden}._courseRail_bpdk3_561 ._courseNavigation_bpdk3_568{grid-template-rows:auto minmax(0,1fr) auto;height:100%}._courseNavigation_bpdk3_568{gap:var(--spacing-sm);min-height:0;display:grid}._courseNavigationHeader_bpdk3_579{gap:2px;display:grid}._courseNavigationHeader_bpdk3_579 strong{color:var(--text-primary);font-size:var(--font-size-lg);letter-spacing:-.015em;line-height:var(--line-height-heading)}._courseNavigationHeader_bpdk3_579 span{color:var(--text-secondary);font-size:var(--font-size-xs)}._bookNav_bpdk3_548{gap:var(--spacing-md);min-height:0;display:grid;overflow:auto}._partGroup_bpdk3_603{gap:2px;display:grid}._partGroup_bpdk3_603>strong,._partGroupSummary_bpdk3_609{color:var(--text-secondary);font-size:var(--font-size-xs);letter-spacing:.06em;margin-bottom:4px;font-weight:700}._partGroupSummary_bpdk3_609{justify-content:space-between;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:6px 0;display:flex}._partGroupSummary_bpdk3_609:before{color:var(--text-secondary);content:"›";flex:none;transition:transform .16s}._partGroupSummary_bpdk3_609>span{flex:1}._partGroup_bpdk3_603[open]>._partGroupSummary_bpdk3_609:before{transform:rotate(90deg)}._partGroupSummary_bpdk3_609 small{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:400}._partGroupLinks_bpdk3_647{border-left:1px solid var(--border-light);gap:2px;margin-left:7px;padding-left:9px;display:grid}._partGroupLinks_bpdk3_647 a{border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-sm);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 8px;line-height:1.45;display:grid}._partGroupLinks_bpdk3_647 a:hover,._partGroupLinks_bpdk3_647 a[aria-current=page]{color:var(--primary-text);background:var(--primary-bg)}._partGroupLinks_bpdk3_647 a>span:first-child{font-family:Fira Code,Consolas,monospace;font-size:var(--font-size-xs);opacity:.78}._courseLinkStatus_bpdk3_679{color:var(--primary-text);font-size:var(--font-size-xs);align-items:center;gap:4px;display:inline-flex}._courseCatalogLink_bpdk3_687{border-top:1px solid var(--border-light);color:var(--primary-text);font-size:var(--font-size-sm);padding:10px 8px 4px}._chapterOverview_bpdk3_694{padding-bottom:var(--spacing-md);align-items:center;gap:12px var(--spacing-lg);border-bottom:1px solid var(--border-light);margin-bottom:8px;display:grid}._chapterMeta_bpdk3_703{min-width:0;color:var(--text-regular);font-size:var(--font-size-xs);align-items:center;gap:6px;display:flex}._chapterMeta_bpdk3_703>span{border:1px solid var(--border-base);border-radius:var(--radius-full);background:var(--bg-elevated);white-space:nowrap;align-items:center;gap:5px;min-width:0;padding:5px 9px;display:inline-flex}._chapterMeta_bpdk3_703 strong{color:var(--primary-text);letter-spacing:.08em;font-size:11px;font-weight:800}._chapterCompletion_bpdk3_731{margin-top:var(--spacing-xl);justify-content:flex-end;align-items:center;display:flex}._chapterCompletion_bpdk3_731 .ant-btn{flex:none;min-width:152px}._article_bpdk3_532 h2{letter-spacing:-.02em;font-size:max(1.5rem,min(2.2vw,1.875rem));font-weight:800;line-height:var(--line-height-heading);margin:1.75rem 0 12px;padding-left:13px;position:relative}._article_bpdk3_532 h2:before{border-radius:var(--radius-full);background:var(--primary-color);content:"";width:4px;margin-left:-13px;position:absolute;top:.18em;bottom:.18em}._article_bpdk3_532>h2:first-of-type{margin-top:var(--spacing-lg)}._article_bpdk3_532 h3{letter-spacing:-.015em;font-size:max(1.25rem,min(1.7vw,1.5rem));font-weight:800;line-height:var(--line-height-heading);margin:1.6rem 0 10px}._article_bpdk3_532 h4{margin:1.4rem 0 var(--spacing-sm);font-size:var(--font-size-lg);font-weight:750}._article_bpdk3_532 h1,._article_bpdk3_532 h2,._article_bpdk3_532 h3,._article_bpdk3_532 h4{scroll-margin-top:var(--layout-anchor-offset)}._article_bpdk3_532 p,._article_bpdk3_532 li{max-width:var(--layout-prose-max);line-height:var(--line-height-body)}._article_bpdk3_532 p{margin:12px 0}._article_bpdk3_532 strong{color:var(--text-primary);font-weight:800}._article_bpdk3_532 ul,._article_bpdk3_532 ol{margin:var(--spacing-md) 0;padding-left:1.5rem}._article_bpdk3_532 a{color:var(--primary-text);text-underline-offset:.18em;text-decoration:underline}._article_bpdk3_532 code{background:var(--bg-surface);border-radius:5px;padding:.15em .35em;font-family:Fira Code,Consolas,Monaco,monospace;font-size:.9em}._article_bpdk3_532 pre{margin:var(--spacing-lg) 0;padding:var(--spacing-md);border:1px solid var(--code-surface-border);border-radius:var(--radius-md);background:var(--code-surface-editor-bg);line-height:var(--line-height-code);overflow:auto}._article_bpdk3_532 pre code{background:0 0;padding:0}._article_bpdk3_532 blockquote{max-width:var(--layout-prose-max);margin:var(--spacing-lg) 0;padding:var(--spacing-md);border-left:3px solid var(--primary-color);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg-surface)}._article_bpdk3_532 .course-figure{max-width:100%;margin:var(--spacing-xl) auto;justify-items:center;display:grid}._article_bpdk3_532 .course-figure img{max-width:100%;height:auto;display:block}._article_bpdk3_532 figcaption{margin-top:var(--spacing-sm);color:var(--text-secondary);font-size:var(--font-size-sm);text-align:center}._article_bpdk3_532 table{width:100%;max-width:100%;margin:var(--spacing-lg) 0;border-collapse:collapse;font-size:var(--font-size-sm);display:block;overflow-x:auto}._article_bpdk3_532 th,._article_bpdk3_532 td{border:1px solid var(--border-base);text-align:left;vertical-align:top;padding:8px 10px}._article_bpdk3_532 th{background:var(--bg-surface)}._sectionToc_bpdk3_889{padding-left:var(--spacing-md);border-left:1px solid var(--border-base)}._sectionToc_bpdk3_889>strong{margin-bottom:var(--spacing-sm);font-size:var(--font-size-nav-group);display:block}._sectionTocNav_bpdk3_900{gap:2px;max-height:min(45dvh,360px);display:grid;overflow:auto}._sectionTocNav_bpdk3_900 a{color:var(--text-secondary);font-size:var(--font-size-nav-item);padding:5px 0;line-height:1.35;display:block}._sectionTocNav_bpdk3_900 a[aria-current=location]{color:var(--primary-text);font-weight:700}._sectionTocNav_bpdk3_900 a[data-level="3"]{padding-left:12px}._contentLoading_bpdk3_924{color:var(--text-secondary);text-align:center;padding:4rem 0}._pager_bpdk3_930{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);justify-content:space-between;gap:var(--spacing-md);border-top:1px solid var(--border-base);font-size:var(--font-size-nav);display:flex}._pager_bpdk3_930 a:last-child{text-align:right;margin-left:auto}._navigationDrawerContent_bpdk3_945{gap:var(--spacing-lg);display:grid}._compactNavigationSection_bpdk3_950{gap:var(--spacing-sm);display:grid}._compactNavigationSection_bpdk3_950>strong{color:var(--text-secondary);font-size:var(--font-size-xs);letter-spacing:.06em}._compactSiteNavigation_bpdk3_961{gap:var(--spacing-xs);grid-template-columns:repeat(3,minmax(0,1fr))}._compactSiteNavigation_bpdk3_961 a{min-height:var(--control-height-lg);text-align:center;padding:8px}._currentChapterSummary_bpdk3_972{padding:var(--spacing-md);border:1px solid var(--border-base);border-radius:var(--radius-md);background:var(--bg-surface);gap:4px;display:grid}._currentChapterSummary_bpdk3_972 span{color:var(--text-secondary);font-size:var(--font-size-xs)}._currentChapterSummary_bpdk3_972 strong{color:var(--text-primary)}._route-loading_bpdk3_990{text-align:center;padding:48px}@media (max-width:1023px){._projectGrid_bpdk3_379{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){._header_bpdk3_23{padding-top:env(safe-area-inset-top)}._headerInner_bpdk3_32{padding-right:max(var(--layout-page-gutter-mobile), env(safe-area-inset-right));padding-left:max(var(--layout-page-gutter-mobile), env(safe-area-inset-left));gap:var(--spacing-sm)}._brand_bpdk3_47 small{display:none}._headerInner_bpdk3_32>:last-child{margin-left:auto}._footer_bpdk3_136,._part_bpdk3_311,._projectGrid_bpdk3_379{grid-template-columns:minmax(0,1fr)}._footer_bpdk3_136{display:grid}._part_bpdk3_311{gap:var(--spacing-md)}._article_bpdk3_532 h2{font-size:var(--font-size-xl)}._article_bpdk3_532 h3{font-size:var(--font-size-lg)}._pager_bpdk3_930{display:grid}._partGroup_bpdk3_603 a,._partGroupSummary_bpdk3_609,._pager_bpdk3_930 a{min-height:var(--control-height-lg);align-items:center;padding-top:10px;padding-bottom:10px}._pager_bpdk3_930 a{display:flex}._searchSuggestions_bpdk3_230 button{min-height:var(--control-height-lg)}._chapterTopline_bpdk3_489{align-items:flex-start}._chapterPage_bpdk3_176{padding-right:max(var(--layout-page-gutter-mobile), env(safe-area-inset-right));padding-left:max(var(--layout-page-gutter-mobile), env(safe-area-inset-left))}._chapterTopline_bpdk3_489{margin-bottom:8px}._readingTime_bpdk3_501{padding-top:1px}._chapterOverview_bpdk3_694{gap:8px}._chapterMeta_bpdk3_703{flex-wrap:wrap;align-items:stretch}._chapterMeta_bpdk3_703>span{white-space:normal;max-width:100%;padding:6px 11px}._chapterCompletion_bpdk3_731{margin-top:var(--spacing-lg)}._chapterCompletion_bpdk3_731 .ant-btn{width:100%}._chapterTitle_bpdk3_539{text-wrap:wrap;margin-bottom:10px;font-size:max(1.75rem,min(8vw,2.125rem))}._article_bpdk3_532 h2{font-size:var(--font-size-xl);margin-top:1.5rem;padding-left:11px}._article_bpdk3_532 h2:before{width:3px;margin-left:-11px}}
