.study-module__v3k1iq__article{padding:32px 0 70px;line-height:1.95}.study-module__v3k1iq__breadcrumb{color:var(--color-text-secondary);margin-bottom:44px;font-size:12px}.study-module__v3k1iq__title{max-width:700px;margin:0 0 42px}.study-module__v3k1iq__title>span{color:var(--color-text-secondary);font-size:12px}.study-module__v3k1iq__title h1{text-wrap:balance;letter-spacing:-.025em;margin:18px 0 22px;font-size:clamp(28px,4vw,40px);line-height:1.35}.study-module__v3k1iq__title p{color:var(--color-text-secondary);font-size:17px}.study-module__v3k1iq__toc{border-block:1px solid var(--color-border);flex-wrap:wrap;gap:8px 24px;margin:28px 0 52px;padding:14px 0;font-size:13px;display:flex}.study-module__v3k1iq__prose{max-width:700px;margin:0 auto;scroll-margin-top:90px}.study-module__v3k1iq__prose h2{letter-spacing:-.02em;margin:52px 0 22px;font-size:25px;line-height:1.5}.study-module__v3k1iq__prose h3{margin:32px 0 14px;font-size:19px}.study-module__v3k1iq__prose p{margin:16px 0;font-size:15px}.study-module__v3k1iq__prose a,.study-module__v3k1iq__sources a{color:var(--color-accent,#2563eb);text-underline-offset:3px;text-decoration:underline}.study-module__v3k1iq__prose code{background:var(--color-bg-secondary,#f4f5f6);border-radius:3px;padding:2px 5px;font-size:.9em}.study-module__v3k1iq__reason{border-left:3px solid #688e9e;margin:26px 0;padding:4px 0 4px 22px}.study-module__v3k1iq__paths{grid-template-columns:1fr 1fr;gap:24px;margin:28px 0;display:grid}.study-module__v3k1iq__path{border:1px solid var(--color-border);padding:20px}.study-module__v3k1iq__path b{font-size:14px;display:block}.study-module__v3k1iq__path ol{color:var(--color-text-secondary);margin:12px 0 0;padding-left:20px;font-size:13px}.study-module__v3k1iq__path li{padding:4px 0}.study-module__v3k1iq__caption{max-width:var(--read-max-compact);color:var(--color-text-secondary);font-size:12px!important}.study-module__v3k1iq__snippet{background:var(--color-bg-secondary,#f3f5f6);border:1px solid var(--color-border);border-radius:5px;padding:20px;font-size:12px;line-height:1.8;overflow-x:auto}.study-module__v3k1iq__snippet code{font-size:inherit;background:0 0;padding:0}.study-module__v3k1iq__experiment{border:1px solid var(--color-border);border-radius:8px;margin:30px 0;line-height:1.6;overflow:hidden}.study-module__v3k1iq__experimentHead{background:var(--color-bg-secondary,#f8f8f8);justify-content:space-between;gap:12px;padding:14px 20px;font-size:12px;display:flex}.study-module__v3k1iq__experimentHead>span{color:var(--color-text-secondary);letter-spacing:.04em}.study-module__v3k1iq__viewport{color:#243b4a;background:#e9eef1;height:440px;position:relative}.study-module__v3k1iq__viewport>.study-module__v3k1iq__canvas{width:100%;height:100%;position:absolute;inset:0}.study-module__v3k1iq__canvas canvas{display:block}.study-module__v3k1iq__cover{flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;padding:22px;display:flex;position:absolute;inset:0}.study-module__v3k1iq__cover img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.study-module__v3k1iq__cover>button,.study-module__v3k1iq__cover>small{z-index:1;position:relative}.study-module__v3k1iq__cover small{color:#334d5b;background:#e9eef1ed;border-radius:3px;padding:3px 8px;font-size:11px}.study-module__v3k1iq__experiment button,.study-module__v3k1iq__experiment select{font:inherit;border:1px solid var(--color-border);background:var(--color-bg,#fff);color:var(--color-text);cursor:pointer;border-radius:5px;min-height:36px;padding:7px 12px;font-size:12px}.study-module__v3k1iq__experiment button:disabled,.study-module__v3k1iq__experiment select:disabled{opacity:.5;cursor:not-allowed}.study-module__v3k1iq__experiment button[aria-pressed=true]{color:#fff;background:#315c70;border-color:#315c70}.study-module__v3k1iq__experiment button:focus-visible,.study-module__v3k1iq__experiment select:focus-visible,.study-module__v3k1iq__experiment input:focus-visible{outline-offset:3px;outline:2px solid #397497}.study-module__v3k1iq__experiment .study-module__v3k1iq__launch{color:#fff;background:#24495c;border-color:#24495c;padding:11px 22px;font-size:14px;box-shadow:0 4px 14px #17384822}.study-module__v3k1iq__launch span{margin-left:14px}.study-module__v3k1iq__loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:28px;font-size:14px;display:flex;position:absolute;inset:0}.study-module__v3k1iq__canvasLabel{pointer-events:none;font-size:11px;position:absolute;top:16px;left:18px}.study-module__v3k1iq__hint{pointer-events:none;font-size:11px;position:absolute;bottom:16px;left:18px}.study-module__v3k1iq__experiment .study-module__v3k1iq__reset{color:#243b4a;background:#ffffffd9;border-color:#c5d0d6;position:absolute;top:12px;right:14px}.study-module__v3k1iq__controls{padding:20px}.study-module__v3k1iq__modeRow{flex-wrap:wrap;gap:7px;display:flex}.study-module__v3k1iq__light{align-items:center;gap:16px;margin-top:18px;font-size:12px;display:flex}.study-module__v3k1iq__light input{accent-color:#315c70;width:150px}.study-module__v3k1iq__light output{font-variant-numeric:tabular-nums}.study-module__v3k1iq__stages{color:var(--color-text-secondary);flex-wrap:wrap;gap:8px;margin:22px 0;padding:0;font-size:11px;list-style:none;display:flex}.study-module__v3k1iq__stages li{border-bottom:2px solid var(--color-border);padding:4px 8px}.study-module__v3k1iq__stages li[data-current=true]{color:var(--color-text);border-color:#315c70}.study-module__v3k1iq__precision{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.study-module__v3k1iq__precision label{flex-direction:column;gap:6px;font-size:12px;display:flex}.study-module__v3k1iq__precision select{min-width:180px}.study-module__v3k1iq__note{color:var(--color-text-secondary);margin:12px 0;font-size:12px;line-height:1.8}.study-module__v3k1iq__note strong{color:var(--color-text)}.study-module__v3k1iq__stats{border-top:1px solid var(--color-border);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:12px 24px;margin-top:20px;padding-top:16px;font-size:12px;display:flex}.study-module__v3k1iq__stats b{font-size:16px;font-weight:500}.study-module__v3k1iq__history{margin-top:22px}.study-module__v3k1iq__history table{border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.study-module__v3k1iq__history caption{text-align:left;margin-bottom:10px;font-weight:600}.study-module__v3k1iq__history td,.study-module__v3k1iq__history th{border-bottom:1px solid var(--color-border);padding:7px 10px}.study-module__v3k1iq__history th{color:var(--color-text-secondary);font-weight:400}.study-module__v3k1iq__export{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.study-module__v3k1iq__export span{color:var(--color-text-secondary);max-width:420px;font-size:12px}.study-module__v3k1iq__error{color:var(--color-text);border-left:3px solid #a95537;padding-left:12px;font-size:13px}.study-module__v3k1iq__sources{border-top:1px solid var(--color-border);max-width:700px;color:var(--color-text-secondary);margin:52px auto 0;padding-top:24px;font-size:12px}.study-module__v3k1iq__sources li{overflow-wrap:anywhere;margin:12px 0}.study-module__v3k1iq__related{gap:20px;max-width:700px;margin:32px auto;font-size:13px;display:flex}@media (max-width:600px){.study-module__v3k1iq__article{padding-top:16px}.study-module__v3k1iq__breadcrumb,.study-module__v3k1iq__title{margin-bottom:28px}.study-module__v3k1iq__title p{font-size:15px}.study-module__v3k1iq__toc{gap:8px 16px;margin-bottom:32px}.study-module__v3k1iq__prose h2{margin-top:40px;font-size:22px}.study-module__v3k1iq__paths{grid-template-columns:1fr;gap:12px}.study-module__v3k1iq__path{padding:14px 18px}.study-module__v3k1iq__viewport{height:330px}.study-module__v3k1iq__controls{padding:14px}.study-module__v3k1iq__experimentHead{padding:12px 14px}.study-module__v3k1iq__experiment button{min-height:40px}.study-module__v3k1iq__modeRow{gap:5px}.study-module__v3k1iq__modeRow button{padding:7px 10px}.study-module__v3k1iq__snippet{padding:14px;font-size:11px}.study-module__v3k1iq__light{gap:10px}.study-module__v3k1iq__light input{width:110px}.study-module__v3k1iq__canvasLabel{top:20px}.study-module__v3k1iq__cover{padding:16px 8px}.study-module__v3k1iq__cover small{text-align:center}.study-module__v3k1iq__related{flex-wrap:wrap}}.study-module__v3k1iq__lessonList{padding-left:24px;font-size:15px}.study-module__v3k1iq__lessonList li{margin:12px 0;padding-left:4px}.study-module__v3k1iq__lessonFigure{color:var(--color-text);margin:28px 0}.study-module__v3k1iq__lessonFigure svg{width:100%;height:auto;display:block}.study-module__v3k1iq__lessonFigure figcaption{color:var(--color-text-secondary);margin-top:10px;font-size:12px;line-height:1.8}.study-module__v3k1iq__lessonTable{margin:26px 0;overflow-x:auto}.study-module__v3k1iq__lessonTable table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.8}.study-module__v3k1iq__lessonTable td,.study-module__v3k1iq__lessonTable th{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;min-width:130px;padding:12px}.study-module__v3k1iq__prose sup{margin-left:3px;font-size:10px}.study-module__v3k1iq__sources li{scroll-margin-top:90px}.study-module__v3k1iq__prose .mermaid-diagram{margin:24px 0}.study-module__v3k1iq__readingBody{counter-reset:h2-counter}.study-module__v3k1iq__readingSection.article-content{counter-reset:none}.study-module__v3k1iq__readingBody .cad-origin .article-content{counter-reset:none}
.agent-loop-module__6Fh10a__figure{border-block:1px solid var(--color-border);color:var(--color-text);font:1rem/1.6 var(--font-sans);--loop-accent:var(--color-accent,#567958);margin:2rem 0;padding:1rem 0;container:agent-loop/inline-size}.article-content .agent-loop-module__6Fh10a__figure.agent-loop-module__6Fh10a__figure .agent-loop-module__6Fh10a__title{font:600 1.1em/1.5 var(--font-sans);text-align:left;margin:0}.article-content .agent-loop-module__6Fh10a__figure.agent-loop-module__6Fh10a__figure p{text-indent:0;text-align:left}.agent-loop-module__6Fh10a__scene{width:100%;color:var(--color-text);--loop-line:color-mix(in srgb,var(--color-text)48%,var(--color-bg));--loop-detail:color-mix(in srgb,var(--color-text)24%,var(--color-bg));--loop-shell:color-mix(in srgb,var(--color-bg-secondary)70%,var(--color-bg));--loop-recess:color-mix(in srgb,var(--color-text)8%,var(--color-bg));margin:0;display:block}.agent-loop-module__6Fh10a__scene text{font-family:var(--font-sans);text-anchor:middle;fill:var(--color-text);font-size:18px}.agent-loop-module__6Fh10a__scene .agent-loop-module__6Fh10a__role{font-size:38px;font-weight:500}.agent-loop-module__6Fh10a__scene path,.agent-loop-module__6Fh10a__scene rect,.agent-loop-module__6Fh10a__scene line,.agent-loop-module__6Fh10a__scene circle{vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.agent-loop-module__6Fh10a__wall{fill:var(--loop-shell);stroke:var(--loop-line);stroke-width:.85px}.agent-loop-module__6Fh10a__top{fill:var(--color-bg);stroke:var(--loop-line);stroke-width:.85px}.agent-loop-module__6Fh10a__deck .agent-loop-module__6Fh10a__top{fill:var(--loop-shell)}.agent-loop-module__6Fh10a__deck .agent-loop-module__6Fh10a__wall{fill:var(--loop-recess)}.agent-loop-module__6Fh10a__inset,.agent-loop-module__6Fh10a__detail,.agent-loop-module__6Fh10a__fastener,.agent-loop-module__6Fh10a__pageRule{fill:none;stroke:var(--loop-detail);stroke-width:.65px}.agent-loop-module__6Fh10a__recess{fill:var(--loop-recess);stroke:var(--loop-line);stroke-width:.7px}.agent-loop-module__6Fh10a__vents{fill:none;stroke:var(--loop-detail);stroke-width:.5px}.agent-loop-module__6Fh10a__contacts{fill:none;stroke:var(--loop-line);stroke-width:.8px}.agent-loop-module__6Fh10a__chip{fill:var(--loop-shell);stroke:var(--loop-line);stroke-width:.7px}.agent-loop-module__6Fh10a__screen{fill:var(--loop-recess);stroke:var(--loop-line);stroke-width:.75px;transition:fill .24s ease-out,stroke .24s ease-out}.agent-loop-module__6Fh10a__scene .agent-loop-module__6Fh10a__faceText,.agent-loop-module__6Fh10a__scene .agent-loop-module__6Fh10a__screenText{font:8px var(--font-mono,monospace);text-anchor:start;fill:var(--color-text-secondary)}.agent-loop-module__6Fh10a__neural{fill:var(--loop-detail);stroke:var(--loop-detail);stroke-width:.65px}.agent-loop-module__6Fh10a__neural path{fill:none}.agent-loop-module__6Fh10a__terminal{fill:none;stroke:var(--loop-line);stroke-width:.8px}.agent-loop-module__6Fh10a__led,.agent-loop-module__6Fh10a__pageTab{fill:var(--loop-line)}.agent-loop-module__6Fh10a__cable{fill:none;stroke:var(--loop-line);stroke-width:1px}.agent-loop-module__6Fh10a__device[data-active=true] .agent-loop-module__6Fh10a__screen{fill:color-mix(in srgb,var(--loop-accent)12%,var(--color-bg));stroke:var(--loop-accent)}.agent-loop-module__6Fh10a__device[data-active=true] .agent-loop-module__6Fh10a__screenText,.agent-loop-module__6Fh10a__device[data-active=true] .agent-loop-module__6Fh10a__led,.agent-loop-module__6Fh10a__device[data-active=true] .agent-loop-module__6Fh10a__pageTab{fill:var(--loop-accent)}.agent-loop-module__6Fh10a__device[data-active=true] .agent-loop-module__6Fh10a__neural{fill:var(--loop-accent);stroke:var(--loop-accent)}.agent-loop-module__6Fh10a__device[data-active=true] .agent-loop-module__6Fh10a__chip,.agent-loop-module__6Fh10a__device[data-active=true] .agent-loop-module__6Fh10a__pageRule{stroke:var(--loop-accent)}.agent-loop-module__6Fh10a__wire{color:var(--loop-line);opacity:.18}.agent-loop-module__6Fh10a__wire[data-active=true]{color:var(--loop-accent);opacity:1}.agent-loop-module__6Fh10a__wire path{fill:none;stroke:currentColor;stroke-width:1px}.agent-loop-module__6Fh10a__wire .agent-loop-module__6Fh10a__port{fill:var(--color-bg);stroke:currentColor;stroke-width:.8px}.agent-loop-module__6Fh10a__wire .agent-loop-module__6Fh10a__pulse{stroke-width:2.2px;stroke-dasharray:6 94;animation:.6s linear both agent-loop-module__6Fh10a__loop-flow}.agent-loop-module__6Fh10a__keyPress{animation:.22s cubic-bezier(.2,0,0,1) agent-loop-module__6Fh10a__loop-key}.agent-loop-module__6Fh10a__newPage{animation:.36s cubic-bezier(.2,0,0,1) both agent-loop-module__6Fh10a__loop-page}@keyframes agent-loop-module__6Fh10a__loop-flow{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0;opacity:0}}@keyframes agent-loop-module__6Fh10a__loop-key{40%{transform:translateY(2px)}to{transform:translateY(0)}}@keyframes agent-loop-module__6Fh10a__loop-page{0%{opacity:.5;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.agent-loop-module__6Fh10a__reading{margin-top:16px;position:relative}.agent-loop-module__6Fh10a__explanation{min-height:248px}.agent-loop-module__6Fh10a__stepTitle{font-size:18px;line-height:1.4}.agent-loop-module__6Fh10a__route{color:var(--loop-accent);flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;font-size:14px;font-weight:600;display:flex}.article-content .agent-loop-module__6Fh10a__figure.agent-loop-module__6Fh10a__figure .agent-loop-module__6Fh10a__insight{margin:0;font-size:15px;line-height:1.6}.agent-loop-module__6Fh10a__payload{margin-top:12px;font-size:14px;line-height:1.5}.agent-loop-module__6Fh10a__payloadTitle{color:var(--color-text-secondary)}.agent-loop-module__6Fh10a__payload dl{margin:4px 0 0}.agent-loop-module__6Fh10a__payload dl>div{grid-template-columns:4em minmax(0,1fr);gap:8px;margin-top:4px;display:grid}.agent-loop-module__6Fh10a__payload dt{color:var(--color-text-secondary)}.agent-loop-module__6Fh10a__payload dd{overflow-wrap:anywhere;margin:0}.article-content .agent-loop-module__6Fh10a__figure.agent-loop-module__6Fh10a__figure .agent-loop-module__6Fh10a__payload code{font:14px/1.5 var(--font-mono,monospace);color:inherit;white-space:normal;background:0 0;padding:0}.agent-loop-module__6Fh10a__drawing{min-width:0}.agent-loop-module__6Fh10a__printSteps{display:none}@container agent-loop (min-width:620px){.agent-loop-module__6Fh10a__explanation{box-sizing:border-box;width:48%;min-height:0;padding:8px 0 0 8px;position:absolute;top:0;left:0}.agent-loop-module__6Fh10a__scene .agent-loop-module__6Fh10a__role{font-size:22px}}.agent-loop-module__6Fh10a__controls{align-items:center;gap:8px;margin-top:12px;font-size:14px;display:flex}.agent-loop-module__6Fh10a__controls button{border:1px solid var(--color-border);min-height:44px;color:var(--color-text);background:var(--color-bg);font:inherit;cursor:pointer;border-radius:6px;padding:8px 12px}.agent-loop-module__6Fh10a__controls .agent-loop-module__6Fh10a__next{border-color:var(--loop-accent);color:var(--loop-accent);font-weight:600}.agent-loop-module__6Fh10a__controls button:disabled{opacity:.45;cursor:default}.agent-loop-module__6Fh10a__progress{text-align:center;font-variant-numeric:tabular-nums;min-width:3em;color:var(--color-text-secondary)}.agent-loop-module__6Fh10a__controls button:focus-visible{outline:2px solid var(--loop-accent);outline-offset:3px}.article-content .agent-loop-module__6Fh10a__figure.agent-loop-module__6Fh10a__figure .agent-loop-module__6Fh10a__note{color:var(--color-text-secondary);margin:8px 0 0;font-size:12px}@media (prefers-reduced-motion:reduce){.agent-loop-module__6Fh10a__wire .agent-loop-module__6Fh10a__pulse{animation:none;display:none}.agent-loop-module__6Fh10a__keyPress,.agent-loop-module__6Fh10a__newPage{animation:none}.agent-loop-module__6Fh10a__screen{transition:none}}@media print{.agent-loop-module__6Fh10a__figure{color:#000;background:#fff;container-type:normal}.agent-loop-module__6Fh10a__explanation,.agent-loop-module__6Fh10a__controls{display:none}.agent-loop-module__6Fh10a__printSteps{display:block}.agent-loop-module__6Fh10a__printSteps li{break-inside:avoid;margin:12px 0}.agent-loop-module__6Fh10a__printSteps .agent-loop-module__6Fh10a__stepTitle{font-size:14px}.agent-loop-module__6Fh10a__printSteps .agent-loop-module__6Fh10a__payload,.agent-loop-module__6Fh10a__printSteps .agent-loop-module__6Fh10a__route{font-size:12px}.article-content .agent-loop-module__6Fh10a__figure.agent-loop-module__6Fh10a__figure .agent-loop-module__6Fh10a__printSteps .agent-loop-module__6Fh10a__insight{font-size:12px}.article-content .agent-loop-module__6Fh10a__figure.agent-loop-module__6Fh10a__figure .agent-loop-module__6Fh10a__printSteps .agent-loop-module__6Fh10a__payload code{font-size:12px}.agent-loop-module__6Fh10a__scene .agent-loop-module__6Fh10a__role{font-size:22px}.agent-loop-module__6Fh10a__wire .agent-loop-module__6Fh10a__pulse{display:none}.agent-loop-module__6Fh10a__keyPress,.agent-loop-module__6Fh10a__newPage{animation:none}.agent-loop-module__6Fh10a__scene{--loop-line:#666;--loop-detail:#aaa;--loop-shell:#f2f2f2;--loop-recess:#e6e6e6;--loop-accent:#333}.agent-loop-module__6Fh10a__scene text{fill:#000}.agent-loop-module__6Fh10a__top{fill:#fff}.agent-loop-module__6Fh10a__screen{fill:#eee!important;stroke:#555!important}.agent-loop-module__6Fh10a__wire{opacity:.2}.agent-loop-module__6Fh10a__wire[data-active=true]{opacity:1}}
.PythonFigure-module__hLHf6q__figure{min-width:0;font:15px/1.65 var(--font-sans);margin-block:1rem 2rem;container:python-figure/inline-size}.PythonFigure-module__hLHf6q__code,.PythonFigure-module__hLHf6q__scene{min-width:0}.article-content .PythonFigure-module__hLHf6q__figure.PythonFigure-module__hLHf6q__figure .PythonFigure-module__hLHf6q__notice{text-indent:0;text-align:left;font:13px/1.6 var(--font-sans);color:var(--color-text-secondary);margin:12px 0}.PythonFigure-module__hLHf6q__code .python-demo{min-width:0;margin:0}.PythonFigure-module__hLHf6q__code .python-demo-header{flex-wrap:wrap;gap:12px}.PythonFigure-module__hLHf6q__code .python-demo-label{font:13px/1.5 var(--font-mono,monospace);overflow-wrap:anywhere}.PythonFigure-module__hLHf6q__code .python-demo-actions{flex-wrap:wrap}.PythonFigure-module__hLHf6q__code .python-demo-body{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}:is(.PythonFigure-module__hLHf6q__code .python-demo-source,.PythonFigure-module__hLHf6q__code .python-demo-aside){min-width:0}.PythonFigure-module__hLHf6q__code .python-demo-aside{padding:16px}.PythonFigure-module__hLHf6q__code .python-demo-code{max-height:480px;overflow:auto}.PythonFigure-module__hLHf6q__code .python-demo-code code{white-space:pre}.PythonFigure-module__hLHf6q__code .python-debug-variables dl{max-height:170px;overflow:auto}.PythonFigure-module__hLHf6q__code .python-demo-output pre{max-height:120px;overflow:auto}:is(.PythonFigure-module__hLHf6q__code .python-demo[data-state=idle] .python-demo-output,.PythonFigure-module__hLHf6q__code .python-demo figcaption){display:none}.PythonFigure-module__hLHf6q__scene svg [data-node]>text:first-of-type{font-size:38px}.PythonFigure-module__hLHf6q__scene svg [data-node]>text:last-of-type{display:none}.PythonFigure-module__hLHf6q__scene svg{margin-bottom:12px}.PythonFigure-module__hLHf6q__fixture{font:13px/1.6 var(--font-sans);color:var(--color-text-secondary);margin-top:16px}.PythonFigure-module__hLHf6q__fixture summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.PythonFigure-module__hLHf6q__fixture summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.PythonFigure-module__hLHf6q__fixture pre{max-height:280px;overflow:auto}@container python-figure (min-width:900px){.PythonFigure-module__hLHf6q__code .python-demo-body{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:0}}@media screen{.article-page:has([data-python-figure]):not(:has(.footnotes)) .article-main{max-width:none}.article-page:has([data-python-figure]):not(:has(.footnotes)){--python-prose-width:var(--read-max)}:is(.article-page:has([data-python-figure]):not(:has(.footnotes)) .article-main>:is(.article-top,.article-header,.article-divider,.article-series,.article-footer),.article-page:has([data-python-figure]):not(:has(.footnotes)) .footnote-layout>[data-theme-style]>:not([data-python-figure]):not(:has([data-python-figure]))){max-width:var(--python-prose-width)}.reading-shell[data-reading-focus=true]:has([data-python-figure]):not(:has(.footnotes)){--python-prose-width:760px}:is(.reading-shell[data-reading-focus=true]:has([data-python-figure]):not(:has(.footnotes)) .article-main>:is(.article-top,.article-header,.article-divider,.article-series,.article-footer),.reading-shell[data-reading-focus=true]:has([data-python-figure]):not(:has(.footnotes)) .footnote-layout>[data-theme-style]>:not([data-python-figure]):not(:has([data-python-figure]))){margin-inline:auto}}@media screen and (min-width:1280px){.article-page:has([data-python-figure]):not(:has(.footnotes)){grid-template-columns:180px minmax(0,1fr)}}@media print{.PythonFigure-module__hLHf6q__code .python-demo-body{display:block}.PythonFigure-module__hLHf6q__fixture,.PythonFigure-module__hLHf6q__notice{display:none}.PythonFigure-module__hLHf6q__code .python-demo-actions{display:none}.PythonFigure-module__hLHf6q__code .python-demo-code{max-height:none;overflow:visible}.PythonFigure-module__hLHf6q__scene{break-inside:avoid}}
.function-lab-module__NG5Eqa__lab{border-block:1px solid var(--color-border);--lab-accent:var(--color-accent,#567958);font:15px/1.6 var(--font-sans);color:var(--color-text);margin:1.5rem 0 2rem;padding:1rem 0;container:function-lab/inline-size}.article-content .function-lab-module__NG5Eqa__lab.function-lab-module__NG5Eqa__lab p{text-indent:0;text-align:left;font:15px/1.65 var(--font-sans);margin:8px 0}.function-lab-module__NG5Eqa__toolbar{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.function-lab-module__NG5Eqa__cases,.function-lab-module__NG5Eqa__controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.function-lab-module__NG5Eqa__toolbar button{border:1px solid var(--color-border);background:var(--color-bg);min-height:44px;color:var(--color-text);font:14px/1.5 var(--font-sans);cursor:pointer;border-radius:5px;padding:7px 10px}.function-lab-module__NG5Eqa__toolbar button[aria-pressed=true],.function-lab-module__NG5Eqa__toolbar .function-lab-module__NG5Eqa__next{border-color:var(--lab-accent);color:var(--lab-accent)}.function-lab-module__NG5Eqa__toolbar button:disabled{opacity:.4;cursor:default}.function-lab-module__NG5Eqa__toolbar button:focus-visible{outline:2px solid var(--lab-accent);outline-offset:3px}.function-lab-module__NG5Eqa__reading{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.function-lab-module__NG5Eqa__source,.function-lab-module__NG5Eqa__drawing{min-width:0}.function-lab-module__NG5Eqa__sourceLabel{border-bottom:1px solid var(--color-border);font:12px/1.5 var(--font-mono,monospace);color:var(--color-text-secondary);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 10px;display:flex}.article-content .function-lab-module__NG5Eqa__lab.function-lab-module__NG5Eqa__lab .function-lab-module__NG5Eqa__sourcePre{background:var(--color-bg-secondary);color:var(--color-text);font:13px/1.8 var(--font-mono,monospace);scrollbar-gutter:stable;tab-size:4;border:0;border-radius:0;max-height:320px;margin:0;padding:10px 0;overflow:auto}.article-content .function-lab-module__NG5Eqa__lab.function-lab-module__NG5Eqa__lab .function-lab-module__NG5Eqa__sourcePre code{font:inherit;color:inherit;white-space:pre;background:0 0;padding:0;display:block}.function-lab-module__NG5Eqa__sourcePre:focus-visible{outline:2px solid var(--lab-accent);outline-offset:2px}.function-lab-module__NG5Eqa__diagram{width:100%;max-width:880px;color:var(--color-text);--lab-line:color-mix(in srgb,var(--color-text)45%,var(--color-bg));--lab-detail:color-mix(in srgb,var(--color-text)24%,var(--color-bg));margin:0 auto;display:block}.function-lab-module__NG5Eqa__diagram path,.function-lab-module__NG5Eqa__diagram rect,.function-lab-module__NG5Eqa__diagram circle{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.function-lab-module__NG5Eqa__wall{fill:color-mix(in srgb,var(--color-bg-secondary)70%,var(--color-bg));stroke:var(--lab-line);stroke-width:.85px}.function-lab-module__NG5Eqa__top{fill:var(--color-bg);stroke:var(--lab-line);stroke-width:.85px}.function-lab-module__NG5Eqa__detail{fill:none;stroke:var(--lab-detail);stroke-width:.7px}.function-lab-module__NG5Eqa__paper{fill:var(--color-bg);stroke:var(--lab-line);stroke-width:.7px}.function-lab-module__NG5Eqa__recess{fill:color-mix(in srgb,var(--color-text)7%,var(--color-bg));stroke:var(--lab-line);stroke-width:.7px}.function-lab-module__NG5Eqa__led{fill:var(--lab-line)}.function-lab-module__NG5Eqa__faceText{fill:var(--color-text-secondary);font:8px var(--font-mono,monospace);text-anchor:start}.function-lab-module__NG5Eqa__object[data-active=true] .function-lab-module__NG5Eqa__paper,.function-lab-module__NG5Eqa__object[data-active=true] .function-lab-module__NG5Eqa__recess{stroke:var(--lab-accent)}.function-lab-module__NG5Eqa__object[data-active=true] .function-lab-module__NG5Eqa__led{fill:var(--lab-accent)}.function-lab-module__NG5Eqa__mark{fill:none;stroke:var(--lab-line);stroke-width:1px}.function-lab-module__NG5Eqa__node[data-active=true] .function-lab-module__NG5Eqa__top{stroke:var(--lab-accent);fill:color-mix(in srgb,var(--lab-accent)9%,var(--color-bg))}.function-lab-module__NG5Eqa__node[data-active=true] .function-lab-module__NG5Eqa__mark{stroke:var(--lab-accent)}.function-lab-module__NG5Eqa__node .function-lab-module__NG5Eqa__nodeTitle,.function-lab-module__NG5Eqa__node .function-lab-module__NG5Eqa__nodeSubtitle{text-anchor:middle;fill:var(--color-text);font-family:var(--font-sans)}.function-lab-module__NG5Eqa__node .function-lab-module__NG5Eqa__nodeTitle{font-size:24px;font-weight:500}.function-lab-module__NG5Eqa__node .function-lab-module__NG5Eqa__nodeSubtitle{fill:var(--color-text-secondary);font-size:18px}.function-lab-module__NG5Eqa__node[data-active=true] .function-lab-module__NG5Eqa__nodeTitle{fill:var(--lab-accent)}.function-lab-module__NG5Eqa__hit{fill:#0000;stroke:none}.function-lab-module__NG5Eqa__node[role=button]{cursor:pointer}.function-lab-module__NG5Eqa__node:focus-visible{outline:none}.function-lab-module__NG5Eqa__node:focus-visible .function-lab-module__NG5Eqa__hit{stroke:var(--lab-accent);stroke-width:1.5px}.function-lab-module__NG5Eqa__arrowQuiet{stroke:var(--lab-line)}.function-lab-module__NG5Eqa__arrowActive{stroke:var(--lab-accent)}.function-lab-module__NG5Eqa__edge{color:var(--lab-line);opacity:.28}.function-lab-module__NG5Eqa__edge[data-active=true]{color:var(--lab-accent);opacity:1}.function-lab-module__NG5Eqa__edge path{fill:none;stroke:currentColor;stroke-width:1px}.function-lab-module__NG5Eqa__edge .function-lab-module__NG5Eqa__port{fill:var(--color-bg);stroke:currentColor;stroke-width:.8px}.function-lab-module__NG5Eqa__edge .function-lab-module__NG5Eqa__pulse{stroke-width:2px;stroke-dasharray:6 94;animation:.55s linear both function-lab-module__NG5Eqa__function-flow}@keyframes function-lab-module__NG5Eqa__function-flow{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0;opacity:0}}.function-lab-module__NG5Eqa__stepTitle{font-size:17px;line-height:1.5;display:block}.function-lab-module__NG5Eqa__facts{margin:12px 0 0;font-size:13px}.function-lab-module__NG5Eqa__facts>div{grid-template-columns:5em minmax(0,1fr);gap:8px;margin-top:6px;display:grid}.function-lab-module__NG5Eqa__facts dt{color:var(--color-text-secondary)}.function-lab-module__NG5Eqa__facts dd{overflow-wrap:anywhere;margin:0}.article-content .function-lab-module__NG5Eqa__lab.function-lab-module__NG5Eqa__lab .function-lab-module__NG5Eqa__note{color:var(--color-text-secondary);margin-top:12px;font-size:12px}.function-lab-module__NG5Eqa__fallback{display:none}@container function-lab (min-width:640px){.function-lab-module__NG5Eqa__reading{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@container function-lab (max-width:639px){.function-lab-module__NG5Eqa__node .function-lab-module__NG5Eqa__nodeTitle{font-size:34px}.function-lab-module__NG5Eqa__node .function-lab-module__NG5Eqa__nodeSubtitle{display:none}}@media (prefers-reduced-motion:reduce){.function-lab-module__NG5Eqa__edge .function-lab-module__NG5Eqa__pulse{animation:none;display:none}}@media print{.function-lab-module__NG5Eqa__lab{color:#000;--lab-accent:#333;container-type:normal}.function-lab-module__NG5Eqa__toolbar,.function-lab-module__NG5Eqa__explanation,.function-lab-module__NG5Eqa__note{display:none}.function-lab-module__NG5Eqa__reading{display:block}.function-lab-module__NG5Eqa__diagram{--lab-line:#777;--lab-detail:#aaa;max-width:300px}.function-lab-module__NG5Eqa__diagram text{fill:#000!important}.function-lab-module__NG5Eqa__wall{fill:#eee}.function-lab-module__NG5Eqa__top{fill:#fff!important}.function-lab-module__NG5Eqa__pulse{display:none}.article-content .function-lab-module__NG5Eqa__lab.function-lab-module__NG5Eqa__lab .function-lab-module__NG5Eqa__sourcePre{white-space:pre-wrap;background:#fafafa;max-height:none;font-size:10px;overflow:visible}.article-content .function-lab-module__NG5Eqa__lab.function-lab-module__NG5Eqa__lab .function-lab-module__NG5Eqa__sourcePre code{white-space:pre-wrap}.function-lab-module__NG5Eqa__fallback{display:block}.function-lab-module__NG5Eqa__fallback li{break-inside:avoid}}
.explainers-module__7y3RaG__figure{border:1px solid color-mix(in srgb,currentColor 20%,transparent);background:color-mix(in srgb,currentColor 3%,transparent);color:inherit;border-radius:12px;margin:2rem 0;padding:clamp(16px,3vw,28px);font-size:1rem;line-height:1.7}.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__title{color:inherit;text-align:left;margin:0 0 8px;font-size:1.2em;font-weight:650}.explainers-module__7y3RaG__figure p{margin:8px 0 16px}.explainers-module__7y3RaG__intro,.explainers-module__7y3RaG__note{opacity:.8}.explainers-module__7y3RaG__controls{flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0;display:flex}.explainers-module__7y3RaG__controls button{font:inherit;color:inherit;border:1px solid color-mix(in srgb,currentColor 25%,transparent);cursor:pointer;background:0 0;border-radius:6px;min-height:44px;padding:8px 12px}.explainers-module__7y3RaG__controls button[aria-pressed=true]{background:color-mix(in srgb,currentColor 12%,transparent);border-color:currentColor;font-weight:600}.explainers-module__7y3RaG__controls button:disabled{opacity:.4;cursor:default}.explainers-module__7y3RaG__controls button:focus-visible,.explainers-module__7y3RaG__slider:focus-visible{outline-offset:4px;outline:2px solid}.explainers-module__7y3RaG__controls button:active:not(:disabled){background:color-mix(in srgb,currentColor 18%,transparent)}.explainers-module__7y3RaG__reason{min-height:3.4em}.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0;padding:0;list-style:none;display:grid}.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__steps li{border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:12px;display:flex}.explainers-module__7y3RaG__steps small{opacity:.75;width:100%;font-size:.8em}.explainers-module__7y3RaG__steps li[data-status=skip]{opacity:.6;border-style:dashed}.explainers-module__7y3RaG__steps li[data-status=current]{background:color-mix(in srgb,currentColor 10%,transparent);border-color:currentColor}.explainers-module__7y3RaG__number{font-variant-numeric:tabular-nums;opacity:.7;font-size:.85em}.explainers-module__7y3RaG__feedback{background:color-mix(in srgb,currentColor 5%,transparent);border-left:3px solid;min-height:6em;padding:14px 16px}.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__feedback p{margin:6px 0 0}.explainers-module__7y3RaG__counter{font-variant-numeric:tabular-nums}.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__note{margin-bottom:0;font-size:.85em}.explainers-module__7y3RaG__sliderLabel{justify-content:space-between;gap:12px;margin-top:20px;display:flex}.explainers-module__7y3RaG__slider{accent-color:#61857c;cursor:pointer;width:100%;min-height:44px}.explainers-module__7y3RaG__legend{flex-wrap:wrap;align-items:center;gap:8px;font-size:.85em;display:flex}.explainers-module__7y3RaG__waitKey,.explainers-module__7y3RaG__transferKey{width:12px;height:12px;display:inline-block}.explainers-module__7y3RaG__waitKey,.explainers-module__7y3RaG__wait{background:#af8140}.explainers-module__7y3RaG__transferKey,.explainers-module__7y3RaG__transfer{background:#61857c}.explainers-module__7y3RaG__comparison{margin:20px 0}.explainers-module__7y3RaG__linkHeading{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.explainers-module__7y3RaG__linkHeading span{font-size:.85em}.explainers-module__7y3RaG__track{background:color-mix(in srgb,currentColor 7%,transparent);border-radius:4px;height:24px;margin-top:8px;display:flex;overflow:hidden}.explainers-module__7y3RaG__track span{flex-shrink:0}.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__equation{font-variant-numeric:tabular-nums;margin:6px 0 20px;font-size:.85em}@media (max-width:540px){.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.explainers-module__7y3RaG__controls,.explainers-module__7y3RaG__slider{display:none}.explainers-module__7y3RaG__figure{break-inside:avoid;color:#000;background:#fff}.explainers-module__7y3RaG__track{print-color-adjust:exact}}.article-content .explainers-module__7y3RaG__figure.explainers-module__7y3RaG__figure p{text-indent:0;text-align:left}.article-content .explainers-module__7y3RaG__figure.explainers-module__7y3RaG__figure .explainers-module__7y3RaG__title{text-align:left;font-size:1.2em;font-style:normal;font-weight:650}.explainers-module__7y3RaG__topology{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0;font-size:.85em;display:grid}.explainers-module__7y3RaG__topology span{border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:6px;padding:10px}.explainers-module__7y3RaG__tablePair{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0;font-size:.9em;display:grid}.explainers-module__7y3RaG__tableEntry{border-top:1px solid color-mix(in srgb,currentColor 25%,transparent);overflow-wrap:anywhere;padding-top:10px}.explainers-module__7y3RaG__addressBlocks{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:20px 0 8px;display:grid}.explainers-module__7y3RaG__addressBlocks>div{border:1px dashed color-mix(in srgb,currentColor 30%,transparent);text-align:center;flex-direction:column;padding:10px 6px;display:flex}.explainers-module__7y3RaG__addressBlocks>div[data-occupied=true]{background:color-mix(in srgb,currentColor 10%,transparent);border-style:solid}.explainers-module__7y3RaG__addressBlocks small{white-space:nowrap;font-size:.75em}.explainers-module__7y3RaG__binary{font-variant-numeric:tabular-nums;margin-top:10px;font-family:monospace}.explainers-module__7y3RaG__binary span{font-family:inherit;font-size:.85em}.explainers-module__7y3RaG__binaryResult{border-top:1px solid color-mix(in srgb,currentColor 25%,transparent);margin-top:4px;padding-top:4px}@media (max-width:540px){.explainers-module__7y3RaG__tablePair{grid-template-columns:1fr;gap:12px}.explainers-module__7y3RaG__addressBlocks{grid-template-columns:repeat(2,minmax(0,1fr))}}.explainers-module__7y3RaG__mapping{border:1px solid color-mix(in srgb,currentColor 25%,transparent);overflow-wrap:anywhere;border-radius:6px;padding:12px}.explainers-module__7y3RaG__mapping[data-selected=true],.explainers-module__7y3RaG__topology span[data-blocked=true]{background:color-mix(in srgb,currentColor 10%,transparent);border-color:currentColor}.explainers-module__7y3RaG__socketList{gap:10px;margin:16px 0;display:grid}.explainers-module__7y3RaG__byteSegments{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:20px 0;font-size:.8em;display:grid}.explainers-module__7y3RaG__byteSegments>div{border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:6px;flex-direction:column;gap:6px;padding:10px 6px;display:flex}.explainers-module__7y3RaG__byteSegments small{white-space:nowrap;font-size:.85em}.explainers-module__7y3RaG__byteSegments [data-byte-state=缺口]{border-style:dashed;border-width:2px}.explainers-module__7y3RaG__byteSegments [data-byte-state=乱序暂存]{background:color-mix(in srgb,currentColor 6%,transparent)}.explainers-module__7y3RaG__byteSegments [data-byte-state=连续可交付]{background:color-mix(in srgb,currentColor 14%,transparent)}@media (max-width:540px){.explainers-module__7y3RaG__byteSegments{grid-template-columns:repeat(2,minmax(0,1fr))}}.explainers-module__7y3RaG__hexBytes{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-family:monospace}
.books-module__Y_KSaa__shelf{padding:calc(var(--spacing)*2)0 5rem}.books-module__Y_KSaa__pageHead{max-width:46ch}.books-module__Y_KSaa__kicker{letter-spacing:.2em;color:var(--color-accent);margin-bottom:.7rem;font-size:.78rem;display:block}.books-module__Y_KSaa__pageTitle{font-family:var(--studio-display);font-size:clamp(1.8rem,1.2rem + 2.4vw,2.6rem);font-weight:500;line-height:1.3}.books-module__Y_KSaa__pageLede{color:var(--color-text-secondary);margin-top:.9rem;line-height:1.85}.books-module__Y_KSaa__grid{grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:.45rem 1.75rem;margin-top:3.25rem;display:grid}.books-module__Y_KSaa__card{grid-template-rows:subgrid;grid-row:span 5;min-width:0;display:grid}.books-module__Y_KSaa__card .books-module__Y_KSaa__coverLink{margin-bottom:.55rem}.books-module__Y_KSaa__card .books-module__Y_KSaa__progress{margin-bottom:2rem}.books-module__Y_KSaa__coverLink{display:block}.books-module__Y_KSaa__cover{aspect-ratio:2/3;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-bg-secondary);position:relative;overflow:hidden}.books-module__Y_KSaa__coverImg{object-fit:cover;width:100%;height:100%;display:block}[data-theme=dark] .books-module__Y_KSaa__coverImg{filter:brightness(.8)contrast(.98)}.books-module__Y_KSaa__coverFallback{width:100%;height:100%;font-family:var(--studio-display);color:var(--color-accent);background:var(--color-bg-secondary);justify-content:center;align-items:center;font-size:3.4rem;display:flex}.books-module__Y_KSaa__cardBody{display:contents}.books-module__Y_KSaa__cardTitle{font-family:var(--studio-display);font-size:1.12rem;font-weight:500;line-height:1.5}.books-module__Y_KSaa__cardTitle a{color:var(--color-text)}.books-module__Y_KSaa__cardTitle a:hover{color:var(--color-accent)}.books-module__Y_KSaa__cardMeta{letter-spacing:.02em;color:var(--color-text-secondary);font-size:.78rem}.books-module__Y_KSaa__cardDesc{color:var(--color-text-secondary);font-size:.86rem;line-height:1.7}.books-module__Y_KSaa__progress{color:var(--color-text-secondary);align-items:center;gap:.6rem;margin-top:.15rem;font-size:.76rem;display:flex}.books-module__Y_KSaa__progressTrack{background:var(--color-border);border-radius:2px;flex:1;min-width:3rem;height:3px;overflow:hidden}.books-module__Y_KSaa__progressValue{background:var(--color-accent);height:100%;display:block}.books-module__Y_KSaa__progressLabel{white-space:nowrap}.books-module__Y_KSaa__progressDone{color:var(--color-accent)}.books-module__Y_KSaa__shelfEmpty{color:var(--color-text-secondary);margin-top:3rem}.books-module__Y_KSaa__book{padding:2.5rem 0 5rem}.books-module__Y_KSaa__bookBack{margin-bottom:1.75rem;font-size:.82rem;display:inline-block}.books-module__Y_KSaa__bookHead{grid-template-columns:minmax(0,210px) minmax(0,1fr);align-items:start;gap:2.75rem;display:grid}.books-module__Y_KSaa__bookCover{aspect-ratio:2/3;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-bg-secondary);position:relative;overflow:hidden}.books-module__Y_KSaa__bookTitle{font-family:var(--studio-display);font-size:clamp(1.6rem,1.1rem + 2vw,2.3rem);font-weight:500;line-height:1.35}.books-module__Y_KSaa__bookMeta{color:var(--color-text-secondary);flex-wrap:wrap;gap:.5rem;margin-top:.85rem;font-size:.8rem;display:flex}.books-module__Y_KSaa__bookMeta>*+:before{content:"·";margin-right:.5rem}.books-module__Y_KSaa__bookDesc{max-width:var(--read-max);color:var(--color-text-secondary);margin-top:1.1rem;line-height:1.85}.books-module__Y_KSaa__bookIntro{max-width:var(--read-max);flex-direction:column;gap:.95rem;margin-top:1.35rem;line-height:1.9;display:flex}.books-module__Y_KSaa__bookIntro strong{color:var(--color-text);font-weight:600}.books-module__Y_KSaa__bookActions{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.books-module__Y_KSaa__bookPrimary,.books-module__Y_KSaa__bookSecondary{border-radius:var(--radius);align-items:center;min-height:44px;padding:0 1.15rem;font-size:.86rem;line-height:1.2;display:inline-flex}.books-module__Y_KSaa__bookPrimary{background:var(--color-accent);color:var(--studio-on-green)}.books-module__Y_KSaa__bookPrimary:hover{background:var(--color-accent-hover);color:var(--studio-on-green)}.books-module__Y_KSaa__bookSecondary{border:1px solid var(--color-border);color:var(--color-text)}.books-module__Y_KSaa__bookSecondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.books-module__Y_KSaa__bookProgress{max-width:22rem;color:var(--color-text-secondary);align-items:center;gap:.7rem;margin-top:1.5rem;font-size:.78rem;display:flex}.books-module__Y_KSaa__catalog{margin-top:4rem}.books-module__Y_KSaa__catalogHeading{font-family:var(--studio-display);border-bottom:1px solid var(--color-border);padding-bottom:.85rem;font-size:1.15rem;font-weight:500}.books-module__Y_KSaa__part+.books-module__Y_KSaa__part{margin-top:2.75rem}.books-module__Y_KSaa__partTitle{font-family:var(--studio-display);color:var(--color-accent);letter-spacing:.04em;margin:2.25rem 0 .35rem;font-size:.98rem;font-weight:500}.books-module__Y_KSaa__partOrder{letter-spacing:.16em;opacity:.75;margin-right:.55rem;font-size:.76rem}.books-module__Y_KSaa__chapters{border-top:1px solid var(--color-border);list-style:none}.books-module__Y_KSaa__chapter{border-bottom:1px solid var(--color-border)}.books-module__Y_KSaa__chapterLink{color:var(--color-text);grid-template-columns:2.4rem minmax(0,1fr) auto 3.8rem;align-items:baseline;gap:1.15rem;padding:1.15rem .3rem;display:grid}.books-module__Y_KSaa__chapterLink:hover .books-module__Y_KSaa__chapterTitle{color:var(--color-accent)}.books-module__Y_KSaa__chapterOrder{font-family:var(--font-mono);color:var(--color-text-secondary);font-size:.82rem}.books-module__Y_KSaa__chapterText{flex-direction:column;gap:.3rem;min-width:0;display:flex}.books-module__Y_KSaa__chapterTitle{max-width:var(--read-max);font-size:.98rem;line-height:1.55;transition:color .2s}.books-module__Y_KSaa__chapterSummary{max-width:var(--read-max-compact);color:var(--color-text-secondary);font-size:.82rem;line-height:1.7}.books-module__Y_KSaa__chapterTime{color:var(--color-text-secondary);white-space:nowrap;font-size:.76rem}.books-module__Y_KSaa__chapterState{letter-spacing:.08em;color:var(--color-accent);white-space:nowrap;font-size:.72rem}@media (max-width:780px){.books-module__Y_KSaa__bookHead{grid-template-columns:minmax(0,150px) minmax(0,1fr);gap:1.75rem}}@media (max-width:620px){.books-module__Y_KSaa__shelf{padding:calc(var(--spacing)*2)0 4rem}.books-module__Y_KSaa__grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:2rem 1.1rem}.books-module__Y_KSaa__book{padding:1.75rem 0 4rem}.books-module__Y_KSaa__bookHead{grid-template-columns:minmax(0,1fr);gap:1.6rem}.books-module__Y_KSaa__bookCover{max-width:170px}.books-module__Y_KSaa__chapterLink{grid-template-columns:2rem minmax(0,1fr);gap:.35rem .9rem;padding:1rem .3rem}.books-module__Y_KSaa__chapterTime,.books-module__Y_KSaa__chapterState{grid-column:2}.books-module__Y_KSaa__chapterTime{grid-row:2}}
.ornaments-module__IKf5ha__stage{width:min(100%,920px);height:clamp(200px,24vw,250px);margin:0 auto;position:relative}.ornaments-module__IKf5ha__canvas{position:absolute;inset:0;overflow:hidden}.ornaments-module__IKf5ha__canvas canvas{width:100%;height:100%;display:block}.ornaments-module__IKf5ha__preview{pointer-events:none;justify-content:space-around;padding:0 4%;display:flex;position:absolute;inset:0}.ornaments-module__IKf5ha__stage[data-ornaments-status=ready] .ornaments-module__IKf5ha__preview{display:none}.ornaments-module__IKf5ha__hanging{width:10%;height:100%;color:var(--ornament-color);position:relative}.ornaments-module__IKf5ha__thread{width:1px;height:var(--thread-length);background:var(--studio-muted);opacity:.5;position:absolute;top:0;left:50%}.ornaments-module__IKf5ha__candy,.ornaments-module__IKf5ha__gift,.ornaments-module__IKf5ha__lollipop{top:var(--thread-length);background:currentColor;position:absolute;left:50%;transform:translate(-50%)}.ornaments-module__IKf5ha__candy{background:linear-gradient(110deg,var(--ornament-color)0 28%,#fff8ed 28% 38%,var(--ornament-color)38% 58%,#fff8ed 58% 68%,var(--ornament-color)68% 100%);border-radius:50%;width:54px;height:30px;transform:translate(-50%)rotate(-12deg)}.ornaments-module__IKf5ha__candy:before,.ornaments-module__IKf5ha__candy:after{content:"";clip-path:polygon(0 12%,25% 0,100% 34%,100% 66%,25% 100%,0 88%);background:currentColor;border-radius:45% 15% 15% 45%;width:18px;height:24px;position:absolute;top:2px}.ornaments-module__IKf5ha__candy:before{left:-14px}.ornaments-module__IKf5ha__candy:after{right:-14px;transform:rotate(180deg)}.ornaments-module__IKf5ha__candy i,.ornaments-module__IKf5ha__candy b{display:none}.ornaments-module__IKf5ha__gift{border-radius:4px;width:48px;height:45px;transform:translate(-50%)rotate(8deg)}.ornaments-module__IKf5ha__gift:before{content:"";background:currentColor;border-radius:2px;width:54px;height:9px;position:absolute;top:-4px;left:-3px}.ornaments-module__IKf5ha__gift i{background:#fff8ed;position:absolute;inset:-4px 20px 0}.ornaments-module__IKf5ha__gift b{background:#fff8ed;position:absolute;inset:19px 0 20px}.ornaments-module__IKf5ha__gift:after{content:"";border:4px solid #fff8ed;border-radius:50%;width:24px;height:12px;position:absolute;top:-15px;left:12px}.ornaments-module__IKf5ha__lollipop{background:repeating-radial-gradient(circle at center,#fff8ed 0 3px,var(--ornament-color)4px 9px);border-radius:50%;width:46px;height:46px;transform:translate(-50%)rotate(-10deg)}.ornaments-module__IKf5ha__lollipop:after{content:"";background:#d9bc83;width:4px;height:38px;position:absolute;top:44px;left:21px}@media (max-width:600px){.ornaments-module__IKf5ha__stage{height:160px}.ornaments-module__IKf5ha__hanging:first-child,.ornaments-module__IKf5ha__hanging:last-child{display:none}.ornaments-module__IKf5ha__hanging{width:17%}}
