/**
 * @fileoverview Базовые стили и переменные темы.
 */

:root {
  /* Цветовая палитра со скриншота */
  --color-bg: #f4f5f2;              /* Мягкий тёплый фон страницы */
  --color-surface: #ffffff;         /* Белый цвет карточек */
  --color-surface-hover: #fafbfa;
  --color-border: #e3e6e2;          /* Тонкие границы блоков */
  --color-border-subtle: #edf0ec;   /* Линии внутри таблиц */
  --color-border-focus: #37534a;    /* Фокус инпутов */

  --color-text-main: #181d1a;       /* Основной глубокий цвет текста */
  --color-text-muted: #69706b;      /* Серые подписи и подсказки */
  --color-text-light: #9ea59f;

  /* Акцентный цвет (кнопки, активный выбор) */
  --color-primary: #37534a;         /* Приглушённый хвойно-зелёный */
  --color-primary-hover: #2b423b;
  --color-primary-light: #eef2ef;

  --color-accent: #486b60;

  /* Бейджи букв (L, B, H, M1, S1) */
  --color-badge-bg: #e3e7e4;
  --color-badge-text: #454d48;

  /* Системные статусы */
  --color-danger: #dc2626;
  --color-danger-bg: #fef2f2;
  --color-danger-border: #fecaca;

  --color-warning: #d97706;
  --color-warning-bg: #fffbeb;
  --color-warning-border: #fde68a;

  --color-success: #37534a;
  --color-success-bg: #f0fdf4;
  --color-success-border: #bbf7d0;

  /* Типографика */
  --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* Полный запрет скруглений (строгая прямоугольная геометрия) */
  --radius-sm: 0px;
  --radius-md: 0px;
  --radius-lg: 0px;

  /* Тени */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.03);
  --shadow-md: 0 1px 3px rgba(0, 0, 0, 0.03), 0 4px 12px rgba(0, 0, 0, 0.015);
  --shadow-lg: 0 8px 20px -4px rgba(0, 0, 0, 0.03);

  /* Переходы */
  --transition-fast: 0.15s ease;
}



*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: var(--font-family);
  background-color: var(--color-bg);
  color: var(--color-text-main);
  line-height: 1.5;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  -webkit-font-smoothing: antialiased;
}

/* Доступность фокуса */
:focus-visible {
  outline: 2px solid var(--color-border-focus);
  outline-offset: 2px;
}

img, svg {
  display: block;
  max-width: 100%;
}

a {
  color: var(--color-primary);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}
