/* ===========================================================================
   Дизайн-система — перенесена из проекта lingo (палитра владельца).
   Компоненты используют семантические токены, не сырой hex.
     deep sky blue #5cc8ff  — акцент/выделение   -> --sky-*
     lavender veil #f2d5f8  — мягкая подложка     -> --veil-*
     vintage grape #493657  — чернила/тёмная заливка (якорь) -> --grape-*
     celadon       #afd5aa  — успех/готово        -> --cel-*
     grapefruit    #fe6d73  — внимание/опасность  -> --gf-*
   =========================================================================== */
:root{
  --sky-50:#f0faff;  --sky-100:#dbf3ff; --sky-200:#b9e7fd; --sky-300:#8fdaff;
  --sky-400:#5cc8ff;                    --sky-500:#2cb0f2; --sky-600:#0d91d3;
  --sky-700:#0971a5; --sky-800:#07567e;

  --veil-50:#fcf7fd; --veil-100:#f8e9fb;
  --veil-200:#f2d5f8;                   --veil-300:#e7beef; --veil-400:#d6a3e0;
  --veil-500:#ba80c6; --veil-600:#9d60a9; --veil-700:#794983; --veil-800:#5b3762;

  --grape-50:#f5f2f7; --grape-100:#ebe6ef; --grape-200:#dad2e0; --grape-300:#beb2c7;
  --grape-400:#9b8ba7; --grape-500:#786388; --grape-600:#5f496e;
  --grape-700:#493657;                  --grape-800:#352541; --grape-900:#251a2e;

  --cel-50:#f1f9f0; --cel-100:#e4f3e2; --cel-200:#cee7ca;
  --cel-300:#afd5aa;                    --cel-400:#86bd7f; --cel-500:#60a857;
  --cel-600:#4b8943; --cel-700:#396c33; --cel-800:#2b5426;

  --gf-50:#ffebeb; --gf-100:#ffdbdc; --gf-200:#fdbec0; --gf-300:#fe9a9d;
  --gf-400:#fe6d73;                     --gf-500:#f5474d; --gf-600:#db242a;
  --gf-700:#a92327; --gf-800:#7e2023;

  /* текст */
  --ink:var(--grape-700); --ink-strong:var(--grape-800); --muted:var(--grape-500);
  --faint:var(--grape-400); --muted-strong:var(--grape-600); --on-dark:#fff;

  /* поверхности */
  --bg:#faf7fb; --card:#ffffff; --surface:var(--grape-50); --surface-2:var(--veil-50);
  --line:var(--grape-200); --line-soft:var(--grape-100); --line-strong:var(--grape-400);
  --line-mid:var(--grape-300); --fill-soft:var(--grape-100);

  /* акцент */
  --accent:var(--sky-400); --accent-ink:var(--sky-700); --accent-deep:var(--sky-600);
  --accent-tint:var(--sky-50); --accent-line:var(--sky-200); --accent-solid:var(--sky-700);
  --accent-fill:var(--sky-100);

  /* состояния */
  --ok:var(--cel-500); --ok-ink:var(--cel-700); --ok-tint:var(--cel-50); --ok-line:var(--cel-200);
  --ok-solid:var(--cel-700);
  --alert:var(--gf-500); --alert-ink:var(--gf-700); --alert-tint:var(--gf-50); --alert-line:var(--gf-200);
  --danger:var(--gf-600); --danger-ink:var(--gf-700);
  --draft:var(--veil-500); --draft-ink:var(--veil-700); --draft-tint:var(--veil-50); --draft-line:var(--veil-300);
  --gold:#c9962c; --gold-ink:#8a6412; --gold-tint:#fdf6e6; --gold-line:#eddcae;

  /* якорь (тёмная заливка под белый текст) */
  --primary:var(--grape-700); --primary-strong:var(--grape-800);

  /* форма */
  --r-xs:8px; --r-sm:10px; --r-md:14px; --r-lg:18px; --r-xl:24px; --r-2xl:30px; --r-pill:999px;

  /* глубина — тени с оттенком grape, не серые */
  --sh-1:0 1px 2px rgba(73,54,87,.05), 0 2px 6px rgba(73,54,87,.05);
  --sh-2:0 2px 4px rgba(73,54,87,.05), 0 6px 16px rgba(73,54,87,.07);
  --sh-3:0 4px 10px rgba(73,54,87,.07), 0 14px 34px rgba(73,54,87,.10);
  --sh-inset:inset 0 1px 2px rgba(73,54,87,.06);
  --sh-press:inset 0 2px 5px rgba(37,26,46,.22);
  --ring:0 0 0 3px rgba(92,200,255,.35);

  /* типографика */
  --font:'Onest',-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,Roboto,
         "Helvetica Neue",Arial,sans-serif;
  --fs-2xs:11px; --fs-xs:12px; --fs-sm:13px; --fs-md:15px; --fs-lg:17px;
  --fs-xl:20px; --fs-2xl:24px; --fs-3xl:30px;
  --lh-tight:1.2; --lh:1.45; --tracking-tight:-.015em; --tracking-caps:.06em;

  /* ритм */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px; --sp-7:32px; --sp-8:44px;

  /* движение */
  --ease:cubic-bezier(.32,.72,0,1); --t-fast:.14s; --t:.22s; --t-slow:.34s;

  /* градиенты кнопок */
  --grad-primary:linear-gradient(180deg,var(--grape-600),var(--grape-700));
  --grad-accept:linear-gradient(180deg,color-mix(in srgb,var(--ok-solid) 88%,#fff),var(--ok-solid));
  --grad-fill:linear-gradient(180deg,color-mix(in srgb,var(--accent-solid) 88%,#fff),var(--accent-solid));
  --grad-header:linear-gradient(135deg,var(--grape-600) 0%,var(--grape-800) 62%,var(--grape-900) 100%);
  --gloss:inset 0 1px 0 rgba(255,255,255,.18);
}

/* база */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; font-family:var(--font); font-size:var(--fs-md); line-height:var(--lh);
  color:var(--ink); background:var(--bg);
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
h1,h2,h3,h4{letter-spacing:var(--tracking-tight);line-height:var(--lh-tight)}
button,input,select,textarea{font-family:inherit}
@media (pointer:coarse){ input,select,textarea{font-size:16px !important} }
:focus-visible{outline:none;box-shadow:var(--ring)}
::selection{background:var(--sky-200);color:var(--ink)}
