@layer p31.tokens,p31.reset,p31.base,p31.layout,p31.components,p31.utilities;@layer p31.tokens{:root{--p31-accent-alt: oklch(65% .18 285);--p31-text: oklch(96% .005 240);--p31-glass-border-hover: oklch(100% .01 240 / .15);--p31-glass-blur: blur(12px);--p31-glass-bg-strong: oklch(100% .01 75 / .22);--p31-glass-bg-overlay: oklch(100% .01 75 / .1);--p31-glass-bg-light: oklch(100% .01 75 / .1);--p31-glass-border-strong: oklch(100% .01 75 / .16);--p31-glass-border-strong-hover: oklch(100% .01 75 / .25);--p31-glow-cyan: 0 0 20px rgba(0,240,255,.25);--p31-glow-neon: 0 0 6px oklch(90.5% .155 194.8), 0 0 20px oklch(90.5% .155 194.8 / .3);--p31-glow-magenta: 0 0 6px oklch(70.2% .322 328.4), 0 0 20px oklch(70.2% .322 328.4 / .3);--p31-glow-violet: 0 0 6px oklch(67% .234 309.1), 0 0 20px oklch(67% .234 309.1 / .3);--p31-glow-amber: 0 0 6px oklch(88.7% .182 95.3), 0 0 20px oklch(88.7% .182 95.3 / .3);--p31-glow-mint: 0 0 6px oklch(87.6% .228 152.5), 0 0 20px oklch(87.6% .228 152.5 / .3);--p31-glow-coral: 0 0 6px oklch(71.2% .181 22.8), 0 0 20px oklch(71.2% .181 22.8 / .3);--p31-neon: oklch(90.5% .155 194.8);--p31-neon-dim: oklch(90.5% .155 194.8 / .35);--p31-neon-faint: oklch(90.5% .155 194.8 / .08);--p31-neon-ghost: oklch(90.5% .155 194.8 / .03);--p31-neon-cyan: oklch(90.5% .155 194.8);--p31-neon-magenta: oklch(70.2% .322 328.4);--p31-neon-violet: oklch(67% .234 309.1);--p31-neon-amber: oklch(88.7% .182 95.3);--p31-neon-mint: oklch(87.6% .228 152.5);--p31-neon-coral: oklch(71.2% .181 22.8);--p31-neon-orange: oklch(75.4% .164 50.4);--p31-neon-blue: oklch(80.4% .146 219.5);--p31-neon-lavender: oklch(62% .279 290.8);--p31-neon-pink: oklch(67.4% .293 340.4);--p31-surface-s1: oklch(0% 0 0);--p31-surface-s2: oklch(4.9% 0 0);--p31-surface-s3: oklch(6.9% 0 0);--p31-surface-s4: oklch(10.5% 0 0);--p31-status-online: oklch(65% .18 105);--p31-status-offline: oklch(78% .01 240);--p31-status-warning: oklch(65% .18 15);--p31-status-error: oklch(65% .18 20);--p31-status-info: oklch(65% .18 195);--p31-scale-3xl: calc(var(--p31-base) * 4.2139);--p31-scale-4xl: calc(var(--p31-base) * 5.6186);--p31-type-caption: clamp(var(--p31-scale-xs), .8vw, var(--p31-scale-sm));--p31-type-body: clamp(calc(var(--p31-base) * .95), 1vw + .5rem, var(--p31-scale-sm));--p31-type-label: var(--p31-scale-sm);--p31-type-h3: clamp(var(--p31-scale-md), 2vw, var(--p31-scale-lg));--p31-type-h2: clamp(var(--p31-scale-lg), 3.5vw, var(--p31-scale-xl));--p31-type-h1: clamp(var(--p31-scale-xl), 5.6vw, var(--p31-scale-2xl));--p31-type-display: clamp(var(--p31-scale-2xl), 7vw, var(--p31-scale-3xl));--p31-font-display: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--p31-duration-fast: .1s;--p31-duration-normal: .3s;--p31-duration-slow: .5s;--p31-easing-smooth: cubic-bezier(.4, 0, .2, 1);--p31-easing-snappy: cubic-bezier(.34, 1.56, .64, 1);--p31-easing-linear: linear;--p31-speed-factor: 1;--p31-starfield-hearth: oklch(55% .15 35);--p31-starfield-teal: oklch(60% .08 185);--p31-starfield-remembrance: oklch(95% .01 80);--p31-starfield-particle-teal: oklch(70% .12 185 / .6);--p31-starfield-particle-coral: oklch(65% .14 40 / .5);--p31-blur-subtle: 8px;--p31-blur-standard: 12px;--p31-blur-strong: 24px;--p31-space-xs: clamp(var(--p31-scale-xs), 1vw, var(--p31-scale-sm));--p31-space-sm: clamp(var(--p31-scale-sm), 1.5vw, var(--p31-scale-md));--p31-space-md: clamp(var(--p31-scale-md), 2.5vw, var(--p31-scale-lg));--p31-space-lg: clamp(var(--p31-scale-lg), 3.5vw, var(--p31-scale-xl));--p31-space-xl: clamp(var(--p31-scale-xl), 5vw, var(--p31-scale-2xl));--p31-space-2xl: clamp(var(--p31-scale-2xl), 6.5vw, var(--p31-scale-3xl));--p31-space-tiny: 2px;--p31-radius-xl: calc(var(--p31-scale-xl) / 2);--p31-radius-candy: 24px;--p31-touch-min: 48px;--p31-touch-recommended: 56px;--p31-touch-large: 64px;--p31-z-starfield: 0;--p31-z-topbar: 10;--p31-z-toast: 9999;--p31-z-crisis: 99999;--p31-z-skip-link: 100;--p31-topbar-height: 64px;--p31-z-content: 1;--p31-z-floating: 60;--p31-space-3xl: 64px;--p31-void: #0A0A0F;--p31-cloud: #A1A1AA;--p31-glass-surface: oklch(100% .01 240 / .04);--p31-glass-surface-hover: oklch(100% .01 240 / .06);--p31-glass-radius: 24px;--p31-spacing-xs: 4px;--p31-spacing-sm: 8px;--p31-spacing-md: 16px;--p31-spacing-lg: 24px;--p31-spacing-xl: 32px;--p31-spacing-xxl: 64px;--p31-radius-none: 0;--p31-h1: 51px;--p31-h2: 38px;--p31-h3: 28px;--p31-h4: 21px;--p31-body: 16px;--p31-body-sm: 14px;--p31-label: 12px;--p31-caption: 7px;--p31-duration-instant: 62.5ms;--p31-duration-standard: .25s;--p31-duration-slower: 1s;--p31-easing-standard: cubic-bezier(.4, 0, .2, 1);--p31-easing-decelerate: cubic-bezier(0, 0, .2, 1);--p31-easing-accelerate: cubic-bezier(.4, 0, 1, 1);--p31-card-padding: 24px;--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: calc(var(--p31-scale-md) / 2);--p31-radius-lg: calc(var(--p31-scale-lg) / 2);--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--p31-font-mono: ui-monospace, SFMono-Regular, "Fira Code", "Fira Mono", "Roboto Mono", "JetBrains Mono", Menlo, Monaco, Consolas, monospace;--p31-bg: oklch(10% .01 240);--p31-surface: oklch(15% .015 240);--p31-surface2: oklch(22% .02 240);--p31-accent: oklch(65% .18 195);--p31-accent-cyan: oklch(70% .15 200);--p31-accent-violet: oklch(65% .18 285);--p31-accent-gold: oklch(65% .18 15);--p31-accent-green: oklch(65% .18 105);--p31-accent-red: oklch(65% .18 20);--p31-accent-iris: oklch(65% .18 270);--p31-text-primary: oklch(96% .005 240);--p31-text-secondary: oklch(80% .01 240);--p31-text-tertiary: oklch(78% .01 240);--p31-glass-bg: oklch(100% .01 240 / .04);--p31-glass-border: oklch(100% .01 240 / .08);--p31-glass-shadow: 0 8px 32px rgba(0,0,0,.15);--p31-color-action-primary: oklch(70% .15 200);--p31-color-action-primary-hover: oklch(70% .15 200 / .8);--p31-color-action-primary-text: oklch(95% .02 230);--p31-color-action-secondary: oklch(22% .045 240);--p31-color-action-secondary-text: oklch(95% .02 230);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .01 230 / .04);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=cipher]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(10% .01 240);--p31-surface: oklch(15% .015 240);--p31-surface2: oklch(22% .02 240);--p31-accent: oklch(65% .18 195);--p31-accent-cyan: oklch(65% .18 195);--p31-accent-violet: oklch(65% .18 285);--p31-accent-gold: oklch(65% .18 15);--p31-accent-green: oklch(65% .18 105);--p31-accent-red: oklch(65% .18 30);--p31-accent-iris: oklch(65% .18 255);--p31-text-primary: oklch(96% .005 240);--p31-text-secondary: oklch(75% .01 240);--p31-text-tertiary: oklch(55% .01 240);--p31-glass-bg: oklch(100% .01 240 / .05);--p31-glass-border: oklch(100% .01 240 / .1);--p31-glass-shadow: 0 8px 32px rgba(0, 0, 0, .2);--p31-color-action-primary: oklch(65% .18 195);--p31-color-action-primary-hover: oklch(65% .18 195 / .8);--p31-color-action-primary-text: oklch(96% .005 240);--p31-color-action-secondary: oklch(22% .02 240);--p31-color-action-secondary-text: oklch(96% .005 240);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .01 240 / .05);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=garden]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(12% .02 140);--p31-surface: oklch(18% .025 140);--p31-surface2: oklch(25% .03 140);--p31-accent: oklch(70% .15 145);--p31-accent-cyan: oklch(70% .15 145);--p31-accent-violet: oklch(70% .15 185);--p31-accent-gold: oklch(75% .15 85);--p31-accent-green: oklch(70% .15 145);--p31-accent-red: oklch(65% .15 30);--p31-accent-iris: oklch(70% .15 220);--p31-text-primary: oklch(95% .02 120);--p31-text-secondary: oklch(78% .02 130);--p31-text-tertiary: oklch(55% .02 130);--p31-glass-bg: oklch(100% .01 120 / .04);--p31-glass-border: oklch(100% .01 120 / .1);--p31-glass-shadow: 0 8px 32px rgba(0, 0, 0, .2);--p31-color-action-primary: oklch(70% .15 145);--p31-color-action-primary-hover: oklch(70% .15 145 / .8);--p31-color-action-primary-text: oklch(95% .02 120);--p31-color-action-secondary: oklch(25% .03 140);--p31-color-action-secondary-text: oklch(95% .02 120);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .01 120 / .04);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=retro]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(8% .02 60);--p31-surface: oklch(12% .025 60);--p31-surface2: oklch(18% .03 60);--p31-accent: oklch(75% .18 80);--p31-accent-cyan: oklch(75% .18 80);--p31-accent-violet: oklch(70% .18 320);--p31-accent-gold: oklch(78% .18 70);--p31-accent-green: oklch(65% .18 140);--p31-accent-red: oklch(70% .18 30);--p31-accent-iris: oklch(70% .18 310);--p31-text-primary: oklch(95% .05 80);--p31-text-secondary: oklch(78% .04 75);--p31-text-tertiary: oklch(52% .03 70);--p31-glass-bg: oklch(100% .02 60 / .05);--p31-glass-border: oklch(100% .02 60 / .12);--p31-glass-shadow: 0 8px 32px rgba(255, 180, 0, .08);--p31-color-action-primary: oklch(75% .18 80);--p31-color-action-primary-hover: oklch(75% .18 80 / .8);--p31-color-action-primary-text: oklch(95% .05 80);--p31-color-action-secondary: oklch(18% .03 60);--p31-color-action-secondary-text: oklch(95% .05 80);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .02 60 / .05);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=ocean]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(10% .03 240);--p31-surface: oklch(15% .04 240);--p31-surface2: oklch(22% .045 240);--p31-accent: oklch(70% .15 200);--p31-accent-cyan: oklch(70% .15 200);--p31-accent-violet: oklch(65% .15 250);--p31-accent-gold: oklch(72% .15 40);--p31-accent-green: oklch(70% .15 160);--p31-accent-red: oklch(70% .15 20);--p31-accent-iris: oklch(70% .15 230);--p31-text-primary: oklch(95% .02 230);--p31-text-secondary: oklch(78% .02 235);--p31-text-tertiary: oklch(55% .02 235);--p31-glass-bg: oklch(100% .01 230 / .04);--p31-glass-border: oklch(100% .01 230 / .08);--p31-glass-shadow: 0 8px 32px rgba(0, 100, 200, .1);--p31-color-action-primary: oklch(70% .15 200);--p31-color-action-primary-hover: oklch(70% .15 200 / .8);--p31-color-action-primary-text: oklch(95% .02 230);--p31-color-action-secondary: oklch(22% .045 240);--p31-color-action-secondary-text: oklch(95% .02 230);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .01 230 / .04);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=sunset]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(12% .03 30);--p31-surface: oklch(17% .035 30);--p31-surface2: oklch(23% .04 30);--p31-accent: oklch(72% .18 40);--p31-accent-cyan: oklch(72% .18 40);--p31-accent-violet: oklch(70% .18 360);--p31-accent-gold: oklch(75% .18 60);--p31-accent-green: oklch(65% .18 140);--p31-accent-red: oklch(72% .18 25);--p31-accent-iris: oklch(70% .18 340);--p31-text-primary: oklch(95% .03 50);--p31-text-secondary: oklch(78% .03 40);--p31-text-tertiary: oklch(55% .03 35);--p31-glass-bg: oklch(100% .01 30 / .06);--p31-glass-border: oklch(100% .01 30 / .1);--p31-glass-shadow: 0 8px 32px rgba(200, 100, 0, .08);--p31-color-action-primary: oklch(72% .18 40);--p31-color-action-primary-hover: oklch(72% .18 40 / .8);--p31-color-action-primary-text: oklch(95% .03 50);--p31-color-action-secondary: oklch(23% .04 30);--p31-color-action-secondary-text: oklch(95% .03 50);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .01 30 / .06);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=mono]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(8% 0 0);--p31-surface: oklch(14% 0 0);--p31-surface2: oklch(20% 0 0);--p31-accent: oklch(80% 0 0);--p31-accent-cyan: oklch(75% 0 0);--p31-accent-violet: oklch(70% 0 0);--p31-accent-gold: oklch(78% 0 0);--p31-accent-green: oklch(72% 0 0);--p31-accent-red: oklch(68% 0 0);--p31-accent-iris: oklch(74% 0 0);--p31-text-primary: oklch(95% 0 0);--p31-text-secondary: oklch(75% 0 0);--p31-text-tertiary: oklch(50% 0 0);--p31-glass-bg: oklch(100% 0 0 / .05);--p31-glass-border: oklch(100% 0 0 / .1);--p31-glass-shadow: 0 8px 32px rgba(0, 0, 0, .2);--p31-color-action-primary: oklch(80% 0 0);--p31-color-action-primary-hover: oklch(80% 0 0 / .8);--p31-color-action-primary-text: oklch(95% 0 0);--p31-color-action-secondary: oklch(20% 0 0);--p31-color-action-secondary-text: oklch(95% 0 0);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% 0 0 / .05);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=aurora]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(9% .03 260);--p31-surface: oklch(14% .035 260);--p31-surface2: oklch(20% .04 260);--p31-accent: oklch(72% .16 250);--p31-accent-cyan: oklch(65% .16 225);--p31-accent-violet: oklch(72% .16 250);--p31-accent-gold: oklch(75% .16 65);--p31-accent-green: oklch(70% .16 160);--p31-accent-red: oklch(70% .16 25);--p31-accent-iris: oklch(72% .16 290);--p31-text-primary: oklch(95% .03 260);--p31-text-secondary: oklch(78% .03 260);--p31-text-tertiary: oklch(55% .03 260);--p31-glass-bg: oklch(100% .02 260 / .05);--p31-glass-border: oklch(100% .02 260 / .1);--p31-glass-shadow: 0 8px 32px rgba(100, 50, 200, .12);--p31-color-action-primary: oklch(72% .16 250);--p31-color-action-primary-hover: oklch(72% .16 250 / .8);--p31-color-action-primary-text: oklch(95% .03 260);--p31-color-action-secondary: oklch(20% .04 260);--p31-color-action-secondary-text: oklch(95% .03 260);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .02 260 / .05);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=zen]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(14% .01 75);--p31-surface: oklch(19% .012 75);--p31-surface2: oklch(25% .015 75);--p31-accent: oklch(72% .1 75);--p31-accent-cyan: oklch(68% .1 190);--p31-accent-violet: oklch(70% .1 300);--p31-accent-gold: oklch(75% .12 75);--p31-accent-green: oklch(68% .1 140);--p31-accent-red: oklch(68% .12 25);--p31-accent-iris: oklch(70% .1 250);--p31-text-primary: oklch(93% .01 75);--p31-text-secondary: oklch(75% .012 75);--p31-text-tertiary: oklch(55% .01 75);--p31-glass-bg: oklch(100% .01 75 / .05);--p31-glass-border: oklch(100% .01 75 / .1);--p31-glass-shadow: 0 8px 32px rgba(120, 100, 70, .1);--p31-color-action-primary: oklch(72% .1 75);--p31-color-action-primary-hover: oklch(72% .1 75 / .8);--p31-color-action-primary-text: oklch(93% .01 75);--p31-color-action-secondary: oklch(25% .015 75);--p31-color-action-secondary-text: oklch(93% .01 75);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .01 75 / .05);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}[data-theme=volt]{--p31-base: 16px;--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-radius-sm: 8px;--p31-radius-md: 16px;--p31-radius-lg: 24px;--p31-radius-full: 9999px;--p31-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--p31-font-mono: ui-monospace, "SF Mono", "Fira Code", "JetBrains Mono", monospace;--p31-bg: oklch(12% .02 270);--p31-surface: oklch(18% .025 270);--p31-surface2: oklch(25% .03 270);--p31-accent: oklch(75% .17 190);--p31-accent-cyan: oklch(75% .17 190);--p31-accent-violet: oklch(72% .17 300);--p31-accent-gold: oklch(78% .17 60);--p31-accent-green: oklch(72% .17 150);--p31-accent-red: oklch(72% .17 20);--p31-accent-iris: oklch(73% .17 260);--p31-text-primary: oklch(96% .01 270);--p31-text-secondary: oklch(80% .01 270);--p31-text-tertiary: oklch(58% .01 270);--p31-glass-bg: oklch(100% .01 270 / .05);--p31-glass-border: oklch(100% .01 270 / .12);--p31-glass-shadow: 0 8px 32px rgba(0, 160, 220, .12);--p31-color-action-primary: oklch(75% .17 190);--p31-color-action-primary-hover: oklch(75% .17 190 / .8);--p31-color-action-primary-text: oklch(96% .01 270);--p31-color-action-secondary: oklch(25% .03 270);--p31-color-action-secondary-text: oklch(96% .01 270);--p31-color-action-ghost: transparent;--p31-color-action-ghost-hover: oklch(100% .01 270 / .05);--p31-space-inline-sm: 8px;--p31-space-inline-md: 16px;--p31-space-inline-lg: 24px;--p31-font-size-sm: 14px;--p31-font-size-md: 16px;--p31-font-size-lg: 20px;--p31-motion-duration-fast: .15s;--p31-motion-easing-standard: cubic-bezier(.4, 0, .2, 1)}}:root [data-brand=p31ca]{--p31-glass-bg: oklch(14% .02 260 / .35);--p31-glass-border: oklch(100% .01 240 / .12);--p31-glass-border-hover: oklch(100% .01 240 / .25);--p31-glass-blur: blur(24px)}:root [data-brand=phosphorus31]{--p31-glass-bg: oklch(99% .01 85 / .55);--p31-glass-border: oklch(80% .02 75 / .3);--p31-glass-border-hover: oklch(70% .03 70 / .4);--p31-glass-blur: blur(16px)}:root [data-brand=willow]{--p31-glass-bg: rgba(255, 248, 240, .7);--p31-glass-border: rgba(200, 180, 160, .25);--p31-glass-blur: blur(16px);--p31-text: oklch(25% .02 80);--p31-text-secondary: oklch(55% .02 75);--p31-accent: oklch(65% .18 45);--p31-accent-alt: oklch(60% .15 200);--p31-accent-gold: oklch(72% .14 80);--p31-accent-green: oklch(70% .12 120);--p31-accent-red: oklch(62% .15 10);--p31-font-sans: "Comic Sans MS", "Chalkboard SE", cursive, sans-serif;--p31-font-display: "Comic Sans MS", "Chalkboard SE", cursive;--p31-radius-sm: 12px;--p31-radius-md: 20px;--p31-radius-lg: 28px;--p31-radius-xl: 40px;--p31-radius-full: 9999px;--p31-space-xs: .5rem;--p31-space-sm: .75rem;--p31-space-md: 1.25rem;--p31-space-lg: 2rem;--p31-space-xl: 2.5rem;--p31-space-2xl: 4rem;--p31-duration-fast: .2s;--p31-duration-normal: .4s;--p31-duration-slow: .6s;--p31-easing-smooth: cubic-bezier(.34, 1.56, .64, 1);--p31-easing-snappy: cubic-bezier(.34, 1.56, .64, 1);--p31-touch-min: 56px;--p31-touch-recommended: 64px}[data-spoons="0"],[data-spoons="1"]{--p31-speed-factor: 0;--p31-glass-blur: none}[data-spoons="2"]{--p31-speed-factor: .25;--p31-glass-blur: blur(8px)}[data-spoons="3"]{--p31-speed-factor: .5;--p31-glass-blur: blur(12px)}[data-spoons="4"]{--p31-speed-factor: .75;--p31-glass-blur: blur(12px)}[data-spoons="5"]{--p31-speed-factor: 1;--p31-glass-blur: blur(16px)}@media(prefers-reduced-motion:reduce){:root{--p31-speed-factor: 0}}[data-dark-mode=true]{--p31-glass-bg: rgba(30, 28, 26, .8);--p31-glass-border: rgba(80, 75, 70, .3);--p31-text: oklch(90% .01 80);--p31-text-secondary: oklch(65% .02 80)}[data-theme=light]{--p31-bg: #F8FAFC;--p31-surface: #FFFFFF;--p31-surface2: #F1F5F9;--p31-text: #0F172A;--p31-text-secondary: rgba(15,23,42,.6);--p31-text-tertiary: rgba(15,23,42,.3);--p31-glass-bg: rgba(0,0,0,.03);--p31-glass-border: rgba(0,0,0,.08);--p31-glass-border-hover: rgba(0,0,0,.15)}[data-portal=mesh]{--p31-portal-accent: var(--p31-accent);--p31-portal-glow: rgba(0, 240, 255, .08)}[data-portal=research]{--p31-portal-accent: var(--p31-accent-violet);--p31-portal-glow: rgba(167, 139, 250, .08)}[data-portal=quantum]{--p31-portal-accent: var(--p31-accent-alt);--p31-portal-glow: rgba(139, 92, 246, .08)}[data-portal=build]{--p31-portal-accent: var(--p31-accent-green);--p31-portal-glow: rgba(52, 211, 153, .08)}[data-portal=blog]{--p31-portal-accent: var(--p31-accent);--p31-portal-glow: rgba(0, 240, 255, .06)}[data-portal=passport]{--p31-portal-accent: var(--p31-accent-iris);--p31-portal-glow: rgba(139, 92, 246, .08)}[data-portal=care]{--p31-portal-accent: var(--p31-accent-gold);--p31-portal-glow: rgba(251, 191, 36, .08)}[data-portal] main,[data-portal] .portal-content{position:relative;z-index:1}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}:root{--loom-letter-spacing: .02em;--loom-line-height: 1.5;--loom-density: "comfortable"}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{background:var(--p31-bg, #0a0e14);color:var(--p31-text, #e2e8f0);font-family:var(--p31-font-sans, system-ui, sans-serif)}.loom-shell{display:grid;grid-template-columns:1fr 320px;grid-template-rows:48px 1fr auto;grid-template-areas:"bar bar" "canvas panel" "scrub scrub";height:100%}.loom-bar{grid-area:bar;display:flex;align-items:center;gap:16px;padding:0 16px;border-bottom:1px solid var(--p31-glass-border, rgba(255, 255, 255, .1));font-size:13px}.loom-counts{color:var(--p31-text-secondary, #94a3b8)}.loom-human{color:var(--p31-text-secondary, #94a3b8);font-size:12px}.loom-agent{color:var(--p31-accent-violet, #a78bfa);font-size:12px}.loom-gate{margin-left:auto;color:var(--p31-accent, #00f0ff);font-size:12px}.loom-mode{margin-left:8px;padding:4px 10px;border-radius:6px;border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .2));background:var(--p31-surface, #12121a);color:var(--p31-text, #e2e8f0);font-size:12px;cursor:pointer}.loom-mode[aria-pressed=true]{border-color:var(--p31-accent, #00f0ff);color:var(--p31-accent, #00f0ff)}.instrument{position:relative;width:100%;height:100%;overflow:hidden}.instrument-canvas{display:block;width:100%;height:100%}.instrument-hint{position:absolute;left:16px;bottom:16px;padding:4px 10px;border-radius:6px;border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .2));background:var(--p31-surface, #12121a);color:var(--p31-text-secondary, #94a3b8);font-size:12px;pointer-events:none}.instrument-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.jb{position:relative;width:100%;height:100%;overflow:hidden;background:var(--p31-bg, rgb(2, 3, 8))}.jb-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none}.jb-phase{position:absolute;top:50%;left:40px;transform:translateY(-50%);max-width:380px;pointer-events:none}.jb-quote{font-size:1.35rem;line-height:1.5;font-style:italic;color:var(--p31-text, rgb(226, 232, 240));transition:opacity .8s ease;opacity:.92}.jb-quote.fade{opacity:0}.jb-attrib{margin-top:14px;font-family:var(--p31-font-mono, monospace);font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--p31-text-tertiary, rgb(100, 116, 139))}.jb-readouts{position:absolute;bottom:36px;left:40px;font-family:var(--p31-font-mono, monospace);font-size:.72rem;letter-spacing:.12em;line-height:1.9;color:var(--p31-text-secondary, rgb(148, 163, 184));pointer-events:none}.jb-row{display:flex;gap:18px;align-items:baseline}.jb-key{color:var(--p31-text-tertiary, rgb(100, 116, 139));min-width:96px}.jb-val{color:var(--p31-text, rgb(226, 232, 240));font-weight:500}.jb-val.closed{color:var(--p31-accent-gold, rgb(251, 191, 36));text-shadow:0 0 12px var(--p31-glow-amber, rgba(251, 191, 36, .5))}.jb-val.jb-hot{color:var(--p31-accent, rgb(0, 240, 255))}.jb-bar{display:inline-block;width:90px;height:2px;background:var(--p31-glass-border, rgba(255, 255, 255, .12));vertical-align:middle}.jb-bar>i{display:block;height:100%;background:var(--p31-accent-gold, rgb(251, 191, 36))}.jb-controls{position:absolute;bottom:36px;right:40px;display:flex;flex-direction:column;gap:14px;align-items:flex-end;font-family:var(--p31-font-mono, monospace);font-size:.68rem;letter-spacing:.15em;color:var(--p31-text-tertiary, rgb(100, 116, 139))}.jb-slider{display:flex;align-items:center;gap:14px}.jb-slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:220px;height:2px;background:var(--p31-glass-border, rgba(255, 255, 255, .12));outline:none}.jb-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--p31-accent-gold, rgb(251, 191, 36));cursor:pointer;box-shadow:0 0 14px var(--p31-glow-amber, rgba(251, 191, 36, .5))}.jb-slider input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;border:none;background:var(--p31-accent-gold, rgb(251, 191, 36));cursor:pointer;box-shadow:0 0 14px var(--p31-glow-amber, rgba(251, 191, 36, .5))}.jb-tval{min-width:42px;text-align:right;color:var(--p31-text, rgb(226, 232, 240))}.jb-btns{display:flex;gap:10px}.jb-btns button{font-family:var(--p31-font-mono, monospace);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;background:transparent;color:var(--p31-text, rgb(226, 232, 240));border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .16));padding:8px 16px;cursor:pointer;transition:border-color .25s ease,color .25s ease,box-shadow .25s ease}.jb-btns button:hover,.jb-btns button.on{border-color:var(--p31-accent-gold, rgb(251, 191, 36));color:var(--p31-accent-gold, rgb(251, 191, 36))}@media(max-width:820px){.jb-phase{max-width:240px}.jb-quote{font-size:1rem}.jb-readouts,.jb-controls{font-size:.58rem}.jb-slider input[type=range]{width:140px}}.loom-canvas{grid-area:canvas;min-height:0;background:var(--p31-bg, #0a0e14)}.loom-loading{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--p31-text-tertiary, #64748b);font-family:var(--p31-font-mono, monospace);font-size:13px}.loom-panel{grid-area:panel;border-left:1px solid var(--p31-glass-border, rgba(255, 255, 255, .1));padding:16px;overflow:auto;font-size:13px}.loom-panel h2{font-size:15px;margin:8px 0}.loom-panel code{font-family:var(--p31-font-mono, monospace);font-size:11px;color:var(--p31-text-tertiary, #64748b)}.loom-panel{line-height:var(--loom-line-height)}.loom-panel p{letter-spacing:var(--loom-letter-spacing)}.loom-hint{color:var(--p31-text-tertiary, #64748b)}.loom-summary{color:var(--p31-text-secondary, #94a3b8);letter-spacing:var(--loom-letter-spacing);line-height:var(--loom-line-height)}.loom-kind{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;background:var(--p31-glass-surface, rgba(255, 255, 255, .06))}.loom-kind--token{color:var(--p31-accent, #00f0ff)}.loom-kind--class{color:var(--p31-accent-green, #34d399)}.loom-kind--component{color:var(--p31-accent-gold, #fbbf24)}.loom-kind--theme{color:var(--p31-accent-violet, #a78bfa)}.loom-actions{display:flex;gap:8px;margin-top:12px}.loom-reject{display:flex;gap:8px;margin-top:8px;align-items:center}.loom-reason{flex:1;padding:5px 8px;border-radius:6px;border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .2));background:var(--p31-surface, #12121a);color:var(--p31-text, #e2e8f0);font-size:12px}.loom-btn{padding:6px 12px;border-radius:6px;border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .2));background:var(--p31-surface, #12121a);color:var(--p31-text, #e2e8f0);cursor:pointer}.loom-btn--ok{border-color:var(--p31-accent-green, #34d399)}.loom-btn--no{border-color:var(--p31-accent-red, #fb7185)}.loom-node{font-size:10px;padding:2px 6px;border-radius:6px;border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .14));background:var(--p31-surface, #12121a);color:var(--p31-text, #e2e8f0);white-space:nowrap}.loom-node--token{border-color:var(--p31-accent, #00f0ff)}.loom-node--class{border-color:var(--p31-accent-green, #34d399)}.loom-node--component{border-color:var(--p31-accent-gold, #fbbf24);font-weight:700}.loom-node--theme{border-color:var(--p31-accent-violet, #a78bfa)}.loom-node--focused{outline:2px solid var(--p31-accent, #00f0ff);outline-offset:2px}.loom-node--cursor{border-color:var(--p31-accent-violet, #a78bfa);border-width:2px}.loom-node--trail{background:var(--p31-accent-violet, #a78bfa)}.loom-node--proposal{border-style:dashed;border-color:var(--p31-accent-gold, #fbbf24)}.loom-node--proposal--pending{opacity:.7}.loom-node--proposal--approved{border-style:solid;border-color:var(--p31-accent-green, #34d399)}.loom-node--proposal--rejected{border-color:var(--p31-accent-red, #fb7185);text-decoration:line-through}.loom-proposal-node{display:flex;flex-direction:column;gap:3px}.loom-proposal-label{font-size:10px;white-space:nowrap}.loom-survival-track{display:block;width:64px;height:3px;border-radius:2px;background:#ffffff1a;overflow:hidden}.loom-survival-fill{display:block;height:100%;border-radius:2px;transition:width .2s ease}.loom-survival--ok{background:var(--p31-accent-green, #34d399)}.loom-survival--warn{background:var(--p31-accent-gold, #fbbf24)}.loom-survival--drift{background:var(--p31-accent-red, #fb7185)}.loom-edge{stroke:var(--p31-glass-border, rgba(255, 255, 255, .12))}.loom-shell[data-tier=beginner] .loom-survival-track,.loom-shell[data-tier=intermediate] .loom-survival-track{display:none}.loom-json{margin-top:12px;padding:8px;border-radius:6px;background:var(--p31-surface, #12121a);border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .2));font-family:var(--p31-font-mono, monospace);font-size:11px;overflow:auto;max-height:240px;color:var(--p31-text-secondary, #94a3b8)}.loom-more{margin-top:12px;width:100%;padding:6px 12px;border-radius:6px;border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .2));background:none;color:var(--p31-accent, #00f0ff);cursor:pointer;font-size:12px}.digest-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.digest-item{display:flex;gap:8px;align-items:baseline;width:100%;padding:8px;border-radius:6px;border:1px solid var(--p31-glass-border, rgba(255, 255, 255, .14));background:var(--p31-surface, #12121a);color:var(--p31-text, #e2e8f0);cursor:pointer;font-size:13px;letter-spacing:var(--loom-letter-spacing);line-height:var(--loom-line-height)}.digest-id{color:var(--p31-accent-gold, #fbbf24)}.digest-node{color:var(--p31-text, #e2e8f0)}.digest-author{margin-left:auto;color:var(--p31-text-tertiary, #64748b)}.ev{display:flex;flex-direction:column;gap:8px}.ev-head{display:flex;align-items:center;gap:8px;font-size:13px}.ev-count{color:var(--p31-text-tertiary, #64748b)}.ev-follow{margin-left:auto;font-size:11px;background:none;border:none;color:var(--p31-accent, #00f0ff);cursor:pointer}.ev-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.ev-empty{color:var(--p31-text-tertiary, #64748b)}.ev-item{display:flex;gap:8px;align-items:baseline;padding:4px 8px;border-radius:4px;border-left:2px solid transparent;font-size:12px;font-family:var(--p31-font-mono, monospace);letter-spacing:var(--loom-letter-spacing);line-height:var(--loom-line-height);cursor:pointer}.ev-item--human{border-left-color:var(--p31-accent, #00f0ff)}.ev-item--agent{border-left-color:var(--p31-accent-violet, #a78bfa)}.ev-item--cur{background:var(--p31-glass-surface, rgba(255, 255, 255, .06))}.ev-seq{color:var(--p31-text-tertiary, #64748b)}.ev-writer{margin-left:auto;color:var(--p31-text-tertiary, #64748b)}.loom-scrub{grid-area:scrub;display:flex;align-items:center;gap:12px;padding:8px 16px;border-top:1px solid var(--p31-glass-border, rgba(255, 255, 255, .1))}.scrub{display:flex;align-items:center;gap:12px;width:100%}.scrub-range{flex:1}.scrub-pos{font-family:var(--p31-font-mono, monospace);font-size:12px;color:var(--p31-text-secondary, #94a3b8)}
