/* Оформление подсветки размера на чертеже — см. includes/calc-hilite.js.
 *
 * Красный взят у конкурента (grandline.ru/roofcalc): там при выборе поля
 * соответствующая линия и подпись на чертеже краснеют. Оттенок НЕ совпадает с
 * красным ошибки ввода (#ef4444, includes/calc-errors.css) — он темнее и
 * насыщеннее, чтобы подсветка не читалась как «поле заполнено неверно».
 * Кроме цвета размер утолщается, а подпись становится жирной: подсветка
 * различима и на чёрно-белой печати, и при дальтонизме.
 *
 * Цвет перебивает атрибуты stroke/fill, которыми размер нарисован в SVG:
 * у presentation-атрибутов приоритет ниже любого правила CSS, поэтому лезть
 * в движки чертежей ради подсветки не нужно.
 */

:root {
	--cl-hot: #d0021b;
}

/* Курсор-палец у размера — и подсказка, что по нему можно кликнуть, и признак
   «живого» элемента для calc-figure.js: по такому клику он не открывает
   просмотрщик на весь экран (isInteractive → GRAB_CURSORS). */
[data-cl-dim] {
	cursor: pointer;
}

/* Тонкая линия сама по себе почти не ловит курсор: у линий и путей включаем
   попадание по обводке, у подписей — по всей площади. */
[data-cl-dim] line,
[data-cl-dim] path,
[data-cl-dim] polyline {
	pointer-events: stroke;
}

[data-cl-dim] text,
[data-cl-dim] rect,
[data-cl-dim] polygon {
	pointer-events: all;
}

/* ---------- собственно подсветка ----------
   Только для экрана: на печати и в PDF ни курсора, ни фокуса нет, а красный
   размер в распечатанном чертеже читался бы как пометка об ошибке. Гасить
   правила в @media print через stroke:inherit нельзя — унаследуется none
   с родительской группы, и размер пропадёт вовсе. */

@media screen {

	[data-cl-dim].cl-hot line,
	[data-cl-dim].cl-hot path,
	[data-cl-dim].cl-hot polyline {
		stroke: var(--cl-hot);
		stroke-width: 1.6;
	}

	/* Подпись: только заливка. Обводку не трогаем — у части чертежей она задаёт
	   подложку цветом холста (paint-order="stroke"), и подпись без неё теряется
	   на залитых гранях. */
	[data-cl-dim].cl-hot text {
		fill: var(--cl-hot);
		font-weight: 700;
	}

	/* Стрелка размера бывает и залитым треугольником (чертежи-порты zhitov,
	   движок Pic): красить её надо заливкой, обводки у неё нет. Деталь чертежа
	   в размерную группу не попадает — внутри только линия, стрелки и подпись. */
	[data-cl-dim].cl-hot polygon {
		fill: var(--cl-hot);
	}

	/* Ярлык поля, к которому относится размер под курсором — обратная связь
	   «эта линия вот отсюда». Важность нужна: у ярлыков стоит класс Tailwind
	   text-gray-600 той же специфичности, а порядок правил у CDN-сборки не задан. */
	.cl-hot-label {
		color: var(--cl-hot) !important;
		font-weight: 600;
	}
}
