.site-header[data-astro-cid-3ef6ksr2]{position:fixed;top:1rem;right:1rem;bottom:1rem;width:calc(var(--app-sidebar-width) - 1.35rem);z-index:100;overflow:hidden;isolation:isolate;border:1px solid rgba(240,237,230,.18);border-radius:8px;background:linear-gradient(180deg,#111514,#090b0b 58%,#050606);box-shadow:-18px 0 42px #0000007a,0 22px 60px #00000073,inset 0 1px #f0ede61f;--nav-line: rgba(240, 237, 230, .13);--nav-muted: rgba(240, 237, 230, .56);--nav-soft: rgba(240, 237, 230, .72)}.site-header[data-astro-cid-3ef6ksr2]:before,.site-header[data-astro-cid-3ef6ksr2]:after{content:"";position:absolute;pointer-events:none}.site-header[data-astro-cid-3ef6ksr2]:before{inset:0;z-index:-1;background:repeating-linear-gradient(135deg,rgba(240,237,230,.05) 0,rgba(240,237,230,.05) 1px,transparent 1px,transparent 13px),linear-gradient(180deg,rgba(0,255,65,.075),transparent 34%),radial-gradient(circle at 100% 0%,rgba(200,169,110,.16),transparent 34%);opacity:.82}.site-header[data-astro-cid-3ef6ksr2]:after{top:1.25rem;bottom:0;left:0;width:3px;background:linear-gradient(180deg,transparent,#00ff41,#c8a96e,transparent);opacity:.86}.nav-inner[data-astro-cid-3ef6ksr2]{position:relative;height:100%;padding:1.05rem 1.05rem .95rem;display:flex;flex-direction:column;align-items:stretch;gap:1.45rem}.nav-top[data-astro-cid-3ef6ksr2]{display:grid;gap:.62rem;padding:.15rem 0 1.2rem;border-bottom:1px solid var(--nav-line)}.nav-logo[data-astro-cid-3ef6ksr2]{display:inline-grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.62rem;width:fit-content;font-family:var(--ff-mono);font-weight:800;font-size:1.08rem;letter-spacing:0;flex-shrink:0;color:#f0ede6;transition:color .2s,opacity .2s}.nav-logo[data-astro-cid-3ef6ksr2]:hover{color:#00ff41}.logo-mark[data-astro-cid-3ef6ksr2]{position:relative;color:#00ff41;font-size:.68rem;font-weight:700;letter-spacing:.08em;line-height:1;text-transform:uppercase}.logo-mark[data-astro-cid-3ef6ksr2]:after{content:"/";position:absolute;right:-.44rem;color:#f0ede67a;font-weight:400}.logo-name[data-astro-cid-3ef6ksr2]{min-width:0;color:inherit;line-height:1;text-transform:lowercase}.logo-domain[data-astro-cid-3ef6ksr2]{color:var(--nav-muted);font-weight:500}.nav-logo[data-astro-cid-3ef6ksr2]:hover .logo-domain[data-astro-cid-3ef6ksr2]{color:color-mix(in srgb,#00ff41 64%,#f0ede6)}.nav-context[data-astro-cid-3ef6ksr2]{color:var(--nav-muted);font-family:var(--ff-mono);font-size:.62rem;letter-spacing:.08em;line-height:1;text-transform:uppercase}.nav-links[data-astro-cid-3ef6ksr2]{display:grid;gap:0;list-style:none}.nav-item[data-astro-cid-3ef6ksr2]{position:relative}.nav-item[data-astro-cid-3ef6ksr2]:after{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--nav-line);opacity:.72}.nav-link[data-astro-cid-3ef6ksr2]{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(5.8rem,auto);align-items:center;gap:1rem;min-height:70px;padding:.9rem 0;font-family:var(--ff-mono);color:var(--nav-soft);background:transparent;overflow:visible;isolation:isolate;transition:color .2s}.nav-link[data-astro-cid-3ef6ksr2]:before{content:"";position:absolute;inset:0 -1.05rem;z-index:0;background:linear-gradient(90deg,rgba(0,255,65,.16),rgba(0,255,65,.06) 34%,transparent 82%),linear-gradient(90deg,rgba(200,169,110,.1),transparent 42%);opacity:0;transition:opacity .2s}.nav-link[data-astro-cid-3ef6ksr2]:hover,.nav-link[data-astro-cid-3ef6ksr2]:focus-visible,.nav-item--active[data-astro-cid-3ef6ksr2] .nav-link[data-astro-cid-3ef6ksr2]{color:#f0ede6}.nav-link[data-astro-cid-3ef6ksr2]:hover:before,.nav-link[data-astro-cid-3ef6ksr2]:focus-visible:before,.nav-item--active[data-astro-cid-3ef6ksr2] .nav-link[data-astro-cid-3ef6ksr2]:before{opacity:1}.nav-copy[data-astro-cid-3ef6ksr2]{position:relative;z-index:1;min-width:0;display:grid;gap:.28rem}.nav-eyebrow[data-astro-cid-3ef6ksr2]{color:var(--nav-muted);font-size:.56rem;letter-spacing:.12em;line-height:1;text-transform:uppercase}.nav-label[data-astro-cid-3ef6ksr2]{display:flex;align-items:baseline;min-width:0;gap:.36rem;color:inherit;font-size:.92rem;font-weight:700;letter-spacing:.02em;line-height:1.05;text-transform:uppercase}.link-slash[data-astro-cid-3ef6ksr2]{color:#00ff41;font-weight:400}.nav-metrics[data-astro-cid-3ef6ksr2]{position:relative;z-index:1;grid-column:2;display:grid;justify-items:end;gap:.36rem}.nav-metric[data-astro-cid-3ef6ksr2]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.38rem;width:7rem;min-width:0}.nav-metric-label[data-astro-cid-3ef6ksr2],.nav-metric-value[data-astro-cid-3ef6ksr2]{font-size:.54rem;line-height:1;text-transform:uppercase}.nav-metric-label[data-astro-cid-3ef6ksr2]{color:var(--nav-muted);min-width:0;overflow-wrap:anywhere;text-align:right}.nav-metric-value[data-astro-cid-3ef6ksr2]{color:#00ff41;font-weight:700}.theme-toggle[data-astro-cid-3ef6ksr2]{appearance:none;margin-top:auto;border:1px solid var(--nav-line);border-radius:var(--radius);background:#f0ede60b;color:var(--nav-muted);font-family:var(--ff-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:38px;padding:.45rem .62rem;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.theme-toggle[data-astro-cid-3ef6ksr2]:hover{border-color:#00ff41;color:#f0ede6}.theme-toggle-track[data-astro-cid-3ef6ksr2]{width:26px;height:12px;border:1px solid var(--nav-line);background:#050606;position:relative;flex:0 0 auto}.theme-toggle-thumb[data-astro-cid-3ef6ksr2]{position:absolute;top:2px;left:2px;width:6px;height:6px;background:#00ff41;box-shadow:0 0 8px #00ff4133;transition:transform .25s var(--ease-out-expo)}html[data-theme=light] .theme-toggle-thumb[data-astro-cid-3ef6ksr2]{transform:translate(14px)}@media(max-width:920px){.site-header[data-astro-cid-3ef6ksr2]{top:max(.75rem,env(safe-area-inset-top));right:auto;bottom:auto;left:50%;transform:translate(-50%);width:min(calc(100% - 1rem),44rem);height:auto;border:1px solid rgba(240,237,230,.18)}.nav-inner[data-astro-cid-3ef6ksr2]{height:auto;min-height:0;padding:.7rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.62rem .72rem}.nav-top[data-astro-cid-3ef6ksr2]{display:block;padding:0;border-bottom:0;min-width:0}.nav-links[data-astro-cid-3ef6ksr2]{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:.34rem;width:100%;min-width:0}.nav-item[data-astro-cid-3ef6ksr2]:after,.nav-context[data-astro-cid-3ef6ksr2],.nav-eyebrow[data-astro-cid-3ef6ksr2]{display:none}.nav-link[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;min-width:0;min-height:40px;gap:0;padding:.54rem .42rem;border:1px solid var(--nav-line);background:#f0ede60b;transform:none}.nav-link[data-astro-cid-3ef6ksr2]:before{display:none}.nav-link[data-astro-cid-3ef6ksr2]:hover,.nav-link[data-astro-cid-3ef6ksr2]:focus-visible,.nav-item--active[data-astro-cid-3ef6ksr2] .nav-link[data-astro-cid-3ef6ksr2]{border-color:#00ff415c;background:linear-gradient(180deg,#00ff411f,#00ff410b),#f0ede60b;transform:none}.nav-metrics[data-astro-cid-3ef6ksr2]{display:none}.nav-copy[data-astro-cid-3ef6ksr2]{display:block}.nav-label[data-astro-cid-3ef6ksr2]{justify-content:center;gap:0;width:100%;font-size:.68rem;line-height:1;text-align:center;white-space:nowrap}.link-slash[data-astro-cid-3ef6ksr2]{display:none}.theme-toggle[data-astro-cid-3ef6ksr2]{grid-column:2;grid-row:1;margin-top:0;min-height:36px}}@media(max-width:520px){.theme-toggle[data-astro-cid-3ef6ksr2]{gap:0;padding:.42rem}.theme-toggle-label[data-astro-cid-3ef6ksr2]{display:none}.nav-links[data-astro-cid-3ef6ksr2]{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-item[data-astro-cid-3ef6ksr2]:last-child{grid-column:1 / -1}}@media(max-width:360px){.site-header[data-astro-cid-3ef6ksr2]{width:calc(100% - .7rem)}.nav-inner[data-astro-cid-3ef6ksr2]{padding:.55rem;gap:.5rem}.nav-links[data-astro-cid-3ef6ksr2]{gap:.24rem}.nav-link[data-astro-cid-3ef6ksr2]{min-height:36px;padding-inline:.24rem}.nav-label[data-astro-cid-3ef6ksr2]{font-size:.6rem}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border);margin-top:4rem;padding:3rem 1.5rem 1.5rem}.footer-inner[data-astro-cid-sz7xmlte]{max-width:1400px;margin:0 auto 2.5rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer-logo[data-astro-cid-sz7xmlte]{font-family:var(--ff-mono);font-weight:700;font-size:1rem;color:var(--green);display:block;margin-bottom:.75rem;letter-spacing:-.02em}.footer-desc[data-astro-cid-sz7xmlte]{font-family:var(--ff-ibm);font-size:.75rem;color:var(--muted);line-height:1.7;font-style:italic}.footer-section-label[data-astro-cid-sz7xmlte]{font-family:var(--ff-mono);font-size:.65rem;color:var(--green);letter-spacing:.1em;display:block;margin-bottom:.75rem;opacity:.7}.footer-center[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte],.footer-right[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;display:flex;flex-direction:column;gap:.4rem}.footer-center[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte],.footer-right[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-family:var(--ff-ibm);font-size:.78rem;color:var(--muted);transition:color .2s;display:inline-block}.footer-center[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover,.footer-right[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--amber)}.footer-bottom[data-astro-cid-sz7xmlte]{max-width:1400px;margin:0 auto;padding-top:1.5rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:1rem}.footer-copy[data-astro-cid-sz7xmlte]{font-family:var(--ff-mono);font-size:.7rem;color:var(--muted)}.green-text[data-astro-cid-sz7xmlte]{color:var(--green)}.footer-build[data-astro-cid-sz7xmlte]{font-family:var(--ff-ibm);font-size:.65rem;font-style:italic;color:var(--border-2);letter-spacing:.05em}@media(max-width:768px){.footer-inner[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr}.footer-left[data-astro-cid-sz7xmlte]{grid-column:1 / -1}.footer-build[data-astro-cid-sz7xmlte]{display:none}}@media(max-width:480px){.footer-inner[data-astro-cid-sz7xmlte]{grid-template-columns:1fr}}:root{color-scheme:dark;--bg: #0a0a0a;--surface: #141414;--surface-2: #1e1e1e;--border: #2a2a2a;--border-2: #3a3a3a;--green: #00ff41;--green-dim: #00c832;--green-glow:rgba(0, 255, 65, .12);--green-wash:rgba(0, 255, 65, .08);--green-border: rgba(0, 255, 65, .2);--green-border-strong: rgba(0, 255, 65, .35);--amber: #c8a96e;--amber-dim: #9a7d4a;--amber-wash: rgba(200, 169, 110, .08);--amber-border: rgba(200, 169, 110, .2);--amber-border-strong: rgba(200, 169, 110, .3);--blue: #4a9eff;--blue-glow: rgba(74, 158, 255, .28);--blue-wash: rgba(74, 158, 255, .08);--blue-border: rgba(74, 158, 255, .2);--blue-border-strong: rgba(74, 158, 255, .35);--cream: #f0ede6;--muted: #666;--header-bg: rgba(16, 18, 17, .78);--header-glass: linear-gradient(180deg, rgba(240, 237, 230, .12), rgba(240, 237, 230, .035));--header-highlight: rgba(240, 237, 230, .16);--header-shadow: 0 0 0 1px rgba(0, 255, 65, .08), 0 18px 48px rgba(0, 0, 0, .55), inset 0 1px 0 rgba(240, 237, 230, .12);--body-scanline: rgba(240, 237, 230, .035);--noise-opacity: .6;--noise-blend: overlay;--selection-text: var(--bg);--grid-green-line: rgba(0, 255, 65, .035);--grid-blue-line: rgba(74, 158, 255, .04);--specimen-bg: linear-gradient(180deg, #0d0d0d 0%, #0a0a0a 100%);--specimen-grid-line: rgba(255, 255, 255, .035);--code-panel-bg: #0d1117;--code-panel-text: #f0f6fc;--code-panel-border: rgba(240, 246, 252, .14);--code-panel-shadow: 0 18px 48px rgba(0, 0, 0, .32), inset 0 1px 0 rgba(255, 255, 255, .05);--code-inline-bg: rgba(240, 246, 252, .08);--code-inline-border: rgba(240, 246, 252, .12);--code-inline-text: #7ee787;--hero-shade: rgba(0, 0, 0, .35);--blue-panel-gradient: linear-gradient(180deg, rgba(74, 158, 255, .08), rgba(20, 20, 20, .72));--swift-hero-wash: rgba(74, 158, 255, .18);--ff-mono: "JetBrains Mono", "ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--ff-code: "Fira Code", "ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--ff-ibm: "IBM Plex Mono", "ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--ff-space: "Space Mono", "ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--radius: 2px;--gap: 1rem;--app-sidebar-width: 300px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1)}html[data-theme=light]{color-scheme:light;--bg: #f4f0e7;--surface: #fffaf0;--surface-2: #ebe4d5;--border: #d6ccba;--border-2: #9d8f79;--green: #007a2f;--green-dim: #005f24;--green-glow: rgba(0, 122, 47, .16);--green-wash: rgba(0, 122, 47, .08);--green-border: rgba(0, 122, 47, .22);--green-border-strong: rgba(0, 122, 47, .36);--amber: #704600;--amber-dim: #5a3800;--amber-wash: rgba(139, 94, 18, .08);--amber-border: rgba(139, 94, 18, .22);--amber-border-strong: rgba(139, 94, 18, .34);--blue: #1f5d9e;--blue-glow: rgba(31, 93, 158, .18);--blue-wash: rgba(31, 93, 158, .08);--blue-border: rgba(31, 93, 158, .22);--blue-border-strong: rgba(31, 93, 158, .36);--cream: #413018;--muted: #786a58;--header-bg: rgba(255, 250, 240, .76);--header-glass: linear-gradient(180deg, rgba(255, 250, 240, .82), rgba(235, 228, 213, .24));--header-highlight: rgba(255, 250, 240, .82);--header-shadow: 0 0 0 1px rgba(139, 94, 18, .14), 0 18px 42px rgba(65, 48, 24, .12), inset 0 1px 0 rgba(255, 250, 240, .9);--body-scanline: rgba(65, 48, 24, .035);--noise-opacity: .22;--noise-blend: multiply;--selection-text: #fffaf0;--grid-green-line: rgba(0, 122, 47, .07);--grid-blue-line: rgba(31, 93, 158, .06);--specimen-bg: linear-gradient(180deg, #fffaf0 0%, #f4f0e7 100%);--specimen-grid-line: rgba(65, 48, 24, .055);--code-panel-bg: #0d1117;--code-panel-text: #f0f6fc;--code-panel-border: rgba(240, 246, 252, .14);--code-panel-shadow: 0 18px 42px rgba(65, 48, 24, .14), inset 0 1px 0 rgba(255, 255, 255, .05);--code-inline-bg: rgba(65, 48, 24, .08);--code-inline-border: rgba(65, 48, 24, .14);--code-inline-text: #704600;--hero-shade: rgba(244, 240, 231, .56);--blue-panel-gradient: linear-gradient(180deg, rgba(31, 93, 158, .08), rgba(255, 250, 240, .72));--swift-hero-wash: rgba(31, 93, 158, .12)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--cream);font-family:var(--ff-ibm);font-size:14px;line-height:1.6;min-height:100dvh;padding-right:var(--app-sidebar-width);display:flex;flex-direction:column}main{flex:1}@media(max-width:920px){body{padding-right:0}main{padding-top:calc(7.75rem + env(safe-area-inset-top))}}@media(max-width:520px){main{padding-top:calc(10.5rem + env(safe-area-inset-top))}}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}body:after{content:"";position:fixed;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,var(--body-scanline) 2px,var(--body-scanline) 4px);pointer-events:none;z-index:9998}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");background-size:256px 256px;pointer-events:none;z-index:9999;opacity:var(--noise-opacity);mix-blend-mode:var(--noise-blend)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--green-dim)}::selection{background:var(--green);color:var(--selection-text)}:focus-visible{outline:1px solid var(--green);outline-offset:3px}pre,code,kbd,samp{font-family:var(--ff-code)}html[data-theme=light] pre{background:var(--code-panel-bg)!important;color:var(--code-panel-text)!important}html[data-theme=light] code:not(pre code){background:var(--code-inline-bg);color:var(--code-inline-text)}html[data-theme=light] pre code{color:var(--code-panel-text)}html[data-theme=light] .line,html[data-theme=light] .ln,html[data-theme=light] .com{color:#8b949e!important}html[data-theme=light] .tag,html[data-theme=light] .sel,html[data-theme=light] .t-str,html[data-theme=light] .str{color:#7ee787!important}html[data-theme=light] .attr,html[data-theme=light] .prop,html[data-theme=light] .type,html[data-theme=light] .t-prep{color:#79c0ff!important}html[data-theme=light] .val,html[data-theme=light] .kw,html[data-theme=light] .t-fn{color:#ff7b72!important}
