/*
Theme Name: Kadence MLK
Theme URI: https://mamaslebanesekitchen.com
Description: Child theme of Kadence for Mama's Lebanese Kitchen — brand styling, ad-slot reservations, newsletter box, lazy comments. Rollback: activate Kadence (parent) or Striking MultiFlex.
Author: Mama's Lebanese Kitchen
Template: kadence
Version: 1.0.8
License: GNU General Public License v2 or later
Text Domain: kadence-mlk
*/

/* ---------------------------------------------------------------- brand tokens */
:root {
  --mlk-red: var(--global-palette1, #9b2c1f);
  --mlk-olive: var(--global-palette2, #5f6b2a);
  --mlk-ink: var(--global-palette3, #23211e);
  --mlk-text: var(--global-palette4, #2f2c28);
  --mlk-muted: var(--global-palette5, #6b655c);
  --mlk-line: var(--global-palette6, #d9d2c5);
  --mlk-cream-2: var(--global-palette7, #f4eee3);
  --mlk-cream: var(--global-palette8, #faf6ee);
  --mlk-white: var(--global-palette9, #ffffff);
  --mlk-radius: 12px;
}

/* Body text must never be link-blue. */
.entry-content p, .entry-content li, .entry-content td, .entry-content dd { color: var(--mlk-text); }
.entry-content a:not(.mlk-btn):not(.mlk-pin):not(.wp-block-button__link) { color: var(--mlk-red); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.entry-content a:not(.mlk-btn):not(.mlk-pin):not(.wp-block-button__link):hover { color: var(--mlk-olive); }
.entry-content h2, .entry-content h3 { color: var(--mlk-ink); }
.entry-content h2 { margin-top: 1.6em; }
.entry-content img { height: auto; border-radius: 8px; }
.entry-content .wp-block-image figcaption { color: var(--mlk-muted); font-size: 0.9em; text-align: center; }

/* Legacy float images: keep readable on phones. */
@media (max-width: 719px) {
  .entry-content .alignleft, .entry-content .alignright { max-width: 46%; }
  .entry-content .wp-block-image.alignleft img, .entry-content .wp-block-image.alignright img { width: 100% !important; }
}

/* ---------------------------------------------------------------- content boxes (converted Striking shortcodes) */
.entry-content .mlk-box { border: 1px solid var(--mlk-line); }
.entry-content .mlk-notice { background: var(--mlk-cream-2); border-left: 4px solid var(--mlk-olive); padding: 1rem 1.25rem; border-radius: 6px; }
.entry-content .mlk-popular { background: var(--mlk-cream); border: 1px dashed var(--mlk-line); padding: 1rem 1.25rem; border-radius: var(--mlk-radius); }
.entry-content .mlk-popular ul { margin-bottom: 0; }
.entry-content .mlk-contact { background: var(--mlk-cream-2); padding: 1rem 1.25rem; border-radius: var(--mlk-radius); }
.entry-content .wp-block-table table { border-collapse: collapse; }
.entry-content .wp-block-table th { background: var(--mlk-cream-2); text-align: left; }

/* ---------------------------------------------------------------- disclosure + proof + pin */
.mlk-disclosure { font-size: 0.82em; color: var(--mlk-muted); background: var(--mlk-cream); border-radius: 6px; padding: 0.5em 0.85em; margin: 0 0 1.25em; }
.mlk-proof { display: flex; flex-wrap: wrap; align-items: center; gap: 0.45em; font-size: 0.95em; color: var(--mlk-muted); margin: 0.35em 0 1em; min-height: 1.5em; }
.mlk-proof__stars { color: #e0a02c; letter-spacing: 1px; }
.mlk-proof b { color: var(--mlk-ink); }
.mlk-proof a { color: var(--mlk-red); text-decoration: none; }
.mlk-pin-wrap { margin: 0.75em 0 1.25em; }
.mlk-pin { display: inline-flex; align-items: center; gap: 0.45em; background: #cb2027; color: #fff !important; text-decoration: none !important; font-weight: 600; font-size: 0.95em; padding: 0.55em 1em; border-radius: 999px; line-height: 1; }
.mlk-pin:hover { background: #a3181e; color: #fff; }
.post-thumbnail img, .single .post-thumbnail-inner img { border-radius: var(--mlk-radius); }

/* ---------------------------------------------------------------- ad slots: reserved height = zero CLS */
.mlk-ad-slot { display: flex; align-items: center; justify-content: center; min-height: var(--mlk-ad-h-m, 250px); margin: 1.75rem auto; background: repeating-linear-gradient(45deg, #f7f3ea 0 10px, #f2ecdf 10px 20px); border: 1px dashed var(--mlk-line); border-radius: 8px; position: relative; width: 100%; max-width: 100%; box-sizing: border-box; }
.mlk-ad-slot .mlk-ad-label { font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: #a39a8b; }
@media (min-width: 1025px) { .mlk-ad-slot { min-height: var(--mlk-ad-h-d, 280px); } }
.mlk-ad-slot--sidebar-1 { min-height: 250px; margin: 0; }
.mlk-ad-slot--before-comments { margin-top: 0; }
.mlk-ads-hidden .mlk-ad-slot { display: none; }

/* ---------------------------------------------------------------- newsletter box */
.mlk-newsletter { background: var(--mlk-cream-2); border: 1px solid var(--mlk-line); border-radius: var(--mlk-radius); padding: 1.5rem; margin: 2rem 0 1rem; }
.mlk-newsletter__inner { max-width: 560px; margin: 0 auto; text-align: center; }
.mlk-newsletter__kicker { font-size: 0.75em; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mlk-olive); font-weight: 700; margin: 0 0 0.25em; }
.mlk-newsletter__title { font-family: var(--global-heading-font-family, serif); color: var(--mlk-ink); font-size: 1.5em; line-height: 1.2; margin: 0 0 0.35em; }
.mlk-newsletter__text { color: var(--mlk-muted); margin: 0 0 1em; }
.mlk-newsletter__fields { display: flex; gap: 0.5rem; flex-wrap: wrap; justify-content: center; }
.mlk-newsletter__input { flex: 1 1 200px; min-height: 48px; border: 1px solid var(--mlk-line); border-radius: 8px; padding: 0 1em; font-size: 1em; background: #fff; }
.mlk-newsletter__btn { min-height: 48px; background: var(--mlk-red); color: #fff; border: 0; border-radius: 8px; padding: 0 1.25em; font-weight: 700; cursor: pointer; }
.mlk-newsletter__btn:hover { background: var(--mlk-olive); }
.mlk-newsletter__fine { font-size: 0.75em; color: var(--mlk-muted); margin: 0.75em 0 0; }
.mlk-newsletter--sidebar { margin: 0; padding: 1.25rem; background: var(--mlk-red); border-color: var(--mlk-red); }
.mlk-newsletter--sidebar .mlk-newsletter__kicker { color: #f6d9c9; }
.mlk-newsletter--sidebar .mlk-newsletter__title, .mlk-newsletter--sidebar .mlk-newsletter__text, .mlk-newsletter--sidebar .mlk-newsletter__fine { color: #fff; }
.mlk-newsletter--sidebar .mlk-newsletter__btn { background: var(--mlk-ink); }
.mlk-newsletter--sidebar .mlk-newsletter__btn:hover { background: var(--mlk-olive); }
.mlk-newsletter--home { background: var(--mlk-ink); border-color: var(--mlk-ink); padding: 2.5rem 1.5rem; }
.mlk-newsletter--home .mlk-newsletter__kicker { color: #d7c7a1; }
.mlk-newsletter--home .mlk-newsletter__title { color: #fff; font-size: 2em; }
.mlk-newsletter--home .mlk-newsletter__text, .mlk-newsletter--home .mlk-newsletter__fine { color: #d9d2c5; }

/* ---------------------------------------------------------------- sidebar */
.primary-sidebar .widget { background: var(--mlk-white); border: 1px solid var(--mlk-line); border-radius: var(--mlk-radius); padding: 1.25rem; }
.primary-sidebar .widget-title { font-size: 1.1em; letter-spacing: 0.02em; margin-bottom: 0.75em; padding-bottom: 0.5em; border-bottom: 2px solid var(--mlk-cream-2); }
.primary-sidebar .widget.widget_block:has(.mlk-newsletter), .primary-sidebar .widget.widget_block:has(.mlk-ad-slot) { padding: 0; border: 0; background: transparent; }
.primary-sidebar .widget .mlk-about { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 0.5rem; }
.primary-sidebar .widget .mlk-about img { width: 140px; height: 140px; object-fit: cover; border-radius: 50%; border: 4px solid var(--mlk-cream-2); }
.primary-sidebar .widget .mlk-about p { margin: 0; font-size: 0.95em; }
.primary-sidebar .widget .mlk-about a.mlk-about__link { color: var(--mlk-red); font-weight: 600; text-decoration: none; }
.primary-sidebar .widget_categories li, .primary-sidebar .wp-block-categories li { padding: 0.35em 0; border-bottom: 1px solid var(--mlk-cream-2); }
.primary-sidebar .wp-block-latest-posts li { margin-bottom: 0.85em; }
.primary-sidebar .wp-block-latest-posts__featured-image img { border-radius: 8px; }
.primary-sidebar .wp-block-latest-posts a { color: var(--mlk-ink); font-weight: 600; text-decoration: none; line-height: 1.3; }
.primary-sidebar .wp-block-latest-posts a:hover { color: var(--mlk-red); }
.primary-sidebar .wp-block-search__button, .wp-block-search__button { background: var(--mlk-red); color: #fff; border: 0; border-radius: 8px; }
.wp-block-search__input { border-radius: 8px; border-color: var(--mlk-line); min-height: 44px; }

/* ---------------------------------------------------------------- comments */
.comments-area { background: var(--mlk-cream); border-radius: var(--mlk-radius); padding: 1.5rem; }
@media (min-width: 720px) { .comments-area { padding: 2rem 2.5rem; } }
.comments-area .comments-title, .comments-area .comment-reply-title { font-family: var(--global-heading-font-family, serif); color: var(--mlk-ink); }
.comments-area .comment-reply-title { font-size: 1.6em; }
.comments-area .comment-notes { color: var(--mlk-muted); }
.mlk-comments-actions { text-align: center; margin: 1rem 0 2rem; }
.mlk-btn-load { background: var(--mlk-white); color: var(--mlk-red); border: 2px solid var(--mlk-red); border-radius: 999px; padding: 0.7em 1.6em; font-weight: 700; cursor: pointer; min-height: 48px; }
.mlk-btn-load:hover { background: var(--mlk-red); color: #fff; }
.mlk-btn-load[disabled] { opacity: 0.6; cursor: wait; }
.comment-list { list-style: none; margin: 0 0 2rem; padding: 0; }
.comment-list .comment-body { background: var(--mlk-white); border: 1px solid var(--mlk-line); border-radius: var(--mlk-radius); padding: 1rem 1.15rem; margin-bottom: 1rem; }
.comment-list .children { margin-left: 1.25rem; list-style: none; }
@media (max-width: 719px) { .comment-list .children { margin-left: 0.5rem; } }
.comment-list .comment-author .avatar { border-radius: 50%; }
.comment-list .comment-author .fn { color: var(--mlk-ink); font-weight: 700; font-style: normal; }
.comment-list .comment-metadata a { color: var(--mlk-muted); font-size: 0.85em; text-decoration: none; }
.comment-list .reply a { display: inline-block; color: var(--mlk-red); font-weight: 600; text-decoration: none; padding: 0.3em 0; }
.comment-respond { background: var(--mlk-white); border: 1px solid var(--mlk-line); border-radius: var(--mlk-radius); padding: 1.25rem; }
@media (min-width: 720px) { .comment-respond { padding: 1.75rem 2rem; } }
.comment-form label { color: var(--mlk-ink); font-weight: 600; font-size: 0.95em; }
.comment-form input[type="text"], .comment-form input[type="email"], .comment-form input[type="url"], .comment-form textarea { border: 1px solid var(--mlk-line); border-radius: 8px; min-height: 48px; padding: 0.6em 0.9em; font-size: 1em; width: 100%; background: #fff; }
.comment-form textarea { min-height: 140px; }
.comment-form .form-submit .submit, .comment-form input[type="submit"] { background: var(--mlk-red); color: #fff; border: 0; border-radius: 999px; padding: 0.85em 1.8em; font-weight: 700; min-height: 48px; cursor: pointer; }
.comment-form .form-submit .submit:hover { background: var(--mlk-olive); }
.comment-form .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 0.6em; }
.comment-form .comment-form-cookies-consent input { width: auto; margin-top: 0.35em; }
/* Subscribe to Comments Reloaded: make the email opt-in inviting (never pre-ticked). */
.comment-form .stcr-form, .comment-form p[class*="subscribe-reloaded"], .comment-form .subscribe-reloaded-form { background: var(--mlk-cream-2); border: 1px solid var(--mlk-line); border-radius: 8px; padding: 0.85em 1em; margin: 0.75em 0 1em; font-size: 0.95em; color: var(--mlk-ink); }
.comment-form input[name="subscribe-reloaded"] { width: 20px; height: 20px; margin-right: 0.5em; vertical-align: middle; accent-color: var(--mlk-red); }
.comment-form label[for="subscribe-reloaded"] { font-weight: 600; }
.comment-form select[name="subscribe-reloaded"] { min-height: 44px; border-radius: 8px; border: 1px solid var(--mlk-line); padding: 0.4em 0.7em; }

/* ---------------------------------------------------------------- homepage blocks */
.mlk-hero .wp-block-cover__inner-container { max-width: 760px; }
.mlk-hero .wp-block-search__inside-wrapper { background: #fff; border-radius: 12px; padding: 4px; border: 0; }
.mlk-hero .wp-block-search__input { border: 0; min-height: 48px; font-size: 1.05em; }
.mlk-hero .wp-block-search__button { min-height: 48px; padding: 0 1.4em; border-radius: 10px; font-weight: 700; }
.mlk-hero h1 { text-shadow: 0 2px 18px rgba(0,0,0,0.35); }
.mlk-section-kicker { font-size: 0.78em; letter-spacing: 0.16em; text-transform: uppercase; color: var(--mlk-olive); font-weight: 700; margin-bottom: 0.2em; }
/* Group blocks render a legacy __inner-container wrapper; the grid lives on whichever holds the tiles. */
.mlk-tiles:not(:has(> .wp-block-group__inner-container)), .mlk-tiles > .wp-block-group__inner-container { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.mlk-tiles--cats:not(:has(> .wp-block-group__inner-container)), .mlk-tiles--cats > .wp-block-group__inner-container { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.mlk-tiles img { max-width: 100%; }
.mlk-tiles > .wp-block-group__inner-container > * { margin: 0; }
@media (max-width: 1024px) { .mlk-tiles:not(:has(> .wp-block-group__inner-container)), .mlk-tiles > .wp-block-group__inner-container, .mlk-tiles--cats > .wp-block-group__inner-container { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 719px) { .mlk-tiles:not(:has(> .wp-block-group__inner-container)), .mlk-tiles > .wp-block-group__inner-container, .mlk-tiles--cats > .wp-block-group__inner-container { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.85rem; } }
/* Homepage sections: contained width even on the fullwidth/unboxed page template. */
.page .entry-content > .wp-block-group.alignwide, .page .entry-content > .wp-block-query.alignwide { max-width: 1290px !important; margin-left: auto !important; margin-right: auto !important; padding-left: 1.5rem; padding-right: 1.5rem; box-sizing: border-box; }
.mlk-tiles > .wp-block-group { margin: 0; }
.mlk-tile .wp-block-image { margin: 0 0 0.5rem; }
.mlk-tile .wp-block-image img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; border-radius: 10px; transition: transform .2s ease; }
.mlk-tile:hover .wp-block-image img { transform: scale(1.03); }
.mlk-tile h3, .mlk-tile h2 { font-size: 1.05em; line-height: 1.3; margin: 0; }
.entry-content .mlk-tile h3 a, .entry-content .mlk-tile h2 a, .mlk-tile h3 a, .mlk-tile h2 a { color: var(--mlk-ink); text-decoration: none; }
.entry-content .mlk-tile h3 a:hover, .mlk-tile h3 a:hover, .mlk-tile h2 a:hover { color: var(--mlk-red); }
.mlk-tile--cat .wp-block-image img { aspect-ratio: 1 / 1; }
.mlk-tile--cat h3 { text-align: center; font-size: 1em; }
.mlk-latest .wp-block-post-featured-image img { border-radius: 10px; }
.mlk-latest .wp-block-post-title { font-size: 1.1em; line-height: 1.3; margin: 0.5em 0 0.25em; }
.entry-content .mlk-latest .wp-block-post-title a, .mlk-latest .wp-block-post-title a { color: var(--mlk-ink); text-decoration: none; }
.entry-content .mlk-latest .wp-block-post-title a:hover, .mlk-latest .wp-block-post-title a:hover { color: var(--mlk-red); }
.mlk-about-strip { background: var(--mlk-cream-2); border-radius: var(--mlk-radius); }
.mlk-about-strip img { border-radius: 50%; aspect-ratio: 1 / 1; object-fit: cover; }
.mlk-home .entry-content > .wp-block-group.alignwide, .mlk-home .alignwide { margin-top: 3rem; margin-bottom: 3rem; }

/* Related-posts carousel: never let slides widen the page. */
.entry-related, .entry-related .splide, .entry-related .splide__track { overflow: hidden; max-width: 100%; }
/* Visually-hidden labels (core search block) must never widen the page. */
.screen-reader-text, .wp-block-search__label.screen-reader-text { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(1px, 1px, 1px, 1px) !important; clip-path: inset(50%) !important; border: 0 !important; white-space: nowrap !important; left: 0; }

.entry-content .mlk-tiles .mlk-tile h3 a, .entry-content .mlk-latest .wp-block-post-title a { text-decoration: none !important; color: var(--mlk-ink) !important; }
.entry-content .mlk-tiles .mlk-tile h3 a:hover, .entry-content .mlk-latest .wp-block-post-title a:hover { color: var(--mlk-red) !important; }

/* ---------------------------------------------------------------- header / footer polish */
.site-header .header-html .mlk-header-search form, .site-header .header-html form.search-form { display: flex; gap: 0; }
.site-header .header-html .search-field { min-height: 40px; border-radius: 999px 0 0 999px; border: 1px solid var(--mlk-line); padding: 0 1em; width: 200px; }
.site-header .header-html .search-submit { min-height: 40px; border-radius: 0 999px 999px 0; border: 0; background: var(--mlk-red); color: #fff; padding: 0 0.9em; }
.mobile-html .search-form { display: flex; width: 100%; margin: 0 0 1rem; }
.mobile-html .search-field { flex: 1; min-height: 48px; border-radius: 8px 0 0 8px; border: 1px solid var(--mlk-line); padding: 0 1em; font-size: 16px; }
.mobile-html .search-submit { min-height: 48px; border-radius: 0 8px 8px 0; border: 0; background: var(--mlk-red); color: #fff; padding: 0 1em; }
.site-footer .footer-html { font-size: 0.85em; }
.site-footer .mlk-footer-disclosure { color: var(--global-palette5, #6b655c); max-width: 900px; }
.site-footer .widget-title { color: var(--global-palette9, #fff); }
.footer-widget-area .widget_nav_menu li, .footer-widget-area .wp-block-page-list li, .footer-widget-area ul li { padding: 0.2em 0; }

/* ---------------------------------------------------------- ads off (2026-09-22)
   Edgard: no ads are running yet, so the reserved placeholders are hidden.
   To switch them back on, delete this one block. The slots stay in the markup,
   so turning ads on later still causes zero layout shift. */
.mlk-ad-slot { display: none !important; }
.primary-sidebar .widget.widget_block:has(.mlk-ad-slot) { display: none !important; }
