/*!tailwindcss v4.3.0 | MIT License | https://tailwindcss.com*/@layer properties;@layer theme,base,components,utilities;@font-face{font-family:geist;src:url(/fonts/geist/Geist-Light.woff2)format('woff2');font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:geist;src:url(/fonts/geist/Geist-Regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:geist;src:url(/fonts/geist/Geist-Medium.woff2)format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:jetbrains mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Light.woff2)format('woff2');font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:jetbrains mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jetbrains mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Medium.woff2)format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:jetbrains mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-LightItalic.woff2)format('woff2');font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:jetbrains mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Italic.woff2)format('woff2');font-weight:400;font-style:italic;font-display:swap}@layer theme{:root,:host{--font-sans:'Geist', system-ui, sans-serif;--font-mono:'JetBrains Mono', ui-monospace, SFMono-Regular, monospace;--color-gray-200:oklch(92.8% 0.006 264.531);--spacing:0.25rem;--container-md:28rem;--text-xs:0.75rem;--text-xs--line-height:calc(1 / 0.75);--text-sm:0.875rem;--text-sm--line-height:calc(1.25 / 0.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tighter:-0.05em;--tracking-tight:-0.025em;--tracking-wide:0.025em;--tracking-widest:0.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-xs:0.125rem;--radius-sm:0.25rem;--blur-md:12px;--default-transition-duration:150ms;--default-transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--container-content:700px;--container-wide:1080px}}@layer base{*,::after,::before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:initial;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports(not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::placeholder{color:currentcolor;@supports(color:color-mix(in lab,red,red)){color: color-mix(in oklab,currentcolor 50%,transparent);}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border-width:0}.sticky{position:sticky}.top-0{top:calc(var(--spacing) * 0)}.z-40{z-index:40}.col-span-full{grid-column:1/-1}.container{width:100%;@media(width >= 40rem){max-width: 40rem;}@media(width >= 48rem){max-width: 48rem;}@media(width >= 64rem){max-width: 64rem;}@media(width >= 80rem){max-width: 80rem;}@media(width >= 96rem){max-width: 96rem;}}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-8{margin-top:calc(var(--spacing) * 8)}.-mr-1{margin-right:calc(var(--spacing) * -1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-\[52px\]{height:52px}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-\[45\%\]{max-width:45%}.max-w-content{max-width:var(--container-content)}.max-w-md{max-width:var(--container-md)}.max-w-wide{max-width:var(--container-wide)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-12{gap:calc(var(--spacing) * 12)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.p-2{padding:calc(var(--spacing) * 2)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-\[1\.4rem\]{padding-block:1.4rem}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.lowercase{text-transform:lowercase}.italic{font-style:italic}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-20{opacity:20%}.opacity-40{opacity:40%}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:150ms;transition-duration:150ms}.hover\:underline{&:hover { @media (hover:hover) { text-decoration-line:underline; } }}.focus\:not-sr-only{&:focus { position:static; width:auto; height:auto; padding:0; margin:0; overflow:visible; clip-path:none; white-space:normal; }}.focus\:fixed{&:focus { position:fixed; }}.focus\:top-3{&:focus { top:calc(var(--spacing) * 3); }}.focus\:left-3{&:focus { left:calc(var(--spacing) * 3); }}.focus\:z-50{&:focus { z-index:50; }}.focus\:rounded-sm{&:focus { border-radius:var(--radius-sm); }}.focus\:px-4{&:focus { padding-inline:calc(var(--spacing) * 4); }}.focus\:py-2{&:focus { padding-block:calc(var(--spacing) * 2); }}.focus\:text-xs{&:focus { font-size:var(--text-xs); line-height:var(--tw-leading,var(--text-xs--line-height)); }}.focus\:font-medium{&:focus { --tw-font-weight:var(--font-weight-medium); font-weight:var(--font-weight-medium); }}.focus\:outline-hidden{&:focus { --tw-outline-style:none; outline-style:none; @media (forced-colors:active) { outline:2px solid transparent; outline-offset:2px; } }}.sm\:hidden{@media(width >= 40rem){display: none;}}.sm\:flex-row{@media(width >= 40rem){flex-direction: row;}}.sm\:items-center{@media(width >= 40rem){align-items: center;}}.sm\:justify-between{@media(width >= 40rem){justify-content: space-between;}}.sm\:py-14{@media(width >= 40rem){padding-block: calc(var(--spacing) * 14);}}.sm\:text-2xl{@media(width >= 40rem){font-size: var(--text-2xl); line-height: var(--tw-leading,var(--text-2xl--line-height));}}.sm\:text-3xl{@media(width >= 40rem){font-size: var(--text-3xl); line-height: var(--tw-leading,var(--text-3xl--line-height));}}}@layer base{*,::after,::before,::backdrop,::file-selector-button{border-color:var(--color-gray-200,currentcolor)}}[data-theme=dark]{--bg:#0d0d0d;--surface:#171717;--border:#2a2a2a;--muted:#8a8295;--subtle:#a89fc0;--text:#f0eef8;--accent:#b57bee;--accent-dim:#7c4fad;--accent-glow:rgba(181, 123, 238, .09)}[data-theme=light]{--bg:#ffffff;--surface:#f4f4f6;--border:#e0dde8;--muted:#665a88;--subtle:#4a3d6e;--text:#1a1530;--accent:#6d3fa0;--accent-dim:#4a2580;--accent-glow:rgba(109, 63, 160, .07)}body{background:var(--bg);color:var(--text);font-family:jetbrains mono,ui-monospace,monospace}html{scroll-padding-top:72px;scroll-behavior:smooth}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}:focus:not(:focus-visible){outline:none}@keyframes blink{50%{opacity:1}}.anim-d1{animation-delay:.06s}.anim-d2{animation-delay:.12s}.anim-d3{animation-delay:.18s}.anim-d4{animation-delay:.24s}.anim-d5{animation-delay:.28s}.cursor-blink{display:inline-block;width:7px;height:1em;background:var(--accent);opacity:0;margin-left:3px;vertical-align:text-bottom;animation:blink 1.2s step-end infinite}@media(prefers-reduced-motion:reduce){.cursor-blink{animation:none!important}}#nav-open:hover{color:var(--subtle)}.c-text{color:var(--text)}.c-subtle{color:var(--subtle)}.c-muted{color:var(--muted)}.c-accent{color:var(--accent)}.border-c{border-color:var(--border)}.bg-surface{background:var(--surface)}.bg-canvas{background:var(--bg)}.tag-item::before{content:'#';color:var(--accent);opacity:.55}::selection{background:var(--accent);color:#fff}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.prose{color:var(--text);font-size:1rem;line-height:1.85;font-weight:300;font-family:geist,system-ui,sans-serif}.prose-h2,.prose-h3,.prose-h4{font-family:jetbrains mono,ui-monospace,monospace;font-weight:500;letter-spacing:-.02em;margin:2.25rem 0 .6rem;color:var(--text);position:relative}.prose-h2{font-size:1.05rem;padding-bottom:.4rem;border-bottom:1px solid var(--border)}.prose-h3{font-size:.9rem}.prose-h4{font-size:.82rem;color:var(--subtle)}.prose-anchor-prefix{color:var(--accent);opacity:.35;text-decoration:none;margin-right:.35rem;transition:opacity .15s}.prose-h3 .prose-anchor-prefix{opacity:.28}.prose-h4 .prose-anchor-prefix{opacity:.22}.prose-h2:hover .prose-anchor-prefix,.prose-h3:hover .prose-anchor-prefix,.prose-h4:hover .prose-anchor-prefix{opacity:.7}.prose p{margin:.85rem 0}.prose a{color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent-dim);text-underline-offset:3px;transition:text-decoration-color .15s}.prose a:hover{text-decoration-color:var(--accent)}.prose strong{font-weight:600}.prose em{font-style:italic;color:var(--subtle)}.prose ul,.prose ol{padding-left:1.5rem;margin:.85rem 0}.prose li{margin:.3rem 0}.prose ul>li::marker{color:var(--accent);content:'▸  '}.prose ol>li::marker{color:var(--accent)}.prose blockquote{font-family:geist,system-ui,sans-serif;border-left:2px solid var(--accent);padding:.5rem 1rem;margin:1.5rem 0;color:var(--subtle);background:var(--surface);border-radius:0 3px 3px 0;font-style:italic}.prose code{font-family:jetbrains mono,ui-monospace,monospace;font-size:.82em;background:var(--surface);border:1px solid var(--border);padding:.1em .4em;border-radius:3px;color:var(--accent)}.prose pre{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:1rem 1.2rem;overflow-x:auto;margin:1.5rem 0;line-height:1.65;tab-size:2}.prose pre code{background:0 0;border:none;padding:0;color:var(--text);font-size:.8rem}.prose hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.prose-figure{margin:1.75rem 0}.prose-img{border-radius:4px;border:1px solid var(--border);max-width:100%;display:block}.prose-figcaption{font-family:geist,system-ui,sans-serif;margin-top:.5rem;font-size:.8rem;color:var(--muted);text-align:center;font-style:italic}.prose table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.82rem}.prose th{border-bottom:1px solid var(--border);padding:.4rem .6rem;text-align:left;color:var(--subtle)}.prose td{border-bottom:1px solid var(--border);padding:.4rem .6rem}.prose tr:last-child td{border-bottom:none}.toc{font-size:.78rem;line-height:1.6}.toc-title{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.75rem}.toc ul{list-style:none;padding:0;margin:0}.toc li{margin:.2rem 0}.toc a{color:var(--muted);text-decoration:none;display:block;padding:.15rem 0;border-left:2px solid transparent;padding-left:.6rem;transition:color .15s,border-color .15s}.toc a:hover{color:var(--accent);border-left-color:var(--accent)}.toc a.active{color:var(--accent);border-left-color:var(--accent)}.toc ul ul{padding-left:.85rem}.toc ul ul a{font-size:.78rem}.toc ul ul ul{padding-left:.85rem}.toc-sidebar{display:none}@media(min-width:1024px){.toc-sidebar{display:block;position:sticky;top:72px;max-height:calc(100vh - 96px);overflow-y:auto;width:220px;flex-shrink:0}}.toc-inline{display:block;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:1rem 1.1rem;margin-bottom:2rem}@media(min-width:1024px){.toc-inline{display:none}}@view-transition{navigation: auto;
}@media(prefers-reduced-motion:no-preference){::view-transition-old(main-content){animation:160ms ease-in both vt-fade-out}::view-transition-new(main-content){animation:220ms ease-out both vt-slide-in}::view-transition-old(root),::view-transition-new(root){animation:none}}@keyframes vt-fade-out{to{opacity:0;transform:translateY(-6px)}}@keyframes vt-slide-in{from{opacity:0;transform:translateY(8px)}}main{view-transition-name:main-content}.header-bg{background:var(--bg);@supports(color:color-mix(in lab,red,red)){background: color-mix(in srgb,var(--bg) 88%,transparent);}}.nav-item-active{color:var(--accent);background:var(--accent-glow)}.nav-backdrop{position:fixed;inset:0;z-index:49;background:rgba(0,0,0,.55);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .25s ease}.nav-sheet{position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--surface);border-top:1px solid var(--border);border-radius:16px 16px 0 0;padding:0 0 env(safe-area-inset-bottom,0px);transform:translateY(100%);transition:transform .3s cubic-bezier(.32,1,.5,1);max-height:85vh;overflow-y:auto}.nav-drag-handle{width:36px;height:4px;border-radius:2px;background:var(--border)}.nav-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.nav-close-btn{padding:.4rem;margin:-.4rem;border:none;background:0 0;cursor:pointer;color:var(--muted);border-radius:4px;line-height:0;transition:color .15s}.nav-close-btn:hover{color:var(--subtle)}.nav-link{display:flex;align-items:center;justify-content:space-between;padding:1rem .75rem;border-radius:8px;font-size:.95rem;font-weight:400;letter-spacing:.01em;color:var(--text);background:0 0;text-decoration:none;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}.nav-link:hover{background:var(--accent-glow)}.nav-link-active{color:var(--accent);background:var(--accent-glow)}.post-grid{grid-template-columns:1fr auto;grid-template-rows:auto auto}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}html:not([data-theme=dark]){.bg { background-color: #fff; } .chroma { background-color: #fff; } .chroma .err { color: #f6f8fa; background-color: #82071e; } .chroma .lnlinks { outline: none; text-decoration: none; color: inherit; } .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } .chroma .hl { background-color: #e5e5e5; } .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em; color: #7f7f7f; } .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em; color: #7f7f7f; } .chroma .line { display: flex; } .chroma .k { color: #cf222e; } .chroma .kc { color: #cf222e; } .chroma .kd { color: #cf222e; } .chroma .kn { color: #cf222e; } .chroma .kp { color: #cf222e; } .chroma .kr { color: #cf222e; } .chroma .kt { color: #cf222e; } .chroma .na { color: #1f2328; } .chroma .nc { color: #1f2328; } .chroma .no { color: #0550ae; } .chroma .nd { color: #0550ae; } .chroma .ni { color: #6639ba; } .chroma .nl { color: #900; font-weight: bold; } .chroma .nn { color: #24292e; } .chroma .nx { color: #1f2328; } .chroma .nt { color: #0550ae; } .chroma .nb { color: #6639ba; } .chroma .bp { color: #6a737d; } .chroma .nv { color: #953800; } .chroma .vc { color: #953800; } .chroma .vg { color: #953800; } .chroma .vi { color: #953800; } .chroma .vm { color: #953800; } .chroma .nf { color: #6639ba; } .chroma .fm { color: #6639ba; } .chroma .s { color: #0a3069; } .chroma .sa { color: #0a3069; } .chroma .sb { color: #0a3069; } .chroma .sc { color: #0a3069; } .chroma .dl { color: #0a3069; } .chroma .sd { color: #0a3069; } .chroma .s2 { color: #0a3069; } .chroma .se { color: #0a3069; } .chroma .sh { color: #0a3069; } .chroma .si { color: #0a3069; } .chroma .sx { color: #0a3069; } .chroma .sr { color: #0a3069; } .chroma .s1 { color: #0a3069; } .chroma .ss { color: #032f62; } .chroma .m { color: #0550ae; } .chroma .mb { color: #0550ae; } .chroma .mf { color: #0550ae; } .chroma .mh { color: #0550ae; } .chroma .mi { color: #0550ae; } .chroma .il { color: #0550ae; } .chroma .mo { color: #0550ae; } .chroma .o { color: #0550ae; } .chroma .ow { color: #0550ae; } .chroma .p { color: #1f2328; } .chroma .c { color: #57606a; } .chroma .ch { color: #57606a; } .chroma .cm { color: #57606a; } .chroma .c1 { color: #57606a; } .chroma .cs { color: #57606a; } .chroma .cp { color: #57606a; } .chroma .cpf { color: #57606a; } .chroma .gd { color: #82071e; background-color: #ffebe9; } .chroma .ge { color: #1f2328; } .chroma .gi { color: #116329; background-color: #dafbe1; } .chroma .go { color: #1f2328; } .chroma .gl { text-decoration: underline; } .chroma .w { color: #fff; }}html[data-theme=dark]{.bg { color: #e6edf3; } .chroma { color: #e6edf3; } .chroma .err { color: #f85149; } .chroma .lnlinks { outline: none; text-decoration: none; color: inherit; } .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } .chroma .hl { background-color: #6e7681; } .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em; color: #737679; } .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em; color: #6e7681; } .chroma .line { display: flex; } .chroma .k { color: #ff7b72; } .chroma .kc { color: #79c0ff; } .chroma .kd { color: #ff7b72; } .chroma .kn { color: #ff7b72; } .chroma .kp { color: #79c0ff; } .chroma .kr { color: #ff7b72; } .chroma .kt { color: #ff7b72; } .chroma .nc { color: #f0883e; font-weight: bold; } .chroma .no { color: #79c0ff; font-weight: bold; } .chroma .nd { color: #d2a8ff; font-weight: bold; } .chroma .ni { color: #ffa657; } .chroma .ne { color: #f0883e; font-weight: bold; } .chroma .nl { color: #79c0ff; font-weight: bold; } .chroma .nn { color: #ff7b72; } .chroma .py { color: #79c0ff; } .chroma .nt { color: #7ee787; } .chroma .nv { color: #79c0ff; } .chroma .vc { color: #79c0ff; } .chroma .vg { color: #79c0ff; } .chroma .vi { color: #79c0ff; } .chroma .vm { color: #79c0ff; } .chroma .nf { color: #d2a8ff; font-weight: bold; } .chroma .fm { color: #d2a8ff; font-weight: bold; } .chroma .l { color: #a5d6ff; } .chroma .ld { color: #79c0ff; } .chroma .s { color: #a5d6ff; } .chroma .sa { color: #79c0ff; } .chroma .sb { color: #a5d6ff; } .chroma .sc { color: #a5d6ff; } .chroma .dl { color: #79c0ff; } .chroma .sd { color: #a5d6ff; } .chroma .s2 { color: #a5d6ff; } .chroma .se { color: #79c0ff; } .chroma .sh { color: #79c0ff; } .chroma .si { color: #a5d6ff; } .chroma .sx { color: #a5d6ff; } .chroma .sr { color: #79c0ff; } .chroma .s1 { color: #a5d6ff; } .chroma .ss { color: #a5d6ff; } .chroma .m { color: #a5d6ff; } .chroma .mb { color: #a5d6ff; } .chroma .mf { color: #a5d6ff; } .chroma .mh { color: #a5d6ff; } .chroma .mi { color: #a5d6ff; } .chroma .il { color: #a5d6ff; } .chroma .mo { color: #a5d6ff; } .chroma .o { color: #ff7b72; font-weight: bold; } .chroma .ow { color: #ff7b72; font-weight: bold; } .chroma .c { color: #8b949e; font-style: italic; } .chroma .ch { color: #8b949e; font-style: italic; } .chroma .cm { color: #8b949e; font-style: italic; } .chroma .c1 { color: #8b949e; font-style: italic; } .chroma .cs { color: #8b949e; font-weight: bold; font-style: italic; } .chroma .cp { color: #8b949e; font-weight: bold; font-style: italic; } .chroma .cpf { color: #8b949e; font-weight: bold; font-style: italic; } .chroma .gd { color: #ffa198; background-color: #490202; } .chroma .ge { font-style: italic; } .chroma .gr { color: #ffa198; } .chroma .gh { color: #79c0ff; font-weight: bold; } .chroma .gi { color: #56d364; background-color: #0f5323; } .chroma .go { color: #8b949e; } .chroma .gp { color: #8b949e; } .chroma .gs { font-weight: bold; } .chroma .gu { color: #79c0ff; } .chroma .gt { color: #ff7b72; } .chroma .gl { text-decoration: underline; } .chroma .w { color: #6e7681; }}@property --tw-rotate-x{syntax: "*";
  inherits: false;
}@property --tw-rotate-y{syntax: "*";
  inherits: false;
}@property --tw-rotate-z{syntax: "*";
  inherits: false;
}@property --tw-skew-x{syntax: "*";
  inherits: false;
}@property --tw-skew-y{syntax: "*";
  inherits: false;
}@property --tw-border-style{syntax: "*";
  inherits: false;
  initial-value: solid;
}@property --tw-leading{syntax: "*";
  inherits: false;
}@property --tw-font-weight{syntax: "*";
  inherits: false;
}@property --tw-tracking{syntax: "*";
  inherits: false;
}@property --tw-backdrop-blur{syntax: "*";
  inherits: false;
}@property --tw-backdrop-brightness{syntax: "*";
  inherits: false;
}@property --tw-backdrop-contrast{syntax: "*";
  inherits: false;
}@property --tw-backdrop-grayscale{syntax: "*";
  inherits: false;
}@property --tw-backdrop-hue-rotate{syntax: "*";
  inherits: false;
}@property --tw-backdrop-invert{syntax: "*";
  inherits: false;
}@property --tw-backdrop-opacity{syntax: "*";
  inherits: false;
}@property --tw-backdrop-saturate{syntax: "*";
  inherits: false;
}@property --tw-backdrop-sepia{syntax: "*";
  inherits: false;
}@property --tw-duration{syntax: "*";
  inherits: false;
}@layer properties{@supports((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::before,::after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}