@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");size-adjust:123.24%;ascent-override:79.35%;descent-override:20.69%;line-gap-override:0%}@font-face{font-family:DM Sans Fallback;src:local("Arial");size-adjust:111.2%;ascent-override:89.21%;descent-override:27.88%;line-gap-override:0%}@font-face{font-family:Caveat Fallback;src:local("Georgia");size-adjust:78.49%;ascent-override:122.31%;descent-override:38.22%;line-gap-override:0%}@font-face{font-family:DM Mono Fallback;src:local("Courier New");size-adjust:97.68%;ascent-override:101.55%;descent-override:31.74%;line-gap-override:0%}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/fonts/dm-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/caveat-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-mono-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-mono-latin-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--xd-green-300: #86EFAC;--xd-green-400: #4ADE80;--xd-green-500: #16A34A;--xd-green-600: #15803D;--xd-green-700: #166534;--xd-green-800: #14532D;--xd-orange-400: #FB923C;--xd-orange-500: #EA580C;--xd-orange-600: #C2410C;--xd-orange-700: #A8430F;--xd-paper-50: #FFFDF8;--xd-paper-100: #FBF6EC;--xd-paper-200: #F3EADA;--xd-paper-300: #E3D7C1;--xd-paper-400: #C9B99B;--xd-ink-900: #1E2A22;--xd-ink-700: #3F4D43;--xd-ink-500: #5E6B61;--xd-forest-950: #121A15;--xd-forest-900: #16201A;--xd-forest-800: #1F2B23;--xd-forest-700: #2A382E;--xd-sepia-100: #FAF3E3;--xd-sepia-200: #F4E9D4;--xd-sepia-300: #EADBBE;--xd-sepia-900: #33261A;--xd-mustard-400: #E8B53A;--xd-pink-200: #F4B6C2;--xd-sky-200: #A9D3E8;--xd-peach-200: #FAD3B5;--xd-mint-200: #BFE8C9;--xd-plum-700: #6B2E4A;--xd-spine-hoja: #166534;--xd-spine-hoja-fg: #FFFDF8;--xd-spine-mandarina: #C2410C;--xd-spine-mandarina-fg: #FFFDF8;--xd-spine-mostaza: #E8B53A;--xd-spine-mostaza-fg: #1E2A22;--xd-spine-tinta: #1E2A22;--xd-spine-tinta-fg: #FFFDF8;--xd-spine-rosa: #F4B6C2;--xd-spine-rosa-fg: #1E2A22;--xd-spine-cielo: #A9D3E8;--xd-spine-cielo-fg: #1E2A22;--xd-spine-pino: #14532D;--xd-spine-pino-fg: #FFFDF8;--xd-spine-durazno: #FAD3B5;--xd-spine-durazno-fg: #1E2A22;--xd-spine-menta: #BFE8C9;--xd-spine-menta-fg: #1E2A22;--xd-spine-ciruela: #6B2E4A;--xd-spine-ciruela-fg: #FFFDF8;--xd-font-display: "Fraunces", Georgia, serif;--xd-font-sans: "DM Sans", system-ui, -apple-system, sans-serif;--xd-font-hand: "Caveat", "Comic Sans MS", cursive;--xd-font-mono: "DM Mono", "JetBrains Mono", monospace;--xd-radius-sm: 8px;--xd-radius-md: 12px;--xd-radius-lg: 16px;--xd-radius-xl: 20px;--xd-radius-2xl: 28px;--xd-radius-full: 9999px;--xd-space-1: 4px;--xd-space-2: 8px;--xd-space-3: 12px;--xd-space-4: 16px;--xd-space-5: 20px;--xd-space-6: 24px;--xd-space-7: 32px;--xd-space-8: 40px;--xd-space-9: 48px;--xd-space-10: 64px;--xd-space-11: 96px;--xd-duration-fast: .12s;--xd-duration-normal: .18s;--xd-duration-slow: .28s;--xd-duration-slower: .45s;--xd-ease-default: ease;--xd-ease-in-out: cubic-bezier(.4, 0, .2, 1);--xd-ease-spring: cubic-bezier(.34, 1.56, .64, 1);--xd-gradient-action: linear-gradient(135deg, var(--xd-brand-green) 0%, var(--xd-brand-orange) 100%);--xd-gradient-action-hover: var(--xd-gradient-action);--xd-gradient-grin: linear-gradient(90deg, var(--xd-brand-green), var(--xd-brand-orange));--xd-gradient-top-accent: var(--xd-gradient-grin);--xd-focus-ring: 0 0 0 2.5px var(--xd-bg), 0 0 0 5px var(--xd-accent);--xd-soft-ring: var(--xd-focus-ring);--xd-disabled-opacity: 1;--xd-text-xs: .6875rem;--xd-text-sm: .875rem;--xd-text-base: 1rem;--xd-text-lg: 1.125rem;--xd-text-xl: 1.25rem;--xd-text-2xl: 1.5rem;--xd-text-3xl: 1.875rem;--xd-text-4xl: 2.25rem;--xd-text-5xl: 3rem;--xd-leading-tight: 1.2;--xd-leading-snug: 1.375;--xd-leading-normal: 1.5;--xd-leading-relaxed: 1.625;--xd-leading-loose: 1.85;--xd-font-normal: 400;--xd-font-medium: 500;--xd-font-semibold: 600;--xd-font-bold: 700;--xd-font-extrabold: 800;--xd-tracking-tight: -.03em;--xd-tracking-snug: -.02em;--xd-tracking-normal: 0em;--xd-z-dropdown: 10;--xd-z-sticky: 20;--xd-z-fixed: 30;--xd-z-overlay: 40;--xd-z-modal: 50;--xd-z-popover: 60;--xd-z-toast: 70;--xd-z-tooltip: 100;--xd-shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--xd-shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--xd-shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--xd-shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--xd-shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--xd-overlay-bg: rgba(0, 0, 0, .5)}:root,[data-xd-theme=light],[data-theme=light],[data-lib-theme=light]{--xd-bg: #FBF6EC;--xd-deep: #FBF6EC;--xd-surface: #FFFDF8;--xd-base: #FFFDF8;--xd-surface-2: #F3EADA;--xd-raised: #F3EADA;--xd-chrome: #FBF6EC;--xd-fg: #1E2A22;--xd-text: #1E2A22;--xd-fg-2: #3F4D43;--xd-fg-3: #5E6B61;--xd-text-muted: #5E6B61;--xd-fg-4: #A7AE9F;--xd-bd: #E3D7C1;--xd-border: #E3D7C1;--xd-border-subtle: #E3D7C1;--xd-bd-2: #C9B99B;--xd-border-strong: #C9B99B;--xd-action: #166534;--xd-action-fg: #FFFDF8;--xd-action-hover: #14532D;--xd-action-end: #C2410C;--xd-link: #166534;--xd-accent: #B03A0A;--xd-success: #166534;--xd-warning: #8A5A00;--xd-error: #B42318;--xd-info: #1D5C8A;--xd-xp: #166534;--xd-streak: #B03A0A;--xd-badge: #7A3B8F;--xd-mustard: #E8B53A;--xd-paper-line: #E9DFCB;--xd-brand-green: #16A34A;--xd-brand-orange: #EA580C;--xd-shadow-paper-sm: 0 1px 0 rgba(30,42,34,.08), 0 4px 10px -4px rgba(107,79,42,.18);--xd-shadow-paper-md: 0 1px 0 rgba(30,42,34,.08), 0 6px 16px -6px rgba(107,79,42,.2);--xd-shadow-paper-lg: 0 2px 0 rgba(30,42,34,.06), 0 20px 50px -10px rgba(107,79,42,.28);--xd-soft-shadow-sm: var(--xd-shadow-paper-sm);--xd-soft-shadow-md: var(--xd-shadow-paper-md);--xd-soft-shadow-lg: var(--xd-shadow-paper-lg);--xd-shadow-card-hover: var(--xd-shadow-paper-md);--xd-gl: color-mix(in srgb, var(--xd-fg) 4%, transparent);--xd-sidebar-bg: var(--xd-chrome);--xd-sidebar-sep: var(--xd-bd);--xds-deep: var(--xd-deep);--xds-base: var(--xd-base);--xds-raised: var(--xd-raised);--xds-chrome: var(--xd-chrome);--xds-fg: var(--xd-fg);--xds-fg-2: var(--xd-fg-2);--xds-fg-3: var(--xd-fg-3);--xds-fg-4: var(--xd-fg-4);--xds-bd: var(--xd-bd);--xds-bd-2: var(--xd-bd-2);--xds-fg2: var(--xd-fg-2);--xds-fg3: var(--xd-fg-3);--xds-fg4: var(--xd-fg-4);--xds-bd2: var(--xd-bd-2);--xds-gl: var(--xd-gl);--xds-sidebar-bg: var(--xd-sidebar-bg);--xds-sidebar-sep: var(--xd-sidebar-sep);--xds-shadow-soft: var(--xd-soft-shadow-sm);--xds-shadow-soft-lg: var(--xd-soft-shadow-lg)}[data-xd-theme=dark],.xd-dark,.dark,[data-theme=dark],[data-lib-theme=dark]{--xd-bg: #16201A;--xd-deep: #16201A;--xd-surface: #1F2B23;--xd-base: #1F2B23;--xd-surface-2: #2A382E;--xd-raised: #2A382E;--xd-chrome: #121A15;--xd-fg: #F6EFE2;--xd-text: #F6EFE2;--xd-fg-2: #D9CFBD;--xd-fg-3: #B3AA99;--xd-text-muted: #B3AA99;--xd-fg-4: #6F7A70;--xd-bd: #33433A;--xd-border: #33433A;--xd-border-subtle: #33433A;--xd-bd-2: #4A5C50;--xd-border-strong: #4A5C50;--xd-action: #4ADE80;--xd-action-fg: #16201A;--xd-action-hover: #86EFAC;--xd-action-end: #FB923C;--xd-link: #4ADE80;--xd-accent: #FB923C;--xd-success: #4ADE80;--xd-warning: #F2C75C;--xd-error: #FB8B80;--xd-info: #7CC4EE;--xd-xp: #4ADE80;--xd-streak: #FB923C;--xd-badge: #D6A6E8;--xd-mustard: #F2C75C;--xd-paper-line: #26332B;--xd-brand-green: #4ADE80;--xd-brand-orange: #FB923C;--xd-shadow-paper-sm: 0 1px 0 rgba(0,0,0,.4), 0 4px 10px -4px rgba(0,0,0,.5);--xd-shadow-paper-md: 0 1px 0 rgba(0,0,0,.4), 0 8px 20px -8px rgba(0,0,0,.6);--xd-shadow-paper-lg: 0 20px 50px -10px rgba(0,0,0,.7);--xd-soft-shadow-sm: var(--xd-shadow-paper-sm);--xd-soft-shadow-md: var(--xd-shadow-paper-md);--xd-soft-shadow-lg: var(--xd-shadow-paper-lg);--xd-shadow-card-hover: var(--xd-shadow-paper-md);--xd-gl: color-mix(in srgb, var(--xd-fg) 4%, transparent);--xd-sidebar-bg: var(--xd-chrome);--xd-sidebar-sep: var(--xd-bd);--xds-deep: var(--xd-deep);--xds-base: var(--xd-base);--xds-raised: var(--xd-raised);--xds-chrome: var(--xd-chrome);--xds-fg: var(--xd-fg);--xds-fg-2: var(--xd-fg-2);--xds-fg-3: var(--xd-fg-3);--xds-fg-4: var(--xd-fg-4);--xds-bd: var(--xd-bd);--xds-bd-2: var(--xd-bd-2);--xds-fg2: var(--xd-fg-2);--xds-fg3: var(--xd-fg-3);--xds-fg4: var(--xd-fg-4);--xds-bd2: var(--xd-bd-2);--xds-gl: var(--xd-gl);--xds-sidebar-bg: var(--xd-sidebar-bg);--xds-sidebar-sep: var(--xd-sidebar-sep);--xds-shadow-soft: var(--xd-soft-shadow-sm);--xds-shadow-soft-lg: var(--xd-soft-shadow-lg)}[data-xd-theme=sepia],[data-theme=sepia],[data-lib-theme=sepia]{--xd-bg: #F4E9D4;--xd-deep: #F4E9D4;--xd-surface: #FAF3E3;--xd-base: #FAF3E3;--xd-surface-2: #EADBBE;--xd-raised: #EADBBE;--xd-chrome: #F4E9D4;--xd-fg: #33261A;--xd-text: #33261A;--xd-fg-2: #5A4632;--xd-fg-3: #6E5A45;--xd-text-muted: #6E5A45;--xd-fg-4: #B8A487;--xd-bd: #DCC9A6;--xd-border: #DCC9A6;--xd-border-subtle: #DCC9A6;--xd-bd-2: #C2AA80;--xd-border-strong: #C2AA80;--xd-action: #2F5D3A;--xd-action-fg: #FAF3E3;--xd-action-hover: #24492D;--xd-action-end: #A8430F;--xd-link: #2F5D3A;--xd-accent: #953A0C;--xd-success: #2F5D3A;--xd-warning: #7A4F00;--xd-error: #A3261B;--xd-info: #2B5577;--xd-xp: #2F5D3A;--xd-streak: #953A0C;--xd-badge: #6E3A7E;--xd-mustard: #D9A93A;--xd-paper-line: #E3D3B3;--xd-brand-green: #3F8A52;--xd-brand-orange: #C2561A;--xd-shadow-paper-sm: 0 1px 0 rgba(51,38,26,.08), 0 4px 10px -4px rgba(107,79,42,.22);--xd-shadow-paper-md: 0 1px 0 rgba(51,38,26,.08), 0 6px 16px -6px rgba(107,79,42,.25);--xd-shadow-paper-lg: 0 20px 50px -10px rgba(107,79,42,.32);--xd-soft-shadow-sm: var(--xd-shadow-paper-sm);--xd-soft-shadow-md: var(--xd-shadow-paper-md);--xd-soft-shadow-lg: var(--xd-shadow-paper-lg);--xd-shadow-card-hover: var(--xd-shadow-paper-md);--xd-gl: color-mix(in srgb, var(--xd-fg) 4%, transparent);--xd-sidebar-bg: var(--xd-chrome);--xd-sidebar-sep: var(--xd-bd);--xds-deep: var(--xd-deep);--xds-base: var(--xd-base);--xds-raised: var(--xd-raised);--xds-chrome: var(--xd-chrome);--xds-fg: var(--xd-fg);--xds-fg-2: var(--xd-fg-2);--xds-fg-3: var(--xd-fg-3);--xds-fg-4: var(--xd-fg-4);--xds-bd: var(--xd-bd);--xds-bd-2: var(--xd-bd-2);--xds-fg2: var(--xd-fg-2);--xds-fg3: var(--xd-fg-3);--xds-fg4: var(--xd-fg-4);--xds-bd2: var(--xd-bd-2);--xds-gl: var(--xd-gl);--xds-sidebar-bg: var(--xd-sidebar-bg);--xds-sidebar-sep: var(--xd-sidebar-sep);--xds-shadow-soft: var(--xd-soft-shadow-sm);--xds-shadow-soft-lg: var(--xd-soft-shadow-lg)}:root{--xd-hl-yellow: #FEF08A;--xd-hl-yellow-ink: #713f12;--xd-hl-yellow-ring: #854D0E;--xd-hl-yellow-strong: #D97706;--xd-hl-yellow-bg: #FFFBEB;--xd-hl-red: #FECACA;--xd-hl-red-ink: #7f1d1d;--xd-hl-red-ring: #991B1B;--xd-hl-red-strong: #DC2626;--xd-hl-red-bg: #FFF5F5;--xd-hl-blue: #BFDBFE;--xd-hl-blue-ink: #1e3a8a;--xd-hl-blue-ring: #1E40AF;--xd-hl-blue-strong: var(--xd-info);--xd-hl-blue-bg: #EFF6FF;--xd-hl-green: #BBF7D0;--xd-hl-green-ink: #14532d;--xd-hl-green-ring: #166534;--xd-hl-green-strong: var(--xd-action);--xd-hl-green-bg: #F0FDF4;--xd-hl-yellow-dark-ink: #fde047;--xd-hl-red-dark-ink: #fca5a5;--xd-hl-blue-dark-ink: #93c5fd;--xd-hl-green-dark-ink: #86efac;--xd-hl-card-text: #111827;--xd-hl-card-text-muted: #6b7280}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:0ms!important;animation-duration:0ms!important}}.xd-card{background:var(--xd-surface);border:1px solid var(--xd-bd);border-radius:var(--xd-radius-lg);box-shadow:var(--xd-shadow-paper-md)}.xd-card-hover{transition:transform var(--xd-duration-normal) var(--xd-ease-in-out),box-shadow var(--xd-duration-normal) var(--xd-ease-in-out);cursor:pointer}.xd-card-hover:hover{transform:translateY(-2px);box-shadow:var(--xd-shadow-card-hover)}.xd-soft-card{background:var(--xd-base);border:1px solid var(--xd-bd);border-radius:var(--xd-radius-2xl);box-shadow:var(--xd-soft-shadow-sm)}.xd-soft-focus:focus-visible{outline:none;box-shadow:var(--xd-focus-ring)}.xd-btn-action{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:var(--xd-radius-full);border:1.5px solid var(--xd-action);background:var(--xd-action);color:var(--xd-action-fg);font:600 15px/20px var(--xd-font-sans);cursor:pointer;transition:transform var(--xd-duration-fast) var(--xd-ease-spring),background var(--xd-duration-fast) var(--xd-ease-default)}.xd-btn-action:hover{background:var(--xd-action-hover);transform:translateY(-2px) rotate(-1deg)}.xd-btn-action:focus-visible,.xd-soft-focus:focus-visible{outline:none;box-shadow:var(--xd-focus-ring)}.xd-btn-action:disabled{background:var(--xd-raised);color:var(--xd-fg-3);border-style:dashed;border-color:var(--xd-bd-2);cursor:not-allowed;transform:none}.xd-btn-sm{padding:6px 12px;font-size:12px;border-radius:var(--xd-radius-full)}.xd-btn-lg{padding:14px 28px;font-size:16px}.xd-btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:transparent;color:var(--xd-link);border:1.5px solid var(--xd-bd-2);border-radius:var(--xd-radius-full);font:500 14px/20px var(--xd-font-sans);cursor:pointer}.xd-btn-ghost:hover{background:color-mix(in srgb,var(--xd-link) 8%,transparent)}.xd-btn-subtle{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:color-mix(in srgb,var(--xd-action) 10%,transparent);color:var(--xd-link);border:1px solid color-mix(in srgb,var(--xd-action) 20%,transparent);border-radius:var(--xd-radius-full);font:500 14px/20px var(--xd-font-sans);cursor:pointer}.xd-btn-danger{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--xd-error);color:var(--xd-paper-50);border:none;border-radius:var(--xd-radius-full);font:600 14px/20px var(--xd-font-sans);cursor:pointer}.xd-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;color:var(--xd-fg-2);background:var(--xd-raised);border:1px solid var(--xd-bd);border-radius:var(--xd-radius-md);cursor:pointer}.xd-btn-full{width:100%;justify-content:center}.xd-btn-loading{opacity:.7;pointer-events:none;cursor:progress}.xd-grin-underline{background:var(--xd-gradient-grin) bottom / 100% 3px no-repeat;padding-bottom:4px}.xd-gradient-text,.gradient-text{background:var(--xd-gradient-grin);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.xd-label{display:block;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--xd-fg-2);margin-bottom:8px}.xd-input,.xd-select,.xd-textarea{display:block;width:100%;font:400 15px/1.5 var(--xd-font-sans);color:var(--xd-text);background:var(--xd-surface);border:1.5px solid var(--xd-bd);border-radius:var(--xd-radius-md);padding:12px 14px;outline:none}.xd-input:focus,.xd-select:focus,.xd-textarea:focus{border-color:var(--xd-accent);box-shadow:var(--xd-focus-ring)}.xd-input:disabled,.xd-select:disabled,.xd-textarea:disabled{background:var(--xd-raised);color:var(--xd-fg-3);border-style:dashed;border-color:var(--xd-bd-2);cursor:not-allowed}.xd-input-error,.xd-input-error:focus{border-color:var(--xd-error)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--xd-error) 18%,transparent)!important}.xd-helper{display:block;margin-top:6px;font-size:12px;color:var(--xd-text-muted)}.xd-error-text{display:block;margin-top:6px;font-size:12px;font-weight:600;color:var(--xd-error)}.xd-textarea{min-height:96px;resize:vertical}.xd-alert{display:flex;gap:.75rem;padding:.875rem 1rem;border-radius:var(--xd-radius-md);border:1.5px solid;font-size:.875rem}.xd-alert-success{background:color-mix(in srgb,var(--xd-success) 10%,transparent);border-color:color-mix(in srgb,var(--xd-success) 35%,transparent);color:var(--xd-success)}.xd-alert-warning{background:color-mix(in srgb,var(--xd-warning) 12%,transparent);border-color:color-mix(in srgb,var(--xd-warning) 35%,transparent);color:var(--xd-warning)}.xd-alert-error{background:color-mix(in srgb,var(--xd-error) 10%,transparent);border-color:color-mix(in srgb,var(--xd-error) 35%,transparent);color:var(--xd-error)}.xd-alert-info{background:color-mix(in srgb,var(--xd-info) 10%,transparent);border-color:color-mix(in srgb,var(--xd-info) 35%,transparent);color:var(--xd-info)}.xd-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--xd-radius-full);font-size:11px;font-weight:600}.xd-badge-success{background:color-mix(in srgb,var(--xd-success) 12%,transparent);color:var(--xd-success)}.xd-badge-warning{background:color-mix(in srgb,var(--xd-warning) 14%,transparent);color:var(--xd-warning)}.xd-badge-error{background:color-mix(in srgb,var(--xd-error) 12%,transparent);color:var(--xd-error)}.xd-badge-info{background:color-mix(in srgb,var(--xd-info) 12%,transparent);color:var(--xd-info)}.xd-progress{width:100%;height:8px;background:var(--xd-paper-line);border-radius:var(--xd-radius-full);overflow:hidden}.xd-progress-bar{height:100%;background:var(--xd-gradient-grin);border-radius:var(--xd-radius-full)}.xd-tab-list{display:flex;gap:.25rem;border-bottom:1.5px solid var(--xd-border)}.xd-tab{padding:.5rem 1rem;font:500 .875rem/1.4 var(--xd-font-sans);color:var(--xd-text-muted);border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1.5px}.xd-tab:hover{color:var(--xd-text)}.xd-tab-active{color:var(--xd-link)!important;border-bottom-color:var(--xd-link)!important}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--xd-fg);color:var(--xd-bg);padding:.3rem .625rem;border-radius:var(--xd-radius-sm);font:500 .7rem/1.3 var(--xd-font-sans);white-space:nowrap;opacity:0;pointer-events:none;z-index:var(--xd-z-tooltip)}[data-tooltip]:hover:before{opacity:1}@keyframes xd-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.xd-skeleton{border-radius:var(--xd-radius-sm);background:linear-gradient(90deg,var(--xd-surface) 25%,var(--xd-raised) 50%,var(--xd-surface) 75%);background-size:800px 100%;animation:xd-shimmer 1.4s ease-in-out infinite}.xd-overlay,.xd-backdrop{position:fixed;inset:0;background:var(--xd-overlay-bg);z-index:var(--xd-z-overlay);display:flex;align-items:center;justify-content:center}.xd-backdrop{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.xd-kbd{display:inline-flex;align-items:center;padding:.15rem .45rem;font:500 .7rem/1.4 var(--xd-font-mono);color:var(--xd-fg-2);background:var(--xd-surface);border:1px solid var(--xd-bd);border-bottom-width:2px;border-radius:var(--xd-radius-sm);box-shadow:var(--xd-shadow-xs)}.xd-prose{color:var(--xd-text);font-family:var(--xd-font-sans);font-size:var(--xd-text-base);line-height:var(--xd-leading-relaxed);max-width:68ch}.xd-prose h1,.xd-prose h2,.xd-prose h3,.xd-prose h4{font-family:var(--xd-font-display);line-height:var(--xd-leading-tight);color:var(--xd-text)}.xd-prose a{color:var(--xd-link)}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--xd-font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--xd-font-mono);font-feature-settings:normal;font-variation-settings: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}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-6{bottom:48px}.left-0{left:0}.right-6{right:48px}.top-0{top:0}.top-\[3px\]{top:3px}.top-\[64px\]{top:64px}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.m-0{margin:0}.mx-2{margin-left:8px;margin-right:8px}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:16px}.mb-4{margin-bottom:24px}.mb-5{margin-bottom:32px}.mb-6{margin-bottom:48px}.mb-8{margin-bottom:96px}.mr-2{margin-right:8px}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:4px}.mt-10{margin-top:2.5rem}.mt-2{margin-top:8px}.mt-4{margin-top:24px}.mt-5{margin-top:32px}.mt-6{margin-top:48px}.mt-8{margin-top:96px}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-16{height:4rem}.h-3{height:16px}.h-4{height:24px}.h-5{height:32px}.h-7{height:64px}.h-8{height:96px}.h-9{height:2.25rem}.h-\[3px\]{height:3px}.h-\[44px\]{height:44px}.h-\[64px\]{height:64px}.h-full{height:100%}.h-px{height:1px}.min-h-\[60vh\]{min-height:60vh}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:24px}.w-48{width:12rem}.w-\[44px\]{width:44px}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.max-w-\[600px\]{max-width:600px}.max-w-content{max-width:1080px}.max-w-reading{max-width:680px}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:16px}.gap-4{gap:24px}.gap-5{gap:32px}.gap-6{gap:48px}.gap-x-5{-moz-column-gap:32px;column-gap:32px}.gap-y-2{row-gap:8px}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(8px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(8px * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(16px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(16px * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(24px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(24px * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(96px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(96px * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[var\(--border\)\],.border-border{border-color:var(--border)}.border-transparent{border-color:transparent}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-bg{background-color:var(--bg)}.bg-border{background-color:var(--border)}.bg-surface{background-color:var(--surface)}.p-3{padding:16px}.p-4{padding:24px}.p-5{padding:32px}.p-6{padding:48px}.px-1{padding-left:4px;padding-right:4px}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:8px;padding-right:8px}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:16px;padding-right:16px}.px-4{padding-left:24px;padding-right:24px}.px-6{padding-left:48px;padding-right:48px}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:4px;padding-bottom:4px}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:8px;padding-bottom:8px}.py-3{padding-top:16px;padding-bottom:16px}.py-4{padding-top:24px;padding-bottom:24px}.py-5{padding-top:32px;padding-bottom:32px}.py-6{padding-top:48px;padding-bottom:48px}.py-8{padding-top:96px;padding-bottom:96px}.py-\[2px\]{padding-top:2px;padding-bottom:2px}.py-\[3px\]{padding-top:3px;padding-bottom:3px}.pt-2{padding-top:8px}.pt-5{padding-top:32px}.pt-6{padding-top:48px}.text-center{text-align:center}.font-display{font-family:var(--xd-font-display)}.font-hand{font-family:var(--xd-font-hand)}.font-mono{font-family:var(--xd-font-mono)}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.8125rem\]{font-size:.8125rem}.text-\[0\.875rem\]{font-size:.875rem}.text-\[0\.9375rem\]{font-size:.9375rem}.text-\[1\.125rem\]{font-size:1.125rem}.text-\[1rem\]{font-size:1rem}.text-\[4rem\]{font-size:4rem}.text-body{font-size:1.125rem;line-height:1.7;font-weight:400}.text-body-mobile{font-size:1rem;line-height:1.7;font-weight:400}.text-h1-mobile{font-size:2rem;line-height:1.2;font-weight:700}.text-h2-mobile{font-size:1.5rem;line-height:1.3;font-weight:600}.text-h3-mobile{font-size:1.125rem;line-height:1.4;font-weight:600}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-small{font-size:.875rem;line-height:1.5;font-weight:400}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-accent{color:var(--accent)}.text-inherit{color:inherit}.text-success{color:var(--success)}.text-text-primary{color:var(--text-primary)}.text-text-secondary{color:var(--text-secondary)}.text-warning{color:var(--warning)}.underline{text-decoration-line:underline}.no-underline{text-decoration-line:none}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sepia{--tw-sepia: sepia(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}:root{--xd-top-bar-height: 3px;--xd-font-display: "Fraunces", "Fraunces Fallback", Georgia, serif;--xd-font-sans: "DM Sans", "DM Sans Fallback", system-ui, sans-serif;--xd-font-hand: "Caveat", "Caveat Fallback", "Comic Sans MS", cursive;--xd-font-mono: "DM Mono", "DM Mono Fallback", ui-monospace, monospace;--bg: var(--xd-deep);--surface: var(--xd-base);--surface-2: var(--xd-raised);--text-primary: var(--xd-fg);--text-secondary: var(--xd-fg-3);--accent: var(--xd-link);--accent-hover: var(--xd-action-hover);--border: var(--xd-bd);--code-text: var(--xd-fg);--success: var(--xd-success);--warning: var(--xd-warning);--prose-text: var(--xd-fg-2);--navbar-bg: var(--xd-chrome)}html{font-family:var(--xd-font-sans);background-color:var(--bg);color:var(--text-primary);color-scheme:light;border-top:var(--xd-top-bar-height) solid transparent;-o-border-image:var(--xd-gradient-top-accent) 1;border-image:var(--xd-gradient-top-accent) 1}[data-xd-theme=dark]{color-scheme:dark}h1,h2,h3,.font-display{font-family:var(--xd-font-display);font-optical-sizing:auto;letter-spacing:-.02em;font-variation-settings:"SOFT" 100,"WONK" 1}.font-hand{font-family:var(--xd-font-hand);font-weight:600}body{margin:0;min-height:100vh;position:relative}.site-hero-wash{pointer-events:none;position:absolute;inset:0;z-index:0;background:radial-gradient(60rem 40rem at 100% -10%,color-mix(in srgb,var(--xd-action-end) 5%,transparent),transparent 60%),radial-gradient(70rem 50rem at -10% 0%,color-mix(in srgb,var(--xd-action) 6%,transparent),transparent 60%)}[data-xd-theme=dark] .site-hero-wash{background:radial-gradient(60rem 40rem at 100% -10%,color-mix(in srgb,var(--xd-action-end) 7%,transparent),transparent 60%),radial-gradient(70rem 50rem at -10% 0%,color-mix(in srgb,var(--xd-action) 8%,transparent),transparent 60%)}.site-soft-card{background:var(--xd-base);border:1px solid var(--xd-bd);border-radius:var(--xd-radius-lg);box-shadow:var(--xd-soft-shadow-sm);transition:transform var(--xd-duration-normal) var(--xd-ease-in-out),box-shadow var(--xd-duration-normal) var(--xd-ease-default),border-color var(--xd-duration-normal) var(--xd-ease-default)}a.site-soft-card:hover{transform:translateY(-2px);box-shadow:var(--xd-soft-shadow-md);border-color:color-mix(in srgb,var(--xd-action) 28%,transparent)}.site-pillar-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--xd-radius-md);color:var(--xd-action);background:color-mix(in srgb,var(--xd-action) 10%,transparent);flex-shrink:0}.site-brand-line{display:flex;align-items:baseline;gap:.25rem;flex-wrap:wrap}@media(prefers-reduced-motion:reduce){a.site-soft-card:hover{transform:none}}a{color:var(--accent);text-decoration:none;transition:color .15s ease}a:hover{color:var(--accent-hover)}code,pre{font-family:var(--xd-font-mono)}:focus-visible,.xd-btn-action:focus-visible,.xd-btn-ghost:focus-visible,.xd-soft-focus:focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:var(--xd-focus-ring)}.astro-code,.astro-code span{color:var(--shiki-light)!important;background-color:var(--shiki-light-bg)!important}[data-xd-theme=dark] .astro-code,[data-xd-theme=dark] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.xd-btn-action:disabled,.xd-btn-ghost:disabled,button:disabled,input:disabled,textarea:disabled,select:disabled{opacity:1;color:var(--xd-fg-3);border-style:dotted;border-color:var(--xd-bd-2);background:var(--xd-raised);cursor:not-allowed;transform:none;box-shadow:none}.xd-field{font:400 .875rem/1.5 var(--xd-font-sans);color:var(--xd-fg);background:var(--xd-surface);border:1.5px solid var(--xd-bd);border-radius:var(--xd-radius-md);padding:.5rem .75rem}.xd-field:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--xd-accent);box-shadow:var(--xd-focus-ring)}.site-wordmark{font-family:var(--xd-font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" 100,"WONK" 1;font-size:max(24px,1.75rem);font-weight:700;line-height:1;letter-spacing:-.03em}.site-wordmark.gradient-text{display:inline-block;background-image:linear-gradient(90deg,var(--xd-green-500),var(--xd-orange-500));background-repeat:no-repeat;background-size:100% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.hero-margin-note{display:block;width:-moz-fit-content;width:fit-content;margin:0 0 .75rem;font-size:24px;line-height:1.1;color:var(--xd-accent);transform:none}@media(min-width:768px){.hero-margin-note{transform:rotate(-3deg);transform-origin:left center}}@media(prefers-reduced-motion:reduce){.hero-margin-note{transform:none}}.xd-meta,.xd-meta-label{font-family:var(--xd-font-mono);font-size:.75rem;font-weight:500;letter-spacing:.02em;line-height:1.4}.xd-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;margin:0 0 .25rem;color:var(--xd-fg-3)}.seen-posts{list-style:none;padding:0;margin:0}.seen-posts li{display:flex;align-items:baseline;gap:.6rem}.seen-posts li:before{content:"X";font-family:var(--xd-font-mono);font-size:.75rem;font-weight:500;color:var(--xd-fg-2);flex-shrink:0}.xd-theme-switch{display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--xd-bd);border-radius:var(--xd-radius-full);background:var(--xd-base)}.xd-theme-switch button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:var(--xd-radius-full);background:transparent;color:var(--xd-fg-3);cursor:pointer}[data-xd-theme=light] [data-xd-theme-choice=light],[data-xd-theme=sepia] [data-xd-theme-choice=sepia],[data-xd-theme=dark] [data-xd-theme-choice=dark]{background:var(--xd-action);color:var(--xd-action-fg);border-color:var(--xd-action)}.logo-lockup .logo-sepia,.logo-lockup .logo-dark,[data-xd-theme=sepia] .logo-lockup .logo-light,[data-xd-theme=sepia] .logo-lockup .logo-dark{display:none}[data-xd-theme=sepia] .logo-lockup .logo-sepia{display:block}[data-xd-theme=dark] .logo-lockup .logo-light,[data-xd-theme=dark] .logo-lockup .logo-sepia{display:none}[data-xd-theme=dark] .logo-lockup .logo-dark{display:block}.logo-glow-wrap{position:relative;display:inline-block}.logo-glow-wrap:before{content:"";position:absolute;inset:-2px;border-radius:10px;background:var(--xd-gradient-grin);filter:blur(8px);opacity:.5;z-index:0}.project-card{border-radius:var(--xd-radius-lg);box-shadow:var(--xd-soft-shadow-sm)}.project-card:hover{transform:translateY(-2px);box-shadow:var(--xd-soft-shadow-md);border-color:color-mix(in srgb,var(--xd-action) 20%,transparent)}.prose h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:16px}.prose h2{font-size:1.75rem;font-weight:600;line-height:1.3;margin-top:48px;margin-bottom:16px}.prose h3{font-size:1.25rem;font-weight:600;line-height:1.4;margin-top:32px;margin-bottom:12px}.prose p{font-size:1.125rem;line-height:1.75;margin-bottom:24px;color:var(--prose-text)}.prose ul,.prose ol{margin-bottom:16px;padding-left:24px}.prose li{font-size:1.125rem;line-height:1.75;margin-bottom:8px;color:var(--prose-text)}.prose pre{border-radius:8px;padding:16px 20px;margin:24px 0;overflow-x:auto;max-width:780px}.prose code:not(pre code){background:var(--surface);padding:2px 6px;border-radius:4px;font-size:.9em}.prose img{border-radius:8px;margin:24px 0}.prose blockquote{border-left:3px solid var(--accent);background-color:var(--surface);padding:16px 16px 16px 20px;border-radius:0 8px 8px 0;color:var(--text-secondary);margin:32px 0}.prose a{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}.prose a:hover{text-decoration-color:var(--accent-hover)}.prose strong{color:var(--text-primary);font-weight:600}.prose hr{border:none;border-top:1px solid var(--border);margin:48px 0}.prose table{width:100%;border-collapse:collapse;margin:32px 0;font-size:.9375rem}.prose th{text-align:left;font-weight:600;padding:10px 14px;border-bottom:2px solid var(--border);color:var(--text-primary)}.prose td{padding:10px 14px;border-bottom:1px solid var(--border);color:var(--prose-text)}.reading-container{max-width:680px;margin-left:auto;margin-right:auto}[data-prose-width=sm] .reading-container{max-width:560px}[data-prose-width=lg] .reading-container{max-width:780px}[data-prose-size=sm] .prose p,[data-prose-size=sm] .prose li{font-size:1rem;line-height:1.7}[data-prose-size=sm] .prose h1{font-size:2rem}[data-prose-size=sm] .prose h2{font-size:1.5rem}[data-prose-size=sm] .prose h3{font-size:1.125rem}[data-prose-size=lg] .prose p,[data-prose-size=lg] .prose li{font-size:1.25rem;line-height:1.85}[data-prose-size=lg] .prose h1{font-size:2.75rem}[data-prose-size=lg] .prose h2{font-size:2rem}[data-prose-size=lg] .prose h3{font-size:1.4rem}[data-prose-font=serif] .prose p,[data-prose-font=serif] .prose li,[data-prose-font=serif] .prose blockquote{font-family:var(--xd-font-display);line-height:1.85;letter-spacing:.01em}.reader-btn{cursor:pointer;background:transparent;color:var(--text-primary);transition:background-color .15s ease,color .15s ease,border-color .15s ease}.reader-btn:hover:not(.active){border-color:var(--accent)!important;color:var(--accent)}.reader-btn.active{background-color:var(--xd-action)!important;color:var(--xd-action-fg)!important;border-color:var(--xd-action)!important}@media(max-width:768px){.prose h1{font-size:2rem}.prose h2{font-size:1.5rem}.prose h3{font-size:1.125rem}.prose p,.prose li{font-size:1rem}[data-prose-size=lg] .prose p,[data-prose-size=lg] .prose li{font-size:1.125rem;line-height:1.8}}.hover\:text-accent:hover{color:var(--accent)}.hover\:text-accent-hover:hover{color:var(--accent-hover)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.group:hover .group-hover\:text-accent{color:var(--accent)}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}}@media(min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:gap-10{gap:2.5rem}.md\:px-5{padding-left:32px;padding-right:32px}.md\:py-12{padding-top:3rem;padding-bottom:3rem}.md\:py-8,.md\:py-\[96px\]{padding-top:96px;padding-bottom:96px}.md\:text-body{font-size:1.125rem;line-height:1.7;font-weight:400}.md\:text-h1{font-size:2.5rem;line-height:1.2;font-weight:700}.md\:text-h2{font-size:1.75rem;line-height:1.3;font-weight:600}.md\:text-h3{font-size:1.25rem;line-height:1.4;font-weight:600}}
