/*
Theme Name: Zmiksowane
Theme URI: https://www.zmiksowane.com/
Description: Lekki, szybki front dla zmiksowane.com. Motyw potomny „Recipe” – zachowuje przepisy, konta i opcje, zastępuje szablony, CSS i JS.
Author: zmiksowane.com
Template: recipe
Version: 1.1.1
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: zmiksowane
*/

/* ===== Zmienne ===== */
:root {
	--zmx-main: #3f8a2e;
	--zmx-main-dark: #2f6b22;
	--zmx-ink: #23272a;
	--zmx-muted: #6b7075;
	--zmx-line: #e6e8e3;
	--zmx-bg: #f4f5f2;
	--zmx-card: #fff;
	--zmx-dark: #2d3033;
	--zmx-star: #f29a1f;
	--zmx-radius: 10px;
	--zmx-shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .04);
	--zmx-font: system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, "Helvetica Neue", Arial, sans-serif;
	--zmx-wrap: 1180px;
}

/* ===== Reset / baza ===== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 70px; }
body { margin: 0; font: 16px/1.6 var(--zmx-font); color: var(--zmx-ink); background: var(--zmx-bg); overflow-wrap: break-word; }
img, svg, video, iframe { max-width: 100%; }
img { height: auto; border-style: none; }
a { color: var(--zmx-main); text-decoration: none; }
a:hover, a:focus { color: var(--zmx-main-dark); text-decoration: underline; }
h1, h2, h3, h4, h5, h6 { line-height: 1.25; margin: 0 0 .6em; font-weight: 700; color: var(--zmx-ink); }
h1 { font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.3rem); }
h2 { font-size: clamp(1.3rem, 1.1rem + .8vw, 1.7rem); }
h3 { font-size: 1.2rem; }
h4 { font-size: 1.1rem; }
h5, h6 { font-size: 1rem; }
p { margin: 0 0 1em; }
hr { border: 0; border-top: 1px solid var(--zmx-line); margin: 1.5em 0; }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: 3px solid color-mix(in srgb, var(--zmx-main) 55%, transparent); outline-offset: 2px; }
.screen-reader-text, .sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link:focus { position: fixed !important; top: 8px; left: 8px; width: auto; height: auto; clip: auto; padding: 10px 14px; background: #fff; z-index: 1000; border-radius: 6px; }
.zmx-i { width: 1.15em; height: 1.15em; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; vertical-align: -.2em; flex: none; }

/* ===== Układ ===== */
.zmx-wrap, .container { width: 100%; max-width: var(--zmx-wrap); margin: 0 auto; padding: 0 16px; }
.zmx-narrow { max-width: 860px; }
.zmx-main { display: block; padding: 20px 0 32px; min-height: 60vh; }
.zmx-layout { display: grid; gap: 28px; grid-template-columns: minmax(0, 1fr); }
.zmx-recipe, .zmx-article, .zmx-sidebar { min-width: 0; }
body { overflow-x: clip; }
.zmx-ad { max-width: 100%; overflow: hidden; }
input[type=file] { max-width: 100%; }
@media (min-width: 992px) { .zmx-layout { grid-template-columns: minmax(0, 1fr) 320px; } }
.zmx-box, .white-block { background: var(--zmx-card); border-radius: var(--zmx-radius); box-shadow: var(--zmx-shadow); padding: 20px; margin-bottom: 20px; }
.zmx-box > h2, .widget-title { font-size: 1.15rem; display: flex; align-items: center; gap: .45em; margin-bottom: .8em; }
.content-inner { padding: 0; }
.white-block .content-inner { padding: 0; }

/* ===== Przyciski / formularze ===== */
.zmx-btn, .btn, button.btn, input[type=submit], .wpcf7-submit, .form-submit .submit {
	display: inline-flex; align-items: center; justify-content: center; gap: .4em;
	background: var(--zmx-main); color: #fff !important; border: 0; border-radius: 8px;
	padding: .62em 1.1em; font-weight: 600; line-height: 1.2; cursor: pointer; text-decoration: none !important; transition: background .15s;
}
.zmx-btn:hover, .btn:hover, input[type=submit]:hover, .wpcf7-submit:hover { background: var(--zmx-main-dark); }
.form-control, input[type=text], input[type=email], input[type=search], input[type=url], input[type=password], input[type=number], input[type=date], select, textarea {
	width: 100%; padding: .65em .8em; border: 1px solid #cfd3cc; border-radius: 8px; background: #fff; min-height: 44px;
}
textarea { min-height: 120px; }
label { font-weight: 600; display: inline-block; margin-bottom: .3em; }
.form-group { margin-bottom: 1em; }

/* ===== Nagłówek ===== */
.zmx-topbar { background: var(--zmx-dark); color: #fff; }
.zmx-topbar-in { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 60px; }
.zmx-logo img { display: block; max-height: 42px; width: auto; }
.zmx-logo-text { color: #fff; font-weight: 800; font-size: 1.3rem; }
.zmx-account { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; justify-content: flex-end; }
.zmx-account a { color: #e9ece6; font-size: .82rem; font-weight: 600; text-transform: uppercase; letter-spacing: .02em; padding: 8px 10px; border-radius: 6px; display: inline-flex; align-items: center; gap: 6px; }
.zmx-account a:hover { background: rgba(255, 255, 255, .08); text-decoration: none; color: #fff; }
.zmx-account a.zmx-btn { background: var(--zmx-main); color: #fff; }
@media (max-width: 700px) { .zmx-account a:not(.zmx-btn) span { display: none; } .zmx-hide-sm { display: none !important; } }

.zmx-navbar { background: #fff; border-bottom: 1px solid var(--zmx-line); position: sticky; top: 0; z-index: 50; }
.admin-bar .zmx-navbar { top: 32px; }
@media (max-width: 782px) { .admin-bar .zmx-navbar { top: 0; } }
.zmx-navbar-in { display: flex; align-items: center; gap: 10px; min-height: 54px; }
.zmx-burger { display: none; background: none; border: 1px solid var(--zmx-line); border-radius: 8px; padding: 8px 12px; align-items: center; gap: 6px; font-weight: 600; cursor: pointer; }
.zmx-search { margin-left: auto; display: flex; align-items: center; position: relative; flex: 0 1 260px; }
.zmx-search input { min-height: 40px; padding-right: 42px; border-radius: 20px; background: var(--zmx-bg); border-color: transparent; }
.zmx-search input:focus { background: #fff; border-color: #cfd3cc; }
.zmx-search button { position: absolute; right: 4px; background: none; border: 0; padding: 8px; cursor: pointer; color: var(--zmx-muted); }

/* Mega menu (klasy z Zmiksowane_Nav_Walker) */
.zm-navbar-nav, .zm-navbar-nav ul { list-style: none; margin: 0; padding: 0; }
.zm-navbar-nav { display: flex; align-items: center; flex-wrap: wrap; }
.zm-navbar-nav > li { position: relative; }
.zm-navbar-nav > li > a { display: flex; align-items: center; gap: 4px; padding: 16px 10px; color: #4b4f53; font-size: .92rem; font-weight: 600; }
.zm-navbar-nav > li > a:hover, .zm-navbar-nav > li:focus-within > a, .zm-navbar-nav > .current-menu-item > a, .zm-navbar-nav > .current-menu-ancestor > a { color: var(--zmx-main); text-decoration: none; }
.zm-menu-icon, .zm-arrow .fa, .zm-search-item { display: none !important; }
.zm-arrow { width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); margin-left: 4px; opacity: .6; }
.zm-dropdown-wrapper { position: absolute; left: 0; top: 100%; background: #fff; border: 1px solid var(--zmx-line); border-radius: 0 0 10px 10px; box-shadow: 0 12px 28px rgba(0, 0, 0, .12); padding: 10px; min-width: 230px; z-index: 60; visibility: hidden; opacity: 0; transform: translateY(6px); transition: opacity .15s, transform .15s, visibility .15s; }
.zm-has-children:hover > .zm-dropdown-wrapper, .zm-has-children:focus-within > .zm-dropdown-wrapper { visibility: visible; opacity: 1; transform: none; }
.zm-mega-grid { display: grid; gap: 0 14px; }
.zm-mega-grid-2 { grid-template-columns: repeat(2, minmax(190px, 1fr)); }
.zm-mega-grid-4 { grid-template-columns: repeat(4, minmax(180px, 1fr)); }
.zm-mega-4-col { min-width: 760px; }
.zm-dropdown-menu a, .zm-sub-dropdown-menu a { display: block; padding: 7px 10px; border-radius: 6px; color: #3b3f43; font-size: .92rem; }
.zm-dropdown-menu a:hover { background: var(--zmx-bg); color: var(--zmx-main); text-decoration: none; }
.zm-sub-dropdown-menu { padding-left: 10px !important; }
.zm-sub-dropdown-menu a { font-size: .86rem; color: var(--zmx-muted); }

@media (max-width: 991px) {
	.zmx-navbar-in { flex-wrap: wrap; padding-top: 6px; padding-bottom: 6px; }
	.zmx-burger { display: inline-flex; }
	.zmx-search { flex: 1 1 160px; }
	.zmx-menu { display: none; width: 100%; order: 3; max-height: 75vh; overflow: auto; border-top: 1px solid var(--zmx-line); }
	.zmx-menu.is-open { display: block; }
	.zm-navbar-nav { display: block; }
	.zm-navbar-nav > li > a { padding: 13px 4px; justify-content: space-between; border-bottom: 1px solid var(--zmx-line); }
	.zm-dropdown-wrapper { position: static; display: none; visibility: visible; opacity: 1; transform: none; box-shadow: none; border: 0; padding: 4px 0 10px 10px; min-width: 0 !important; }
	.zm-has-children:hover > .zm-dropdown-wrapper { display: none; }
	.zm-expanded > .zm-dropdown-wrapper, .zm-expanded:hover > .zm-dropdown-wrapper { display: block; }
	.zm-mega-grid-2, .zm-mega-grid-4 { grid-template-columns: 1fr 1fr; }
}

/* ===== Strona główna ===== */
.zmx-hero-search { background: linear-gradient(135deg, #2f6b22, var(--zmx-main)); color: #fff; padding: 28px 0; margin: -20px 0 20px; }
.zmx-hero-label { display: block; font-size: 1.05rem; margin-bottom: 10px; }
.zmx-hero-field { display: flex; gap: 8px; max-width: 720px; }
.zmx-hero-field input { flex: 1; min-height: 50px; border: 0; font-size: 1.05rem; }
.zmx-hero-search .zmx-btn { background: var(--zmx-dark); min-height: 50px; }
.zmx-page-content > h1, .zmx-page-content > p { max-width: var(--zmx-wrap); margin-left: auto; margin-right: auto; padding: 0 16px; }
.zmx-page-content > h1 { text-align: center; margin-top: 10px; }
.zmx-page-content section { padding: 10px 0; }
.darkbg { background: var(--zmx-dark); color: #eee; padding: 30px 0 !important; margin: 20px 0; }
.darkbg h2, .darkbg h5, .darkbg h5 a { color: #fff; }
.white-bg { background: #fff; }
.centertext, .text-center { text-align: center; }
.darkbg img, .zmx-page-content img.aligncenter { border-radius: 10px; display: block; margin: 0 auto 8px; aspect-ratio: 16/10; object-fit: cover; width: 100%; }

/* Nagłówki sekcji shortcode'ów [recipes] / [top_users] */
.section-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 10px 0 14px; }
.section-title::after, .comment-name::after, .zmx-actions::after { content: none !important; display: none !important; }
.section-title h3, .section-title .pull-left { margin: 0; font-size: 1.35rem; float: none; }
.section-title .fa { display: none; }
.section-title .btn { padding: .45em .9em; font-size: .85rem; float: none; }

/* ===== Siatka zgodna z Bootstrapem (dla szablonów i shortcode'ów rodzica) ===== */
.row { display: flex; flex-wrap: wrap; margin: 0 -10px; }
.row > :where([class*="col-"]) { padding: 0 10px; width: 100%; min-width: 0; }
.row::before, .row::after { content: none; }
.clearfix::after, .clr { content: ""; display: table; clear: both; }
.pull-left { float: left; } .pull-right { float: right; }
.row > .pull-left, .row > .pull-right { float: none; }
.hidden { display: none !important; }
.list-unstyled { list-style: none; padding: 0; margin: 0; }
.list-inline { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.img-responsive { display: block; max-width: 100%; height: auto; }
.embed-responsive { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.embed-responsive-item, .embed-responsive iframe, .embed-responsive img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border: 0; }
.tab-pane { display: none; } .tab-pane.active { display: block; }
.col-xs-4 { width: 33.333%; } .col-xs-6 { width: 50%; } .col-xs-8 { width: 66.666%; } .col-xs-12 { width: 100%; }
@media (max-width: 767px) { .hidden-xs { display: none !important; } }
@media (min-width: 768px) {
	.col-sm-1 { width: 8.333%; } .col-sm-2 { width: 16.666%; } .col-sm-3 { width: 25%; } .col-sm-4 { width: 33.333%; } .col-sm-5 { width: 41.666%; }
	.col-sm-6 { width: 50%; } .col-sm-7 { width: 58.333%; } .col-sm-8 { width: 66.666%; } .col-sm-9 { width: 75%; } .col-sm-10 { width: 83.333%; } .col-sm-12 { width: 100%; }
}
@media (min-width: 600px) and (max-width: 767px) { .row > .col-sm-4, .row > .col-md-4 { width: 50%; } }
@media (max-width: 599px) { .row > .col-sm-1.col-xs-4 { width: 33.333%; } }
@media (min-width: 992px) {
	.col-md-3 { width: 25%; } .col-md-4 { width: 33.333%; } .col-md-6 { width: 50%; } .col-md-8 { width: 66.666%; } .col-md-9 { width: 75%; } .col-md-12 { width: 100%; }
}
@media (min-width: 768px) and (max-width: 991px) { .row > .col-md-4 { width: 50%; } }
.alert { padding: 12px 14px; border-radius: 8px; margin: 10px 0; background: #eef6ea; border: 1px solid #cfe5c4; }
.alert-danger { background: #fdeeee; border-color: #f2c9c9; color: #8a1f1f; }
.alert-success { background: #eef6ea; border-color: #cfe5c4; color: #245a17; }

/* ===== Kafelki przepisów ===== */
.zmx-grid { display: grid; gap: 20px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.zmx-grid-ad { grid-column: 1 / -1; }
.row > [class*="col-"] > .zmx-card { margin-bottom: 20px; }
.zmx-card { background: var(--zmx-card); border-radius: var(--zmx-radius); box-shadow: var(--zmx-shadow); overflow: hidden; display: flex; flex-direction: column; height: calc(100% - 20px); transition: transform .15s, box-shadow .15s; }
.zmx-grid .zmx-card { height: 100%; }
.zmx-card:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0, 0, 0, .1); }
.zmx-card-img { display: block; aspect-ratio: 16/9; background: #e9ece6; overflow: hidden; }
.zmx-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.zmx-noimg { display: flex; align-items: center; justify-content: center; height: 100%; color: #b7bdb1; }
.zmx-noimg .zmx-i { width: 48px; height: 48px; stroke-width: 1.4; }
.zmx-card-body { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.zmx-card-title { font-size: 1.05rem; margin: 0; }
.zmx-card-title a { color: var(--zmx-ink); }
.zmx-card-title a::after { content: ""; position: absolute; inset: 0; }
.zmx-card { position: relative; }
.zmx-card-excerpt { color: var(--zmx-muted); font-size: .92rem; margin: 0; }
.zmx-card-meta { margin: auto 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; color: var(--zmx-muted); font-size: .86rem; }
.zmx-card-meta span { display: inline-flex; align-items: center; gap: 4px; }

/* Gwiazdki */
.zmx-stars { position: relative; display: inline-block; width: 82px; height: 15px; vertical-align: -2px; background: #d9dcd5; -webkit-mask: var(--zmx-star-mask) repeat-x 0 0 / 16.4px 15px; mask: var(--zmx-star-mask) repeat-x 0 0 / 16.4px 15px; }
.zmx-stars > span:first-child { position: absolute; inset: 0 auto 0 0; background: var(--zmx-star); }
:root { --zmx-star-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 22'%3E%3Cpath d='M12 0l3.1 7.3 7.9.6-6 5.2 1.8 7.7L12 16.7l-6.8 4.1L7 13.1 1 7.9l7.9-.6z'/%3E%3C/svg%3E"); }
.bottom-ratings { position: relative; display: inline-flex; gap: 2px; vertical-align: middle; }
.bottom-ratings .icon { display: inline-block; width: 18px; height: 17px; background: #d9dcd5; -webkit-mask: var(--zmx-star-mask) no-repeat center / contain; mask: var(--zmx-star-mask) no-repeat center / contain; }
.top-ratings { position: absolute; left: 0; top: 0; overflow: hidden; display: inline-flex; gap: 2px; white-space: nowrap; }
.top-ratings .icon, .bottom-ratings .icon.clicked { background: var(--zmx-star); }
.comment-review .bottom-ratings .icon { width: 28px; height: 26px; cursor: pointer; }
.comment-review label { display: block; }

/* ===== Przepis ===== */
.zmx-crumbs { font-size: .85rem; color: var(--zmx-muted); margin-bottom: 10px; }
.zmx-title { margin-bottom: .35em; }
.zmx-byline { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; color: var(--zmx-muted); font-size: .92rem; }
.zmx-byline img { border-radius: 50%; }
.zmx-rating-link { display: inline-flex; align-items: center; gap: 6px; color: var(--zmx-muted); }
.zmx-hero { margin: 16px 0; border-radius: var(--zmx-radius); overflow: hidden; background: #e9ece6; aspect-ratio: 16/9; }
.zmx-hero img { width: 100%; height: 100%; object-fit: cover; display: block; }
.zmx-facts { list-style: none; margin: 0 0 16px; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 10px; }
.zmx-facts li { background: #fff; border-radius: var(--zmx-radius); box-shadow: var(--zmx-shadow); padding: 10px 12px; display: grid; grid-template-columns: auto 1fr; column-gap: 8px; align-items: center; }
.zmx-facts .zmx-i { grid-row: span 2; color: var(--zmx-main); width: 22px; height: 22px; }
.zmx-facts span { font-size: .78rem; color: var(--zmx-muted); text-transform: uppercase; letter-spacing: .03em; }
.zmx-facts strong { font-size: 1rem; }
.zmx-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 18px; }
.zmx-act { display: inline-flex; align-items: center; gap: 6px; background: #fff; border: 1px solid var(--zmx-line); border-radius: 999px; padding: 8px 14px; font-size: .9rem; font-weight: 600; color: var(--zmx-ink); cursor: pointer; min-height: 40px; }
.zmx-act:hover { border-color: var(--zmx-main); color: var(--zmx-main); text-decoration: none; }
.zmx-act.is-on { background: #eef6ea; border-color: var(--zmx-main); color: var(--zmx-main-dark); }
.zmx-act[data-act="fav"].is-on .zmx-i { fill: #e0424b; stroke: #e0424b; }
.zmx-count { font-weight: 700; color: var(--zmx-muted); }
.zmx-views { margin-left: auto; color: var(--zmx-muted); font-size: .9rem; display: inline-flex; gap: 6px; align-items: center; }
.zmx-content { font-size: 1.05rem; }
.zmx-content img { border-radius: 8px; }
.zmx-content table { width: 100%; border-collapse: collapse; margin: 0 0 1.4em; font-size: .92rem; display: block; overflow-x: auto; }
@media (min-width: 768px) { .zmx-content table { display: table; } }
.zmx-content th, .zmx-content td { border: 1px solid var(--zmx-line); padding: 8px 10px; text-align: left; vertical-align: top; min-width: 120px; }
.zmx-content th { background: var(--zmx-bg); font-weight: 700; }
.zmx-content code { background: var(--zmx-bg); padding: 1px 5px; border-radius: 4px; font-size: .86em; word-break: break-word; }
.zmx-content h2 { margin-top: 1.4em; }
.zmx-content .alignleft { float: left; margin: 0 16px 10px 0; } .zmx-content .alignright { float: right; margin: 0 0 10px 16px; } .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.zmx-recipe-body { display: grid; gap: 20px; margin-top: 10px; }
@media (min-width: 760px) { .zmx-recipe-body { grid-template-columns: minmax(240px, 2fr) 3fr; align-items: start; } .zmx-ing { position: sticky; top: 70px; } }
.zmx-subhead { font-size: 1rem; margin: 1em 0 .4em; color: var(--zmx-main-dark); }
.zmx-ingredients { list-style: none; margin: 0; padding: 0; }
.zmx-ingredients li { border-bottom: 1px dashed var(--zmx-line); }
.zmx-ingredients label { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; margin: 0; padding: 8px 0; cursor: pointer; }
.zmx-ingredients input { width: 20px; height: 20px; min-height: 0; margin: 2px 0 0; accent-color: var(--zmx-main); flex: none; }
.zmx-ingredients input:checked + span { text-decoration: line-through; color: var(--zmx-muted); }
.zmx-steps { margin: 0; padding: 0; list-style: none; }
.zmx-steps li { position: relative; padding: 0 0 14px 48px; margin-bottom: 14px; border-bottom: 1px solid var(--zmx-line); counter-increment: zmxstep; }
.zmx-steps li:last-child { border-bottom: 0; }
.zmx-steps li::before { content: counter(zmxstep); position: absolute; left: 0; top: 0; width: 34px; height: 34px; border-radius: 50%; background: var(--zmx-main); color: #fff; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.zmx-step-body p:last-child { margin-bottom: 0; }
.zmx-nutri dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px; margin: 0; }
.zmx-nutri dl div { background: var(--zmx-bg); border-radius: 8px; padding: 10px; }
.zmx-nutri dt { font-size: .8rem; color: var(--zmx-muted); } .zmx-nutri dd { margin: 0; font-weight: 700; }
.zmx-embed { aspect-ratio: 16/9; } .zmx-embed iframe { width: 100%; height: 100%; border: 0; border-radius: 8px; }
.zmx-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 8px; }
.zmx-gallery img { border-radius: 8px; aspect-ratio: 1; object-fit: cover; width: 100%; transition: transform .15s; }
.zmx-gallery a { cursor: zoom-in; display: block; }
.zmx-gallery a:hover img { transform: scale(1.03); }
.zmx-lb { position: fixed; inset: 0; z-index: 1000; background: rgba(15, 17, 18, .92); display: flex; align-items: center; justify-content: center; padding: 56px 16px 24px; }
.zmx-lb[hidden] { display: none; }
.zmx-lb figure { margin: 0; max-width: min(1100px, 100%); max-height: 100%; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.zmx-lb img { max-width: 100%; max-height: calc(100vh - 110px); object-fit: contain; border-radius: 8px; box-shadow: 0 10px 40px rgba(0, 0, 0, .5); }
.zmx-lb figcaption { color: #ddd; font-size: .9rem; }
.zmx-lb button { position: absolute; background: rgba(255, 255, 255, .12); color: #fff; border: 0; border-radius: 50%; width: 46px; height: 46px; font-size: 28px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.zmx-lb button:hover { background: rgba(255, 255, 255, .25); }
.zmx-lb-close { top: 10px; right: 12px; }
.zmx-lb-prev { left: 12px; top: 50%; transform: translateY(-50%); }
.zmx-lb-next { right: 12px; top: 50%; transform: translateY(-50%); }

/* Moje konto → Moje przepisy */
.zmx-status-filter a.is-active { font-weight: 700; color: var(--zmx-ink); }
.zmx-table-wrap { overflow-x: auto; }
.zmx-account-table { width: 100%; border-collapse: collapse; font-size: .93rem; }
.zmx-account-table th, .zmx-account-table td { border-bottom: 1px solid var(--zmx-line); padding: 8px 10px; text-align: left; vertical-align: middle; }
.zmx-account-table th { background: var(--zmx-bg); }
.zmx-account-table .zmx-thumb img { width: 60px; height: 60px; object-fit: cover; border-radius: 6px; }
.zmx-account-table .action a { font-size: 1.1rem; padding: 4px 8px; text-decoration: none; }
.zmx-photo-form summary { cursor: pointer; font-weight: 700; display: flex; align-items: center; gap: .45em; }
.zmx-photo-form[open] summary { margin-bottom: 12px; }
.zmx-tags { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.zmx-tags a { background: #fff; border: 1px solid var(--zmx-line); border-radius: 999px; padding: 3px 12px; font-size: .86rem; color: var(--zmx-ink); }
.zmx-share-row { display: flex; align-items: center; gap: 8px; margin: 16px 0 24px; color: var(--zmx-muted); }
.zmx-share-row a, .zmx-share-row button { display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; border-radius: 50%; background: #fff; border: 1px solid var(--zmx-line); color: var(--zmx-ink); cursor: pointer; }
.zmx-share-row button.is-on { background: #eef6ea; border-color: var(--zmx-main); }

/* Panel boczny */
.zmx-sidebar { min-width: 0; }
.zmx-side-facts ul { list-style: none; margin: 0; padding: 0; }
.zmx-side-facts li { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--zmx-line); font-size: .93rem; }
.zmx-side-facts li:last-child { border-bottom: 0; }
.zmx-side-facts li > span:first-child { color: var(--zmx-muted); flex: none; }
.zmx-side-facts .zmx-v { text-align: right; min-width: 0; line-height: 1.45; }
.zmx-side-facts .zmx-v a { white-space: nowrap; }
.zmx-similar h2 { font-size: 1.1rem; }
.zmx-similar ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.zmx-similar a { display: flex; gap: 10px; align-items: center; color: var(--zmx-ink); font-weight: 600; font-size: .93rem; }
.zmx-similar img { width: 72px; height: 72px; object-fit: cover; border-radius: 8px; flex: none; }

/* Widżety rodzica */
.widget { background: var(--zmx-card); border-radius: var(--zmx-radius); box-shadow: var(--zmx-shadow); padding: 18px; margin-bottom: 20px; }
.widget ul { list-style: none; margin: 0; padding: 0; }
.widget li { padding: 6px 0; border-bottom: 1px solid var(--zmx-line); display: flex; gap: 10px; align-items: center; }
.widget li:last-child { border-bottom: 0; }
.widget img { border-radius: 6px; max-width: 60px; }
.widget .fa, .widget-image-thumb .post-format { display: none; }
.widget-title-wrap { margin-bottom: 10px; }
.subscribe-form .recipe-form { display: flex; gap: 6px; }
.subscribe-form .subscribe { flex: none; }
.subscribe-form .subscribe::after { content: "Zapisz"; }
.widget .grey, .widget .post-meta { color: var(--zmx-muted); font-size: .8rem; }

/* Komentarze (markup rodzica) */
.zmx-comments .white-block { padding: 20px; }
.comment-row { display: block; margin: 0 0 16px; padding: 0 0 16px; border-bottom: 1px solid var(--zmx-line); }
.comment-row .col-sm-12 { display: flex; gap: 12px; }
.comment-margin-left { margin-left: 40px; }
.comment-avatar img { width: 48px; height: 48px; border-radius: 50%; }
.comment-content-wrap { flex: 1; min-width: 0; }
.comment-name { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.comment-name h5 { margin: 0; } .comment-name p { margin: 0; font-size: .8rem; color: var(--zmx-muted); }
.comment-name .pull-left, .comment-name .pull-right { float: none; }
.comment-reply-link { font-size: .85rem; }

/* Paginacja */
.pagination, .nav-links, .zmx-pages { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 24px 0; }
.pagination a, .pagination span, .nav-links a, .nav-links span, .zmx-pages a, .zmx-pages > span { min-width: 42px; height: 42px; padding: 0 12px; display: inline-flex; align-items: center; justify-content: center; border-radius: 8px; background: #fff; box-shadow: var(--zmx-shadow); color: var(--zmx-ink); }
.pagination .current, .nav-links .current { background: var(--zmx-main); color: #fff; }

/* Archiwa */
.zmx-archive-head { margin-bottom: 18px; }
.zmx-archive-desc { color: var(--zmx-muted); max-width: 820px; }

/* Reklamy – zarezerwowane miejsce ogranicza przesunięcia układu (CLS) */
.zmx-ad { margin: 20px auto; text-align: center; min-height: 100px; }
.zmx-ad-side { min-height: 250px; }
@media (max-width: 767px) { .zmx-ad { min-height: 250px; } }
.zmx-ad ins { min-height: inherit; }
.ad-slot-wrapper { margin: 20px auto; text-align: center; }

/* Stopka */
.zmx-footer { background: var(--zmx-dark); color: #c9cdc4; margin-top: 20px; font-size: .93rem; }
.zmx-footer a { color: #fff; }
.zmx-footer-widgets { display: grid; gap: 24px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); padding-top: 32px; padding-bottom: 20px; }
.zmx-footer .widget { background: none; box-shadow: none; padding: 0; color: #c9cdc4; }
.zmx-footer .widget-title { color: #fff; }
.zmx-footer .widget li { border-color: rgba(255, 255, 255, .1); }
.zmx-copy { border-top: 1px solid rgba(255, 255, 255, .1); }
.zmx-copy-in { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; padding-top: 14px; padding-bottom: 14px; }
.zmx-copy p { margin: 0; }
.zmx-social { display: flex; gap: 8px; }
.zmx-social a { width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(255, 255, 255, .08); }
.zmx-top { position: fixed; right: 16px; bottom: 16px; width: 46px; height: 46px; border-radius: 50%; border: 0; background: var(--zmx-main); color: #fff; box-shadow: 0 4px 14px rgba(0, 0, 0, .2); cursor: pointer; z-index: 40; display: flex; align-items: center; justify-content: center; }
.zmx-top[hidden] { display: none; }
.zmx-404 .zmx-hero-field { margin: 16px 0; }
.zmx-print-logo { display: none; }

/* Wyszukiwarka i strony rodzica (siatka z Bootstrapa) */
.search-filter, #wyszukiwarka-home { margin-bottom: 20px; }
.member-block { text-align: center; }
.user-block img { border-radius: 50%; }
.user-block-overlay { display: none; }
.tip-author { display: block; text-align: center; font-size: .85rem; margin: 4px 0 14px; }

/* Ograniczenie animacji */
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

/* ===== Wydruk ===== */
@media print {
	@page { margin: 14mm; }
	body { background: #fff; font-size: 11pt; color: #000; }
	.zmx-header, .zmx-footer, .zmx-sidebar, .zmx-actions, .zmx-ad, .zmx-share-row, .zmx-comments, .zmx-photo-form, .zmx-crumbs, .zmx-top, .zmx-tags, #wpadminbar, .zmx-content { display: none !important; }
	.zmx-layout { display: block; }
	.zmx-print-logo { display: block; max-height: 40px; margin-bottom: 10px; }
	.zmx-hero { max-height: 70mm; aspect-ratio: auto; }
	.zmx-hero img { max-height: 70mm; object-fit: cover; }
	.zmx-box, .zmx-facts li { box-shadow: none; border: 1px solid #ddd; break-inside: avoid; }
	.zmx-recipe-body { grid-template-columns: 1fr 2fr; }
	.zmx-ing { position: static; }
	.zmx-steps li::before { background: none; color: #000; border: 1px solid #000; }
	.zmx-recipe::after { content: "Źródło: www.zmiksowane.com"; display: block; margin-top: 10px; font-size: 9pt; color: #555; }
	a { color: #000; }
}
