/*
 * Admirise – TestGerman yazı içeriği tipografisi (.tg-prose) — "TG · Article body" widget'ı.
 *
 * Prototipteki makale (#guide main > section:nth-child(2)) elemanlara Tailwind sınıflarıyla stillenmiş;
 * WordPress içeriğinde sınıf yok, değerler buraya birebir taşındı:
 *   h2  text-[22px] font-extrabold leading-8 text-fg  · lg: text-[24px] leading-9
 *   p   text-[16px] font-medium leading-6 text-fg-muted · lg: text-[18px] leading-7
 *   başlık → metin  gap-3 (12px)  · lg: gap-4 (16px)
 *   bölüm → bölüm   gap-6 (24px)  · lg: gap-12 (48px)
 *   liste işareti   "In short" kutusundaki yeşil tik (14px, text-success)
 *   kutu/kart       rounded-xl (24px) bg-soft · rounded-[20px] border-[1.5px] border-line
 * Prototipte karşılığı olmayanlar (h3/h4, liste, tablo, alıntı, görsel) aynı ölçek ve renklerle türetildi.
 *
 * Canlı yazılar Elementor ile yazılmış: içerik container (.e-con) > widget (heading / text-editor / image / button / spacer)
 * markup'ı olarak gelir. Kit ve yazıya özel CSS'in (post-XXXX.css: ".elementor-123 .elementor-element.elementor-element-abc …"
 * = 0,3,0 / 0,4,0) font-family, renk, boşluk değerlerini ezmemesi için Elementor'a özgü kurallar ".tg .tg-prose.tg-prose"
 * (çift sınıf) ile yazıldı. Google Docs'tan yapıştırılmış <span style="font-weight: 400"> artıkları nötrlenir.
 */

/* ------------------------------------------------------------------ temel */
.tg .tg-prose {
	--tgp-gap: 12px;   /* başlık → metin, paragraf → paragraf */
	--tgp-sec: 24px;   /* bölüm (H2) arası */
	--tgp-sub: 24px;   /* alt başlık (H3–H6) öncesi */
	--tgp-fg: #2b2724;
	--tgp-muted: #6b5f52;
	--tgp-red: #ae1c27;
	--tgp-red-deep: #8e1520;
	--tgp-soft: #fbefd4;
	--tgp-yellow: #fac51c;
	--tgp-yellow-soft: #ffe8b6;
	--tgp-line: #eadfc8;
	--tgp-success: #1b9d62;
	min-width: 0;
	font-family: "Baloo 2", system-ui, sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
	color: var(--tgp-muted);
	overflow-wrap: break-word;
}
@media (min-width: 1024px) {
	.tg .tg-prose {
		--tgp-gap: 16px;
		--tgp-sec: 48px;
		--tgp-sub: 32px;
		font-size: 18px;
		line-height: 28px;
	}
}

/* Akış elemanları: kendi kenar boşlukları sıfır, aralık kardeş kuralıyla. */
.tg .tg-prose :is(p, ul, ol, li, dl, dd, blockquote, figure, table, pre, hr, h1, h2, h3, h4, h5, h6, address, details) {
	margin: 0;
}

/* Boş paragraf (editörden kalan <p></p>, tablo öncesi/sonrası) boşluk yaratmasın. */
.tg .tg-prose p:empty {
	display: none;
}

/* Kardeş aralığı: klasik içerikte doğrudan .tg-prose altında, Elementor'da widget kabının içinde. */
.tg .tg-prose > * + *,
.tg .tg-prose :is(.elementor-widget-container, .elementor-widget-text-editor, .entry-content, blockquote) > * + * {
	margin-top: var(--tgp-gap);
}
.tg .tg-prose > * + :is(h1, h2),
.tg .tg-prose :is(.elementor-widget-container, .elementor-widget-text-editor, .entry-content) > * + :is(h1, h2) {
	margin-top: var(--tgp-sec);
}
.tg .tg-prose > * + :is(h3, h4, h5, h6),
.tg .tg-prose :is(.elementor-widget-container, .elementor-widget-text-editor, .entry-content) > * + :is(h3, h4, h5, h6) {
	margin-top: var(--tgp-sub);
}
.tg .tg-prose > :first-child,
.tg .tg-prose .elementor-widget-container > :first-child {
	margin-top: 0;
}

/* ------------------------------------------------------------------ başlıklar */
.tg .tg-prose :is(h1, h2, h3, h4, h5, h6) {
	font-family: inherit;
	color: var(--tgp-fg);
	letter-spacing: 0;
	text-transform: none;
	font-style: normal;
}
.tg .tg-prose :is(h1, h2) {
	font-size: 22px;
	font-weight: 800;
	line-height: 32px;
}
.tg .tg-prose h3 {
	font-size: 18px;
	font-weight: 800;
	line-height: 28px;
}
.tg .tg-prose :is(h4, h5, h6) {
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
}
@media (min-width: 1024px) {
	.tg .tg-prose :is(h1, h2) {
		font-size: 24px;
		line-height: 36px;
	}
	.tg .tg-prose h3 {
		font-size: 20px;
		line-height: 30px;
	}
	.tg .tg-prose h4 {
		font-size: 18px;
		line-height: 28px;
	}
}
.tg .tg-prose :is(h1, h2, h3, h4, h5, h6) :is(b, strong) {
	font-weight: inherit;
}

/* ------------------------------------------------------------------ metin */
.tg .tg-prose :is(p, li, dd, dt, address) {
	font-family: inherit;
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
	color: var(--tgp-muted);
	letter-spacing: 0;
}
@media (min-width: 1024px) {
	.tg .tg-prose :is(p, li, dd, dt, address) {
		font-size: 18px;
		line-height: 28px;
	}
}
.tg .tg-prose :is(b, strong) {
	font-weight: 700;
}
/* Kalın metin koyu (prototipte vurgu = text-fg); yazarın renkli span'ı içindeyse onun rengi kalır. */
.tg .tg-prose :is(b, strong):not([style*="color"] *, [style*="color"]) {
	color: var(--tgp-fg);
}
.tg .tg-prose :is(em, i) {
	font-style: italic;
}
/* Google Docs artığı: <span style="font-weight: 400;"> metni prototipteki 500 ağırlığından düşürmesin. */
.tg .tg-prose [style*="font-weight: 400"],
.tg .tg-prose [style*="font-weight:400"] {
	font-weight: inherit !important;
}
.tg .tg-prose a:not(.elementor-button) {
	color: var(--tgp-red);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 3px;
	text-decoration-color: rgba(174, 28, 39, .35);
	transition: color .15s, text-decoration-color .15s;
}
.tg .tg-prose a:not(.elementor-button):hover {
	color: var(--tgp-red-deep);
	text-decoration-color: currentColor;
}
.tg .tg-prose :is(h1, h2, h3, h4, h5, h6) a:not(.elementor-button) {
	font-weight: inherit;
}
.tg .tg-prose hr {
	height: 0;
	border: 0;
	border-top: 1.5px solid var(--tgp-line);
}
.tg .tg-prose :is(code, kbd) {
	padding: 1px 6px;
	border-radius: 6px;
	background: var(--tgp-soft);
	color: var(--tgp-fg);
	font-size: .875em;
}
.tg .tg-prose pre {
	overflow-x: auto;
	padding: 16px;
	border-radius: 20px;
	background: var(--tgp-soft);
	color: var(--tgp-fg);
	font-size: 14px;
	line-height: 20px;
}
.tg .tg-prose pre code {
	padding: 0;
	background: none;
}

/* ------------------------------------------------------------------ listeler */
.tg .tg-prose :is(ul, ol) {
	list-style: none;
	padding: 0;
	font-weight: 500;
}
.tg .tg-prose li {
	position: relative;
}
.tg .tg-prose :is(ul, ol) > li + li {
	margin-top: 8px;
}
.tg .tg-prose li > :is(ul, ol) {
	margin-top: 8px;
}
.tg .tg-prose li > p {
	font: inherit;
	color: inherit;
}
/* ul: "In short" kutusundaki yeşil tik (h-3.5 w-3.5 mt-1.5 text-success, gap-2.5). */
.tg .tg-prose ul > li {
	padding-left: 24px;
}
.tg .tg-prose ul > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 6px;
	width: 14px;
	height: 14px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M1.2 6.6 4.3 9.7 10.8 1.8' fill='none' stroke='%231b9d62' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.9'/%3E%3C/svg%3E") no-repeat center / contain;
}
/* ol: sarı yuvarlak numara (prototipteki adım rozeti, küçük). */
.tg .tg-prose ol {
	counter-reset: tgp-ol;
}
.tg .tg-prose ol > li {
	padding-left: 34px;
	counter-increment: tgp-ol;
}
.tg .tg-prose ol > li::before {
	content: counter(tgp-ol);
	position: absolute;
	left: 0;
	top: 0;
	width: 24px;
	height: 24px;
	border-radius: 9999px;
	background: var(--tgp-yellow);
	color: var(--tgp-fg);
	font-size: 13px;
	font-weight: 600;
	line-height: 24px;
	text-align: center;
}
@media (min-width: 1024px) {
	.tg .tg-prose ul > li::before {
		top: 7px;
	}
	.tg .tg-prose ol > li::before {
		top: 2px;
	}
}
/* Google Docs artığı: <li style="list-style-type: none"><ul>…</ul></li> — dış maddede işaret ve girinti yok. */
.tg .tg-prose li[style*="list-style-type: none"],
.tg .tg-prose li[style*="list-style-type:none"] {
	padding-left: 0;
	counter-increment: none;
}
.tg .tg-prose li[style*="list-style-type: none"]::before,
.tg .tg-prose li[style*="list-style-type:none"]::before {
	display: none;
}
.tg .tg-prose li[style*="list-style-type: none"] > :is(ul, ol):first-child,
.tg .tg-prose li[style*="list-style-type:none"] > :is(ul, ol):first-child {
	margin-top: 0;
}

/* ------------------------------------------------------------------ alıntı (prototipteki "In short" kutusu) */
.tg .tg-prose blockquote {
	padding: 16px;
	border: 0;
	border-radius: 24px;
	background: var(--tgp-soft);
	color: var(--tgp-fg);
	font-style: normal;
	quotes: none;
}
.tg .tg-prose blockquote::before,
.tg .tg-prose blockquote::after {
	content: none;
}
.tg .tg-prose blockquote :is(p, li) {
	color: var(--tgp-fg);
}
.tg .tg-prose blockquote cite {
	display: block;
	margin-top: 8px;
	color: var(--tgp-muted);
	font-size: 14px;
	font-style: normal;
	line-height: 20px;
}
@media (min-width: 1024px) {
	.tg .tg-prose blockquote {
		padding: 24px;
	}
}

/* ------------------------------------------------------------------ tablo (prototip kart: rounded-[20px] border-[1.5px] border-line) */
.tg .tg-prose table {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	border: 1.5px solid var(--tgp-line);
	border-radius: 20px;
	border-collapse: separate;
	border-spacing: 0;
	background: #fff;
	-webkit-overflow-scrolling: touch;
}
/* Mobilde tablo kendi içinde yatay kayar (display:block); yalnız tbody'li (yaygın) tabloda satırlar yine tam genişlik. */
.tg .tg-prose table > :is(tbody, thead):only-child {
	display: table;
	width: 100%;
}
@media (min-width: 768px) {
	.tg .tg-prose table {
		display: table;
		overflow: visible;
	}
	.tg .tg-prose table > :is(tbody, thead):only-child {
		display: table-row-group;
	}
}
.tg .tg-prose :is(th, td) {
	padding: 12px 16px;
	border: 0;
	border-top: 1.5px solid var(--tgp-line);
	color: var(--tgp-muted);
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
	text-align: left;
	vertical-align: top;
}
.tg .tg-prose tr:first-child > :is(th, td) {
	border-top: 0;
}
.tg .tg-prose :is(th, td) + :is(th, td) {
	border-left: 1.5px solid var(--tgp-line);
}
/* Köşe hücreleri tablonun yuvarlak köşesini taşmasın (tabloda overflow her tarayıcıda kırpmaz). */
.tg .tg-prose table > :first-child > tr:first-child > :first-child {
	border-top-left-radius: 18.5px;
}
.tg .tg-prose table > :first-child > tr:first-child > :last-child {
	border-top-right-radius: 18.5px;
}
.tg .tg-prose table > :last-child > tr:last-child > :first-child {
	border-bottom-left-radius: 18.5px;
}
.tg .tg-prose table > :last-child > tr:last-child > :last-child {
	border-bottom-right-radius: 18.5px;
}
.tg .tg-prose th,
.tg .tg-prose thead :is(th, td),
.tg .tg-prose table:not(:has(th)) tbody > tr:first-child > td {
	background: var(--tgp-soft);
	color: var(--tgp-fg);
	font-weight: 700;
}
.tg .tg-prose thead + tbody > tr:first-child > :is(th, td) {
	border-top: 1.5px solid var(--tgp-line);
	background: transparent;
	color: var(--tgp-muted);
	font-weight: 500;
}
.tg .tg-prose :is(th, td) :is(p, li) {
	font: inherit;
	color: inherit;
}
.tg .tg-prose :is(th, td) > * + * {
	margin-top: 4px;
}
.tg .tg-prose table caption {
	padding: 8px 0;
	color: var(--tgp-muted);
	font-size: 14px;
	line-height: 20px;
}

/* ------------------------------------------------------------------ görsel ve gömülü içerik */
.tg .tg-prose img {
	max-width: 100%;
	height: auto;
	border-radius: 20px;
}
.tg .tg-prose :is(img.emoji, img.wp-smiley) {
	display: inline;
	width: 1em;
	height: 1em;
	border-radius: 0;
	vertical-align: -0.1em;
}
.tg .tg-prose :is(figure, .wp-caption) {
	max-width: 100%;
}
.tg .tg-prose :is(figcaption, .wp-caption-text, .widget-image-caption, .wp-element-caption) {
	margin-top: 8px;
	color: var(--tgp-muted);
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
}
.tg .tg-prose :is(iframe, video, embed, object) {
	max-width: 100%;
	border: 0;
	border-radius: 20px;
}

/* ------------------------------------------------------------------ Elementor yapısı (yazılar Elementor ile yazılmış) */

/* Üst seviye container'lar: kendi iç boşluğu / genişliği yok — sütun 720px makale alanı. Widget aralığı bizim ritmimiz. */
.tg .tg-prose.tg-prose .elementor {
	display: block;
}
.tg .tg-prose.tg-prose .e-con.e-parent {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--margin-top: 0px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--content-width: 100%;
	--container-max-width: 100%;
	--width: 100%;
	--row-gap: 0px;
	--gap: 0px var(--column-gap, 20px);
	--widgets-spacing-row: 0px;
	padding: 0;
	margin: 0;
	max-width: 100%;
	min-height: 0;
	border: 0;
}
.tg .tg-prose.tg-prose .e-con.e-parent > .e-con-inner {
	padding: 0;
	max-width: 100%;
	row-gap: 0;
}
.tg .tg-prose.tg-prose .elementor-element {
	margin-block-end: 0;
}
.tg .tg-prose.tg-prose .e-con.e-parent + .e-con.e-parent {
	margin-top: var(--tgp-sec);
}
/* Üst container'ın doğrudan widget'ları arasında: paragraf aralığı; H2 ile başlayan widget'tan önce bölüm aralığı. */
.tg .tg-prose.tg-prose :is(.e-parent > .e-con-inner, .e-parent.e-con-full) > .elementor-element + .elementor-element {
	margin-top: var(--tgp-gap);
}
.tg .tg-prose.tg-prose :is(.e-parent > .e-con-inner, .e-parent.e-con-full) > .elementor-element + .elementor-element:has(> .elementor-widget-container > h2:first-child),
.tg .tg-prose.tg-prose :is(.e-parent > .e-con-inner, .e-parent.e-con-full) > .elementor-element + .elementor-widget-text-editor:has(> h2:first-child),
.tg .tg-prose.tg-prose :is(.e-parent > .e-con-inner, .e-parent.e-con-full) > .elementor-element + .elementor-widget-heading:has(h2) {
	margin-top: var(--tgp-sec);
}
.tg .tg-prose.tg-prose :is(.e-parent > .e-con-inner, .e-parent.e-con-full) > .elementor-element + .elementor-element:has(> .elementor-widget-container > :is(h3, h4, h5, h6):first-child),
.tg .tg-prose.tg-prose :is(.e-parent > .e-con-inner, .e-parent.e-con-full) > .elementor-element + .elementor-widget-heading:has(:is(h3, h4, h5, h6)) {
	margin-top: var(--tgp-sub);
}

/* Eski bölüm/sütun yapısı (section > column) için de aynı nötrleme. */
.tg .tg-prose.tg-prose .elementor-section > .elementor-container {
	max-width: 100%;
}
.tg .tg-prose.tg-prose .elementor-section .elementor-column > .elementor-widget-wrap {
	padding: 0;
}
.tg .tg-prose.tg-prose .elementor-widget-wrap > .elementor-element + .elementor-element {
	margin-top: var(--tgp-gap);
}
.tg .tg-prose.tg-prose .elementor-section + .elementor-section {
	margin-top: var(--tgp-sec);
}

/* Widget kapları: yazıya özel CSS'in yazı tipi/renk/hizasını taşımasın (içindeki elemanlar kendi değerini alır). */
.tg .tg-prose.tg-prose .elementor-widget {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: 0;
	color: inherit;
}
.tg .tg-prose.tg-prose .elementor-widget-text-editor {
	text-align: start;
}

/* Heading widget: başlık etiketine göre prototip ölçüsü (yazıya özel tipografi ayarı 0,4,0 — burası 0,5,0). */
.tg .tg-prose.tg-prose .elementor-widget-heading .elementor-heading-title {
	margin: 0;
	padding: 0;
	font-family: inherit;
	color: var(--tgp-fg);
	letter-spacing: 0;
	text-transform: none;
	font-style: normal;
	text-shadow: none;
	-webkit-text-stroke-width: 0;
}
.tg .tg-prose.tg-prose .elementor-widget-heading :is(h1, h2).elementor-heading-title {
	font-size: 22px;
	font-weight: 800;
	line-height: 32px;
}
.tg .tg-prose.tg-prose .elementor-widget-heading h3.elementor-heading-title {
	font-size: 18px;
	font-weight: 800;
	line-height: 28px;
}
.tg .tg-prose.tg-prose .elementor-widget-heading :is(h4, h5, h6, p, div, span).elementor-heading-title {
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
}
@media (min-width: 1024px) {
	.tg .tg-prose.tg-prose .elementor-widget-heading :is(h1, h2).elementor-heading-title {
		font-size: 24px;
		line-height: 36px;
	}
	.tg .tg-prose.tg-prose .elementor-widget-heading h3.elementor-heading-title {
		font-size: 20px;
		line-height: 30px;
	}
	.tg .tg-prose.tg-prose .elementor-widget-heading h4.elementor-heading-title {
		font-size: 18px;
		line-height: 28px;
	}
}
.tg .tg-prose.tg-prose .elementor-widget-heading .elementor-heading-title a {
	color: inherit;
	font-weight: inherit;
	text-decoration: none;
}

/* Text editor: kit "paragraph spacing" (p { margin-block-end }) yerine bizim ritim. */
.tg .tg-prose.tg-prose .elementor-widget-text-editor :is(p, ul, ol, h1, h2, h3, h4, h5, h6, blockquote, table) {
	margin-block-end: 0;
}
.tg .tg-prose.tg-prose .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap,
.tg .tg-prose.tg-prose .elementor-widget-text-editor .elementor-drop-cap {
	float: none;
	margin: 0;
	font-size: inherit;
	color: inherit;
}

/* Image widget: yuvarlatılmış köşe, yazarın verdiği genişlik/hiza kalır. */
.tg .tg-prose.tg-prose .elementor-widget-image img {
	display: inline-block;
	max-width: 100%;
	height: auto;
	border-radius: 20px;
	vertical-align: middle;
}
.tg .tg-prose.tg-prose .elementor-widget-image .widget-image-caption {
	margin-top: 8px;
}

/* Spacer widget: boşluğu prose ritmi verir; boş satır bırakmasın. */
.tg .tg-prose.tg-prose .elementor-widget-spacer {
	display: none;
}

/* Divider widget: prototip çizgi rengi. */
.tg .tg-prose.tg-prose .elementor-widget-divider {
	--divider-color: var(--tgp-line);
}

/* Button widget: prototipin birincil kırmızı butonu (h-[52px] px-7 text-[14px] font-bold rounded-full bg-red + --sp gölgesi). */
.tg .tg-prose.tg-prose .elementor-widget-button .elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 52px;
	padding: 0 28px;
	border: 0;
	border-radius: 9999px;
	background: var(--tgp-red);
	color: #fff;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: none;
	text-decoration: none;
	white-space: nowrap;
	fill: #fff;
	box-shadow: 0 4px 0 #8e1520, 0 10px 22px rgba(174, 28, 39, .4), inset 0 1.5px 0 rgba(255, 255, 255, .28), inset 0 -2px 0 rgba(0, 0, 0, .12);
	transition: transform .15s, box-shadow .15s, background-color .15s, color .15s;
}
.tg .tg-prose.tg-prose .elementor-widget-button .elementor-button:hover,
.tg .tg-prose.tg-prose .elementor-widget-button .elementor-button:focus-visible {
	background: #b92230;
	color: #fff;
	transform: translateY(-2px);
}
.tg .tg-prose.tg-prose .elementor-widget-button .elementor-button:active {
	transform: translateY(3px);
	box-shadow: 0 1px 0 #8e1520;
}
.tg .tg-prose.tg-prose .elementor-widget-button .elementor-button-content-wrapper {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
@media (max-width: 767px) {
	.tg .tg-prose.tg-prose .elementor-widget-button .elementor-button {
		width: 100%;
	}
}

/* Video / gömülü widget'lar sütunu aşmasın. */
.tg .tg-prose.tg-prose .elementor-widget-video .elementor-wrapper {
	overflow: hidden;
	border-radius: 20px;
}
