/* ═══════════════════════════════════════════════
   REALTRAC PUBLIC — TOKENS
   Версия: 1.2.0
   1.2.0: UI-шрифт — Inter 4.001 из fonts/Inter/ (как в кабинете) вместо Segoe UI (лицензия Microsoft
          не разрешает раздавать шрифт с сайта); Segoe UI — только системный запасной.
   Общие с партнёрским кабинетом брендовые токены
   (цвета, шрифты, отступы) плюс размеры публичного shell.
   Шрифты Bebas Neue и Inter подключаются из fonts/ шаблона.
   Layout-правила здесь не задаются (ADR-001).
═══════════════════════════════════════════════ */

/* ── FONTS (локальные файлы шаблона; пути относительно css/) ── */
@font-face {
  font-family: 'Bebas Neue';
  src: url('../fonts/BebasRegular/BebasRegular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* Inter 4.001 (1.2.0, как в кабинете — template_styles.css 1.4.0, R12-F1): один вариативный файл на набор
   символов, все веса 100–900. Браузер загружает только наборы, символы которых есть на странице
   (unicode-range — как в @fontsource-variable/inter 5.2.8). Лицензия — fonts/Inter/OFL.txt.
   Segoe UI с сайта не раздаётся (лицензия Microsoft), остаётся только системным запасным. */
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter/inter-cyrillic-ext-wght-normal.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter/inter-cyrillic-wght-normal.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter/inter-latin-ext-wght-normal.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308,
    U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113,
    U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter/inter-latin-wght-normal.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304,
    U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --rt-blue: #0070B8;
  --rt-red:  #D01F27;

  --color-bg:             #F4F6F9;
  --color-surface:        #FFFFFF;
  --color-surface-2:      #F8F9FB;
  --color-surface-offset: #EDF0F4;

  --color-border:  rgba(0,0,0,.09);
  --color-divider: rgba(0,0,0,.07);

  --color-text:       #1A1D23;
  --color-text-muted: #5A6070;
  --color-text-faint: #9AA0AE;

  --color-primary:           #0070B8;
  --color-primary-hover:     #005A96;
  --color-primary-active:    #004A7A;
  --color-primary-highlight: #DCE9F5;

  --color-success:    #2E7D32;
  --color-success-bg: #E8F5E9;
  --color-error:      #D01F27;
  --color-error-bg:   #FDECEA;

  /* Тёмные поверхности hero и футера одинаковы в обеих темах */
  --color-hero-from: #0B1220;
  --color-hero-to:   #101828;
  --color-footer-bg: #0F1623;
  --color-footer-text: rgba(255,255,255,.78);
  --color-footer-muted: rgba(255,255,255,.5);
  --color-footer-divider: rgba(255,255,255,.1);

  --text-xs:   clamp(0.75rem,  0.7rem  + 0.25vw, 0.875rem);
  --text-sm:   clamp(0.875rem, 0.8rem  + 0.35vw, 1rem);
  --text-base: clamp(1rem,     0.95rem + 0.25vw, 1.125rem);
  --text-lg:   clamp(1.125rem, 1rem    + 0.75vw, 1.5rem);
  --text-xl:   clamp(1.5rem,   1.3rem  + 1.2vw,  2.25rem);
  --text-2xl:  clamp(2rem,     1.6rem  + 2vw,    3.25rem);

  --space-1:  .25rem;
  --space-2:  .5rem;
  --space-3:  .75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;

  --shadow-sm: 0 1px 3px rgba(0,30,80,.06), 0 1px 2px rgba(0,30,80,.04);
  --shadow-md: 0 4px 12px rgba(0,30,80,.08);

  --transition: 160ms cubic-bezier(0.16, 1, 0.3, 1);
  --radius: 0;

  --sidebar-w-collapsed: 64px;
  --sidebar-w-expanded:  240px;
  --topbar-h:            80px;   /* логотип 50px + защитная область 15px сверху и снизу */
  --content-max:         1440px;

  --font-display: 'Bebas Neue', 'Arial Narrow', sans-serif;
  --font-body:    'Inter', 'Segoe UI', system-ui, sans-serif;
}

/* ── DARK MODE ── */
[data-theme="dark"] {
  --color-bg:             #0E1117;
  --color-surface:        #161B24;
  --color-surface-2:      #1A2030;
  --color-surface-offset: #1E2535;
  --color-border:         rgba(255,255,255,.08);
  --color-divider:        rgba(255,255,255,.06);
  --color-text:           #E2E6ED;
  --color-text-muted:     #7B8499;
  --color-text-faint:     #4A5263;
  --color-primary:           #4DA3E0;
  --color-primary-hover:     #3390D0;
  --color-primary-active:    #2278B8;
  --color-primary-highlight: #1A2C3D;
  --color-success:    #66BB6A;
  --color-success-bg: #1B2E1C;
  --color-error:      #F2706A;
  --color-error-bg:   #2E1A1A;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.25);
  --shadow-md: 0 4px 12px rgba(0,0,0,.35);
}

@media (prefers-reduced-motion: reduce) {
  :root { --transition: 0ms; }
}
