/* uKONTENTowani - uklad wpisu encyklopedycznego 1.0.0
   Dziala tylko na pojedynczym wpisie (single post). */

.single-post {
	--ukon-ground: #FFFFFF;
	--ukon-surface: #F5F1F3;
	--ukon-surface-2: #EDE6EA;
	--ukon-ink: #1A1418;
	--ukon-ink-2: #574E55;
	--ukon-ink-3: #7C737C;
	--ukon-line: #DFD6DB;
	--ukon-accent: #6E2846;
	--ukon-accent-soft: #F7EDF1;
	--ukon-fact-soft: #ECF1F6;
	--ukon-alert: #8E3418;
	--ukon-alert-soft: #FBEEE8;
	--ukon-measure: 74ch;
}

/* --- szerokosc strony ---
   Astra zweza kontener regula z identyfikatorem
   (.ast-separate-container #content .ast-container), wiec tu tez musi byc
   identyfikator, inaczej nasza szerokosc przegra w kaskadzie. */
.single-post #content.site-content .ast-container {
	max-width: 1560px;
	padding-left: 28px;
	padding-right: 28px;
}

@media (min-width: 1500px) {
	.single-post #content.site-content .ast-container {
		padding-left: 40px;
		padding-right: 40px;
	}
}

/* wewnetrzny padding bialej karty: Astra daje 3em, przy szerokim ukladzie to za duzo */
.single-post.ast-separate-container .ast-article-single {
	padding: 2.4em 2.2em;
}

@media (max-width: 921px) {
	.single-post.ast-separate-container .ast-article-single {
		padding: 1.5em 1.2em;
	}
}

.single-post #primary {
	width: 100%;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

/* na wpisie kolumna poboczna zastepuje widget-area motywu */
.single-post #secondary {
	display: none;
}

/* --- naglowek wpisu --- */
.single-post .entry-header {
	max-width: var(--ukon-measure);
	margin-bottom: 26px;
}

.single-post .entry-title {
	font-family: Archivo, "Segoe UI", system-ui, sans-serif;
	font-size: clamp(2.2rem, 4.4vw, 3.1rem);
	line-height: 1.08;
	letter-spacing: -0.022em;
	font-weight: 700;
	color: var(--ukon-ink);
	text-wrap: balance;
	margin-bottom: 0;
}

.single-post .entry-meta,
.single-post .ast-single-post-order,
.single-post .post-navigation {
	display: none;
}

/* --- siatka --- */
.ukon-uklad {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 40px;
	align-items: start;
}

@media (min-width: 1080px) {
	.ukon-uklad {
		grid-template-columns: 210px minmax(0, var(--ukon-measure)) 270px;
		gap: 48px;
	}

	.ukon-szyna {
		order: -1;
	}
}

@media (min-width: 1400px) {
	.ukon-uklad {
		grid-template-columns: 240px minmax(0, var(--ukon-measure)) 320px;
		gap: 64px;
	}
}

/* --- kolumna tekstu --- */
.ukon-tekst {
	font-family: "Source Serif 4", "Iowan Old Style", Georgia, serif;
	font-size: 19px;
	line-height: 1.72;
	color: var(--ukon-ink);
	min-width: 0;
}

.ukon-tekst p {
	margin: 0 0 1.05em;
}

.ukon-tekst > p:first-of-type {
	font-size: 1.2rem;
	line-height: 1.62;
	margin-bottom: 1.1em;
}

.ukon-tekst a {
	color: var(--ukon-accent);
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}

.ukon-tekst h2.ukon-sekcja {
	font-family: Archivo, "Segoe UI", system-ui, sans-serif;
	font-size: 1.6rem;
	line-height: 1.24;
	letter-spacing: -0.015em;
	font-weight: 600;
	color: var(--ukon-ink);
	margin: 48px 0 4px;
	text-wrap: balance;
	scroll-margin-top: 90px;
}

.ukon-tekst h2.ukon-sekcja + p {
	margin-top: 10px;
}

.ukon-tekst h3 {
	font-family: Archivo, "Segoe UI", system-ui, sans-serif;
	font-size: 1.18rem;
	font-weight: 600;
	line-height: 1.3;
	margin: 30px 0 6px;
}

.ukon-tekst ul,
.ukon-tekst ol {
	padding-left: 1.15em;
	margin: 0 0 1.2em;
}

.ukon-tekst li {
	margin-bottom: 0.5em;
}

.ukon-tekst strong {
	font-weight: 600;
}

/* --- blok ostrzegawczy (klasa dopisywana w tresci) --- */
.ukon-tekst .ukon-alert {
	border-left: 3px solid var(--ukon-alert);
	background: var(--ukon-alert-soft);
	padding: 18px 22px;
	margin: 30px 0;
}

.ukon-tekst .ukon-alert > :last-child {
	margin-bottom: 0;
}

.ukon-tekst .ukon-alert .tag {
	font-family: Archivo, sans-serif;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ukon-alert);
	display: block;
	margin-bottom: 6px;
}

/* --- tabele: szersze niz kolumna tekstu --- */
.ukon-tekst figure.wp-block-table,
.ukon-tekst .wp-block-table {
	overflow-x: auto;
	margin: 30px 0;
}

@media (min-width: 1080px) {
	.ukon-tekst figure.wp-block-table,
	.ukon-tekst .wp-block-table {
		margin-right: -48px;
	}
}

@media (min-width: 1400px) {
	.ukon-tekst figure.wp-block-table,
	.ukon-tekst .wp-block-table {
		margin-right: -64px;
	}
}

.ukon-tekst table {
	border-collapse: collapse;
	width: 100%;
	font-family: "Source Serif 4", Georgia, serif;
	font-size: 0.95rem;
	line-height: 1.5;
	border: 0;
}

.ukon-tekst table th,
.ukon-tekst table td {
	text-align: left;
	padding: 12px 16px;
	border: 0;
	border-bottom: 1px solid var(--ukon-line);
	vertical-align: top;
}

.ukon-tekst table thead th {
	font-family: Archivo, sans-serif;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ukon-ink-3);
	border-bottom: 1px solid var(--ukon-ink-3);
}

.ukon-tekst table tbody tr:nth-child(odd) {
	background: var(--ukon-surface);
}

.ukon-tekst table td:first-child {
	font-family: Archivo, sans-serif;
	font-weight: 600;
	font-size: 0.92rem;
}

.ukon-tekst figcaption,
.ukon-tekst table caption {
	caption-side: bottom;
	text-align: left;
	padding-top: 10px;
	font-family: Archivo, sans-serif;
	font-size: 12.5px;
	color: var(--ukon-ink-3);
}

/* --- FAQ Yoasta --- */
.ukon-tekst .schema-faq {
	margin: 48px 0 0;
	border-top: 1px solid var(--ukon-line);
}

.ukon-tekst .schema-faq-section {
	border-bottom: 1px solid var(--ukon-line);
	padding: 16px 0;
}

.ukon-tekst .schema-faq-question {
	display: block;
	font-family: Archivo, sans-serif;
	font-weight: 600;
	font-size: 1.04rem;
	line-height: 1.4;
	color: var(--ukon-ink);
	margin-bottom: 6px;
}

.ukon-tekst .schema-faq-answer {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--ukon-ink-2);
	margin: 0;
}

/* --- szyna: spis tresci --- */
.ukon-szyna {
	align-self: start;
	min-width: 0;
}

@media (min-width: 1080px) {
	.ukon-szyna {
		position: sticky;
		top: 24px;
	}
}

.ukon-etykieta {
	font-family: Archivo, sans-serif;
	font-size: 11.5px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--ukon-ink-3);
	font-weight: 600;
	margin: 0 0 12px;
}

.ukon-toc ul {
	list-style: none;
	margin: 0 0 28px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
	border-left: 1px solid var(--ukon-line);
}

.ukon-toc li {
	margin: 0;
}

.ukon-toc a {
	display: block;
	padding: 6px 0 6px 14px;
	margin-left: -1px;
	border-left: 2px solid transparent;
	font-family: Archivo, sans-serif;
	font-size: 14px;
	line-height: 1.35;
	color: var(--ukon-ink-2);
	text-decoration: none;
}

.ukon-toc a:hover,
.ukon-toc a:focus {
	color: var(--ukon-accent);
}

.ukon-toc a.ukon-tu {
	border-left-color: var(--ukon-accent);
	color: var(--ukon-accent);
	font-weight: 600;
}

.ukon-szyna-kat a {
	display: block;
	padding: 4px 0;
	font-family: Archivo, sans-serif;
	font-size: 13.5px;
	line-height: 1.5;
	color: var(--ukon-ink-2);
	text-decoration: none;
}

.ukon-szyna-kat a:hover {
	color: var(--ukon-accent);
}

/* --- kolumna poboczna --- */
.ukon-poboczna {
	display: flex;
	flex-direction: column;
	gap: 28px;
	align-self: start;
	font-family: Archivo, "Segoe UI", system-ui, sans-serif;
	min-width: 0;
}

@media (min-width: 1080px) {
	.ukon-poboczna {
		position: sticky;
		top: 24px;
	}
}

.ukon-box {
	border: 1px solid var(--ukon-line);
	background: var(--ukon-surface);
}

.ukon-box h2 {
	font-family: Archivo, sans-serif;
	font-size: 11.5px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--ukon-ink-3);
	font-weight: 600;
	margin: 0;
	padding: 14px 18px 0;
}

.ukon-box-in {
	padding: 10px 18px 18px;
}

.ukon-box-plain {
	border: 0;
	background: transparent;
	border-top: 1px solid var(--ukon-line);
	padding-top: 16px;
}

.ukon-box-plain h2 {
	padding: 0 0 10px;
}

.ukon-box-plain .ukon-box-in {
	padding: 0;
}

.ukon-tldr {
	margin: 0;
	padding-left: 1.05em;
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.ukon-tldr li {
	font-size: 13.5px;
	line-height: 1.5;
	color: var(--ukon-ink-2);
	margin: 0;
}

.ukon-tldr li b {
	color: var(--ukon-ink);
	font-weight: 600;
}

.ukon-byline {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0;
	font-size: 13.5px;
	line-height: 1.45;
}

.ukon-byline div {
	display: flex;
	flex-direction: column;
}

.ukon-byline dt {
	color: var(--ukon-ink-3);
	font-size: 11px;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	font-weight: 600;
}

.ukon-byline dd {
	margin: 2px 0 0;
	color: var(--ukon-ink);
}

.ukon-byline dd b {
	font-weight: 600;
}

.ukon-powiazane {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}

.ukon-powiazane li + li {
	border-top: 1px solid var(--ukon-line);
}

.ukon-powiazane li {
	margin: 0;
}

.ukon-powiazane a {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 10px 0;
	text-decoration: none;
	color: var(--ukon-ink);
}

.ukon-powiazane a:hover .tyt {
	color: var(--ukon-accent);
}

.ukon-powiazane .kat {
	font-size: 10.5px;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--ukon-ink-3);
}

.ukon-powiazane .tyt {
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.3;
}

.ukon-disclaimer {
	background: var(--ukon-fact-soft);
	border: 1px solid var(--ukon-line);
	padding: 14px 16px;
	font-size: 12.5px;
	line-height: 1.6;
	color: var(--ukon-ink-2);
	margin: 0;
}

.ukon-disclaimer b {
	color: var(--ukon-ink);
}

/* --- dostepnosc --- */
.ukon-uklad a:focus-visible {
	outline: 2px solid var(--ukon-accent);
	outline-offset: 3px;
}
