@layer tokens{:root{--color-bg-base: oklch(12% .01 280);--color-bg-surface: oklch(16% .015 280);--color-bg-elevated: oklch(22% .02 280);--color-bg-card: oklch(22% .02 280 / .7);--color-bg-card-solid: oklch(24% .02 280);--color-bg-input: oklch(18% .015 280);--color-bg-hover: oklch(28% .025 280);--color-bg-active: oklch(32% .03 280);--color-text-primary: oklch(95% .005 280);--color-text-secondary: oklch(75% .01 280);--color-text-muted: oklch(60% .01 280);--color-text-faint: oklch(45% .01 280);--color-text-inverse: oklch(12% .01 280);--color-accent-50: oklch(95% .05 300);--color-accent-100: oklch(85% .1 300);--color-accent-200: oklch(75% .15 300);--color-accent-300: oklch(65% .2 300);--color-accent-400: oklch(55% .25 300);--color-accent-500: oklch(48% .28 300);--color-accent-600: oklch(42% .3 300);--color-accent-700: oklch(36% .28 300);--color-accent-800: oklch(30% .25 300);--color-accent-900: oklch(24% .2 300);--color-success: oklch(65% .2 145);--color-success-dim: oklch(65% .2 145 / .15);--color-error: oklch(60% .22 25);--color-error-dim: oklch(60% .22 25 / .15);--color-warning: oklch(70% .18 75);--color-warning-dim: oklch(70% .18 75 / .15);--color-info: oklch(65% .18 250);--color-info-dim: oklch(65% .18 250 / .15);--glass-bg: oklch(22% .02 280 / .6);--glass-bg-light: oklch(95% .01 280 / .05);--glass-border: oklch(100% 0 0 / .08);--glass-border-highlight: oklch(100% 0 0 / .15);--glass-blur: 20px;--glass-blur-heavy: 40px;--glass-shadow: 0 8px 32px oklch(0% 0 0 / .3);--glass-shadow-sm: 0 4px 16px oklch(0% 0 0 / .2);--font-display: "Satoshi", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-hero: clamp(3rem, 8vw + 1rem, 8rem);--text-h1: clamp(2.5rem, 5vw + 1rem, 5rem);--text-h2: clamp(2rem, 3vw + .5rem, 3.5rem);--text-h3: clamp(1.5rem, 2vw + .5rem, 2.5rem);--text-h4: clamp(1.25rem, 1.5vw + .25rem, 1.75rem);--text-h5: clamp(1.125rem, 1vw + .25rem, 1.375rem);--text-body: clamp(.9375rem, .5vw + .75rem, 1.125rem);--text-small: clamp(.8125rem, .3vw + .65rem, .9375rem);--text-xs: clamp(.6875rem, .2vw + .6rem, .8125rem);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 900;--line-height-tight: 1.1;--line-height-snug: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.7;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px oklch(0% 0 0 / .2);--shadow-md: 0 4px 6px -1px oklch(0% 0 0 / .3), 0 2px 4px -2px oklch(0% 0 0 / .2);--shadow-lg: 0 10px 15px -3px oklch(0% 0 0 / .3), 0 4px 6px -4px oklch(0% 0 0 / .2);--shadow-xl: 0 20px 25px -5px oklch(0% 0 0 / .35), 0 8px 10px -6px oklch(0% 0 0 / .2);--shadow-glow: 0 0 20px oklch(48% .28 300 / .3);--shadow-glow-lg: 0 0 40px oklch(48% .28 300 / .25);--shadow-inner: inset 0 2px 4px oklch(0% 0 0 / .2);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-in-out-sine: cubic-bezier(.37, 0, .63, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s;--duration-slower: .6s;--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--bp-2xl: 1536px;--gradient-hero: radial-gradient(ellipse 80% 60% at 50% -20%, oklch(48% .28 300 / .15), transparent), radial-gradient(ellipse 60% 50% at 80% 50%, oklch(42% .3 300 / .08), transparent);--gradient-cta: linear-gradient(135deg, var(--color-accent-600), var(--color-accent-400));--gradient-text: linear-gradient(135deg, var(--color-accent-200), var(--color-accent-400));--gradient-border: linear-gradient(135deg, oklch(100% 0 0 / .15), oklch(100% 0 0 / .05));--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-floating: 300;--z-overlay: 400;--z-modal: 500;--z-toast: 600;--z-popover: 700;--container-max: 1280px;--container-padding: var(--space-6)}.light-mode{--color-bg-base: oklch(96% .01 280);--color-bg-surface: oklch(100% 0 0);--color-bg-elevated: oklch(94% .01 280);--color-bg-card: oklch(100% 0 0 / .8);--color-bg-card-solid: oklch(98% .005 280);--color-bg-input: oklch(96% .01 280);--color-bg-hover: oklch(92% .015 280);--color-bg-active: oklch(88% .02 280);--color-text-primary: oklch(18% .02 280);--color-text-secondary: oklch(40% .02 280);--color-text-muted: oklch(55% .015 280);--color-text-faint: oklch(65% .01 280);--color-text-inverse: oklch(95% .005 280);--glass-bg: oklch(100% 0 0 / .6);--glass-bg-light: oklch(0% 0 0 / .03);--glass-border: oklch(0% 0 0 / .08);--glass-border-highlight: oklch(0% 0 0 / .15);--shadow-sm: 0 1px 2px oklch(0% 0 0 / .06);--shadow-md: 0 4px 6px -1px oklch(0% 0 0 / .08), 0 2px 4px -2px oklch(0% 0 0 / .04);--shadow-lg: 0 10px 15px -3px oklch(0% 0 0 / .08), 0 4px 6px -4px oklch(0% 0 0 / .04);--shadow-xl: 0 20px 25px -5px oklch(0% 0 0 / .1), 0 8px 10px -6px oklch(0% 0 0 / .04)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;word-break:normal;overflow-wrap:anywhere}body{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-base);min-height:100vh;transition:background-color .5s var(--ease-out-expo),color .5s var(--ease-out-expo);overflow-x:hidden}html{overflow-x:hidden;word-break:normal;overflow-wrap:anywhere}*,*:before,*:after{transition:background-color .4s var(--ease-out-expo),border-color .4s var(--ease-out-expo),box-shadow .4s var(--ease-out-expo)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-bold);line-height:var(--line-height-snug);color:var(--color-text-primary)}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4)}h5{font-size:var(--text-h5)}p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}a{color:var(--color-accent-400);text-decoration:none;transition:color var(--duration-fast)}a:hover{color:var(--color-accent-300)}a.button:hover{color:#fff}img{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--color-accent-500);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}::selection{background-color:var(--color-accent-500);color:var(--color-text-inverse)}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:.01em;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo);text-decoration:none;max-width:100%;overflow-wrap:break-word}.button--nowrap{white-space:nowrap}.button--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-small);border-radius:var(--radius-md)}.button--md{padding:var(--space-3) var(--space-6);font-size:var(--text-body)}.button--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-body);border-radius:var(--radius-xl)}.button--primary{background:var(--gradient-cta);color:#fff;box-shadow:var(--shadow-md)}.button--primary:hover{box-shadow:var(--shadow-glow),var(--shadow-lg);transform:translateY(-2px)}.button--primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.button--secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--glass-border)}.button--secondary:hover{border-color:var(--glass-border-highlight);background:var(--glass-bg-light)}.button--secondary:active{background:var(--color-bg-hover)}.button--ghost{background:transparent;color:var(--color-text-secondary)}.button--ghost:hover{color:var(--color-text-primary);background:var(--glass-bg-light)}.button--accent{background:var(--color-accent-500);color:#fff;box-shadow:var(--shadow-md)}.button--accent:hover{background:var(--color-accent-400);box-shadow:var(--shadow-glow),var(--shadow-lg);transform:translateY(-2px)}.button--danger{background:var(--color-error);color:#fff}.button--danger:hover{background:var(--color-error);opacity:.9}.button--glow{box-shadow:var(--shadow-glow),var(--shadow-md)}.button--glow:hover{box-shadow:var(--shadow-glow-lg),var(--shadow-lg)}.button--block{display:flex;justify-content:center;align-items:center;width:100%}.button:disabled,.button--disabled{opacity:.6;cursor:not-allowed;pointer-events:none;color:var(--color-text-muted)!important}.button--primary:disabled,.button--primary.button--disabled,.button--accent:disabled,.button--accent.button--disabled,.button--danger:disabled,.button--danger.button--disabled{color:#fff!important}.button--loading{pointer-events:none}.button--loading .button__text{opacity:0}.button--loading:after{content:"";position:absolute;width:20px;height:20px;border:2px solid currentColor;border-top-color:transparent;border-radius:var(--radius-full);animation:button-spin .6s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}.button__icon{width:20px;height:20px;flex-shrink:0}.button--sm .button__icon{width:16px;height:16px}.button--lg .button__icon{width:24px;height:24px}
