html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}[hidden]:where(:not([hidden=until-found])){display:none!important}@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{--un-ease:initial}}@property --un-outline-style{syntax:"*";inherits:false;initial-value:solid;}@property --un-ease{syntax:"*";inherits:false;}:root,:host{--default-transition-timingFunction: cubic-bezier(.4, 0, .2, 1);--default-transition-duration: .15s;--ease-DEFAULT: cubic-bezier(.4, 0, .2, 1);--spacing: .25rem;--font-sans: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family: var(--font-sans);--default-monoFont-family: var(--font-mono)}*,: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-featureSettings, normal);font-variation-settings:var(--default-font-variationSettings, 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-monoFont-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace );font-feature-settings:var(--default-monoFont-featureSettings, normal);font-variation-settings:var(--default-monoFont-variationSettings, 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:transparent;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: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}.py-10{padding-block:calc(var(--spacing) * 10)}.outline{outline-style:var(--un-outline-style);outline-width:1px}.border{border-width:1px}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.max-w-none{max-width:none}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.visible{visibility:visible}.uppercase{text-transform:uppercase}.transform{transform:var(--un-rotate-x) var(--un-rotate-y) var(--un-rotate-z) var(--un-skew-x) var(--un-skew-y)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration))}.ease{--un-ease:var(--ease-DEFAULT);transition-timing-function:var(--ease-DEFAULT)}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur,) var(--un-backdrop-brightness,) var(--un-backdrop-contrast,) var(--un-backdrop-grayscale,) var(--un-backdrop-hue-rotate,) var(--un-backdrop-invert,) var(--un-backdrop-opacity,) var(--un-backdrop-saturate,) var(--un-backdrop-sepia,);backdrop-filter:var(--un-backdrop-blur,) var(--un-backdrop-brightness,) var(--un-backdrop-contrast,) var(--un-backdrop-grayscale,) var(--un-backdrop-hue-rotate,) var(--un-backdrop-invert,) var(--un-backdrop-opacity,) var(--un-backdrop-saturate,) var(--un-backdrop-sepia,)}.search-trigger[data-astro-cid-qk3db3zz]{position:fixed;top:1.25rem;right:1.25rem;z-index:100;background:none;border:1px solid var(--color-border);border-radius:8px;padding:.6rem;color:var(--color-text-muted);cursor:pointer;transition:color .2s ease,border-color .2s ease;line-height:0}.search-trigger[data-astro-cid-qk3db3zz]:hover{color:var(--color-text);border-color:var(--color-text-muted)}.modal-overlay[data-astro-cid-qk3db3zz]{position:fixed;inset:0;z-index:200;background:#0009;backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.modal-overlay[data-astro-cid-qk3db3zz].is-open{opacity:1;visibility:visible}.modal-content[data-astro-cid-qk3db3zz]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;width:90%;max-width:520px;padding:1.5rem;position:relative;transform:translateY(-8px);transition:transform .2s ease;box-shadow:0 16px 48px #0006}.modal-overlay[data-astro-cid-qk3db3zz].is-open .modal-content[data-astro-cid-qk3db3zz]{transform:translateY(0)}.modal-close[data-astro-cid-qk3db3zz]{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;line-height:0;transition:color .2s ease}.modal-close[data-astro-cid-qk3db3zz]:hover{color:var(--color-text)}.modal-search[data-astro-cid-qk3db3zz]{margin-bottom:1.25rem}.search-input[data-astro-cid-qk3db3zz]{width:100%;padding:.75rem 1rem;font-family:var(--font-body);font-size:var(--text-base);background:var(--color-background);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;outline:none;box-sizing:border-box;transition:border-color .2s ease}.search-input[data-astro-cid-qk3db3zz]:focus{border-color:var(--color-link)}.search-input[data-astro-cid-qk3db3zz]::placeholder{color:var(--color-text-muted)}.search-hint[data-astro-cid-qk3db3zz]{display:block;margin-top:.5rem;font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-body)}.search-hint[data-astro-cid-qk3db3zz] kbd[data-astro-cid-qk3db3zz]{display:inline-block;padding:.1em .4em;font-family:var(--font-code);font-size:.85em;background:var(--color-background);border:1px solid var(--color-border);border-radius:3px}.modal-nav[data-astro-cid-qk3db3zz]{display:flex;gap:1.25rem;padding:1rem 0;border-top:1px solid var(--color-border);margin-bottom:.25rem}.modal-link[data-astro-cid-qk3db3zz]{font-family:var(--font-head);font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:color .15s ease}.modal-link[data-astro-cid-qk3db3zz]:hover{color:var(--color-text)}.modal-subscribe[data-astro-cid-qk3db3zz]{padding-top:.75rem;border-top:1px solid var(--color-border)}.subscribe-form[data-astro-cid-qk3db3zz]{display:flex;gap:.5rem}.subscribe-input[data-astro-cid-qk3db3zz]{flex:1;padding:.5rem .75rem;font-family:var(--font-body);font-size:var(--text-sm);background:var(--color-background);color:var(--color-text);border:1px solid var(--color-border);border-radius:6px;outline:none;box-sizing:border-box;transition:border-color .2s ease}.subscribe-input[data-astro-cid-qk3db3zz]:focus{border-color:var(--color-link)}.subscribe-input[data-astro-cid-qk3db3zz]::placeholder{color:var(--color-text-muted)}.subscribe-button[data-astro-cid-qk3db3zz]{padding:.5rem 1rem;font-family:var(--font-head);font-size:var(--text-sm);font-weight:500;background:var(--color-link);color:var(--color-background);border:none;border-radius:6px;cursor:pointer;white-space:nowrap;transition:opacity .15s ease}.subscribe-button[data-astro-cid-qk3db3zz]:hover{opacity:.85}.sr-only[data-astro-cid-qk3db3zz]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:root{--font-body: "Andada Pro", ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-head: "Outfit", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;--font-code: "Source Code Pro", ui-monospace, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;--text-xs: .833rem;--text-sm: .889rem;--text-base: 1rem;--text-lg: 1.111rem;--text-xl: 1.333rem;--text-2xl: 1.556rem;--text-3xl: 1.889rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--measure: 65ch}html{font-size:18px;line-height:1.6}body{font-family:var(--font-body);line-height:1.6;background-color:var(--color-background);color:var(--color-text)}main h1,main h2,main h3,main h4,main h5,main h6{font-family:var(--font-head);font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-block:var(--space-lg) var(--space-sm);color:var(--color-heading)}main h1{font-size:var(--text-3xl)}main h2{font-size:var(--text-2xl)}main h3{font-size:var(--text-xl)}main h4{font-size:var(--text-lg)}main h5{font-size:var(--text-base);font-weight:600}main h6{font-size:var(--text-base);font-weight:600;font-style:italic}main p{margin-block:var(--space-md);max-width:var(--measure)}main a{color:var(--color-link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}main a:hover{color:var(--color-link-hover)}main ul,main ol{margin-block:var(--space-md);padding-left:1.5rem;max-width:var(--measure)}main li{margin-block:var(--space-xs)}main li>ul,main li>ol{margin-block:var(--space-xs)}main code{font-family:var(--font-code);font-size:.9em;padding:.125em .25em;border-radius:3px;background-color:var(--color-code-bg);color:var(--color-code-text)}main pre{font-family:var(--font-code);font-size:var(--text-sm);line-height:1.5;padding:var(--space-md);border-radius:4px;overflow-x:auto;margin-block:var(--space-lg);max-width:var(--measure);background-color:var(--color-code-bg)}main pre code{padding:0;font-size:inherit;background-color:transparent}main blockquote{margin-block:var(--space-lg);margin-inline:0;padding-left:var(--space-md);border-left:3px solid var(--color-border);font-style:italic;max-width:var(--measure);color:var(--color-text-muted)}main blockquote p{margin-block:var(--space-sm)}main table{width:100%;max-width:var(--measure);margin-block:var(--space-lg);border-collapse:collapse;font-size:var(--text-sm)}main th,main td{padding:var(--space-xs) var(--space-sm);text-align:left;border-bottom:1px solid var(--color-border)}main th{font-weight:600;font-family:var(--font-head)}main hr{margin-block:var(--space-xl);border:none;border-top:1px solid var(--color-border);max-width:var(--measure)}main img{max-width:var(--measure);height:auto;cursor:zoom-in;border:1px solid black;border-radius:5px;margin-left:1em}main figure.note-figure{margin-block:var(--space-lg);margin-inline:0;margin-left:1em;max-width:var(--measure)}main figure.note-figure img{max-width:100%;display:block;margin-left:0}main figure.note-figure figcaption{font-size:var(--text-sm);font-style:italic;margin-top:var(--space-xs);color:var(--color-text-muted)}main figure:not(.note-figure){margin-block:var(--space-lg);margin-inline:0}main figure:not(.note-figure) figcaption{font-size:var(--text-sm);font-style:italic;margin-top:var(--space-xs);color:var(--color-text-muted)}main a.glightbox{text-decoration:none;display:inline-block;line-height:0}:root{--color-background: #1b2a3d;--color-surface: #1a1a1a;--color-text: #dcd8ca;--color-text-muted: #a3a3a3;--color-heading: #dcd8ca;--color-link: #60a5fa;--color-link-hover: #93c5fd;--color-accent: #8b5cf6;--color-border: #333333;--color-code-bg: #000000;--color-code-text: #d4d4d4;--sidebar-bg: #1a1a1a;--dropdown-bg: #2a2a2a;--dropdown-hover-bg: rgba(255, 255, 255, .1);--text-color: #fff}@media(prefers-color-scheme:light){:root{--color-background: #ffffff;--color-surface: #f5f5f5;--color-text: #171717;--color-text-muted: #737373;--color-heading: #0a0a0a;--color-link: #2563eb;--color-link-hover: #1d4ed8;--color-accent: #7c3aed;--color-border: #e5e5e5;--color-code-bg: #f5f5f5;--color-code-text: #404040}}body{padding:0;margin:0}.site-wrapper{display:flex;justify-content:center;min-height:100vh;padding:0 1.5rem}.site-container{width:100%;max-width:48rem}.site-container.has-sidebar{max-width:66rem;display:grid;grid-template-columns:1fr 14rem;gap:2.5rem;align-items:start}.site-container.has-sidebar main{min-width:0}.site-sidebar{position:sticky;top:2rem;padding-top:2.5rem}@media(max-width:860px){.site-container.has-sidebar{grid-template-columns:1fr;max-width:48rem;gap:0}.site-sidebar{position:static;border-top:1px solid var(--color-border);margin-top:2rem;padding-top:1.5rem}}
