.nccbe-reader {
	--nccbe-page-width: 665px;
	--nccbe-page-height: 945px;
	--nccbe-font-size: 17px;
	--nccbe-line-height: 1.62;
	--nccbe-text: #1b1b1b;
	--nccbe-accent: #744a30;
	--nccbe-paper: #fffdf9;
	--nccbe-ui-bg: #f4f1ed;
	--nccbe-ui-text: #25221f;
	--nccbe-ui-border: #cfc6bc;
	--nccbe-stage-bg: #e7e1da;
	--nccbe-spread-gap: 22px;
	--nccbe-page-padding-x: 62px;
	--nccbe-page-padding-top: 66px;
	--nccbe-page-padding-bottom: 62px;
	box-sizing: border-box !important;
	position: relative;
	isolation: isolate;
	max-width: 1500px;
	margin: 2rem auto;
	color: var(--nccbe-text) !important;
	font-style: normal !important;
	text-transform: none !important;
	letter-spacing: normal;
}

.nccbe-reader,
.nccbe-reader *,
.nccbe-reader *::before,
.nccbe-reader *::after {
	box-sizing: border-box !important;
}

.nccbe-reader button,
.nccbe-reader input,
.nccbe-reader select,
.nccbe-reader textarea {
	font: inherit;
}

.nccbe-html-reader,
body.nccbe-body-reader {
	overflow: hidden !important;
	height: 100% !important;
}

.nccbe-reader.nccbe-standalone {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147483000 !important;
	display: flex !important;
	flex-direction: column !important;
	width: 100vw !important;
	max-width: none !important;
	height: 100dvh !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	background: var(--nccbe-stage-bg) !important;
}

/* Formaty książki 0.19.1. Wartości zachowują rzeczywiste proporcje stron. */
.nccbe-format-a6 {
	--nccbe-page-width: 397px;
	--nccbe-page-height: 559px;
	--nccbe-page-padding-x: 38px;
	--nccbe-page-padding-top: 42px;
	--nccbe-page-padding-bottom: 40px;
}

.nccbe-format-b6 {
	--nccbe-page-width: 472px;
	--nccbe-page-height: 665px;
	--nccbe-page-padding-x: 44px;
	--nccbe-page-padding-top: 49px;
	--nccbe-page-padding-bottom: 46px;
}

.nccbe-format-125-195 {
	--nccbe-page-width: 472px;
	--nccbe-page-height: 737px;
	--nccbe-page-padding-x: 45px;
	--nccbe-page-padding-top: 52px;
	--nccbe-page-padding-bottom: 49px;
}

.nccbe-format-145-205 {
	--nccbe-page-width: 548px;
	--nccbe-page-height: 775px;
	--nccbe-page-padding-x: 50px;
	--nccbe-page-padding-top: 55px;
	--nccbe-page-padding-bottom: 52px;
}

.nccbe-format-165-235 {
	--nccbe-page-width: 624px;
	--nccbe-page-height: 888px;
	--nccbe-page-padding-x: 58px;
	--nccbe-page-padding-top: 62px;
	--nccbe-page-padding-bottom: 58px;
}

.nccbe-format-five-eight {
	--nccbe-page-width: 480px;
	--nccbe-page-height: 768px;
	--nccbe-page-padding-x: 46px;
	--nccbe-page-padding-top: 54px;
	--nccbe-page-padding-bottom: 50px;
}

.nccbe-format-fivehalf-eighthalf {
	--nccbe-page-width: 528px;
	--nccbe-page-height: 816px;
	--nccbe-page-padding-x: 49px;
	--nccbe-page-padding-top: 57px;
	--nccbe-page-padding-bottom: 53px;
}

.nccbe-format-a5 {
	--nccbe-page-width: 559px;
	--nccbe-page-height: 794px;
	--nccbe-page-padding-x: 52px;
	--nccbe-page-padding-top: 58px;
	--nccbe-page-padding-bottom: 54px;
}

.nccbe-format-six-nine {
	--nccbe-page-width: 576px;
	--nccbe-page-height: 864px;
	--nccbe-page-padding-x: 54px;
	--nccbe-page-padding-top: 62px;
	--nccbe-page-padding-bottom: 58px;
}

.nccbe-body-literary { font-family: Charter, "Bitstream Charter", "Iowan Old Style", Cambria, Georgia, serif !important; }
.nccbe-body-georgia { font-family: Georgia, "Times New Roman", serif !important; }
.nccbe-body-palatino { font-family: Palatino, "Palatino Linotype", "Book Antiqua", serif !important; }
.nccbe-body-times { font-family: "Times New Roman", Times, serif !important; }
.nccbe-body-system { font-family: Inter, Aptos, Arial, sans-serif !important; }

.nccbe-head-humanist .nccbe-page-body h1,
.nccbe-head-humanist .nccbe-page-body h2,
.nccbe-head-humanist .nccbe-page-body h3 { font-family: Optima, Candara, "Trebuchet MS", sans-serif !important; }
.nccbe-head-classic .nccbe-page-body h1,
.nccbe-head-classic .nccbe-page-body h2,
.nccbe-head-classic .nccbe-page-body h3 { font-family: Garamond, "EB Garamond", Georgia, serif !important; }
.nccbe-head-system .nccbe-page-body h1,
.nccbe-head-system .nccbe-page-body h2,
.nccbe-head-system .nccbe-page-body h3 { font-family: Inter, Aptos, Arial, sans-serif !important; }

.nccbe-toolbar {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: .75rem !important;
	position: sticky !important;
	top: .75rem !important;
	z-index: 30 !important;
	width: fit-content !important;
	max-width: calc(100% - 1rem) !important;
	margin: 0 auto 1rem !important;
	padding: .55rem .7rem !important;
	border: 1px solid var(--nccbe-ui-border) !important;
	border-radius: 999px !important;
	background: rgba(250, 248, 245, .97) !important;
	box-shadow: 0 7px 22px rgba(35, 28, 22, .14) !important;
	backdrop-filter: blur(10px);
	color: var(--nccbe-ui-text) !important;
}

.nccbe-standalone .nccbe-toolbar {
	position: relative !important;
	top: auto !important;
	flex: 0 0 auto !important;
	margin: 10px auto 8px !important;
}

.nccbe-reader.nccbe-reader .nccbe-toolbar button {
	appearance: none !important;
	-webkit-appearance: none !important;
	min-height: 36px !important;
	margin: 0 !important;
	padding: .46rem .82rem !important;
	border: 1px solid #b9afa5 !important;
	border-radius: 999px !important;
	background: #fffdf9 !important;
	box-shadow: none !important;
	color: #25221f !important;
	font-family: Inter, Aptos, Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	letter-spacing: 0 !important;
	text-decoration: none !important;
	text-transform: none !important;
	cursor: pointer !important;
}

.nccbe-reader.nccbe-reader .nccbe-toolbar button:hover,
.nccbe-reader.nccbe-reader .nccbe-toolbar button:focus-visible {
	border-color: var(--nccbe-accent) !important;
	background: #ffffff !important;
	color: var(--nccbe-ui-text) !important;
	outline: 2px solid color-mix(in srgb, var(--nccbe-accent) 32%, transparent) !important;
	outline-offset: 1px !important;
}

.nccbe-reader.nccbe-reader .nccbe-toolbar button:disabled {
	opacity: .35 !important;
	cursor: default !important;
}

.nccbe-prev,
.nccbe-next {
	min-width: 38px !important;
	padding-inline: .55rem !important;
	font-size: 22px !important;
	font-weight: 500 !important;
}

.nccbe-counter {
	min-width: 9.5rem !important;
	color: #403a35 !important;
	font: 600 13px/1.2 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-align: center !important;
	text-transform: none !important;
}

.nccbe-stage {
	position: relative !important;
	overflow: hidden !important;
	min-height: min(78vh, var(--nccbe-page-height));
	outline: none !important;
	background: transparent !important;
	perspective: 2200px;
}

.nccbe-standalone .nccbe-stage {
	flex: 1 1 auto !important;
	min-height: 0 !important;
	width: 100% !important;
	padding: 6px 12px 12px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.nccbe-pages {
	display: flex !important;
	justify-content: center !important;
	align-items: flex-start !important;
	gap: var(--nccbe-spread-gap) !important;
	width: max-content !important;
	max-width: none !important;
	margin: 0 auto !important;
	transform-origin: top center !important;
	will-change: transform;
}

.nccbe-measure-pages {
	position: absolute !important;
	top: 0 !important;
	left: -100000px !important;
	display: block !important;
	width: var(--nccbe-page-width) !important;
	transform: none !important;
	visibility: hidden !important;
}

.nccbe-reader.nccbe-reader .nccbe-page {
	position: relative !important;
	flex: 0 0 var(--nccbe-page-width) !important;
	width: var(--nccbe-page-width) !important;
	max-width: none !important;
	height: var(--nccbe-page-height) !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
	border-radius: 1px !important;
	background: var(--nccbe-paper) !important;
	box-shadow: 0 14px 40px rgba(33, 25, 19, .22) !important;
	color: var(--nccbe-text) !important;
	font-family: inherit !important;
	font-size: var(--nccbe-font-size) !important;
	font-style: normal !important;
	font-weight: 400 !important;
	line-height: var(--nccbe-line-height) !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	transform-style: preserve-3d;
	backface-visibility: hidden;
	cursor: pointer;
}

.nccbe-reader.nccbe-reader .nccbe-page[hidden] { display: none !important; }

.nccbe-page::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(90deg, rgba(72, 56, 43, .035), transparent 7%, transparent 93%, rgba(72, 56, 43, .045));
}

.nccbe-reader.nccbe-reader .nccbe-page-inner {
	position: absolute !important;
	inset: 0 !important;
	padding: var(--nccbe-page-padding-top) var(--nccbe-page-padding-x) var(--nccbe-page-padding-bottom) !important;
	background: var(--nccbe-paper) !important;
	color: var(--nccbe-text) !important;
}

.nccbe-page-header {
	position: absolute !important;
	top: 24px !important;
	left: var(--nccbe-page-padding-x) !important;
	right: var(--nccbe-page-padding-x) !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	color: #706a64 !important;
	font: 500 11px/1.2 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	white-space: nowrap !important;
	text-overflow: ellipsis !important;
}

.nccbe-page[data-side="left"] .nccbe-page-header { text-align: left !important; }
.nccbe-page[data-side="right"] .nccbe-page-header { text-align: right !important; }

.nccbe-reader.nccbe-reader .nccbe-page-body {
	height: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	background: transparent !important;
	color: var(--nccbe-text) !important;
	font-family: inherit !important;
	font-size: var(--nccbe-font-size) !important;
	font-style: normal !important;
	font-weight: 400 !important;
	line-height: var(--nccbe-line-height) !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.nccbe-page-number {
	position: absolute !important;
	bottom: 24px !important;
	left: 0 !important;
	right: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #756e67 !important;
	font: 500 12px/1 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-align: center !important;
	text-transform: none !important;
}

.nccbe-reader.nccbe-reader .nccbe-page-body p,
.nccbe-reader.nccbe-reader .nccbe-page-body li,
.nccbe-reader.nccbe-reader .nccbe-page-body blockquote,
.nccbe-reader.nccbe-reader .nccbe-page-body dd,
.nccbe-reader.nccbe-reader .nccbe-page-body dt,
.nccbe-reader.nccbe-reader .nccbe-page-body figcaption {
	color: var(--nccbe-text) !important;
	font-family: inherit !important;
	font-size: inherit;
	font-style: inherit;
	line-height: inherit;
	letter-spacing: normal !important;
	text-transform: none !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.nccbe-reader.nccbe-reader .nccbe-page-body p {
	margin: 0 0 .78em !important;
	padding: 0 !important;
	orphans: 3;
	widows: 3;
}

.nccbe-page-body .nccbe-fragment-first { margin-bottom: 0 !important; }
.nccbe-page-body .nccbe-fragment-continuation { margin-top: 0 !important; }

.nccbe-reader.nccbe-reader.nccbe-justify .nccbe-page-body p,
.nccbe-reader.nccbe-reader.nccbe-justify .nccbe-page-body blockquote,
.nccbe-reader.nccbe-reader.nccbe-justify .nccbe-page-body li,
.nccbe-reader.nccbe-reader.nccbe-justify .nccbe-page-body dd {
	text-align: justify !important;
	text-justify: inter-word !important;
}

.nccbe-reader.nccbe-reader.nccbe-align-left .nccbe-page-body p,
.nccbe-reader.nccbe-reader.nccbe-align-left .nccbe-page-body blockquote,
.nccbe-reader.nccbe-reader.nccbe-align-left .nccbe-page-body li,
.nccbe-reader.nccbe-reader.nccbe-align-left .nccbe-page-body dd {
	text-align: left !important;
}

.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body,
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body p,
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body li,
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body blockquote,
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body dd {
	-webkit-hyphens: auto !important;
	hyphens: auto !important;
	hyphenate-character: "‐";
	hyphenate-limit-chars: 6 3 3;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.nccbe-reader.nccbe-reader.nccbe-hyphenate.nccbe-hyphenator-ready .nccbe-page-body,
.nccbe-reader.nccbe-reader.nccbe-hyphenate.nccbe-hyphenator-ready .nccbe-page-body p,
.nccbe-reader.nccbe-reader.nccbe-hyphenate.nccbe-hyphenator-ready .nccbe-page-body li,
.nccbe-reader.nccbe-reader.nccbe-hyphenate.nccbe-hyphenator-ready .nccbe-page-body blockquote,
.nccbe-reader.nccbe-reader.nccbe-hyphenate.nccbe-hyphenator-ready .nccbe-page-body dd {
	-webkit-hyphens: manual !important;
	hyphens: manual !important;
}

.nccbe-reader.nccbe-reader.nccbe-no-hyphenate .nccbe-page-body,
.nccbe-reader.nccbe-reader.nccbe-no-hyphenate .nccbe-page-body p,
.nccbe-reader.nccbe-reader.nccbe-no-hyphenate .nccbe-page-body li,
.nccbe-reader.nccbe-reader.nccbe-no-hyphenate .nccbe-page-body blockquote,
.nccbe-reader.nccbe-reader.nccbe-no-hyphenate .nccbe-page-body dd {
	-webkit-hyphens: none !important;
	hyphens: none !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.nccbe-reader.nccbe-reader .nccbe-page-body h1,
.nccbe-reader.nccbe-reader .nccbe-page-body h2,
.nccbe-reader.nccbe-reader .nccbe-page-body h3 {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--nccbe-accent) !important;
	font-style: normal !important;
	font-weight: 700 !important;
	text-transform: none !important;
	break-after: avoid;
	page-break-after: avoid;
}

.nccbe-page-body h1 {
	margin: .25em 0 .9em !important;
	font-size: 2em !important;
	line-height: 1.13 !important;
	letter-spacing: .02em !important;
	text-align: center !important;
}

.nccbe-page-body h2 {
	margin: .2em 0 1em !important;
	font-size: 1.62em !important;
	line-height: 1.18 !important;
	letter-spacing: .01em !important;
	text-align: center !important;
}

.nccbe-page-body h3 {
	margin: 1em 0 .45em !important;
	font-size: 1.08em !important;
	line-height: 1.25 !important;
	text-align: left !important;
}

.nccbe-page-body blockquote {
	margin: 1em 1.4em !important;
	padding: 0 0 0 1em !important;
	border: 0 !important;
	border-left: 3px solid var(--nccbe-accent) !important;
	background: transparent !important;
	color: #504942 !important;
}

.nccbe-page-body a,
.nccbe-page-body a:visited,
.nccbe-page-body a:hover {
	color: var(--nccbe-accent) !important;
	text-decoration: underline !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: .12em !important;
}

.nccbe-page-body img {
	display: block !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
}

.nccbe-page-body ul,
.nccbe-page-body ol {
	margin: .75em 0 .85em 1.4em !important;
	padding: 0 !important;
	color: var(--nccbe-text) !important;
}

.nccbe-page-body li { margin: 0 0 .35em !important; padding: 0 !important; }

.nccbe-module { display: flow-root !important; }
.nccbe-module-part { min-height: 650px !important; display: grid !important; place-content: center !important; text-align: center !important; }
.nccbe-module-part h1 { max-width: 12em !important; font-size: 2.45em !important; }

.nccbe-sources {
	margin: 0 0 1.2em !important;
	padding: .8em 1em !important;
	border: 0 !important;
	border-top: 1px solid color-mix(in srgb, var(--nccbe-accent) 35%, transparent) !important;
	border-bottom: 1px solid color-mix(in srgb, var(--nccbe-accent) 35%, transparent) !important;
	background: transparent !important;
	color: var(--nccbe-text) !important;
	font-size: .76em !important;
	line-height: 1.42 !important;
}

.nccbe-sources > div {
	display: grid !important;
	grid-template-columns: 9.5em 1fr !important;
	gap: .7em !important;
}

.nccbe-sources dt { font-weight: 700 !important; }
.nccbe-sources dd { margin: 0 !important; }

.nccbe-comment {
	margin: 1em 0 !important;
	padding: .9em 1.05em !important;
	border: 0 !important;
	border-left: 4px solid var(--nccbe-accent) !important;
	background: color-mix(in srgb, var(--nccbe-accent) 8%, var(--nccbe-paper)) !important;
	color: var(--nccbe-text) !important;
}
.nccbe-comment h3 { margin-top: 0 !important; }

.nccbe-figure {
	margin-top: .25em !important;
	margin-bottom: 1em !important;
	break-inside: avoid;
	page-break-inside: avoid;
}
.nccbe-figure img {
	width: 100% !important;
	max-height: calc(var(--nccbe-page-height) - var(--nccbe-page-padding-top) - var(--nccbe-page-padding-bottom) - 90px) !important;
	object-fit: contain !important;
}
.nccbe-figure figcaption {
	margin-top: .35em !important;
	color: #6e665f !important;
	font-size: .68em !important;
	line-height: 1.35 !important;
	text-align: left !important;
}
.nccbe-size-100 { width: 100% !important; }
.nccbe-size-50 { width: 50% !important; }
.nccbe-size-33 { width: 33.333% !important; }
.nccbe-size-25 { width: 25% !important; }
.nccbe-size-12-5 { width: 12.5% !important; }
.nccbe-size-10 { width: 10% !important; }
.nccbe-position-center { margin-left: auto !important; margin-right: auto !important; clear: both !important; }
.nccbe-position-full { width: 100% !important; clear: both !important; }
.nccbe-position-left { float: left !important; margin-right: 1.15em !important; }
.nccbe-position-right { float: right !important; margin-left: 1.15em !important; }
.nccbe-orientation-landscape img { aspect-ratio: 16 / 9; object-fit: cover !important; }
.nccbe-orientation-portrait img { aspect-ratio: 2 / 3; object-fit: cover !important; }
.nccbe-orientation-square img { aspect-ratio: 1; object-fit: cover !important; }

.nccbe-module-cover { height: 100% !important; }
.nccbe-cover-art { position: absolute !important; inset: 0 !important; background: #181512 !important; }
.nccbe-cover-image { width: 100% !important; height: 100% !important; object-fit: cover !important; }
.nccbe-cover-overlay {
	position: absolute !important;
	inset: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;
	padding: 9% 8% !important;
	background: linear-gradient(180deg, rgba(0,0,0,.55) 0, rgba(0,0,0,.08) 42%, rgba(0,0,0,.38) 100%) !important;
	color: #fff !important;
	text-align: center !important;
	text-shadow: 0 2px 9px rgba(0,0,0,.8) !important;
}
.nccbe-cover-overlay h1 {
	max-width: 92% !important;
	margin: 0 !important;
	color: #fff !important;
	font-size: 2.15em !important;
	line-height: 1.12 !important;
	letter-spacing: .035em !important;
	text-align: center !important;
}
.nccbe-cover-subtitle { max-width: 85% !important; margin-top: .8em !important; color: #fff !important; font-size: 1.05em !important; text-align: center !important; }
.nccbe-cover-credit {
	position: absolute !important;
	z-index: 2 !important;
	bottom: 14px !important;
	left: 22px !important;
	right: 22px !important;
	margin: 0 !important;
	color: rgba(255,255,255,.82) !important;
	font-size: 9px !important;
	text-align: right !important;
	text-shadow: 0 1px 4px #000 !important;
}

.nccbe-module-title { height: 100% !important; }

.nccbe-title-page { position: relative !important; overflow: hidden !important; }
.nccbe-title-page-content { position: relative !important; z-index: 1 !important; width: 100% !important; height: 100% !important; min-height: 0 !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; }
.nccbe-title-page-background { position: absolute !important; inset: 0 !important; z-index: 0 !important; }
.nccbe-title-page-background::after { content: ""; position: absolute !important; inset: 0 !important; background: linear-gradient(180deg, rgba(255,253,249,.88), rgba(255,253,249,.96)); }
.nccbe-title-page-background .nccbe-title-image { width: 100% !important; height: 100% !important; object-fit: cover !important; opacity: .22 !important; }
.nccbe-title-page-figure { width: 100% !important; max-width: 74% !important; margin: 0 auto 1.25em !important; }
.nccbe-title-page-figure img { width: 100% !important; max-height: 230px !important; object-fit: contain !important; }
.nccbe-title-page-figure-bottom { margin: 1.2em auto 1.4em !important; }
.nccbe-title-page { height: 100% !important; min-height: 0 !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; }
.nccbe-title-author { margin: 2.8em 0 5em !important; font-size: 1em !important; letter-spacing: .08em !important; text-transform: uppercase !important; text-align: center !important; }
.nccbe-title-page h1 { max-width: 13em !important; margin: 0 !important; font-size: 2.25em !important; text-align: center !important; }
.nccbe-title-subtitle { max-width: 22em !important; margin: 1em auto 3.4em !important; text-align: center !important; }
.nccbe-volume-label { margin: 0 0 .6em !important; color: var(--nccbe-accent) !important; font-weight: 700 !important; letter-spacing: .12em !important; text-align: center !important; }
.nccbe-title-page h2 { max-width: 16em !important; margin: 0 !important; text-align: center !important; }
.nccbe-volume-subtitle { margin-top: .75em !important; text-align: center !important; font-style: italic !important; }
.nccbe-imprint { margin-top: auto !important; text-align: center !important; font-size: .82em !important; }
.nccbe-imprint p { margin: .15em 0 !important; text-align: center !important; }

.nccbe-toc-list { margin: 1.5em 0 0 !important; padding: 0 !important; list-style: none !important; }
.nccbe-toc-entry { display: grid !important; grid-template-columns: auto 1fr auto !important; align-items: end !important; gap: .45em !important; margin: 0 0 .7em !important; line-height: 1.3 !important; text-align: left !important; }
.nccbe-toc-entry::before { content: none !important; }
.nccbe-toc-dots { min-width: 1.5em !important; border-bottom: 1px dotted #8f877f !important; transform: translateY(-.25em); }
.nccbe-toc-page { font-variant-numeric: tabular-nums; }
.nccbe-toc-entry[data-type="part"] { margin-top: 1.25em !important; color: var(--nccbe-accent) !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .06em !important; }

.nccbe-source { display: none !important; }
.nccbe-reader.is-loading .nccbe-pages { opacity: .18; }
.nccbe-reader.is-loading .nccbe-counter::after {
	content: "";
	display: inline-block;
	width: .8em;
	height: .8em;
	margin-left: .55em;
	border: 2px solid #bbb;
	border-top-color: var(--nccbe-accent);
	border-radius: 50%;
	animation: nccbe-spin .8s linear infinite;
}

@keyframes nccbe-spin { to { transform: rotate(360deg); } }

.nccbe-page.nccbe-turn-out-forward { transform-origin: left center; animation: nccbe-turn-out-forward 150ms ease-in both; }
.nccbe-page.nccbe-turn-in-forward { transform-origin: right center; animation: nccbe-turn-in-forward 250ms cubic-bezier(.2,.72,.25,1) both; }
.nccbe-page.nccbe-turn-out-back { transform-origin: right center; animation: nccbe-turn-out-back 150ms ease-in both; }
.nccbe-page.nccbe-turn-in-back { transform-origin: left center; animation: nccbe-turn-in-back 250ms cubic-bezier(.2,.72,.25,1) both; }

@keyframes nccbe-turn-out-forward {
	from { transform: rotateY(0deg) translateX(0); opacity: 1; filter: brightness(1); }
	to { transform: rotateY(-12deg) translateX(-12px); opacity: .2; filter: brightness(.86); }
}
@keyframes nccbe-turn-in-forward {
	from { transform: rotateY(10deg) translateX(12px); opacity: .25; filter: brightness(.9); }
	to { transform: rotateY(0deg) translateX(0); opacity: 1; filter: brightness(1); }
}
@keyframes nccbe-turn-out-back {
	from { transform: rotateY(0deg) translateX(0); opacity: 1; filter: brightness(1); }
	to { transform: rotateY(12deg) translateX(12px); opacity: .2; filter: brightness(.86); }
}
@keyframes nccbe-turn-in-back {
	from { transform: rotateY(-10deg) translateX(-12px); opacity: .25; filter: brightness(.9); }
	to { transform: rotateY(0deg) translateX(0); opacity: 1; filter: brightness(1); }
}

@media (max-width: 850px) {
	.nccbe-reader.nccbe-embedded { margin-inline: -12px; }
	.nccbe-toolbar { border-radius: 16px !important; flex-wrap: wrap !important; }
	.nccbe-stage { min-height: 70vh; }
	.nccbe-standalone .nccbe-stage { min-height: 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
	.nccbe-page.nccbe-turn-out-forward,
	.nccbe-page.nccbe-turn-in-forward,
	.nccbe-page.nccbe-turn-out-back,
	.nccbe-page.nccbe-turn-in-back { animation: none !important; }
}

@page nccbe-a6 { size: 105mm 148mm; margin: 0; }
@page nccbe-b6 { size: 125mm 176mm; margin: 0; }
@page nccbe-125-195 { size: 125mm 195mm; margin: 0; }
@page nccbe-145-205 { size: 145mm 205mm; margin: 0; }
@page nccbe-165-235 { size: 165mm 235mm; margin: 0; }
@page nccbe-five-eight { size: 127mm 203.2mm; margin: 0; }
@page nccbe-fivehalf-eighthalf { size: 139.7mm 215.9mm; margin: 0; }
@page nccbe-b5 { size: 176mm 250mm; margin: 0; }
@page nccbe-a5 { size: A5 portrait; margin: 0; }
@page nccbe-six-nine { size: 152.4mm 228.6mm; margin: 0; }

@media print {
	/* Publikacja ekranowa. Nie generujemy z czytnika wersji do druku ani PDF. */
	body * { visibility: hidden !important; }
	body::before {
		content: "Ta publikacja jest przeznaczona do czytania w serwisie. Drukowanie z czytnika zostało wyłączone.";
		visibility: visible !important;
		display: block !important;
		max-width: 720px !important;
		margin: 48px auto !important;
		padding: 24px !important;
		font: 600 18px/1.5 Arial, sans-serif !important;
		color: #222 !important;
	}
}

/* Final isolation layer. Keep critical book styling above WordPress theme rules. */
.nccbe-reader.nccbe-reader.nccbe-body-literary { font-family: Charter, "Bitstream Charter", "Iowan Old Style", Cambria, Georgia, serif !important; }
.nccbe-reader.nccbe-reader.nccbe-body-georgia { font-family: Georgia, "Times New Roman", serif !important; }
.nccbe-reader.nccbe-reader.nccbe-body-palatino { font-family: Palatino, "Palatino Linotype", "Book Antiqua", serif !important; }
.nccbe-reader.nccbe-reader.nccbe-body-times { font-family: "Times New Roman", Times, serif !important; }
.nccbe-reader.nccbe-reader.nccbe-body-system { font-family: Inter, Aptos, Arial, sans-serif !important; }

.nccbe-reader.nccbe-reader.nccbe-head-humanist .nccbe-page-body h1,
.nccbe-reader.nccbe-reader.nccbe-head-humanist .nccbe-page-body h2,
.nccbe-reader.nccbe-reader.nccbe-head-humanist .nccbe-page-body h3 { font-family: Optima, Candara, "Trebuchet MS", sans-serif !important; }
.nccbe-reader.nccbe-reader.nccbe-head-classic .nccbe-page-body h1,
.nccbe-reader.nccbe-reader.nccbe-head-classic .nccbe-page-body h2,
.nccbe-reader.nccbe-reader.nccbe-head-classic .nccbe-page-body h3 { font-family: Garamond, "EB Garamond", Georgia, serif !important; }
.nccbe-reader.nccbe-reader.nccbe-head-system .nccbe-page-body h1,
.nccbe-reader.nccbe-reader.nccbe-head-system .nccbe-page-body h2,
.nccbe-reader.nccbe-reader.nccbe-head-system .nccbe-page-body h3 { font-family: Inter, Aptos, Arial, sans-serif !important; }

.nccbe-reader.nccbe-reader .nccbe-toolbar {
	border-color: var(--nccbe-ui-border) !important;
	background: rgba(250, 248, 245, .97) !important;
	box-shadow: 0 7px 22px rgba(35, 28, 22, .14) !important;
	color: var(--nccbe-ui-text) !important;
}
.nccbe-reader.nccbe-reader .nccbe-counter {
	color: #403a35 !important;
	font: 600 13px/1.2 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-header {
	color: #706a64 !important;
	font: 500 11px/1.2 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-number {
	color: #756e67 !important;
	font: 500 12px/1 Inter, Aptos, Arial, sans-serif !important;
}

.nccbe-reader.nccbe-reader .nccbe-cover-overlay,
.nccbe-reader.nccbe-reader .nccbe-cover-overlay h1,
.nccbe-reader.nccbe-reader .nccbe-cover-overlay .nccbe-cover-subtitle {
	color: #fff !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-cover-overlay h1 {
	margin: 0 !important;
	font-size: 2.15em !important;
	line-height: 1.12 !important;
	letter-spacing: .035em !important;
}
.nccbe-reader.nccbe-reader .nccbe-cover-overlay .nccbe-cover-subtitle {
	margin-top: .8em !important;
	font-size: 1.05em !important;
}
.nccbe-reader.nccbe-reader .nccbe-cover-credit {
	color: rgba(255,255,255,.82) !important;
	font-size: 9px !important;
	text-align: right !important;
	text-shadow: 0 1px 4px #000 !important;
}
.nccbe-reader.nccbe-reader .nccbe-title-author {
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-title-subtitle,
.nccbe-reader.nccbe-reader .nccbe-volume-label,
.nccbe-reader.nccbe-reader .nccbe-volume-subtitle,
.nccbe-reader.nccbe-reader .nccbe-imprint,
.nccbe-reader.nccbe-reader .nccbe-imprint p {
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-volume-label {
	color: var(--nccbe-accent) !important;
	font-weight: 700 !important;
	letter-spacing: .12em !important;
}
.nccbe-reader.nccbe-reader .nccbe-volume-subtitle { font-style: italic !important; }

/* Atomic pages need their own reset because some themes style article/figure elements globally. */
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-module {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--nccbe-text) !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-module-cover,
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-module-title { height: 100% !important; }

.nccbe-title-page { position: relative !important; overflow: hidden !important; }
.nccbe-title-page-content { position: relative !important; z-index: 1 !important; width: 100% !important; height: 100% !important; min-height: 0 !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; }
.nccbe-title-page-background { position: absolute !important; inset: 0 !important; z-index: 0 !important; }
.nccbe-title-page-background::after { content: ""; position: absolute !important; inset: 0 !important; background: linear-gradient(180deg, rgba(255,253,249,.88), rgba(255,253,249,.96)); }
.nccbe-title-page-background .nccbe-title-image { width: 100% !important; height: 100% !important; object-fit: cover !important; opacity: .22 !important; }
.nccbe-title-page-figure { width: 100% !important; max-width: 74% !important; margin: 0 auto 1.25em !important; }
.nccbe-title-page-figure img { width: 100% !important; max-height: 230px !important; object-fit: contain !important; }
.nccbe-title-page-figure-bottom { margin: 1.2em auto 1.4em !important; }
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-module-part {
	min-height: 650px !important;
	display: grid !important;
	place-content: center !important;
	text-align: center !important;
}

.nccbe-reader.nccbe-reader .nccbe-title-author {
	margin: 2.8em 0 5em !important;
	font-size: 1em !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-title-page h1 {
	max-width: 13em !important;
	margin: 0 !important;
	font-size: 2.25em !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-title-subtitle {
	max-width: 22em !important;
	margin: 1em auto 3.4em !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-volume-label {
	margin: 0 0 .6em !important;
	color: var(--nccbe-accent) !important;
	font-weight: 700 !important;
	letter-spacing: .12em !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-title-page h2 {
	max-width: 16em !important;
	margin: 0 !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-volume-subtitle {
	margin: .75em 0 0 !important;
	text-align: center !important;
	font-style: italic !important;
}
.nccbe-reader.nccbe-reader .nccbe-imprint {
	margin-top: auto !important;
	text-align: center !important;
	font-size: .82em !important;
}
.nccbe-reader.nccbe-reader .nccbe-imprint p {
	margin: .15em 0 !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-cover-subtitle {
	max-width: 85% !important;
	margin: .8em 0 0 !important;
	color: #fff !important;
	font-size: 1.05em !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-cover-credit {
	margin: 0 !important;
	color: rgba(255,255,255,.82) !important;
	font-size: 9px !important;
	text-align: right !important;
	text-shadow: 0 1px 4px #000 !important;
}

.nccbe-reader.nccbe-reader .nccbe-figure {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* Paragraph components must outrank the generic prose paragraph reset. */
.nccbe-reader.nccbe-reader .nccbe-page-body p.nccbe-title-author {
	margin: 2.8em 0 5em !important;
	font-size: 1em !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body p.nccbe-title-subtitle {
	max-width: 22em !important;
	margin: 1em auto 3.4em !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body p.nccbe-volume-label {
	margin: 0 0 .6em !important;
	color: var(--nccbe-accent) !important;
	font-weight: 700 !important;
	letter-spacing: .12em !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body p.nccbe-volume-subtitle {
	margin: .75em 0 0 !important;
	text-align: center !important;
	font-style: italic !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-imprint p {
	margin: .15em 0 !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-cover-overlay p.nccbe-cover-subtitle {
	max-width: 85% !important;
	margin: .8em 0 0 !important;
	color: #fff !important;
	font-size: 1.05em !important;
	text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body p.nccbe-cover-credit {
	margin: 0 !important;
	color: rgba(255,255,255,.82) !important;
	font-size: 9px !important;
	text-align: right !important;
	text-shadow: 0 1px 4px #000 !important;
}


/* Reader workspace 0.3.0 */
.nccbe-reader.nccbe-embedded {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding: 12px 14px 18px !important;
	background: var(--nccbe-stage-bg) !important;
}

.nccbe-reader-shell {
	position: relative !important;
	width: 100% !important;
	min-width: 0 !important;
}

.nccbe-standalone .nccbe-reader-shell {
	flex: 1 1 auto !important;
	min-height: 0 !important;
	overflow: auto !important;
	overscroll-behavior: contain;
}

.nccbe-standalone .nccbe-stage {
	overflow: visible !important;
	width: 100% !important;
	padding: 6px 14px 18px !important;
}

.nccbe-toolbar-separator {
	width: 1px !important;
	height: 24px !important;
	background: #d8d0c8 !important;
}

.nccbe-view-switch {
	display: inline-flex !important;
	gap: 4px !important;
	padding: 3px !important;
	border: 1px solid #d8d0c8 !important;
	border-radius: 999px !important;
	background: #f3efea !important;
}

.nccbe-reader.nccbe-reader .nccbe-view-switch button {
	min-height: 30px !important;
	padding: .34rem .62rem !important;
	border-color: transparent !important;
	background: transparent !important;
	font-size: 12px !important;
}

.nccbe-reader.nccbe-reader .nccbe-view-switch button[aria-pressed="true"] {
	border-color: #b9afa5 !important;
	background: var(--nccbe-paper) !important;
	box-shadow: 0 1px 5px rgba(35, 28, 22, .12) !important;
}

.nccbe-toc-panel[hidden] { display: none !important; }
.nccbe-toc-panel {
	position: fixed !important;
	top: 72px !important;
	left: 18px !important;
	z-index: 2147483010 !important;
	width: min(420px, calc(100vw - 36px)) !important;
	max-height: calc(100dvh - 92px) !important;
	overflow: auto !important;
	padding: 0 !important;
	border: 1px solid #c9c0b7 !important;
	border-radius: 16px !important;
	background: #fffdf9 !important;
	box-shadow: 0 18px 60px rgba(31, 25, 20, .28) !important;
	color: #25221f !important;
	font-family: Inter, Aptos, Arial, sans-serif !important;
}

.nccbe-toc-panel-head {
	position: sticky !important;
	top: 0 !important;
	z-index: 2 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	padding: 15px 16px !important;
	border-bottom: 1px solid #e2dbd4 !important;
	background: rgba(255,253,249,.98) !important;
}

.nccbe-reader.nccbe-reader .nccbe-toc-close {
	min-width: 34px !important;
	min-height: 34px !important;
	padding: 0 !important;
	font-size: 22px !important;
	line-height: 1 !important;
}

.nccbe-toc-nav {
	margin: 0 !important;
	padding: 8px !important;
	list-style: none !important;
}

.nccbe-toc-nav > li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.nccbe-reader.nccbe-reader .nccbe-toc-nav-link {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	gap: 16px !important;
	width: 100% !important;
	min-height: 0 !important;
	padding: 10px 11px !important;
	border: 0 !important;
	border-radius: 9px !important;
	background: transparent !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	text-align: left !important;
}

.nccbe-reader.nccbe-reader .nccbe-toc-nav-link:hover,
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link:focus-visible {
	background: #f2ece6 !important;
}

.nccbe-toc-nav-page {
	font-variant-numeric: tabular-nums;
	font-weight: 700 !important;
}

.nccbe-toc-empty {
	padding: 18px !important;
	color: #6a625b !important;
	font-size: 13px !important;
}

/* Dokładniejsza polska typografia. */
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body p,
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body li,
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body blockquote,
.nccbe-reader.nccbe-reader.nccbe-hyphenate .nccbe-page-body dd {
	hyphenate-limit-lines: 2;
	hyphenate-limit-zone: 8%;
}

@media (max-width: 980px) {
	.nccbe-toolbar {
		gap: .45rem !important;
		padding: .48rem .55rem !important;
	}
	.nccbe-toolbar-separator { display: none !important; }
}

@media (max-width: 760px) {
	.nccbe-reader.nccbe-embedded {
		padding-inline: 6px !important;
	}
	.nccbe-toolbar {
		width: calc(100% - 12px) !important;
		max-width: none !important;
		border-radius: 14px !important;
	}
	.nccbe-counter { min-width: 7.5rem !important; }
	.nccbe-view-two { display: none !important; }
	.nccbe-toc-panel {
		top: 86px !important;
		left: 8px !important;
		width: calc(100vw - 16px) !important;
		max-height: calc(100dvh - 102px) !important;
	}
}

/* Studio Książki NCC 0.5.0: samodzielny czytnik, spis treści i kontakt */
html.nccbe-html-reader,
html.nccbe-html-reader body.nccbe-body-reader {
	margin-top: 0 !important;
	overflow: hidden !important;
	background: var(--nccbe-stage-bg, #e7e1da) !important;
}
body.nccbe-body-reader #wpadminbar,
body.nccbe-body-reader header:not(.nccbe-contact-head):not(.da-preview-banner),
body.nccbe-body-reader .site-header,
body.nccbe-body-reader .elementor-location-header,
body.nccbe-body-reader footer.site-footer,
body.nccbe-body-reader .elementor-location-footer {
	visibility: hidden !important;
}

.nccbe-reader.nccbe-standalone {
	background:
		radial-gradient(circle at 50% -20%, rgba(255,255,255,.72), transparent 44%),
		linear-gradient(180deg, #eee9e2 0%, #e4ddd4 100%) !important;
}
.nccbe-reader.nccbe-standalone .nccbe-reader-shell {
	overflow: hidden !important;
	min-height: 0 !important;
}
.nccbe-reader.nccbe-standalone .nccbe-stage {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: center !important;
	overflow: hidden !important;
	padding: 4px 18px 10px !important;
}
.nccbe-reader.nccbe-standalone .nccbe-pages {
	margin: 0 auto !important;
	transform-origin: top center !important;
}

.nccbe-reader.nccbe-reader .nccbe-fullscreen[aria-pressed="true"] {
	border-color: var(--nccbe-accent) !important;
	background: color-mix(in srgb, var(--nccbe-accent) 9%, #fffdf9) !important;
	color: var(--nccbe-accent) !important;
}

/* Spis treści jako elegancki panel książkowy, nie techniczna lista. */
.nccbe-reader.nccbe-reader .nccbe-toc-panel {
	top: 76px !important;
	left: clamp(16px, 3vw, 46px) !important;
	width: min(455px, calc(100vw - 32px)) !important;
	max-height: calc(100dvh - 100px) !important;
	border: 1px solid color-mix(in srgb, var(--nccbe-accent) 22%, #cfc6bc) !important;
	border-radius: 8px !important;
	background:
		linear-gradient(180deg, rgba(255,255,255,.55), transparent 120px),
		var(--nccbe-paper) !important;
	box-shadow: 0 28px 80px rgba(36,28,20,.24), 0 3px 12px rgba(36,28,20,.08) !important;
	font-family: Charter, "Iowan Old Style", Georgia, serif !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel::before {
	content: "";
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	width: 4px !important;
	background: var(--nccbe-accent) !important;
	opacity: .72 !important;
	pointer-events: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel-head {
	padding: 21px 22px 18px 27px !important;
	border-bottom: 1px solid color-mix(in srgb, var(--nccbe-accent) 17%, #e5ded7) !important;
	background: color-mix(in srgb, var(--nccbe-paper) 95%, transparent) !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel-head strong {
	color: var(--nccbe-accent) !important;
	font-family: Garamond, "EB Garamond", Georgia, serif !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	letter-spacing: .015em !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-close {
	border: 0 !important;
	background: transparent !important;
	color: #6d6259 !important;
	font-size: 27px !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav {
	counter-reset: nccbe-toc-counter;
	padding: 10px 16px 20px 20px !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li {
	counter-increment: nccbe-toc-counter;
	position: relative !important;
	border-bottom: 1px solid rgba(116,74,48,.11) !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li:last-child {
	border-bottom: 0 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link {
	position: relative !important;
	display: grid !important;
	grid-template-columns: 28px minmax(0,1fr) auto !important;
	gap: 10px !important;
	align-items: baseline !important;
	padding: 13px 8px !important;
	border-radius: 0 !important;
	color: #332b25 !important;
	font-family: Charter, "Iowan Old Style", Georgia, serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link::before {
	content: counter(nccbe-toc-counter, decimal-leading-zero);
	color: color-mix(in srgb, var(--nccbe-accent) 66%, #8e837a) !important;
	font: 600 10px/1.4 Inter, Arial, sans-serif !important;
	letter-spacing: .08em !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link:hover,
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link:focus-visible {
	background: color-mix(in srgb, var(--nccbe-accent) 6%, transparent) !important;
	color: var(--nccbe-accent) !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-page {
	min-width: 34px !important;
	padding: 2px 0 2px 10px !important;
	border-left: 1px solid color-mix(in srgb, var(--nccbe-accent) 19%, transparent) !important;
	color: var(--nccbe-accent) !important;
	font: 700 12px/1.3 Inter, Arial, sans-serif !important;
	text-align: right !important;
}

/* Grafika otwierająca rozdział. */
.nccbe-reader.nccbe-reader .nccbe-lead-figure {
	width: 100% !important;
	margin: .25em 0 1.15em !important;
	padding: 0 !important;
	break-inside: avoid !important;
	page-break-inside: avoid !important;
}
.nccbe-reader.nccbe-reader .nccbe-lead-figure img {
	display: block !important;
	width: 100% !important;
	max-height: 340px !important;
	margin: 0 !important;
	object-fit: contain !important;
}

/* Przyklejony kontakt z autorem. */
.nccbe-reader.nccbe-reader .nccbe-contact-tab {
	position: fixed !important;
	right: 0 !important;
	top: 50% !important;
	z-index: 2147483022 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 14px 9px !important;
	border: 1px solid color-mix(in srgb, var(--nccbe-accent) 40%, #cfc6bc) !important;
	border-right: 0 !important;
	border-radius: 10px 0 0 10px !important;
	background: var(--nccbe-accent) !important;
	box-shadow: 0 10px 30px rgba(34,25,19,.18) !important;
	color: #fff !important;
	font: 700 11px/1.2 Inter, Arial, sans-serif !important;
	letter-spacing: .055em !important;
	text-transform: uppercase !important;
	writing-mode: vertical-rl !important;
	transform: translateY(-50%) rotate(180deg) !important;
	cursor: pointer !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-tab:hover,
.nccbe-reader.nccbe-reader .nccbe-contact-tab:focus-visible {
	filter: brightness(1.08) !important;
	outline: 2px solid rgba(255,255,255,.8) !important;
	outline-offset: -4px !important;
}
.nccbe-contact-overlay[hidden] { display: none !important; }
.nccbe-reader.nccbe-reader .nccbe-contact-overlay {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147483030 !important;
	display: grid !important;
	place-items: center !important;
	padding: 24px !important;
	background: rgba(28,23,19,.58) !important;
	backdrop-filter: blur(8px) !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-dialog {
	width: min(920px, 96vw) !important;
	max-height: min(880px, 92dvh) !important;
	overflow: hidden !important;
	border: 1px solid rgba(255,255,255,.5) !important;
	border-radius: 20px !important;
	background: #f8f5f0 !important;
	box-shadow: 0 40px 120px rgba(0,0,0,.35) !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-head {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 13px 16px 13px 20px !important;
	border-bottom: 1px solid #ddd4ca !important;
	background: #f3eee7 !important;
	color: #3a3029 !important;
	font: 700 13px/1.2 Inter, Arial, sans-serif !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-close {
	min-width: 36px !important;
	min-height: 36px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: #5a4d44 !important;
	font-size: 27px !important;
	line-height: 1 !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body {
	max-height: calc(92dvh - 63px) !important;
	overflow: auto !important;
	padding: 18px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-shell {
	font-size: 14px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-card {
	max-width: none !important;
	box-shadow: none !important;
}

@media (max-width: 720px) {
	.nccbe-reader.nccbe-reader .nccbe-contact-tab {
		right: 12px !important;
		top: auto !important;
		bottom: 14px !important;
		padding: 10px 14px !important;
		border-right: 1px solid color-mix(in srgb, var(--nccbe-accent) 40%, #cfc6bc) !important;
		border-radius: 999px !important;
		writing-mode: horizontal-tb !important;
		transform: none !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-contact-overlay { padding: 8px !important; }
	.nccbe-reader.nccbe-reader .nccbe-contact-dialog { border-radius: 13px !important; }
	.nccbe-reader.nccbe-reader .nccbe-contact-body { padding: 8px !important; }
}

/* Studio Książki NCC 0.5.1: korekta spisu treści, kontaktu i pełnego ekranu */
.nccbe-reader.nccbe-reader > .nccbe-fullscreen {
	position: fixed !important;
	top: 18px !important;
	right: 18px !important;
	z-index: 2147483040 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	min-height: 38px !important;
	margin: 0 !important;
	padding: 9px 13px !important;
	border: 1px solid color-mix(in srgb, var(--nccbe-accent) 34%, #b9afa5) !important;
	border-radius: 999px !important;
	background: rgba(255,253,249,.96) !important;
	box-shadow: 0 8px 24px rgba(35,28,22,.16) !important;
	color: #332b25 !important;
	font: 650 12px/1 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	cursor: pointer !important;
	backdrop-filter: blur(10px) !important;
}
.nccbe-reader.nccbe-reader > .nccbe-fullscreen > span:first-child {
	font-size: 18px !important;
	line-height: 1 !important;
}
.nccbe-reader.nccbe-reader > .nccbe-fullscreen:hover,
.nccbe-reader.nccbe-reader > .nccbe-fullscreen:focus-visible,
.nccbe-reader.nccbe-reader > .nccbe-fullscreen[aria-pressed="true"] {
	border-color: var(--nccbe-accent) !important;
	background: #fff !important;
	color: var(--nccbe-accent) !important;
	outline: none !important;
}

/* Spis treści ma przypominać kartę redakcyjną książki, nie panel administracyjny. */
.nccbe-reader.nccbe-reader .nccbe-toc-panel {
	top: 82px !important;
	left: clamp(18px, 3vw, 52px) !important;
	width: min(510px, calc(100vw - 36px)) !important;
	max-height: calc(100dvh - 112px) !important;
	padding: 0 28px 24px !important;
	border: 0 !important;
	border-radius: 2px !important;
	background: var(--nccbe-paper) !important;
	box-shadow: 0 26px 70px rgba(42,32,24,.22), 0 0 0 1px rgba(116,74,48,.12) !important;
	font-family: Charter, "Iowan Old Style", Georgia, serif !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel::before {
	display: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel-head {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 92px !important;
	padding: 26px 42px 18px !important;
	border-bottom: 0 !important;
	background: transparent !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel-head::after {
	content: "" !important;
	position: absolute !important;
	left: 14% !important;
	right: 14% !important;
	bottom: 7px !important;
	height: 1px !important;
	background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--nccbe-accent) 48%, transparent), transparent) !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel-head strong {
	color: var(--nccbe-accent) !important;
	font-family: Garamond, "EB Garamond", Georgia, serif !important;
	font-size: 25px !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-close {
	position: absolute !important;
	top: 16px !important;
	right: 8px !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: transparent !important;
	color: #786b61 !important;
	font-size: 24px !important;
	line-height: 34px !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav {
	counter-reset: none !important;
	margin: 0 !important;
	padding: 16px 0 8px !important;
	list-style: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link {
	display: grid !important;
	grid-template-columns: minmax(0,1fr) auto !important;
	gap: 12px !important;
	align-items: end !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 10px 4px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #332b25 !important;
	font-family: Charter, "Iowan Old Style", Georgia, serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.35 !important;
	text-align: left !important;
	text-transform: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link::before {
	display: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link > span:first-child {
	display: flex !important;
	align-items: flex-end !important;
	min-width: 0 !important;
	gap: 8px !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link > span:first-child::after {
	content: "" !important;
	flex: 1 1 auto !important;
	min-width: 24px !important;
	margin-bottom: .28em !important;
	border-bottom: 1px dotted color-mix(in srgb, var(--nccbe-accent) 34%, #9d938b) !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-page {
	min-width: 28px !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--nccbe-accent) !important;
	font: 650 12px/1.35 Inter, Arial, sans-serif !important;
	text-align: right !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li[data-type="part"] {
	margin: 15px 0 5px !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li[data-type="part"] .nccbe-toc-nav-link {
	padding-top: 15px !important;
	border-top: 1px solid color-mix(in srgb, var(--nccbe-accent) 18%, transparent) !important;
	color: var(--nccbe-accent) !important;
	font-family: Garamond, "EB Garamond", Georgia, serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	letter-spacing: .025em !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link:hover,
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link:focus-visible {
	background: transparent !important;
	color: var(--nccbe-accent) !important;
	outline: none !important;
}

/* Kontakt z autorem: wysuwana szuflada z prawej strony, bez zasłaniania książki. */
.nccbe-reader.nccbe-reader .nccbe-contact-tab {
	position: fixed !important;
	right: 0 !important;
	top: 52% !important;
	z-index: 2147483022 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 132px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 11px 14px !important;
	border: 1px solid color-mix(in srgb, var(--nccbe-accent) 42%, #bdaea3) !important;
	border-right: 0 !important;
	border-radius: 12px 0 0 12px !important;
	background: var(--nccbe-accent) !important;
	box-shadow: 0 12px 30px rgba(34,25,19,.2) !important;
	color: #fff !important;
	font: 700 11px/1.25 Inter, Arial, sans-serif !important;
	letter-spacing: .015em !important;
	text-align: center !important;
	text-transform: none !important;
	writing-mode: horizontal-tb !important;
	transform: translateY(-50%) !important;
	cursor: pointer !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-overlay {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147483030 !important;
	display: flex !important;
	align-items: stretch !important;
	justify-content: flex-end !important;
	padding: 0 !important;
	background: transparent !important;
	backdrop-filter: none !important;
	pointer-events: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-dialog {
	width: min(500px, 94vw) !important;
	height: 100dvh !important;
	max-height: none !important;
	margin: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
	border-left: 1px solid rgba(116,74,48,.18) !important;
	border-radius: 18px 0 0 18px !important;
	background: #fbf8f3 !important;
	box-shadow: -24px 0 70px rgba(32,24,18,.22) !important;
	pointer-events: auto !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-head {
	min-height: 64px !important;
	padding: 15px 18px 15px 22px !important;
	border-bottom: 1px solid rgba(116,74,48,.14) !important;
	background: #f5efe7 !important;
	color: #3a3029 !important;
	font: 700 14px/1.2 Inter, Arial, sans-serif !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body {
	height: calc(100dvh - 64px) !important;
	max-height: none !important;
	overflow: auto !important;
	padding: 12px 14px 22px !important;
	overscroll-behavior: contain !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-shell {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-card {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	box-shadow: none !important;
}
.nccbe-reader.nccbe-contact-open .nccbe-contact-tab {
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (max-width: 760px) {
	.nccbe-reader.nccbe-reader > .nccbe-fullscreen {
		top: 10px !important;
		right: 10px !important;
		padding: 8px 10px !important;
	}
	.nccbe-reader.nccbe-reader > .nccbe-fullscreen > span:last-child {
		display: none !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-toc-panel {
		top: 70px !important;
		left: 8px !important;
		width: calc(100vw - 16px) !important;
		max-height: calc(100dvh - 82px) !important;
		padding-inline: 18px !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-contact-tab {
		right: 10px !important;
		top: auto !important;
		bottom: 12px !important;
		width: auto !important;
		padding: 10px 14px !important;
		border-right: 1px solid color-mix(in srgb, var(--nccbe-accent) 42%, #bdaea3) !important;
		border-radius: 999px !important;
		transform: none !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-contact-dialog {
		width: 100vw !important;
		border-radius: 0 !important;
	}
}

/* Studio Książki NCC 0.5.2: dyskretny kontakt i pełny ekran jako część nawigacji książki. */
.nccbe-reader.nccbe-reader .nccbe-toolbar .nccbe-fullscreen {
	position: static !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	min-width: 0 !important;
	min-height: 36px !important;
	margin: 0 !important;
	padding: .46rem .78rem !important;
	border: 1px solid #b9afa5 !important;
	border-radius: 999px !important;
	background: #fffdf9 !important;
	box-shadow: none !important;
	color: #25221f !important;
	font: 600 12px/1.1 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	backdrop-filter: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toolbar .nccbe-fullscreen > span:first-child {
	font-size: 16px !important;
	line-height: 1 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toolbar .nccbe-fullscreen:hover,
.nccbe-reader.nccbe-reader .nccbe-toolbar .nccbe-fullscreen:focus-visible,
.nccbe-reader.nccbe-reader .nccbe-toolbar .nccbe-fullscreen[aria-pressed="true"] {
	border-color: var(--nccbe-accent) !important;
	background: #fff !important;
	color: var(--nccbe-accent) !important;
	outline: none !important;
}

/* Kontakt jest tylko dyskretnym odnośnikiem w prawym dolnym rogu. */
.nccbe-reader.nccbe-reader .nccbe-contact-tab {
	position: fixed !important;
	right: 24px !important;
	top: auto !important;
	bottom: 18px !important;
	z-index: 2147483022 !important;
	display: inline !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 3px 1px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: color-mix(in srgb, var(--nccbe-accent) 88%, #332b25) !important;
	font: 600 12px/1.25 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: .01em !important;
	text-align: right !important;
	text-decoration: none !important;
	text-transform: none !important;
	writing-mode: horizontal-tb !important;
	transform: none !important;
	cursor: pointer !important;
	opacity: .82 !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-tab::after {
	content: "" !important;
	display: block !important;
	width: 100% !important;
	height: 1px !important;
	margin-top: 3px !important;
	background: currentColor !important;
	transform: scaleX(.38) !important;
	transform-origin: right center !important;
	transition: transform .18s ease !important;
	opacity: .55 !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-tab:hover,
.nccbe-reader.nccbe-reader .nccbe-contact-tab:focus-visible {
	filter: none !important;
	outline: none !important;
	opacity: 1 !important;
	color: var(--nccbe-accent) !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-tab:hover::after,
.nccbe-reader.nccbe-reader .nccbe-contact-tab:focus-visible::after {
	transform: scaleX(1) !important;
}

/* Panel kontaktowy jest małą kartą, nie pełnoekranową szufladą. */
.nccbe-contact-overlay[hidden] {
	display: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-overlay {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147483030 !important;
	display: block !important;
	padding: 0 !important;
	background: transparent !important;
	backdrop-filter: none !important;
	pointer-events: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-dialog {
	position: absolute !important;
	right: 18px !important;
	bottom: 54px !important;
	width: min(410px, calc(100vw - 36px)) !important;
	height: auto !important;
	max-height: min(720px, calc(100dvh - 92px)) !important;
	margin: 0 !important;
	overflow: hidden !important;
	border: 1px solid color-mix(in srgb, var(--nccbe-accent) 18%, #d3cbc2) !important;
	border-radius: 16px !important;
	background: #fbf9f5 !important;
	box-shadow: 0 24px 70px rgba(40,31,24,.22) !important;
	pointer-events: auto !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-head {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	min-height: 50px !important;
	padding: 11px 12px 10px 17px !important;
	border-bottom: 1px solid rgba(116,74,48,.12) !important;
	background: #f7f2eb !important;
	color: #3a3029 !important;
	font: 700 13px/1.2 Inter, Aptos, Arial, sans-serif !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-head strong {
	margin: 0 !important;
	padding: 0 !important;
	color: #3a3029 !important;
	font: 700 13px/1.2 Inter, Aptos, Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-close {
	position: relative !important;
	z-index: 2 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 32px !important;
	min-height: 32px !important;
	margin: 0 !important;
	padding: 0 0 2px !important;
	border: 1px solid transparent !important;
	border-radius: 50% !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #655950 !important;
	font: 400 25px/1 Arial, sans-serif !important;
	text-align: center !important;
	cursor: pointer !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-close:hover,
.nccbe-reader.nccbe-reader .nccbe-contact-close:focus-visible {
	border-color: rgba(116,74,48,.18) !important;
	background: rgba(116,74,48,.06) !important;
	color: var(--nccbe-accent) !important;
	outline: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body {
	height: auto !important;
	max-height: min(670px, calc(100dvh - 144px)) !important;
	overflow: auto !important;
	padding: 10px !important;
	overscroll-behavior: contain !important;
	scrollbar-width: thin !important;
}

/* Kompaktowy wariant VerifiContact tylko wewnątrz czytnika książki. */
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-shell {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-card {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 22px 20px !important;
	border-radius: 12px !important;
	box-shadow: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-card::before,
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-mark {
	display: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-eyebrow {
	padding: 5px 8px !important;
	font-size: 8px !important;
	letter-spacing: .12em !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-card h2 {
	margin: 10px 0 7px !important;
	font-size: 31px !important;
	line-height: 1.02 !important;
	letter-spacing: -.025em !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-intro {
	margin: 0 0 18px !important;
	font-size: 12.5px !important;
	line-height: 1.55 !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-form {
	gap: 13px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-row {
	gap: 10px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field {
	gap: 5px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field label {
	font-size: 10.5px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field input,
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field select,
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field textarea {
	border-radius: 11px !important;
	padding: 10px 11px !important;
	font-size: 12px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field input,
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field select {
	min-height: 42px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-field textarea {
	min-height: 112px !important;
	max-height: 190px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-meta,
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-trust,
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-privacy {
	font-size: 9.5px !important;
}
.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-submit {
	min-height: 46px !important;
	padding: 0 14px !important;
	border-radius: 11px !important;
	font-size: 12px !important;
}
.nccbe-reader.nccbe-contact-open .nccbe-contact-tab {
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (max-width: 820px) {
	.nccbe-reader.nccbe-reader .nccbe-toolbar .nccbe-fullscreen > span:last-child {
		display: none !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-toolbar .nccbe-fullscreen {
		padding-inline: .58rem !important;
	}
}

@media (max-width: 560px) {
	.nccbe-reader.nccbe-reader .nccbe-contact-tab {
		right: 16px !important;
		bottom: 12px !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-contact-dialog {
		right: 8px !important;
		bottom: 44px !important;
		width: calc(100vw - 16px) !important;
		max-height: calc(100dvh - 62px) !important;
		border-radius: 14px !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-contact-body {
		max-height: calc(100dvh - 116px) !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-card {
		padding: 18px 15px !important;
	}
	.nccbe-reader.nccbe-reader .nccbe-contact-body .vc-row {
		grid-template-columns: 1fr !important;
	}
}


/* 0.6.0: część/tom z własną treścią lub obrazem nie jest kartą atomową. */
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-module-part.nccbe-part-content {
    min-height: 0 !important;
    display: flow-root !important;
    place-content: initial !important;
    text-align: initial !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-module-part.nccbe-part-content > h1 {
    max-width: 15em !important;
    margin: .25em auto .9em !important;
    text-align: center !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-prose figure.wp-block-image,
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-prose .wp-block-image {
    width: 100% !important;
    max-width: 100% !important;
    margin: .6em auto 1em !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-prose figure.wp-block-image img,
.nccbe-reader.nccbe-reader .nccbe-page-body .nccbe-prose .wp-block-image img {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 520px !important;
    height: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
}

/* 0.6.4: pełny, redakcyjny spis treści. Materiały informacyjne są odnośnikami bez numeru strony. */
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"] {
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: .8em !important;
    cursor: pointer !important;
    color: var(--nccbe-text) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"] .nccbe-toc-title {
    min-width: 0 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-reference,
.nccbe-reader.nccbe-reader .nccbe-toc-nav-reference {
    display: inline-flex !important;
    align-items: center !important;
    gap: .3em !important;
    color: var(--nccbe-accent) !important;
    font-family: Inter, Aptos, Arial, sans-serif !important;
    font-size: .68em !important;
    font-weight: 650 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-reference::after,
.nccbe-reader.nccbe-reader .nccbe-toc-nav-reference::after {
    content: "›" !important;
    font-size: 1.25em !important;
    line-height: 1 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"]:hover .nccbe-toc-title,
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"]:focus-visible .nccbe-toc-title {
    color: var(--nccbe-accent) !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"]:focus-visible {
    outline: 1px solid color-mix(in srgb, var(--nccbe-accent) 55%, transparent) !important;
    outline-offset: 4px !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li[data-toc-mode="reference"] .nccbe-toc-nav-link {
    grid-template-columns: minmax(0, 1fr) auto !important;
}


/* 0.6.5: spójny spis treści. Pozycje informacyjne pokazują wyłącznie tytuł. */
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"] {
    display: block !important;
    margin: 0 0 .82em !important;
    padding: 0 !important;
    cursor: pointer !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"] .nccbe-toc-title {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: auto !important;
    line-height: 1.32 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-entry[data-toc-mode="reference"] .nccbe-toc-reference,
.nccbe-reader.nccbe-reader .nccbe-toc-nav-reference {
    display: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li[data-toc-mode="reference"] .nccbe-toc-nav-link {
    display: block !important;
    width: 100% !important;
    padding: 9px 4px !important;
    white-space: normal !important;
    overflow: visible !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li[data-toc-mode="reference"] .nccbe-toc-nav-link > span:first-child {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: auto !important;
    line-height: 1.38 !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li[data-toc-mode="reference"] .nccbe-toc-nav-link > span:first-child::after {
    content: none !important;
    display: none !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-panel {
    overflow-x: hidden !important;
}
.nccbe-reader.nccbe-reader .nccbe-toc-nav,
.nccbe-reader.nccbe-reader .nccbe-toc-nav > li,
.nccbe-reader.nccbe-reader .nccbe-toc-nav-link {
    max-width: 100% !important;
}


/* 0.7.0: stały szablon strony otwierającej rozdział. */
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure {
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    margin: .35em 0 1.15em !important;
    padding: 0 !important;
    overflow: hidden !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
}

/* Pierwszy blok po grafice nie może dziedziczyć pustych odstępów z edytora. */
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure + p,
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure + h3,
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure + h4,
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure + dl,
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure + div {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure + p > :first-child,
.nccbe-reader.nccbe-reader .nccbe-page-body > .nccbe-lead-figure + div > :first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Sensilitera 0.17.2: obrazy osadzone bezpośrednio w treści */
.nccbe-inline-images-warning{margin:18px 16px 16px;padding:18px;border:2px solid #d97706;border-radius:12px;background:#fffaf0}
.nccbe-inline-images-head{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;margin-bottom:14px}
.nccbe-inline-images-head strong{font-size:15px;color:#7c2d12}
.nccbe-inline-images-head .description{margin:5px 0 0;max-width:820px}
.nccbe-inline-count{display:inline-flex;min-width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;background:#d97706;color:#fff;font-weight:700}
.nccbe-inline-images-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.nccbe-inline-image-card{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid #e5c07b;border-radius:10px;background:#fff;cursor:pointer}
.nccbe-inline-image-card img{display:block;width:100%;height:150px;object-fit:cover;border-radius:7px;background:#f3f4f6}
.nccbe-inline-image-card span{font-weight:600;line-height:1.35;color:#7c2d12}

/* Author-controlled layout, shared by the public reader and saved preview. */
.nccbe-aligned-content{display:flow-root;width:100%}
.nccbe-page-body .wp-block-spacer{display:block!important;margin:0!important;padding:0!important;min-height:0}
.nccbe-page-body p.nccbe-intentional-gap{min-height:1em;margin:0!important}
.nccbe-page-body .wp-block-columns{display:flex;gap:1.5em}.nccbe-page-body .wp-block-column{flex:1;min-width:0}
.nccbe-page-body .wp-block-group.is-layout-flex{display:flex;gap:1em}.nccbe-page-body .wp-block-group.is-layout-grid{display:grid;gap:1em}
.nccbe-page-body video,.nccbe-page-body iframe{max-width:100%}

/* Complete uploaded artwork is never cropped or covered by generated text. */
.nccbe-reader.nccbe-reader .nccbe-cover-art.nccbe-cover-complete{background:#fff!important}
.nccbe-reader.nccbe-reader .nccbe-cover-complete img.nccbe-cover-image{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;margin:0!important;padding:0!important;object-fit:contain!important;object-position:center!important;border:0!important}
.nccbe-reader.nccbe-reader .nccbe-cover-fallback{justify-content:center!important;gap:24px!important;background:#18364b!important;text-shadow:none!important}
.nccbe-reader.nccbe-reader .nccbe-cover-fallback small{color:#d0b889!important;font:700 12px/1.5 Arial,sans-serif!important;letter-spacing:.15em!important}
.nccbe-reader.nccbe-reader .nccbe-cover-fallback h1{overflow-wrap:anywhere!important;letter-spacing:0!important}
.nccbe-reader.nccbe-reader .nccbe-cover-fallback .nccbe-cover-author{color:#fff!important;text-align:center!important;font-size:1em!important}
.nccbe-reader.nccbe-reader .nccbe-back-cover-copy{height:100%!important;overflow:auto!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:safe center!important;gap:24px!important;overflow-wrap:anywhere!important}
.nccbe-reader.nccbe-reader .nccbe-back-cover-copy small{font:700 12px/1.5 Arial,sans-serif!important;letter-spacing:.12em!important;color:#91784f!important;text-align:center!important}
.nccbe-reader.nccbe-reader .nccbe-back-cover-copy p{text-align:left!important}
.nccbe-reader.nccbe-reader .nccbe-imprint p.nccbe-title-cover-credit{margin-top:14px!important;font:11px/1.5 Arial,sans-serif!important;color:#73828c!important;text-align:center!important}
/* Outside covers are single objects; inner spreads start with the blank verso. */
.nccbe-pages.nccbe-single-cover .nccbe-page{border-radius:3px!important;box-shadow:0 14px 40px #18232c30!important}.nccbe-pages.nccbe-unpaired-inner:after{content:'';display:block;width:var(--nccbe-page-width);height:var(--nccbe-page-height);background:var(--nccbe-paper);box-shadow:0 12px 35px #18232c18}.nccbe-page-graphic{margin:0!important;padding:0!important;display:flex!important;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;gap:5px;box-sizing:border-box}.nccbe-page-graphic img{object-fit:contain!important;max-width:100%!important;max-height:calc(100% - 25px)!important;margin:0!important;flex-shrink:1;min-height:0}.nccbe-page-graphic figcaption{font:11px/1.35 sans-serif!important;color:#68747c;text-align:center;max-height:30px;overflow:auto;width:100%;margin:0!important}.nccbe-page-inner:has(.nccbe-page-graphic)>.nccbe-page-body{display:block!important}.nccbe-cover-verso{background:transparent!important;box-shadow:none!important}

/* Bezpieczny kontakt dostępny z publicznego czytnika. */
.nccbe-reader .nccbe-toolbar a.da-reader-contact{display:inline-flex!important;align-items:center;gap:5px;min-height:36px!important;box-sizing:border-box!important;padding:.46rem .82rem!important;margin:0!important;border:1px solid #b9afa5!important;border-radius:999px!important;background:#fffdf9!important;color:var(--nccbe-ui-text)!important;font:600 12px/1.2 system-ui,sans-serif!important;text-decoration:none!important;white-space:nowrap}
.da-thread-read{margin:20px 0}.da-author-studio-v2 .da-front-user{flex-wrap:wrap}.da-author-studio-v2 .da-studio-topbar{gap:12px}
