/* Токены design/MASTER.md. Единственное место, где живут hex-значения. */
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/onest-latin-400.woff2) format('woff2');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}
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/onest-cyrillic-400.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/onest-latin-500.woff2) format('woff2');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}
@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/onest-cyrillic-500.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/onest-latin-600.woff2) format('woff2');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}
@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/onest-cyrillic-600.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/onest-latin-700.woff2) format('woff2');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}
@font-face{font-family:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/onest-cyrillic-700.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jbmono-latin-500.woff2) format('woff2');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}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jbmono-cyrillic-500.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

:root{
  color-scheme:light dark;
  /* поверхности и текст */
  --bg:light-dark(#F6F5F2,#121316);
  --surface:light-dark(#FFFFFF,#1B1C20);
  --sunk:light-dark(#EFEDE8,#24262B);
  --ink:light-dark(#17181C,#ECEDEF);
  --ink2:light-dark(#3A3C43,#C4C6CC);
  --muted:light-dark(#6B6E76,#8E929B);
  --line:light-dark(#E6E3DD,#2E3036);
  --line-strong:light-dark(#CFCBC3,#3C3F46);
  --primary:light-dark(#2F5BEA,#6E8EF5);
  --primary-ink:light-dark(#FFFFFF,#0E1530);
  --primary-soft:color-mix(in srgb,var(--primary) 12%,var(--surface));
  --avatar-ink:#FFFFFF;
  --avatar-fallback:light-dark(#2B2D33,#4A4D55);

  /* статусы: точка — базовый цвет, текст — читаемый вариант */
  --s-new:#8A8D94; --s-work:#2F5BEA; --s-wait:#C98A0B; --s-check:#8B4FD8; --s-done:#23946A;
  --s-new-ink:light-dark(#62656D,#A9ADB5);
  --s-work-ink:light-dark(#2F5BEA,#8FA8F8);
  --s-wait-ink:light-dark(#946405,#E3AE45);
  --s-check-ink:light-dark(#7C42C9,#B790F2);
  --s-done-ink:light-dark(#1A7A56,#52C79A);

  /* приоритеты */
  --p0:light-dark(#C8372D,#F07A70); --p1:light-dark(#D06A12,#F0A05A);
  --p2:light-dark(#5D6B82,#9AA8BF); --p3:light-dark(#9AA0AA,#7E848E);

  /* графики денег: приход и расход. Пары проверены валидатором dataviz (светлая и тёмная поверхность, CVD ΔE ≥ 26) */
  --chart-in:light-dark(#2F5BEA,#6585EE);
  --chart-out:light-dark(#D06A12,#D07A28);

  /* предупреждение и ошибка */
  --warn-bg:light-dark(#FBF1D9,#3A2F14);
  --warn-ink:light-dark(#6E4A04,#F0C979);
  --warn-line:light-dark(#F0D9A6,#5A4718);
  --danger:light-dark(#C8372D,#F07A70);
  --hot-bg:light-dark(#FDECD9,#3D2A16);
  --hot-ink:light-dark(#9A4B07,#F3B172);

  /* тени и затемнение */
  --shadow-c1:light-dark(rgba(23,24,28,.05),rgba(0,0,0,.35));
  --shadow-c2:light-dark(rgba(23,24,28,.04),rgba(0,0,0,.25));
  --shadow:0 1px 2px var(--shadow-c1),0 4px 16px var(--shadow-c2);
  --shadow-lg:0 24px 64px light-dark(rgba(23,24,28,.22),rgba(0,0,0,.55));
  --shadow-drawer:-16px 0 40px light-dark(rgba(23,24,28,.12),rgba(0,0,0,.45));
  --scrim:light-dark(rgba(23,24,28,.45),rgba(0,0,0,.6));

  /* типографика */
  --font:Onest,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --fs-xs:12px; --fs-sm:13.5px; --fs-base:15px; --fs-md:16px; --fs-lg:19px; --fs-xl:26px;

  /* отступы, радиусы, движение */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-6:24px; --sp-8:32px;
  --r-sm:8px; --r-md:10px; --r-lg:12px; --r-xl:16px;
  --side-w:248px; --drawer-w:430px; --tabbar-h:64px; --touch:44px;
  --dur:180ms; --ease:cubic-bezier(.2,.8,.2,1);
}
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}

@media (prefers-reduced-motion:reduce){
  :root{--dur:0ms}
  *,*::before,*::after{animation-duration:0ms!important;transition-duration:0ms!important;scroll-behavior:auto!important}
}
