.v2 .jp-cap{font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-mute);text-align:center;margin-top:10px;font-size:12.5px}.v2 .jp-p{margin-bottom:1.35em}.v2 .jp-h2{font-family:var(--font-display);letter-spacing:-.018em;color:var(--ink);margin:1.6em 0 .55em;font-size:clamp(25px,2.6vw,34px);line-height:1.08}.v2 .jp-h3{font-family:var(--font-display);color:var(--ink);margin:1.4em 0 .5em;font-size:clamp(20px,2vw,25px);line-height:1.12}.v2 .jp-bq{border-left:3px solid var(--line-strong);color:var(--ink);margin:1.5em 0;padding-left:1.1em;font-style:italic}.v2 .jp-ul,.v2 .jp-ol{margin:0 0 1.35em 1.2em;padding:0}.v2 .jp-li{margin-bottom:.5em;padding-left:.3em}.v2 .jp-fig{margin:clamp(28px,3.4vw,44px) 0}.v2 .jp-fig-img{border-radius:5px;width:100%;height:auto}.v2 .jp-video{border-radius:5px}.v2 .jp-pull{font-family:var(--font-display);border-left:4px solid var(--accent);margin:clamp(32px,4vw,56px) 0;padding-left:clamp(16px,2vw,26px);font-weight:700}.v2 .jp-pull-q{letter-spacing:-.015em;color:var(--ink);text-wrap:balance;font-size:clamp(23px,2.7vw,34px);line-height:1.18}.v2 .jp-pull-cite{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-mute);margin-top:.7em;font-size:13px;font-style:normal;font-weight:400;display:block}.v2 .jp-code{border:1px solid var(--line-strong);background:var(--paper-2);border-radius:6px;margin:clamp(28px,3.4vw,44px) 0;position:relative;overflow:hidden}.v2 .jp-code-name{font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-soft);border-bottom:1px solid var(--line);background:color-mix(in oklab, var(--ink) 4%, transparent);padding:9px 14px;font-size:12.5px}.v2 .jp-code-lang{color:var(--ink-mute);opacity:.7;pointer-events:none;font-size:10px;position:absolute;top:8px;right:12px}.v2 .jp-pre{font-family:var(--font-mono);color:var(--ink);tab-size:2;margin:0;padding:clamp(14px,1.6vw,20px);font-size:14px;line-height:1.62;overflow-x:auto}.v2 .jp-pre code{white-space:pre;font-family:inherit}.v2 .jp-callout{border-left:3px solid var(--line-strong);background:color-mix(in oklab, var(--ink) 4%, transparent);border-radius:0 5px 5px 0;gap:12px;margin:clamp(24px,3vw,40px) 0;padding:clamp(14px,1.6vw,18px) clamp(16px,1.8vw,20px);display:flex}.v2 .jp-callout-glyph{opacity:.85;flex:none;font-size:17px;line-height:1.5}.v2 .jp-callout-text{min-width:0}.v2 .jp-callout-title{font-family:var(--font-display);color:var(--ink);margin:0 0 .25em;font-weight:700}.v2 .jp-callout-body{color:var(--ink-soft);margin:0}.v2 .jp-callout--note{border-left-color:var(--ink-mute);background:color-mix(in oklab, var(--ink) 5%, transparent)}.v2 .jp-callout--tip{border-left-color:var(--accent);background:color-mix(in oklab, var(--accent) 8%, transparent)}.v2 .jp-callout--tip .jp-callout-glyph{color:var(--accent)}.v2 .jp-callout--warn{background:#b5762a1f;background:lab(55.4908% 20.7963 49.9984/.12);border-left-color:#b5762a}.v2 .jp-callout--warn .jp-callout-glyph{color:#8a5816}.v2 .jp-anchor{color:var(--accent);opacity:0;transition:opacity .2s var(--e-soft);margin-left:.3em;font-weight:400}.v2 .jp-h2:hover .jp-anchor,.v2 .jp-h3:hover .jp-anchor,.v2 .jp-anchor:focus-visible{opacity:.6}.v2 .jp-anchor:hover{opacity:1}@media (hover:none),(pointer:coarse){.v2 .jp-anchor{opacity:.6}}.v2 .jp-fn-ref{margin-left:1px;font-size:.7em;line-height:0}.v2 .jp-fn-ref a{color:var(--accent);padding:0 1px}.v2 .jp-footnotes{border-top:1px solid var(--line);color:var(--ink-soft);counter-reset:jp-fn;margin:clamp(40px,5vw,64px) 0 0;padding-top:clamp(20px,2.6vw,28px);font-size:15px;line-height:1.6}.v2 .jp-footnotes li{margin-bottom:.6em;padding-left:.3em}.v2 .jp-footnotes li::marker{color:var(--ink-mute);font-family:var(--font-mono);font-size:.85em}.v2 .jp-fn-back{color:var(--accent);margin-left:.25em;text-decoration:none}.v2 .jp-fn-back:hover{text-decoration:underline}.v2 .jp-toc{border:1px solid var(--line);background:color-mix(in oklab, var(--ink) 3%, transparent);border-radius:6px;margin:clamp(24px,3vw,36px) 0 clamp(28px,3.4vw,44px);padding:clamp(16px,1.8vw,22px) clamp(18px,2vw,24px)}.v2 .jp-toc-h{color:var(--ink-mute);margin:0 0 12px}.v2 .jp-toc ul{margin:0;padding:0;list-style:none}.v2 .jp-toc li{margin-bottom:7px}.v2 .jp-toc li:last-child{margin-bottom:0}.v2 .jp-toc a{color:var(--ink-soft);font-size:15px;line-height:1.4;transition:color .2s}.v2 .jp-toc a:hover{color:var(--accent)}.v2 .jp-toc-sub{padding-left:1.1em}.v2 .jp-toc-sub a{color:var(--ink-mute);font-size:14px}
