.note__body{font-size:1.0625rem;line-height:1.85}.note__body p{margin-bottom:var(--sp-5);color:var(--text-0)}.note__body h2{font-size:var(--fs-2xl);margin:var(--sp-12) 0 var(--sp-4);scroll-margin-top:5.5rem}.note__body h2:before{content:"#";color:var(--accent);font-family:var(--font-mono);text-shadow:0 0 14px var(--accent);margin-right:.45em;font-weight:500}.note__body h3{font-size:var(--fs-xl);margin:var(--sp-8) 0 var(--sp-3);scroll-margin-top:5.5rem}.note__body ul,.note__body ol{margin:0 0 var(--sp-5) var(--sp-6);color:var(--text-0)}.note__body li{margin-bottom:var(--sp-2)}.note__body li::marker{color:var(--accent)}.note__body strong{color:var(--text-0);background:linear-gradient(transparent 62%, color-mix(in srgb, var(--accent-2) 30%, transparent) 0)}.note__body blockquote{margin:var(--sp-6) 0;padding:var(--sp-4) var(--sp-5);border-left:2px solid;border-image:linear-gradient(180deg, var(--accent), var(--accent-3)) 1;color:var(--text-1);background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 9%, transparent), transparent 75%)}.note__body blockquote p:last-child{margin-bottom:0}.note__body :not(pre)>code{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);background:color-mix(in srgb, var(--accent) 9%, transparent);color:var(--accent);border-radius:6px;padding:.12em .42em;font-size:.88em}.note__body pre{margin:0 0 var(--sp-5);padding:var(--sp-4) var(--sp-5);border:1px solid var(--border);border-radius:var(--radius);line-height:1.7;overflow-x:auto;background-color:var(--bg-1)!important}.note__body pre code{color:inherit;font-size:var(--fs-sm);background:0 0;border:0;padding:0}.note__body .code-block{margin-bottom:var(--sp-6);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);box-shadow:0 16px 40px -20px color-mix(in srgb, var(--accent) 30%, transparent);padding-top:2.4rem;transition:border-color .25s,box-shadow .25s;position:relative;overflow:hidden}.note__body .code-block:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));box-shadow:0 16px 48px -16px color-mix(in srgb, var(--accent) 45%, transparent)}.note__body .code-block:before{content:"";border-bottom:1px solid var(--border);background:radial-gradient(circle at 1.1rem 50%, var(--err) 0 5px, transparent 5.5px), radial-gradient(circle at 1.9rem 50%, var(--warn) 0 5px, transparent 5.5px), radial-gradient(circle at 2.7rem 50%, var(--ok) 0 5px, transparent 5.5px), var(--bg-2);height:2.4rem;position:absolute;inset:0 0 auto}.note__body .code-block:after{content:"";background:linear-gradient(180deg, var(--accent), var(--accent-3));width:2px;box-shadow:0 0 10px var(--accent);position:absolute;top:2.4rem;bottom:0;left:0}.note__body .code-block pre{border:0;border-radius:0;margin:0}.note__body .code-block pre[data-language]:before{content:attr(data-language);height:2.4rem;color:var(--text-2);line-height:2.4rem;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;position:absolute;top:0;left:3.6rem}.note__body .code-block__copy{z-index:1;background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-family:var(--font-mono);font-size:var(--fs-xs);padding:.1rem var(--sp-3);cursor:pointer;opacity:0;border-radius:999px;transition:opacity .15s,border-color .15s,color .15s;position:absolute;top:.45rem;right:.6rem}.note__body .code-block:hover .code-block__copy,.note__body .code-block__copy:focus{opacity:1}.note__body .code-block__copy:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 12px color-mix(in srgb, var(--accent) 30%, transparent)}.note__body a{text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent) 45%, transparent);text-underline-offset:.2em}.note__body a:hover{text-decoration-color:currentColor}.note__body hr{height:1px;margin:var(--sp-10) 0;background:linear-gradient(90deg, transparent, var(--accent-2), transparent);border:0}.note__body table{border-collapse:collapse;width:100%;margin-bottom:var(--sp-5);font-size:var(--fs-sm)}.note__body th,.note__body td{border:1px solid var(--border);padding:var(--sp-2) var(--sp-3)}.note__body th{background:var(--bg-2);color:var(--accent);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em;text-align:left;text-transform:uppercase}.note__body tr:hover td{background:color-mix(in srgb, var(--accent) 5%, transparent)}.read-progress[data-astro-cid-kqv63ncf]{z-index:20;background:var(--flow);height:3px;box-shadow:0 0 12px var(--accent), 0 0 4px var(--accent-3);transform-origin:0;pointer-events:none;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.note[data-astro-cid-kqv63ncf]{max-width:var(--content-w);margin:0 auto}.note--toc[data-astro-cid-kqv63ncf]{max-width:calc(var(--content-w) + 220px + var(--sp-12))}.note__head[data-astro-cid-kqv63ncf]{isolation:isolate;max-width:var(--content-w);margin-bottom:var(--sp-8);padding-bottom:var(--sp-5);border-bottom:1px solid var(--border);position:relative}.note__head[data-astro-cid-kqv63ncf]:before{content:"";z-index:-1;background:radial-gradient(closest-side, color-mix(in srgb, var(--accent-2) 22%, transparent), transparent);filter:blur(30px);pointer-events:none;border-radius:50%;width:36rem;height:22rem;position:absolute;top:-8rem;left:-12rem}.note__head[data-astro-cid-kqv63ncf]:after{content:"";background:var(--flow);width:8rem;height:1px;box-shadow:0 0 10px var(--accent);position:absolute;bottom:-1px;left:0}.note__draft-banner[data-astro-cid-kqv63ncf]{margin-bottom:var(--sp-4);border:1px solid color-mix(in srgb, var(--warn) 35%, transparent);background:color-mix(in srgb, var(--warn) 10%, transparent);color:var(--warn);font-size:var(--fs-xs);font-family:var(--font-mono);border-radius:999px;padding:.25rem .6rem;display:inline-flex}.note__title[data-astro-cid-kqv63ncf]{letter-spacing:-.03em;margin-bottom:var(--sp-4);font-size:clamp(2rem,4.5vw,2.9rem);line-height:1.2}.note__lead[data-astro-cid-kqv63ncf]{color:var(--text-1);font-size:var(--fs-lg);margin-bottom:var(--sp-5);line-height:1.65}.note__meta[data-astro-cid-kqv63ncf]{align-items:center;gap:var(--sp-3);color:var(--text-2);font-family:var(--font-mono);font-size:var(--fs-xs);flex-wrap:wrap;display:flex}.note__sep[data-astro-cid-kqv63ncf]{opacity:.5}.note__copy[data-astro-cid-kqv63ncf]{border:1px solid var(--border);color:var(--text-2);font-size:var(--fs-xs);font-family:var(--font-mono);cursor:pointer;background:0 0;border-radius:999px;padding:.15rem .6rem;transition:border-color .15s,color .15s,box-shadow .15s}.note__copy[data-astro-cid-kqv63ncf]:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 12px color-mix(in srgb, var(--accent) 30%, transparent)}.note__tags[data-astro-cid-kqv63ncf]{align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-left:auto;list-style:none;display:flex}.note__layout[data-astro-cid-kqv63ncf]{gap:var(--sp-8);display:grid}.note--toc[data-astro-cid-kqv63ncf] .note__layout[data-astro-cid-kqv63ncf]{grid-template-columns:minmax(0, var(--content-w)) 220px;gap:var(--sp-12)}.note__main[data-astro-cid-kqv63ncf]{min-width:0}.note__aside[data-astro-cid-kqv63ncf]{order:2}.note__toc[data-astro-cid-kqv63ncf]{max-height:calc(100vh - 8rem);padding-left:var(--sp-4);border-left:1px solid var(--border);position:sticky;top:6rem;overflow-y:auto}.note__toc-title[data-astro-cid-kqv63ncf]{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-2);letter-spacing:.16em;text-transform:uppercase;margin-bottom:var(--sp-3)}.note__toc[data-astro-cid-kqv63ncf] ol[data-astro-cid-kqv63ncf]{gap:var(--sp-1);list-style:none;display:grid}.note__toc[data-astro-cid-kqv63ncf] a[data-astro-cid-kqv63ncf]{padding:var(--sp-1) 0;color:var(--text-2);font-size:var(--fs-sm);line-height:1.5;transition:color .2s;display:block;position:relative}.note__toc[data-astro-cid-kqv63ncf] a[data-astro-cid-kqv63ncf]:before{content:"";left:calc(-1 * var(--sp-4) - 1px);background:var(--accent);width:2px;box-shadow:0 0 10px var(--accent);opacity:0;border-radius:2px;transition:opacity .2s;position:absolute;top:.2rem;bottom:.2rem}.note__toc[data-astro-cid-kqv63ncf] a[data-astro-cid-kqv63ncf]:hover{color:var(--text-0)}.note__toc[data-astro-cid-kqv63ncf] a[data-astro-cid-kqv63ncf].is-active{color:var(--accent)}.note__toc[data-astro-cid-kqv63ncf] a[data-astro-cid-kqv63ncf].is-active:before{opacity:1}.note__related[data-astro-cid-kqv63ncf]{margin-top:var(--sp-12)}.note__related-grid[data-astro-cid-kqv63ncf]{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.related-card[data-astro-cid-kqv63ncf]{gap:var(--sp-2);padding:var(--sp-4);display:grid}.related-card__shared[data-astro-cid-kqv63ncf]{color:var(--accent);font-family:var(--font-mono);font-size:var(--fs-xs)}.related-card__title[data-astro-cid-kqv63ncf]{font-size:var(--fs-sm);line-height:1.5}.note__pager[data-astro-cid-kqv63ncf]{gap:var(--sp-3);margin-top:var(--sp-8);grid-template-columns:1fr 1fr;display:grid}.pager__item[data-astro-cid-kqv63ncf]{gap:var(--sp-1);padding:var(--sp-4) var(--sp-5);min-height:4.5rem;display:grid}.pager__item--next[data-astro-cid-kqv63ncf]{text-align:right}.pager__item--empty[data-astro-cid-kqv63ncf]{min-height:0}.pager__label[data-astro-cid-kqv63ncf]{color:var(--text-2);font-size:var(--fs-xs);font-family:var(--font-mono)}.pager__item[data-astro-cid-kqv63ncf]:hover .pager__label[data-astro-cid-kqv63ncf]{color:var(--accent)}.pager__title[data-astro-cid-kqv63ncf]{font-size:var(--fs-sm);line-height:1.5}@media (width<=1100px){.note--toc[data-astro-cid-kqv63ncf]{max-width:var(--content-w)}.note--toc[data-astro-cid-kqv63ncf] .note__layout[data-astro-cid-kqv63ncf]{gap:var(--sp-8);grid-template-columns:minmax(0,1fr)}.note__aside[data-astro-cid-kqv63ncf]{order:0}.note__toc[data-astro-cid-kqv63ncf]{max-height:none;padding:var(--sp-4) var(--sp-5);border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--bg-1) 80%, transparent);position:static}.note__toc[data-astro-cid-kqv63ncf] a[data-astro-cid-kqv63ncf]:before{display:none}}@media (width<=600px){.note__head[data-astro-cid-kqv63ncf]:before{width:24rem;left:-6rem}.note__pager[data-astro-cid-kqv63ncf]{grid-template-columns:1fr}.pager__item--next[data-astro-cid-kqv63ncf]{text-align:left}}
