/* =====================================================================
 * O-lekach – wspólna warstwa stylu
 *
 * 1) Komponenty (FAQ, bibliografia) – zawsze na stronach portalu (.olb)
 *    oraz w całym serwisie, gdy włączony jest „Styl portalu w całym serwisie”.
 * 2) Typografia treści motywu (artykuły, strony leków, kompendia) – tylko body.olg-on.
 * ===================================================================== */

body.olg-on {
	--olb-ink: #121a26;
	--olb-ink-2: #3c4757;
	--olb-muted: #687587;
	--olb-line: #e3e7ec;
	--olb-soft: #f4f6f8;
	--olb-accent: #0f766e;
	--olb-accent-ink: #0b5d56;
	--olb-accent-dark: #134e4a;
	--olb-tint: #e6f2f0;
	--olb-tint-2: #f1f8f7;
	--olb-tint-3: #f4f8f8;
	--olb-tint-line: #d6e6e3;
	--olb-accent-rgb: 15, 118, 110;
	--olb-serif: "Iowan Old Style", "Charter", "Georgia", "Cambria", "Times New Roman", serif;
}

/* ---------------------------------------------------------------------
 * FAQ – wtyczka „Stylowy FAQ Accordion” (.stylowy-faq-*)
 * Selektory mają wyższą specyficzność niż style wtyczki i motywu.
 * --------------------------------------------------------------------- */
:is(.olb, body.olg-on) .stylowy-faq-container { margin: 2.4em 0 2em; max-width: 100%; }

:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-header {
	font-family: var(--olb-serif);
	font-size: 1.65rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.005em;
	color: var(--olb-ink);
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 0 .8em !important;
	text-transform: none;
}

:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-accordion {
	border: 1px solid var(--olb-line);
	border-radius: 14px;
	box-shadow: none;
	overflow: hidden;
	background: #fff;
}

:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item {
	background: #fff;
	border-bottom: 1px solid var(--olb-line);
	margin: 0;
}
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item:last-child { border-bottom: 0; }

:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 18px 22px 18px 26px;
	background: #fff;
	border: 0;
	box-shadow: none;
	font-family: var(--olb-serif);
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0;
	text-transform: none;
	color: var(--olb-ink);
	cursor: pointer;
	position: relative;
	transition: background-color .2s ease, color .2s ease;
}
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-question:hover { background: var(--olb-tint-2); }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-question:focus-visible { outline: 3px solid var(--olb-accent); outline-offset: -3px; }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-question::before {
	content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: transparent; transition: background-color .2s ease;
}
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-question::after { content: none; }

/* Ikona: okrągły przycisk z „+” zamieniającym się w „–” */
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-icon {
	position: relative;
	flex: none;
	width: 28px;
	height: 28px;
	margin: 0;
	border-radius: 50%;
	background: var(--olb-tint);
	transition: background-color .2s ease, transform .25s ease;
}
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-icon::before,
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-icon::after {
	content: ""; position: absolute; background: var(--olb-accent); border-radius: 2px; transition: transform .25s ease, opacity .2s ease;
}
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-icon::before { top: 13px; left: 8px; width: 12px; height: 2px; }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-icon::after { top: 8px; left: 13px; width: 2px; height: 12px; }

/* Stan otwarty */
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item.active .stylowy-faq-question { background: var(--olb-tint-2); color: var(--olb-accent-ink); }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item.active .stylowy-faq-question::before { background: var(--olb-accent); }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item.active .stylowy-faq-icon { background: var(--olb-accent); }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item.active .stylowy-faq-icon::before { background: #fff; }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item.active .stylowy-faq-icon::after { transform: rotate(90deg); opacity: 0; }

/* Odpowiedź */
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-answer { background: #fff; }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-answer-inner {
	padding: 4px 26px 20px;
	font-size: 1rem;
	line-height: 1.7;
	color: var(--olb-ink-2);
}
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-answer-inner p { margin: 0 0 .8em; }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-answer-inner p:last-child { margin-bottom: 0; }
:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-answer-inner a { color: var(--olb-accent); text-decoration: underline; text-underline-offset: 2px; }

@media (max-width: 760px) {
	:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-item .stylowy-faq-question { padding: 15px 16px 15px 20px; font-size: 1rem; }
	:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-answer-inner { padding: 2px 20px 16px; }
}

/* ---------------------------------------------------------------------
 * Bibliografia – linki DOI / PMID / ISBN (wtyczka Medical Bibliography Linker)
 * --------------------------------------------------------------------- */
:is(.olb, body.olg-on) :is(.mbl-doi-link, .mbl-pmid-link, .mbl-isbn-link) {
	color: var(--olb-accent) !important;
	text-decoration: underline;
	text-decoration-color: rgba(var(--olb-accent-rgb), .35);
	text-underline-offset: 2px;
	font-weight: 500 !important;
	overflow-wrap: anywhere;
}
:is(.olb, body.olg-on) :is(.mbl-doi-link, .mbl-pmid-link, .mbl-isbn-link):hover { text-decoration-color: currentColor; }

/* Nagłówek „Bibliografia” (h4/h5) i lista źródeł – mniejsze, spokojniejsze */
:is(.olx-guide, body.olg-on .entry-content) > :is(h4, h5) + ol {
	font-size: .9rem;
	line-height: 1.6;
	color: var(--olb-ink-2);
}

/* =====================================================================
 * Typografia treści motywu – tylko gdy włączony „Styl portalu w całym serwisie”
 * (GeneratePress: .entry-title, .entry-content, .page-header, .taxonomy-description)
 * ===================================================================== */
body.olg-on :is(.entry-title, .page-title) {
	font-family: var(--olb-serif);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -.012em;
	color: var(--olb-ink);
}
body.olg-on .entry-meta { color: var(--olb-muted); font-size: .88rem; }

body.olg-on :is(.entry-content, .taxonomy-description, .page-header) :is(h2, h3, h4):not(.stylowy-faq-question):not(.stylowy-faq-header) {
	font-family: var(--olb-serif);
	font-weight: 700;
	color: var(--olb-ink);
	background: none;
	border: 0;
	box-shadow: none;
	padding: 0;
	letter-spacing: -.005em;
	text-transform: none;
}
body.olg-on :is(.entry-content, .taxonomy-description) h2:not(.stylowy-faq-header) { font-size: 1.65rem; line-height: 1.25; margin: 1.8em 0 .6em; }
body.olg-on :is(.entry-content, .taxonomy-description) h3:not(.stylowy-faq-question) { font-size: 1.25rem; line-height: 1.3; margin: 1.5em 0 .5em; }
body.olg-on :is(.entry-content, .taxonomy-description) h4 { font-size: 1.05rem; line-height: 1.35; margin: 1.3em 0 .4em; }

body.olg-on .entry-content :is(p, li, td) > a:not([class*="button"]):not([class*="btn"]),
body.olg-on .entry-content :is(p, li, td) > :is(strong, em) > a {
	color: var(--olb-accent);
	text-decoration: underline;
	text-decoration-color: rgba(var(--olb-accent-rgb), .35);
	text-underline-offset: 2px;
}
body.olg-on .entry-content :is(p, li, td) > a:not([class*="button"]):not([class*="btn"]):hover { text-decoration-color: currentColor; }

/* Tabele */
body.olg-on .entry-content table { width: 100%; border-collapse: collapse; margin: 1.4em 0; font-size: .95rem; border: 1px solid var(--olb-line); border-radius: 10px; overflow: hidden; }
body.olg-on .entry-content :is(th, td) { border: 0; border-bottom: 1px solid var(--olb-line); padding: 10px 12px; text-align: left; vertical-align: top; }
body.olg-on .entry-content th { background: var(--olb-soft); font-weight: 700; color: var(--olb-ink); }
body.olg-on .entry-content tr:last-child > :is(th, td) { border-bottom: 0; }

/* Cytaty i ramki */
body.olg-on .entry-content blockquote { margin: 1.4em 0; padding: 14px 20px; border: 0; border-left: 4px solid var(--olb-accent); background: var(--olb-tint-2); border-radius: 0 10px 10px 0; font-style: normal; }
/* Ramki zagnieżdżone (np. nota „Niniejszy artykuł nie jest poradą medyczną…” – cytat w ramce z własnym paskiem albo ramka w cytacie):
   zostaje jeden pasek i jedno tło, bez podwójnej linii po lewej */
body.olg-on .entry-content blockquote::before, body.olg-on .entry-content blockquote::after { content: none !important; display: none !important; }
body.olg-on .entry-content blockquote :is(p, div, blockquote, cite) { border: 0 !important; box-shadow: none !important; background: transparent !important; }
body.olg-on .entry-content blockquote > :is(div, blockquote) { margin: 0 !important; padding: 0 !important; }
body.olg-on .entry-content blockquote > p:last-child { margin-bottom: 0; }
body.olg-on .entry-content blockquote :is(p, div)[style*="border"] { padding: 0 !important; margin-left: 0 !important; }
body.olg-on .entry-content [style*="border-left"] > blockquote,
body.olg-on .entry-content .has-background > blockquote,
body.olg-on .entry-content .wp-block-group > blockquote:only-child { margin: 0; padding: 0; border: 0; background: transparent; border-radius: 0; }

/* Przyciski w treści (np. „Pobierz aktualną ulotkę (PDF)”) */
body.olg-on .entry-content :is(.wp-block-button__link, a.button, .button, a.btn, .btn) {
	background: var(--olb-accent) !important;
	border-color: var(--olb-accent) !important;
	color: #fff !important;
	border-radius: 10px;
	font-weight: 700;
	text-decoration: none !important;
	box-shadow: none;
}
body.olg-on .entry-content :is(.wp-block-button__link, a.button, .button, a.btn, .btn):hover { background: var(--olb-accent-ink) !important; border-color: var(--olb-accent-ink) !important; }

/* Baner „Lek wycofany z obrotu” (wtyczka Zarządzanie Wycofanymi Lekami) */
body.olg-on .cwm-withdrawal-notice {
	background: #fff7ed;
	border: 1px solid #fed7aa;
	border-left: 4px solid #ea580c;
	border-radius: 12px;
	box-shadow: none;
	animation: none;
}
body.olg-on .cwm-withdrawal-notice .cwm-notice-icon { background: #ea580c; }
body.olg-on .cwm-withdrawal-notice .cwm-notice-text strong { color: #9a3412; letter-spacing: .04em; }
body.olg-on .cwm-withdrawal-notice .cwm-notice-text p { color: var(--olb-ink-2); }
body.olg-on .cwm-withdrawal-notice .cwm-see-alternatives { background: var(--olb-accent); box-shadow: none; border-radius: 10px; }
body.olg-on .cwm-withdrawal-notice .cwm-see-alternatives:hover { background: var(--olb-accent-ink); transform: none; }

/* =====================================================================
 * NAWIGACJA GÓRNA (GeneratePress .main-navigation)
 * Biały pasek jak w portalu informacyjnym: ciemny tekst, aktywna pozycja
 * podkreślona kolorem akcentu. Nadpisuje kolory z Customizera.
 * ===================================================================== */
body.olg-on .main-navigation,
body.olg-on .main-navigation ul ul {
	background-color: #fff;
}
body.olg-on .main-navigation {
	border-bottom: 1px solid var(--olb-line);
	box-shadow: 0 1px 0 rgba(0,0,0,.02);
}
body.olg-on .main-navigation .main-nav ul li a,
body.olg-on .main-navigation .menu-toggle,
body.olg-on .main-navigation .menu-bar-items,
body.olg-on .main-navigation .menu-bar-item > a {
	color: var(--olb-ink);
	font-weight: 600;
}
body.olg-on .main-navigation .main-nav > ul > li > a { transition: color .15s, background-color .15s; }
body.olg-on .main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a,
body.olg-on .main-navigation .main-nav ul li:not([class*="current-menu-"]):focus-within > a,
body.olg-on .main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a {
	background-color: var(--olb-tint-2);
	color: var(--olb-accent-ink);
}
/* 2.0.4: bieżąca sekcja – tylko kolor tekstu, bez podkreślenia; linki do kotwic (np. Zagadnienia → /#gz) nie są wyróżniane */
body.olg-on .main-navigation .main-nav ul li[class*="current-menu-"] > a {
	background-color: transparent;
	color: var(--olb-accent);
}
body.olg-on .main-navigation .main-nav ul li[class*="current-menu-"] > a[href*="#"] { color: var(--olb-ink); }
body.olg-on .main-navigation .main-nav ul li[class*="current-menu-"] > a[href*="#"]:hover { background-color: var(--olb-tint-2); color: var(--olb-accent-ink); }
body.olg-on .main-navigation ul ul { border: 1px solid var(--olb-line); border-radius: 0 0 10px 10px; box-shadow: 0 10px 24px rgba(16,24,40,.08); }
body.olg-on .main-navigation ul ul li a { font-weight: 500; }
body.olg-on .main-navigation .menu-toggle:hover,
body.olg-on .main-navigation .menu-toggle:focus { background: var(--olb-tint-2); color: var(--olb-accent-ink); }
/* Menu mobilne (rozwinięte) */
@media (max-width: 768px) {
	body.olg-on .main-navigation.toggled .main-nav ul li a { border-bottom: 1px solid var(--olb-line); }
	body.olg-on .main-navigation .main-nav > ul > li[class*="current-menu-"] > a:not([href*="#"]) { box-shadow: inset 3px 0 0 var(--olb-accent); }
}

/* =====================================================================
 * LINKI – jeden kolor w całym serwisie
 * Domyślny niebieski z motywu/Customizera zastąpiony kolorem akcentu.
 * ===================================================================== */
:where(body.olg-on) a { color: var(--olb-accent); }
:where(body.olg-on) a:hover { color: var(--olb-accent-ink); }
body.olg-on .entry-content a:not([class*="button"]):not([class*="btn"]):not([style*="background"]):not(.category-tag):not(.olb *) { color: var(--olb-accent); }
body.olg-on .entry-content a:not([class*="button"]):not([class*="btn"]):not([style*="background"]):not(.category-tag):not(.olb *):hover { color: var(--olb-accent-ink); }

/* Tytuły wpisów na listach (archiwa, kategorie GIF, wyniki wyszukiwania) i w Content Views:
 * ciemne jak w portalu, kolor akcentu po najechaniu. */
body.olg-on :is(.entry-title, .pt-cv-title) a,
body.olg-on .entry-content .pt-cv-title a {
	color: var(--olb-ink) !important;
	text-decoration: none;
}
body.olg-on :is(.entry-title, .pt-cv-title) a:hover,
body.olg-on .entry-content .pt-cv-title a:hover { color: var(--olb-accent) !important; }
body.olg-on .pt-cv-title a { font-family: var(--olb-serif); font-weight: 700; line-height: 1.3; }
body.olg-on .widget .pt-cv-title a { font-size: 1.05rem; }
body.olg-on :is(.read-more, .pt-cv-readmore, a.more-link) { color: var(--olb-accent) !important; font-weight: 600; }

/* Logo w pasku menu (link do strony głównej).
 * Układ: logo po lewej | menu na środku (jak bez logo) | lupka i inne ikony po prawej. */
body.olg-on .main-navigation.olek-has-brand .inside-navigation { display: flex; align-items: center; flex-wrap: wrap; }
body.olg-on .main-navigation.olek-has-brand .olek-nav-brand { order: 0; flex: 1 0 auto; margin: 0; padding: 6px 28px 6px 0; display: flex; align-items: center; }
body.olg-on .main-navigation.olek-has-brand .main-nav { order: 1; flex: 0 1 auto; }
body.olg-on .main-navigation.olek-has-brand .menu-bar-items { order: 2; flex: 1 0 auto; display: flex; justify-content: flex-end; }
/* Węższe ekrany (np. laptop 1920×1080 ze skalowaniem 150% = ok. 1280 px): ciaśniejsze menu, logo nie nachodzi na pozycje */
@media (min-width: 769px) and (max-width: 1400px) {
	body.olg-on .main-navigation.olek-has-brand .main-nav > ul > li > a { padding-left: 12px; padding-right: 12px; }
	body.olg-on .main-navigation.olek-has-brand .olek-nav-brand { padding-right: 16px; }
}
@media (min-width: 769px) and (max-width: 1100px) {
	body.olg-on .main-navigation.olek-has-brand .main-nav > ul > li > a { padding-left: 8px; padding-right: 8px; font-size: .92rem; }
}
@media (min-width: 769px) and (max-width: 1060px) {
	body.olg-on .main-navigation.olek-has-brand .main-nav > ul > li > a { padding-left: 6px; padding-right: 6px; font-size: .86rem; }
	body.olg-on .main-navigation.olek-has-brand .olek-nav-brand { padding-right: 8px; }
	body.olg-on .main-navigation.olek-has-brand .olek-nav-brand img { height: 30px !important; }
	body.olg-on .main-navigation.olek-has-brand .menu-bar-items .menu-bar-item > a { padding-left: 8px; padding-right: 8px; }
}
@media (min-width: 769px) and (max-width: 960px) {
	body.olg-on .main-navigation.olek-has-brand .main-nav > ul > li > a { padding-left: 4px; padding-right: 4px; font-size: .8rem; }
	body.olg-on .main-navigation.olek-has-brand .olek-nav-brand img { height: 26px !important; }
}
body.olg-on .main-navigation .olek-nav-brand .site-logo { margin: 0 !important; padding: 0 !important; }
body.olg-on .main-navigation .olek-nav-brand a { display: block; line-height: 0; padding: 0 !important; box-shadow: none !important; background: none !important; }
body.olg-on .main-navigation .olek-nav-brand img { box-sizing: content-box; padding: 0 !important; margin: 0 !important; width: auto !important; max-width: none !important; display: block; }
@media (max-width: 768px) {
	body.olg-on .main-navigation.olek-has-brand .olek-nav-brand { padding: 6px 0 6px 16px; }
	body.olg-on .main-navigation.olek-has-brand .menu-bar-items { order: 1; flex: 0 0 auto; }
	body.olg-on .main-navigation.olek-has-brand .menu-toggle { order: 2; flex-grow: 0; padding-right: 20px; }
	body.olg-on .main-navigation.olek-has-brand .main-nav { order: 3; flex-basis: 100%; }
}

/* =====================================================================
 * SIDEBAR – widżety, linki i przyciski
 * ===================================================================== */
body.olg-on :is(.sidebar, #right-sidebar, #left-sidebar) .widget:not(.ai_widget):not([class*="code-block"]) {
	background: #fff;
	border: 1px solid var(--olb-line);
	border-radius: 12px;
}
body.olg-on :is(.sidebar, #right-sidebar, #left-sidebar) .widget-title {
	font-family: var(--olb-serif);
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--olb-ink);
	padding-bottom: 8px;
	margin-bottom: 12px;
	border-bottom: 2px solid var(--olb-ink);
}
/* Przyciski wszędzie: GenerateBlocks, bloki WP, przyciski z kolorem w stylu inline.
 * Kolor tekstu wymuszony na biały – czytelny niezależnie od innych reguł. */
body.olg-on :is(a.gb-button, .gb-button, a.wp-block-button__link:not(.is-style-outline *), .widget a[style*="background"], .entry-content a[style*="background"]) {
	background: var(--olb-accent) !important;
	border-color: var(--olb-accent) !important;
	color: #fff !important;
	border-radius: 10px;
	font-weight: 600;
	text-decoration: none !important;
	box-shadow: none;
}
body.olg-on :is(a.gb-button, .gb-button, a.wp-block-button__link:not(.is-style-outline *), .widget a[style*="background"], .entry-content a[style*="background"]):is(:hover, :focus) {
	background: var(--olb-accent-ink) !important;
	border-color: var(--olb-accent-ink) !important;
	color: #fff !important;
}
body.olg-on :is(a.gb-button, .gb-button, a.wp-block-button__link) :is(span, svg, .gb-icon) { color: #fff !important; fill: currentColor; }

/* Niebieskie ramki wklejane ręcznie (style inline) – przemalowane na odcień akcentu.
 * Dodatkowo klasa pomocnicza .olek-box do użycia w GenerateBlocks / HTML. */
body.olg-on :is(.entry-content, .widget) :is(div, p, aside, section):is([style*="background:#1e73be" i], [style*="background: #1e73be" i], [style*="background-color:#1e73be" i], [style*="background-color: #1e73be" i], [style*="background:#1e58be" i], [style*="background: #1e58be" i], [style*="background-color:#1e58be" i], [style*="background-color: #1e58be" i], [style*="background:#1565c0" i], [style*="background: #1565c0" i], [style*="background-color:#1565c0" i], [style*="background-color: #1565c0" i], [style*="background:#2271b1" i], [style*="background: #2271b1" i], [style*="background-color:#2271b1" i], [style*="background-color: #2271b1" i], [style*="background:#0066cc" i], [style*="background: #0066cc" i], [style*="background-color:#0066cc" i], [style*="background-color: #0066cc" i], [style*="background:#3b82f6" i], [style*="background: #3b82f6" i], [style*="background-color:#3b82f6" i], [style*="background-color: #3b82f6" i], [style*="background:#2563eb" i], [style*="background: #2563eb" i], [style*="background-color:#2563eb" i], [style*="background-color: #2563eb" i], [style*="background:#007bff" i], [style*="background: #007bff" i], [style*="background-color:#007bff" i], [style*="background-color: #007bff" i]),
body.olg-on .olek-box--solid {
	background: var(--olb-accent-dark) !important;
	color: #fff !important;
	border-color: var(--olb-accent-dark) !important;
	border-radius: 12px;
}
body.olg-on :is(.entry-content, .widget) :is(div, p, aside, section):is([style*="background:#1e73be" i], [style*="background: #1e73be" i], [style*="background-color:#1e73be" i], [style*="background-color: #1e73be" i], [style*="background:#1e58be" i], [style*="background: #1e58be" i], [style*="background-color:#1e58be" i], [style*="background-color: #1e58be" i], [style*="background:#1565c0" i], [style*="background: #1565c0" i], [style*="background-color:#1565c0" i], [style*="background-color: #1565c0" i], [style*="background:#2271b1" i], [style*="background: #2271b1" i], [style*="background-color:#2271b1" i], [style*="background-color: #2271b1" i], [style*="background:#0066cc" i], [style*="background: #0066cc" i], [style*="background-color:#0066cc" i], [style*="background-color: #0066cc" i], [style*="background:#3b82f6" i], [style*="background: #3b82f6" i], [style*="background-color:#3b82f6" i], [style*="background-color: #3b82f6" i], [style*="background:#2563eb" i], [style*="background: #2563eb" i], [style*="background-color:#2563eb" i], [style*="background-color: #2563eb" i], [style*="background:#007bff" i], [style*="background: #007bff" i], [style*="background-color:#007bff" i], [style*="background-color: #007bff" i]) :is(a, h2, h3, h4, strong, p, li),
body.olg-on .olek-box--solid :is(a, h2, h3, h4, strong, p, li) { color: #fff !important; }
body.olg-on :is(.entry-content, .widget) :is(div, p, aside, section):is([style*="background:#f4f8ff" i], [style*="background: #f4f8ff" i], [style*="background-color:#f4f8ff" i], [style*="background-color: #f4f8ff" i], [style*="background:#f0f8ff" i], [style*="background: #f0f8ff" i], [style*="background-color:#f0f8ff" i], [style*="background-color: #f0f8ff" i], [style*="background:#e7f3ff" i], [style*="background: #e7f3ff" i], [style*="background-color:#e7f3ff" i], [style*="background-color: #e7f3ff" i], [style*="background:#e0edff" i], [style*="background: #e0edff" i], [style*="background-color:#e0edff" i], [style*="background-color: #e0edff" i], [style*="background:#e8f4f8" i], [style*="background: #e8f4f8" i], [style*="background-color:#e8f4f8" i], [style*="background-color: #e8f4f8" i], [style*="background:#f0f9ff" i], [style*="background: #f0f9ff" i], [style*="background-color:#f0f9ff" i], [style*="background-color: #f0f9ff" i], [style*="background:#e3f2fd" i], [style*="background: #e3f2fd" i], [style*="background-color:#e3f2fd" i], [style*="background-color: #e3f2fd" i], [style*="background:#eff6ff" i], [style*="background: #eff6ff" i], [style*="background-color:#eff6ff" i], [style*="background-color: #eff6ff" i]),
body.olg-on .olek-box {
	background: var(--olb-tint-2) !important;
	border-color: var(--olb-tint-line) !important;
	color: var(--olb-ink) !important;
	border-radius: 12px;
}
body.olg-on .olek-box { border: 1px solid var(--olb-tint-line); border-left: 4px solid var(--olb-accent) !important; padding: 16px 20px; margin: 1.4em 0; }
body.olg-on :is(.entry-content, .widget) :is(div, p, aside, section):is([style*="background:#f4f8ff" i], [style*="background: #f4f8ff" i], [style*="background-color:#f4f8ff" i], [style*="background-color: #f4f8ff" i], [style*="background:#f0f8ff" i], [style*="background: #f0f8ff" i], [style*="background-color:#f0f8ff" i], [style*="background-color: #f0f8ff" i], [style*="background:#e7f3ff" i], [style*="background: #e7f3ff" i], [style*="background-color:#e7f3ff" i], [style*="background-color: #e7f3ff" i], [style*="background:#e0edff" i], [style*="background: #e0edff" i], [style*="background-color:#e0edff" i], [style*="background-color: #e0edff" i], [style*="background:#e8f4f8" i], [style*="background: #e8f4f8" i], [style*="background-color:#e8f4f8" i], [style*="background-color: #e8f4f8" i], [style*="background:#f0f9ff" i], [style*="background: #f0f9ff" i], [style*="background-color:#f0f9ff" i], [style*="background-color: #f0f9ff" i], [style*="background:#e3f2fd" i], [style*="background: #e3f2fd" i], [style*="background-color:#e3f2fd" i], [style*="background-color: #e3f2fd" i], [style*="background:#eff6ff" i], [style*="background: #eff6ff" i], [style*="background-color:#eff6ff" i], [style*="background-color: #eff6ff" i]) a,
body.olg-on .olek-box a { color: var(--olb-accent) !important; }

/* =====================================================================
 * STOPKA (GeneratePress .site-footer / .footer-widgets / .site-info)
 * ===================================================================== */
body.olg-on .site-info {
	background-color: var(--olb-accent-dark);
	color: rgba(255,255,255,.88);
}
body.olg-on .site-info :is(a, .widget a, .menu a) { color: #fff !important; text-decoration: none; }
body.olg-on .site-info :is(a, .widget a, .menu a):hover { text-decoration: underline; text-underline-offset: 3px; }
body.olg-on .site-info .widget { background: transparent; border: 0; }
body.olg-on .site-info .current-menu-item > a { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
body.olg-on .footer-widgets {
	background: #fff;
	border-top: 1px solid var(--olb-line);
}
body.olg-on .footer-widgets a { color: var(--olb-ink); }
body.olg-on .footer-widgets a:hover { color: var(--olb-accent); }
body.olg-on .generate-back-to-top { background-color: var(--olb-accent) !important; color: #fff !important; border-radius: 10px; }

/* Logo w stopce */
body.olg-on .site-info .olek-footer-brand { flex-basis: 100%; width: 100%; display: flex; justify-content: center; margin: 4px 0 18px; }
body.olg-on .site-info .olek-footer-brand a { display: inline-block; line-height: 0; text-decoration: none !important; }
body.olg-on .site-info .olek-footer-brand img { display: block; max-width: 80vw; }

/* =====================================================================
 * STRONY LEKÓW – wtyczka sekcji (lek-nawigacja, tabela danych, opinie)
 * ===================================================================== */
/* „Na tej stronie:” / „Zobacz też:” */
body.olg-on .lek-nawigacja {
	background: var(--olb-soft);
	border: 1px solid var(--olb-line);
	border-radius: 12px;
	padding: 12px 16px;
	font-size: .95rem;
	line-height: 1.9;
}
body.olg-on .lek-nawigacja strong {
	color: var(--olb-muted);
	font-size: .75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	margin-right: .5rem;
}
body.olg-on .lek-nawigacja a,
body.olg-on .entry-content .lek-nawigacja a {
	color: var(--olb-accent) !important;
	font-weight: 600;
	text-decoration: none !important;
}
body.olg-on .lek-nawigacja a:hover { color: var(--olb-accent-ink) !important; text-decoration: underline !important; text-underline-offset: 3px; }
body.olg-on .lek-nawigacja .sep { color: var(--olb-line); margin: 0 .15rem; }

/* „Aktualizacja: …” */
body.olg-on .lek-aktualizacja { color: var(--olb-muted); font-size: .88rem; }

/* Tabela danych leku */
body.olg-on .entry-content table.lek-dane-tabela {
	border: 1px solid var(--olb-line);
	border-radius: 12px;
	overflow: hidden;
	border-collapse: separate;
	border-spacing: 0;
	font-size: .95rem;
}
body.olg-on table.lek-dane-tabela td { padding: 10px 14px; border: 0; border-bottom: 1px solid var(--olb-line); }
body.olg-on table.lek-dane-tabela tr:last-child td { border-bottom: 0; }
body.olg-on table.lek-dane-tabela td.lek-dane-etykieta {
	background: var(--olb-soft);
	color: var(--olb-ink-2);
	font-weight: 600;
	font-size: .88rem;
}
@media (max-width: 600px) {
	body.olg-on table.lek-dane-tabela td.lek-dane-etykieta { border-bottom: 0; padding-bottom: 4px; font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; color: var(--olb-muted); }
	body.olg-on table.lek-dane-tabela td:not(.lek-dane-etykieta) { padding-top: 2px; }
}

/* Chipy kategorii w tabeli */
body.olg-on .category-tags { gap: 6px; }
body.olg-on .category-tags .category-tag,
body.olg-on .entry-content .category-tags a.category-tag {
	background: var(--olb-tint);
	border: 1px solid var(--olb-tint-line);
	border-radius: 999px;
	color: var(--olb-accent-ink) !important;
	padding: 4px 12px;
	font-size: .85rem;
	font-weight: 600;
	text-decoration: none !important;
}
body.olg-on .category-tags .category-tag:hover { background: var(--olb-accent); border-color: var(--olb-accent); color: #fff !important; }

/* Zajawka ulotki (styl inline we wtyczce) */
body.olg-on p.ulotka-teaser {
	background: var(--olb-tint-2) !important;
	border: 1px solid var(--olb-tint-line) !important;
	border-left: 4px solid var(--olb-accent) !important;
	border-radius: 0 10px 10px 0 !important;
	color: var(--olb-ink) !important;
	padding: 12px 16px !important;
}
body.olg-on p.ulotka-teaser a { color: var(--olb-accent) !important; font-weight: 600; }

/* Podstrony sekcji (/opinie/, /dawkowanie/ …) */
body.olg-on h1.section-h1 { font-family: var(--olb-serif); font-weight: 700; color: var(--olb-ink); letter-spacing: -.012em; line-height: 1.15; }
body.olg-on .section-empty-notice { background: var(--olb-tint-2); border: 1px solid var(--olb-tint-line); border-radius: 14px; }
body.olg-on .section-empty-notice h3 { color: var(--olb-ink) !important; font-family: var(--olb-serif); }
body.olg-on .section-empty-notice a { color: var(--olb-accent); }

/* Wstęp do opinii */
body.olg-on .opinions-intro {
	background: #fff;
	border: 1px solid var(--olb-line);
	border-left: 4px solid var(--olb-accent);
	border-radius: 0 14px 14px 0;
	padding: 20px 24px;
}
body.olg-on .opinions-intro p { color: var(--olb-ink-2); }
body.olg-on .opinions-intro strong { color: var(--olb-ink); }
body.olg-on .opinions-intro .opinions-disclaimer {
	background: #fffbeb;
	border: 1px solid #fde68a;
	border-radius: 10px;
	color: #78350f !important;
}
body.olg-on .opinions-intro .opinions-disclaimer strong { color: #92400e !important; }

/* Przyciski akcji („Dodaj opinię”, „Wróć do ulotki”, komentarze, udostępnij) */
body.olg-on a.action-button,
body.olg-on .entry-content a.action-button {
	background: var(--olb-accent) !important;
	border: 2px solid var(--olb-accent) !important;
	color: #fff !important;
	border-radius: 10px;
	font-weight: 700;
	text-decoration: none !important;
	box-shadow: none !important;
	transform: none !important;
}
body.olg-on a.action-button:is(:hover, :focus) { background: var(--olb-accent-ink) !important; border-color: var(--olb-accent-ink) !important; color: #fff !important; }
body.olg-on a.action-button.secondary {
	background: #fff !important;
	color: var(--olb-accent) !important;
}
body.olg-on a.action-button.secondary:is(:hover, :focus) { background: var(--olb-tint) !important; color: var(--olb-accent-ink) !important; border-color: var(--olb-accent) !important; }
body.olg-on a.action-button.secondary::before { filter: none; }
body.olg-on .action-buttons { gap: 10px; }
body.olg-on a.action-button { box-sizing: border-box; max-width: 100%; }
/* Obok siebie tylko w treści (strona opinii) – NIE w sidebarze, gdzie lista jest pionowa */
@media (min-width: 769px) {
	body.olg-on .entry-content .action-buttons > a.action-button { width: auto; flex: 1 1 220px; }
}

/* Sidebar „Na skróty” (.sidebar-navigation) – zwarta lista przycisków z ikonami */
body.olg-on .sidebar-navigation .action-buttons { gap: 8px !important; }
body.olg-on .sidebar-navigation a.action-button {
	flex: 0 0 auto !important;
	justify-content: flex-start !important;
	width: 100%;
	min-width: 0;
	margin: 0 !important;
	padding: 11px 16px !important;
	font-size: .95rem !important;
	line-height: 1.3;
	border-radius: 10px;
	border-width: 0 !important;
}
body.olg-on .sidebar-navigation a.action-button::before { width: 18px; height: 18px; margin-right: 12px; flex: 0 0 18px; }
body.olg-on .sidebar-navigation a.action-button::after { content: "›"; margin-left: auto; font-size: 1.25rem; line-height: 1; opacity: .7; }
body.olg-on .sidebar-navigation a.action-button:hover { transform: none !important; box-shadow: none !important; }

/* =====================================================================
 * OCENY – wtyczka Drug Reviews System
 * ===================================================================== */
body.olg-on .drug-rating-summary {
	background: #fff;
	border: 1px solid var(--olb-line);
	border-radius: 14px;
	padding: 20px 24px;
	margin: 1.6em 0;
	box-shadow: none;
}
body.olg-on .drug-rating-summary h3 {
	font-family: var(--olb-serif);
	font-size: 1.2rem !important;
	margin: 0 0 14px !important;
	color: var(--olb-ink);
}
body.olg-on .drug-rating-summary .rating-bar { display: flex; align-items: center; gap: 12px; margin: 6px 0; }
body.olg-on .drug-rating-summary .rating-label { flex: 0 0 110px; font-size: .9rem; color: var(--olb-ink-2); }
body.olg-on .drug-rating-summary .rating-progress { flex: 1; height: 8px; background: var(--olb-soft); border-radius: 999px; overflow: hidden; border: 0; }
body.olg-on .drug-rating-summary .rating-progress-bar { height: 100%; background: #f59e0b; border-radius: 999px; }
body.olg-on .drug-rating-summary .rating-percentage { flex: 0 0 40px; text-align: right; font-size: .85rem; font-variant-numeric: tabular-nums; color: var(--olb-muted); }
body.olg-on .drug-rating-summary .drug-rating-summary-link { margin: 16px 0 0 !important; padding-top: 12px; border-top: 1px solid var(--olb-line); }
body.olg-on .drug-rating-summary .drug-rating-summary-link a { color: var(--olb-accent) !important; font-weight: 700; text-decoration: none !important; }
body.olg-on .drug-rating-summary .drug-rating-summary-link a::after { content: " →"; }
body.olg-on .drug-rating-summary--empty {
	background: var(--olb-soft) !important;
	border: 1px solid var(--olb-line) !important;
	border-radius: 12px !important;
}
body.olg-on .drug-rating-summary--empty a { color: var(--olb-accent) !important; font-weight: 600; }
body.olg-on .comment-rating { color: #f59e0b; letter-spacing: .08em; font-size: 1.05rem; }
body.olg-on .comment-form-rating .rating-stars label { color: #d1d5db; }
body.olg-on .comment-form-rating .rating-stars input:checked ~ label,
body.olg-on .comment-form-rating .rating-stars label:hover,
body.olg-on .comment-form-rating .rating-stars label:hover ~ label { color: #f59e0b; }

/* =====================================================================
 * WIDŻET PODOBNYCH LEKÓW (zamienniki)
 * ===================================================================== */
body.olg-on h2.podobne-leki-widget-h2 {
	background: none !important;
	padding: 0 !important;
	font-family: var(--olb-serif);
	font-weight: 700;
	color: var(--olb-ink) !important;
	font-size: 1.45rem;
	line-height: 1.3;
	margin: 1.8em 0 .7em !important;
}
body.olg-on .podobne-leki-widget {
	background: #fff;
	border: 1px solid var(--olb-line);
	border-radius: 14px;
	box-shadow: none;
	padding: 6px 20px 16px;
}
body.olg-on .podobne-leki-item { border-bottom: 1px solid var(--olb-line); padding: 14px 0; }
body.olg-on .podobne-leki-item:hover { background: var(--olb-tint-3); padding-left: 10px; border-radius: 8px; }
body.olg-on .podobne-leki-widget a.podobne-leki-link { color: var(--olb-ink) !important; font-weight: 700; text-decoration: none !important; }
body.olg-on .podobne-leki-widget a.podobne-leki-link:hover { color: var(--olb-accent) !important; }
body.olg-on .podobne-leki-meta { color: var(--olb-muted); }
body.olg-on .podobne-leki-tag { background: var(--olb-soft); color: var(--olb-ink-2); border: 1px solid var(--olb-line); border-radius: 999px; }
body.olg-on .podobne-leki-tag.tag-wspolny { background: var(--olb-tint); color: var(--olb-accent-ink); border-color: var(--olb-tint-line); }
body.olg-on .podobne-leki-tag.tag-dodatkowy { background: #fffbeb; color: #92400e; border-color: #fde68a; }
body.olg-on .oznaczenie { border-radius: 999px; letter-spacing: .04em; font-size: .68em; }
body.olg-on .oznaczenie.te-same { background: var(--olb-tint); color: var(--olb-accent-ink); border-color: var(--olb-tint-line); }
body.olg-on .oznaczenie.zawiera-dodatkowe { background: #fffbeb; color: #92400e; border-color: #fde68a; }
body.olg-on .oznaczenie.czesciowe { background: #fef2f2; color: #991b1b; border-color: #fecaca; }
body.olg-on :is(.podobne-leki-legenda, .podobne-leki-wazne, .podobne-leki-disclaimer, .podobne-leki-brak) {
	background: var(--olb-soft);
	border: 1px solid var(--olb-line);
	border-radius: 12px;
	color: var(--olb-ink-2);
}
body.olg-on .podobne-leki-legenda p { color: var(--olb-ink); }

/* =====================================================================
 * WIDŻET OPINII O POWIĄZANYCH LEKACH
 * ===================================================================== */
body.olg-on .opinie-leki-widget {
	background: #fff;
	border: 1px solid var(--olb-line);
	border-radius: 14px;
	box-shadow: none;
}
body.olg-on .opinie-leki-widget h3 {
	font-family: var(--olb-serif);
	color: var(--olb-ink) !important;
	border-bottom: 2px solid var(--olb-ink) !important;
	padding-bottom: 8px !important;
}
body.olg-on .opinie-leki-item { border-bottom: 1px solid var(--olb-line); background: transparent; }
body.olg-on .opinie-leki-item:hover { background: var(--olb-tint-3); }
body.olg-on .opinie-leki-widget a.opinie-leki-link { color: var(--olb-ink) !important; font-weight: 700; text-decoration: none !important; }
body.olg-on .opinie-leki-widget a.opinie-leki-link:hover { color: var(--olb-accent) !important; }
body.olg-on .opinie-leki-meta { color: var(--olb-muted); }
body.olg-on .opinie-leki-meta .latest-opinion { color: var(--olb-accent-ink); }
body.olg-on .opinie-leki-meta .opinie-count { background: var(--olb-tint); color: var(--olb-accent-ink); border: 1px solid var(--olb-tint-line); border-radius: 999px; }
body.olg-on .opinie-leki-kategoria { background: var(--olb-soft); color: var(--olb-ink-2); border: 1px solid var(--olb-line); border-radius: 999px; }
body.olg-on .opinie-leki-brak { background: var(--olb-soft); border: 1px solid var(--olb-line); border-radius: 12px; color: var(--olb-ink-2); }

/* =====================================================================
 * POPUP „Więcej o leku …” (wtyczka O-Lekach.pl – Popup z sekcjami leku, .olk-pop)
 * ===================================================================== */
body.olg-on .olk-pop {
	border: 1px solid var(--olb-line);
	border-top: 4px solid var(--olb-accent);
	border-radius: 14px;
	box-shadow: 0 16px 40px rgba(16, 24, 40, .16);
	color: var(--olb-ink);
}
body.olg-on .olk-pop .olk-pop__title { font-size: 16px; font-weight: 700; color: var(--olb-ink); }
body.olg-on .olk-pop .olk-pop__sub { color: var(--olb-muted); }
body.olg-on .olk-pop .olk-pop__close:hover { background: var(--olb-soft) !important; color: var(--olb-ink) !important; }
body.olg-on .olk-pop a.olk-pop__link {
	background: var(--olb-soft);
	border: 1px solid var(--olb-line);
	border-left: 3px solid var(--olb-accent);
	border-radius: 10px;
	color: var(--olb-ink);
	font-weight: 600;
	transition: background .15s, border-color .15s, color .15s;
}
body.olg-on .olk-pop a.olk-pop__link::after { content: "›"; margin-left: auto; font-size: 1.2rem; line-height: 1; color: var(--olb-muted); }
body.olg-on .olk-pop a.olk-pop__link:hover {
	background: var(--olb-tint);
	border-color: var(--olb-tint-line);
	border-left-color: var(--olb-accent);
	color: var(--olb-accent-ink);
}
body.olg-on .olk-pop a.olk-pop__link:hover::after { color: var(--olb-accent); }
body.olg-on .olk-pop :is(a.olk-pop__link, .olk-pop__close):focus-visible { outline: 2px solid var(--olb-accent); outline-offset: 2px; }
@media (max-width: 600px) {
	body.olg-on .olk-pop { border-radius: 16px 16px 0 0; border-left: 0; border-right: 0; border-bottom: 0; }
}

/* =====================================================================
 * „Przydatne zasoby” – wtyczka O-Lekach Pillar Pages Widget (.olekach-pillar-widget)
 * ===================================================================== */
body.olg-on .olekach-pillar-widget {
	background: var(--olb-tint-3);
	border: 1px solid var(--olb-line);
	border-left: 4px solid var(--olb-accent);
	border-radius: 0 14px 14px 0;
	box-shadow: none;
	animation: none;
}
body.olg-on .olekach-pillar-widget::before { content: none; }
body.olg-on .olekach-pillar-widget h3 {
	font-family: var(--olb-serif);
	font-size: 1.2rem;
	font-weight: 700;
	color: var(--olb-ink);
	margin: 0 0 14px !important;
	padding: 0 !important;
}
body.olg-on .olekach-pillar-widget .pillar-links-container { gap: 10px; }
body.olg-on .olekach-pillar-widget .pillar-link-item {
	background: #fff;
	border: 1px solid var(--olb-line);
	border-radius: 10px;
	padding: 14px 16px;
	transform: none !important;
	box-shadow: none !important;
	transition: border-color .15s, background .15s;
}
body.olg-on .olekach-pillar-widget .pillar-link-item:hover { border-color: var(--olb-tint-line); background: var(--olb-tint-2); }
body.olg-on .olekach-pillar-widget .pillar-link-item a,
body.olg-on .entry-content .olekach-pillar-widget .pillar-link-item a {
	color: var(--olb-ink) !important;
	font-weight: 700;
	font-size: 1rem;
	text-decoration: none !important;
}
body.olg-on .olekach-pillar-widget .pillar-link-item a::after { content: "›"; opacity: 1; font-size: 1.3rem; font-weight: 400; line-height: 1; color: var(--olb-muted); }
body.olg-on .olekach-pillar-widget .pillar-link-item:hover a { color: var(--olb-accent-ink) !important; }
body.olg-on .olekach-pillar-widget .pillar-link-item:hover a::after { color: var(--olb-accent); }
body.olg-on .olekach-pillar-widget .pillar-link-description { color: var(--olb-muted); font-size: .88rem; margin-top: 4px; padding-left: 26px; }

/* =====================================================================
 * Ramka „Komunikaty GIF dotyczące tego leku” (strona leku)
 * ===================================================================== */
body .olek-gif-box { margin: 0 0 1.4em; padding: 14px 18px; background: #fef3f2; border: 1px solid #fecdca; border-left: 4px solid #b42318; border-radius: 0 12px 12px 0; }
body .olek-gif-box .olek-gif-box-h { display: flex; align-items: center; gap: 10px; margin: 0 0 6px !important; font-weight: 700; color: #7a271a; font-size: .95rem; }
body .olek-gif-box .olek-gif-box-h span { flex: none; width: 22px; height: 22px; border-radius: 50%; background: #b42318; color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: .8rem; font-weight: 800; }
body .olek-gif-box ul { list-style: none; margin: 0 0 4px !important; padding: 0 !important; }
body .olek-gif-box li { margin: 0; padding: 3px 0 !important; font-size: .93rem; }
body .olek-gif-box time { color: #7a271a; font-variant-numeric: tabular-nums; margin-right: 6px; }
body .olek-gif-box a { color: #b42318 !important; font-weight: 600; }
body .olek-gif-box .olek-gif-box-more { margin: 6px 0 0 !important; font-size: .88rem; }

/* Ramki wtyczki O-lekach GSC Linker („Więcej o leku:”, „Leki z substancją…”) */
body.olg-on .oll-box { background: var(--olb-tint-2); border: 1px solid var(--olb-tint-line); border-left: 4px solid var(--olb-accent); border-radius: 0 10px 10px 0; padding: 10px 16px; line-height: 1.7; }
body.olg-on .oll-box .oll-box__label { color: var(--olb-ink); font-weight: 700; }
body.olg-on .entry-content .oll-box a { color: var(--olb-accent) !important; font-weight: 600; text-decoration: none !important; }
body.olg-on .entry-content .oll-box a:hover { text-decoration: underline !important; }

/* =====================================================================
 * REKLAMY (wtyczka O-Leków Ads) – spójnie z układem portalu
 * ===================================================================== */
/* Widżet z reklamą w sidebarze: bez ramki karty */
body.olg-on :is(.sidebar, #right-sidebar, #left-sidebar) .widget:has(.olads-slot) { background: transparent; border: 0; padding: 0; box-shadow: none; }
/* Ostatni widżet sidebaru z reklamą „przykleja się” przy przewijaniu (wyższa widoczność reklamy) */
/* Przyklejanie w pasku bocznym (bez wtyczek):
   pasek = kolumna na całą wysokość strony; blok „Na skróty” + Facebook przykleja się w pierwszej połowie,
   reklama z ostatniego widżetu – w drugiej (każde dostaje połowę wolnego miejsca, więc się nie nakładają). */
@media (min-width: 1025px) {
	body.olg-on :is(#right-sidebar, #left-sidebar) .inside-right-sidebar,
	body.olg-on :is(#right-sidebar, #left-sidebar) .inside-left-sidebar { height: 100%; display: flex; flex-direction: column; }
	body.olg-on :is(.inside-right-sidebar, .inside-left-sidebar) > * { flex: 0 0 auto; }
	body.olg-on :is(.inside-right-sidebar, .inside-left-sidebar) > .olek-sb-stick.is-sticky { flex: 1 1 0; }
	body.olg-on .olek-sb-stick.is-sticky > .olek-sb-stick-in { position: sticky; top: 76px; }
	body.olg-on :is(.inside-right-sidebar, .inside-left-sidebar) > .widget:last-child:has(.olads-slot) { flex: 1 1 0; }
	body.olg-on :is(.inside-right-sidebar, .inside-left-sidebar) > .widget:last-child:has(.olads-slot) > * { position: sticky; top: 76px; }
	body.olg-on.admin-bar .olek-sb-stick.is-sticky > .olek-sb-stick-in,
	body.olg-on.admin-bar :is(.inside-right-sidebar, .inside-left-sidebar) > .widget:last-child:has(.olads-slot) > * { top: 108px; }
}
/* Stara wtyczka „Sticky Menu (or Anything!)” – po jej wyłączeniu nic nie zostaje; gdyby była aktywna, nie dublujemy przyklejania */
body.olg-on .olek-sb-stick .reklama-sidebar { position: static !important; top: auto !important; width: auto !important; }
.olek-sb-stick .olfb-widget { margin-top: 16px; }
/* Etykieta „Reklama” w stylu portalu */
body.olg-on .olads-label { font-family: var(--olb-sans, inherit); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--olb-muted, #7a8088); }
/* Reklamy między sekcjami stron portalu (główna, blog, listy, komunikaty) */
.olb .olads-slot { margin: 32px auto; padding-top: 6px; border-top: 1px solid var(--olb-line); }
.olb .olx-list .olads-slot, .olb .olg-month .olads-slot { margin: 18px auto; border-top: 0; }
.olb .is-filtering :is(.olx-list, .olg-list) :is(.olads-slot, .olads-li) { display: none !important; }

/* =====================================================================
 * BANER ZGÓD – Complianz (.cmplz-cookiebanner, przycisk „Zarządzaj zgodą”)
 * Complianz koloruje przez zmienne CSS – podmieniamy je na kolory portalu,
 * a dla starszych wersji dokładamy bezpośrednie reguły.
 * ===================================================================== */
body.olg-on :is(.cmplz-cookiebanner, #cmplz-manage-consent, .cmplz-manage-consent) {
	--cmplz_button_accept_background_color: var(--olb-accent);
	--cmplz_button_accept_border_color: var(--olb-accent);
	--cmplz_button_accept_text_color: #fff;
	--cmplz_button_deny_background_color: #fff;
	--cmplz_button_deny_border_color: var(--olb-line);
	--cmplz_button_deny_text_color: var(--olb-ink);
	--cmplz_button_settings_background_color: #fff;
	--cmplz_button_settings_border_color: var(--olb-accent);
	--cmplz_button_settings_text_color: var(--olb-accent-ink);
	--cmplz_hyperlink_color: var(--olb-accent);
	--cmplz_slider_active_color: var(--olb-accent);
	--cmplz_category_header_always_active_color: var(--olb-accent);
	--cmplz_category_header_active_background_color: var(--olb-soft);
	--cmplz_category_header_title_color: var(--olb-ink);
	--cmplz_category_body_text_color: var(--olb-ink-2);
	--cmplz_text_color: var(--olb-ink-2);
	--cmplz_banner_border_radius: 16px;
	--cmplz_button_border_radius: 10px;
}
body.olg-on .cmplz-cookiebanner { border: 1px solid var(--olb-line); box-shadow: 0 20px 50px rgba(16, 24, 40, .22); }
body.olg-on .cmplz-cookiebanner .cmplz-title { font-weight: 700; color: var(--olb-ink); }
body.olg-on .cmplz-cookiebanner .cmplz-btn { border-radius: 10px !important; font-weight: 700; box-shadow: none; }
body.olg-on .cmplz-cookiebanner .cmplz-btn.cmplz-accept {
	background-color: var(--olb-accent) !important;
	border-color: var(--olb-accent) !important;
	color: #fff !important;
}
body.olg-on .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover { background-color: var(--olb-accent-ink) !important; border-color: var(--olb-accent-ink) !important; }
body.olg-on .cmplz-cookiebanner .cmplz-btn:is(.cmplz-deny) { background-color: #fff !important; border-color: var(--olb-line) !important; color: var(--olb-ink) !important; }
body.olg-on .cmplz-cookiebanner .cmplz-btn:is(.cmplz-view-preferences, .cmplz-save-preferences, .cmplz-manage-options) {
	background-color: #fff !important;
	border-color: var(--olb-accent) !important;
	color: var(--olb-accent-ink) !important;
}
body.olg-on .cmplz-cookiebanner .cmplz-btn:is(.cmplz-deny, .cmplz-view-preferences, .cmplz-save-preferences, .cmplz-manage-options):hover { background-color: var(--olb-tint-2) !important; }
body.olg-on .cmplz-cookiebanner :is(.cmplz-links a, .cmplz-link, a.cmplz-link) { color: var(--olb-accent) !important; }
body.olg-on .cmplz-cookiebanner .cmplz-category { background-color: var(--olb-soft); border-radius: 10px; }
body.olg-on .cmplz-cookiebanner .cmplz-always-active { color: var(--olb-accent) !important; }
body.olg-on .cmplz-cookiebanner .cmplz-body::-webkit-scrollbar-thumb { background-color: var(--olb-line) !important; border-radius: 8px; }
body.olg-on .cmplz-cookiebanner .cmplz-body { scrollbar-color: var(--olb-line) transparent; scrollbar-width: thin; }
body.olg-on #cmplz-manage-consent .cmplz-manage-consent {
	background-color: #fff !important;
	color: var(--olb-ink) !important;
	border: 1px solid var(--olb-line) !important;
	border-bottom: 0 !important;
	border-radius: 10px 10px 0 0 !important;
	font-weight: 600;
	box-shadow: 0 -4px 14px rgba(16, 24, 40, .08) !important;
}

/* Telefony – mniejsze nagłówki treści */
@media (max-width: 480px) {
	body.olg-on :is(.entry-title, .page-title) { font-size: 1.75rem; }
	body.olg-on :is(.entry-content, .taxonomy-description) h2:not(.stylowy-faq-header) { font-size: 1.4rem; }
	body.olg-on :is(.entry-content, .taxonomy-description) h3:not(.stylowy-faq-question) { font-size: 1.15rem; }
	:is(.olb, body.olg-on) .stylowy-faq-container .stylowy-faq-header { font-size: 1.4rem; }
}

/* =====================================================================
 * Facebook – zachęta do obserwowania (bez skryptów Facebooka)
 * ===================================================================== */
.olfb { --olfb: #1877f2; --olfb-ink: #0b5fd1; }
.olfb--karta, .olfb--pasek {
	display: flex; align-items: center; gap: 18px;
	margin: 36px 0 8px; padding: 20px 22px;
	background: linear-gradient(135deg, #eef5ff 0%, #f7faff 100%);
	border: 1px solid #d5e5fd; border-radius: 16px;
	font-family: var(--olb-sans, inherit);
}
.olfb--pasek { margin: 40px 0; }
.olfb-badge { flex: 0 0 52px; height: 52px; border-radius: 50%; background: var(--olfb); color: #fff; display: inline-flex; align-items: center; justify-content: center; }
.olfb-txt { flex: 1 1 auto; min-width: 0; }
.olfb .olfb-h, .olfb .olfb-p, .olfb .olfb-count { margin: 0; }
.olfb .olfb-h { font-family: var(--olb-serif, inherit); font-weight: 700; font-size: 1.15rem; line-height: 1.3; color: var(--olb-ink, #121a26); }
.olfb .olfb-p { margin-top: 4px; font-size: .95rem; line-height: 1.55; color: var(--olb-ink-2, #3c4757); }
.olfb .olfb-count { margin-top: 6px; font-size: .88rem; color: var(--olb-muted, #687587); }
.olfb .olfb-count strong { color: var(--olfb-ink); font-variant-numeric: tabular-nums; }
.olfb a.olfb-btn {
	flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px;
	padding: 11px 18px; border-radius: 10px; background: var(--olfb); color: #fff !important;
	font-weight: 700; font-size: .95rem; line-height: 1.2; text-decoration: none !important; box-shadow: none; white-space: nowrap;
}
.olfb a.olfb-btn:hover { background: var(--olfb-ink); }
.olfb--mini { margin: 6px 0 14px; text-align: center; }
.olfb--mini a { display: inline-flex; align-items: center; gap: 8px; color: #fff !important; font-weight: 600; font-size: .92rem; text-decoration: none !important; }
.olfb--mini a:hover span { text-decoration: underline; }
.olfb--mini .olfb-ico { color: #fff; background: var(--olfb); border-radius: 50%; padding: 3px; width: 24px; height: 24px; }
.olfb--mini small { font-weight: 400; opacity: .75; font-size: .85rem; }
.olfb--mini small::before { content: "·"; margin: 0 6px 0 2px; }
@media (max-width: 640px) {
	.olfb--karta, .olfb--pasek { flex-wrap: wrap; gap: 14px; padding: 18px; }
	.olfb-badge { flex-basis: 44px; height: 44px; }
	.olfb-txt { flex-basis: calc(100% - 60px); }
	.olfb a.olfb-btn { width: 100%; justify-content: center; }
}

/* Facebook – ramka w pasku bocznym */
.olfb--boczna { padding: 18px; border: 1px solid #d5e5fd; border-radius: 14px; background: linear-gradient(160deg, #eef5ff 0%, #f8fbff 100%); font-family: var(--olb-sans, inherit); }
.olfb--boczna .olfb-top { display: flex; align-items: center; gap: 10px; }
.olfb--boczna .olfb-badge { flex: 0 0 36px; height: 36px; }
.olfb--boczna .olfb-h { font-size: 1.02rem; }
.olfb--boczna .olfb-p { margin-top: 8px; font-size: .88rem; }
.olfb--boczna a.olfb-btn { display: flex; justify-content: center; margin-top: 12px; width: 100%; box-sizing: border-box; }
.olfb, .olfb * { box-sizing: border-box; }
.widget.olfb-widget { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; }
.olb-alerts + .olfb--pasek { margin: 16px 0 32px; }

/* Nota „Niniejszy artykuł nie jest poradą medyczną…” (.zajawka-big / .olk-notka) –
   w treści bywa zagnieżdżona dwa razy (ramka w ramce = podwójny pasek). Zostaje jedna ramka w stylu portalu. */
body.olg-on :is(.zajawka-big, .zajawka-gora, .olk-notka) {
	border: 0; border-left: 4px solid var(--olb-accent); background: var(--olb-tint-2);
	border-radius: 0 10px 10px 0; padding: 14px 18px; margin: 1.4em 0;
	font-size: .9rem; line-height: 1.6; color: var(--olb-ink-2);
}
body.olg-on :is(.zajawka-big, .zajawka-gora, .olk-notka) :is(.zajawka-big, .zajawka-gora, .olk-notka) {
	border: 0; background: transparent; border-radius: 0; padding: 0; margin: 0;
}
body.olg-on :is(.zajawka-big, .zajawka-gora, .olk-notka) p { margin: 0 0 .5em; padding: 0; }
body.olg-on :is(.zajawka-big, .zajawka-gora, .olk-notka) p:last-child { margin-bottom: 0; }
