.site-footer[data-astro-cid-sz7xmlte]{position:relative;z-index:1;border-top:1px solid var(--border);padding:var(--card-pad-y) var(--card-pad-x);text-align:center}.footer-inner[data-astro-cid-sz7xmlte]{max-width:760px;margin:0 auto}.footer-nav[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-lg);font-size:var(--body-secondary)}.footer-nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--ink-soft);text-decoration:none;transition:color .15s}.footer-nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}.sep[data-astro-cid-sz7xmlte]{color:var(--ink-muted);opacity:.4}.footer-copy[data-astro-cid-sz7xmlte]{font-size:var(--badge-text);color:var(--ink-muted)}.footer-copy[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--ink-muted);text-decoration:none}.footer-copy[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}.starfield[data-astro-cid-rmt2cfs6]{position:fixed;inset:0;z-index:0;pointer-events:none;transition:opacity 1.4s ease}html[data-theme=light] .starfield[data-astro-cid-rmt2cfs6]{opacity:.18}@media(prefers-reduced-motion:reduce){.starfield[data-astro-cid-rmt2cfs6]{transition:opacity .2s linear!important}}.sky[data-astro-cid-auaa2bkf]{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.sky-horizon[data-astro-cid-auaa2bkf]{position:absolute;inset:0;background:radial-gradient(ellipse 70% 90% at 110% 110%,rgba(46,80,124,.1) 0%,transparent 55%);opacity:1;transition:opacity 1.2s ease,background 1.2s ease}html[data-theme=light] .sky-horizon[data-astro-cid-auaa2bkf]{background:radial-gradient(ellipse 80% 100% at 100% 100%,rgba(232,168,124,.1) 0%,rgba(124,168,200,.12) 25%,rgba(124,168,200,.06) 55%,transparent 75%),radial-gradient(ellipse 100% 60% at 50% 100%,rgba(124,168,200,.1) 0%,rgba(124,178,212,.04) 40%,transparent 70%)}.sky-warmth[data-astro-cid-auaa2bkf]{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse 95% 55% at 50% 100%,rgba(245,175,120,.42) 0%,rgba(240,195,155,.22) 28%,transparent 58%),radial-gradient(ellipse 55% 70% at 105% 85%,rgba(245,175,120,.38) 0%,transparent 62%);transition:opacity 1.8s cubic-bezier(.7,0,.84,.4)}html[data-mood=mid][data-surface=light] .sky-warmth[data-astro-cid-auaa2bkf]{opacity:1}html[data-mood=day][data-surface=light] .sky-warmth[data-astro-cid-auaa2bkf],html[data-mood=night] .sky-warmth[data-astro-cid-auaa2bkf]{opacity:0}@media(prefers-reduced-motion:reduce){.sky-warmth[data-astro-cid-auaa2bkf]{transition:opacity .2s linear!important}}.sky-celestial[data-astro-cid-auaa2bkf]{position:absolute;top:10%;right:7%;width:170px;height:170px;pointer-events:none}@media(max-width:640px){.sky-celestial[data-astro-cid-auaa2bkf]{width:110px;height:110px;top:9%;right:5%}}.sky-sun[data-astro-cid-auaa2bkf]{position:absolute;inset:0;filter:drop-shadow(0 0 18px rgba(255,248,220,.55)) drop-shadow(0 0 38px rgba(255,220,150,.42)) drop-shadow(0 0 78px rgba(240,168,104,.28));opacity:0;transform:translate(140px,60px) rotate(-30deg);transition:opacity 1.8s ease .7s,transform 2.6s cubic-bezier(.34,1,.4,1) .4s}.sky-sun-svg[data-astro-cid-auaa2bkf]{width:100%;height:100%;display:block}html[data-theme=light] .sky-sun[data-astro-cid-auaa2bkf]{opacity:1;transform:translate(0) rotate(0)}@media(prefers-reduced-motion:reduce){.sky-sun[data-astro-cid-auaa2bkf],.sky-moon[data-astro-cid-auaa2bkf]{transition:opacity .2s linear!important;transform:none!important}}@media(max-width:640px){.sky-celestial[data-astro-cid-auaa2bkf]{width:75px;height:75px;top:10%;right:6%}}:root{color-scheme:light;--accent: #7cb2d4;--accent-fg: #0C0F16;--accent-warm: #e8a87c;--bg: #0C0F16;--bg-card: #0b1018;--bg-elev: #121a28;--border: rgba(132, 148, 170, .12);--border-accent: rgba(104, 152, 190, .3);--brand-sigma: #7cb2d4;--font-body: "Satoshi", system-ui, sans-serif;--font-display: "Manrope", system-ui, sans-serif;--font-mono: "SF Mono", "Fira Code", "JetBrains Mono", monospace;--ink: #e4eaf4;--ink-muted: #647080;--ink-soft: #9dafc4;--promo: #f0c866;--promo-border: rgba(240, 200, 102, .25);--promo-dim: #c4a24e;--promo-glow: rgba(240, 200, 102, .15);--promo-text: #f0c866;--shadow-accent: rgba(104, 152, 190, .15);--shadow-card: 0 1px 3px rgba(0,0,0,.25), 0 4px 12px rgba(0,0,0,.12);--shadow-elevated: 0 1px 2px rgba(0,0,0,.2), 0 4px 12px rgba(0,0,0,.12), 0 12px 28px rgba(0,0,0,.08);--shadow-elevated-hover: 0 2px 4px rgba(0,0,0,.25), 0 8px 20px rgba(0,0,0,.16), 0 20px 44px rgba(0,0,0,.12);--sun-core: #fff5d4;--sun-deep: #c47852;--sun-mid: #ffd88a;--sun-shadow: #6a2818;--sun-text: #c4520e;--sun-warm: #f0a868;--weight-bold: 700;--weight-display: 800;--weight-medium: 500;--weight-regular: 400;--weight-semibold: 600;--tincture-foundation-version: "0.1.0"}[data-surface=dark]{color-scheme:dark;--accent: #7cb2d4;--accent-fg: #0C0F16;--accent-warm: #e8a87c;--bg: #0C0F16;--bg-card: #0b1018;--bg-elev: #121a28;--border: rgba(132, 148, 170, .12);--border-accent: rgba(104, 152, 190, .3);--ink: #e4eaf4;--ink-muted: #647080;--ink-soft: #9dafc4;--promo: #f0c866;--promo-border: rgba(240, 200, 102, .25);--promo-dim: #c4a24e;--promo-glow: rgba(240, 200, 102, .15);--promo-text: #f0c866;--shadow-accent: rgba(104, 152, 190, .15);--shadow-card: 0 1px 3px rgba(0,0,0,.25), 0 4px 12px rgba(0,0,0,.12);--shadow-elevated: 0 1px 2px rgba(0,0,0,.2), 0 4px 12px rgba(0,0,0,.12), 0 12px 28px rgba(0,0,0,.08);--shadow-elevated-hover: 0 2px 4px rgba(0,0,0,.25), 0 8px 20px rgba(0,0,0,.16), 0 20px 44px rgba(0,0,0,.12)}[data-surface=light]{color-scheme:light;--accent: #2e6094;--accent-fg: #ffffff;--accent-warm: #a85a2a;--bg: #e8eef5;--bg-card: #fafbfc;--bg-elev: #dde5f0;--border: rgba(10, 15, 26, .18);--border-accent: rgba(46, 96, 148, .35);--ink: #0a0f1a;--ink-muted: #4a5a70;--ink-soft: #2a3648;--promo: #ec8430;--promo-border: rgba(232, 144, 72, .4);--promo-dim: #a04210;--promo-glow: rgba(232, 144, 72, .2);--promo-text: #ec8430;--shadow-accent: rgba(46, 96, 148, .2);--shadow-card: 0 1px 4px rgba(0,0,0,.08), 0 4px 14px rgba(0,0,0,.05);--shadow-elevated: 0 1px 2px rgba(8,22,36,.06), 0 6px 16px rgba(8,22,36,.08), 0 18px 36px rgba(8,22,36,.1), 0 32px 64px rgba(46,96,148,.06);--shadow-elevated-hover: 0 2px 4px rgba(8,22,36,.08), 0 12px 24px rgba(8,22,36,.12), 0 28px 56px rgba(8,22,36,.14), 0 48px 96px rgba(46,96,148,.08)}:root{--sky-top: #1a4a80;--sky-upper: #2a6aa8;--sky-mid: #5898cc;--sky-transition: #8898a8;--sky-warm-start: #8a6050;--sky-warm: #783028;--sky-horizon: #602018;--sky-bleed: rgba(190, 55, 20, .55);--sky-bleed-mid: rgba(160, 40, 15, .3);--sky-cloud-low: rgba(195, 60, 22, .42);--sky-cloud-mid: rgba(120, 80, 55, .28);--sky-cloud-high: rgba(70, 110, 155, .3)}[data-mood=night]{--sky-top: #050810;--sky-upper: #0a1024;--sky-mid: #101830;--sky-transition: #161e3c;--sky-warm-start: #20264a;--sky-warm: #1a2040;--sky-horizon: #0c1024;--sky-bleed: rgba(20, 30, 60, .3);--sky-bleed-mid: rgba(15, 22, 44, .18);--sky-cloud-low: rgba(60, 80, 110, .18);--sky-cloud-mid: rgba(80, 100, 140, .14);--sky-cloud-high: rgba(120, 150, 200, .1)}[data-mood=mid]{--sky-top: #1a4a80;--sky-upper: #2a6aa8;--sky-mid: #5898cc;--sky-transition: #8898a8;--sky-warm-start: #8a6050;--sky-warm: #783028;--sky-horizon: #602018;--sky-bleed: rgba(190, 55, 20, .55);--sky-bleed-mid: rgba(160, 40, 15, .3);--sky-cloud-low: rgba(195, 60, 22, .42);--sky-cloud-mid: rgba(120, 80, 55, .28);--sky-cloud-high: rgba(70, 110, 155, .3)}[data-mood=mid][data-surface=light],[data-mood=mid] [data-surface=light]{--sky-top: #a3c5e0;--sky-upper: #b6d3e8;--sky-mid: #c8dfed;--sky-transition: #d6e7f0;--sky-warm-start: #e2ebf2;--sky-warm: #ecf2f7;--sky-horizon: #f3f7fa;--sky-bleed: rgba(220, 235, 248, .2);--sky-bleed-mid: rgba(220, 235, 248, .1);--sky-cloud-low: rgba(255, 240, 220, .65);--sky-cloud-mid: rgba(248, 252, 255, .55);--sky-cloud-high: rgba(225, 238, 248, .4)}[data-mood=day]{--sky-top: #0e5cb0;--sky-upper: #1a78c8;--sky-mid: #3a98d8;--sky-transition: #5aaee0;--sky-warm-start: #8acce8;--sky-warm: #b8dff0;--sky-horizon: #d8eef8;--sky-bleed: rgba(180, 220, 245, .35);--sky-bleed-mid: rgba(160, 210, 238, .18);--sky-cloud-low: rgba(240, 248, 255, .75);--sky-cloud-mid: rgba(200, 230, 248, .4);--sky-cloud-high: rgba(160, 205, 232, .25)}[data-mood=day][data-surface=light],[data-mood=day] [data-surface=light]{--sky-top: #94bcda;--sky-upper: #a8caea;--sky-mid: #bdd9eb;--sky-transition: #cee2ee;--sky-warm-start: #dde9f3;--sky-warm: #e8f0f7;--sky-horizon: #f0f5f9;--sky-bleed: rgba(200, 225, 245, .15);--sky-bleed-mid: rgba(200, 225, 245, .08);--sky-cloud-low: rgba(255, 255, 255, .8);--sky-cloud-mid: rgba(248, 252, 255, .6);--sky-cloud-high: rgba(225, 238, 248, .45)}[data-surface=dark]{--surface-card: rgba(11, 16, 24, .7);--surface-card-strong: rgba(11, 16, 24, .85);--surface-overlay: rgba(0, 0, 0, .3);--surface-interactive: rgba(255, 255, 255, .06);--surface-interactive-hover: rgba(255, 255, 255, .12);--surface-accent-soft: rgba(104, 152, 190, .12);--surface-warm-soft: rgba(232, 168, 124, .1);--surface-inset-highlight: rgba(255, 255, 255, .04);--shadow-accent-soft: rgba(104, 152, 190, .15);--shadow-accent-mid: rgba(104, 152, 190, .25)}[data-surface=light]{--surface-card: rgba(245, 250, 254, .92);--surface-card-strong: rgba(250, 253, 255, .97);--surface-overlay: rgba(8, 22, 36, .22);--surface-interactive: rgba(8, 22, 36, .07);--surface-interactive-hover: rgba(8, 22, 36, .13);--surface-accent-soft: rgba(21, 85, 160, .1);--surface-warm-soft: rgba(200, 90, 40, .08);--surface-inset-highlight: rgba(255, 255, 255, .55);--shadow-accent-soft: rgba(21, 85, 160, .18);--shadow-accent-mid: rgba(21, 85, 160, .3);--surface-warm-soft: rgba(232, 144, 72, .12)}.tincture-debug [data-mood=night]{outline:2px dashed #4a5a90}.tincture-debug [data-mood=mid]{outline:2px dashed #d04020}.tincture-debug [data-mood=day]{outline:2px dashed #1a78c8}:root{--space-xs: .188rem;--space-sm: .313rem;--space-md: .5rem;--space-lg: .813rem;--space-xl: 1.313rem;--space-2xl: 2.125rem;--space-3xl: 3.438rem;--space-4xl: 5.563rem;--text-xs: .813rem;--text-sm: .938rem;--text-base: .938rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2.25rem;--body-text: var(--text-md);--body-secondary: var(--text-base);--label-text: var(--text-sm);--badge-text: var(--text-xs);--list-text: var(--text-base);--list-leading: var(--leading-normal);--content-narrow: 560px;--content-wide: 610px;--card-pad-y: var(--space-2xl);--card-pad-x: var(--space-xl);--section-gap: var(--space-3xl);--grid-gap: var(--space-xl);--leading-none: 1;--leading-tight: 1.2;--leading-normal: 1.4;--leading-relaxed: 1.618;--leading-loose: 1.8;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 13px;--radius-xl: 21px;--radius-full: 9999px;--accent-mid: #5282a8;--accent-dark: #3e6c92;--moon-bright: #7cb2d4;--moon-mid: #669cc0;--moon-glow: rgba(124, 178, 212, .4);--warm-bright: #e8a87c;--warm-mid: #d4926a;--warm-glow: rgba(232, 168, 124, .3);--shadow-accent-soft: rgba(104, 152, 190, .15);--shadow-accent-mid: rgba(104, 152, 190, .25);--shadow-warm-soft: rgba(232, 168, 124, .15);--hero-title-start: var(--ink);--hero-title-end: var(--accent);--logo-glow: rgba(104, 152, 190, .35);--logo-glow-hover: rgba(124, 178, 212, .5)}[data-surface=light]{--accent-mid: #245080;--accent-dark: #1a3d66;--moon-bright: #2870b0;--moon-mid: #1e5a98;--moon-glow: rgba(21, 85, 160, .25);--warm-bright: #c0682a;--warm-mid: #a05222;--warm-glow: rgba(200, 90, 40, .22);--logo-glow: rgba(21, 85, 160, .22);--logo-glow-hover: rgba(21, 85, 160, .4)}html[data-surface=light] body{background:none!important}body:before{content:"";position:fixed;inset:0;z-index:-1;opacity:0;transition:opacity 1.6s ease,background 1.4s ease;background:linear-gradient(to bottom,var(--sky-top) 0%,var(--sky-upper) 12%,var(--sky-mid) 32%,var(--sky-transition) 52%,var(--sky-warm-start) 68%,var(--sky-warm) 82%,var(--sky-horizon) 100%);pointer-events:none}html[data-surface=light] body:before{opacity:1}@media(prefers-reduced-motion:reduce){body:before{transition:opacity .2s linear!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;transition:background-color .8s ease,color .6s ease}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);line-height:var(--leading-relaxed);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .8s ease,color .6s ease}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);line-height:var(--leading-tight);letter-spacing:-.02em}h1{font-weight:var(--weight-display);font-size:clamp(2.25rem,6vw,3.5rem);letter-spacing:-.025em}h2{font-weight:var(--weight-bold);font-size:clamp(1.5rem,3.5vw,2.25rem)}h3{font-weight:var(--weight-semibold);font-size:clamp(1.125rem,2.5vw,1.5rem)}h4{font-weight:var(--weight-semibold);font-size:var(--text-lg)}*:not(script):not(style){transition:background-color .6s ease,border-color .5s ease,color .5s ease,box-shadow .5s ease}html.no-transition,html.no-transition *,html.no-transition *:before,html.no-transition *:after{transition:none!important}::selection{background:var(--accent);color:var(--bg)}.noise-overlay{pointer-events:none;position:fixed;inset:0;z-index:1;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}html[data-theme=light] .noise-overlay{opacity:.05;mix-blend-mode:multiply}.glow-orbs{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;transition:opacity 1.4s ease}.glow-orb{position:absolute;border-radius:50%;mix-blend-mode:screen;transition:background 1.6s ease,transform 1.8s ease,opacity 1.4s ease}.glow-orb-1{top:-10%;left:10%;width:600px;height:600px;background:radial-gradient(circle,rgba(104,152,190,.12) 0%,transparent 70%);animation:orbDrift1 25s ease-in-out infinite}.glow-orb-2{bottom:-5%;right:5%;width:500px;height:500px;background:radial-gradient(circle,rgba(124,178,212,.1) 0%,transparent 70%);animation:orbDrift2 30s ease-in-out infinite}.glow-orb-3{top:40%;right:25%;width:400px;height:400px;background:radial-gradient(circle,rgba(232,168,124,.07) 0%,transparent 70%);animation:orbDrift3 35s ease-in-out infinite}@keyframes orbDrift1{0%,to{transform:translate(0)}33%{transform:translate(40px,30px)}66%{transform:translate(-20px,50px)}}@keyframes orbDrift2{0%,to{transform:translate(0)}33%{transform:translate(-30px,-40px)}66%{transform:translate(25px,-20px)}}@keyframes orbDrift3{0%,to{transform:translate(0)}50%{transform:translate(-35px,25px)}}html[data-theme=light] .glow-orbs{opacity:.65}html[data-theme=light] .glow-orb{mix-blend-mode:multiply;border-radius:50%;transform:scale(1.6,.35) rotate(-8deg)}html[data-theme=light] .glow-orb-1{background:radial-gradient(ellipse,rgba(46,96,148,.16) 0%,rgba(46,96,148,.04) 50%,transparent 75%);transform:scale(1.7,.3) rotate(-6deg)}html[data-theme=light] .glow-orb-2{background:radial-gradient(ellipse,rgba(46,96,148,.14) 0%,rgba(46,96,148,.03) 55%,transparent 80%);transform:scale(2,.32) rotate(4deg)}html[data-theme=light] .glow-orb-3{background:radial-gradient(ellipse,rgba(232,168,124,.1) 0%,rgba(232,168,124,.02) 60%,transparent 80%);transform:scale(1.5,.28) rotate(-12deg)}@media(prefers-reduced-motion:reduce){.glow-orb{animation:none!important}}html[data-theme=light] code,html[data-theme=light] code span{color:var(--shiki-light)!important;background-color:var(--shiki-light-bg, transparent)!important;font-style:var(--shiki-light-font-style)!important;font-weight:var(--shiki-light-font-weight)!important;text-decoration:var(--shiki-light-text-decoration)!important}html[data-theme=light] pre.astro-code,html[data-theme=light] pre[class*=language-]{background-color:#f6f8fa!important;border:1px solid var(--border)}.site-content{padding-top:55px}.skip-to-content{position:absolute;top:-100%;left:var(--space-lg);z-index:200;padding:var(--space-md) var(--space-xl);background:var(--accent);color:var(--bg);font-family:var(--font-body);font-size:var(--label-text);font-weight:600;border-radius:var(--radius-md);text-decoration:none;transition:top .2s ease}.skip-to-content:focus{top:var(--space-md)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
