/* Единая подсказка «i» (см. includes/calc-tip.php и calc-tip.js). */

.cl-tip { display: inline-block; position: relative; vertical-align: middle; line-height: 0; }

.cl-tip-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	margin: 0 0 0 4px;
	padding: 0;
	/* «?», а не «i» (08.10.2026): тот же кружок теперь и у пояснений, ушедших из-под полей */
	font: 700 10px/1 Arial, Helvetica, sans-serif;
	color: #2563eb;
	background: #eff6ff;
	border: 1px solid #93c5fd;
	border-radius: 50%;
	cursor: help;
	vertical-align: middle;
	transition: background-color .12s, border-color .12s, color .12s;
}
.cl-tip-btn:hover,
.cl-tip-btn:focus-visible,
.cl-tip-btn[aria-expanded="true"] {
	color: #fff;
	background: #2563eb;
	border-color: #2563eb;
	outline: none;
}

/* Разметка подсказки лежит рядом с кнопкой (чтобы работала печать и была видна без JS),
   а показывается копией во всплывающем окне — контейнеры калькуляторов почти везде
   overflow:hidden, и обычный абсолютный тултип у края формы обрезался бы. */
.cl-tip-box { display: none; }

.cl-tip-pop {
	position: fixed;
	z-index: 10020;
	display: none;
	max-width: 320px;
	padding: .6rem .7rem;
	background: #fff;
	border: 1px solid #bfdbfe;
	border-radius: .55rem;
	box-shadow: 0 10px 28px rgba(15, 23, 42, .18);
	font-family: Arial, Helvetica, sans-serif;
	line-height: 1.45;
	color: #374151;
	text-align: left;
}
.cl-tip-pop.is-on { display: block; }
.cl-tip-pop .cl-tip-title {
	display: block;
	margin-bottom: .2rem;
	font-size: 13px;
	font-weight: 700;
	color: #1e3a8a;
}
.cl-tip-pop .cl-tip-desc { display: block; font-size: 13px; }
.cl-tip-pop .cl-tip-pic { display: block; text-align: center; margin-bottom: .35rem; }
/* Фото детали (водосток) — прозрачный PNG 220x220, показываем крупно и целиком. */
.cl-tip-pop .cl-tip-pic img { display: inline-block; max-width: 150px; height: auto; }

/* стрелка-хвостик */
.cl-tip-pop::after {
	content: '';
	position: absolute;
	left: var(--cl-tip-arrow, 50%);
	width: 10px;
	height: 10px;
	margin-left: -5px;
	background: #fff;
	border: 1px solid #bfdbfe;
	transform: rotate(45deg);
}
.cl-tip-pop.is-below::after { top: -6px; border-right: 0; border-bottom: 0; }
.cl-tip-pop.is-above::after { bottom: -6px; border-left: 0; border-top: 0; }

@media (max-width: 640px) {
	.cl-tip-pop { max-width: calc(100vw - 24px); }
	.cl-tip-btn { width: 18px; height: 18px; font-size: 11px; }
}

/* На печати подсказки раскрываются текстом сносками — иначе пояснения теряются. */
@media print {
	.cl-tip-pop { display: none !important; }
	.cl-tip-btn { display: none; }
	.cl-tip-box { display: inline; font-size: 11px; color: #6b7280; }
	.cl-tip-box .cl-tip-title { display: none; }
	.cl-tip-box .cl-tip-pic { display: none; }
	.cl-tip-box .cl-tip-desc::before { content: ' — '; }
}

/* Пояснение, перенесённое в кружок (calc-field.js, absorbHints), — исходник
   остаётся в разметке для живого текста, но не показывается. */
.cl-hint-src { display: none !important; }
/* Кружок в заголовке группы (h4 — заглавные буквами, разрядка) — без них. */
h4 .cl-tip-btn { text-transform: none; letter-spacing: 0; }
/* Пояснение, дописанное в уже существующую подсказку, — отдельным абзацем. */
.cl-tip-desc + .cl-tip-desc--hint { display: block; margin-top: 6px; }
