.previous-next[data-astro-cid-26ueqahj]{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1rem;margin-top:4rem;padding-top:1.5rem;display:grid}.previous-next[data-astro-cid-26ueqahj]>div[data-astro-cid-26ueqahj]:last-child{text-align:right}a[data-astro-cid-26ueqahj]{color:var(--ink);flex-direction:column;text-decoration:none;display:inline-flex}a[data-astro-cid-26ueqahj]:hover strong[data-astro-cid-26ueqahj]{color:var(--teal)}small[data-astro-cid-26ueqahj]{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3rem;font-size:.67rem;font-weight:800}strong[data-astro-cid-26ueqahj]{font-family:var(--font-serif);font-size:1.05rem;font-weight:600}@media (width<=560px){.previous-next[data-astro-cid-26ueqahj]{grid-template-columns:1fr}.previous-next[data-astro-cid-26ueqahj]>div[data-astro-cid-26ueqahj]:last-child{text-align:left}}.toc[data-astro-cid-p33bl5ka]{font-size:.76rem}strong[data-astro-cid-p33bl5ka]{color:var(--ink);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;font-size:.68rem;display:block}ol[data-astro-cid-p33bl5ka]{margin:0;padding:0;list-style:none}li[data-astro-cid-p33bl5ka]+li[data-astro-cid-p33bl5ka]{margin-top:.55rem}.depth-3[data-astro-cid-p33bl5ka]{padding-left:.8rem}a[data-astro-cid-p33bl5ka]{color:var(--muted);border-radius:.25rem;padding:.25rem .45rem;line-height:1.4;text-decoration:none;transition:color .18s,background-color .18s;display:block}a[data-astro-cid-p33bl5ka]:hover{color:var(--toc-accent)}a[data-astro-cid-p33bl5ka].active{color:var(--toc-accent);font-weight:750}.prose{color:var(--ink-soft);font-family:var(--font-sans);font-size:1.08rem;line-height:1.86}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose h2,.prose h3,.prose h4{color:var(--ink);font-family:var(--font-sans);scroll-margin-top:6rem;line-height:1.22}.prose h2{letter-spacing:-.025em;margin:3.2rem 0 1.1rem;font-size:1.75rem}.prose h3{margin:2.5rem 0 .8rem;font-size:1.32rem}.prose p,.prose ul,.prose ol,.prose blockquote,.prose table,.prose pre{margin-block:1.35rem}.prose p{white-space:pre-line}.prose a{color:var(--teal);text-underline-offset:.2em;text-decoration-thickness:.08em}.prose strong{color:var(--ink)}.prose mark{color:inherit;background-color:#0000;background-image:linear-gradient(176deg, transparent 20%, color-mix(in srgb, var(--highlight) 72%, transparent) 21%, var(--highlight) 34%, var(--highlight) 82%, color-mix(in srgb, var(--highlight) 78%, transparent) 86%, transparent 88%);box-decoration-break:clone;padding-inline:.16em}.prose .spoiler{color:#0000;background:var(--ink);cursor:pointer;box-decoration-break:clone;user-select:none;border-radius:.2em;padding-inline:.18em;transition:color .16s,background-color .16s}.prose .spoiler:hover,.prose .spoiler:focus-visible{background:var(--line-strong)}.prose .spoiler.revealed{color:var(--ink);background:var(--surface-2);user-select:text}.prose ul,.prose ol{padding-left:1.35rem}.prose li+li{margin-top:.45rem}.prose blockquote{color:var(--ink-soft);border:1px solid color-mix(in srgb, var(--coral) 34%, var(--line));border-left:3px solid var(--coral);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--coral) 7%, var(--surface));font-family:var(--font-sans);margin-inline:0;padding:1rem 1.15rem 1rem 3.2rem;font-size:.96rem;font-style:normal;line-height:1.75;position:relative}.prose blockquote:before{content:"//";color:var(--coral);font-family:var(--font-mono);font-size:.72rem;font-weight:850;position:absolute;top:1rem;left:1rem}.prose blockquote>:first-child{margin-top:0}.prose blockquote>:last-child{margin-bottom:0}.prose code{color:var(--ink);background:var(--surface-2);font-family:var(--font-mono);border-radius:.3rem;padding:.15em .36em;font-size:.86em}.prose pre{border:1px solid var(--line);border-radius:var(--radius-sm);max-width:100%;box-shadow:var(--shadow-sm);padding:1.25rem;overflow-x:auto;background:var(--code-surface)!important}.prose pre code{color:inherit;background:0 0;padding:0;font-size:.86rem}.prose .code-block{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--code-surface);box-shadow:var(--shadow-sm);margin-block:1.35rem;overflow:hidden}.prose .code-toolbar{border-bottom:1px solid var(--code-line);background:var(--code-toolbar);justify-content:space-between;align-items:center;gap:1rem;min-height:42px;padding:.45rem .65rem .45rem 1rem;display:flex}.prose .code-language{color:var(--code-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:lowercase;font-size:.62rem;font-weight:750}.prose .code-block pre{box-shadow:none;border:0;border-radius:0;margin:0;padding:1.25rem}.prose .copy-code{min-height:30px;color:var(--code-muted);border:1px solid var(--code-line);background:var(--code-toolbar);cursor:pointer;font-family:var(--font-mono);border-radius:.3rem;padding:.35rem .6rem;font-size:.62rem;font-weight:750}.prose .copy-code:hover{color:#fff;border-color:var(--teal)}.prose table{border-spacing:0;border-collapse:collapse;width:100%;font-family:var(--font-sans);font-size:.93rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;min-width:8rem;padding:.75rem .9rem}.prose th{color:var(--ink);background:var(--surface-2)}.prose img{border-radius:var(--radius-sm)}.prose details{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-sm);margin-block:1.5rem;overflow:hidden}.prose details[open]{padding:0 1.5rem 1.5rem}.prose summary{min-height:48px;color:var(--ink);background:color-mix(in srgb, var(--surface-2) 62%, var(--surface));cursor:pointer;font-family:var(--font-mono);align-items:center;gap:.75rem;padding:.8rem 1rem;font-size:.76rem;font-weight:800;list-style:none;display:flex}.prose summary::-webkit-details-marker{display:none}.prose summary:before{content:">";color:var(--teal);transition:transform .18s}.prose details[open] summary{border-bottom:1px solid var(--line);margin:0 -1.5rem 1.25rem}.prose details[open] summary:before{transform:rotate(90deg)}.prose details>:not(summary){margin-inline:0}.prose .course-toc{border-color:color-mix(in srgb, var(--teal) 32%, var(--line))}.prose .course-toc summary{color:var(--teal);background:color-mix(in srgb, var(--teal) 8%, var(--surface));letter-spacing:.04em}.prose .course-toc>p{color:var(--ink);font-family:var(--font-sans);margin-top:1.25rem;margin-bottom:.35rem;font-size:.84rem}.prose .course-toc>ul{font-family:var(--font-sans);margin-top:0;margin-bottom:1.25rem;padding-left:1.1rem;font-size:.86rem;line-height:1.55}.prose .course-toc>ul li{break-inside:avoid;margin-top:.35rem}.prose .course-toc a{text-decoration:none}.prose .course-toc a:hover{color:var(--coral)}@media (width<=680px){.prose{font-size:1.02rem;line-height:1.78}.prose details[open]{padding-inline:1rem}.prose details[open] summary{margin-inline:-1rem}}
