.prose{font-family:var(--font-read);letter-spacing:.01em;color:var(--text);overflow-wrap:anywhere;text-wrap:pretty;font-size:1.05rem;line-height:1.9}@media (width>=1920px){.prose{font-size:1.1rem}}.prose>*+*{margin-top:1.1em}.prose h2,.prose h3,.prose h4{font-family:var(--font-display);font-weight:700;line-height:1.3;position:relative}.prose h2{margin-top:2.2em;padding-bottom:.4em;font-size:1.6rem}.prose h2:after{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:3px;width:2.2em;height:3px;position:absolute;bottom:0;left:0}.prose h3{margin-top:1.8em;padding-left:.65em;font-size:1.28rem}.prose h3:before{content:"";background:var(--accent);border-radius:3px;width:3px;height:.95em;position:absolute;top:.3em;left:0}.prose h4{color:var(--text-2);margin-top:1.5em;font-size:1.1rem}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:.7em}.prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline 1px;text-decoration-color:color-mix(in oklab, var(--accent) 45%, transparent);transition:text-decoration-color .3s}.prose a:hover{text-decoration-color:var(--accent)}.prose strong{color:var(--text);font-weight:700}.prose mark{color:inherit;background:color-mix(in oklab, var(--gold) 38%, transparent);border-radius:4px;padding:0 .25em}.prose blockquote{border-left:3px solid var(--accent);border-radius:0 var(--r-md) var(--r-md) 0;background:color-mix(in oklab, var(--accent) 9%, transparent);color:var(--text-2);margin:1.5em 0;padding:.9em 1.3em}.prose blockquote>*+*{margin-top:.6em}.prose img{border-radius:var(--r-md);box-shadow:var(--shadow);height:auto;margin:1.8em auto}.prose figure{margin:1.8em 0}.prose figure img{margin:0 auto}.prose figcaption{text-align:center;color:var(--text-3);margin-top:.7em;font-size:.85rem}.prose ul,.prose ol{padding-left:1.5em}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li+li,.prose li>ul,.prose li>ol{margin-top:.4em}.prose li::marker{color:var(--accent);font-family:var(--font-ui);font-size:.9em}.prose ul.contains-task-list,.prose ul:has(>li>input[type=checkbox]){padding-left:.2em;list-style:none}.prose input[type=checkbox]{accent-color:var(--accent);margin-right:.5em}.prose hr{background:linear-gradient(90deg, transparent, var(--line-strong), transparent);border:0;height:1px;margin:2.6em 0}.prose table{border-collapse:separate;border-spacing:0;border-radius:var(--r-md);width:100%;box-shadow:inset 0 0 0 1px var(--line);scrollbar-width:thin;font-size:.92rem;display:block;overflow-x:auto}.prose thead th{background:var(--chip-hover);font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;text-align:left;color:var(--text-2);white-space:nowrap;padding:.75em 1em;font-size:.68rem}.prose td{border-top:1px solid var(--line);vertical-align:top;padding:.6em 1em}.prose tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--chip) 70%, transparent)}.prose code:not(pre code){font-family:var(--font-code);color:var(--accent);background:color-mix(in oklab, var(--accent) 13%, transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--accent) 22%, transparent);border-radius:6px;padding:.15em .45em;font-size:.85em}.prose kbd{font-size:.78em}.prose details{border-radius:var(--r-md);background:var(--chip);box-shadow:inset 0 0 0 1px var(--line);padding:.8em 1.1em}.prose summary{cursor:pointer;color:var(--text);font-weight:700}.prose details[open]>summary{margin-bottom:.6em}.prose sup{font-size:.72em;line-height:0}.prose iframe,.prose video{border-radius:var(--r-md);width:100%}.prose .footnotes{border-top:1px solid var(--line);color:var(--text-2);margin-top:2.5em;padding-top:1.2em;font-size:.88rem}pre.astro-code{border-radius:var(--r-md);color:#cdd6f4;backdrop-filter:blur(16px)saturate(1.4);font-family:var(--font-code);tab-size:4;scrollbar-width:thin;scrollbar-color:#fff3 transparent;margin:1.9em 0;padding:2.9rem 0 1.1rem;font-size:.86rem;line-height:1.7;position:relative;overflow:auto;box-shadow:inset 0 1px #ffffff24,inset 0 0 0 1px #ffffff14,0 24px 50px -30px #000c;background:var(--code-bg)!important}pre.astro-code:before{content:attr(data-language);font-family:var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:#ffffff8c;font-size:.64rem;position:absolute;top:.85rem;left:1.1rem}pre.astro-code:after{content:"";background:linear-gradient(90deg,#ffffff1f,#ffffff08);height:1px;position:absolute;top:2.3rem;left:0;right:0}pre.astro-code code{counter-reset:line;width:max-content;min-width:100%;padding-right:1.2rem;font-family:inherit;display:block}pre.astro-code .line{min-width:100%;padding-right:.5rem;transition:background-color .2s;display:inline-block}pre.astro-code .line:hover{background:#ffffff0a}pre.astro-code .line:before{counter-increment:line;content:counter(line);text-align:right;color:#ffffff42;user-select:none;background:0 0;width:3.2rem;padding-right:1rem;display:inline-block;position:sticky;left:0}pre.astro-code[data-lines="1"]{padding-top:2.7rem}pre.astro-code[data-lines="1"] .line:before{content:"";width:1.2rem;padding-right:0}.code-wrap{margin:1.9em 0;position:relative}.code-wrap>pre.astro-code{margin:0}.code-copy{border-radius:var(--r-pill);font-family:var(--font-ui);letter-spacing:.06em;color:#ffffffb3;transition:background-color .25s, color .25s, transform .4s var(--ease-spring);background:#ffffff14;align-items:center;gap:.35em;padding:.28em .7em;font-size:.62rem;display:inline-flex;position:absolute;top:.55rem;right:.6rem;box-shadow:inset 0 0 0 1px #ffffff1f}.code-copy:hover{color:#fff;background:#ffffff29;transform:translateY(-1px)}.code-copy.is-done{color:#a6e3a1;background:#a6e3a129}@media (width<=640px){.prose{font-size:1rem;line-height:1.8}.prose>*+*{margin-top:1em}.prose h2{margin-top:1.9em;font-size:1.35rem}.prose h3{margin-top:1.6em;font-size:1.15rem}.prose h4{font-size:1.02rem}.prose blockquote{margin:1.2em 0;padding:.75em 1em}.prose ul,.prose ol{padding-left:1.25em}.prose img{margin:1.4em auto}.prose figure img{margin:0 auto}.prose table{font-size:.85rem}.prose hr{margin:2em 0}pre.astro-code{border-radius:var(--r-sm);padding-right:.9rem;font-size:.8rem}pre.astro-code .line:before{width:2.4rem;padding-right:.7rem;position:static}.code-copy{padding:.3em .6em;font-size:.58rem}}
