/* Сгенерировано из tokens/tokens.json пакетом @kontur/tokens. Правки — в источнике. */
@layer theme, base, components, utilities;
@layer theme.tokens, theme.brand, theme.modes;

@layer theme.tokens {
  :root {
    color-scheme: light dark;
    --canvas: light-dark(#f1f2f4, #141619);
    --surface: light-dark(#ffffff, #1a1c1f);
    --surface-raised: light-dark(#ffffff, #1f2124);
    --fill: light-dark(#ecedee, #25272a);
    --fill-strong: light-dark(#e2e3e4, #2c2e31);
    --border: light-dark(#d8dbdf, #35373a);
    --border-strong: light-dark(#84868a, #717376);
    --text: light-dark(#1c1e21, #e8e9eb);
    --text-muted: light-dark(#4e5053, #bbbec2);
    --text-subtle: light-dark(#626568, #999c9f);
    --on-accent: light-dark(#ffffff, #0c121a);
    --scrim: light-dark(rgb(13 22 24 / 0.45), rgb(0 0 0 / 0.6));
    --danger: light-dark(#ad4c44, #ed968c);
    --danger-strong: light-dark(#93332d, #fdb1a7);
    --danger-subtle: light-dark(#ffebe8, #422521);
    --warning: light-dark(#955e00, #dda562);
    --warning-strong: light-dark(#774a00, #eebd86);
    --warning-subtle: light-dark(#ffedd9, #3c2a13);
    --success: light-dark(#2b7932, #85c387);
    --success-strong: light-dark(#09611a, #a2d7a3);
    --success-subtle: light-dark(#e2f7e2, #1f341f);
    --info: light-dark(#0070a6, #6ebaee);
    --info-strong: light-dark(#005884, #90d0fd);
    --info-subtle: light-dark(#e2f3ff, #163142);
    --accent-brand: light-dark(#586a83, #a2b3c9);
    --accent-brand-strong: light-dark(#42546b, #bac9dc);
    --accent-brand-subtle: light-dark(#e8f1fc, #292e36);
    --accent-directory: light-dark(#626f17, #acb977);
    --accent-directory-strong: light-dark(#4d5800, #c2cf96);
    --accent-directory-subtle: light-dark(#eef4da, #2c301a);
    --accent-tasks: light-dark(#3a6aa7, #8ab4ea);
    --accent-tasks-strong: light-dark(#23538e, #a6caf9);
    --accent-tasks-subtle: light-dark(#e7f1ff, #202f41);
    --accent-messages: light-dark(#00738e, #6bbeda);
    --accent-messages-strong: light-dark(#005a71, #8ed3eb);
    --accent-messages-subtle: light-dark(#dbf5ff, #15323c);
    --accent-efir: light-dark(#a24f61, #e399a6);
    --accent-efir-strong: light-dark(#88384b, #f4b3be);
    --accent-efir-subtle: light-dark(#ffeaed, #3f262a);
    --accent-phone: light-dark(#2a7845, #85c295);
    --accent-phone-strong: light-dark(#07602f, #a2d6af);
    --accent-phone-subtle: light-dark(#e0f7e5, #1f3324);
    --accent-mail: light-dark(#9e562d, #e1a07f);
    --accent-mail-strong: light-dark(#853f13, #f2b99c);
    --accent-mail-subtle: light-dark(#ffece2, #3e281d);
    --accent-reports: light-dark(#82599b, #c4a1db);
    --accent-reports-strong: light-dark(#6b4282, #d8b9ec);
    --accent-reports-subtle: light-dark(#f7ebff, #34283c);
    --accent-disk: light-dark(#826700, #c7af6c);
    --accent-disk-strong: light-dark(#675100, #dbc68d);
    --accent-disk-subtle: light-dark(#f9f0d6, #352d16);
    --accent-wiki: light-dark(#955283, #d79bc5);
    --accent-wiki-strong: light-dark(#7c3b6c, #e9b5d9);
    --accent-wiki-subtle: light-dark(#ffe9f7, #3b2635);
    --accent-agent: light-dark(#6661a8, #aba9e9);
    --accent-agent-strong: light-dark(#504a8f, #c1c1f8);
    --accent-agent-subtle: light-dark(#eeeeff, #2c2b41);
    --font-sans: "Golos Text", "Golos Text Variable", system-ui, -apple-system, "Segoe UI", "Roboto", sans-serif;
    --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", "Menlo", "Consolas", monospace;
    --font-weight-regular: 400;
    --font-weight-medium: 520;
    --font-weight-semibold: 600;
    --font-weight-heading: 620;
    --font-weight-bold: 700;
    --text-display: 2.375rem;
    --text-display--line-height: 1.1579;
    --text-display--font-weight: 620;
    --text-display--letter-spacing: -0.0285rem;
    --text-display--font-family: var(--font-sans);
    --text-h1: 1.75rem;
    --text-h1--line-height: 1.2571;
    --text-h1--font-weight: 620;
    --text-h1--letter-spacing: -0.021rem;
    --text-h1--font-family: var(--font-sans);
    --text-h2: 1.375rem;
    --text-h2--line-height: 1.3455;
    --text-h2--font-weight: 620;
    --text-h2--letter-spacing: -0.0165rem;
    --text-h2--font-family: var(--font-sans);
    --text-h3: 1.125rem;
    --text-h3--line-height: 1.4222;
    --text-h3--font-weight: 620;
    --text-h3--letter-spacing: -0.0135rem;
    --text-h3--font-family: var(--font-sans);
    --text-h4: 0.9375rem;
    --text-h4--line-height: 1.5467;
    --text-h4--font-weight: 600;
    --text-h4--letter-spacing: 0;
    --text-h4--font-family: var(--font-sans);
    --text-body-reading: 0.9375rem;
    --text-body-reading--line-height: 1.5467;
    --text-body-reading--font-weight: 400;
    --text-body-reading--letter-spacing: 0;
    --text-body-reading--font-family: var(--font-sans);
    --text-body: 0.875rem;
    --text-body--line-height: 1.4857;
    --text-body--font-weight: 400;
    --text-body--letter-spacing: 0;
    --text-body--font-family: var(--font-sans);
    --text-body-medium: 0.875rem;
    --text-body-medium--line-height: 1.4857;
    --text-body-medium--font-weight: 520;
    --text-body-medium--letter-spacing: 0;
    --text-body-medium--font-family: var(--font-sans);
    --text-small: 0.8125rem;
    --text-small--line-height: 1.4769;
    --text-small--font-weight: 400;
    --text-small--letter-spacing: 0;
    --text-small--font-family: var(--font-sans);
    --text-label: 0.75rem;
    --text-label--line-height: 1.4667;
    --text-label--font-weight: 520;
    --text-label--letter-spacing: 0.0075rem;
    --text-label--font-family: var(--font-sans);
    --text-caption: 0.75rem;
    --text-caption--line-height: 1.4667;
    --text-caption--font-weight: 400;
    --text-caption--letter-spacing: 0;
    --text-caption--font-family: var(--font-sans);
    --text-counter: 0.6875rem;
    --text-counter--line-height: 1.4545;
    --text-counter--font-weight: 600;
    --text-counter--letter-spacing: 0;
    --text-counter--font-family: var(--font-sans);
    --text-code: 0.8125rem;
    --text-code--line-height: 1.4769;
    --text-code--font-weight: 400;
    --text-code--letter-spacing: 0;
    --text-code--font-family: var(--font-mono);
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 20px;
    --space-6: 24px;
    --space-8: 32px;
    --space-10: 40px;
    --space-12: 48px;
    --space-16: 64px;
    --space-0-5: 2px;
    --space-1-5: 6px;
    --radius-chip: 6px;
    --radius-control: 8px;
    --radius-card: 10px;
    --radius-panel: 14px;
    --radius-full: 9999px;
    --size-control-sm: 32px;
    --size-control-md: 36px;
    --size-control-lg: 44px;
    --size-icon-button-sm: 28px;
    --size-row-compact: 32px;
    --size-row-regular: 40px;
    --size-row-touch: 48px;
    --size-header: 48px;
    --size-sidebar: 240px;
    --size-tab-bar: 56px;
    --size-target-min: 24px;
    --size-icon: 18px;
    --size-icon-sm: 16px;
    --bp-sm: 640px;
    --bp-md: 768px;
    --bp-lg: 1024px;
    --bp-xl: 1280px;
    --duration-instant: 100ms;
    --duration-fast: 150ms;
    --duration-base: 200ms;
    --duration-slow: 300ms;
    --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
    --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
    --opacity-disabled: 0.55;
    --z-sticky: 10;
    --z-header: 30;
    --z-drawer: 40;
    --z-dialog: 50;
    --z-toast: 60;
    --z-tooltip: 70;
    --shadow-raised: 0px 1px 2px 0px light-dark(rgb(13 22 24 / 0.08), rgb(0 0 0 / 0.4)), 0px 1px 1px 0px light-dark(rgb(13 22 24 / 0.04), transparent);
    --shadow-float: 0px 16px 40px -16px light-dark(rgb(13 22 24 / 0.28), rgb(0 0 0 / 0.55)), 0px 2px 6px -2px light-dark(rgb(13 22 24 / 0.28), rgb(0 0 0 / 0.55));
    --shadow-overlay: 0px 24px 64px -12px light-dark(rgb(13 22 24 / 0.36), rgb(0 0 0 / 0.7));
    --module-accent: var(--accent-brand);
    --module-accent-strong: var(--accent-brand-strong);
    --module-accent-subtle: var(--accent-brand-subtle);
    --focus-ring: var(--module-accent);
    --control-h: var(--size-control-md);
    --row-h: var(--size-row-regular);
  }

  [data-theme="light"] {
    color-scheme: light;
  }
  [data-theme="dark"] {
    color-scheme: dark;
  }

  /* Акцент модуля: компоненты знают только --module-accent*. */
  [data-module], [data-module="brand"] {
    --module-accent: var(--accent-brand);
    --module-accent-strong: var(--accent-brand-strong);
    --module-accent-subtle: var(--accent-brand-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="home"], [data-module="catalog"] {
    --module-accent: var(--accent-brand);
    --module-accent-strong: var(--accent-brand-strong);
    --module-accent-subtle: var(--accent-brand-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="directory"] {
    --module-accent: var(--accent-directory);
    --module-accent-strong: var(--accent-directory-strong);
    --module-accent-subtle: var(--accent-directory-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="tasks"] {
    --module-accent: var(--accent-tasks);
    --module-accent-strong: var(--accent-tasks-strong);
    --module-accent-subtle: var(--accent-tasks-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="messages"] {
    --module-accent: var(--accent-messages);
    --module-accent-strong: var(--accent-messages-strong);
    --module-accent-subtle: var(--accent-messages-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="efir"] {
    --module-accent: var(--accent-efir);
    --module-accent-strong: var(--accent-efir-strong);
    --module-accent-subtle: var(--accent-efir-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="phone"] {
    --module-accent: var(--accent-phone);
    --module-accent-strong: var(--accent-phone-strong);
    --module-accent-subtle: var(--accent-phone-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="dialog"], [data-module="mail"] {
    --module-accent: var(--accent-mail);
    --module-accent-strong: var(--accent-mail-strong);
    --module-accent-subtle: var(--accent-mail-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="reports"] {
    --module-accent: var(--accent-reports);
    --module-accent-strong: var(--accent-reports-strong);
    --module-accent-subtle: var(--accent-reports-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="disk"] {
    --module-accent: var(--accent-disk);
    --module-accent-strong: var(--accent-disk-strong);
    --module-accent-subtle: var(--accent-disk-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="wiki"] {
    --module-accent: var(--accent-wiki);
    --module-accent-strong: var(--accent-wiki-strong);
    --module-accent-subtle: var(--accent-wiki-subtle);
    --focus-ring: var(--module-accent);
  }
  [data-module="agent"] {
    --module-accent: var(--accent-agent);
    --module-accent-strong: var(--accent-agent-strong);
    --module-accent-subtle: var(--accent-agent-subtle);
    --focus-ring: var(--module-accent);
  }

  /* Плотность выбирает человек в профиле; на сенсорном экране её заменяет theme.modes. */
  [data-density="regular"] {
    --control-h: var(--size-control-md);
    --row-h: var(--size-row-regular);
  }
  [data-density="compact"] {
    --control-h: var(--size-control-sm);
    --row-h: var(--size-row-compact);
  }

  @supports not (color: light-dark(#000, #fff)) {
    :root, [data-theme="light"] {
      --canvas: #f1f2f4;
      --surface: #ffffff;
      --surface-raised: #ffffff;
      --fill: #ecedee;
      --fill-strong: #e2e3e4;
      --border: #d8dbdf;
      --border-strong: #84868a;
      --text: #1c1e21;
      --text-muted: #4e5053;
      --text-subtle: #626568;
      --on-accent: #ffffff;
      --scrim: rgb(13 22 24 / 0.45);
      --danger: #ad4c44;
      --danger-strong: #93332d;
      --danger-subtle: #ffebe8;
      --warning: #955e00;
      --warning-strong: #774a00;
      --warning-subtle: #ffedd9;
      --success: #2b7932;
      --success-strong: #09611a;
      --success-subtle: #e2f7e2;
      --info: #0070a6;
      --info-strong: #005884;
      --info-subtle: #e2f3ff;
      --accent-brand: #586a83;
      --accent-brand-strong: #42546b;
      --accent-brand-subtle: #e8f1fc;
      --accent-directory: #626f17;
      --accent-directory-strong: #4d5800;
      --accent-directory-subtle: #eef4da;
      --accent-tasks: #3a6aa7;
      --accent-tasks-strong: #23538e;
      --accent-tasks-subtle: #e7f1ff;
      --accent-messages: #00738e;
      --accent-messages-strong: #005a71;
      --accent-messages-subtle: #dbf5ff;
      --accent-efir: #a24f61;
      --accent-efir-strong: #88384b;
      --accent-efir-subtle: #ffeaed;
      --accent-phone: #2a7845;
      --accent-phone-strong: #07602f;
      --accent-phone-subtle: #e0f7e5;
      --accent-mail: #9e562d;
      --accent-mail-strong: #853f13;
      --accent-mail-subtle: #ffece2;
      --accent-reports: #82599b;
      --accent-reports-strong: #6b4282;
      --accent-reports-subtle: #f7ebff;
      --accent-disk: #826700;
      --accent-disk-strong: #675100;
      --accent-disk-subtle: #f9f0d6;
      --accent-wiki: #955283;
      --accent-wiki-strong: #7c3b6c;
      --accent-wiki-subtle: #ffe9f7;
      --accent-agent: #6661a8;
      --accent-agent-strong: #504a8f;
      --accent-agent-subtle: #eeeeff;
    }
    @media (prefers-color-scheme: dark) {
      :root:not([data-theme="light"]) {
        --canvas: #141619;
        --surface: #1a1c1f;
        --surface-raised: #1f2124;
        --fill: #25272a;
        --fill-strong: #2c2e31;
        --border: #35373a;
        --border-strong: #717376;
        --text: #e8e9eb;
        --text-muted: #bbbec2;
        --text-subtle: #999c9f;
        --on-accent: #0c121a;
        --scrim: rgb(0 0 0 / 0.6);
        --danger: #ed968c;
        --danger-strong: #fdb1a7;
        --danger-subtle: #422521;
        --warning: #dda562;
        --warning-strong: #eebd86;
        --warning-subtle: #3c2a13;
        --success: #85c387;
        --success-strong: #a2d7a3;
        --success-subtle: #1f341f;
        --info: #6ebaee;
        --info-strong: #90d0fd;
        --info-subtle: #163142;
        --accent-brand: #a2b3c9;
        --accent-brand-strong: #bac9dc;
        --accent-brand-subtle: #292e36;
        --accent-directory: #acb977;
        --accent-directory-strong: #c2cf96;
        --accent-directory-subtle: #2c301a;
        --accent-tasks: #8ab4ea;
        --accent-tasks-strong: #a6caf9;
        --accent-tasks-subtle: #202f41;
        --accent-messages: #6bbeda;
        --accent-messages-strong: #8ed3eb;
        --accent-messages-subtle: #15323c;
        --accent-efir: #e399a6;
        --accent-efir-strong: #f4b3be;
        --accent-efir-subtle: #3f262a;
        --accent-phone: #85c295;
        --accent-phone-strong: #a2d6af;
        --accent-phone-subtle: #1f3324;
        --accent-mail: #e1a07f;
        --accent-mail-strong: #f2b99c;
        --accent-mail-subtle: #3e281d;
        --accent-reports: #c4a1db;
        --accent-reports-strong: #d8b9ec;
        --accent-reports-subtle: #34283c;
        --accent-disk: #c7af6c;
        --accent-disk-strong: #dbc68d;
        --accent-disk-subtle: #352d16;
        --accent-wiki: #d79bc5;
        --accent-wiki-strong: #e9b5d9;
        --accent-wiki-subtle: #3b2635;
        --accent-agent: #aba9e9;
        --accent-agent-strong: #c1c1f8;
        --accent-agent-subtle: #2c2b41;
      }
    }
    [data-theme="dark"] {
      --canvas: #141619;
      --surface: #1a1c1f;
      --surface-raised: #1f2124;
      --fill: #25272a;
      --fill-strong: #2c2e31;
      --border: #35373a;
      --border-strong: #717376;
      --text: #e8e9eb;
      --text-muted: #bbbec2;
      --text-subtle: #999c9f;
      --on-accent: #0c121a;
      --scrim: rgb(0 0 0 / 0.6);
      --danger: #ed968c;
      --danger-strong: #fdb1a7;
      --danger-subtle: #422521;
      --warning: #dda562;
      --warning-strong: #eebd86;
      --warning-subtle: #3c2a13;
      --success: #85c387;
      --success-strong: #a2d7a3;
      --success-subtle: #1f341f;
      --info: #6ebaee;
      --info-strong: #90d0fd;
      --info-subtle: #163142;
      --accent-brand: #a2b3c9;
      --accent-brand-strong: #bac9dc;
      --accent-brand-subtle: #292e36;
      --accent-directory: #acb977;
      --accent-directory-strong: #c2cf96;
      --accent-directory-subtle: #2c301a;
      --accent-tasks: #8ab4ea;
      --accent-tasks-strong: #a6caf9;
      --accent-tasks-subtle: #202f41;
      --accent-messages: #6bbeda;
      --accent-messages-strong: #8ed3eb;
      --accent-messages-subtle: #15323c;
      --accent-efir: #e399a6;
      --accent-efir-strong: #f4b3be;
      --accent-efir-subtle: #3f262a;
      --accent-phone: #85c295;
      --accent-phone-strong: #a2d6af;
      --accent-phone-subtle: #1f3324;
      --accent-mail: #e1a07f;
      --accent-mail-strong: #f2b99c;
      --accent-mail-subtle: #3e281d;
      --accent-reports: #c4a1db;
      --accent-reports-strong: #d8b9ec;
      --accent-reports-subtle: #34283c;
      --accent-disk: #c7af6c;
      --accent-disk-strong: #dbc68d;
      --accent-disk-subtle: #352d16;
      --accent-wiki: #d79bc5;
      --accent-wiki-strong: #e9b5d9;
      --accent-wiki-subtle: #3b2635;
      --accent-agent: #aba9e9;
      --accent-agent-strong: #c1c1f8;
      --accent-agent-subtle: #2c2b41;
    }
  }
}

@layer theme.modes {
  @media (pointer: coarse) {
    :root, [data-density] {
      --control-h: var(--size-control-lg);
      --row-h: var(--size-row-touch);
    }
  }

  @media (forced-colors: active) {
    :root {
      --canvas: Canvas;
      --surface: Canvas;
      --surface-raised: Canvas;
      --fill: Canvas;
      --fill-strong: Canvas;
      --border: CanvasText;
      --border-strong: CanvasText;
      --text: CanvasText;
      --text-muted: CanvasText;
      --text-subtle: GrayText;
      --on-accent: HighlightText;
      --danger: CanvasText;
      --danger-strong: CanvasText;
      --danger-subtle: Canvas;
      --warning: CanvasText;
      --warning-strong: CanvasText;
      --warning-subtle: Canvas;
      --success: CanvasText;
      --success-strong: CanvasText;
      --success-subtle: Canvas;
      --info: CanvasText;
      --info-strong: CanvasText;
      --info-subtle: Canvas;
      --accent-brand: Highlight;
      --accent-brand-strong: Highlight;
      --accent-brand-subtle: Canvas;
      --accent-directory: Highlight;
      --accent-directory-strong: Highlight;
      --accent-directory-subtle: Canvas;
      --accent-tasks: Highlight;
      --accent-tasks-strong: Highlight;
      --accent-tasks-subtle: Canvas;
      --accent-messages: Highlight;
      --accent-messages-strong: Highlight;
      --accent-messages-subtle: Canvas;
      --accent-efir: Highlight;
      --accent-efir-strong: Highlight;
      --accent-efir-subtle: Canvas;
      --accent-phone: Highlight;
      --accent-phone-strong: Highlight;
      --accent-phone-subtle: Canvas;
      --accent-mail: Highlight;
      --accent-mail-strong: Highlight;
      --accent-mail-subtle: Canvas;
      --accent-reports: Highlight;
      --accent-reports-strong: Highlight;
      --accent-reports-subtle: Canvas;
      --accent-disk: Highlight;
      --accent-disk-strong: Highlight;
      --accent-disk-subtle: Canvas;
      --accent-wiki: Highlight;
      --accent-wiki-strong: Highlight;
      --accent-wiki-subtle: Canvas;
      --accent-agent: Highlight;
      --accent-agent-strong: Highlight;
      --accent-agent-subtle: Canvas;
    }
  }

  /* Усиленный контраст: приглушённые тексты и тонкие линии темнеют. */
  @media (prefers-contrast: more) {
    :root {
      --text-muted: var(--text);
      --text-subtle: var(--text-muted);
      --border: var(--border-strong);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    :root {
      --duration-instant: 0ms;
      --duration-fast: 0ms;
      --duration-base: 0ms;
      --duration-slow: 0ms;
    }
  }
}
