:root{color-scheme:dark;--bg:#0b0e14;--bg-deep:#07080e;--panel:#11151d;--panel-2:#161b25;--line:#3e4a5c;--line-2:#526078;--fg:#e6edf3;--prose:#c9d1d9;--muted:#a0a8b3;--faint:#7d8590;--accent:#e0a4cc;--accent-ink:#0b0e14;--accent-hover:#ebbcdb;--on-grad:#140c12;--kw:#8a9ad0;--fn:#c4a4b8;--str:#ffa588;--num:#7ee8a8;--prop:#e89870;--comment:#84909c;--ok:#7ee8a8;--warn:#f5b23a;--nex-blue:#3d6fe0;--nex-indigo:#6c4cd6;--nex-magenta:#e0388f;--nex-amber:#f26b3a;--nex-grad:linear-gradient(105deg, #3d6fe0, #6c4cd6 30%, #a23bc9 52%, #e0388f 72%, #f26b3a 90%, #f5b23a);--nex-grad-v:linear-gradient(180deg, #3d6fe0, #6c4cd6 30%, #a23bc9 52%, #e0388f 72%, #f26b3a 90%, #f5b23a);--nex-grad-text:var(--nex-grad);--nex-grad-soft:linear-gradient(110deg, #3d6fe029, #6c4cd624, #e0388f24, #f26b3a29);--hue-accent:#e0a4cc;--hue-blue:#3d6fe0;--hue-indigo:#6c4cd6;--hue-purple:#a23bc9;--hue-magenta:#e0388f;--hue-orange:#f26b3a;--hue-amber:#f5b23a;--hue-ok:#4ade80;--hue-hot:#f26b3a;--selection:#e0a4cc4d;--hover:#ffffff08;--accent-glow:0 0 0 5px #e0a4cc29, 0 0 18px #e0a4cc80;--mark-glow:0 0 18px #e0388f59;--str-wash:#ffa58829;--warn-wash:#f5b23a14;--warn-line:#f5b23a59;--theme-color:#07080e;--shadow-1:1px 2px 3px #0009, inset 1px 1px 0 #ffffff17, inset -1px -1px 0 #0006;--shadow-2:1px 2px 4px #0000008c, 8px 16px 30px -10px #000000d9, inset 1px 1px 0 #ffffff1c, inset -1px -1px 0 #00000073;--shadow-3:2px 4px 8px #0000008c, 14px 28px 50px -16px #000000e6, 0 0 36px -8px #6c4cd647, inset 1px 1px 0 #ffffff21, inset -1px -1px 0 #00000080;--shadow-4:3px 8px 16px #0009, 20px 40px 70px -20px #000000f2, 0 0 48px -10px #e0388f3d, 0 0 36px -12px #5070d638, inset 1px 1px 0 #ffffff24, inset -1px -1px 0 #00000080;--btn-shadow-hover:var(--shadow-2);--btn-primary-shadow:inset 1px 1px 0 #ffffff80, inset -1px -1px 0 #50143c59, 1px 2px 3px #0000008c, 6px 12px 26px -10px #e0a4cc8c;--btn-primary-shadow-hover:inset 1px 1px 0 #ffffff8c, inset -1px -1px 0 #50143c59, 2px 5px 9px #00000080, 9px 18px 34px -12px #e0a4cca6;--btn-focus-shadow:0 0 0 4px #e0a4cc3d;--btn-lift:-1px;--shadow-ticket:var(--shadow-4);--shadow-chat:var(--shadow-3);--menu-shadow:var(--shadow-4);--page-bg:radial-gradient(880px 480px at 8% -10%, #e0388f1c, transparent 60%), radial-gradient(800px 440px at 96% -8%, #5070d61f, transparent 58%), radial-gradient(600px 380px at 74% 40%, #a23bc90d, transparent 62%), radial-gradient(500px 300px at 8% 76%, #e0388f0b, transparent 64%), #0b0e14;--header-bg:linear-gradient(180deg, #ffffff0d, #fff0 46%), #0e131c;--header-bg-stuck:linear-gradient(180deg, #ffffff0f, #fff0 50%), #0c1018;--header-bg-solid:#0c1018;--header-blur:16px;--header-shadow-stuck:0 12px 28px -14px #000000d9, inset 0 1px 0 #ffffff0d;--code-bg:#10141e;--code-shadow:var(--shadow-2);--pill-bg:#151c28e0;--ticket-bg:linear-gradient(150deg, #141a26 0%, #0e131c 100%);--ticket-edge:.78;--card-edge:.9;--selected-shadow:0 0 0 1px var(--accent) inset, 0 0 24px -4px #e0a4cc52, 0 14px 30px -14px #e0388f61, inset 0 1px 0 #ffffff0f;--chat-bg:#10141e;--chat-top:#1a2332d6;--frost:14px;--rail-active:#332d3a;--dot-grid:radial-gradient(#d6cee633 .65px, transparent .75px);--figure-bg:#141a26;--block-shadow:var(--shadow-2);--block-primary-shadow:var(--shadow-3), 0 0 0 4px color-mix(in srgb, var(--accent) 16%, transparent);--edge:var(--line-2);--raised:#141a26;--surface:linear-gradient(150deg, #1f2636 0%, #151a25 44%, #0e1219 100%);--surface-raised:linear-gradient(150deg, #252e40 0%, #18202c 44%, #10151e 100%);--btn-primary-bg:linear-gradient(150deg, #ffffff57, #fff0 55%, #3c0a281f), var(--accent);--btn-primary-bg-hover:linear-gradient(150deg, #fff6, #fff0 55%, #3c0a281a), var(--accent-hover);--well:#090c12;--well-shadow:inset 1px 1px 3px #0000008c, inset -1px -1px 0 #ffffff0a;--bevel-border:#4a5870 #2f3848 #222a37 #435069;--control-bg:linear-gradient(150deg, #29334a 0%, #1a2130 52%, #131925 100%);--control-bg-hover:linear-gradient(150deg, #313c55 0%, #1e2637 52%, #151c29 100%);--control-shadow:1px 2px 3px #0009, 3px 6px 12px -4px #0009, inset 1px 1px 0 #ffffff24, inset -1px -1px 0 #00000073;--control-shadow-hover:2px 4px 6px #0000008c, 6px 12px 22px -8px #000000b3, 0 0 18px -6px #e0a4cc59, inset 1px 1px 0 #ffffff2e, inset -1px -1px 0 #00000073;--control-shadow-active:inset 2px 2px 5px #0009, inset -1px -1px 0 #ffffff0f;--btn-primary-shadow-active:inset 2px 2px 5px #50143c73, inset -1px -1px 0 #ffffff4d;--grain:.07;--grain-blend:soft-light;--chrome-bg:#f5f5f4;--chrome-fg:#1c1917;--chrome-bar:#e7e5e4;--chrome-dot:#c8c4c0;--chrome-url-bg:#fff;--chrome-url-fg:#57534e;--chrome-line:#e7e5e4;--chrome-muted:#78716c;--chrome-field-line:#d6d3d1;--chrome-field-bg:#fff;--chrome-caret:#b4532a;--chrome-btn:#b4532a;--chrome-btn-fg:#fff;--astro-code-foreground:var(--fg);--astro-code-background:var(--code-bg);--astro-code-token-keyword:var(--kw);--astro-code-token-function:var(--fn);--astro-code-token-string:var(--str);--astro-code-token-string-expression:var(--str);--astro-code-token-constant:var(--num);--astro-code-token-parameter:var(--prop);--astro-code-token-comment:var(--comment);--astro-code-token-punctuation:var(--muted);--astro-code-token-link:var(--accent);--font-body:"Space Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-serif:"Instrument Serif", Georgia, serif;--radius:12px;--header-h:60px}:root[data-theme=light]{color-scheme:light;--bg:#f4f2f8;--bg-deep:#e8e4f1;--panel:#fffcfe;--panel-2:#fff;--line:#e4dce8;--line-2:#74829b;--fg:#161d2b;--prose:#1e2838;--muted:#3c4b60;--faint:#4e5e74;--accent:#882d5a;--accent-ink:#f8f9fc;--accent-hover:#9a3468;--kw:#2f3f86;--fn:#7a3d58;--str:#9a3412;--num:#0a6234;--prop:#9a3f12;--comment:#4a5868;--ok:#0a6234;--warn:#7a4e00;--nex-amber:#b53c0a;--nex-grad-text:linear-gradient(105deg, #1e40af, #5b21b6 30%, #7e22ce 52%, #9d174d 72%, #9a3412 90%, #7a4e00);--hue-accent:#882d5a;--hue-blue:#1e40af;--hue-indigo:#5b21b6;--hue-purple:#7e22ce;--hue-magenta:#9d174d;--hue-orange:#9a3412;--hue-amber:#7a4e00;--hue-ok:#0a6234;--hue-hot:#b53c0a;--selection:#882d5a2e;--hover:#882d5a0f;--str-wash:#9a34121f;--warn-wash:#7a4e001a;--warn-line:#7a4e0073;--theme-color:#f4f2f8;--shadow-1:.5px 1px 1px #4824580f, 1px 2px 3px #30408c0d, inset 1px 1px 0 #ffffffe6, inset -1px -1px 0 #4824580a;--shadow-2:1px 2px 3px #4824580f, 6px 12px 22px -10px #78346e2e, 2px 4px 8px -3px #374ea01a, inset 1px 1px 0 #fff, inset -1px -1px 0 #4824580d;--shadow-3:1px 3px 5px #4824580f, 10px 22px 40px -16px #802c6433, 4px 8px 16px -6px #3248a01f, inset 1px 1px 0 #fff, inset -1px -1px 0 #4824580d;--shadow-4:2px 4px 10px #48245812, 16px 34px 60px -20px #882d5a38, 8px 16px 32px -12px #3044a024, inset 1px 1px 0 #fff, inset -1px -1px 0 #4824580d;--btn-shadow-hover:var(--shadow-2);--btn-primary-shadow:inset 1px 1px 0 #ffffff4d, inset -1px -1px 0 #280a1e40, 1px 2px 3px #5018302e, 6px 12px 20px -9px #882d5a8c;--btn-primary-shadow-hover:inset 1px 1px 0 #ffffff5c, inset -1px -1px 0 #280a1e40, 2px 4px 6px #50183024, 9px 18px 30px -11px #882d5a80;--btn-focus-shadow:0 0 0 4px #882d5a2e;--btn-lift:-1px;--shadow-ticket:var(--shadow-4);--shadow-chat:var(--shadow-3);--accent-glow:0 0 0 5px #882d5a1f, 0 8px 18px -6px #882d5a66;--mark-glow:0 8px 16px -6px #e0388f8c, inset 0 1px 0 #ffffff73;--menu-shadow:var(--shadow-4);--page-bg:radial-gradient(920px 520px at 6% -8%, #e0388f24, transparent 62%), radial-gradient(840px 480px at 96% -6%, #5070d629, transparent 60%), radial-gradient(640px 420px at 78% 36%, #a23bc912, transparent 62%), radial-gradient(560px 360px at 4% 72%, #e0388f0f, transparent 64%), #f4f2f8;--header-bg:linear-gradient(180deg, #fff, #f6f4fa);--header-bg-stuck:#fbfafe;--header-bg-solid:#f6f4fa;--grain:.045;--grain-blend:multiply;--header-blur:18px;--header-shadow-stuck:var(--shadow-2);--code-bg:#ebe6f4;--code-shadow:var(--shadow-2);--pill-bg:#ffffffd1;--ticket-bg:linear-gradient(150deg, #fff 0%, #fbf8fd 100%);--ticket-edge:.9;--card-edge:1;--selected-shadow:0 0 0 1px var(--accent) inset, 0 12px 26px -14px #882d5a61, 0 2px 6px #4824580f, inset 0 1px 0 #fffc;--chat-bg:#efeaf6;--chat-top:#ffffffbd;--frost:14px;--rail-active:#f4ecf0;--dot-grid:radial-gradient(#5a407866 .65px, transparent .75px);--figure-bg:#fff;--block-shadow:var(--shadow-2);--block-primary-shadow:var(--shadow-3), 0 0 0 4px color-mix(in srgb, var(--accent) 12%, transparent);--edge:var(--line);--raised:var(--panel);--surface:linear-gradient(150deg, #fff 0%, #fffcfe 46%, #f8f3f9 100%);--surface-raised:linear-gradient(150deg, #fff 0%, #fff 46%, #faf6fb 100%);--btn-primary-bg:linear-gradient(150deg, #ffffff3d, #fff0 55%, #2800141f), var(--accent);--btn-primary-bg-hover:linear-gradient(150deg, #ffffff4d, #fff0 55%, #2800141a), var(--accent-hover);--well:#ebe6f2;--well-shadow:inset 1px 1px 3px #48245824, inset -1px -1px 0 #ffffffe6;--bevel-border:#efe9f2 #e0d7e5 #d3c8da #ebe4ef;--control-bg:linear-gradient(150deg, #fff 0%, #fbf8fc 52%, #f0eaf4 100%);--control-bg-hover:linear-gradient(150deg, #fff 0%, #fdfbfe 52%, #f4eff7 100%);--control-shadow:1px 2px 3px #4824581a, 3px 6px 12px -5px #78346e2e, inset 1px 1px 0 #fff, inset -1px -1px 0 #48245814;--control-shadow-hover:2px 4px 6px #4824581a, 6px 12px 20px -8px #78346e3d, inset 1px 1px 0 #fff, inset -1px -1px 0 #48245814;--control-shadow-active:inset 2px 2px 4px #48245829, inset -1px -1px 0 #ffffffe6;--btn-primary-shadow-active:inset 2px 2px 5px #28001459, inset -1px -1px 0 #fff3}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--bg:#f4f2f8;--bg-deep:#e8e4f1;--panel:#fffcfe;--panel-2:#fff;--line:#e4dce8;--line-2:#74829b;--fg:#161d2b;--prose:#1e2838;--muted:#3c4b60;--faint:#4e5e74;--accent:#882d5a;--accent-ink:#f8f9fc;--accent-hover:#9a3468;--kw:#2f3f86;--fn:#7a3d58;--str:#9a3412;--num:#0a6234;--prop:#9a3f12;--comment:#4a5868;--ok:#0a6234;--warn:#7a4e00;--nex-amber:#b53c0a;--nex-grad-text:linear-gradient(105deg, #1e40af, #5b21b6 30%, #7e22ce 52%, #9d174d 72%, #9a3412 90%, #7a4e00);--hue-accent:#882d5a;--hue-blue:#1e40af;--hue-indigo:#5b21b6;--hue-purple:#7e22ce;--hue-magenta:#9d174d;--hue-orange:#9a3412;--hue-amber:#7a4e00;--hue-ok:#0a6234;--hue-hot:#b53c0a;--selection:#882d5a2e;--hover:#882d5a0f;--str-wash:#9a34121f;--warn-wash:#7a4e001a;--warn-line:#7a4e0073;--theme-color:#f4f2f8;--shadow-1:.5px 1px 1px #4824580f, 1px 2px 3px #30408c0d, inset 1px 1px 0 #ffffffe6, inset -1px -1px 0 #4824580a;--shadow-2:1px 2px 3px #4824580f, 6px 12px 22px -10px #78346e2e, 2px 4px 8px -3px #374ea01a, inset 1px 1px 0 #fff, inset -1px -1px 0 #4824580d;--shadow-3:1px 3px 5px #4824580f, 10px 22px 40px -16px #802c6433, 4px 8px 16px -6px #3248a01f, inset 1px 1px 0 #fff, inset -1px -1px 0 #4824580d;--shadow-4:2px 4px 10px #48245812, 16px 34px 60px -20px #882d5a38, 8px 16px 32px -12px #3044a024, inset 1px 1px 0 #fff, inset -1px -1px 0 #4824580d;--btn-shadow-hover:var(--shadow-2);--btn-primary-shadow:inset 1px 1px 0 #ffffff4d, inset -1px -1px 0 #280a1e40, 1px 2px 3px #5018302e, 6px 12px 20px -9px #882d5a8c;--btn-primary-shadow-hover:inset 1px 1px 0 #ffffff5c, inset -1px -1px 0 #280a1e40, 2px 4px 6px #50183024, 9px 18px 30px -11px #882d5a80;--btn-focus-shadow:0 0 0 4px #882d5a2e;--btn-lift:-1px;--shadow-ticket:var(--shadow-4);--shadow-chat:var(--shadow-3);--accent-glow:0 0 0 5px #882d5a1f, 0 8px 18px -6px #882d5a66;--mark-glow:0 8px 16px -6px #e0388f8c, inset 0 1px 0 #ffffff73;--menu-shadow:var(--shadow-4);--page-bg:radial-gradient(920px 520px at 6% -8%, #e0388f24, transparent 62%), radial-gradient(840px 480px at 96% -6%, #5070d629, transparent 60%), radial-gradient(640px 420px at 78% 36%, #a23bc912, transparent 62%), radial-gradient(560px 360px at 4% 72%, #e0388f0f, transparent 64%), #f4f2f8;--header-bg:linear-gradient(180deg, #fff, #f6f4fa);--header-bg-stuck:#fbfafe;--header-bg-solid:#f6f4fa;--grain:.045;--grain-blend:multiply;--header-blur:18px;--header-shadow-stuck:var(--shadow-2);--code-bg:#ebe6f4;--code-shadow:var(--shadow-2);--pill-bg:#ffffffd1;--ticket-bg:linear-gradient(150deg, #fff 0%, #fbf8fd 100%);--ticket-edge:.9;--card-edge:1;--selected-shadow:0 0 0 1px var(--accent) inset, 0 12px 26px -14px #882d5a61, 0 2px 6px #4824580f, inset 0 1px 0 #fffc;--chat-bg:#efeaf6;--chat-top:#ffffffbd;--frost:14px;--rail-active:#f4ecf0;--dot-grid:radial-gradient(#5a407866 .65px, transparent .75px);--figure-bg:#fff;--block-shadow:var(--shadow-2);--block-primary-shadow:var(--shadow-3), 0 0 0 4px color-mix(in srgb, var(--accent) 12%, transparent);--edge:var(--line);--raised:var(--panel);--surface:linear-gradient(150deg, #fff 0%, #fffcfe 46%, #f8f3f9 100%);--surface-raised:linear-gradient(150deg, #fff 0%, #fff 46%, #faf6fb 100%);--btn-primary-bg:linear-gradient(150deg, #ffffff3d, #fff0 55%, #2800141f), var(--accent);--btn-primary-bg-hover:linear-gradient(150deg, #ffffff4d, #fff0 55%, #2800141a), var(--accent-hover);--well:#ebe6f2;--well-shadow:inset 1px 1px 3px #48245824, inset -1px -1px 0 #ffffffe6;--bevel-border:#efe9f2 #e0d7e5 #d3c8da #ebe4ef;--control-bg:linear-gradient(150deg, #fff 0%, #fbf8fc 52%, #f0eaf4 100%);--control-bg-hover:linear-gradient(150deg, #fff 0%, #fdfbfe 52%, #f4eff7 100%);--control-shadow:1px 2px 3px #4824581a, 3px 6px 12px -5px #78346e2e, inset 1px 1px 0 #fff, inset -1px -1px 0 #48245814;--control-shadow-hover:2px 4px 6px #4824581a, 6px 12px 20px -8px #78346e3d, inset 1px 1px 0 #fff, inset -1px -1px 0 #48245814;--control-shadow-active:inset 2px 2px 4px #48245829, inset -1px -1px 0 #ffffffe6;--btn-primary-shadow-active:inset 2px 2px 5px #28001459, inset -1px -1px 0 #fff3}}@media (prefers-reduced-motion:reduce){:root,:root[data-theme=light]{--btn-lift:0px}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 24px);-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--page-bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6}@media (prefers-reduced-motion:no-preference){body,.site-header,.site-footer{transition:background .18s,color .18s,border-color .18s,box-shadow .18s}}body:after{content:"";z-index:2;pointer-events:none;opacity:var(--grain);mix-blend-mode:var(--grain-blend);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}::selection{background:var(--selection)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.skip{z-index:80;background:var(--accent);color:var(--accent-ink);border-radius:8px;padding:8px 12px;font-weight:600;position:absolute;top:8px;left:16px;transform:translateY(-150%)}.skip:focus{transform:none}#main:focus{outline:none}h1,h2,h3{letter-spacing:-.01em;margin:0;line-height:1.15}p{margin:0}code,kbd,pre{font-family:var(--font-mono)}:not(pre)>code{background:var(--panel-2);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:5px;padding:.08em .38em;font-size:.88em}.serif-em{font-family:var(--font-serif);letter-spacing:0;font-style:italic;font-weight:400}.grad-text{background:var(--nex-grad-text);-webkit-text-fill-color:transparent;color:#0000;background-clip:text}.ribbon{background:var(--nex-grad);border-radius:99px;height:3px}.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 16px}@media (width>=720px){.wrap{padding:0 28px}}.btn{border:1px solid;border-color:var(--bevel-border);background:var(--control-bg);min-height:44px;color:var(--fg);font:600 15px/1.2 var(--font-body);cursor:pointer;box-shadow:var(--control-shadow);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;text-decoration:none;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:inline-flex}.btn:hover{background:var(--control-bg-hover);box-shadow:var(--control-shadow-hover);transform:translateY(var(--btn-lift));text-decoration:none}.btn:active{box-shadow:var(--control-shadow-active);transform:translateY(1px)}.btn:focus-visible{box-shadow:var(--btn-focus-shadow), var(--control-shadow)}.btn-primary{background:var(--btn-primary-bg);border-color:var(--accent);color:var(--accent-ink);box-shadow:var(--btn-primary-shadow)}.btn-primary:hover{background:var(--btn-primary-bg-hover);border-color:var(--accent-hover);box-shadow:var(--btn-primary-shadow-hover)}.btn-primary:active{box-shadow:var(--btn-primary-shadow-active)}.btn-primary:focus-visible{box-shadow:var(--btn-focus-shadow), var(--btn-primary-shadow)}.code{background:var(--code-bg);border:1px solid var(--line);box-shadow:var(--code-shadow);border-radius:10px;margin:0;position:relative}.code pre{color:var(--fg);white-space:pre;margin:0;padding:14px 64px 14px 16px;font-size:13.5px;line-height:1.65;overflow-x:auto}.code .c{color:var(--comment)}.code .p{color:var(--faint);user-select:none}.copy{border:1px solid;border-color:var(--bevel-border);background:var(--control-bg);min-height:32px;box-shadow:var(--control-shadow);color:var(--muted);font:500 12px/1 var(--font-mono);cursor:pointer;border-radius:7px;padding:4px 10px;transition:background .15s,box-shadow .15s,color .15s;position:absolute;top:8px;right:8px}.copy:hover{color:var(--fg);background:var(--control-bg-hover);box-shadow:var(--control-shadow-hover)}.copy:active{box-shadow:var(--control-shadow-active)}.copy[data-done]{color:var(--ok);border-color:var(--ok)}.mono-label{font:500 12px/1.3 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.pill{border:1px solid var(--line);background:var(--pill-bg);box-shadow:var(--shadow-1);-webkit-backdrop-filter:blur(var(--frost));font:500 12.5px/1.3 var(--font-mono);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:5px 12px;display:inline-flex}.live-dot{background:var(--nex-amber);border-radius:50%;flex:none;width:7px;height:7px;animation:1.8s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.site-header[data-astro-cid-fzpbxy5g]{z-index:50;background:var(--header-bg-solid);border-bottom:1px solid var(--line);position:sticky;top:0}@supports (backdrop-filter:blur(1px)){.site-header[data-astro-cid-fzpbxy5g]{background:var(--header-bg);backdrop-filter:blur(16px)}.site-header[data-astro-cid-fzpbxy5g].is-stuck{background:var(--header-bg-stuck)}}.site-header[data-astro-cid-fzpbxy5g].is-stuck{box-shadow:var(--header-shadow-stuck)}.ribbon[data-astro-cid-fzpbxy5g]{opacity:.85;border-radius:0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.bar[data-astro-cid-fzpbxy5g]{height:var(--header-h);justify-content:flex-start;align-items:center;gap:12px;display:flex}.brand[data-astro-cid-fzpbxy5g]{color:var(--fg);flex:none;align-items:center;gap:9px;font-size:17px;font-weight:700;text-decoration:none;display:inline-flex}.mark[data-astro-cid-fzpbxy5g]{background:var(--nex-grad);width:22px;height:22px;box-shadow:var(--mark-glow);border-radius:6px}.chip[data-astro-cid-fzpbxy5g]{font:600 11px/1 var(--font-mono);letter-spacing:.08em;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:6px;padding:4px 6px}nav[data-astro-cid-fzpbxy5g]{order:1;align-items:center;gap:4px;min-width:0;margin-left:auto;display:flex}.theme-switch[data-astro-cid-fzpbxy5g]{border:1px solid var(--line);background:var(--well);box-shadow:var(--well-shadow);border-radius:999px;flex:none;order:2;align-items:center;padding:3px;display:inline-flex}.theme-switch[data-astro-cid-fzpbxy5g] button[data-astro-cid-fzpbxy5g]{appearance:none;width:30px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;transition:color .15s,background .15s,box-shadow .15s;display:inline-grid}.theme-switch[data-astro-cid-fzpbxy5g] svg[data-astro-cid-fzpbxy5g]{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.theme-switch[data-astro-cid-fzpbxy5g] button[data-astro-cid-fzpbxy5g][aria-checked=true]{background:var(--btn-primary-bg);color:var(--accent-ink);box-shadow:var(--btn-primary-shadow)}.theme-switch[data-astro-cid-fzpbxy5g] button[data-astro-cid-fzpbxy5g]:hover{color:var(--fg)}.theme-switch[data-astro-cid-fzpbxy5g] button[data-astro-cid-fzpbxy5g][aria-checked=true]:hover{color:var(--accent-ink)}.nav-link[data-astro-cid-fzpbxy5g]{color:var(--muted);white-space:nowrap;border-radius:8px;padding:8px 10px;font-size:14.5px}.nav-link[data-astro-cid-fzpbxy5g]:hover{color:var(--fg);background:var(--hover);text-decoration:none}.nav-link[data-astro-cid-fzpbxy5g][aria-current=page]{color:var(--fg);background:var(--control-bg);box-shadow:var(--control-shadow);text-decoration:none}.ver[data-astro-cid-fzpbxy5g]{font:500 11px/1 var(--font-mono);color:var(--faint);margin-left:4px}.menu-btn[data-astro-cid-fzpbxy5g]{border:1px solid;border-color:var(--bevel-border);background:var(--control-bg);color:var(--fg);font:500 14px/1 var(--font-body);cursor:pointer;box-shadow:var(--control-shadow);border-radius:9px;order:3;align-items:center;gap:9px;margin-left:8px;padding:8px 12px;transition:background .15s,box-shadow .15s,color .15s,transform .15s;display:none}.menu-btn[data-astro-cid-fzpbxy5g]:hover{background:var(--control-bg-hover);box-shadow:var(--control-shadow-hover)}.menu-btn[data-astro-cid-fzpbxy5g]:active,.menu-btn[data-astro-cid-fzpbxy5g][aria-expanded=true]{box-shadow:var(--control-shadow-active)}.bars[data-astro-cid-fzpbxy5g]{width:16px;height:12px;position:relative}.bars[data-astro-cid-fzpbxy5g] span[data-astro-cid-fzpbxy5g]{background:currentColor;border-radius:2px;width:100%;height:2px;transition:transform .2s,opacity .2s,top .2s;position:absolute;left:0}.bars[data-astro-cid-fzpbxy5g] span[data-astro-cid-fzpbxy5g]:first-child{top:0}.bars[data-astro-cid-fzpbxy5g] span[data-astro-cid-fzpbxy5g]:nth-child(2){top:5px}.bars[data-astro-cid-fzpbxy5g] span[data-astro-cid-fzpbxy5g]:nth-child(3){top:10px}.menu-btn[data-astro-cid-fzpbxy5g][aria-expanded=true] .bars[data-astro-cid-fzpbxy5g] span[data-astro-cid-fzpbxy5g]:first-child{top:5px;transform:rotate(45deg)}.menu-btn[data-astro-cid-fzpbxy5g][aria-expanded=true] .bars[data-astro-cid-fzpbxy5g] span[data-astro-cid-fzpbxy5g]:nth-child(2){opacity:0}.menu-btn[data-astro-cid-fzpbxy5g][aria-expanded=true] .bars[data-astro-cid-fzpbxy5g] span[data-astro-cid-fzpbxy5g]:nth-child(3){top:5px;transform:rotate(-45deg)}@media (width<=1040px){.site-header[data-astro-cid-fzpbxy5g].has-menu .menu-btn[data-astro-cid-fzpbxy5g]{display:inline-flex}.site-header[data-astro-cid-fzpbxy5g].has-menu nav[data-astro-cid-fzpbxy5g]{background:var(--bg-deep);border-bottom:1px solid var(--line);box-shadow:var(--menu-shadow);max-height:calc(100dvh - var(--header-h));flex-direction:column;align-items:stretch;gap:2px;padding:10px 16px 18px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.site-header[data-astro-cid-fzpbxy5g].has-menu.open nav[data-astro-cid-fzpbxy5g]{display:flex}.site-header[data-astro-cid-fzpbxy5g].has-menu .nav-link[data-astro-cid-fzpbxy5g]{justify-content:space-between;align-items:center;padding:13px 14px;font-size:16px;display:flex}.site-header[data-astro-cid-fzpbxy5g].has-menu .gh[data-astro-cid-fzpbxy5g]{border-top:1px solid var(--line);border-radius:0 0 8px 8px;margin-top:6px;padding-top:16px}.site-header[data-astro-cid-fzpbxy5g]:not(.has-menu) .secondary[data-astro-cid-fzpbxy5g],.site-header[data-astro-cid-fzpbxy5g]:not(.has-menu) .ver[data-astro-cid-fzpbxy5g]{display:none}nav[data-astro-cid-fzpbxy5g]{margin-left:0}.theme-switch[data-astro-cid-fzpbxy5g]{margin-left:auto}}@media (width<=480px){.site-header[data-astro-cid-fzpbxy5g]:not(.has-menu) .nav-link[data-astro-cid-fzpbxy5g]{padding:8px 7px;font-size:14px}.site-header[data-astro-cid-fzpbxy5g]:not(.has-menu) .word[data-astro-cid-fzpbxy5g],.site-header[data-astro-cid-fzpbxy5g]:not(.has-menu) .gh[data-astro-cid-fzpbxy5g]{display:none}}.site-footer[data-astro-cid-nns7i3if]{background:var(--bg-deep);border-top:1px solid var(--line);margin-top:96px;position:relative}.ribbon[data-astro-cid-nns7i3if]{border-radius:0;height:2px;position:absolute;top:-1px;left:0;right:0}.cols[data-astro-cid-nns7i3if]{flex-wrap:wrap;justify-content:space-between;gap:24px;padding-top:36px;padding-bottom:48px;display:flex}.name[data-astro-cid-nns7i3if]{font-weight:700}.small[data-astro-cid-nns7i3if]{color:var(--faint);margin-top:4px;font-size:14px}nav[data-astro-cid-nns7i3if]{flex-wrap:wrap;gap:8px 20px;display:flex}nav[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{color:var(--muted);font-size:14.5px}nav[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]:hover{color:var(--fg)}
