/**
 * Единый слой дизайн-токенов для приложения.
 * Подключать первым (до ninox-design-system, styles, ninox-desktop-skin).
 * Тёмная тема переопределяет семантические переменные в dark-theme.css.
 */

:root {
  /* —— Палитра спецификации (компоненты design-system) —— */
  --ninox-primary: #1c2c72;
  --ninox-secondary: #4d5b91;
  --ninox-background: #f7f7fb;
  --ninox-surface: #ffffff;
  --ninox-text: #140e14;
  --ninox-text-secondary: #7582a0;
  --ninox-accent: #c69f62;
  --ninox-neutral: #acaab0;
  --ninox-light-blue: #afbdee;
  --ninox-error: #e04f5f;
  --ninox-success: #45ad63;
  --ninox-warning: #f5a623;
  --ninox-border: #e0e0e0;
  --ninox-border-light: #f1f1f1;

  /* —— Оболочка десктопного скина (ninox-desktop-skin) —— */
  --ninox-app-bg: #d9dee8;
  --ninox-sidebar: #5d6dbe;
  --ninox-sidebar-hover: rgba(255, 255, 255, 0.12);
  --ninox-header-bar: #6d7dbd;
  --ninox-tab-active-bg: #ffffff;
  --ninox-tab-active-text: #4a56a6;
  --ninox-tab-inactive: rgba(255, 255, 255, 0.92);
  --ninox-workspace-bg: #eef1f7;
  --ninox-table-header: #f5f6f8;
  --ninox-table-border: #e0e0e0;
  --ninox-row-a: #ffffff;
  --ninox-row-b: #f8f9fb;
  --ninox-row-hover: #e8eef9;
  --ninox-row-selected: #d9e4fb;
  --ninox-detail-shadow: -6px 0 28px rgba(44, 53, 80, 0.14);

  /* —— Типографика —— */
  --font-family: "Neuwelt", "Avenir Next", "Segoe UI", "Helvetica Neue", sans-serif;
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-base: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 24px;
  --font-size-2xl: 32px;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;
  --line-height: 1.5;

  /* —— Отступы —— */
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 12px;
  --spacing-lg: 16px;
  --spacing-xl: 24px;
  --spacing-2xl: 32px;

  /* —— Скругления —— */
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 8px;
  --radius-xl: 12px;

  /* —— Тени —— */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.07);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.15);

  /* —— Анимации —— */
  --transition-fast: 0.15s ease;
  --transition-base: 0.2s ease;
  --transition-slow: 0.3s ease;

  /* —— Сетка и layout —— */
  --max-width: 1440px;
  --sidebar-width: 220px;
  --header-height: 56px;
  --toolbar-h: 56px;
  --tab-h: 42px;
  --control-h: 40px;
  --row-interactive-h: 40px;
  --toolbar-gap: 8px;
  --toolbar-pad-x: 12px;
  --toolbar-pad-y: 8px;

  /* z-index шкала */
  --z-base: 1;
  --z-sticky: 10;
  --z-sidebar: 100;
  --z-overlay: 999;
  --z-mobile-menu: 1000;
  --z-toast: 1001;
  --z-dialog: 1100;

  /* Статусы в гриде / чипы */
  --status-chip-bg: rgba(93, 109, 190, 0.12);
  --status-chip-fg: var(--ninox-tab-active-text);
  --status-chip-border: rgba(93, 109, 190, 0.25);

  /* Капс-лейблы */
  --letter-spacing-caps: 0.08em;

  /* —— Breakpoints (документация / media в JS) —— */
  --bp-mobile-sm: 320px;
  --bp-mobile-md: 375px;
  --bp-tablet: 768px;
  --bp-laptop: 1024px;
  --bp-desktop: 1440px;

  /* —— Семантика layout и диалогов (legacy styles.css) —— */
  --bg: #f7f7fb;
  --bg-deep: #ffffff;
  --ink: #140e14;
  --muted: #7582a0;
  --panel: rgba(255, 255, 255, 0.98);
  --panel-strong: #ffffff;
  --line: rgba(172, 170, 176, 0.3);
  --accent: #1c2c72;
  --accent-2: #4d5b91;
  --accent-soft: rgba(28, 44, 114, 0.08);
  --success: #45ad63;
  --error: #e04f5f;
  --warning: #f5a623;
  --neutral: #acaab0;
  --light-blue: #afbdee;
  --border: #e0e0e0;
  --border-light: #f1f1f1;
  --shadow: var(--shadow-md);
}
