/**
 * Цветные блоки статей (стили блоков Gutenberg из blocks.php).
 * Грузится на сайте и в редакторе (add_editor_style), поэтому селекторы без .entry-content.
 * Цвета - токены сайта (site/site.css): --accent, --accent2, --accent3, --cream, --ink, --line.
 */

/* ---------- Плашки (блок «Группа») ---------- */
.is-style-dt-note,
.is-style-dt-important,
.is-style-dt-tip,
.is-style-dt-example,
.is-style-dt-summary {
	position: relative;
	margin: 1.8em 0;
	padding: 18px 22px 18px 60px;
	border-radius: var(--radius-sm, 12px);
	font-size: 1.02rem;
}
.is-style-dt-note > :first-child,
.is-style-dt-important > :first-child,
.is-style-dt-tip > :first-child,
.is-style-dt-example > :first-child,
.is-style-dt-summary > :first-child { margin-top: 0; }
.is-style-dt-note > :last-child,
.is-style-dt-important > :last-child,
.is-style-dt-tip > :last-child,
.is-style-dt-example > :last-child,
.is-style-dt-summary > :last-child { margin-bottom: 0; }

/* иконка слева */
.is-style-dt-note::before,
.is-style-dt-important::before,
.is-style-dt-tip::before,
.is-style-dt-example::before,
.is-style-dt-summary::before {
	content: ""; position: absolute; left: 20px; top: 20px; width: 24px; height: 24px;
	-webkit-mask: var(--dt-ico) center / contain no-repeat; mask: var(--dt-ico) center / contain no-repeat;
	background: currentColor;
}

/* Заметка: спокойная, бирюза */
.is-style-dt-note {
	background: var(--cream, #f1f6f8);
	border-left: 4px solid var(--accent, #127a8a);
	--dt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 7.5v.5'/%3E%3C/svg%3E");
}
.is-style-dt-note::before { color: var(--accent, #127a8a); }

/* Важно: закатный */
.is-style-dt-important {
	background: #fdf1ec;
	background: color-mix(in srgb, var(--accent3, #f28b6c) 13%, #fff);
	border-left: 4px solid var(--accent3-dk, #e4704e);
	--dt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.3 3.9 2.4 17.6A2 2 0 0 0 4.1 20.6h15.8a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0z'/%3E%3Cpath d='M12 9.5v4M12 17v.5'/%3E%3C/svg%3E");
}
.is-style-dt-important::before { color: var(--accent3-dk, #e4704e); }

/* Совет: папоротник */
.is-style-dt-tip {
	background: #ebf6f0;
	background: color-mix(in srgb, var(--accent2, #2e9a6b) 11%, #fff);
	border-left: 4px solid var(--accent2, #2e9a6b);
	--dt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4'/%3E%3Cpath d='M12 3a6 6 0 0 0-3.6 10.8c.7.5 1.1 1.3 1.1 2.2h5c0-.9.4-1.7 1.1-2.2A6 6 0 0 0 12 3z'/%3E%3C/svg%3E");
}
.is-style-dt-tip::before { color: var(--accent2, #2e9a6b); }

/* Пример: белая карточка с пунктирной рамкой, иконка календаря */
.is-style-dt-example {
	background: #fff;
	border: 1.5px dashed var(--line, #dfe8ec);
	border-left: 4px solid var(--accent, #127a8a);
	--dt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.is-style-dt-example::before { color: var(--accent, #127a8a); }

/* Кратко: светлая карточка с цветной полосой сверху */
.is-style-dt-summary {
	background: linear-gradient(180deg, var(--cream, #f1f6f8), #fff 70%);
	border: 1px solid var(--line, #dfe8ec);
	border-top: 4px solid var(--accent, #127a8a);
	padding-left: 22px;
}
.is-style-dt-summary::before { display: none; }

/* Призыв: градиентная полоса, кнопка по центру */
.is-style-dt-cta {
	margin: 2.2em 0;
	padding: 26px 24px;
	border-radius: var(--radius, 18px);
	background: linear-gradient(120deg, var(--accent, #127a8a), var(--accent2, #2e9a6b));
	color: #fff;
	text-align: center;
}
.is-style-dt-cta > * { margin-left: auto; margin-right: auto; }
.is-style-dt-cta p { color: #fff; }
.is-style-dt-cta > :first-child { margin-top: 0; }
.is-style-dt-cta > :last-child { margin-bottom: 0; }
.is-style-dt-cta .wp-block-buttons { justify-content: center; margin: 0; }
.is-style-dt-cta .wp-block-button__link,
.entry-content .is-style-dt-cta .wp-block-button__link {
	background: #fff; color: var(--ink, #0f2536); box-shadow: 0 8px 22px rgba(0,0,0,.14);
}
.is-style-dt-cta .wp-block-button__link:hover,
.entry-content .is-style-dt-cta .wp-block-button__link:hover { background: #fff; color: var(--accent, #127a8a); }

/* ---------- Списки ---------- */
/* Карточки: каждый пункт - отдельная карточка */
ul.is-style-dt-cards, ol.is-style-dt-cards { list-style: none; padding: 0; margin: 1.6em 0; display: grid; gap: 12px; }
.is-style-dt-cards > li {
	margin: 0; padding: 16px 20px 16px 22px;
	background: #fff; border: 1px solid var(--line, #dfe8ec); border-left: 4px solid var(--accent2, #2e9a6b);
	border-radius: var(--radius-sm, 12px); box-shadow: 0 1px 2px rgba(15,37,54,.04);
	font-size: 1.02rem;
}
.is-style-dt-cards > li > strong:first-child { display: block; margin-bottom: 4px; color: var(--ink, #0f2536); }

/* Сетка 2×2: короткие определения */
ul.is-style-dt-grid, ol.is-style-dt-grid { list-style: none; padding: 0; margin: 1em 0 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.is-style-dt-grid > li {
	margin: 0; padding: 14px 16px; background: #fff;
	border: 1px solid var(--line, #dfe8ec); border-radius: var(--radius-sm, 12px);
	font-size: .98rem; line-height: 1.55;
}
.is-style-dt-grid > li > strong:first-child { color: var(--accent, #127a8a); }
@media (max-width: 600px) { ul.is-style-dt-grid, ol.is-style-dt-grid { grid-template-columns: 1fr; } }

/* Галочки */
ul.is-style-dt-check { list-style: none; padding-left: 0; }
.is-style-dt-check > li { position: relative; padding-left: 32px; }
.is-style-dt-check > li::before {
	content: ""; position: absolute; left: 0; top: .32em; width: 20px; height: 20px; border-radius: 50%;
	background: var(--accent2, #2e9a6b) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center / 14px no-repeat;
}

/* ---------- Колонки «Варианты» ---------- */
.wp-block-columns.is-style-dt-options { gap: 16px; margin: 1.6em 0; counter-reset: dtopt; }
.is-style-dt-options > .wp-block-column {
	position: relative; counter-increment: dtopt;
	padding: 20px 20px 18px; background: var(--cream, #f1f6f8);
	border: 1px solid var(--line, #dfe8ec); border-radius: var(--radius-sm, 12px);
	font-size: 1rem;
}
.is-style-dt-options > .wp-block-column::before {
	content: counter(dtopt); display: grid; place-items: center; width: 30px; height: 30px; margin-bottom: 10px;
	border-radius: 50%; background: var(--accent, #127a8a); color: #fff; font-weight: 800; font-size: .9rem;
}
.is-style-dt-options > .wp-block-column > :first-child { margin-top: 0; }
.is-style-dt-options > .wp-block-column > :last-child { margin-bottom: 0; }

/* ---------- Таблица «Сравнение» ---------- */
.is-style-dt-compare table { min-width: 560px; }
.is-style-dt-compare tr td:first-child { width: auto; min-width: 9em; }

@media (max-width: 520px) {
	/* иконка над текстом - текст на всю ширину */
	.is-style-dt-note, .is-style-dt-important, .is-style-dt-tip, .is-style-dt-example { padding: 46px 16px 16px 18px; }
	.is-style-dt-note::before, .is-style-dt-important::before, .is-style-dt-tip::before, .is-style-dt-example::before { left: 18px; top: 16px; width: 22px; height: 22px; }
	.is-style-dt-summary { padding: 16px; }
}

/* ==========================================================================
   Яркие блоки (стили «Яркий: …»): глубокие цвета, неон, глянец.
   Палитра: ночь #0b1026, глубокий синий #10245e/#1f4fff, фиолетовый #7c3aed,
   неоновый розовый #ff2e88, аврора #14e0b0, закат #ff8a3d.
   ========================================================================== */
:root {
	--x-night: #0b1026; --x-deep: #10245e; --x-blue: #1f4fff; --x-violet: #7c3aed;
	--x-pink: #ff2e88; --x-aurora: #14e0b0; --x-sun: #ff8a3d;
}

/* Маркеры (формат «Выделение» в редакторе): глянцевый блик поверх цвета */
.entry-content mark.has-inline-color, .editor-styles-wrapper mark.has-inline-color {
	padding: .04em .16em; border-radius: .3em; color: inherit;
	background-image: linear-gradient(180deg, rgba(255,255,255,.45), rgba(255,255,255,0) 60%);
	-webkit-box-decoration-break: clone; box-decoration-break: clone;
}

/* Заголовок «Градиент» */
.is-style-dt-x-grad {
	background: linear-gradient(90deg, var(--x-deep), var(--x-violet) 55%, var(--x-pink));
	-webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
}

/* Абзац «Метка» - градиентная пилюля */
p.is-style-dt-x-kicker {
	display: table; margin: 2em 0 1em; padding: .45em 1.1em; border-radius: 999px;
	background: linear-gradient(90deg, var(--x-pink), var(--x-violet));
	color: #fff; font-size: .82rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; line-height: 1.3;
	box-shadow: 0 10px 24px -10px rgba(255,46,136,.7);
}
p.is-style-dt-x-kicker em, p.is-style-dt-x-kicker strong { font-style: normal; font-weight: 800; color: #fff; }

/* Абзац «Точка»: цветная светящаяся точка слева от абзаца (варианты, пути, пункты без списка).
   ПК - точка на поле слева, текст не сдвигается; телефон - абзац с отступом, точка внутри. */
p.is-style-dt-x-dot, p.is-style-dt-x-dot-blue { position: relative; }
p.is-style-dt-x-dot::before, p.is-style-dt-x-dot-blue::before {
	content: ""; position: absolute; left: -26px; top: .55em; width: 12px; height: 12px; border-radius: 50%;
	background: linear-gradient(135deg, var(--x-aurora), #2e9a6b);
	box-shadow: 0 0 0 3px rgba(20,224,176,.18), 0 0 12px rgba(20,224,176,.6);
}
p.is-style-dt-x-dot-blue::before {
	background: linear-gradient(135deg, var(--x-blue), var(--x-violet));
	box-shadow: 0 0 0 3px rgba(31,79,255,.15), 0 0 12px rgba(31,79,255,.55);
}
@media (max-width: 860px) {
	p.is-style-dt-x-dot, p.is-style-dt-x-dot-blue { padding-left: 24px; }
	p.is-style-dt-x-dot::before, p.is-style-dt-x-dot-blue::before { left: 2px; }
}

/* общий «глянец» для тёмных и цветных карточек */
.is-style-dt-x-hero, .is-style-dt-x-alert, .is-style-dt-x-manifest, .is-style-dt-x-aurora, .is-style-dt-x-cta, .is-style-dt-x-sticker { position: relative; isolation: isolate; }
.is-style-dt-x-hero::after, .is-style-dt-x-aurora::after, .is-style-dt-x-cta::after, .is-style-dt-x-sticker::after, .is-style-dt-x-manifest::after {
	content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; z-index: -1;
	background: linear-gradient(180deg, rgba(255,255,255,.13), rgba(255,255,255,0) 42%);
}
.is-style-dt-x-hero > :first-child, .is-style-dt-x-alert > :first-child, .is-style-dt-x-manifest > :first-child,
.is-style-dt-x-aurora > :first-child, .is-style-dt-x-cta > :first-child, .is-style-dt-x-sticker > :first-child,
.is-style-dt-x-glass > :first-child { margin-top: 0; }
.is-style-dt-x-hero > :last-child, .is-style-dt-x-alert > :last-child, .is-style-dt-x-manifest > :last-child,
.is-style-dt-x-aurora > :last-child, .is-style-dt-x-cta > :last-child, .is-style-dt-x-sticker > :last-child,
.is-style-dt-x-glass > :last-child { margin-bottom: 0; }

/* «Кратко»: ночное небо с сиянием */
.is-style-dt-x-hero {
	margin: 2em 0; padding: 28px; border-radius: 24px; color: #dfe4ff;
	background:
		radial-gradient(120% 120% at 0% 0%, rgba(124,58,237,.55), transparent 55%),
		radial-gradient(90% 120% at 100% 100%, rgba(20,224,176,.32), transparent 55%),
		radial-gradient(60% 80% at 100% 0%, rgba(255,46,136,.28), transparent 60%),
		var(--x-night);
	box-shadow: 0 30px 60px -24px rgba(16,36,94,.7), inset 0 1px 0 rgba(255,255,255,.08);
}
.is-style-dt-x-hero p { color: #dfe4ff; }
.is-style-dt-x-hero > p:first-child { font-size: 1.25rem; line-height: 1.35; }
.is-style-dt-x-hero strong { color: #fff; }

/* Список «Плитки 01-04» */
ul.is-style-dt-x-tiles, ol.is-style-dt-x-tiles { list-style: none; padding: 0; margin: 1.2em 0 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; counter-reset: xt; }
.is-style-dt-x-tiles > li {
	counter-increment: xt; position: relative; margin: 0; padding: 16px 18px 16px;
	background: #fff; border-radius: 16px; font-size: .97rem; line-height: 1.55;
	box-shadow: 0 12px 28px -16px rgba(16,36,94,.45), 0 0 0 1px rgba(16,36,94,.07);
}
.is-style-dt-x-tiles > li::before {
	content: counter(xt, decimal-leading-zero); display: block; margin-bottom: 6px;
	font-size: 1.7rem; font-weight: 900; line-height: 1; letter-spacing: -.02em;
	background: linear-gradient(90deg, var(--x-pink), var(--x-violet)); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.is-style-dt-x-tiles > li > strong:first-child { color: var(--x-deep); }
.is-style-dt-x-hero .is-style-dt-x-tiles > li { background: rgba(255,255,255,.06); color: rgba(223,228,255,.86); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); backdrop-filter: blur(4px); }
.is-style-dt-x-hero .is-style-dt-x-tiles > li > strong:first-child { color: var(--x-aurora); }
@media (max-width: 600px) { ul.is-style-dt-x-tiles, ol.is-style-dt-x-tiles { grid-template-columns: 1fr; } }

/* «Важно»: чёрная карточка, неоновая рамка, значок «!» */
.is-style-dt-x-alert {
	margin: 2.6em 0 2em; padding: 34px 26px 24px; border-radius: 22px; color: #eceefe;
	border: 2px solid transparent;
	background: linear-gradient(var(--x-night), var(--x-night)) padding-box, linear-gradient(120deg, var(--x-pink), var(--x-violet) 50%, var(--x-blue)) border-box;
	box-shadow: 0 22px 50px -24px rgba(255,46,136,.55);
}
.is-style-dt-x-alert::before {
	content: "!"; position: absolute; top: -20px; left: 24px; width: 42px; height: 42px; border-radius: 50%;
	display: grid; place-items: center; font-size: 1.35rem; font-weight: 900; color: #fff; line-height: 1;
	background: linear-gradient(135deg, var(--x-pink), var(--x-sun));
	box-shadow: 0 0 0 5px var(--x-night), 0 8px 24px rgba(255,46,136,.7);
}
.is-style-dt-x-alert p { color: #eceefe; }
.is-style-dt-x-alert strong { color: #ff8cc4; }
.is-style-dt-x-alert a { color: var(--x-aurora); }

/* «Важно (пунктир)»: мягкий вариант «важно» - светлый фон, тёплая градиентная пунктирная рамка, значок «!».
   ::before - градиентное кольцо, ::after - белый пунктир поверх (как у «Пример (пунктир)»);
   значок - на первом дочернем элементе (на сайте это обёртка группы, в редакторе - первый блок). */
.is-style-dt-x-alert-soft {
	position: relative; margin: 2.6em 0 2em; padding: 32px 26px 24px; border-radius: 20px;
	background: linear-gradient(135deg, rgba(255,46,136,.05), rgba(255,138,61,.045));
}
.is-style-dt-x-alert-soft::before, .is-style-dt-x-alert-soft::after {
	content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none;
}
.is-style-dt-x-alert-soft::before {
	padding: 2px;
	background: linear-gradient(120deg, var(--x-pink), var(--x-sun) 50%, var(--x-violet));
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor; mask-composite: exclude;
}
.is-style-dt-x-alert-soft::after { border: 2px dashed #fff; }
.is-style-dt-x-alert-soft > :first-child::before {
	content: "!"; position: absolute; z-index: 1; top: -19px; left: 22px; width: 38px; height: 38px; border-radius: 50%;
	display: grid; place-items: center; font-size: 1.2rem; font-weight: 900; line-height: 1; color: #fff; font-style: normal;
	background: linear-gradient(135deg, var(--x-pink), var(--x-sun));
	box-shadow: 0 0 0 5px #fff, 0 6px 18px rgba(255,46,136,.45);
}
.is-style-dt-x-alert-soft strong { color: #c8155f; }
.is-style-dt-x-alert-soft > :first-child, .is-style-dt-x-alert-soft > .wp-block-group__inner-container > :first-child { margin-top: 0; }
.is-style-dt-x-alert-soft > :last-child, .is-style-dt-x-alert-soft > .wp-block-group__inner-container > :last-child { margin-bottom: 0; }
@media (max-width: 520px) { .is-style-dt-x-alert-soft { padding: 30px 18px 20px; } }

/* «Пример (пунктир)»: скруглённая пунктирная рамка с градиентом.
   ::before - сплошное градиентное кольцо, ::after - белый пунктир поверх: белые штрихи режут кольцо на цветные штрихи. */
.is-style-dt-x-dashed {
	position: relative; margin: 2em 0; padding: 24px 26px; border-radius: 20px;
	background: linear-gradient(135deg, rgba(124,58,237,.045), rgba(20,224,176,.045));
}
.is-style-dt-x-dashed::before, .is-style-dt-x-dashed::after {
	content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none;
}
.is-style-dt-x-dashed::before {
	padding: 2px;
	background: linear-gradient(120deg, var(--x-pink), var(--x-violet) 35%, var(--x-blue) 65%, var(--x-aurora));
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor; mask-composite: exclude;
}
.is-style-dt-x-dashed::after { border: 2px dashed #fff; }
.is-style-dt-x-dashed > :first-child { margin-top: 0; }
.is-style-dt-x-dashed > :last-child { margin-bottom: 0; }
.is-style-dt-x-dashed strong { color: var(--ink, #0f2536); }
.is-style-dt-x-dashed p:first-child > strong:first-child {
	background: linear-gradient(90deg, var(--x-pink), var(--x-violet));
	-webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
}
.is-style-dt-x-dashed p:first-child > strong:first-child em { -webkit-text-fill-color: transparent; }

/* «Стикер»: розово-фиолетовый, чуть повёрнут */
.is-style-dt-x-sticker {
	margin: 2em 6px; padding: 20px 24px; border-radius: 20px 20px 20px 6px; color: #fff;
	background: linear-gradient(135deg, var(--x-violet), var(--x-pink));
	box-shadow: 0 18px 36px -16px rgba(124,58,237,.75);
	transform: rotate(-.8deg);
}
.is-style-dt-x-sticker p, .is-style-dt-x-sticker em, .is-style-dt-x-sticker strong { color: #fff; }

/* «Манифест»: крупный градиентный текст на тёмном */
.is-style-dt-x-manifest {
	margin: 2.4em 0; padding: 58px 32px 32px; border-radius: 26px; background: var(--x-night);
	box-shadow: 0 28px 60px -28px rgba(124,58,237,.8);
}
.is-style-dt-x-manifest::before {
	content: "\201C"; position: absolute; top: -6px; left: 24px; font-size: 6rem; line-height: 1; font-weight: 900;
	color: var(--x-pink); opacity: .55;
}
.is-style-dt-x-manifest p {
	font-size: 1.45rem; line-height: 1.38; font-weight: 800; letter-spacing: -.01em;
	background: linear-gradient(90deg, #ff7ab8, #b794ff 45%, #7fb2ff 70%, var(--x-aurora));
	-webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
}
.is-style-dt-x-manifest p em, .is-style-dt-x-manifest p strong { font-style: normal; -webkit-text-fill-color: transparent; }

/* «Против»: две контрастные карточки с контурными цифрами */
.wp-block-columns.is-style-dt-x-versus { position: relative; gap: 22px; margin: 2em 0; counter-reset: xv; }
.is-style-dt-x-versus > .wp-block-column {
	position: relative; counter-increment: xv; overflow: hidden;
	padding: 30px 24px 24px; border-radius: 22px; color: #fff; font-size: 1rem;
	background: linear-gradient(160deg, var(--x-deep), var(--x-blue));
	box-shadow: 0 22px 44px -22px rgba(31,79,255,.75), inset 0 1px 0 rgba(255,255,255,.15);
}
.is-style-dt-x-versus > .wp-block-column:nth-child(2) {
	background: linear-gradient(160deg, #4c1d95, var(--x-pink));
	box-shadow: 0 22px 44px -22px rgba(255,46,136,.75), inset 0 1px 0 rgba(255,255,255,.15);
}
.is-style-dt-x-versus > .wp-block-column::before {
	content: counter(xv); position: absolute; right: 10px; top: -26px; font-size: 5.5rem; font-weight: 900; line-height: 1;
	color: transparent; -webkit-text-stroke: 2px rgba(255,255,255,.2); pointer-events: none;
}
.is-style-dt-x-versus > .wp-block-column p, .is-style-dt-x-versus > .wp-block-column strong, .is-style-dt-x-versus > .wp-block-column em { color: #fff; }
.is-style-dt-x-versus > .wp-block-column a { color: #fff; text-decoration-color: rgba(255,255,255,.6); }
.is-style-dt-x-versus > .wp-block-column > :first-child { margin-top: 0; }
.is-style-dt-x-versus > .wp-block-column > :last-child { margin-bottom: 0; }
@media (min-width: 782px) {
	.wp-block-columns.is-style-dt-x-versus::after {
		content: "\21C4"; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 2;
		width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center;
		background: #fff; color: var(--x-violet); font-size: 1.3rem; font-weight: 800;
		box-shadow: 0 8px 22px rgba(16,36,94,.35);
	}
}

/* «Развилка»: два пути друг под другом во всю ширину (высота по тексту), номер - в светящемся кружке слева */
.wp-block-columns.is-style-dt-x-fork { flex-direction: column !important; gap: 16px; margin: 2em 0; counter-reset: xf; }
.is-style-dt-x-fork > .wp-block-column {
	flex-basis: auto !important; width: 100%; position: relative; counter-increment: xf;
	padding: 24px 26px 24px 92px; border-radius: 22px; color: #fff; font-size: 1rem;
	background: linear-gradient(120deg, var(--x-deep), var(--x-blue));
	box-shadow: 0 20px 40px -22px rgba(31,79,255,.7), inset 0 1px 0 rgba(255,255,255,.15);
}
.is-style-dt-x-fork > .wp-block-column:nth-child(2) {
	background: linear-gradient(120deg, #4c1d95, var(--x-violet) 45%, var(--x-pink));
	box-shadow: 0 20px 40px -22px rgba(255,46,136,.7), inset 0 1px 0 rgba(255,255,255,.15);
}
.is-style-dt-x-fork > .wp-block-column::before {
	content: counter(xf); position: absolute; left: 24px; top: 22px; width: 46px; height: 46px; border-radius: 50%;
	display: grid; place-items: center; font-size: 1.35rem; font-weight: 900; line-height: 1; color: #fff;
	background: rgba(255,255,255,.14); box-shadow: inset 0 0 0 1.5px rgba(255,255,255,.45), 0 0 22px rgba(255,255,255,.25);
}
.is-style-dt-x-fork > .wp-block-column p, .is-style-dt-x-fork > .wp-block-column strong, .is-style-dt-x-fork > .wp-block-column em { color: #fff; }
.is-style-dt-x-fork > .wp-block-column > :first-child { margin-top: 0; }
.is-style-dt-x-fork > .wp-block-column > :last-child { margin-bottom: 0; }
@media (max-width: 520px) {
	.is-style-dt-x-fork > .wp-block-column { padding: 72px 18px 20px; }
	.is-style-dt-x-fork > .wp-block-column::before { left: 18px; top: 18px; width: 40px; height: 40px; font-size: 1.15rem; }
}

/* «Аврора»: ночь → бирюза, значок-кору (спираль папоротника) */
.is-style-dt-x-aurora {
	margin: 2em 0; padding: 26px 28px 26px 76px; border-radius: 24px; color: #fff;
	background: linear-gradient(115deg, var(--x-night) 0%, var(--x-deep) 38%, #0e7c86 72%, var(--x-aurora) 100%);
	box-shadow: 0 24px 50px -24px rgba(20,224,176,.6);
}
.is-style-dt-x-aurora::before {
	content: ""; position: absolute; left: 24px; top: 26px; width: 32px; height: 32px; background: var(--x-aurora);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 22V12c0-2.2 1.8-4 4-4s3 1.3 3 3-1.3 3-3 3-2-.9-2-2 .9-1.5 1.5-1.5'/%3E%3Cpath d='M12 12c0-4.4-3.6-8-8-8'/%3E%3C/svg%3E") center / contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 22V12c0-2.2 1.8-4 4-4s3 1.3 3 3-1.3 3-3 3-2-.9-2-2 .9-1.5 1.5-1.5'/%3E%3Cpath d='M12 12c0-4.4-3.6-8-8-8'/%3E%3C/svg%3E") center / contain no-repeat;
	filter: drop-shadow(0 0 8px rgba(20,224,176,.8));
}
.is-style-dt-x-aurora p, .is-style-dt-x-aurora strong { color: #fff; }

/* «Стекло»: лёгкая фиолетовая дымка */
.is-style-dt-x-glass {
	position: relative; margin: 2em 0; padding: 24px 26px 22px; border-radius: 20px;
	background: linear-gradient(135deg, rgba(124,58,237,.09), rgba(31,79,255,.06) 60%, rgba(255,46,136,.07));
	border: 1px solid rgba(124,58,237,.2);
}
.is-style-dt-x-glass::before {
	content: ""; position: absolute; top: -1px; left: 26px; width: 56px; height: 4px; border-radius: 0 0 4px 4px;
	background: linear-gradient(90deg, var(--x-pink), var(--x-violet));
}
.is-style-dt-x-glass strong, .is-style-dt-x-glass em { color: #3b1a78; }

/* Список «Таймлайн» */
ul.is-style-dt-x-timeline, ol.is-style-dt-x-timeline { list-style: none; position: relative; margin: 1.6em 0; padding: 0 0 0 36px; }
.is-style-dt-x-timeline::before {
	content: ""; position: absolute; left: 11px; top: 8px; bottom: 8px; width: 3px; border-radius: 3px;
	background: linear-gradient(180deg, var(--x-pink), var(--x-violet) 50%, var(--x-blue));
}
.is-style-dt-x-timeline > li { position: relative; margin: 0 0 22px; }
.is-style-dt-x-timeline > li:last-child { margin-bottom: 0; }
.is-style-dt-x-timeline > li::before {
	content: ""; position: absolute; left: -32px; top: .42em; width: 16px; height: 16px; border-radius: 50%;
	background: linear-gradient(135deg, var(--x-pink), var(--x-violet));
	box-shadow: 0 0 0 4px #fff, 0 0 14px rgba(255,46,136,.7);
}
.is-style-dt-x-timeline > li > strong:first-child { display: block; font-size: 1.08em; color: var(--x-deep); margin-bottom: 2px; }

/* Таблица «Яркая» */
.wp-block-table.is-style-dt-x-table { overflow-x: auto; border-radius: 20px; box-shadow: 0 20px 44px -24px rgba(16,36,94,.5), 0 0 0 1px rgba(16,36,94,.08); }
.is-style-dt-x-table table { min-width: 560px; border-collapse: separate; border-spacing: 0; }
.is-style-dt-x-table thead { background: linear-gradient(100deg, var(--x-night), var(--x-deep) 45%, #3b1f8f); }
.is-style-dt-x-table thead th, .entry-content .is-style-dt-x-table thead th { background: transparent; color: #fff; border: 0; font-weight: 700; letter-spacing: .01em; }
.is-style-dt-x-table tbody tr:nth-child(even) td { background: #f6f4ff; }
.is-style-dt-x-table tr td:first-child { width: auto; min-width: 9em; color: var(--x-deep); }
.is-style-dt-x-table td, .is-style-dt-x-table th { border-bottom: 0; }

/* «Призыв» яркий */
.is-style-dt-x-cta {
	margin: 2.4em 0; padding: 34px 24px; border-radius: 26px; text-align: center; color: #fff;
	background:
		radial-gradient(80% 140% at 0% 0%, rgba(255,46,136,.5), transparent 55%),
		radial-gradient(80% 140% at 100% 100%, rgba(31,79,255,.55), transparent 55%),
		var(--x-night);
	box-shadow: 0 28px 60px -28px rgba(124,58,237,.8);
}
.is-style-dt-x-cta .wp-block-buttons { justify-content: center; margin: 0; }
.is-style-dt-x-cta .wp-block-button__link,
.entry-content .is-style-dt-x-cta .wp-block-button__link {
	background: linear-gradient(90deg, var(--x-pink), var(--x-violet)); color: #fff;
	box-shadow: 0 12px 30px -8px rgba(255,46,136,.8); padding: 1em 1.8em; font-size: 1.02rem;
	transition: transform .15s ease, box-shadow .15s ease;
}
.is-style-dt-x-cta .wp-block-button__link:hover,
.entry-content .is-style-dt-x-cta .wp-block-button__link:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 16px 36px -8px rgba(255,46,136,.9); }

@media (max-width: 520px) {
	.is-style-dt-x-hero, .is-style-dt-x-cta { padding: 24px 18px; }
	.is-style-dt-x-manifest { padding: 50px 18px 24px; }
	.is-style-dt-x-alert { padding: 32px 18px 20px; }
	.is-style-dt-x-dashed { padding: 20px 18px; }
	.is-style-dt-x-aurora { padding: 64px 18px 22px; }
	.is-style-dt-x-aurora::before { left: 18px; top: 20px; }
	.is-style-dt-x-manifest p { font-size: 1.2rem; }
	.is-style-dt-x-sticker { transform: none; margin-left: 0; margin-right: 0; }
}

/* WordPress (классическая тема) оборачивает содержимое группы в .wp-block-group__inner-container -
   правила «первый/последний абзац» дублируем для этой обёртки. */
.wp-block-group[class*="is-style-dt-"] > .wp-block-group__inner-container > :first-child { margin-top: 0; }
.wp-block-group[class*="is-style-dt-"] > .wp-block-group__inner-container > :last-child { margin-bottom: 0; }
.is-style-dt-x-hero > .wp-block-group__inner-container > p:first-child { font-size: 1.25rem; line-height: 1.35; }
.is-style-dt-cta > .wp-block-group__inner-container > * { margin-left: auto; margin-right: auto; }
