/* Generics — Dark Minimal Theme */

[data-theme='generics'] {
  /* Surface */
  --color-surface: #0c0c0b;
  --color-surface-alt: #141413;
  --color-surface-raised: #1c1c1a;
  --color-surface-overlay: rgba(12, 12, 11, 0.9);
  --color-surface-hover: #222220;
  --color-bg-subtle: #1c1c1a;

  /* Text */
  --color-text: #d8d5cf;
  --color-text-secondary: #888884;
  --color-text-muted: #444440;
  --color-text-inverse: #0c0c0b;

  /* Brand */
  --color-primary: #5b9cf6;
  --color-primary-hover: #4a8be5;
  --color-primary-text: #0c0c0b;
  /* Matches --color-primary-text above; white on #5b9cf6 was 2.79:1. */
  --color-on-primary: #0c0c0b;

  /* Accent */
  --color-accent: #5b9cf6;
  --color-accent-hover: #4a8be5;
  --color-accent-text: #0c0c0b;
  --color-on-accent: #0c0c0b;
  --color-on-red: #0c0c0b;  /* no --red of its own; inherits base */
  --color-on-green: #0c0c0b;  /* no --green of its own */
  --color-on-yellow: #0c0c0b;  /* no --yellow of its own */
  --color-accent-bg: rgba(91, 156, 246, 0.1);
  --color-accent-border: rgba(91, 156, 246, 0.22);

  /* Semantic */
  --color-success: #4ade80;
  --color-warning: #fbbf24;
  --color-error: #f87171;
  --color-info: #5b9cf6;

  /* Semantic Backgrounds */
  --color-success-bg: rgba(74, 222, 128, 0.1);
  --color-warning-bg: rgba(251, 191, 36, 0.1);
  --color-error-bg: rgba(248, 113, 113, 0.1);
  --color-info-bg: rgba(91, 156, 246, 0.1);

  /* Borders */
  --color-border: #272725;
  --color-border-strong: #333330;
  --color-border-focus: var(--color-primary);

  /* Interactive */
  --color-link: var(--color-primary);
  --color-link-hover: var(--color-primary-hover);

  /* Typography */
  --font-heading: system-ui, -apple-system, sans-serif;
  --font-body: system-ui, -apple-system, sans-serif;
  --font-mono: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.5);
  --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.6);

  /* Borders */
  --radius-sm: 0.25rem;
  --radius-md: 0.25rem;
  --radius-lg: 0.5rem;
}
