/* Hallmark · system: Extremo cabinet · genre: atmospheric · locked 2026-10-20 · contrast: pass (40–41)
 * Единственный источник цветов, шрифтов и размеров кабинета и админки. Значения сняты с утверждённой главной
 * (mockups/home). Фракция и уровень VIP переключаются атрибутами на <html>: data-faction, data-vip, data-online, data-ban.
 * data-faction можно ставить и на блок: так админка показывает удостоверение игрока в цвете его фракции. */
:root {
  color-scheme: dark;

  /* поверхности */
  --bg: #0b0d12;
  --panel: #12151c;
  --raised: #1a1e27;
  --line: rgba(255, 255, 255, .07);
  --line-strong: rgba(255, 255, 255, .12);

  /* текст */
  --text: #f3f4f6;
  --muted: #a9afbb;
  --faint: #8d939f;
  --white: #ffffff;
  --ink-on-white: #0b0d12;

  /* смысловые цвета: начисление, блокировка */
  --plus: #4fd18b;
  --ban-bg: #2a1215;
  --ban-ink: #ff9a9a;
  --ban-line: #ff5d5d;

  /* уровни VIP: цвет рамки, короны и букв знака VIP */
  --tier-0: rgba(255, 255, 255, .7);
  --tier-1: #d2a982;
  --tier-2: #d9dfe7;
  --tier-3: #f3c766;
  --tier: var(--tier-0);

  /* фракция: по умолчанию гражданский */
  --fc: #8f74ff;
  --fc-deep: #24185a;
  --fc-glow: rgba(124, 92, 255, .55);
  --fc-ink: #cbbcff;

  /* шрифты: на сайте файлы лежат на нашем домене, Google Fonts только в макетах */
  --display: "Montserrat", "Onest", system-ui, sans-serif;
  --body: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: ui-monospace, "Cascadia Mono", Consolas, monospace; /* только строка документа на удостоверении */

  /* стекло меню, лист и полоса на телефоне, подложки знаков, тень карты (сняты с утверждённой главной) */
  --rail-bg: rgba(10, 12, 17, .58);
  --rail-sheet: rgba(10, 12, 17, .97);
  --tabbar-bg: rgba(10, 12, 17, .92);
  --rail-line: rgba(255, 255, 255, .07);
  --white-hover: #e9ebef;
  --shade: rgba(0, 0, 0, .3);
  --shade-soft: rgba(0, 0, 0, .25);
  --shadow-card: 0 0 0 1px rgba(255, 255, 255, .1) inset, 0 30px 60px rgba(0, 0, 0, .5);
  --shadow-float: 0 18px 48px rgba(0, 0, 0, .45);

  /* размеры */
  --wrap: 1120px;
  --side-w: 256px;
  --side-w-mini: 80px;
  --top-h: 68px;
  --r-card: 18px;
  --r-idcard: 22px;
  --r-badge: 8px;
  --r-ctl: 999px;
  --ctl-h: 44px;

  /* движение */
  --ease: cubic-bezier(.22, 1, .36, 1);
  --dur-fast: 150ms;
  --dur-base: 200ms;
}

[data-faction="civ"]                              { --fc: #8f74ff; --fc-deep: #24185a; --fc-glow: rgba(124, 92, 255, .55); --fc-ink: #cbbcff; }
:root[data-faction="pd"], [data-faction="pd"]    { --fc: #22b5f4; --fc-deep: #06304a; --fc-glow: rgba(13, 169, 239, .5); --fc-ink: #a9e3ff; }
:root[data-faction="ems"], [data-faction="ems"]   { --fc: #ff6b6b; --fc-deep: #4a1416; --fc-glow: rgba(255, 93, 93, .5); --fc-ink: #ffc2c2; }
:root[data-faction="rebel"], [data-faction="rebel"] { --fc: #46b35a; --fc-deep: #0f2a15; --fc-glow: rgba(52, 160, 74, .5); --fc-ink: #b9ecc3; }

:root[data-vip="1"] { --tier: var(--tier-1); }
:root[data-vip="2"] { --tier: var(--tier-2); }
:root[data-vip="3"] { --tier: var(--tier-3); }
