.nav[data-astro-cid-dmqpwcec]{position:sticky;top:0;z-index:50;background:var(--color-nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.nav-inner[data-astro-cid-dmqpwcec]{display:flex;align-items:center;height:4rem}.nav-brand[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:#fff;flex-shrink:0}.nav-logo[data-astro-cid-dmqpwcec]{height:2.25rem;width:auto}.nav-name[data-astro-cid-dmqpwcec]{font-size:1.4rem;font-weight:700;letter-spacing:-.01em}.nav-links[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:.25rem;margin-left:auto}.nav-link[data-astro-cid-dmqpwcec]{color:var(--color-text-muted);text-decoration:none;padding:.4rem .75rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;transition:color var(--transition-fast),background var(--transition-fast)}.nav-link[data-astro-cid-dmqpwcec]:hover{color:#fff;background:#ffffff0d;text-decoration:none}.nav-link[data-astro-cid-dmqpwcec].active{color:var(--color-accent)}.nav-github[data-astro-cid-dmqpwcec]{display:flex;align-items:center;margin-left:.5rem}.nav-github[data-astro-cid-dmqpwcec] svg[data-astro-cid-dmqpwcec]{transition:color var(--transition-fast)}.nav-toggle[data-astro-cid-dmqpwcec]{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem;margin-left:auto}.nav-toggle[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]{display:block;width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:transform var(--transition-normal),opacity var(--transition-normal)}.nav-toggle[data-astro-cid-dmqpwcec].open span[data-astro-cid-dmqpwcec]:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[data-astro-cid-dmqpwcec].open span[data-astro-cid-dmqpwcec]:nth-child(2){opacity:0}.nav-toggle[data-astro-cid-dmqpwcec].open span[data-astro-cid-dmqpwcec]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media screen and (max-width:768px){.nav-toggle[data-astro-cid-dmqpwcec]{display:flex}.nav-links[data-astro-cid-dmqpwcec]{display:none;position:absolute;top:4rem;left:0;right:0;flex-direction:column;background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:1rem var(--container-padding);gap:.25rem}.nav-links[data-astro-cid-dmqpwcec].open{display:flex}.nav-link[data-astro-cid-dmqpwcec]{width:100%;padding:.6rem .75rem}.nav-github[data-astro-cid-dmqpwcec]{margin-left:0}}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-border);padding:3rem 0 2rem;margin-top:4rem}.footer-inner[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:center;text-align:center}.footer-title[data-astro-cid-sz7xmlte]{font-size:1.25rem;font-weight:600;color:var(--color-text-muted);margin-bottom:1.5rem}.tech-grid[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:1.5rem}.tech-item[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-decoration:none;padding:.75rem;border-radius:var(--radius-md);transition:background var(--transition-fast)}.tech-item[data-astro-cid-sz7xmlte]:hover{background:var(--color-surface);text-decoration:none}.tech-icon[data-astro-cid-sz7xmlte]{height:40px;width:auto}.tech-name[data-astro-cid-sz7xmlte]{font-size:.75rem;color:var(--color-text-dim);font-weight:500}.footer-note[data-astro-cid-sz7xmlte]{font-size:.8rem;color:var(--color-text-dim);margin:0}@media screen and (max-width:480px){.tech-grid[data-astro-cid-sz7xmlte]{gap:.75rem}.tech-icon[data-astro-cid-sz7xmlte]{height:32px}}:root{--color-bg: #0a0a0f;--color-surface: #1a1a2e;--color-surface-hover: #222240;--color-border: #2a2a3e;--color-border-light: #3a3a4e;--color-text: #e0e0e0;--color-text-muted: #a0a0b0;--color-text-dim: #707080;--color-accent: #22c55e;--color-accent-hover: #16a34a;--color-accent-glow: rgba(34, 197, 94, .15);--color-link: #4ade80;--color-link-hover: #22c55e;--color-code-bg: #12121e;--color-nav-bg: rgba(10, 10, 15, .85);--font-sans: "Open Sans", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--container-width: 80rem;--container-padding: 1.5rem;--radius-sm: .375rem;--radius-md: .75rem;--radius-lg: 1rem;--transition-fast: .15s ease;--transition-normal: .25s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.7;min-height:100vh}h1,h2,h3,h4{color:#fff;line-height:1.3;font-weight:700}h1{font-size:2.5rem;margin-bottom:1rem}h2{font-size:1.75rem;margin-bottom:.75rem}h3{font-size:1.25rem;margin-bottom:.5rem}p{margin-bottom:1rem;color:var(--color-text)}a{color:var(--color-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-link-hover);text-decoration:underline}.container{width:100%;max-width:var(--container-width);margin:0 auto;padding:0 var(--container-padding)}.section{padding:2rem 0}.section-title{font-size:1.75rem;margin-bottom:2rem}.page-header{padding:3rem 0 1rem;border-bottom:1px solid var(--color-border);margin-bottom:1rem}.page-header h1{font-size:2.25rem}.page-header p{color:var(--color-text-muted);font-size:1.125rem;margin-top:.5rem}.pane{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;padding:1rem 0}.pane-text-left{grid-template-columns:1.2fr .6fr}.pane-text-right{grid-template-columns:.8fr 1.2fr}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.card:hover{border-color:var(--color-border-light);box-shadow:0 4px 24px #0000004d}.screenshot{width:100%;max-width:40rem}.screenshot img{width:100%;height:auto;border-radius:var(--radius-md);border:1px solid var(--color-border)}.screenshot:not(:first-child){margin-top:1.5rem}.lightbox-image{cursor:pointer;transition:opacity var(--transition-fast)}.lightbox-image:hover{opacity:.85}.image-small{width:16rem;height:auto;border-radius:var(--radius-md)}.image-caption{text-align:center;font-size:.8rem;font-style:italic;color:var(--color-text-dim);margin-top:.5rem}.code,code{font-family:var(--font-mono);background-color:var(--color-code-bg);color:var(--color-accent);padding:.15em .4em;border-radius:var(--radius-sm);font-size:.9em}pre{background-color:var(--color-code-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem 1.25rem;overflow-x:auto;margin:1rem 0;font-family:var(--font-mono);font-size:.9em;color:var(--color-text);line-height:1.6}pre code{background:none;padding:0;color:inherit}ul,ol{margin:.5rem 0 1rem 1.5rem}ul{list-style-type:square}li{margin-bottom:.35rem;color:var(--color-text)}li::marker{color:var(--color-accent)}.callout{background-color:#22c55e14;border-left:3px solid var(--color-accent);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:1.25rem 1.5rem;margin:1.5rem 0}.callout p:last-child{margin-bottom:0}.brand{font-weight:700;color:#fff}.package-name,.list-label{font-weight:600;color:#fff}#lightbox{display:none;position:fixed;z-index:100;inset:0;background-color:#00000ae6;align-items:center;justify-content:center;cursor:pointer}#lightbox.active{display:flex}#lightbox-panel{position:relative;display:flex;flex-direction:column;align-items:center;max-width:92vw;max-height:92vh}#lightbox-close-btn{position:absolute;top:-2rem;right:-1rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:50%;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:background var(--transition-fast)}#lightbox-close-btn:hover{background:var(--color-accent)}#lightbox img{max-height:85vh;max-width:90vw;border-radius:var(--radius-md);border:1px solid var(--color-border)}@media screen and (max-width:768px){h1{font-size:1.75rem}h2{font-size:1.35rem}.pane,.pane-text-left,.pane-text-right{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem 0}.screenshot{max-width:100%}.image-caption{text-align:left}.section{padding:2.5rem 0}.page-header{padding:2rem 0 1.5rem;margin-bottom:2rem}}@media screen and (max-width:480px){:root{--container-padding: 1rem}h1{font-size:1.5rem}}.site-nav{position:sticky;top:0;z-index:50;background:var(--color-nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.site-nav-inner{display:flex;align-items:center;height:4rem}.site-nav-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:#fff;flex-shrink:0}.site-nav-brand:hover{text-decoration:none;color:#fff}.site-nav-logo{height:2.25rem;width:auto}.site-nav-name{font-size:1.4rem;font-weight:700;letter-spacing:-.01em}.site-nav-links{display:flex;align-items:center;gap:.25rem;margin-left:auto}.site-nav-link{color:var(--color-text-muted);text-decoration:none;padding:.4rem .75rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;transition:color var(--transition-fast),background var(--transition-fast)}.site-nav-link:hover{color:#fff;background:#ffffff0d;text-decoration:none}.site-nav-link.active{color:var(--color-accent)}.site-nav-github{display:flex;align-items:center;margin-left:.5rem}.doc-layout{display:flex;min-height:calc(100vh - 4rem)}.doc-nav{width:280px;min-width:280px;border-right:1px solid var(--color-border);padding:0 1em 0 0;overflow-y:auto;position:sticky;top:4rem;height:calc(100vh - 4rem)}.doc-nav-header{margin-bottom:1.5em}.doc-nav-header a{color:#fff;text-decoration:none;font-size:1.1em;font-weight:600;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.5em}.doc-nav-header a:hover{text-decoration:none}.doc-nav-header a img{display:block;flex-shrink:0;width:32px;height:32px;max-width:32px;max-height:32px}.doc-nav-header a span{flex:1;white-space:nowrap}.doc-nav ul{list-style:none;padding:1rem 0;margin:0}.doc-nav ul ul{padding:0 0 0 2em}.doc-nav li{margin:.2em 0}.doc-nav ul a{color:var(--color-link);text-decoration:none;display:block;padding:.25em .5em;border-radius:var(--radius-sm);font-size:.9em}.doc-nav ul a:hover{color:var(--color-link-hover);background:#ffffff0d;text-decoration:none}.nav-section{display:block;font-weight:600;color:#fff;padding:.5rem .5rem .2rem;margin-top:.5rem}.doc-main{flex:1;padding:0 2rem 1rem;overflow-y:auto}.help h1{font-size:1.8em;margin:0 0 1em;display:flex;align-items:center;gap:.3em}.help h1:first-child{margin-top:1rem}.help h2{font-size:1.4em;margin:1.5rem 0 .75rem;display:flex;align-items:center;gap:.3em}.help h3{font-size:1.15em;margin:1.2rem 0 .5rem;display:flex;align-items:center;gap:.3em}.help h4,.help h5,.help h6{margin:1rem 0 .5rem}.help p{margin:0 0 .75rem}.help a{color:var(--color-link);text-decoration:none}.help a:hover{color:var(--color-link-hover)}.help ul,.help ol{margin:0 0 .75rem 1.5em}.help ul{list-style-type:square}.help li{margin:.25em 0}.help li::marker{color:var(--color-accent)}.help blockquote{margin:1em 0;padding:1em;background-color:#22c55e14;border-left:3px solid var(--color-accent);border-radius:0 var(--radius-md) var(--radius-md) 0}.help blockquote p{margin:0}.help pre{background-color:var(--color-code-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem 1.25rem;overflow-x:auto;margin:0 0 .75rem;font-family:var(--font-mono);font-size:.9em;color:var(--color-text);line-height:1.6}.help code{font-family:var(--font-mono);background-color:var(--color-code-bg);color:var(--color-accent);padding:.15em .4em;border-radius:var(--radius-sm);font-size:.9em}.help pre code{background:none;padding:0;color:inherit}.help table{border-collapse:collapse;margin:0 0 .75rem;width:100%}.help thead{border-bottom:2px solid var(--color-border-light)}.help td,.help th{padding:.5em .75em;text-align:left}.help th{font-weight:600;color:#fff}.help img,.help .help-image{max-width:80%;margin:1em 0;border-radius:var(--radius-md);border:1px solid var(--color-border)}.help-columns{display:grid;grid-template-columns:auto auto;gap:4em;max-width:80em}.help-columns .help-columns{grid-template-columns:auto auto;gap:0}.help-column{min-width:0}.help-icon{display:inline-flex;align-items:center;vertical-align:middle;width:1.2em;margin-right:.3em}.help-icon svg{width:1.2em;height:1.2em;vertical-align:middle}.help-icon .icon-apicize{width:4em;height:4em;margin:.1em 0;vertical-align:middle}h1:has(.logo){margin:0}.logo{display:flex;align-items:center;margin:0;gap:.5em}.logo-icon img{margin:0;display:block;border:none}.logo-header .logo-title{font-size:2em;margin:0;line-height:1.2}.logo-header .logo-version{font-size:1.2em;margin:0;font-weight:400;color:var(--color-text-muted)}
