:root {
  /* ===== Фоны ===== */
  --color-bg: #fff8f0;
  --color-bg-warm: #fff0e5;
  --color-bg-cool: #f0f4ff;
  --color-surface: #ffffff;
  --color-surface-hover: #fff5ee;

  /* ===== Текст ===== */
  --color-text: #3d3244;
  --color-text-light: #8a8495;
  --color-text-inverse: #ffffff;

  /* ===== Категории — градиенты ===== */
  --gradient-want: linear-gradient(135deg, #5b9fe6, #3a7bd5);
  --gradient-places: linear-gradient(135deg, #8dd98f, #5fb862);
  --gradient-schedule: linear-gradient(135deg, #ffb94d, #f59a1b);
  --gradient-feelings: linear-gradient(135deg, #e07db0, #c05888);
  --gradient-people: linear-gradient(135deg, #ad85de, #8a5bc0);
  --gradient-vision: linear-gradient(135deg, #ff8555, #e85a25);

  /* Solid (рамки, индикаторы) */
  --color-want: #4a90d9;
  --color-places: #5fb862;
  --color-schedule: #f5a623;
  --color-feelings: #d0699e;
  --color-people: #9b6fd1;
  --color-vision: #ff6b35;

  /* QuickBar */
  --color-yes: #43c06d;
  --color-no: #f25555;
  --color-toilet: #ff9f43;
  --color-drink: #4dabf5;
  --color-help: #e84393;
  --color-more: #a66dd4;

  /* Состояния */
  --color-accent: #4a90d9;
  --color-success: #43c06d;
  --color-error: #f25555;
  --color-warning: #ffb94d;

  /* Расписание */
  --color-completed: #e8f7ec;
  --color-current: #fff7dc;
  --color-pending: #f8f6ff;

  /* Тени */
  --shadow-card: 0 4px 16px rgba(61, 50, 68, 0.08);
  --shadow-card-hover: 0 8px 24px rgba(61, 50, 68, 0.12);
  --shadow-button: 0 4px 12px rgba(61, 50, 68, 0.15);
  --shadow-quickbar: 0 -4px 20px rgba(61, 50, 68, 0.08);
  --shadow-glow-want: 0 4px 20px rgba(74, 144, 217, 0.25);
  --shadow-glow-places: 0 4px 20px rgba(95, 184, 98, 0.25);
  --shadow-glow-schedule: 0 4px 20px rgba(245, 166, 35, 0.25);
  --shadow-glow-feelings: 0 4px 20px rgba(208, 105, 158, 0.25);
  --shadow-glow-people: 0 4px 20px rgba(155, 111, 209, 0.25);
  --shadow-glow-vision: 0 4px 20px rgba(255, 107, 53, 0.25);

  /* Совместимость со старыми стилями (vision, admin) */
  --color-shadow: rgba(61, 50, 68, 0.08);

  /* Размеры */
  --card-size: 120px;
  --card-radius: 24px;
  --card-radius-large: 28px;
  --btn-radius: 20px;
  --avatar-size: 140px;
  --quick-btn-height: 60px;
  --category-btn-size: 140px;

  /* Шрифты */
  --font-family: 'Nunito', 'Segoe UI', sans-serif;
  --font-card: 16px;
  --font-card-large: 18px;
  --font-heading: 26px;
  --font-heading-large: 32px;
  --font-body: 16px;
  --font-small: 13px;

  /* Анимации */
  --transition-fast: 150ms ease;
  --transition-normal: 300ms ease;
  --transition-slow: 500ms ease;
  --transition-bounce: 400ms cubic-bezier(0.175, 0.885, 0.32, 1.275);

  /* Декоративные */
  --pattern-dots: radial-gradient(circle, rgba(74, 144, 217, 0.04) 1px, transparent 1px);
  --pattern-dots-size: 24px 24px;
  --border-playful: 3px solid;
}

@media (max-width: 599px) {
  :root {
    --card-size: 105px;
    --card-radius: 18px;
    --font-card: 14px;
  }
}

@media (min-width: 600px) {
  :root {
    --card-size: 130px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
