/**
* Theme Name: Blonwe Child
* Description: This is a child theme of Blonwe, generated by Merlin WP.
* Author: <a href="http://themeforest.net/user/KlbTheme">KlbTheme (Sinan ISIK)</a>
* Template: blonwe
* Version: 1.3.4
*/
/* Blog headings – larger sizes */

.form-control.search-input{
    margin: 0;
}
.site-header .header-search-form .search-form button i::before{
    color: #fff;
}
.site-header .header-search-form .search-form button i +svg{
    color: #fff;
    fill: #fff;
}
.site-header .header-search-form{
    z-index: 9999;
}
body .single-product .single-product-wrapper .product-detail-inner .product_title

{
margin-top: 1rem;
}
.singular__cta-grid {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin: 1.5rem 0;
    justify-content: center;
    align-items: stretch;
}

.cta-card {
    flex: 1;
    min-width: 220px;
    max-width: 480px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.cta-title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    text-align: center;
}

.cta-icons {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: center;
}

.cta-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
}

.cta-icon:hover {
    opacity: 0.75;
}

.cta-icon--disabled {
    opacity: 0.35;
    cursor: default;
}

.cta-audio {
    width: 100%;
    margin-top: 1rem;
}

.cta-quiz {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.btn-quiz {
    display: inline-block;
    background-color: #c0392b;
    color: #fff;
    padding: 0.6rem 1.25rem;
    border-radius: 4px;
    text-decoration: none;
    font-weight: 600;
    transition: background-color 0.2s;
    margin-top: 0.5rem;
}

.btn-quiz:hover {
    background-color: #a93226;
    color: #fff;
}

@media (max-width: 600px) {
    .singular__cta-grid {
        flex-direction: column;
        align-items: center;
    }

    .cta-card {
        width: 100%;
        max-width: 100%;
    }
}
/* Related / latest posts block on single */
.klb-related-posts {
    margin-top: 3rem;
    margin-bottom: 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--color-gray200);
}

.klb-related-posts__title {
    font-size: 1.25rem !important;
    font-weight: 600;
    margin-bottom: 1.5rem;
}

@media screen and (max-width: 767.98px) {
    .klb-related-posts {
        margin-top: 2rem;
    }

    .klb-related-posts__title {
        font-size: 1.125rem !important;
    }
}

/* ── Siatka powiązanych wpisów ─────────────────────────────────
   Motyw MA regułę .grid-3 (blonwe/style.css, nie base.css):
       .blog-posts.grid-3 .post { flex: 1 0 33.3333% }
   Problem tkwi w pierwszej wartości - flex-grow: 1. Przy pełnym rzędzie
   działa poprawnie, ale gdy wpisów jest mniej niż trzy, kafelek rozpycha
   się na całą szerokość rzędu (jeden wpis = 1310 px zamiast ~430 px).
   Zerujemy sam grow; flex-basis z motywu zostaje i dalej wyznacza kolumnę. */
.blog-posts.grid-style.grid-3 .post {
    flex-grow: 0;
}

/* Niepełny rząd wyśrodkowany - inaczej pojedynczy kafelek wisi przy lewej
   krawędzi z pustką po prawej. Klasę z licznikiem dokłada related-posts.php. */
.klb-related-posts--1 .blog-posts.grid-style,
.klb-related-posts--2 .blog-posts.grid-style {
    justify-content: center;
}

/* Miniatura: szablon wstawia obrazek w rozmiarze "full" bez wymiarów, więc
   w wąskiej kolumnie kafelek puchł do 827 px wysokości. Kadrujemy do stałej
   wysokości - kafelki są równe niezależnie od proporcji zdjęcia. */
.blog-posts.grid-style.grid-3 .post .entry-media img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    border-radius: var(--theme-radius-base);
}

.blog-posts.grid-style.grid-3 .post .entry-title {
    font-size: 1.25rem;
    line-height: 1.3;
}



.klb-article .klb-post h2 {
    font-size: 2rem !important;
    line-height: 1.25 !important;
}
.klb-article .klb-post h3 {
    font-size: 1.625rem !important;
    line-height: 1.3 !important;
}
.klb-article .klb-post h4 {
    font-size: 1.375rem !important;
    line-height: 1.35 !important;
}
.klb-article .klb-post h5 {
    font-size: 1.125rem !important;
    line-height: 1.4 !important;
}
.klb-article .klb-post h6 {
    font-size: 0.9375rem !important;
    line-height: 1.45 !important;
}

@media screen and (max-width: 767.98px) {
    .klb-article .klb-post h2 {
        font-size: 1.5rem !important;
        line-height: 1.3 !important;
    }
    .klb-article .klb-post h3 {
        font-size: 1.25rem !important;
        line-height: 1.35 !important;
    }
    .klb-article .klb-post h4 {
        font-size: 1.0625rem !important;
        line-height: 1.4 !important;
    }
    .klb-article .klb-post h5 {
        font-size: 0.9375rem !important;
        line-height: 1.45 !important;
    }
    .klb-article .klb-post h6 {
        font-size: 0.8125rem !important;
        line-height: 1.5 !important;
    }
}
.klb-blog .entry-media,
.klb-related-posts .entry-media {
    overflow: hidden;
    border-radius: var(--theme-radius-base);
}

.klb-post ul li {
    list-style-type: disc !important;
}

.klb-blog .entry-media a img,
.klb-related-posts .entry-media a img {
    transition: transform 0.4s ease;
}

.klb-blog .entry-media a:hover img,
.klb-related-posts .entry-media a:hover img {
    transform: scale(1.08);
}

.post-share-box {
    margin: 40px 0;
    padding: 28px 24px;
    background: #f7f7f7;
    border-radius: 8px;
    text-align: center;
}

.post-share-box .share-title {
    margin: 0 0 6px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
}

.post-share-box .share-subtitle {
    margin: 0 0 20px;
    color: #666;
    font-size: 15px;
}

.share-icons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
}

.share-icons .share-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    color: #fff;
    text-decoration: none;
    transition: transform .2s ease, opacity .2s ease;
}

.share-icons .share-icon:hover {
    transform: translateY(-3px);
    opacity: .9;
    color: #fff;
}

.share-icons .share-icon svg {
    display: block;
}

.share-facebook  { background: #1877f2; }
.share-twitter   { background: #000; }
.share-linkedin  { background: #0a66c2; }
.share-whatsapp  { background: #25d366; }
.share-email     { background: #555; }


/* === META POSTA: czas czytania + wyświetlenia === */
.entry-meta .meta-stat {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 14px;
    color: var(--color-text);
    font-size: inherit;
    line-height: 1;
    vertical-align: middle;
    opacity: .85;
}

.entry-meta .meta-stat:hover {
    opacity: 1;
}

.entry-meta .meta-icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: var(--color-text);
    stroke: currentColor;
    fill: none;
    display: inline-block;
    vertical-align: middle;
}

/* gdy meta-staty są w entry-published, daj im trochę oddechu od linku z datą */
.entry-published .meta-stat:first-of-type {
    margin-left: 18px;
}

/* ── Formularz śledzenia zamówień ── */
.allefood-tracking {
    max-width: 520px;
    margin: 2rem auto;
}
.allefood-tracking__form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.allefood-tracking__label {
    font-size: .875rem;
    font-weight: 600;
    margin-bottom: 2px;
}
.allefood-tracking__input {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #d0d5dd;
    border-radius: 6px;
    font-size: 1rem;
    box-sizing: border-box;
}
.allefood-tracking__btn {
    background: #004745;
    color: #fff;
    border: none;
    padding: 12px 24px;
    border-radius: 6px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s;
}
.allefood-tracking__btn:hover { background: #006360; }
.allefood-tracking__error {
    background: #fff0f0;
    border: 1px solid #fca5a5;
    padding: 10px 14px;
    border-radius: 6px;
    color: #b91c1c;
    font-size: .9rem;
    margin: 0;
}
.allefood-tracking__order-info {
    background: #f0f9f8;
    border-radius: 6px;
    padding: 10px 14px;
    margin-bottom: 1.25rem;
}
.allefood-tracking__events {
    list-style: none;
    margin: 0;
    padding: 0;
    border-left: 2px solid #004745;
}
.allefood-tracking__event {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px 0 10px 16px;
    position: relative;
}
.allefood-tracking__event::before {
    content: '';
    position: absolute;
    left: -5px;
    top: 14px;
    width: 8px;
    height: 8px;
    background: #004745;
    border-radius: 50%;
}
.allefood-tracking__event-date {
    font-size: .8rem;
    color: #888;
}
.allefood-tracking__event-desc {
    font-size: .95rem;
}
.allefood-tracking__back {
    display: inline-block;
    margin-top: 1.5rem;
    font-size: .9rem;
    color: #004745;
}

/* ── Widget titles: zamiana h4 → p, zachowaj wygląd ── */
p.widget-title {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
}

/* ── H1 na stronach sklepu i kategorii WooCommerce ── */
.woocommerce-page-title {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 1rem;
    color: var(--color-text, #1b1f22);
}


/* =====================================================
   Moje konto — ikony dla customowych pozycji menu
   (Program poleceń + Skarbonka)
   ===================================================== */

.woocommerce-MyAccount-navigation-link--affiliate-dashboard a::before,
.woocommerce-MyAccount-navigation-link--skarbonka a::before {
	content: "";
	display: inline-block;
	width: 19px;
	height: 19px;
	margin-right: 12px;
	vertical-align: -4px;
	background-color: currentColor;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

/* Program poleceń — ikona "udostępnij" (węzły) */
.woocommerce-MyAccount-navigation-link--affiliate-dashboard a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='18' cy='5' r='2.6'/%3E%3Ccircle cx='6' cy='12' r='2.6'/%3E%3Ccircle cx='18' cy='19' r='2.6'/%3E%3Cpath d='M8.3 10.7l7.4-4.4M8.3 13.3l7.4 4.4'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='18' cy='5' r='2.6'/%3E%3Ccircle cx='6' cy='12' r='2.6'/%3E%3Ccircle cx='18' cy='19' r='2.6'/%3E%3Cpath d='M8.3 10.7l7.4-4.4M8.3 13.3l7.4 4.4'/%3E%3C/svg%3E");
}

/* Skarbonka — ikona worka z monetą */
.woocommerce-MyAccount-navigation-link--skarbonka a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4.5h6l-1.8 3h-2.4z'/%3E%3Cpath d='M10.8 7.5h2.4c2.9 2.9 4.6 5.3 4.6 7.6 0 3-2.6 4.4-5.8 4.4s-5.8-1.4-5.8-4.4c0-2.3 1.7-4.7 4.6-7.6z'/%3E%3Ccircle cx='12' cy='14' r='2.3'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4.5h6l-1.8 3h-2.4z'/%3E%3Cpath d='M10.8 7.5h2.4c2.9 2.9 4.6 5.3 4.6 7.6 0 3-2.6 4.4-5.8 4.4s-5.8-1.4-5.8-4.4c0-2.3 1.7-4.7 4.6-7.6z'/%3E%3Ccircle cx='12' cy='14' r='2.3'/%3E%3C/svg%3E");
}



/* =====================================================
   Panel polecającego — formularz rejestracji (YITH Affiliates)
   ===================================================== */

.yith-wcaf-registration-form {
	--af-primary: #004745;
	--af-primary-dark: #00332f;
	--af-text: #1b1f22;
	--af-muted: #667;
	--af-border: #e2e2e2;
	--af-bg-soft: #f7f7f7;
}

/* Karta formularza */
.yith-wcaf-registration-form .forms-container {
	max-width: 640px;
	margin: 0 auto 48px;
	padding: 40px 36px;
	background: #fff;
	border: 1px solid var(--af-border);
	border-radius: 16px;
	box-shadow: 0 8px 28px rgba(27, 31, 34, 0.07);
}

/* Tytuł */
.yith-wcaf-registration-form .register-title {
	margin: 0 0 6px;
	font-size: 26px;
	line-height: 1.25;
	color: var(--af-text);
}

/* Zielona kreska pod tytułem */
.yith-wcaf-registration-form .register-title::after {
	content: "";
	display: block;
	width: 48px;
	height: 3px;
	margin-top: 10px;
	border-radius: 3px;
	background: var(--af-primary);
}

/* Układ: imię + nazwisko obok siebie na desktopie */
.yith-wcaf-registration-form form.register {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px 16px;
	margin-top: 24px;
}

.yith-wcaf-registration-form form.register > * {
	grid-column: 1 / -1;
	margin: 0;
}

.yith-wcaf-registration-form form.register > p.form-row:nth-of-type(2),
.yith-wcaf-registration-form form.register > p.form-row:nth-of-type(3) {
	grid-column: auto;
}

/* Etykiety */
.yith-wcaf-registration-form form.register label.required_field {
	display: block;
	margin-bottom: 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--af-text);
}

.yith-wcaf-registration-form form.register .required {
	color: var(--af-primary);
}

/* Pola */
.yith-wcaf-registration-form .woocommerce-input-wrapper {
	display: block;
	width: 100%;
}

.yith-wcaf-registration-form form.register .input-text {
	width: 100%;
	padding: 12px 16px;
	font-size: 15px;
	color: var(--af-text);
	background: var(--af-bg-soft);
	border: 1px solid var(--af-border);
	border-radius: 10px;
	outline: none;
	transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
	box-sizing: border-box;
}

.yith-wcaf-registration-form form.register .input-text:focus {
	background: #fff;
	border-color: var(--af-primary);
	box-shadow: 0 0 0 3px rgba(0, 71, 69, 0.12);
}

/* Checkbox "warunki i zasady" (Woo) */
.yith-wcaf-registration-form form.register p.form-row.terms-label {
	margin-top: 4px;
}

.yith-wcaf-registration-form form.register label.checkbox.terms-label {
	display: inline;
	gap: 8px;
	align-items: flex-start;
	font-size: 13px;
	line-height: 1.5;
	color: var(--af-muted);
	font-weight: 400;
	cursor: pointer;
}

.yith-wcaf-registration-form form.register label.checkbox.terms-label .input-checkbox {
	margin-top: 3px;
	flex: 0 0 auto;
	accent-color: var(--af-primary);
}

.yith-wcaf-registration-form form.register .woocommerce-terms-and-conditions-link {
	color: var(--af-primary);
	text-decoration: underline;
}

/* Checkboxy zgód — kolor marki */
.yith-wcaf-registration-form .af-consents input[type="checkbox"] {
	accent-color: var(--af-primary);
}

/* Przycisk */
.yith-wcaf-registration-form form.register input.button[type="submit"] {
	width: 100%;
	padding: 14px 24px;
    line-height: 16px;
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	background: var(--af-primary);
	border: none;
	border-radius: 10px;
	cursor: pointer;
	transition: background 0.25s ease, transform 0.15s ease;
}

.yith-wcaf-registration-form form.register input.button[type="submit"]:hover {
	background: var(--af-primary-dark);
}

.yith-wcaf-registration-form form.register input.button[type="submit"]:active {
	transform: scale(0.99);
}

/* Mobile */
@media (max-width: 640px) {
	.yith-wcaf-registration-form .forms-container {
		padding: 28px 20px;
		border-radius: 12px;
	}

	.yith-wcaf-registration-form form.register {
		grid-template-columns: 1fr;
	}
}

/* =====================================================
   Karta podarunkowa — formularz "Sprawdź saldo"
   ===================================================== */

.form-check-gift-card-balance.ywgc-shortcode-form {
	max-width: 400px;
	margin: 24px auto 48px;
	padding: 24px;
	background: #fff;
	border: 1px solid #e2e2e2;
	border-radius: 12px;
	text-align: left;
}

.form-check-gift-card-balance .ywgc-shortcode-form-title {
	margin: 0 0 4px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	color: #1b1f22;
	text-transform: none;
	text-align: left;
}

.form-check-gift-card-balance .ywgc-shortcode-form-label {
	display: block;
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 400;
	color: #667;
	text-align: left;
}

.form-check-gift-card-balance .yith-plugin-fw-field-wrapper {
	width: 100%;
	margin: 0 0 10px;
}

.form-check-gift-card-balance .ywgc-shortcode-text-input {
	width: 100%;
	margin: 0;
	padding: 11px 16px;
	font-size: 15px;
	color: #1b1f22;
	background: #f7f7f7;
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	outline: none;
	box-sizing: border-box;
	transition: border-color 0.25s ease, background 0.25s ease;
}

.form-check-gift-card-balance .ywgc-shortcode-text-input:focus {
	background: #fff;
	border-color: #004745;
}

.form-check-gift-card-balance .ywgc-shortcode-submit-button {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 12px 24px;
	font-size: 15px;
	font-weight: 600;
	color: #fff !important;
	background: #004745 !important;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background 0.25s ease;
}

.form-check-gift-card-balance .ywgc-shortcode-submit-button:hover {
	background: #00332f !important;
}

.form-check-gift-card-balance .ywgc-shortcode-message {
	display: block;
	width: 100%;
	margin: 10px 0 0;
	font-size: 14px;
	line-height: 1.5;
	color: #1b1f22;
}

.form-check-gift-card-balance .ywgc-shortcode-message:empty {
	display: none;
}

/* ──────────────────────────────────────────────────────────────
   Odnośnik "Śledź zamówienie" w górnym pasku nagłówka
   Markup wypisuje przejęta funkcja blonwe_top_notification1()
   w inc/order-tracker-baselinker.php. Style muszą być tutaj,
   a nie przy shortcodzie - odnośnik jest na każdej podstronie.

   Odnośnik wychodzi z prawej kolumny paska (justify-content-end),
   ale ma stać po LEWEJ stronie. Zamiast przenosić go do drugiego
   kontenera - czego nie da się zrobić bez ruszania szablonu rodzica -
   wystarczy margin-right:auto na pierwszym elemencie: zabiera całą
   wolną przestrzeń po swojej prawej i sam ląduje przy lewej krawędzi,
   a powiadomienie i przełącznik motywu zostają dosunięte do prawej.
   ────────────────────────────────────────────────────────────── */
.header-topbar .af-track-naglowek {
	margin-right: auto;
	padding-right: 1rem;
}

.af-track-naglowek p a {
	font-weight: 600;
	transition: opacity 0.2s ease;
}

.af-track-naglowek p a:hover {
	opacity: 0.7;
}

/* Poniżej 1200 px motyw i tak chowa pasek górny, ale gdyby układ
   się ścieśnił - odnośnik nie może rozpychać wiersza. */
@media (max-width: 1400px) {
	.header-topbar .af-track-naglowek {
		padding-right: 0.5rem;
	}
}

/* ──────────────────────────────────────────────────────────────
   .page-content bez min-height: 100vh
   Reguła stoi w rodzicu (blonwe/assets/css/base.css:5897), którego
   nie ruszamy. Arkusz childa ładuje się po base.css, więc wystarczy
   ten sam selektor - bez !important.
   ────────────────────────────────────────────────────────────── */
.page-content {
	min-height: 0;
}
