:root {
  /* Color: calm Bulldog graphite base */
  --rs-color-bg: #070807;
  --rs-color-bg-soft: #10110f;
  --rs-color-surface: #171816;
  --rs-color-surface-raised: #1f211e;
  --rs-color-surface-muted: #282b27;
  --rs-color-surface-inverse: #f8fafc;

  /* Color: borders and dividers */
  --rs-color-border-subtle: rgba(232, 236, 229, 0.1);
  --rs-color-border: rgba(232, 236, 229, 0.18);
  --rs-color-border-strong: rgba(248, 250, 252, 0.3);

  /* Color: text */
  --rs-color-text: #f8fafc;
  --rs-color-text-muted: #c7cdc1;
  --rs-color-text-subtle: #8d9488;
  --rs-color-text-disabled: #62685f;
  --rs-color-text-inverse: #0b1018;

  /* Color: brand and semantic accents */
  --rs-color-accent: #e8693c;
  --rs-color-accent-strong: #d24f29;
  --rs-color-accent-soft: rgba(232, 105, 60, 0.13);
  --rs-color-accent-border: rgba(232, 105, 60, 0.44);
  --rs-color-accent-wash: rgba(232, 105, 60, 0.055);
  --rs-color-accent-sheen: rgba(232, 105, 60, 0.1);
  --rs-color-light-grid: rgba(248, 250, 252, 0.024);
  --rs-color-light-sheen: rgba(248, 250, 252, 0.055);
  --rs-color-brand-ink: #18100e;
  --rs-color-steel: #9eb8c4;
  --rs-color-steel-soft: rgba(158, 184, 196, 0.12);
  --rs-color-success: #42d889;
  --rs-color-success-strong: #16b85d;
  --rs-color-success-soft: rgba(53, 217, 120, 0.14);
  --rs-color-success-border: rgba(53, 217, 120, 0.42);
  --rs-color-warning: #f7b955;
  --rs-color-warning-soft: rgba(247, 185, 85, 0.14);
  --rs-color-info: #72c6e6;
  --rs-color-info-soft: rgba(114, 198, 230, 0.12);
  --rs-color-danger: #ff5f73;
  --rs-color-danger-soft: rgba(255, 95, 115, 0.14);

  /* Color: overlays and focus */
  --rs-color-overlay: rgba(5, 7, 11, 0.72);
  --rs-color-focus: rgba(232, 105, 60, 0.72);
  --rs-color-selection: rgba(232, 105, 60, 0.26);

  /* Typography */
  --rs-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --rs-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  --rs-font-weight-regular: 400;
  --rs-font-weight-medium: 560;
  --rs-font-weight-semibold: 650;
  --rs-font-weight-bold: 760;

  --rs-font-size-2xs: 0.6875rem;
  --rs-font-size-xs: 0.75rem;
  --rs-font-size-sm: 0.875rem;
  --rs-font-size-md: 1rem;
  --rs-font-size-lg: 1.125rem;
  --rs-font-size-xl: 1.25rem;
  --rs-font-size-2xl: 1.5rem;
  --rs-font-size-3xl: 2rem;
  --rs-font-size-4xl: 2.5rem;

  --rs-line-height-tight: 1.12;
  --rs-line-height-heading: 1.22;
  --rs-line-height-body: 1.55;
  --rs-line-height-ui: 1.35;

  /* Spacing */
  --rs-space-0: 0;
  --rs-space-1: 0.25rem;
  --rs-space-2: 0.5rem;
  --rs-space-3: 0.75rem;
  --rs-space-4: 1rem;
  --rs-space-5: 1.25rem;
  --rs-space-6: 1.5rem;
  --rs-space-7: 1.75rem;
  --rs-space-8: 2rem;
  --rs-space-10: 2.5rem;
  --rs-space-12: 3rem;
  --rs-space-16: 4rem;

  /* Layout */
  --rs-layout-max-width: 1480px;
  --rs-layout-content-width: 1240px;
  --rs-layout-sidebar-width: 264px;
  --rs-layout-header-height: 72px;
  --rs-layout-mobile-gutter: 1rem;
  --rs-layout-desktop-gutter: 1.5rem;

  /* Radius */
  --rs-radius-0: 0;
  --rs-radius-1: 0.25rem;
  --rs-radius-2: 0.375rem;
  --rs-radius-3: 0.5rem;
  --rs-radius-pill: 999px;

  /* Shadows */
  --rs-shadow-xs: 0 1px 0 rgba(255, 255, 255, 0.045) inset;
  --rs-shadow-sm: 0 8px 22px rgba(0, 0, 0, 0.22);
  --rs-shadow-md: 0 16px 38px rgba(0, 0, 0, 0.3);
  --rs-shadow-lg: 0 24px 58px rgba(0, 0, 0, 0.38);
  --rs-shadow-accent: 0 0 0 1px rgba(232, 105, 60, 0.24), 0 14px 32px rgba(232, 105, 60, 0.1);
  --rs-shadow-success: 0 0 0 1px rgba(53, 217, 120, 0.24), 0 18px 44px rgba(53, 217, 120, 0.1);

  /* Motion */
  --rs-duration-instant: 80ms;
  --rs-duration-fast: 160ms;
  --rs-duration-base: 240ms;
  --rs-duration-slow: 420ms;
  --rs-duration-stream-step: 620ms;
  --rs-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --rs-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --rs-ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);

  /* Component dimensions */
  --rs-control-height-sm: 2rem;
  --rs-control-height-md: 2.5rem;
  --rs-control-height-lg: 3rem;
  --rs-icon-size-sm: 1rem;
  --rs-icon-size-md: 1.125rem;
  --rs-icon-size-lg: 1.5rem;
  --rs-card-min-height: 7.25rem;
  --rs-trace-step-size: 2rem;

  /* Interactive states */
  --rs-state-hover-bg: rgba(255, 255, 255, 0.06);
  --rs-state-active-bg: rgba(232, 105, 60, 0.12);
  --rs-state-selected-bg: rgba(232, 105, 60, 0.14);
  --rs-state-disabled-opacity: 0.52;
  --rs-state-focus-ring: 0 0 0 3px rgba(232, 105, 60, 0.28);

  /* Streaming states */
  --rs-stream-queued-bg: rgba(148, 163, 184, 0.06);
  --rs-stream-running-bg: rgba(247, 185, 85, 0.12);
  --rs-stream-running-border: rgba(247, 185, 85, 0.5);
  --rs-stream-complete-bg: rgba(53, 217, 120, 0.1);
  --rs-stream-complete-border: rgba(53, 217, 120, 0.42);
  --rs-stream-error-bg: rgba(255, 95, 115, 0.12);
  --rs-stream-error-border: rgba(255, 95, 115, 0.46);

  color-scheme: dark;
}

@media (max-width: 480px) {
  :root {
    --rs-layout-header-height: 64px;
    --rs-layout-mobile-gutter: 0.875rem;
    --rs-font-size-3xl: 1.75rem;
    --rs-font-size-4xl: 2rem;
    --rs-card-min-height: 7.5rem;
  }
}
