/*
Модуль: web/themes.css
Назначение: локальные шрифты (@font-face) и токены трёх тем Лайта на :root[data-theme=porcelain|graphite|atlas].
Публичное: CSS-переменные --bg, --surface, --ink, --accent, --st-*, --r-* и др. (читает base.css)
Зависит от: web/fonts/*.woff2
Вызывают: index.html (подключение), theme.js (ставит data-theme)
Инварианты: компоненты темы не знают, все цвета и шрифты только здесь. Значения из DESIGN_20261029_lite-R1_tokeny.md.
Карта: MODULES.md#webthemes.css
*/

/* ==== [БЛОК: Шрифты, только кириллица и латиница] ==== */
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/onest-cyrillic-400-normal.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:400;font-display:swap;src:url(/fonts/onest-latin-400-normal.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-normal.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-normal.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-normal.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-normal.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-normal.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-normal.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-400-normal.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-latin-500-normal.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-latin-600-normal.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-700-normal.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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/manrope-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/manrope-latin-400-normal.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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/manrope-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/manrope-latin-500-normal.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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-latin-600-normal.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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-latin-700-normal.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:'Playfair Display';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/playfair-display-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/playfair-display-latin-500-normal.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}

/* ==== [БЛОК: Фарфор, светлая, по умолчанию] ==== */
:root,:root[data-theme=porcelain]{
  color-scheme:light;
  --font:Onest,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-title:var(--font);--title-weight:700;--title-size:32px;--title-ls:-.025em;
  --font-num:var(--font);--num-weight:700;
  --bg:#F2F3F6;--surface:#FFFFFF;--raised:#F2F4F7;--line:#EAECF0;--line-2:#E3E6EB;
  --ink:#101828;--ink-2:#344054;--muted:#6B7385;--muted-2:#4B5568;
  --accent:#2853F5;--accent-hover:#1A3BC2;--accent-soft:#ECF0FF;
  --primary-bg:#2853F5;--primary-fg:#FFFFFF;--primary-shadow:0 4px 12px rgba(40,83,245,.25);
  --btn2-bg:#F2F4F7;--btn2-fg:#101828;--btn2-bd:transparent;
  --card-bg:#FFFFFF;--card-bd:#EAECF0;--card-shadow:0 1px 2px rgba(16,24,40,.04);--card-radius:16px;
  --cardx-bg:#FFFFFF;--cardx-bd:#E6E8EC;--cardx-shadow:0 1px 3px rgba(16,24,40,.06),0 10px 28px rgba(16,24,40,.06);--cardx-radius:22px;
  --field-bg:#F7F8FA;--field-bd:#E6E8EC;--field-fg:#101828;--field-radius:14px;
  --seg-bg:#E6E8ED;--seg-bd:transparent;--seg-gap:2px;--seg-pad:3px;--seg-radius:12px;--seg-item-radius:9px;--seg-item-bd:transparent;
  --seg-fg:#4B5568;--seg-on-bg:#FFFFFF;--seg-on-fg:#101828;--seg-on-bd:transparent;--seg-on-shadow:0 1px 2px rgba(16,24,40,.08),0 1px 1px rgba(16,24,40,.04);
  --seg-count-bg:#ECF0FF;--seg-count-fg:#2853F5;
  --chip-bg:#FFFFFF;--chip-bd:#E3E6EB;--chip-fg:#344054;--chip-radius:16px;
  --avatar-bg:#2853F5;--avatar-fg:#FFFFFF;--avatar-bd:transparent;
  --icon-btn-bg:#FFFFFF;--icon-btn-bd:#E3E6EB;--icon-btn-fg:#4B5568;
  --tile-radius:12px;
  --r-low:#C72F27;--r-low-bg:#FDECEB;--r-mid:#8F5A00;--r-mid-bg:#FFF3D6;--r-high:#157A40;--r-high-bg:#E3F5EA;
  --chip-st-radius:10px;--dot-display:none;
  --st-new-fg:#FFFFFF;--st-new-bg:#2853F5;--st-new-bd:transparent;--st-new-dot:#FFFFFF;
  --st-draft-fg:#344054;--st-draft-bg:#EEF0F4;--st-draft-bd:transparent;--st-draft-dot:#344054;
  --st-answered-fg:#157A40;--st-answered-bg:#E3F5EA;--st-answered-bd:transparent;--st-answered-dot:#157A40;
  --st-complaint-fg:#8F5A00;--st-complaint-bg:#FFF1D2;--st-complaint-bd:transparent;--st-complaint-dot:#8F5A00;
  --st-deleted-fg:#5A6275;--st-deleted-bg:#F2F3F6;--st-deleted-bd:transparent;--st-deleted-dot:#5A6275;
  --ok:#157A40;--warn:#8F5A00;--warn-bg:#FFF1D2;--bad:#C72F27;--bad-bg:#FDECEB;
  --toast-bg:#101828;--toast-fg:#FFFFFF;--overlay:rgba(16,24,40,.45);
  --swipe-bg:#E6E8ED;--swipe-fg:#344054;
}

/* ==== [БЛОК: Графит, тёмная] ==== */
:root[data-theme=graphite]{
  color-scheme:dark;
  --font:Inter,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-title:var(--font);--title-weight:700;--title-size:30px;--title-ls:-.02em;
  --font-num:var(--font);--num-weight:700;
  --bg:#0B0C0E;--surface:#141518;--raised:#1B1D21;--line:#1F2226;--line-2:#26292E;
  --ink:#F1F2F4;--ink-2:#C9CCD2;--muted:#868B94;--muted-2:#A6AAB2;
  --accent:#F1F2F4;--accent-hover:#FFFFFF;--accent-soft:#24272C;
  --primary-bg:#F1F2F4;--primary-fg:#0B0C0E;--primary-shadow:none;
  --btn2-bg:#1B1D21;--btn2-fg:#F1F2F4;--btn2-bd:#2A2D33;
  --card-bg:#141518;--card-bd:#1F2226;--card-shadow:none;--card-radius:16px;
  --cardx-bg:#141518;--cardx-bd:#2A2D33;--cardx-shadow:none;--cardx-radius:18px;
  --field-bg:#1B1D21;--field-bd:#2C3036;--field-fg:#F1F2F4;--field-radius:12px;
  --seg-bg:#141518;--seg-bd:#1F2226;--seg-gap:2px;--seg-pad:3px;--seg-radius:12px;--seg-item-radius:9px;--seg-item-bd:transparent;
  --seg-fg:#A6AAB2;--seg-on-bg:#24272C;--seg-on-fg:#F1F2F4;--seg-on-bd:transparent;--seg-on-shadow:none;
  --seg-count-bg:transparent;--seg-count-fg:#A6AAB2;
  --chip-bg:transparent;--chip-bd:#26292E;--chip-fg:#C9CCD2;--chip-radius:16px;
  --avatar-bg:#1B1D21;--avatar-fg:#F1F2F4;--avatar-bd:#2A2D33;
  --icon-btn-bg:#141518;--icon-btn-bd:#24272C;--icon-btn-fg:#A6AAB2;
  --tile-radius:10px;
  --r-low:#FF6F61;--r-low-bg:#1B1D21;--r-mid:#F0B54A;--r-mid-bg:#1B1D21;--r-high:#4FD18B;--r-high-bg:#1B1D21;
  --chip-st-radius:6px;--dot-display:inline-block;
  --st-new-fg:#0B0C0E;--st-new-bg:#F1F2F4;--st-new-bd:transparent;--st-new-dot:#0B0C0E;
  --st-draft-fg:#9DBBFF;--st-draft-bg:rgba(157,187,255,.12);--st-draft-bd:transparent;--st-draft-dot:#9DBBFF;
  --st-answered-fg:#A6AAB2;--st-answered-bg:rgba(255,255,255,.06);--st-answered-bd:transparent;--st-answered-dot:#4FD18B;
  --st-complaint-fg:#F0B54A;--st-complaint-bg:rgba(240,181,74,.12);--st-complaint-bd:transparent;--st-complaint-dot:#F0B54A;
  --st-deleted-fg:#868B94;--st-deleted-bg:rgba(255,255,255,.04);--st-deleted-bd:transparent;--st-deleted-dot:#5E626A;
  --ok:#4FD18B;--warn:#F0B54A;--warn-bg:rgba(240,181,74,.12);--bad:#FF6F61;--bad-bg:rgba(255,111,97,.12);
  --toast-bg:#F1F2F4;--toast-fg:#0B0C0E;--overlay:rgba(0,0,0,.6);
  --swipe-bg:#24272C;--swipe-fg:#F1F2F4;
}

/* ==== [БЛОК: Атлас, премиальная. Цифры Manrope 600, Playfair только заголовок] ==== */
:root[data-theme=atlas]{
  color-scheme:dark;
  --font:Manrope,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-title:'Playfair Display',Georgia,serif;--title-weight:500;--title-size:38px;--title-ls:-.01em;
  --font-num:Manrope,system-ui,sans-serif;--num-weight:600;
  --bg:#131110;--surface:#1A1715;--raised:#1C1917;--line:#2E2925;--line-2:#322C27;
  --ink:#F2ECE4;--ink-2:#CFC6BA;--muted:#93897D;--muted-2:#B9AFA3;
  --accent:#DCC291;--accent-hover:#E8D3AA;--accent-soft:rgba(220,194,145,.10);
  --primary-bg:#DCC291;--primary-fg:#1A1612;--primary-shadow:none;
  --btn2-bg:#25211E;--btn2-fg:#F2ECE4;--btn2-bd:#352F29;
  --card-bg:#1A1715;--card-bd:#2E2925;--card-shadow:none;--card-radius:18px;
  --cardx-bg:#1C1917;--cardx-bd:#332D28;--cardx-shadow:none;--cardx-radius:22px;
  --field-bg:#221E1B;--field-bd:#352F29;--field-fg:#F2ECE4;--field-radius:14px;
  --seg-bg:transparent;--seg-bd:transparent;--seg-gap:8px;--seg-pad:0px;--seg-radius:17px;--seg-item-radius:17px;--seg-item-bd:#322C27;
  --seg-fg:#CFC6BA;--seg-on-bg:#DCC291;--seg-on-fg:#1A1612;--seg-on-bd:#DCC291;--seg-on-shadow:none;
  --seg-count-bg:transparent;--seg-count-fg:currentColor;
  --chip-bg:#1A1715;--chip-bd:#2E2925;--chip-fg:#CFC6BA;--chip-radius:10px;
  --avatar-bg:transparent;--avatar-fg:#DCC291;--avatar-bd:#DCC291;
  --icon-btn-bg:transparent;--icon-btn-bd:#322C27;--icon-btn-fg:#B9AFA3;
  --tile-radius:12px;
  --r-low:#EE8A76;--r-low-bg:#221E1B;--r-mid:#F0A35E;--r-mid-bg:#221E1B;--r-high:#A9D3AC;--r-high-bg:#221E1B;
  --chip-st-radius:10px;--dot-display:inline-block;
  --st-new-fg:#DCC291;--st-new-bg:rgba(220,194,145,.10);--st-new-bd:rgba(220,194,145,.45);--st-new-dot:#DCC291;
  --st-draft-fg:#CFC6BA;--st-draft-bg:transparent;--st-draft-bd:#3A332D;--st-draft-dot:#9FB0D6;
  --st-answered-fg:#A9D3AC;--st-answered-bg:rgba(169,211,172,.08);--st-answered-bd:transparent;--st-answered-dot:#A9D3AC;
  --st-complaint-fg:#F0A35E;--st-complaint-bg:rgba(240,163,94,.10);--st-complaint-bd:rgba(240,163,94,.35);--st-complaint-dot:#F0A35E;
  --st-deleted-fg:#93897D;--st-deleted-bg:transparent;--st-deleted-bd:#2E2925;--st-deleted-dot:#5F574F;
  --ok:#A9D3AC;--warn:#F0A35E;--warn-bg:rgba(240,163,94,.10);--bad:#EE8A76;--bad-bg:rgba(238,138,118,.10);
  --toast-bg:#DCC291;--toast-fg:#1A1612;--overlay:rgba(0,0,0,.6);
  --swipe-bg:#2A2521;--swipe-fg:#F2ECE4;
}
