/* Generated by theme/generate-theme.mjs from the curated semantic mapping
   backed by joolix-ai-services.tokens.json (259bb070ad38cd0d3fd1b0ad3d023731bd1d490b647dab8b52799d55b7ed0752). */

:root, .joolix-theme-joolia-ai-services {
  color-scheme: dark;
  --jx-color-canvas: hsl(225 20% 4%);
  --jx-color-canvas-alt: hsl(224 20% 3%);
  --jx-color-surface-1: hsl(222 15% 7%);
  --jx-color-surface-2: hsl(220 13% 10%);
  --jx-color-surface-3: hsl(220 11% 14%);
  --jx-color-surface-elevated: hsl(220 13% 10%);
  --jx-color-surface-panel: hsl(222 15% 7%);
  --jx-color-surface-overlay: hsl(228 25% 2% / .92);
  --jx-color-surface-input: hsl(222 15% 7%);
  --jx-color-text-primary: hsl(0 0% 73%);
  --jx-color-text-secondary: hsl(218 8% 59%);
  --jx-color-text-tertiary: hsl(218 8% 59% / .78);
  --jx-color-text-inverse: hsl(225 20% 5%);
  --jx-color-border-soft: hsl(218 9% 40% / .32);
  --jx-color-border-standard: hsl(218 9% 40% / .58);
  --jx-color-border-strong: hsl(218 9% 40% / .82);
  --jx-color-accent: hsl(42 46% 55%);
  --jx-color-accent-control: hsl(42 46% 55%);
  --jx-color-accent-control-hover: hsl(43 54% 64%);
  --jx-color-accent-hover: hsl(44 58% 70%);
  --jx-color-accent-strong: hsl(36 52% 33%);
  --jx-color-accent-soft: hsl(42 46% 55% / .12);
  --jx-color-accent-contrast: hsl(0 0% 73%);
  --jx-color-focus: hsl(43 54% 64%);
  --jx-color-success: hsl(153 46% 45%);
  --jx-color-warning: hsl(31 63% 58%);
  --jx-color-danger: hsl(0 72% 62%);
  --jx-color-danger-hover: hsl(0 72% 68%);
  --jx-color-danger-contrast: #ffffff;
  --jx-color-info: hsl(214 14% 66%);
  --jx-color-metal-highlight: hsl(210 22% 96% / .075);
  --jx-color-metal-mid: hsl(218 10% 43%);
  --jx-color-metal-lowlight: hsl(224 20% 3%);
  --jx-color-selection-bg: hsl(42 46% 55%);
  --jx-color-selection-text: hsl(225 20% 5%);
  --jx-color-scrollbar-track: hsl(222 15% 7% / .72);
  --jx-color-scrollbar-thumb: hsl(42 46% 55%);
  --jx-color-scrollbar-thumb-hover: hsl(44 58% 70%);
  --jx-shadow-scrollbar-glow: 0 0 8px hsl(42 46% 55% / .58), 0 0 16px hsl(42 46% 55% / .24);
  --jx-shadow-sm: 0 1px 2px hsl(228 25% 2% / .08);
  --jx-shadow-md: 0 10px 30px -18px hsl(228 25% 2% / .24);
  --jx-shadow-lg: 0 28px 72px -32px hsl(228 25% 2% / .38);
  --jx-shadow-glow: 0 6px 20px hsl(42 46% 55% / .18);
  --jx-shell-divider-gradient: linear-gradient(90deg, transparent 0%, hsl(42 46% 55% / .08) 12%, hsl(42 46% 55% / .38) 30%, hsl(44 58% 70% / .95) 50%, hsl(42 46% 55% / .38) 70%, hsl(42 46% 55% / .08) 88%, transparent 100%);
  --jx-shell-divider-glow: 0 2px 8px hsl(44 58% 70% / .42), 0 6px 18px hsl(42 46% 55% / .22);
  --jx-shell-divider-underlight: radial-gradient(ellipse at 50% 0%, hsl(44 58% 70% / .30) 0%, hsl(42 46% 55% / .13) 34%, transparent 72%);
  --jx-texture-canvas: radial-gradient(circle at 15% 16%, rgba(174, 182, 194, 0.08), rgba(0, 0, 0, 0) 416px), radial-gradient(circle at 84% 76%, rgba(193, 161, 87, 0.075), rgba(0, 0, 0, 0) 480px), linear-gradient(135deg, rgb(8, 9, 12), rgba(6, 7, 9, 0.72));
  --jx-texture-panel: radial-gradient(circle at 50% -18%, rgba(243, 245, 247, 0.086), rgba(0, 0, 0, 0) 39%), linear-gradient(148deg, rgba(22, 24, 29, 0.98), rgba(15, 17, 21, 0.99) 58%, rgba(6, 7, 9, 0.64));
  --jx-texture-button: linear-gradient(125deg, rgba(6, 7, 9, 0.55), rgba(47, 51, 60, 0.38) 30%, rgba(174, 182, 194, 0.16) 49%, rgba(47, 51, 60, 0.32) 68%, rgb(22, 24, 29));
  --jx-texture-accent: linear-gradient(125deg, rgba(6, 7, 9, 0.55), rgba(47, 51, 60, 0.38) 30%, rgba(174, 182, 194, 0.16) 49%, rgba(47, 51, 60, 0.32) 68%, rgb(22, 24, 29));
  --jx-texture-accent-hover: linear-gradient(145deg, rgba(47, 51, 60, 0.68), rgb(6, 7, 9) 62%, rgb(22, 24, 29));
  --jx-texture-subtle: radial-gradient(60% 50% at 20% 0%, rgba(193, 161, 87, 0.06), rgba(0, 0, 0, 0)), radial-gradient(50% 40% at 80% 100%, rgba(193, 161, 87, 0.05), rgba(0, 0, 0, 0)), radial-gradient(40% 30% at 90% 10%, rgba(193, 161, 87, 0.04), rgba(0, 0, 0, 0));
  --jx-color-backdrop: hsl(228 25% 2% / .84);
  --jx-color-reader-canvas: hsl(225 20% 4%);
  --jx-color-reader-surface: hsl(222 15% 7%);
  --jx-color-reader-text: hsl(0 0% 73%);
  --jx-color-reader-muted: hsl(218 8% 59%);
  --jx-color-reader-link: hsl(44 58% 70%);
  --jx-color-reader-code: hsl(224 20% 3%);
  --jx-color-overlay-mask: hsl(228 25% 2% / .74);
  --jx-control-height-sm: 44px;
  --jx-control-height-md: 44px;
  --jx-control-height-lg: 48px;
  --jx-icon-size-sm: 32px;
  --jx-icon-size-md: 44px;
  --jx-icon-size-lg: 48px;
  --jx-radius-xs: 6px;
  --jx-radius-sm: 10px;
  --jx-radius-md: 10px;
  --jx-radius-lg: 14px;
  --jx-radius-xl: 18px;
  --jx-radius-2xl: 32px;
  --jx-font-size-2xs: 9px;
  --jx-font-size-xs: 10px;
  --jx-font-size-sm: 11px;
  --jx-font-size-md: 12px;
  --jx-font-size-lg: 13px;
  --jx-font-size-xl: 14px;
  --jx-font-size-2xl: 18px;
  --jx-component-panel-border-color: var(--jx-color-border-standard);
  --jx-component-panel-background: var(--jx-texture-panel);
  --jx-component-panel-shadow: 0 28px 72px -32px hsl(228 25% 2% / .38), inset 0 1px 0 hsl(210 22% 96% / .075), inset 0 -1px 0 hsl(224 20% 3% / .52);
  --jx-component-button-border-color: var(--jx-color-border-standard);
  --jx-component-button-text: var(--jx-color-text-primary);
  --jx-component-button-background: var(--jx-texture-button);
  --jx-component-button-shadow: inset 0 1px 0 hsl(210 22% 96% / .12), 0 6px 20px hsl(42 46% 55% / .08);
  --jx-component-button-hover-border-color: color-mix(in srgb, var(--jx-color-accent) 68%, var(--jx-color-border-strong));
  --jx-component-button-hover-text: var(--jx-color-accent-hover);
  --jx-component-button-hover-background: var(--jx-texture-accent-hover);
  --jx-component-button-hover-shadow: 0 15px 42px hsl(42 46% 55% / .23), 0 0 24px hsl(44 58% 70% / .08), inset 0 1px 0 hsl(210 22% 96% / .38);
  --jx-component-button-active-border-color: color-mix(in srgb, var(--jx-color-accent) 68%, var(--jx-color-border-strong));
  --jx-component-button-active-text: var(--jx-color-accent-hover);
  --jx-component-button-active-background: var(--jx-texture-accent);
  --jx-component-segment-selected-border-color: color-mix(in srgb, var(--jx-color-accent) 58%, var(--jx-color-border-strong));
  --jx-component-segment-selected-text: var(--jx-color-accent-hover);
  --jx-component-segment-selected-background: linear-gradient(145deg, rgba(47, 51, 60, .68), rgb(6, 7, 9) 62%, rgb(22, 24, 29));
  --jx-component-segment-selected-shadow: 0 6px 20px hsl(42 46% 55% / .12), inset 0 1px 0 hsl(210 22% 96% / .12);
  --jx-component-field-border-color: var(--jx-color-border-standard);
  --jx-component-field-background: linear-gradient(145deg, rgba(22, 24, 29, .96), rgba(15, 17, 21, .98));
  --jx-component-field-shadow: inset 0 1px 0 hsl(210 22% 96% / .035), inset 0 -10px 28px rgba(6, 7, 9, .08);
  --jx-component-field-hover-border-color: var(--jx-color-border-strong);
  --jx-component-field-focus-border-color: color-mix(in srgb, var(--jx-color-accent) 72%, var(--jx-color-border-strong));
  --jx-component-field-focus-shadow: 0 0 0 3px hsl(42 46% 55% / .13), 0 0 26px hsl(42 46% 55% / .07), inset 0 1px 0 hsl(210 22% 96% / .055);
  --jx-component-select-popup-border-color: var(--jx-color-border-standard);
  --jx-component-select-popup-background: var(--jx-texture-panel);
  --jx-component-select-popup-shadow: 0 28px 72px -32px hsl(228 25% 2% / .38), inset 0 1px 0 hsl(210 22% 96% / .075);
  --jx-component-chat-background: linear-gradient(145deg, rgba(22, 24, 29, .96), rgba(15, 17, 21, .98));
  --jx-component-chat-shadow: 0 10px 30px -18px hsl(228 25% 2% / .24), inset 0 1px 0 hsl(210 22% 96% / .035);
  --jx-component-chat-assistant-border-color: color-mix(in srgb, var(--jx-color-accent) 38%, var(--jx-color-border-standard));
  --jx-component-chat-assistant-background: linear-gradient(145deg, rgba(22, 24, 29, .98), rgba(15, 17, 21, .96));
  --jx-component-chat-user-border-color: color-mix(in srgb, var(--jx-color-accent) 52%, var(--jx-color-border-standard));
  --jx-component-chat-user-background: linear-gradient(145deg, rgba(47, 51, 60, .38), rgba(15, 17, 21, .98));
  --jx-component-modal-border-color: var(--jx-color-border-standard);
  --jx-component-modal-background: var(--jx-texture-panel);
  --jx-component-modal-shadow: rgba(4, 4, 6, .95) 0 34px 90px -42px, rgba(174, 182, 194, .035) 0 0 48px, rgba(243, 245, 247, .075) 0 1px 0 inset, rgba(6, 7, 9, .52) 0 -1px 0 inset;
  --jx-component-loading-background: hsl(228 25% 2% / .78);
  --jx-component-loading-blur: 14px;
  --jx-shell-header-background: var(--jx-texture-panel);
  --jx-shell-header-shadow: 0 14px 34px rgba(4, 4, 6, .38), inset 0 1px 0 rgba(243, 245, 247, .075), inset 0 -1px 0 rgba(6, 7, 9, .52);
  --jx-shell-feature-background: var(--jx-texture-panel);
  --jx-shell-feature-shadow: rgba(4, 4, 6, .95) 0 34px 90px -42px, rgba(174, 182, 194, .035) 0 0 48px, rgba(243, 245, 247, .075) 0 1px 0 inset, rgba(6, 7, 9, .52) 0 -1px 0 inset;
  --jx-shell-footer-background: rgba(15, 17, 21, .72);
  --jx-shell-footer-shadow: inset 0 1px 0 rgba(243, 245, 247, .035);
  --jx-motion-duration: 180ms;
  --jx-opacity-disabled: .46;
}
