/*
  NormCRM theme tokens.
  Light theme uses a clean neutral CRM surface system; dark values preserve the current dark interface.
*/

:root,
[data-theme="light"] {
  color-scheme: light;

  --color-page-bg: #f6f7f9;
  --color-surface: #ffffff;
  --color-surface-muted: #f4f6f8;
  --color-surface-subtle: #f8fafc;
  --color-surface-hover: #eef2f6;
  --color-surface-active: #e5ebf2;
  --color-sidebar-surface: #f1f4f7;
  --color-sidebar-action-hover: #e6ebf1;
  --color-pill-bg: #edf1f5;
  --color-pill-bg-hover: #e2e8ef;
  --color-pill-text: #1f2937;
  --color-relation-add-bg: #dcebf8;
  --color-relation-add-bg-hover: #cfe1f2;
  --color-relation-add-text: #24547a;
  --color-list-create-bg: #198754;
  --color-list-create-bg-hover: #157347;
  --color-list-create-text: #ffffff;
  --color-dashboard-stats-bg: #eef6ff;
  --color-dashboard-client-bg: #f0f7f4;
  --color-dashboard-panel-border: #dbe7f3;
  --color-demo-strip-bg: #e7edf4;
  --color-demo-strip-border: #d5dee9;
  --color-demo-strip-text: #334155;
  --color-submit-loading-bg: #198754;
  --color-submit-loading-text: #ffffff;

  --color-text: #111827;
  --color-text-strong: #0f172a;
  --color-text-soft: #1f2937;
  --color-text-secondary: #4b5563;
  --color-text-muted: #6b7280;
  --color-text-disabled: #9ca3af;
  --color-text-inverse: #ffffff;

  --color-border: #e5e7eb;
  --color-border-muted: #edf0f3;
  --color-border-strong: #cbd5e1;
  --color-border-control: #c6ccd5;

  --color-link: #2563eb;
  --color-link-hover: #1d4ed8;
  --color-link-visited: #2563eb;

  --color-primary: #2563eb;
  --color-primary-hover: #1d4ed8;
  --color-primary-active: #1e40af;
  --color-primary-soft: #e8f0ff;
  --color-primary-soft-hover: #dbe8ff;
  --color-primary-soft-text: #1d4ed8;
  --color-primary-soft-text-hover: #1e40af;
  --color-focus: #2563eb;

  --color-success: #198754;
  --color-success-hover: #157347;
  --color-success-active: #0f5f3a;
  --color-success-soft: #e7f4ed;
  --color-success-text: #137044;
  --color-success-text-hover: #0f5f3a;

  --color-danger: #dc3545;
  --color-danger-hover: #bb2d3b;
  --color-danger-active: #9f2430;
  --color-danger-soft: #fbe7ea;
  --color-danger-text: #b42331;
  --color-danger-text-hover: #8f1d29;

  --color-warning: #f59e0b;
  --color-warning-hover: #d97706;
  --color-warning-soft: #fff4d6;
  --color-warning-text: #7a4a00;

  --color-neutral: #6b7280;
  --color-neutral-hover: #565f6d;
  --color-neutral-active: #444c59;
  --color-neutral-soft: #eef1f5;
  --help-hint-general-color: #2563eb;
  --help-hint-specific-color: #b45309;

  --shadow-sm: 0 10px 24px rgba(15, 23, 42, .08);
  --shadow-md: 0 12px 30px rgba(15, 23, 42, 0.14);
  --shadow-modal: 0 18px 48px rgba(15, 23, 42, .22);
  --overlay-backdrop: rgba(15, 23, 42, .38);
  --focus-ring: 0 0 0 2px color-mix(in srgb, var(--color-focus), transparent 68%);

  --brand-accent: var(--color-focus);
  --brand-stroke: var(--color-text);
  --link-color: var(--color-link);
  --link-hover: var(--color-link-hover);
  --link-visited: var(--color-link-visited);
  --list-divider: 1px solid var(--color-border-muted);
  --muted-color: var(--color-text-muted);
  --menu-hover-bg: var(--color-surface-hover);
  --brand-success: var(--color-success);

  --list-table-header-bg: #f1f4f7;
  --list-table-border: #e4e9ef;
  --list-table-row-bg: #f8fafc;
  --list-table-row-hover: #eef3f8;
  --list-table-heading: #1f2937;
  --list-table-text: #374151;
  --list-table-text-muted: #6b7280;
  --list-table-text-empty: #9ca3af;
  --list-table-link: #334155;
  --list-table-link-hover: #111827;
  --list-table-overdue: #dc3545;
  --list-table-overdue-soft: #fbe7ea;
  --list-table-pending: #198754;
  --list-table-pending-soft: #e7f4ed;
  --list-table-panel-bg: #ffffff;
  --list-table-add-btn-bg: var(--color-list-create-bg);
  --list-table-add-btn-bg-hover: var(--color-list-create-bg-hover);
  --list-table-add-btn-text: var(--color-list-create-text);
  --list-table-dashboard-btn-bg: var(--color-relation-add-bg);
  --list-table-dashboard-btn-bg-hover: var(--color-relation-add-bg-hover);
  --list-table-dashboard-btn-text: var(--color-relation-add-text);
  --list-table-filter-bg-hover: #eef2f6;
  --list-table-filter-bg-active: #e2e8f0;
  --list-table-filter-text: #1f2937;
}

[data-theme="dark"] {
  color-scheme: dark;

  --color-page-bg: #15171c;
  --color-surface: #20242b;
  --color-surface-muted: #252a33;
  --color-surface-subtle: #1d2128;
  --color-surface-hover: #2b313b;
  --color-surface-active: #313948;
  --color-sidebar-surface: #222833;
  --color-sidebar-action-hover: #313948;
  --color-pill-bg: #29313c;
  --color-pill-bg-hover: #354052;
  --color-pill-text: #f2f5f8;
  --color-relation-add-bg: #3a4554;
  --color-relation-add-bg-hover: #465365;
  --color-relation-add-text: #d4dbe5;
  --color-list-create-bg: #547a3e;
  --color-list-create-bg-hover: #648d4b;
  --color-list-create-text: #ffffff;
  --color-dashboard-stats-bg: #1d222a;
  --color-dashboard-client-bg: #1d222a;
  --color-dashboard-panel-border: #343b47;
  --color-demo-strip-bg: #3f3422;
  --color-demo-strip-border: #5a4a2f;
  --color-demo-strip-text: #fde68a;
  --color-submit-loading-bg: #22c55e;
  --color-submit-loading-text: #effcf3;

  --color-text: #f2f5f8;
  --color-text-strong: #ffffff;
  --color-text-soft: #dbe2ea;
  --color-text-secondary: #b3bdca;
  --color-text-muted: #8f9aaa;
  --color-text-disabled: #697386;
  --color-text-inverse: #ffffff;

  --color-border: #343b47;
  --color-border-muted: #2b323d;
  --color-border-strong: #4c5667;
  --color-border-control: #495363;

  --color-link: #8ec2ff;
  --color-link-hover: #b8d8ff;
  --color-link-visited: #8ec2ff;

  --color-primary: #4ea3ff;
  --color-primary-hover: #78baff;
  --color-primary-active: #9accff;
  --color-primary-soft: #20354f;
  --color-primary-soft-hover: #294263;
  --color-primary-soft-text: #b8d8ff;
  --color-primary-soft-text-hover: #d6eaff;
  --color-focus: #8ec2ff;

  --color-success: #22c55e;
  --color-success-hover: #4ade80;
  --color-success-active: #86efac;
  --color-success-soft: rgba(34, 197, 94, 0.14);
  --color-success-text: #86efac;
  --color-success-text-hover: #bbf7d0;

  --color-danger: #ef4444;
  --color-danger-hover: #f87171;
  --color-danger-active: #fca5a5;
  --color-danger-soft: rgba(239, 68, 68, 0.16);
  --color-danger-text: #fca5a5;
  --color-danger-text-hover: #fecaca;

  --color-warning: #fbbf24;
  --color-warning-hover: #fcd34d;
  --color-warning-soft: rgba(251, 191, 36, 0.16);
  --color-warning-text: #fde68a;

  --color-neutral: #8f9aaa;
  --color-neutral-hover: #aab4c2;
  --color-neutral-active: #c1cad6;
  --color-neutral-soft: rgba(148, 163, 184, 0.15);
  --help-hint-general-color: #8ec2ff;
  --help-hint-specific-color: #fbbf24;

  --shadow-sm: 0 10px 24px rgba(0, 0, 0, .35);
  --shadow-md: 0 16px 38px rgba(0, 0, 0, .45);
  --shadow-modal: 0 18px 48px rgba(0, 0, 0, .58);
  --overlay-backdrop: rgba(0, 0, 0, .62);
  --focus-ring: 0 0 0 2px color-mix(in srgb, var(--color-focus), transparent 55%);

  --list-table-header-bg: #252b35;
  --list-table-border: #343b47;
  --list-table-row-bg: #1f242c;
  --list-table-row-hover: #29313c;
  --list-table-heading: #e8edf4;
  --list-table-text: #d4dbe5;
  --list-table-text-muted: #aab4c2;
  --list-table-text-empty: #737f90;
  --list-table-link: #d4dbe5;
  --list-table-link-hover: #ffffff;
  --list-table-overdue: #f87171;
  --list-table-overdue-soft: #3a2528;
  --list-table-pending: #86efac;
  --list-table-pending-soft: #203327;
  --list-table-panel-bg: #1d222a;
  --list-table-add-btn-bg: var(--color-list-create-bg);
  --list-table-add-btn-bg-hover: var(--color-list-create-bg-hover);
  --list-table-add-btn-text: var(--color-list-create-text);
  --list-table-dashboard-btn-bg: var(--color-relation-add-bg);
  --list-table-dashboard-btn-bg-hover: var(--color-relation-add-bg-hover);
  --list-table-dashboard-btn-text: var(--color-relation-add-text);
  --list-table-filter-bg-hover: #2a313b;
  --list-table-filter-bg-active: #343d4a;
  --list-table-filter-text: #e8edf4;
}
