/* Generated by scripts/build_tokens.mjs from tokens/moneyos.json — do not edit by hand. */
:root {
  --color-surface-page: #f9fafb;
  --color-surface-card: #ffffff;
  --color-surface-sunken: #f3f4f6;
  --color-surface-raised: #ffffff;
  --color-surface-field: #ffffff;
  --color-surface-selected: #f0fdf4;
  --color-surface-lead: #fffbeb;
  --color-surface-error: #fef2f2;
  --color-surface-draft: #f9fafb;
  --color-surface-problem: #fee2e2;
  --color-surface-problem-soft: #fef2f2;
  --color-surface-accent-soft: #f0fdf4;
  --color-surface-accent-chip: #dcfce7;
  --color-border-default: #e5e7eb;
  --color-border-subtle: #f3f4f6;
  --color-border-strong: #8a9099;
  --color-border-idle: #9ca3af;
  --color-border-lead: #fde68a;
  --color-border-danger: #fca5a5;
  --color-text-primary: #111827;
  --color-text-secondary: #4b5563;
  --color-text-caption: #6b7280;
  --color-text-tertiary: #6b7280;
  --color-text-on-primary: #ffffff;
  --color-text-on-action: #ffffff;
  --color-text-link: #047857;
  --color-action-primary: #047857;
  --color-action-primary-hover: #065f46;
  --color-action-primary-text: #ffffff;
  --color-action-secondary-bg: #ffffff;
  --color-action-secondary-border: #8a9099;
  --color-action-secondary-hover: #f3f4f6;
  --color-action-secondary-text: #111827;
  --color-action-ghost-hover: #f3f4f6;
  --color-action-destructive: #b91c1c;
  --color-action-destructive-border: #fca5a5;
  --color-action-destructive-hover: #fef2f2;
  --color-action-disabled-bg: #f3f4f6;
  --color-action-disabled-border: #d1d5db;
  --color-action-disabled-text: #4b5563;
  --color-feedback-hold-text: #794c09;
  --color-feedback-hold-bg: #fffbeb;
  --color-feedback-error-text: #b91c1c;
  --color-feedback-error-bg: #fef2f2;
  --color-feedback-warning-text: #b45309;
  --color-feedback-warning-bg: #fef3c7;
  --color-feedback-success-text: #15803d;
  --color-feedback-success-bg: #dcfce7;
  --color-focus-ring: #3b82f6;
  --color-focus-ring-inner: #ffffff;
  --color-badge-pending-bg: #f3f4f6;
  --color-badge-pending-text: #374151;
  --color-badge-processing-bg: #dbeafe;
  --color-badge-processing-text: #1d4ed8;
  --color-badge-review-bg: #fef3c7;
  --color-badge-review-text: #b45309;
  --color-badge-reviewed-bg: #dcfce7;
  --color-badge-reviewed-text: #15803d;
  --color-badge-failed-bg: #fee2e2;
  --color-badge-failed-text: #b91c1c;
  --color-badge-duplicate-bg: #f3e8ff;
  --color-badge-duplicate-text: #7e22ce;
  --color-chart-series-1: #2a78d6;
  --color-chart-series-2: #eb6834;
  --color-chart-grid: #e4eae6;
  --color-chart-axis: #b9c4be;
  --color-avatar-bg: #e5e7eb;
  --color-avatar-text: #374151;
  --color-meter-track: #e5e7eb;
  --color-meter-fill: #047857;
  --color-meter-fill-problem: #b91c1c;
  --font-sans: "IBM Plex Sans", "IBM Plex Sans Thai", -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans Thai", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-md: 16px;
  --text-lg: 20px;
  --text-xl: 24px;
  --text-xxl: 30px;
  --text-display-sm: 40px;
  --text-display: 56px;
  --text-label: 18px;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --leading-none: 1;
  --leading-tight: 1.15;
  --leading-snug: 1.2;
  --leading-normal: 1.5;
  --leading-relaxed: 1.6;
  --space-0: 0px;
  --space-2: 2px;
  --space-4: 4px;
  --space-6: 6px;
  --space-8: 8px;
  --space-10: 10px;
  --space-12: 12px;
  --space-14: 14px;
  --space-16: 16px;
  --space-18: 18px;
  --space-20: 20px;
  --space-24: 24px;
  --space-28: 28px;
  --space-32: 32px;
  --space-36: 36px;
  --space-40: 40px;
  --space-44: 44px;
  --space-48: 48px;
  --space-56: 56px;
  --space-64: 64px;
  --radius-sm: 4px;
  --radius-control: 6px;
  --radius-card: 8px;
  --radius-card-lg: 10px;
  --radius-frame: 14px;
  --radius-bar: 3px;
  --radius-pill: 9999px;
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
  --shadow-focus-ring: 0 0 0 2px #ffffff, 0 0 0 4px #3b82f6;
  --duration-fast: 120ms;
  --duration-base: 180ms;
  --duration-slow: 240ms;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --size-24: 24px;
  --size-26: 26px;
  --size-28: 28px;
  --size-34: 34px;
  --size-36: 36px;
  --size-40: 40px;
  --size-44: 44px;
  --size-48: 48px;
  --size-64: 64px;
  --size-72: 72px;
  --size-150: 150px;
  --size-280: 280px;
  --size-marker: 3px;
  --size-hairline-strong: 1.5px;
  --opacity-disabled: 0.5;
  --opacity-muted: 0.92;
  --z-sticky: 5;
  --z-tooltip: 20;
  --z-overlay: 30;
  --z-modal: 40;
}
:root[data-theme="dark"] {

}
