/* Токены UI-next — из прототипа docs/ui/prototype_tabs.html (дизайн-система Platform,
   Material 3, скин по умолчанию): цвета --mat-sys-* светлой и тёмной темы.
   Тема — из системы; явный выбор ставит <html data-theme="light|dark"> (core/theme.js). */
:root {
  --mat-sys-primary: #38517c; /* TASK-243: было #415f91, затемнено до 7.6:1 к surface */
  --mat-sys-on-primary: #ffffff;
  --mat-sys-primary-container: #d6e3ff;
  --mat-sys-on-primary-container: #001b3d;
  --mat-sys-secondary: #565f71;
  --mat-sys-secondary-container: #dae2f9;
  --mat-sys-on-secondary-container: #131c2b;
  --mat-sys-tertiary: #705575;
  --mat-sys-tertiary-container: #fad8fd;
  --mat-sys-on-tertiary-container: #28132e;
  --mat-sys-error: #ba1a1a;
  --mat-sys-error-container: #ffdad6;
  --mat-sys-on-error-container: #410002;
  --mat-sys-success: #3a6a3f;
  --mat-sys-success-container: #bcf0bb;
  --mat-sys-on-success-container: #00210a;
  --mat-sys-warning: #7d5700;
  --mat-sys-warning-container: #ffddb2;
  --mat-sys-on-warning-container: #281800;
  --mat-sys-surface: #f9f9ff;
  --mat-sys-on-surface: #191c20;
  --mat-sys-on-surface-variant: #44474e;
  --mat-sys-surface-container-lowest: #ffffff;
  --mat-sys-surface-container-low: #f3f3fa;
  --mat-sys-surface-container: #edeef4;
  --mat-sys-surface-container-high: #e7e8ee;
  --mat-sys-surface-container-highest: #e2e2e9;
  --mat-sys-outline: #74777f;
  --mat-sys-outline-variant: #c4c6d0;
  --mat-sys-inverse-surface: #2e3036;
  --mat-sys-inverse-on-surface: #f0f0f7;

  --am-corner-s: 8px;
  --am-corner-m: 12px;
  --am-corner-l: 16px;
  --am-corner-xl: 28px;
  --am-elev-1: 0 1px 2px rgb(0 0 0 / 30%), 0 1px 3px 1px rgb(0 0 0 / 15%);
  --am-elev-3: 0 4px 8px 3px rgb(0 0 0 / 15%), 0 1px 3px rgb(0 0 0 / 30%);
  --am-appbar-h: 48px;
  --am-side-w: 280px;
  /* Единая сетка полос (TASK-366): левая колонка и центр стоят рядом, и их линии обязаны совпадать,
     поэтому высоту всех полос задаёт --am-bar-h. --am-sub-h — её имя для второстепенных полос:
     своё число у него только на телефоне (ниже), где колонки показываются по одной. */
  --am-bar-h: 56px;
  --am-sub-h: var(--am-bar-h);
  --am-switch-h: 40px;
  --am-font: Roboto, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --am-mono: ui-monospace, "Cascadia Mono", "Roboto Mono", Menlo, Consolas, monospace;
  color-scheme: light;
}

@media (max-width: 480px) {
  :root { --am-sub-h: 52px; --am-switch-h: 44px; }
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --mat-sys-primary: #89b4fa;
    --mat-sys-on-primary: #1e1e2e;
    --mat-sys-primary-container: #394461;
    --mat-sys-on-primary-container: #cdd6f4;
    --mat-sys-secondary: #a6adc8;
    --mat-sys-secondary-container: #313148;
    --mat-sys-on-secondary-container: #cdd6f4;
    --mat-sys-tertiary: #cba6f7;
    --mat-sys-tertiary-container: #494060;
    --mat-sys-on-tertiary-container: #cdd6f4;
    --mat-sys-error: #f38ba8;
    --mat-sys-error-container: #53394c;
    --mat-sys-on-error-container: #cdd6f4;
    --mat-sys-success: #a6e3a1;
    --mat-sys-success-container: #404f4b;
    --mat-sys-on-success-container: #cdd6f4;
    --mat-sys-warning: #f9e2af;
    --mat-sys-warning-container: #554f4e;
    --mat-sys-on-warning-container: #cdd6f4;
    --mat-sys-surface: #1e1e2e;
    --mat-sys-on-surface: #cdd6f4;
    --mat-sys-on-surface-variant: #7f849c;
    --mat-sys-surface-container-lowest: #2a2a3e;
    --mat-sys-surface-container-low: #24243a;
    --mat-sys-surface-container: #2a2a3e;
    --mat-sys-surface-container-high: #2a2a3e;
    --mat-sys-surface-container-highest: #313148;
    --mat-sys-outline: #585b70;
    --mat-sys-outline-variant: #44445a;
    --mat-sys-inverse-surface: #cdd6f4;
    --mat-sys-inverse-on-surface: #1e1e2e;
    color-scheme: dark;
  }
}

:root[data-theme="dark"] {
  --mat-sys-primary: #89b4fa;
  --mat-sys-on-primary: #1e1e2e;
  --mat-sys-primary-container: #394461;
  --mat-sys-on-primary-container: #cdd6f4;
  --mat-sys-secondary: #a6adc8;
  --mat-sys-secondary-container: #313148;
  --mat-sys-on-secondary-container: #cdd6f4;
  --mat-sys-tertiary: #cba6f7;
  --mat-sys-tertiary-container: #494060;
  --mat-sys-on-tertiary-container: #cdd6f4;
  --mat-sys-error: #f38ba8;
  --mat-sys-error-container: #53394c;
  --mat-sys-on-error-container: #cdd6f4;
  --mat-sys-success: #a6e3a1;
  --mat-sys-success-container: #404f4b;
  --mat-sys-on-success-container: #cdd6f4;
  --mat-sys-warning: #f9e2af;
  --mat-sys-warning-container: #554f4e;
  --mat-sys-on-warning-container: #cdd6f4;
  --mat-sys-surface: #1e1e2e;
  --mat-sys-on-surface: #cdd6f4;
  --mat-sys-on-surface-variant: #7f849c;
  --mat-sys-surface-container-lowest: #2a2a3e;
  --mat-sys-surface-container-low: #24243a;
  --mat-sys-surface-container: #2a2a3e;
  --mat-sys-surface-container-high: #2a2a3e;
  --mat-sys-surface-container-highest: #313148;
  --mat-sys-outline: #585b70;
  --mat-sys-outline-variant: #44445a;
  --mat-sys-inverse-surface: #cdd6f4;
  --mat-sys-inverse-on-surface: #1e1e2e;
  color-scheme: dark;
}

/* Терминал (TASK-267): своя тема, независимая от темы интерфейса. Значения — те же токены
   светлой и тёмной темы выше (surface-container-lowest, on-surface, primary, outline-variant);
   совпадение сторожит test_next_term_theme_live. Подключаются в base.css по data-term-theme. */
:root {
  --am-term-light-bg: #ffffff;
  --am-term-light-fg: #191c20;
  --am-term-light-accent: #38517c;
  --am-term-light-border: #c4c6d0;
  --am-term-dark-bg: #2a2a3e;
  --am-term-dark-fg: #cdd6f4;
  --am-term-dark-accent: #89b4fa;
  --am-term-dark-border: #44445a;
}
