/* ============================================================
   B24 Builder — «Возможности Битрикс24: соберите свою CRM»
   ============================================================ */
#b24-builder { position: relative; z-index: 2; }
#b24-builder .container { position: relative; z-index: 3; }

.b24b-wrap {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 400px;
	gap: 22px;
	align-items: start;
}
.b24b-col { min-width: 0; }
.b24b-col--result { position: sticky; top: 90px; }

.b24b-step {
	background: linear-gradient(160deg, rgba(26,25,52,0.9), rgba(26,25,52,0.55));
	border: 1px solid var(--v2-border);
	border-radius: 18px;
	padding: 18px 18px 20px;
	margin-bottom: 16px;
}
.b24b-step-head {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	margin-bottom: 14px;
}
.b24b-step-num {
	flex: 0 0 30px;
	height: 30px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: rgba(255,94,20,0.14);
	border: 1px solid rgba(255,94,20,0.35);
	color: #ff5e14;
	font-weight: 800;
	font-size: 14px;
}
.b24b-step-titles h3 {
	margin: 0 0 3px;
	font-family: var(--font-heading);
	font-size: 18px;
	font-weight: 700;
	color: #fff;
}
.b24b-step-titles p {
	margin: 0;
	font-size: 13px;
	color: var(--v2-text-muted);
	line-height: 1.45;
}

/* Отрасли */
.b24b-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.b24b-chip {
	cursor: pointer;
	border: 1px solid var(--v2-border);
	background: rgba(255,255,255,0.03);
	border-radius: 14px;
	padding: 10px 14px;
	text-align: left;
	transition: border-color .2s, background .2s, box-shadow .2s;
}
.b24b-chip b { display: block; color: #fff; font-weight: 600; font-size: 14px; line-height: 1.3; }
.b24b-chip small { display: block; color: var(--v2-text-dim); font-size: 12px; margin-top: 2px; }
.b24b-chip:hover { border-color: var(--v2-border-hover); }
.b24b-chip[aria-checked="true"] {
	border-color: rgba(255,94,20,0.6);
	background: linear-gradient(160deg, rgba(255,94,20,0.18), rgba(255,94,20,0.05));
	box-shadow: 0 0 0 1px rgba(255,94,20,0.25), 0 8px 24px -12px rgba(255,94,20,0.45);
}
.b24b-chip[aria-checked="true"] b { color: #ffb58a; }

/* Инструменты */
.b24b-tools {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
	gap: 10px;
	align-items: start;
}
.b24b-tool {
	position: relative;
	border: 1px solid var(--v2-border);
	border-radius: 14px;
	background: rgba(255,255,255,0.02);
	transition: border-color .2s, background .2s, box-shadow .2s;
}
.b24b-tool-check {
	width: 100%;
	display: flex;
	gap: 9px;
	align-items: flex-start;
	padding: 12px 34px 12px 12px;
	background: none;
	border: 0;
	cursor: pointer;
	text-align: left;
}
.b24b-tool-cbox {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin-top: 1px;
	border-radius: 6px;
	border: 1.5px solid rgba(255,255,255,0.25);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #0d0d20;
	transition: background .15s, border-color .15s;
}
.b24b-tool-cbox svg { opacity: 0; transform: scale(.6); transition: opacity .15s, transform .15s; }
.b24b-tool-txt b { display: block; color: #fff; font-weight: 600; font-size: 13px; line-height: 1.3; }
.b24b-tool-txt small { display: block; color: var(--v2-text-dim); font-size: 11.5px; line-height: 1.35; margin-top: 3px; }
.b24b-tool-check:hover .b24b-tool-cbox { border-color: rgba(255,94,20,0.7); }
.b24b-tool-check[aria-pressed="true"] .b24b-tool-cbox {
	background: #ff5e14;
	border-color: #ff5e14;
	box-shadow: 0 0 12px rgba(255,94,20,0.45);
}
.b24b-tool-check[aria-pressed="true"] .b24b-tool-cbox svg { opacity: 1; transform: scale(1); color: #0d0d20; }
.b24b-tool:has(.b24b-tool-check[aria-pressed="true"]) {
	border-color: rgba(255,94,20,0.45);
	background: linear-gradient(160deg, rgba(255,94,20,0.12), rgba(255,255,255,0.02));
}
.b24b-tool-q {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 1px solid var(--v2-border-hover);
	background: rgba(255,255,255,0.04);
	color: rgba(255,255,255,0.7);
	font-size: 12px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: color .2s, border-color .2s, background .2s;
}
.b24b-tool-q:hover, .b24b-tool:has(.b24b-tool-q[aria-expanded="true"]) .b24b-tool-q {
	color: #ffb58a;
	border-color: rgba(255,94,20,0.6);
	background: rgba(255,94,20,0.15);
}
.b24b-tool-desc {
	display: none;
	margin: 0;
	padding: 0 12px 13px;
	color: var(--v2-text-muted);
	font-size: 12.5px;
	line-height: 1.55;
}
.b24b-tool--open { grid-column: 1 / -1; }
.b24b-tool--open .b24b-tool-desc { display: block; }
.b24b-tools-note {
	margin-top: 12px;
	font-size: 13px;
	color: var(--v2-text-dim);
}
.b24b-tools-note b { color: #ffb58a; }

/* Поле текстом */
.b24b-field { display: block; }
.b24b-field textarea {
	width: 100%;
	box-sizing: border-box;
	border-radius: 12px;
	border: 1px solid var(--v2-border);
	background: rgba(255,255,255,0.03);
	color: #fff;
	padding: 12px 14px;
	font-size: 14px;
	line-height: 1.5;
	resize: vertical;
	font-family: inherit;
}
.b24b-field textarea::placeholder { color: rgba(255,255,255,0.3); }
.b24b-field textarea:focus { outline: none; border-color: rgba(255,94,20,0.55); }
.b24b-field-hint {
	display: block;
	margin-top: 7px;
	font-size: 12px;
	color: var(--v2-text-dim);
	line-height: 1.4;
}

/* Кнопки генерации */
.b24b-gen {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin-top: 4px;
}
.b24b-gen .btn { min-width: 250px; justify-content: center; }
.b24b-link {
	background: none;
	border: 0;
	color: var(--v2-text-dim);
	font-size: 13px;
	text-decoration: underline;
	cursor: pointer;
	padding: 6px 0;
}
.b24b-link:hover { color: #ffb58a; }

/* Панель результата */
.b24b-panel {
	position: relative;
	border-radius: 20px;
	padding: 20px;
	background:
		linear-gradient(165deg, rgba(26,25,52,0.95), rgba(13,13,32,0.9)),
		radial-gradient(circle at 85% 0%, rgba(255,94,20,0.16), transparent 55%);
	border: 1px solid rgba(255,94,20,0.22);
	box-shadow: 0 24px 60px -30px rgba(0,0,0,0.7), inset 0 1px 0 rgba(255,255,255,0.04);
}
.b24b-panel::after {
	content: '';
	position: absolute;
	inset: -1px;
	border-radius: 20px;
	padding: 1px;
	background: linear-gradient(140deg, rgba(255,94,20,0.5), transparent 40%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
.b24b-panel-head {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}
.b24b-panel-title {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 17px;
	color: #fff;
}
.b24b-ai-badge {
	font-size: 11.5px;
	font-weight: 600;
	color: #ffb58a;
	border: 1px solid rgba(255,94,20,0.35);
	background: rgba(255,94,20,0.1);
	padding: 4px 9px;
	border-radius: 20px;
	white-space: nowrap;
}
.b24b-summary {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 12px;
}
.b24b-pill {
	font-size: 11.5px;
	color: rgba(255,255,255,0.85);
	background: rgba(255,255,255,0.06);
	border: 1px solid var(--v2-border);
	border-radius: 20px;
	padding: 3px 9px;
}
.b24b-pill--ind {
	color: #ffb58a;
	border-color: rgba(255,94,20,0.4);
	background: rgba(255,94,20,0.12);
}

.b24b-story {
	border-top: 1px solid var(--v2-border);
	padding-top: 4px;
	max-height: 430px;
	overflow: auto;
	scrollbar-width: thin;
}
.b24b-story-body p {
	margin: 10px 0;
	font-size: 13.5px;
	line-height: 1.6;
	color: rgba(255,255,255,0.82);
}
.b24b-t {
	display: inline-block;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 12px;
	font-weight: 700;
	color: #ffb58a;
	margin-right: 4px;
}
.b24b-story-fin {
	color: rgba(255,255,255,0.95);
	border-left: 2px solid #ff5e14;
	padding-left: 10px;
}
.b24b-caret {
	display: inline-block;
	width: 7px;
	height: 14px;
	background: #ff5e14;
	vertical-align: -2px;
	margin-left: 2px;
	animation: b24b-blink 0.9s steps(2, start) infinite;
}
@keyframes b24b-blink { 0%,100% { opacity: 1; } 50% { opacity: 0; } }

.b24b-loading { display: flex; gap: 10px; align-items: center; color: var(--v2-text-muted); font-size: 13.5px; padding: 12px 0; }
.b24b-spinner {
	width: 18px; height: 18px;
	border: 2px solid rgba(255,94,20,0.25);
	border-top-color: #ff5e14;
	border-radius: 50%;
	animation: b24b-spin 0.8s linear infinite;
}
@keyframes b24b-spin { to { transform: rotate(360deg); } }

.b24b-actions { margin-top: 14px; }
.b24b-cta { width: 100%; justify-content: center; }
.b24b-cta-note { display: block; margin-top: 9px; font-size: 12px; color: var(--v2-text-dim); line-height: 1.45; }
.b24b-err {
	margin-top: 10px;
	font-size: 13px;
	color: #ff9c6e;
	background: rgba(255,94,20,0.08);
	border: 1px solid rgba(255,94,20,0.25);
	border-radius: 10px;
	padding: 9px 12px;
}

/* Адаптив */
@media (max-width: 1180px) {
	.b24b-wrap { grid-template-columns: minmax(0, 1fr) 360px; }
}
@media (max-width: 1020px) {
	.b24b-wrap { grid-template-columns: 1fr; }
	.b24b-col--result { position: static; }
}
@media (max-width: 560px) {
	.b24b-tools { grid-template-columns: 1fr 1fr; }
	.b24b-step { padding: 14px; }
}
@media (max-width: 400px) {
	.b24b-tools { grid-template-columns: 1fr; }
}

/* Доступность */
.b24b-tool-check:focus-visible, .b24b-tool-q:focus-visible, .b24b-chip:focus-visible,
.b24b-link:focus-visible, .b24b-field textarea:focus-visible {
	outline: 2px solid #ff5e14;
	outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
	.b24b-spinner, .b24b-caret { animation: none; }
}

/* ============ Компактный режим (v1.0.2) ============ */
#b24-builder.section { padding: 40px 0 52px; }
#b24-builder .website-v2-services-header { margin-bottom: 24px; }
#b24-builder .website-v2-services-title { font-size: 30px; margin-bottom: 8px; }
/* lead uses global .b24-lead size */

.b24b-step { padding: 12px 14px 14px; margin-bottom: 10px; border-radius: 14px; }
.b24b-step-head { margin-bottom: 10px; gap: 10px; }
.b24b-step-num { flex: 0 0 24px; width: 24px; height: 24px; border-radius: 7px; font-size: 12px; }
.b24b-step-titles h3 { font-size: 15px; margin-bottom: 2px; }
.b24b-step-titles p { font-size: 12px; line-height: 1.4; }

.b24b-chips { gap: 8px; }
.b24b-chip { padding: 7px 11px; border-radius: 11px; }
.b24b-chip b { font-size: 13px; }
.b24b-chip small { font-size: 11px; margin-top: 1px; }

.b24b-tools { gap: 7px; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.b24b-tool { border-radius: 10px; }
.b24b-tool-check { padding: 7px 26px 7px 9px; gap: 7px; align-items: center; }
.b24b-tool-cbox { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 0; border-radius: 5px; }
.b24b-tool-txt b { font-size: 12px; line-height: 1.25; }
.b24b-tool-txt small { display: none; } /* подписи скрыты — они остаются в «?»-описании (SEO-текст в DOM) */
.b24b-tool-q { top: 5px; right: 5px; width: 18px; height: 18px; font-size: 11px; }
.b24b-tool-desc { font-size: 12px; line-height: 1.5; padding: 0 12px 10px; }
.b24b-tools-note { margin-top: 8px; font-size: 12px; }

.b24b-field textarea { padding: 9px 12px; font-size: 13.5px; border-radius: 10px; }
.b24b-field-hint { font-size: 11px; margin-top: 5px; }

.b24b-gen { gap: 10px; margin-top: 2px; }
.b24b-gen .btn { min-width: 230px; }
.b24b-link { font-size: 12px; }

.b24b-panel { padding: 14px 15px 15px; border-radius: 16px; }
.b24b-panel-head { margin-bottom: 8px; }
.b24b-panel-title { font-size: 15px; }
.b24b-summary { gap: 5px; margin-bottom: 8px; }
.b24b-pill { font-size: 10.5px; padding: 2px 8px; }
.b24b-story { max-height: 290px; }
.b24b-story-body p, .b24b-scene { margin: 7px 0; font-size: 12.5px; line-height: 1.55; }
.b24b-actions { margin-top: 10px; }
.b24b-cta-note { font-size: 11px; margin-top: 6px; }
.b24b-err { font-size: 12px; padding: 7px 10px; margin-top: 8px; }

.b24b-col--result { position: sticky; top: 78px; max-height: calc(100vh - 110px); overflow: auto; }

@media (max-width: 1020px) {
	.b24b-col--result { position: static; max-height: none; overflow: visible; }
}
@media (max-width: 560px) {
	.b24b-tools { grid-template-columns: 1fr 1fr; }
	.b24b-step-titles p { display: none; }
}

/* ============ Свёрнутый список инструментов + тулбар (v1.0.3) ============ */
#b24b-step2 .b24b-tools,
#b24b-step2 .b24b-tools-note { display: none; }
#b24b-step2.b24b-open .b24b-tools { display: grid; }
#b24b-step2.b24b-open .b24b-tools-note { display: block; }

.b24b-toolsbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	border: 1px dashed rgba(255, 255, 255, 0.16);
	border-radius: 10px;
	padding: 7px 12px;
	background: rgba(255, 255, 255, 0.02);
}
.b24b-toolsbar-info { font-size: 12.5px; color: var(--v2-text-muted); line-height: 1.4; }
.b24b-toolsbar-info b { color: #ffb58a; font-weight: 700; }
.b24b-toolsbar .b24b-link { padding: 0; white-space: nowrap; }
@media (max-width: 480px) {
	.b24b-toolsbar { flex-direction: column; align-items: flex-start; gap: 4px; }
}
/* ============ Экстра-компакт (v1.0.4) ============ */
#b24-builder.section { padding: 22px 0 38px; }
#b24-builder .website-v2-services-header { margin-bottom: 14px; }
#b24-builder .website-v2-services-title { font-size: 24px; margin-bottom: 6px; }


.b24b-step { padding: 10px 12px 12px; margin-bottom: 8px; }
.b24b-step-titles p { display: none; } /* компактно; пояснения — в подсказках и лиде */
.b24b-step-head { margin-bottom: 8px; }

.b24b-chips { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.b24b-chip { text-align: center; padding: 8px 6px; border-radius: 10px; }
.b24b-chip b { font-size: 12.5px; line-height: 1.25; }
.b24b-chip small { display: none; }

#b24b-step2 .b24b-toolsbar { margin-bottom: 0; padding: 6px 10px; }
.b24b-gen { margin-top: 0; }

.b24b-panel { padding: 12px 13px 13px; }
.b24b-story { max-height: 240px; }
.b24b-story-body p, .b24b-scene { margin: 6px 0; font-size: 12px; }
.b24b-ai-badge { font-size: 10.5px; padding: 3px 8px; }

@media (max-width: 900px) {
	.b24b-chips { grid-template-columns: repeat(2, 1fr); }
}
/* ============ История скрыта до клика (v1.0.5) ============ */
.b24b-story { display: none; }
.b24b-panel.is-story-open .b24b-story { display: block; }
.b24b-story-tools { margin: 2px 0 4px; text-align: center; }
.b24b-story-tools .b24b-link { color: #ffb58a; }
/* ============ v1.1.0: селекты + модалки (шиты) + светлая история ============ */

/* Выпадающие списки */
.b24b-sel-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
@media (max-width: 560px) { .b24b-sel-grid { grid-template-columns: 1fr; } }
.b24b-sel { display: flex; flex-direction: column; gap: 5px; }
.b24b-sel-lbl { font-size: 12px; color: var(--v2-text-dim); }
.b24b-select {
	width: 100%;
	appearance: auto;
	box-sizing: border-box;
	border-radius: 10px;
	border: 1px solid var(--v2-border);
	background: rgba(255,255,255,0.05);
	color: #fff;
	padding: 8px 10px;
	font-size: 13.5px;
	font-family: inherit;
	cursor: pointer;
}
.b24b-select option, .b24b-select optgroup { background: #141330; color: #fff; }
.b24b-select:focus { outline: none; border-color: rgba(255,94,20,0.55); }

/* Кнопка открытия выбора инструментов */
#b24b-tools-open { padding: 8px 14px; font-size: 13px; white-space: nowrap; }

/* Модалки-шиты */
.b24b-sheet {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 1000;
	background: rgba(5, 5, 18, 0.72);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	padding: 5vh 16px 5vh;
	overflow: auto;
}
.b24b-sheet.is-open { display: flex; align-items: flex-start; justify-content: center; }
.b24b-sheet-card {
	position: relative;
	width: min(100%, 860px);
	max-height: 88vh;
	display: flex;
	flex-direction: column;
	background:
		linear-gradient(165deg, rgba(30,29,60,0.98), rgba(16,16,38,0.98)),
		radial-gradient(circle at 90% 0%, rgba(255,94,20,0.16), transparent 55%);
	border: 1px solid rgba(255,94,20,0.3);
	border-radius: 18px;
	box-shadow: 0 30px 80px -20px rgba(0,0,0,0.8);
}
.b24b-sheet-card::before {
	content: '';
	position: absolute;
	inset: -1px;
	border-radius: 18px;
	padding: 1px;
	background: linear-gradient(140deg, rgba(255,94,20,0.45), transparent 40%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
.b24b-sheet-head {
	display: flex;
	justify-content: space-between;
	gap: 14px;
	align-items: flex-start;
	padding: 16px 18px 10px;
}
.b24b-sheet-head h3 { margin: 0 0 4px; font-size: 18px; color: #fff; font-family: var(--font-heading); }
.b24b-sheet-head p { margin: 0; font-size: 12.5px; color: var(--v2-text-muted); }
.b24b-sheet-close {
	flex: 0 0 32px;
	width: 32px; height: 32px;
	border-radius: 10px;
	border: 1px solid var(--v2-border);
	background: rgba(255,255,255,0.05);
	color: rgba(255,255,255,0.8);
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
}
.b24b-sheet-close:hover { color: #ffb58a; border-color: rgba(255,94,20,0.5); }
.b24b-sheet-body { padding: 4px 18px 14px; overflow: auto; }
.b24b-sheet-foot {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	padding: 12px 18px 16px;
	border-top: 1px solid var(--v2-border);
}
.b24b-sheet-foot .b24b-cta { margin: 0; }

/* Светлый текст истории в модалке */
.b24b-sheet .b24b-story { display: block; max-height: none; overflow: visible; padding: 4px 2px 6px; }
.b24b-story p, .b24b-scene {
	color: rgba(255, 255, 255, 0.92);
	font-size: 14px;
	line-height: 1.65;
	margin: 10px 0;
}
.b24b-sheet .b24b-t { color: #ffb58a; }
.b24b-story-fin { color: #fff; border-left: 2px solid #ff5e14; padding-left: 10px; }

/* Статус-строка и кнопка чтения */
.b24b-status { min-height: 18px; margin: 6px 0 4px; font-size: 13px; }
.b24b-status .b24b-loading { padding: 2px 0 6px; color: var(--v2-text-muted); font-size: 13px; }
.b24b-err { color: #ffcfb8; }
.b24b-story-open { color: #ffb58a; font-size: 13px; text-decoration: underline; cursor: pointer; }
.b24b-actions { display: flex; flex-direction: column; gap: 8px; }

body.b24b-lock { overflow: hidden; }
/* ============ v1.2.0: тултипы, вкладки, воронка, скролл и шапка ============ */

/* Модалки не прячутся под липкой шапкой и ниже от верха */
html.b24b-lock, body.b24b-lock { overflow: hidden; }
.b24b-sheet {
	z-index: 10000;
	padding: 96px 16px 48px;
	overscroll-behavior: contain;
}
.b24b-sheet-card { max-height: calc(100vh - 160px); }

/* Описание инструмента всегда скрыто в потоке — показывается тултипом */
.b24b-tool-desc { display: none !important; }
.b24b-tool--open { grid-column: auto !important; }

/* Тултип при наведении */
#b24b-tooltip {
	position: fixed;
	z-index: 12000;
	pointer-events: none;
	max-width: 360px;
	background: linear-gradient(165deg, rgba(26,25,52,0.98), rgba(13,13,32,0.98));
	border: 1px solid rgba(255, 94, 20, 0.5);
	border-radius: 12px;
	padding: 10px 13px;
	font-size: 12.5px;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.92);
	box-shadow: 0 16px 40px -12px rgba(0, 0, 0, 0.75);
	opacity: 0;
	transform: translateY(4px);
	transition: opacity 0.12s ease, transform 0.12s ease;
}
#b24b-tooltip.is-visible { opacity: 1; transform: none; }

/* Вкладки в модалке истории */
.b24b-tabs {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}
.b24b-tab {
	font-size: 13px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.65);
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--v2-border);
	border-radius: 10px;
	padding: 7px 13px;
	cursor: pointer;
	font-family: inherit;
}
.b24b-tab:hover { color: #ffb58a; }
.b24b-tab.is-active {
	color: #0d0d20;
	background: #ff5e14;
	border-color: #ff5e14;
	font-weight: 700;
}
.b24b-tab[hidden] { display: none; }
.b24b-pane[hidden] { display: none; }

/* Примерная воронка */
.b24b-funnel-note {
	background: rgba(255, 94, 20, 0.08);
	border: 1px solid rgba(255, 94, 20, 0.25);
	border-radius: 12px;
	padding: 10px 13px;
	font-size: 12.5px;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.85);
	margin-bottom: 14px;
}
.b24b-funnel-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}
.b24b-funnel-col {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--v2-border);
	border-radius: 12px;
	padding: 12px 14px;
}
.b24b-funnel-col h4 {
	margin: 0 0 8px;
	font-size: 13px;
	color: #ffb58a;
	font-family: var(--font-heading);
}
.b24b-funnel-col ul { margin: 0; padding: 0; list-style: none; }
.b24b-funnel-col li {
	position: relative;
	padding: 4px 0 4px 16px;
	font-size: 12.5px;
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.4;
}
.b24b-funnel-col li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 11px;
	width: 7px;
	height: 7px;
	background: #ff5e14;
	border-radius: 2px;
	transform: rotate(45deg);
}
@media (max-width: 760px) {
	.b24b-funnel-grid { grid-template-columns: 1fr; }
	.b24b-sheet { padding: 84px 12px 32px; }
}
/* ============ v1.2.1: дисклеймер ИИ ============ */
.b24b-ai-note {
	margin: 6px 0 0;
	font-size: 11.5px;
	line-height: 1.5;
	color: var(--v2-text-dim);
}
/* ============ v1.2.2: заголовок как у секций, выделение ИИ, скролл ============ */
#b24-builder .website-v2-services-title {
	font-size: 38px;
	line-height: 1.18;
	margin-bottom: 12px;
}
.b24-lead b { color: #ffb58a; }
.b24b-sheet-body { overscroll-behavior: contain; }
@media (max-width: 640px) {
	#b24-builder .website-v2-services-title { font-size: 28px; }
}
/* ============ v1.2.3: усиленный scroll-lock ============ */
html.b24b-lock, body.b24b-lock {
	overflow: hidden !important;
	height: 100%;
	overscroll-behavior: none !important;
}

/* ============ v1.3.0: правая панель — состояния; светлый статус; динамическая воронка ============ */
.b24b-status { color: var(--v2-text-muted); }
.b24b-status .b24b-loading-text { color: inherit; }

.b24b-idle { margin-top: 4px; }
.b24b-idle-title {
	font-size: 13px;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.92);
	background: rgba(255, 255, 255, 0.03);
	border: 1px dashed rgba(255, 255, 255, 0.18);
	border-radius: 12px;
	padding: 10px 12px;
}
.b24b-idle-list { margin: 10px 0 2px; padding: 0; list-style: none; }
.b24b-idle-list li {
	position: relative;
	padding: 3px 0 3px 18px;
	font-size: 12.5px;
	line-height: 1.45;
	color: var(--v2-text-muted);
}
.b24b-idle-list li::before {
	content: '✓';
	position: absolute;
	left: 0;
	top: 2px;
	color: #ff5e14;
	font-size: 12px;
	font-weight: 800;
}
.b24b-idle[hidden], .b24b-result[hidden] { display: none !important; }

.b24b-result { margin-top: 4px; }
.b24b-result-label {
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	padding: 9px 12px;
	border-radius: 12px;
	background: linear-gradient(160deg, rgba(255, 94, 20, 0.18), rgba(255, 255, 255, 0.03));
	border: 1px solid rgba(255, 94, 20, 0.35);
}
.b24b-result-links {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 10px 2px 4px;
}
.b24b-result-links .b24b-link {
	color: #ffb58a;
	text-decoration: underline;
	font-size: 13.5px;
	text-align: left;
	padding: 5px 0;
}
.b24b-result-links .b24b-link:hover { color: #fff; }
.b24b-result-note {
	margin-top: 6px;
	font-size: 11.5px;
	line-height: 1.5;
	color: var(--v2-text-dim);
}

/* Динамическая воронка — количество колонок зависит от выбора инструментов */
.b24b-funnel-grid {
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.b24b-funnel-empty {
	color: var(--v2-text-muted);
	font-size: 12.5px;
}

/* Футер модалки истории без большой CTA — пояснение */
.b24b-sheet-foot--info { justify-content: center; text-align: center; }
.b24b-sheet-foot--info .b24b-cta-note { margin: 0; max-width: 600px; }

/* ============ v1.3.1: CTA «Оставить заявку» на базе ИИ-анализа ============ */
.b24b-result-cta { margin: 10px 0 4px; }
.b24b-result-cta .btn { width: 100%; justify-content: center; }
.b24b-result-cta-hint {
	display: block;
	margin-top: 7px;
	font-size: 11.5px;
	line-height: 1.45;
	color: var(--v2-text-dim);
}
.b24b-sheet-foot--lead {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}
.b24b-sheet-foot--lead .b24b-cta-note {
	margin: 0;
	flex: 1 1 260px;
	max-width: 640px;
	font-size: 12px;
	color: var(--v2-text-dim);
	line-height: 1.45;
	text-align: left;
}
.b24b-sheet-foot--lead .btn { margin: 0; flex: 0 0 auto; }

/* ============ v1.4.0: форма заявки прямо в модалке истории ============ */
.b24b-sheet-foot--lead {
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	gap: 0;
}
.b24b-sheet-foot--lead .b24b-lead {
	flex: 0 0 auto;
	width: 100%;
}
.b24b-sheet-foot--lead .b24b-cta-note { text-align: left; }
.b24b-lead {
	border-top: 1px solid rgba(255, 94, 20, 0.25);
	padding-top: 10px;
}
.b24b-lead-title {
	margin: 0 0 4px;
	font-size: 15px;
	color: #fff;
	font-family: var(--font-heading);
	font-weight: 700;
}
.b24b-lead-note {
	margin: 0 0 10px;
	font-size: 12px;
	line-height: 1.5;
	color: var(--v2-text-muted);
}
.b24b-lead-slot {
	width: 100%;
	max-width: 680px;
	margin: 0 auto;
}
.b24b-lead-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.b24b-lead-form .form-checkboxes { margin-top: 6px; }
.b24b-lead-form .btn { width: 100%; margin-top: 8px; justify-content: center; }
.b24b-lead-comment { display: none; }
@media (max-width: 640px) {
	.b24b-lead-grid { grid-template-columns: 1fr; }
}

/* ============ v1.4.1: модалка истории — две колонки (слева контент, справа форма) ============ */
.b24b-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 330px;
	gap: 16px;
	align-items: start;
}
.b24b-layout-main { min-width: 0; }
.b24b-layout-side { position: sticky; top: 0; }
.b24b-layout-side .b24b-lead { border: 0; padding-top: 0; }
.b24b-layout-side .b24b-lead-title {
	font-size: 17px;
	margin-bottom: 6px;
	color: #fff;
}
.b24b-layout-side .b24b-lead-note {
	font-size: 12px;
	margin-bottom: 10px;
	color: var(--v2-text-muted);
}
.b24b-lead-slot { max-width: none; }
.b24b-layout-side .b24b-lead-form { display: block; }
.b24b-layout-side .b24b-lead-form .form-group { margin-bottom: 10px; }
.b24b-layout-side .b24b-lead-form .form-label { font-size: 12px; }
.b24b-layout-side .b24b-lead-form .form-checkboxes { margin-top: 2px; }
.b24b-layout-side .b24b-lead-form .btn {
	width: 100%;
	margin-top: 6px;
	justify-content: center;
	font-size: 14px;
	padding-top: 10px;
	padding-bottom: 10px;
}
@media (max-width: 980px) {
	.b24b-layout { grid-template-columns: 1fr; }
	.b24b-layout-side { position: static; }
}

/* ============ v1.4.2: конверсионная карточка заявки (выделение на фоне модалки) ============ */
.b24b-layout-side .b24b-lead {
	border: 1px solid rgba(255, 94, 20, 0.4);
	border-radius: 18px;
	padding: 14px 14px 12px;
	background:
		linear-gradient(165deg, rgba(255, 94, 20, 0.16), rgba(20, 19, 47, 0.97) 55%),
		radial-gradient(circle at 12% 0%, rgba(255, 94, 20, 0.38), transparent 62%);
	box-shadow: 0 20px 46px -18px rgba(0, 0, 0, 0.85);
	position: relative;
	overflow: hidden;
}
.b24b-lead-badge {
	display: inline-block;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #0d0d20;
	background: linear-gradient(90deg, #ff8a4c, #ff5e14);
	border-radius: 999px;
	padding: 4px 9px;
	margin-bottom: 9px;
}
.b24b-layout-side .b24b-lead-title {
	font-size: 17px;
	line-height: 1.3;
	margin: 0 0 6px;
	color: #fff;
}
.b24b-layout-side .b24b-lead-note {
	font-size: 12px;
	line-height: 1.5;
	margin: 0 0 9px;
	color: rgba(255, 255, 255, 0.72);
}
.b24b-lead-benefits {
	list-style: none;
	margin: 0 0 10px;
	padding: 0;
}
.b24b-lead-benefits li {
	position: relative;
	padding: 3px 0 3px 20px;
	font-size: 12px;
	line-height: 1.4;
	color: rgba(255, 255, 255, 0.92);
}
.b24b-lead-benefits li::before {
	content: '✓';
	position: absolute;
	left: 0;
	top: 3px;
	color: #ff5e14;
	font-weight: 800;
}
.b24b-layout-side .b24b-lead-slot { margin: 0; }
.b24b-lead-trust {
	margin-top: 8px;
	font-size: 10.5px;
	line-height: 1.45;
	color: var(--v2-text-dim);
}
.b24b-layout-side .b24b-lead-form .form-group { margin-bottom: 8px; }
.b24b-layout-side .b24b-lead-form .btn { margin-top: 4px; }

/* фолбэк-цвет карточки (поверх градиентов) */
.b24b-layout-side .b24b-lead { background-color: #17152f; }

/* ============ v1.4.3: скролл внутри левой колонки + аккуратные согласия ============ */
.b24b-sheet-body {
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.b24b-layout {
	flex: 1 1 auto;
	min-height: 0;
	height: 100%;
	grid-template-rows: minmax(0, 1fr);
	align-items: stretch;
}
.b24b-layout-main,
.b24b-layout-side {
	overflow-y: auto;
	min-height: 0;
}
.b24b-layout-side { position: static; align-self: start; }
.b24b-layout-side .b24b-lead { position: sticky; top: 0; }

/* стилизованный скроллбар */
.b24b-layout-main {
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 94, 20, 0.55) rgba(255, 255, 255, 0.05);
}
.b24b-layout-main::-webkit-scrollbar { width: 8px; }
.b24b-layout-main::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.04);
	border-radius: 8px;
}
.b24b-layout-main::-webkit-scrollbar-thumb {
	background: rgba(255, 94, 20, 0.55);
	border-radius: 8px;
}
.b24b-layout-main::-webkit-scrollbar-thumb:hover { background: #ff5e14; }
.b24b-layout-main::-webkit-scrollbar-corner { background: transparent; }

/* согласия без разрывов «на / обработку» и «условия / Пользовательского» */
.b24b-layout-side .b24b-lead-form .form-checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: 7px;
	line-height: 1.35;
}
.b24b-layout-side .b24b-lead-form .form-checkbox-label input {
	margin-top: 1px;
	flex: 0 0 auto;
}

@media (max-width: 980px) {
	.b24b-sheet-body { overflow: auto; display: block; }
	.b24b-layout { height: auto; grid-template-rows: auto; }
	.b24b-layout-main,
	.b24b-layout-side { overflow: visible; min-height: 0; }
	.b24b-layout-side .b24b-lead { position: static; }
}

/* v1.4.4: согласия строго одной строкой */
.b24b-layout-side .b24b-lead-form .form-checkbox-label {
	flex-wrap: nowrap;
}
.b24b-layout-side .b24b-lead-form .form-checkbox-text {
	display: inline;
	white-space: nowrap;
}

/* v1.4.5: чекбоксы — нормальный перенос вместо обрыва */
.b24b-layout-side .b24b-lead-form .form-checkbox-label {
	font-size: 11px;
}
.b24b-layout-side .b24b-lead-form .form-checkbox-text {
	display: inline;
	white-space: normal;
	min-width: 0;
	flex: 0 1 auto;
}
.b24b-layout-side .b24b-lead-form .form-checkbox-label a {
	white-space: normal;
}

/* v1.4.6: метки формы в карточке заявки — белые */
.b24b-layout-side .b24b-lead-form .form-label {
	color: #ffffff;
}

/* v1.5.0: кнопка скачивания PDF */
.b24b-layout-side .b24b-pdf-open {
	display: block;
	width: 100%;
	margin: 8px 0 0;
	padding: 9px 12px;
	border: 1px solid rgba(255, 94, 20, 0.35);
	background: rgba(255, 94, 20, 0.07);
	color: #ffb58a;
	border-radius: 10px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transition: background .2s, color .2s, border-color .2s;
}
.b24b-layout-side .b24b-pdf-open:hover {
	background: rgba(255, 94, 20, 0.16);
	color: #ffffff;
	border-color: rgba(255, 94, 20, 0.6);
}

/* v1.5.2: числовое поле «сколько сотрудников» */
.b24b-size-input { -moz-appearance: textfield; appearance: textfield; }
.b24b-size-input::-webkit-outer-spin-button,
.b24b-size-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
