/* Ассистент (АССИСТЕНТ.md): плавающее окно плана работы по ТЗ и кнопка-
 * переключатель в верхней полосе. Всё — под `.ас-окно` и `#кнопка-ассистент`:
 * окно скрыто — файл не меняет ни точки.
 *
 * Цвета — из tokens.css; свой только цикламен ассистента (он же у меток на
 * холсте) и три краски авторства: рука, ассистент, модель. */

.ассистент {
  --ас-свой: #c2477a;
  --ас-рука: #2f9d6e;
  --ас-модель: #5b6bbf;
}

/* ── окно ──────────────────────────────────────────────────────────────── */

/* Над пультами (24–34) и плавающими панелями (40), под окошками (60),
 * ⌘K (70), меню (80) и подсказками (90). */
.ас-окно {
  position: fixed; z-index: 45; left: 64px; top: 64px;
  width: 332px; max-height: calc(100vh - 16px);
  display: flex; flex-direction: column; min-height: 0;
  background: var(--фон-плавающей);
  border: 1px solid var(--край-ярче);
  border-radius: var(--радиус-2);
  box-shadow: var(--тень-плавающей);
  color: var(--текст); font-size: var(--кегль); line-height: 1.38;
  overflow: hidden;
}
.ас-окно[hidden] { display: none; }
.ас-окно[data-едет] { box-shadow: var(--тень-плавающей), 0 0 0 1px var(--ас-свой); user-select: none; }
/* Стекло «Мастерской» (17 %) — для пультов с ползунками; в окне ассистента
 * много текста, и над белым холстом он бледнел до нечитаемого (проба
 * 29.09.2026). Стекло то же, но плотнее. */
:root[data-облик="мастерская"] .ас-окно {
  background: color-mix(in srgb, var(--фон-панели-плотный) 78%, transparent);
  backdrop-filter: var(--мст-размытие);
  -webkit-backdrop-filter: var(--мст-размытие);
  border-color: var(--мст-кромка); border-radius: var(--мст-радиус);
  box-shadow: var(--мст-тень), inset 0 1px 0 var(--мст-блик), inset 0 -1px 0 rgba(0, 0, 0, 0.18);
}
/* «Только рисунок» — окна нет; мазок — окно уступает холсту, как пульты. */
:root[data-облик="мастерская"][data-тихо] .ас-окно { display: none; }
:root[data-облик="мастерская"][data-мазок] .ас-окно {
  opacity: 0; pointer-events: none; transition: opacity 90ms var(--кривая);
}

/* Шапка — ручка: за неё окно носят. */
.ас-шапка {
  flex: none; display: flex; align-items: center; gap: 4px;
  height: 32px; padding: 0 4px 0 10px; cursor: grab; touch-action: none;
}
.ас-окно[data-едет] .ас-шапка { cursor: grabbing; }
.ас-знак-окна { display: inline-flex; color: var(--ас-свой); }
.ас-знак-окна svg { width: 16px; height: 16px; }
.ас-имя-окна { flex: 1; font-weight: 650; letter-spacing: 0.01em; }
.ас-облако {
  display: inline-flex; align-items: center; gap: 3px; margin-right: 2px;
  padding: 1px 6px 1px 4px; border-radius: 9px; border: 1px solid var(--край);
  font-size: var(--кегль-мелкий); color: var(--текст-тише); font-variant-numeric: tabular-nums;
}
.ас-облако svg { width: 14px; height: 14px; }

.ас-вкладки { flex: none; margin: 0 8px 6px; }
.ас-вкладка { display: inline-flex; align-items: center; justify-content: center; gap: 4px; min-width: 0; padding: 0 4px; }
.ас-вкладка[data-нельзя] { opacity: 0.42; }
.ас-вкладка-номер { font-size: 10px; opacity: 0.55; font-variant-numeric: tabular-nums; }
.ас-метка {
  font-size: 10px; line-height: 15px; padding: 0 5px; border-radius: 8px;
  background: color-mix(in srgb, var(--текст) 10%, transparent); color: var(--текст-тише);
  font-variant-numeric: tabular-nums; font-weight: 500;
}
.ас-метка-вопрос { background: color-mix(in srgb, var(--внимание) 34%, transparent); color: var(--текст); }

.ас-занят {
  flex: none; margin: 0 8px 6px; padding: 4px 8px; border-radius: var(--радиус-1);
  font-size: var(--кегль-мелкий);
  background: color-mix(in srgb, var(--ас-свой) 20%, transparent);
  border: 1px solid color-mix(in srgb, var(--ас-свой) 45%, transparent);
  animation: ас-дышать 1.6s ease-in-out infinite;
}
.ас-занят[hidden] { display: none; }
@keyframes ас-дышать { 50% { opacity: 0.6; } }
@media (prefers-reduced-motion: reduce) { .ас-занят { animation: none; } }

.ас-тело {
  flex: 1 1 auto; min-height: 0; overflow-y: auto;
  display: flex; flex-direction: column; gap: 8px; padding: 2px 10px 10px;
}

/* Подвал шагов: ‹ дело шага ↺ ✓ Сделал ⤼ › — всегда внизу. */
.ас-подвал {
  flex: none; display: flex; align-items: center; gap: 4px;
  padding: 7px 8px; border-top: 1px solid var(--край);
}
:root[data-облик="мастерская"] .ас-подвал { border-top-color: var(--мст-кромка-тише); }
.ас-подвал[hidden] { display: none; }
/* Стрелки и «пропустить» — узкие: место — главной кнопке. */
.ас-подвал > .ас-значок:not(.ас-сделал) { min-width: 26px; padding: 0 4px; }

/* ── кнопки ────────────────────────────────────────────────────────────── */

.ас-окно .кнопка { height: 28px; }
.ас-значок {
  display: inline-flex; align-items: center; justify-content: center; gap: 4px;
  min-width: 28px; padding: 0 6px; flex: none;
}
.ас-значок svg { width: 16px; height: 16px; flex: none; }
.ас-значок .ас-надпись { font-size: var(--кегль-мелкий); white-space: nowrap; }
.ас-значок.тихая { background: transparent; border-color: transparent; box-shadow: none; }
.ас-значок.тихая:hover:not(:disabled) { background: color-mix(in srgb, var(--текст) 10%, transparent); }
.ас-значок[data-сделано] { color: var(--добро); }
.ас-шапка .ас-значок { height: 26px; min-width: 26px; padding: 0 4px; }

.ас-главная {
  flex: 1 1 auto; min-width: 0;
  display: inline-flex; align-items: center; justify-content: center; gap: 5px; padding: 0 8px;
}
.ас-главная svg { width: 16px; height: 16px; flex: none; }
.ас-главная .ас-надпись { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ас-главная[data-сделано] {
  background: color-mix(in srgb, var(--добро) 24%, transparent); color: var(--текст);
  border-color: color-mix(in srgb, var(--добро) 45%, transparent); box-shadow: none;
}
.ас-сделал svg { color: var(--добро); }
.ас-модельная svg { color: var(--ас-модель); }

/* ── ряды ──────────────────────────────────────────────────────────────── */

.ас-ряд { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.ас-ряд .фишки { flex-wrap: nowrap; }
.ас-ряд-кнопок { justify-content: space-between; }
.ас-подпись {
  font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.05em;
  color: var(--текст-совсем-тихо); min-width: 54px;
}
.ас-значение { font-size: var(--кегль-мелкий); color: var(--текст-тише); }
.ас-тихо { color: var(--текст-тише); font-size: var(--кегль-мелкий); }
.ас-ссылка {
  align-self: flex-start; border: none; background: none; padding: 0; cursor: pointer;
  color: var(--ас-свой); font: inherit; font-size: var(--кегль-мелкий);
}
.ас-ссылка:hover { text-decoration: underline; }

.ас-исток { display: flex; align-items: center; gap: 8px; min-width: 0; }
.ас-кроха {
  width: auto; height: 40px; max-width: 80px; border-radius: 4px; flex: none;
  background: repeating-conic-gradient(#8a8f95 0 25%, #c9ccd0 0 50%) 0 0 / 10px 10px;
  box-shadow: 0 0 0 1px var(--край);
}
.ас-исток-имя { min-width: 0; font-size: var(--кегль-мелкий); }
.ас-исток-имя > div { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ас-тз {
  width: 100%; box-sizing: border-box; min-height: 74px; max-height: 40vh; resize: vertical;
  padding: 7px 8px; font: inherit; line-height: 1.4;
}

/* ── разбор ────────────────────────────────────────────────────────────── */

.ас-понял { display: flex; align-items: flex-start; gap: 6px; }
.ас-понял .ас-подпись { padding-top: 2px; }
.ас-понял-что {
  flex: 1; min-width: 0; cursor: pointer;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.ас-понял-что[data-полностью] { display: block; }
.ас-вопрос {
  display: flex; flex-direction: column; gap: 5px; padding: 7px 8px; border-radius: var(--радиус-1);
  background: color-mix(in srgb, var(--внимание) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--внимание) 35%, transparent);
}
.ас-вопрос-текст { font-weight: 600; }
.ас-варианты { display: flex; flex-wrap: wrap; gap: 4px; }
.ас-вариант {
  border: 1px solid var(--край-ярче); background: color-mix(in srgb, var(--текст) 7%, transparent);
  color: var(--текст); font: inherit; font-size: var(--кегль-мелкий);
  padding: 3px 9px; border-radius: 12px; cursor: pointer; text-align: left;
}
.ас-вариант:hover { border-color: var(--ас-свой); }

.ас-вижу { display: flex; flex-direction: column; gap: 1px; }
.ас-вижу-строка, .ас-приём {
  display: grid; grid-template-columns: 18px 76px 1fr auto; align-items: start; gap: 6px;
  padding: 3px 4px; border-radius: 5px;
}
.ас-вижу-строка[data-рамка] { cursor: pointer; }
.ас-вижу-строка[data-рамка]:hover { background: color-mix(in srgb, var(--ас-свой) 14%, transparent); }
.ас-вижу-знак { display: inline-flex; color: var(--текст-тише); padding-top: 1px; }
.ас-вижу-знак svg { width: 16px; height: 16px; }
.ас-вижу-имя { color: var(--текст-тише); font-size: var(--кегль-мелкий); padding-top: 1px; }
.ас-вижу-что {
  min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ас-приём .кнопка { height: 22px; }
.ас-советы { display: flex; flex-direction: column; gap: 3px; font-size: var(--кегль-мелкий); color: var(--текст-тише); }
.ас-совет { line-height: 1.4; padding-left: 10px; position: relative; }
.ас-совет::before { content: "·"; position: absolute; left: 2px; color: var(--ас-свой); font-weight: 700; }
.ас-советы summary { cursor: pointer; color: var(--текст-тише); padding: 1px 0; }
.ас-советы summary:hover { color: var(--текст); }
.ас-смотрели { font-size: 10.5px; color: var(--текст-совсем-тихо); }
.ас-к-шагам { align-self: flex-end; }

/* ── шаги ──────────────────────────────────────────────────────────────── */

.ас-шаг-верх { display: flex; align-items: baseline; justify-content: space-between; gap: 6px; }
.ас-этап { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--текст-совсем-тихо); }
.ас-счёт { font-size: var(--кегль-мелкий); color: var(--текст-тише); font-variant-numeric: tabular-nums; }

/* Лесенка: весь план одной строкой. */
.ас-лесенка { display: flex; gap: 2px; margin-top: -4px; }
.ас-ступень {
  flex: 1; height: 8px; padding: 0; border: none; border-radius: 3px; cursor: pointer;
  background: color-mix(in srgb, var(--текст) 13%, transparent);
}
.ас-ступень:hover { background: color-mix(in srgb, var(--текст) 26%, transparent); }
.ас-ступень[data-статус="готово"] { background: color-mix(in srgb, var(--добро) 70%, transparent); }
.ас-ступень[data-статус="пропущен"] { background: color-mix(in srgb, var(--текст) 6%, transparent); }
.ас-ступень[data-статус="идёт"] { background: color-mix(in srgb, var(--ас-свой) 45%, transparent); }
.ас-ступень[data-замечания] { background: color-mix(in srgb, var(--внимание) 75%, transparent); }
.ас-ступень[data-нынешний] { box-shadow: 0 0 0 1.5px var(--ас-свой); height: 10px; margin-top: -1px; }

.ас-шаг-имя { display: flex; align-items: flex-start; gap: 6px; font-weight: 620; line-height: 1.3; }
.ас-шаг-имя-текст {
  flex: 1; min-width: 0;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ас-шаг-имя .значок-i { margin-top: 1px; flex: none; }
.ас-знак { width: 14px; text-align: center; color: var(--текст-тише); font-weight: 700; flex: none; }
.ас-шаг-имя[data-статус="готово"] .ас-знак { color: var(--добро); }
.ас-шаг-имя[data-статус="идёт"] .ас-знак { color: var(--ас-свой); }
.ас-шаг-имя[data-статус="замечания"] .ас-знак { color: var(--внимание); }
.ас-подробно {
  display: flex; flex-direction: column; gap: 5px; padding: 7px 8px; border-radius: var(--радиус-1);
  background: color-mix(in srgb, var(--текст) 6%, transparent); font-size: var(--кегль-мелкий);
}
.ас-подробно[hidden] { display: none; }
.ас-зачем { color: var(--текст-тише); }
.ас-ошибки, .ас-приёмчик { color: var(--текст-тише); }
.ас-ошибки b { color: var(--внимание); font-weight: 600; }
.ас-приёмчик { font-style: italic; }
.ас-выручит { color: var(--текст-тише); }
.ас-выручит b { color: var(--ас-свой); font-weight: 600; }
.ас-как { color: var(--текст); }

.ас-чипы { display: flex; flex-wrap: wrap; gap: 4px; }
.ас-чип {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10.5px; padding: 2px 7px; border-radius: 9px; border: 1px solid var(--край);
  background: color-mix(in srgb, var(--текст) 7%, transparent); color: var(--текст-тише);
}
.ас-чип-инструмент { color: var(--текст); }
.ас-чип svg { width: 13px; height: 13px; }

.ас-действия { display: flex; flex-wrap: wrap; gap: 4px; }
.ас-сведение { font-size: var(--кегль-мелкий); color: var(--текст-тише); padding-left: 8px; border-left: 2px solid var(--ас-свой); }

.ас-замечания { display: flex; flex-direction: column; gap: 4px; }
.ас-замечание {
  display: flex; flex-direction: column; gap: 3px; padding: 5px 6px 5px 8px; border-radius: var(--радиус-1);
  border-left: 3px solid var(--беда); background: color-mix(in srgb, var(--беда) 10%, transparent);
}
.ас-замечание[data-важно="внимание"] { border-left-color: var(--внимание); background: color-mix(in srgb, var(--внимание) 10%, transparent); }
.ас-замечание[data-важно="совет"] { border-left-color: var(--текст-тише); background: color-mix(in srgb, var(--текст-тише) 8%, transparent); }
.ас-замечание[data-выбрано] { box-shadow: 0 0 0 1px var(--ас-свой); }
.ас-замечание-строка { display: flex; align-items: flex-start; gap: 6px; }
.ас-замечание-номер { font-weight: 700; font-variant-numeric: tabular-nums; color: var(--текст-тише); min-width: 10px; }
.ас-замечание-что { flex: 1; min-width: 0; font-weight: 560; }
.ас-замечание-кнопки { display: inline-flex; gap: 0; margin: -3px -2px -3px 0; flex: none; }
.ас-замечание-кнопки .ас-значок { height: 24px; min-width: 24px; padding: 0 3px; }
.ас-замечание-кнопки .ас-значок svg { width: 14px; height: 14px; }
.ас-замечание-как { color: var(--текст-тише); font-size: var(--кегль-мелкий); padding-left: 16px; }

.ас-итог {
  display: flex; flex-direction: column; gap: 6px; padding: 8px 9px; border-radius: var(--радиус-2);
  border: 1px solid color-mix(in srgb, var(--добро) 40%, transparent);
}
.ас-итог .ас-значок { align-self: flex-start; }
.ас-доли { display: flex; flex-direction: column; gap: 4px; }
.ас-доли-полоса { display: flex; height: 8px; border-radius: 4px; overflow: hidden; background: color-mix(in srgb, var(--текст) 12%, transparent); }
.ас-доли-полоса > span { display: block; height: 100%; }
.ас-доли-подпись { font-size: var(--кегль-мелкий); color: var(--текст-тише); }

.ас-подложки { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
.ас-подложки canvas { max-width: 232px; max-height: 60vh; border-radius: 6px; box-shadow: 0 0 0 1px var(--край); }

/* Стекло «Мастерской»: кнопки и фишки внутри окна — как у пультов. */
:root[data-облик="мастерская"] .ас-окно .кнопка:not(.главная) {
  background: color-mix(in srgb, var(--текст) 10%, transparent);
  border-color: var(--мст-кромка-тише);
}
:root[data-облик="мастерская"] .ас-окно .кнопка.тихая { background: transparent; border-color: transparent; }
:root[data-облик="мастерская"] .ас-окно .кнопка:hover:not(:disabled):not(.главная) {
  background: color-mix(in srgb, var(--текст) 16%, transparent);
}
:root[data-облик="мастерская"] .ас-окно .фишка { background: color-mix(in srgb, var(--текст) 8%, transparent); border-color: var(--мст-кромка-тише); }
:root[data-облик="мастерская"] .ас-окно .фишка[data-выбрана] { background: var(--акцент); border-color: transparent; color: var(--акцент-текст); }
:root[data-облик="мастерская"] .ас-окно .вкладки-панели { background: color-mix(in srgb, var(--к-0) 45%, transparent); }
:root[data-облик="мастерская"] .ас-окно .вкладка-панели[data-выбрана] { background: color-mix(in srgb, var(--текст) 16%, transparent); }

/* ── кнопка «Ассистент» в верхней полосе ───────────────────────────────── */

#кнопка-ассистент {
  --ас-свой: #c2477a;
  display: inline-flex; align-items: center; gap: 5px;
}
#кнопка-ассистент svg { width: 14px; height: 14px; flex: none; color: var(--ас-свой); }
#кнопка-ассистент[data-включён] {
  background: var(--ас-свой); color: #fff; border-color: transparent;
}
#кнопка-ассистент[data-включён] svg { color: #fff; }
/* В «Мастерской» — первым в рейке режимов, но отдельной капсулой: это не
 * режим, а окно, и включено оно при любом режиме. */
.мст-режимы > #кнопка-ассистент {
  height: 22px; padding: 0 10px 0 8px; margin-right: 6px; border-radius: 8px; position: relative;
  border: 1px solid color-mix(in srgb, var(--ас-свой) 55%, transparent);
  background: color-mix(in srgb, var(--ас-свой) 14%, transparent);
  color: color-mix(in srgb, var(--ас-свой) 78%, var(--текст));
  font: inherit; font-size: var(--кегль-мелкий); font-weight: 560; white-space: nowrap;
}
.мст-режимы > #кнопка-ассистент::after {
  content: ""; position: absolute; right: -5px; top: 3px; bottom: 3px; width: 1px;
  background: var(--мст-кромка);
}
.мст-режимы > #кнопка-ассистент:hover { background: color-mix(in srgb, var(--ас-свой) 28%, transparent); color: var(--текст); }
.мст-режимы > #кнопка-ассистент[data-включён] {
  background: var(--ас-свой); color: #fff; border-color: transparent;
  box-shadow: 0 1px 0 var(--мст-блик-слабый) inset, 0 2px 8px color-mix(in srgb, var(--ас-свой) 45%, transparent);
}

/* ── Ассистент на Столе (АССИСТЕНТ.md §10) ─────────────────────────────── */

/* Стол — слой 55; окно ассистента над ним, под окошками (60). */
:root[data-стол] .ас-окно { z-index: 57; }
/* Плитку или нить несут на окно — окно готово принять. */
.ас-окно[data-принимает] { box-shadow: var(--тень-плавающей), 0 0 0 2px var(--ас-свой); }

/* Порт на плитке: кружок в левом верхнем углу листа — от него тянут нить.
 * Виден, пока окно ассистента открыто (`data-ассистент` у стола). */
.стол-порт {
  --ас-свой: #c2477a;
  position: absolute; left: -8px; top: -8px; z-index: 6; width: 16px; height: 16px; padding: 0;
  border-radius: 50%; border: 2px solid var(--ас-свой); background: var(--к-1);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.45); cursor: crosshair; display: none;
}
.стол[data-ассистент] .стол-порт { display: block; }
.стол-порт:hover { transform: scale(1.25); }
.стол-плитка.к-ассистенту .стол-порт { background: var(--ас-свой); display: block; }
.стол-нить-ас {
  fill: none; stroke: #c2477a; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 7 6; opacity: 0.85;
  animation: стол-течёт 1.3s linear infinite;
}
.стол-нить-тяги-ас path { stroke: #c2477a; }
.стол-ассистент svg { width: 15px; height: 15px; color: #c2477a; }
.стол-ассистент { display: inline-flex; align-items: center; gap: 5px; }
.стол-ассистент[data-включён] { background: #c2477a; color: #fff; }
.стол-ассистент[data-включён] svg { color: #fff; }

/* Файлы на нитях — строка: кроха, имя, роль, ход, «снять». */
.ас-нити { display: flex; flex-direction: column; gap: 3px; }
.ас-файл {
  display: flex; align-items: center; gap: 6px; width: 100%; min-height: 30px; padding: 2px 4px;
  border: 1px solid transparent; border-radius: var(--радиус-1); background: transparent;
  color: var(--текст); font: inherit; text-align: left; cursor: pointer;
}
.ас-файл:hover { background: color-mix(in srgb, var(--текст) 8%, transparent); border-color: var(--край); }
.ас-файл-кроха {
  width: auto; height: 26px; max-width: 34px; border-radius: 3px; flex: none;
  background: repeating-conic-gradient(#8a8f95 0 25%, #c9ccd0 0 50%) 0 0 / 8px 8px;
  box-shadow: 0 0 0 1px var(--край);
}
.ас-файл-имя { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ас-файл-ход { font-size: 10.5px; color: var(--текст-тише); font-variant-numeric: tabular-nums; }
.ас-файл-ход[data-готово] { color: var(--добро); }
.ас-файл .ас-значок { height: 22px; min-width: 22px; }

/* Файл знает стол: блок на «Разборе» и полоса на «Шагах». */
.ас-стол-блок {
  display: flex; flex-direction: column; gap: 5px; padding: 7px 8px; border-radius: var(--радиус-1);
  border: 1px solid color-mix(in srgb, var(--ас-свой) 38%, transparent);
  background: color-mix(in srgb, var(--ас-свой) 8%, transparent);
}
.ас-стол-блок > .ас-значок { align-self: flex-start; }
.ас-стол-текст {
  font-size: var(--кегль-мелкий); color: var(--текст-тише);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ас-стол-полоса { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; margin-bottom: -2px; }
.ас-стол-знак {
  display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; padding: 0;
  border: none; border-radius: 6px; background: color-mix(in srgb, var(--ас-свой) 18%, transparent);
  color: var(--ас-свой); cursor: pointer;
}
.ас-стол-знак svg { width: 14px; height: 14px; }
.ас-стол-фишка {
  height: 22px; padding: 0 7px; border-radius: 11px; border: 1px solid var(--край);
  background: color-mix(in srgb, var(--текст) 6%, transparent); color: var(--текст-тише);
  font: inherit; font-size: 10.5px; cursor: pointer; font-variant-numeric: tabular-nums; white-space: nowrap;
}
.ас-стол-фишка:hover { border-color: var(--ас-свой); color: var(--текст); }
.ас-стол-фишка[data-готово] { color: var(--добро); }
.ас-ждёт { border-left-color: var(--внимание); color: var(--текст); }
