/* lsuite design system — generated by design/build.mjs from design/tokens.json. Do not edit. */

:root {
  --ls-font-sans: Manrope, ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --ls-font-mono: 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --ls-text-xs: 11px;
  --ls-text-sm: 12px;
  --ls-text-base: 13px;
  --ls-text-md: 15px;
  --ls-text-lg: 17px;
  --ls-text-xl: 22px;
  --ls-text-2xl: 28px;
  --ls-text-3xl: 40px;
  --ls-radius-xs: 4px;
  --ls-radius-sm: 6px;
  --ls-radius-md: 10px;
  --ls-radius-lg: 14px;
  --ls-radius-xl: 20px;
  --ls-radius-full: 999px;
  --ls-radius-icon: 22.37%;
  --ls-space-1: 4px;
  --ls-space-2: 8px;
  --ls-space-3: 12px;
  --ls-space-4: 16px;
  --ls-space-5: 20px;
  --ls-space-6: 24px;
  --ls-space-8: 32px;
  --ls-space-10: 40px;
  --ls-motion-fast: 120ms;
  --ls-motion-base: 200ms;
  --ls-motion-slow: 320ms;
  --ls-motion-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --ls-motion-spring: cubic-bezier(0.34, 1.4, 0.64, 1);
  --ls-ryolune-50: #e0fcf8;
  --ls-ryolune-100: #bbf6ed;
  --ls-ryolune-200: #81eadd;
  --ls-ryolune-300: #37d8c9;
  --ls-ryolune-400: #00c5b4;
  --ls-ryolune-500: #00b09f;
  --ls-ryolune-600: #009586;
  --ls-ryolune-700: #00766a;
  --ls-ryolune-800: #00584f;
  --ls-ryolune-900: #003b35;
  --ls-ryolune-950: #002420;
  --ls-kimchi-50: #ffeee9;
  --ls-kimchi-100: #ffdacf;
  --ls-kimchi-200: #ffbcab;
  --ls-kimchi-300: #ff9d88;
  --ls-kimchi-400: #f7806a;
  --ls-kimchi-500: #e36650;
  --ls-kimchi-600: #c3513d;
  --ls-kimchi-700: #9c3e2d;
  --ls-kimchi-800: #742f23;
  --ls-kimchi-900: #4e2119;
  --ls-kimchi-950: #31130d;
  --ls-zenith-50: #eaf6ff;
  --ls-zenith-100: #d2e9ff;
  --ls-zenith-200: #b0d5ff;
  --ls-zenith-300: #8fbdff;
  --ls-zenith-400: #72a6ff;
  --ls-zenith-500: #5a8ff3;
  --ls-zenith-600: #4777d2;
  --ls-zenith-700: #355da9;
  --ls-zenith-800: #28467d;
  --ls-zenith-900: #1c2f53;
  --ls-zenith-950: #101c34;
}

:root, [data-mode="dark"] {
  --ls-bg: #0b0c0f;
  --ls-bg-raised: #121318;
  --ls-bg-sunken: #07080a;
  --ls-text: #ecedf1;
  --ls-text-2: #a9acb6;
  --ls-text-3: #777b86;
  --ls-text-on-accent: #06120f;
  --ls-line: rgba(255,255,255,0.08);
  --ls-line-strong: rgba(255,255,255,0.14);
  --ls-danger: #ff6b6b;
  --ls-warning: #f2c14e;
  --ls-success: #5fd38a;
  --ls-glass-1-bg: rgba(26,28,34,0.55);
  --ls-glass-1-filter: blur(24px) saturate(160%);
  --ls-glass-2-bg: rgba(30,32,39,0.72);
  --ls-glass-2-filter: blur(32px) saturate(180%);
  --ls-glass-3-bg: rgba(34,36,44,0.84);
  --ls-glass-3-filter: blur(40px) saturate(180%);
  --ls-glass-edge: rgba(255,255,255,0.09);
  --ls-glass-highlight: inset 0 1px 0 rgba(255,255,255,0.07);
  --ls-glass-shadow: 0 12px 40px rgba(0,0,0,0.45), 0 1px 2px rgba(0,0,0,0.4);
  --ls-glass-opaque: #1a1c22;
  --ls-scrim: rgba(5,6,8,0.55);
  --ls-aurora-strength: 0.16;
}

[data-mode="light"] {
  --ls-bg: #eef0f4;
  --ls-bg-raised: #f7f8fb;
  --ls-bg-sunken: #e3e6ec;
  --ls-text: #14161b;
  --ls-text-2: #4b505b;
  --ls-text-3: #7a7f8b;
  --ls-text-on-accent: #ffffff;
  --ls-line: rgba(15,20,30,0.10);
  --ls-line-strong: rgba(15,20,30,0.16);
  --ls-danger: #d43d3d;
  --ls-warning: #a86b00;
  --ls-success: #1e8a4c;
  --ls-glass-1-bg: rgba(255,255,255,0.58);
  --ls-glass-1-filter: blur(24px) saturate(170%);
  --ls-glass-2-bg: rgba(255,255,255,0.74);
  --ls-glass-2-filter: blur(32px) saturate(180%);
  --ls-glass-3-bg: rgba(255,255,255,0.86);
  --ls-glass-3-filter: blur(40px) saturate(180%);
  --ls-glass-edge: rgba(255,255,255,0.75);
  --ls-glass-highlight: inset 0 1px 0 rgba(255,255,255,0.9);
  --ls-glass-shadow: 0 12px 40px rgba(20,30,50,0.14), 0 1px 2px rgba(20,30,50,0.10);
  --ls-glass-opaque: #f4f5f8;
  --ls-scrim: rgba(240,242,246,0.6);
  --ls-aurora-strength: 0.20;
}

@media (prefers-color-scheme: light) {
    :root:not([data-mode="dark"]) {
    --ls-bg: #eef0f4;
    --ls-bg-raised: #f7f8fb;
    --ls-bg-sunken: #e3e6ec;
    --ls-text: #14161b;
    --ls-text-2: #4b505b;
    --ls-text-3: #7a7f8b;
    --ls-text-on-accent: #ffffff;
    --ls-line: rgba(15,20,30,0.10);
    --ls-line-strong: rgba(15,20,30,0.16);
    --ls-danger: #d43d3d;
    --ls-warning: #a86b00;
    --ls-success: #1e8a4c;
    --ls-glass-1-bg: rgba(255,255,255,0.58);
    --ls-glass-1-filter: blur(24px) saturate(170%);
    --ls-glass-2-bg: rgba(255,255,255,0.74);
    --ls-glass-2-filter: blur(32px) saturate(180%);
    --ls-glass-3-bg: rgba(255,255,255,0.86);
    --ls-glass-3-filter: blur(40px) saturate(180%);
    --ls-glass-edge: rgba(255,255,255,0.75);
    --ls-glass-highlight: inset 0 1px 0 rgba(255,255,255,0.9);
    --ls-glass-shadow: 0 12px 40px rgba(20,30,50,0.14), 0 1px 2px rgba(20,30,50,0.10);
    --ls-glass-opaque: #f4f5f8;
    --ls-scrim: rgba(240,242,246,0.6);
    --ls-aurora-strength: 0.20;
  }
}

[data-app="ryolune"], [data-app="ryolune"][data-mode="dark"] {
  --ls-accent: #00c5b4;
  --ls-accent-hover: #37d8c9;
  --ls-accent-text: #37d8c9;
  --ls-accent-soft: color-mix(in srgb, #00c5b4 18%, transparent);
  --ls-accent-ring: color-mix(in srgb, #37d8c9 60%, transparent);
  --ls-aurora-a: #00c5b4;
  --ls-aurora-b: #00766a;
}
[data-app="ryolune"][data-mode="light"] {
  --ls-accent: #009586;
  --ls-accent-hover: #00766a;
  --ls-accent-text: #00766a;
  --ls-accent-soft: color-mix(in srgb, #009586 14%, transparent);
  --ls-accent-ring: color-mix(in srgb, #009586 50%, transparent);
  --ls-aurora-a: #00c5b4;
  --ls-aurora-b: #81eadd;
}
@media (prefers-color-scheme: light) {
    [data-app="ryolune"]:not([data-mode="dark"]) {
    --ls-accent: #009586;
    --ls-accent-hover: #00766a;
    --ls-accent-text: #00766a;
    --ls-accent-soft: color-mix(in srgb, #009586 14%, transparent);
    --ls-accent-ring: color-mix(in srgb, #009586 50%, transparent);
    --ls-aurora-a: #00c5b4;
    --ls-aurora-b: #81eadd;
  }
}

[data-app="kimchi"], [data-app="kimchi"][data-mode="dark"] {
  --ls-accent: #f7806a;
  --ls-accent-hover: #ff9d88;
  --ls-accent-text: #ff9d88;
  --ls-accent-soft: color-mix(in srgb, #f7806a 18%, transparent);
  --ls-accent-ring: color-mix(in srgb, #ff9d88 60%, transparent);
  --ls-aurora-a: #f7806a;
  --ls-aurora-b: #9c3e2d;
}
[data-app="kimchi"][data-mode="light"] {
  --ls-accent: #c3513d;
  --ls-accent-hover: #9c3e2d;
  --ls-accent-text: #9c3e2d;
  --ls-accent-soft: color-mix(in srgb, #c3513d 14%, transparent);
  --ls-accent-ring: color-mix(in srgb, #c3513d 50%, transparent);
  --ls-aurora-a: #f7806a;
  --ls-aurora-b: #ffbcab;
}
@media (prefers-color-scheme: light) {
    [data-app="kimchi"]:not([data-mode="dark"]) {
    --ls-accent: #c3513d;
    --ls-accent-hover: #9c3e2d;
    --ls-accent-text: #9c3e2d;
    --ls-accent-soft: color-mix(in srgb, #c3513d 14%, transparent);
    --ls-accent-ring: color-mix(in srgb, #c3513d 50%, transparent);
    --ls-aurora-a: #f7806a;
    --ls-aurora-b: #ffbcab;
  }
}

[data-app="zenith"], [data-app="zenith"][data-mode="dark"] {
  --ls-accent: #72a6ff;
  --ls-accent-hover: #8fbdff;
  --ls-accent-text: #8fbdff;
  --ls-accent-soft: color-mix(in srgb, #72a6ff 18%, transparent);
  --ls-accent-ring: color-mix(in srgb, #8fbdff 60%, transparent);
  --ls-aurora-a: #72a6ff;
  --ls-aurora-b: #355da9;
}
[data-app="zenith"][data-mode="light"] {
  --ls-accent: #4777d2;
  --ls-accent-hover: #355da9;
  --ls-accent-text: #355da9;
  --ls-accent-soft: color-mix(in srgb, #4777d2 14%, transparent);
  --ls-accent-ring: color-mix(in srgb, #4777d2 50%, transparent);
  --ls-aurora-a: #72a6ff;
  --ls-aurora-b: #b0d5ff;
}
@media (prefers-color-scheme: light) {
    [data-app="zenith"]:not([data-mode="dark"]) {
    --ls-accent: #4777d2;
    --ls-accent-hover: #355da9;
    --ls-accent-text: #355da9;
    --ls-accent-soft: color-mix(in srgb, #4777d2 14%, transparent);
    --ls-accent-ring: color-mix(in srgb, #4777d2 50%, transparent);
    --ls-aurora-a: #72a6ff;
    --ls-aurora-b: #b0d5ff;
  }
}

.ls-glass-1, .ls-glass-2, .ls-glass-3 {
  border: 1px solid var(--ls-glass-edge);
  box-shadow: var(--ls-glass-highlight), var(--ls-glass-shadow);
}
.ls-glass-1 { background: var(--ls-glass-1-bg); backdrop-filter: var(--ls-glass-1-filter); -webkit-backdrop-filter: var(--ls-glass-1-filter); }
.ls-glass-2 { background: var(--ls-glass-2-bg); backdrop-filter: var(--ls-glass-2-filter); -webkit-backdrop-filter: var(--ls-glass-2-filter); }
.ls-glass-3 { background: var(--ls-glass-3-bg); backdrop-filter: var(--ls-glass-3-filter); -webkit-backdrop-filter: var(--ls-glass-3-filter); }
.ls-backdrop {
  background-color: var(--ls-bg);
  background-image:
    radial-gradient(60% 50% at 12% 0%, color-mix(in srgb, var(--ls-aurora-a, #888) calc(var(--ls-aurora-strength) * 100%), transparent), transparent 70%),
    radial-gradient(50% 45% at 92% 100%, color-mix(in srgb, var(--ls-aurora-b, #666) calc(var(--ls-aurora-strength) * 100%), transparent), transparent 70%);
}
@media (prefers-reduced-transparency: reduce) {
  .ls-glass-1, .ls-glass-2, .ls-glass-3 { background: var(--ls-glass-opaque); backdrop-filter: none; -webkit-backdrop-filter: none; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .ls-glass-1, .ls-glass-2, .ls-glass-3 { background: var(--ls-glass-opaque); }
}
