/* KARL design foundation 0.1. Scoped semantic themes; no global element reset. */
:root {
  --karl-color-ink: #111923;
  --karl-color-paper: #f4f4ef;
  --karl-color-white: #ffffff;
  --karl-color-blue: #244ca3;
  --karl-color-blue-hover: #173675;
  --karl-color-accent: #a5baff;
  --karl-color-muted: #5d6770;
  --karl-color-line: #d4d7d9;
  --karl-font-sans: Arial, Helvetica, sans-serif;
  --karl-font-mono: Consolas, "Courier New", monospace;
  --karl-font-body: 16px;
  --karl-font-label: 14px;
  --karl-font-meta: 12px;
  --karl-leading-body: 1.6;
  --karl-space-1: 4px;
  --karl-space-2: 8px;
  --karl-space-3: 12px;
  --karl-space-4: 16px;
  --karl-space-6: 24px;
  --karl-space-8: 32px;
  --karl-space-12: 48px;
  --karl-space-16: 64px;
  --karl-space-24: 96px;
  --karl-radius-control: 0;
  --karl-radius-panel: 0;
  --karl-radius-status: 2px;
  --karl-radius-round: 9999px;
  --karl-motion-fast: 160ms;
  --karl-motion-normal: 240ms;
  --karl-background: var(--karl-color-paper);
  --karl-surface: var(--karl-color-white);
  --karl-text: var(--karl-color-ink);
  --karl-muted: var(--karl-color-muted);
  --karl-divider: var(--karl-color-line);
  --karl-border-strong: #7b8794;
  --karl-action-bg: var(--karl-color-blue);
  --karl-action-text: var(--karl-color-white);
  --karl-action-hover: var(--karl-color-blue-hover);
  --karl-focus: var(--karl-color-blue);
  --karl-selected-bg: #eaf0ff;
  --karl-selected-text: var(--karl-color-blue);
  --karl-success-bg: #e7f3ee;
  --karl-success-text: #1c7055;
  --karl-warning-bg: #fff4d6;
  --karl-warning-text: #805500;
  --karl-danger-bg: #fff0ed;
  --karl-danger-text: #9d3028;
  --karl-unknown-bg: #e8ebee;
  --karl-unknown-text: #4e5a66;
  --karl-control-height: 48px;
  --karl-panel-padding: 32px;
  --karl-row-height: 52px;
  --karl-cell-padding: 12px;
}
[data-karl-theme="dark"] {
  color-scheme: dark;
  --karl-background: var(--karl-color-ink);
  --karl-surface: #1b2635;
  --karl-text: var(--karl-color-paper);
  --karl-muted: #b7c0cd;
  --karl-divider: #425065;
  --karl-border-strong: #7c8ca2;
  --karl-action-bg: var(--karl-color-accent);
  --karl-action-text: var(--karl-color-ink);
  --karl-action-hover: #c5d2ff;
  --karl-focus: #c5d2ff;
  --karl-selected-bg: #1c2942;
  --karl-selected-text: var(--karl-color-accent);
  --karl-success-bg: #15352c;
  --karl-success-text: #a8e3c3;
  --karl-warning-bg: #372b16;
  --karl-warning-text: #efc77e;
  --karl-danger-bg: #3b1f21;
  --karl-danger-text: #ffc0b8;
  --karl-unknown-bg: #26313f;
  --karl-unknown-text: #c0cad7;
}
[data-karl-theme="light"] { color-scheme: light; }
[data-karl-density="compact"] {
  --karl-control-height: 44px;
  --karl-panel-padding: 20px;
  --karl-row-height: 44px;
  --karl-cell-padding: 8px;
}
@media (prefers-reduced-motion: reduce) {
  :root { --karl-motion-fast: 0ms; --karl-motion-normal: 0ms; }
}
