/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Description: Child theme of GeneratePress for maistorlist.com. Holds site-specific customizations, including excluding shop products from search results.
Author: Webnitec
Author URI: https://maistorlist.com
Template: generatepress
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: generatepress-child
*/

/* GeneratePress loads its own stylesheet via the parent theme. */
/* Add site-specific CSS overrides below this line. */

/* =========================================================================
   Single product page (virtual / directly-payable products)
   Scoped to body.single-product so nothing else on the site is affected.
   Image left, sticky buy-box right; styled price, button, badges, tabs.
   ========================================================================= */

:root {
  --ml-accent: #2563eb;
  --ml-accent-dark: #1d4ed8;
  --ml-ink: #0f172a;
  --ml-muted: #64748b;
  --ml-line: #e2e8f0;
  --ml-radius: 14px;
  --ml-shadow: 0 10px 30px -12px rgba(15, 23, 42, 0.18);
}

body.single-product div.product {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 48px;
  align-items: start;
}
body.single-product div.product .woocommerce-product-gallery {
  width: 100% !important;
  float: none;
  margin: 0;
}
body.single-product div.product .woocommerce-product-gallery__image img {
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
}

body.single-product div.product .entry-summary {
  width: 100% !important;
  float: none;
  margin: 0;
  background: #fff;
  border: 1px solid var(--ml-line);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  padding: 32px;
}

body.single-product .entry-summary .product_title {
  font-size: clamp(1.6rem, 2.4vw, 2.1rem);
  line-height: 1.2;
  margin: 0 0 14px;
  color: var(--ml-ink);
}

.ml-virtual-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ml-accent-dark);
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  padding: 5px 12px;
  border-radius: 999px;
  margin-bottom: 16px;
}
.ml-virtual-badge svg { width: 14px; height: 14px; }

body.single-product .entry-summary .price {
  margin: 4px 0 20px;
  color: var(--ml-ink);
  font-size: 2rem;
  font-weight: 700;
}
body.single-product .entry-summary .price del { color: var(--ml-muted); font-weight: 400; font-size: 1.2rem; }
body.single-product .entry-summary .price ins { text-decoration: none; }
body.single-product .entry-summary .price .woocommerce-Price-currencySymbol { font-weight: 600; }

body.single-product .entry-summary .woocommerce-product-details__short-description {
  color: var(--ml-muted);
  font-size: 1rem;
  line-height: 1.65;
  margin-bottom: 24px;
}

body.single-product .entry-summary form.cart {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: stretch;
  margin-bottom: 8px;
}
body.single-product .entry-summary form.cart .quantity input.qty {
  height: 54px;
  width: 72px;
  border: 1px solid var(--ml-line);
  border-radius: 10px;
  text-align: center;
  font-size: 1rem;
}
body.single-product .entry-summary .single_add_to_cart_button {
  flex: 1 1 auto;
  min-height: 54px;
  font-size: 1.05rem;
  font-weight: 700;
  border-radius: 10px;
  background: var(--ml-accent);
  border: none;
  color: #fff;
  transition: background .15s ease, transform .05s ease;
}
body.single-product .entry-summary .single_add_to_cart_button:hover { background: var(--ml-accent-dark); }
body.single-product .entry-summary .single_add_to_cart_button:active { transform: translateY(1px); }

.ml-trust {
  list-style: none;
  margin: 22px 0 0;
  padding: 20px 0 0;
  border-top: 1px solid var(--ml-line);
  display: grid;
  gap: 14px;
}
.ml-trust li { display: flex; align-items: flex-start; gap: 12px; margin: 0; font-size: 0.92rem; color: var(--ml-ink); }
.ml-trust li svg { flex: 0 0 auto; width: 22px; height: 22px; color: var(--ml-accent); margin-top: 1px; }
.ml-trust li span { display: block; }
.ml-trust li span small { display: block; color: var(--ml-muted); font-size: 0.82rem; margin-top: 2px; }

body.single-product .entry-summary .product_meta {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--ml-line);
  font-size: 0.85rem;
  color: var(--ml-muted);
}
body.single-product .entry-summary .product_meta a { color: var(--ml-accent); }

body.single-product .woocommerce-tabs { margin-top: 56px; grid-column: 1 / -1; }
body.single-product .woocommerce-tabs ul.tabs { border-bottom: 1px solid var(--ml-line); padding: 0; }
body.single-product .woocommerce-tabs ul.tabs li { border: none; background: none; border-radius: 0; }
body.single-product .woocommerce-tabs ul.tabs li.active { border-bottom: 2px solid var(--ml-accent); }
body.single-product .woocommerce-tabs ul.tabs li a { font-weight: 600; }
body.single-product .related.products { grid-column: 1 / -1; margin-top: 40px; }

@media (max-width: 768px) {
  body.single-product div.product { grid-template-columns: 1fr; gap: 28px; }
  body.single-product div.product .entry-summary { position: static; padding: 24px; }
}

/* =========================================================================
   Checkout page — ShopEngine-style redesign (block checkout)
   Scoped to body.woocommerce-checkout. Replicates the ShopEngine checkout
   demo look: lavender page, white centered card, filled square inputs,
   solid-blue square "Place order" button, Inter headings. Blog sidebar
   (Recent Posts/Comments) removed. Header/footer untouched.
   ========================================================================= */

:root { --co-accent: #2851f3; --co-accent-dark: #1d3fd1; }

/* lavender page background + remove GeneratePress blog sidebar */
body.woocommerce-checkout { background: #f0f3fc; }
body.woocommerce-checkout #right-sidebar { display: none; }
body.woocommerce-checkout #primary,
body.woocommerce-checkout .content-area { width: 100%; float: none; }
body.woocommerce-checkout .site,
body.woocommerce-checkout #page,
body.woocommerce-checkout .site-content,
body.woocommerce-checkout #content { background: transparent; }

/* white card holding the whole checkout */
body.woocommerce-checkout .inside-article {
  background: #fff;
  max-width: 1140px;
  margin: 40px auto;
  padding: 72px 72px 60px;
  border-radius: 10px;
  box-shadow: 0 18px 50px rgba(30, 42, 90, 0.08);
}
body.woocommerce-checkout .entry-content { margin: 0; }

/* section headings (step titles + order summary title) */
body.woocommerce-checkout .wc-block-components-checkout-step__title,
body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-title,
body.woocommerce-checkout .wc-block-components-totals-wrapper .wc-block-components-title {
  font-family: Inter, "Segoe UI", system-ui, -apple-system, sans-serif;
  font-size: 22px;
  font-weight: 600;
  color: #333;
  text-transform: capitalize;
  letter-spacing: 0;
}

/* inputs / selects — filled gray, 2px border, square corners */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input textarea,
body.woocommerce-checkout .wc-block-checkout select,
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-address-form input,
body.woocommerce-checkout .wc-block-components-select select {
  background: #f5f5f5 !important;
  border: 2px solid #dee3ea !important;
  border-radius: 0 !important;
  color: #586377 !important;
  box-shadow: none !important;
}
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-combobox input:focus {
  border-color: var(--co-accent) !important;
}
body.woocommerce-checkout .wc-block-components-text-input label { color: #7a8499; }

/* "Place order" button — solid blue, square, full width */
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-checkout__actions .wc-block-components-button {
  background: var(--co-accent) !important;
  color: #fff !important;
  border-radius: 0 !important;
  font-weight: 500 !important;
  text-transform: capitalize !important;
  box-shadow: none !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
  background: var(--co-accent-dark) !important;
}

/* order summary — subtle panel on the right column */
body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-sidebar {
  background: #fafbff;
  border: 1px solid #e8ebf6;
  border-radius: 8px;
  padding: 24px;
}

/* hide GeneratePress page title on checkout (demo card has no title) */
body.woocommerce-checkout .entry-header,
body.woocommerce-checkout h1.entry-title { display: none; }
body.woocommerce-checkout .inside-article { padding-top: 64px; }

@media (max-width: 781px) {
  body.woocommerce-checkout .inside-article {
    max-width: 100%;
    margin: 16px auto;
    padding: 24px 18px;
    border-radius: 0;
  }
}

/* ===== Uniform site width — 1360px desktop / 96% mobile (2026-06-25) ===== */
/* .grid-container is GeneratePress's universal wrapper: header, nav, the boxed
   page (#page.site.grid-container), and footer all use it → one uniform width. */
.grid-container { max-width: 1360px; }
.wp-block-group__inner-container { max-width: 1360px; }

@media (max-width: 768px) {
  /* Only the master boxed container goes to 96%; nested grid-containers fill it,
     so widths don't compound. */
  .site.grid-container { width: 96%; max-width: 96%; margin-left: auto; margin-right: auto; }
}

/* Align header to the body — remove GeneratePress header's horizontal padding so the
   logo & nav sit flush at the container edge, matching the breadcrumbs and content. */
.inside-header { padding-left: 0; padding-right: 0; }

/* ===== Header — soft off-white tint + subtle bottom shadow (2026-06-25) ===== */
.site-header {
  background-color: #14304f;
  box-shadow: 0 2px 10px rgba(8, 20, 35, 0.25);
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 100;
}

/* Navigation: remove the white background box; keep menu flush-right on desktop.
   Scoped to desktop so the mobile toggled menu keeps a readable background. */
@media (min-width: 769px) {
  .main-navigation { background-color: transparent; }
  .main-navigation .inside-navigation { justify-content: flex-end; }
}

/* Align body to header — the sidebar is hidden site-wide and content is full width,
   but GeneratePress keeps a 20px sidebar gutter (margin-right on .site-main) that made
   the content 20px narrower on the right than the header. Zero it so body == header width. */
.site-content .site-main { margin-right: 0; }

/* Contact page: make the hero box & cards flush with the header on desktop
   (the .ml-contact wrapper's 20px side gutter kept them inset). Mobile keeps the gutter. */
@media (min-width: 769px) {
  .entry-content .ml-contact { padding-left: 0; padding-right: 0; }
}

/* =========================================================================
   Blog / News archive ("Новини") — post listing + sidebar
   Scoped to body.blog so only the news index is affected. Reuses the site
   design tokens (--ml-accent / --ml-ink / --ml-muted / --ml-line / radius /
   shadow) defined in :root above. Added 2026-06-25.
   ========================================================================= */

/* --- Post grid (two cards per row) --- */
body.blog .site-main {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
}
body.blog .site-main > article { margin-bottom: 0; display: flex; }
/* Pagination spans the full width below the grid */
body.blog .site-main > .paging-navigation { grid-column: 1 / -1; }

/* --- Post cards --- */
body.blog .site-main .inside-article {
  width: 100%;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--ml-line);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  padding: 30px 32px;
  transition: box-shadow .2s ease, transform .2s ease;
}
body.blog .site-main .inside-article:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 40px -14px rgba(15, 23, 42, 0.28);
}
/* Push the category footer to the bottom so cards align */
body.blog .site-main footer.entry-meta { margin-top: auto; }

/* Title */
body.blog .entry-header { margin-bottom: 4px; }
body.blog .entry-title {
  font-size: clamp(1.3rem, 1.7vw, 1.55rem);
  line-height: 1.3;
  margin: 0 0 12px;
  font-weight: 700;
}
body.blog .entry-title a { color: var(--ml-ink); text-decoration: none; transition: color .15s ease; }
body.blog .entry-title a:hover { color: var(--ml-accent); }

/* Meta row (date · author) */
body.blog .entry-header .entry-meta {
  font-size: .82rem;
  color: var(--ml-muted);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 14px;
  margin-bottom: 18px;
}
body.blog .entry-header .entry-meta a { color: var(--ml-muted); text-decoration: none; }
body.blog .entry-header .entry-meta a:hover { color: var(--ml-accent); }
body.blog .entry-header .entry-meta .posted-on {
  display: inline-flex; align-items: center; gap: 7px;
  font-weight: 600; color: var(--ml-ink);
}
body.blog .entry-header .entry-meta .posted-on::before {
  content: ""; width: 8px; height: 8px; border-radius: 50%;
  background: var(--ml-accent); display: inline-block; flex: 0 0 auto;
}

/* Excerpt */
body.blog .entry-summary {
  color: #475569;
  font-size: 1.02rem;
  line-height: 1.7;
  margin-bottom: 22px;
}
body.blog .entry-summary p { margin: 0; }

/* Footer — category pill */
body.blog footer.entry-meta {
  border-top: 1px solid var(--ml-line);
  padding-top: 18px;
  margin-top: 4px;
  font-size: .8rem;
}
body.blog footer.entry-meta .cat-links {
  display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px;
  color: var(--ml-muted);
}
body.blog footer.entry-meta .cat-links a {
  display: inline-flex; align-items: center;
  background: #eff4ff;
  color: var(--ml-accent-dark);
  border: 1px solid #dbe6ff;
  padding: 4px 12px;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
body.blog footer.entry-meta .cat-links a:hover {
  background: var(--ml-accent); color: #fff; border-color: var(--ml-accent);
}
body.blog footer.entry-meta .cat-links .gp-icon { color: var(--ml-muted); }

/* Pagination (renders when >10 posts) */
body.blog .paging-navigation { border: 0; background: transparent !important; padding: 8px 0 0; }
body.blog .paging-navigation .nav-links,
body.blog nav.pagination .nav-links { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
body.blog .paging-navigation a,
body.blog .paging-navigation .page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 42px; height: 42px; padding: 0 12px;
  border: 1px solid var(--ml-line); border-radius: 10px;
  background: #fff; color: var(--ml-ink); text-decoration: none; font-weight: 600;
  transition: border-color .15s ease, color .15s ease, background .15s ease;
}
body.blog .paging-navigation a:hover { border-color: var(--ml-accent); color: var(--ml-accent); }
body.blog .paging-navigation .page-numbers.current { background: var(--ml-accent); color: #fff; border-color: var(--ml-accent); }

/* --- Sidebar widgets (blog only) --- */
body.blog #right-sidebar .widget {
  border: 1px solid var(--ml-line);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  margin-bottom: 26px;
}
body.blog #right-sidebar .widget .widget-title,
body.blog #right-sidebar .widget .wp-block-heading,
body.blog #right-sidebar .widget .wp-block-search__label {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--ml-ink);
  display: block;
  margin: 0 0 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--ml-line);
  position: relative;
}
body.blog #right-sidebar .widget .widget-title::after,
body.blog #right-sidebar .widget .wp-block-heading::after,
body.blog #right-sidebar .widget .wp-block-search__label::after {
  content: ""; position: absolute; left: 0; bottom: -2px;
  width: 44px; height: 2px; background: var(--ml-accent);
}

/* Search widget */
body.blog #right-sidebar .wp-block-search__inside-wrapper { gap: 8px; }
body.blog #right-sidebar .wp-block-search__input {
  border: 1px solid var(--ml-line) !important;
  border-radius: 10px !important;
  background: #fff !important;
  padding: 10px 14px;
}
body.blog #right-sidebar .wp-block-search__input:focus { border-color: var(--ml-accent) !important; }
body.blog #right-sidebar .wp-block-search__button {
  background: var(--ml-accent) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 10px !important;
  padding: 10px 20px !important;
  font-weight: 600;
  transition: background .15s ease;
}
body.blog #right-sidebar .wp-block-search__button:hover { background: var(--ml-accent-dark) !important; }

/* Recent posts list */
body.blog #right-sidebar .wp-block-latest-posts__list { margin: 0; padding: 0; list-style: none; }
body.blog #right-sidebar .wp-block-latest-posts__list li { padding: 11px 0; border-bottom: 1px solid var(--ml-line); }
body.blog #right-sidebar .wp-block-latest-posts__list li:first-child { padding-top: 0; }
body.blog #right-sidebar .wp-block-latest-posts__list li:last-child { border-bottom: 0; padding-bottom: 0; }
body.blog #right-sidebar .wp-block-latest-posts__post-title {
  color: var(--ml-ink); text-decoration: none; font-weight: 600; line-height: 1.4;
  display: block; transition: color .15s ease;
}
body.blog #right-sidebar .wp-block-latest-posts__post-title:hover { color: var(--ml-accent); }

/* Recent comments (empty state) */
body.blog #right-sidebar .wp-block-latest-comments,
body.blog #right-sidebar .wp-block-latest-comments .no-comments { color: var(--ml-muted); font-size: .92rem; }

@media (max-width: 768px) {
  body.blog .site-main { grid-template-columns: 1fr; gap: 22px; }
  body.blog .site-main .inside-article { padding: 24px 22px; }
  body.blog #right-sidebar .widget { margin-bottom: 20px; }
}

/* 30px gutter between content column and sidebar (blog) */
body.blog #right-sidebar .inside-right-sidebar { padding-left: 30px; }
@media (max-width: 768px) { body.blog #right-sidebar .inside-right-sidebar { padding-left: 0; } }

/* ============================================================
   Single blog post (статия) — body.single-post  (2026-06-25)
   Reuses :root site tokens. Lives here in style.css (not ASE) like
   the blog archive — see memory single-post-template / blog-news-archive.
   ============================================================ */

/* Article card */
.single-post .inside-article {
  background: #fff;
  border: 1px solid var(--ml-line);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  padding: clamp(22px, 4vw, 52px);
}

/* Title */
.single-post .entry-header { margin-bottom: 0; }
.single-post .entry-title {
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--ml-ink);
  margin: 0 0 14px;
}

/* Meta row: date · author */
.single-post .entry-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 0;
  font-size: 0.9rem;
  color: var(--ml-muted);
  padding-bottom: 22px;
  margin-bottom: 28px;
  border-bottom: 1px solid var(--ml-line);
}
.single-post .entry-meta .posted-on::before {
  content: "";
  display: inline-block;
  width: 7px; height: 7px;
  margin-right: 9px;
  border-radius: 50%;
  background: var(--ml-accent);
  vertical-align: middle;
}
.single-post .entry-meta .byline::before {
  content: "·";
  margin: 0 9px;
  color: var(--ml-muted);
}
.single-post .entry-meta a { color: var(--ml-muted); text-decoration: none; }
.single-post .entry-meta a:hover { color: var(--ml-accent); }

/* Readable body copy */
.single-post .entry-content {
  font-size: 1.075rem;
  line-height: 1.8;
  color: #1f2937;
}
.single-post .entry-content > p,
.single-post .entry-content > ul,
.single-post .entry-content > ol,
.single-post .entry-content > figure,
.single-post .entry-content > blockquote { margin: 0 0 1.35em; }
.single-post .entry-content > *:last-child { margin-bottom: 0; }
.single-post .entry-content strong { color: var(--ml-ink); font-weight: 700; }

/* Section headings */
.single-post .entry-content h2 {
  font-size: clamp(22px, 2.6vw, 30px);
  line-height: 1.25;
  color: var(--ml-ink);
  margin: 1.9em 0 0.6em;
  padding-bottom: 0.4em;
  border-bottom: 2px solid var(--ml-line);
}
.single-post .entry-content h2::before {
  content: "";
  display: inline-block;
  width: 4px; height: 0.95em;
  margin-right: 12px;
  border-radius: 2px;
  background: var(--ml-accent);
  vertical-align: -0.1em;
}
.single-post .entry-content h3 {
  font-size: clamp(18px, 2vw, 22px);
  color: var(--ml-accent-dark);
  margin: 1.6em 0 0.5em;
}

/* In-text links */
.single-post .entry-content a {
  color: var(--ml-accent);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.single-post .entry-content a:hover { color: var(--ml-accent-dark); }

/* Lists */
.single-post .entry-content ul,
.single-post .entry-content ol { padding-left: 1.3em; }
.single-post .entry-content li { margin: 0.45em 0; }
.single-post .entry-content ul li::marker { color: var(--ml-accent); }

/* Blockquote */
.single-post .entry-content blockquote {
  padding: 4px 0 4px 22px;
  border-left: 3px solid var(--ml-accent);
  color: var(--ml-muted);
  font-style: italic;
}

/* Prev / next article links as cards */
.single-post .post-navigation {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  margin-top: 30px;
}
.single-post .post-navigation .nav-previous,
.single-post .post-navigation .nav-next {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  border: 1px solid var(--ml-line);
  border-radius: 12px;
  box-shadow: var(--ml-shadow);
  padding: 14px 18px;
  max-width: 48%;
  transition: transform .15s ease, box-shadow .15s ease;
}
.single-post .post-navigation .nav-next { margin-left: auto; flex-direction: row-reverse; text-align: right; }
.single-post .post-navigation .nav-previous:hover,
.single-post .post-navigation .nav-next:hover { transform: translateY(-2px); }
.single-post .post-navigation a { color: var(--ml-ink); text-decoration: none; font-weight: 600; line-height: 1.4; }
.single-post .post-navigation a:hover { color: var(--ml-accent); }
.single-post .post-navigation .gp-icon { color: var(--ml-accent); flex: 0 0 auto; }

/* --- Sidebar widgets (single post — mirrors blog archive) --- */
.single-post #right-sidebar .widget {
  border: 1px solid var(--ml-line);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  margin-bottom: 26px;
}
.single-post #right-sidebar .widget .widget-title,
.single-post #right-sidebar .widget .wp-block-heading,
.single-post #right-sidebar .widget .wp-block-search__label {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--ml-ink);
  display: block;
  margin: 0 0 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--ml-line);
  position: relative;
}
.single-post #right-sidebar .widget .widget-title::after,
.single-post #right-sidebar .widget .wp-block-heading::after,
.single-post #right-sidebar .widget .wp-block-search__label::after {
  content: ""; position: absolute; left: 0; bottom: -2px;
  width: 44px; height: 2px; background: var(--ml-accent);
}
.single-post #right-sidebar .wp-block-search__inside-wrapper { gap: 8px; }
.single-post #right-sidebar .wp-block-search__input {
  border: 1px solid var(--ml-line) !important;
  border-radius: 10px !important;
  background: #fff !important;
  padding: 10px 14px;
}
.single-post #right-sidebar .wp-block-search__input:focus { border-color: var(--ml-accent) !important; }
.single-post #right-sidebar .wp-block-search__button {
  background: var(--ml-accent) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 10px !important;
  padding: 10px 20px !important;
  font-weight: 600;
  transition: background .15s ease;
}
.single-post #right-sidebar .wp-block-search__button:hover { background: var(--ml-accent-dark) !important; }
.single-post #right-sidebar .wp-block-latest-posts__list { margin: 0; padding: 0; list-style: none; }
.single-post #right-sidebar .wp-block-latest-posts__list li { padding: 11px 0; border-bottom: 1px solid var(--ml-line); }
.single-post #right-sidebar .wp-block-latest-posts__list li:first-child { padding-top: 0; }
.single-post #right-sidebar .wp-block-latest-posts__list li:last-child { border-bottom: 0; padding-bottom: 0; }
.single-post #right-sidebar .wp-block-latest-posts__post-title {
  color: var(--ml-ink); text-decoration: none; font-weight: 600; line-height: 1.4;
  display: block; transition: color .15s ease;
}
.single-post #right-sidebar .wp-block-latest-posts__post-title:hover { color: var(--ml-accent); }
.single-post #right-sidebar .wp-block-latest-comments,
.single-post #right-sidebar .wp-block-latest-comments .no-comments { color: var(--ml-muted); font-size: .92rem; }

/* Stack prev/next on mobile */
@media (max-width: 768px) {
  .single-post .post-navigation { flex-direction: column; }
  .single-post .post-navigation .nav-previous,
  .single-post .post-navigation .nav-next { max-width: 100%; }
}

/* ===== Header nav — amber "pill" highlight (2026-06-25) =====
   Light links on the navy header. Hover, the current page, and the persistent
   "Услуги" CTA (li.menu-uslugi -> page 42 /magazin/) all share ONE amber pill
   look. Every top-level item carries the same shape (transparent by default)
   so highlighting never shifts the layout. Site-wide. */
.main-title a, .main-title a:hover, .main-title a:focus { color: #ffffff; }
.site-description { color: #cdd6e0; }

/* Nav background: dark blue for the mobile toggled menu + submenus
   (desktop stays transparent over the blue header via the rule farther below). */
.main-navigation,
.main-navigation ul ul { background-color: #14304f; }

/* Shared pill shape — flex-center each item so the compact pill sits centered. */
.main-navigation .main-nav > ul > li { display: flex; align-items: center; }

/* Drop-down position: the top-level pills are flex containers, which would
   otherwise centre the absolutely-positioned sub-menu over the row, and GP's
   sub-menu-right class pushes it sideways. Force first-level sub-menus to drop
   straight down, left-aligned under the item. */
.main-navigation.sub-menu-right .main-nav > ul > li.sfHover > ul,
.main-navigation.sub-menu-right .main-nav > ul > li:hover > ul,
.main-navigation .main-nav > ul > li.sfHover > ul,
.main-navigation .main-nav > ul > li:hover > ul {
  top: 100%;
  left: 0;
  right: auto;
}
.main-navigation .main-nav ul li > a {
  color: #eaf0f6;
  line-height: 1;
  padding: 10px 22px;
  border-radius: 999px;
  background-color: transparent;
  font-weight: 600;
  transition: background-color .18s ease, color .18s ease;
}

/* Amber pill: hover, keyboard focus, and the current page only.
   (The "Услуги" CTA no longer carries a persistent pill — it was reading as a
   second "active" page next to Начало. 2026-06-25) */
.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li.sfHover > a,
.main-navigation .main-nav ul li > a:focus,
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
  background-color: #f59e0b;
  color: #14304f;
  
}



/* Mobile toggled menu: keep pills compact, left-aligned in stacked rows */
@media (max-width: 768px) {
  .main-navigation .main-nav ul li { justify-content: flex-start; }
  .main-navigation .main-nav ul li > a { display: inline-block; }
}

/* Mobile menu toggle button */
.main-navigation .menu-toggle,
.main-navigation .menu-bar-items,
button.menu-toggle:hover,
button.menu-toggle:focus { color: #ffffff; }

/* About page (id 57) — align inner content to header/breadcrumb edges (2026-06-25)
   .ml-about had `padding: 0 20px ...`, insetting its content 20px from the
   header logo + breadcrumb. The parent grid-container already supplies the
   responsive side gutter, so zero the horizontal padding to line them up. */
body.page-id-57 .ml-about { padding-left: 0; padding-right: 0; }

/* Content/sidebar column gutter — 30px between the two columns (2026-06-25) */
@media (min-width: 769px) {
  body.single #primary,
  body.blog #primary,
  body.archive #primary { padding-right: 15px; }
  body.single #right-sidebar,
  body.blog #right-sidebar,
  body.archive #right-sidebar { padding-left: 15px; }
}

/* =========================================================================
   Search results ("Резултати от търсене") — body.search
   Same markup as the blog archive (article.post > .inside-article + sidebar),
   plus the .page-header search-term heading and the no-results state.
   Self-contained & scoped to body.search so the news index is untouched.
   Reuses the :root site tokens (--ml-accent / --ml-ink / --ml-muted /
   --ml-line / radius / shadow). Added 2026-06-25.
   ========================================================================= */

/* --- Search heading --- */
body.search .page-header {
  background: linear-gradient(135deg, #1d3a5f 0%, #14304f 100%);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  padding: clamp(26px, 4vw, 40px) clamp(24px, 4vw, 44px);
  margin-bottom: 30px;
}
body.search .page-header .page-title {
  margin: 0;
  color: #fff;
  font-size: clamp(1.6rem, 3vw, 2.3rem);
  line-height: 1.2;
  font-weight: 700;
}
body.search .page-header .page-title span {
  color: #ffb43d;
  white-space: nowrap;
}

/* --- Result cards --- */
body.search .site-main .inside-article {
  border: 1px solid var(--ml-line);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  padding: 34px 38px;
  transition: box-shadow .2s ease, transform .2s ease;
}
body.search .site-main article,
body.search .site-main .no-results { margin-bottom: 28px; }
body.search .site-main .inside-article:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 40px -14px rgba(15, 23, 42, 0.28);
}

/* Title */
body.search .entry-header { margin-bottom: 4px; }
body.search .entry-title {
  font-size: clamp(1.45rem, 2.4vw, 1.9rem);
  line-height: 1.25;
  margin: 0 0 12px;
  font-weight: 700;
}
body.search .entry-title a { color: var(--ml-ink); text-decoration: none; transition: color .15s ease; }
body.search .entry-title a:hover { color: var(--ml-accent); }

/* Meta row (date · author) */
body.search .entry-header .entry-meta {
  font-size: .82rem;
  color: var(--ml-muted);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 14px;
  margin-bottom: 18px;
}
body.search .entry-header .entry-meta a { color: var(--ml-muted); text-decoration: none; }
body.search .entry-header .entry-meta a:hover { color: var(--ml-accent); }
body.search .entry-header .entry-meta .posted-on {
  display: inline-flex; align-items: center; gap: 7px;
  font-weight: 600; color: var(--ml-ink);
}
body.search .entry-header .entry-meta .posted-on::before {
  content: ""; width: 8px; height: 8px; border-radius: 50%;
  background: var(--ml-accent); display: inline-block; flex: 0 0 auto;
}

/* Excerpt */
body.search .entry-summary {
  color: #475569;
  font-size: 1.02rem;
  line-height: 1.7;
  margin-bottom: 22px;
}
body.search .entry-summary p { margin: 0; }

/* Footer — category pill */
body.search footer.entry-meta {
  border-top: 1px solid var(--ml-line);
  padding-top: 18px;
  margin-top: 4px;
  font-size: .8rem;
}
body.search footer.entry-meta .cat-links {
  display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px;
  color: var(--ml-muted);
}
body.search footer.entry-meta .cat-links a {
  display: inline-flex; align-items: center;
  background: #eff4ff;
  color: var(--ml-accent-dark);
  border: 1px solid #dbe6ff;
  padding: 4px 12px;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
body.search footer.entry-meta .cat-links a:hover {
  background: var(--ml-accent); color: #fff; border-color: var(--ml-accent);
}
body.search footer.entry-meta .cat-links .gp-icon { color: var(--ml-muted); }

/* --- No results state --- */
body.search .no-results .entry-title { color: var(--ml-ink); }
body.search .no-results .entry-content { color: #475569; font-size: 1.02rem; line-height: 1.7; }
body.search .no-results .entry-content p { margin: 0 0 22px; }
body.search .no-results .search-form {
  display: flex; gap: 8px; flex-wrap: wrap; align-items: stretch; max-width: 480px;
}
body.search .no-results .search-form label { flex: 1 1 auto; margin: 0; }
body.search .no-results .search-field {
  width: 100%;
  border: 1px solid var(--ml-line);
  border-radius: 10px;
  background: #fff;
  padding: 11px 14px;
}
body.search .no-results .search-field:focus { border-color: var(--ml-accent); outline: none; }
body.search .no-results .search-submit {
  background: var(--ml-accent);
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 0 18px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s ease;
}
body.search .no-results .search-submit:hover { background: var(--ml-accent-dark); }

/* Pagination */
body.search .paging-navigation { border: 0; background: transparent !important; padding: 8px 0 0; }
body.search .paging-navigation .nav-links,
body.search nav.pagination .nav-links { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
body.search .paging-navigation a,
body.search .paging-navigation .page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 42px; height: 42px; padding: 0 12px;
  border: 1px solid var(--ml-line); border-radius: 10px;
  background: #fff; color: var(--ml-ink); text-decoration: none; font-weight: 600;
  transition: border-color .15s ease, color .15s ease, background .15s ease;
}
body.search .paging-navigation a:hover { border-color: var(--ml-accent); color: var(--ml-accent); }
body.search .paging-navigation .page-numbers.current { background: var(--ml-accent); color: #fff; border-color: var(--ml-accent); }

/* --- Sidebar widgets (search only) --- */
body.search #right-sidebar .widget {
  border: 1px solid var(--ml-line);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  margin-bottom: 26px;
}
body.search #right-sidebar .widget .widget-title,
body.search #right-sidebar .widget .wp-block-heading,
body.search #right-sidebar .widget .wp-block-search__label {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--ml-ink);
  display: block;
  margin: 0 0 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--ml-line);
  position: relative;
}
body.search #right-sidebar .widget .widget-title::after,
body.search #right-sidebar .widget .wp-block-heading::after,
body.search #right-sidebar .widget .wp-block-search__label::after {
  content: ""; position: absolute; left: 0; bottom: -2px;
  width: 44px; height: 2px; background: var(--ml-accent);
}

/* Search widget */
body.search #right-sidebar .wp-block-search__inside-wrapper { gap: 8px; }
body.search #right-sidebar .wp-block-search__input {
  border: 1px solid var(--ml-line) !important;
  border-radius: 10px !important;
  background: #fff !important;
  padding: 10px 14px;
}
body.search #right-sidebar .wp-block-search__input:focus { border-color: var(--ml-accent) !important; }
body.search #right-sidebar .wp-block-search__button {
  background: var(--ml-accent) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 10px !important;
  padding: 10px 20px !important;
  font-weight: 600;
  transition: background .15s ease;
}
body.search #right-sidebar .wp-block-search__button:hover { background: var(--ml-accent-dark) !important; }

/* Recent posts list */
body.search #right-sidebar .wp-block-latest-posts__list { margin: 0; padding: 0; list-style: none; }
body.search #right-sidebar .wp-block-latest-posts__list li { padding: 11px 0; border-bottom: 1px solid var(--ml-line); }
body.search #right-sidebar .wp-block-latest-posts__list li:first-child { padding-top: 0; }
body.search #right-sidebar .wp-block-latest-posts__list li:last-child { border-bottom: 0; padding-bottom: 0; }
body.search #right-sidebar .wp-block-latest-posts__post-title {
  color: var(--ml-ink); text-decoration: none; font-weight: 600; line-height: 1.4;
  display: block; transition: color .15s ease;
}
body.search #right-sidebar .wp-block-latest-posts__post-title:hover { color: var(--ml-accent); }

/* Recent comments (empty state) */
body.search #right-sidebar .wp-block-latest-comments,
body.search #right-sidebar .wp-block-latest-comments .no-comments { color: var(--ml-muted); font-size: .92rem; }

/* 30px gutter between content column and sidebar (search) */
body.search #right-sidebar .inside-right-sidebar { padding-left: 30px; }

@media (max-width: 768px) {
  body.search .site-main .inside-article { padding: 24px 22px; }
  body.search #right-sidebar .widget { margin-bottom: 20px; }
  body.search #right-sidebar .inside-right-sidebar { padding-left: 0; }
}

/* =========================================================================
   Search widget layout — button on the SAME ROW as the field (site-wide).
   Applies to every core/search block ("button outside") wherever it appears,
   not just the blog / search-results sidebar. Added 2026-06-25.
   ========================================================================= */
.wp-block-search__button-outside .wp-block-search__inside-wrapper {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 8px;
}
.wp-block-search__button-outside .wp-block-search__inside-wrapper .wp-block-search__input {
  flex: 1 1 auto;
  min-width: 0;
}
.wp-block-search__button-outside .wp-block-search__inside-wrapper .wp-block-search__button {
  flex: 0 0 auto;
  margin: 0;
  white-space: nowrap;
}


/* ===== "My account" (WooCommerce) — full width, no sidebar
   The account area (orders / settings / addresses) reads better without the
   blog sidebar (search + recent posts/comments). Scoped to .woocommerce-account
   so every account sub-page is covered. */
.woocommerce-account #right-sidebar { display: none; }
.woocommerce-account #primary { width: 100%; }

/* ==========================================================================
   HivePress майстори directory — brand styling (navy #14304f + amber #f59e0b)
   Added 2026-06-25. Scoped to .hp- classes so WooCommerce/account unaffected.
   ========================================================================== */
.hp-form__button{
  background:#f59e0b !important;
  border:1px solid #f59e0b !important;
  color:#14304f !important;
  font-weight:700;
  border-radius:8px;
  box-shadow:none !important;
}
.hp-form__button:hover,
.hp-form__button:focus{
  background:#14304f !important;
  border-color:#14304f !important;
  color:#fff !important;
}
.hp-page__title,
.hp-page__header h1,
.hp-page__header h2{ color:#14304f; }
.hp-form--listing-search.hp-form--primary{
  background:#14304f;
  padding:20px;
  border-radius:14px;
}
.hp-form--listing-search.hp-form--primary .hp-form__label{ color:#fff; }
.hp-form--listing-search .hp-field--text input,
.hp-form--listing-search .hp-field--select select{
  border-radius:8px;
  border:1px solid #d8dee6;
}

/* Уеднаквяване на височината на полетата в търсачката: select2 = текстовото поле (47.5px). 2026-06-26 */
.hp-form--listing-search .select2-container--default .select2-selection--single{
  height:47.5px;
  border:1px solid #d8dee6;
  border-radius:8px;
}
.hp-form--listing-search .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:45.5px;
  padding-left:12px;
}
.hp-form--listing-search .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:45.5px;
}
.hp-listing-category--view-block{
  border:1px solid #e6eaf0;
  border-radius:14px;
  overflow:hidden;
  transition:border-color .15s, box-shadow .15s, transform .15s;
  background:#fff;
}
.hp-listing-category--view-block:hover{
  border-color:#f59e0b;
  box-shadow:0 10px 28px rgba(20,48,79,.10);
  transform:translateY(-2px);
}
.hp-listing-category__name{ color:#14304f; font-weight:700; }
.hp-listing-category__count{
  display:inline-block;
  background:#f59e0b;
  color:#14304f;
  border-radius:999px;
  padding:2px 10px;
  font-weight:700;
  font-size:.82em;
}
.hp-form--listing-filter .hp-form__label{ color:#14304f; font-weight:700; }
.hp-listing--view-block{
  border:1px solid #e6eaf0;
  border-radius:14px;
  transition:border-color .15s, box-shadow .15s;
}
.hp-listing--view-block:hover{
  border-color:#f59e0b;
  box-shadow:0 10px 28px rgba(20,48,79,.10);
}
.hp-listing__title a{ color:#14304f; }
.hp-listing__title a:hover{ color:#f59e0b; }
.hp-page__content a.hp-link{ color:#14304f; }
.hp-page__content a.hp-link:hover{ color:#f59e0b; }

/* ===== HivePress account area — Поръчки / Настройки (navy #14304f + amber #f59e0b)
   Shared markup: .hp-menu--user-account (left nav) + .hp-form--user-update /
   --user-delete (settings forms). Styles both account sub-pages. */

/* Left account navigation as a card */
.hp-menu--user-account {
	background: #fff;
	border: 1px solid #e6eaf0;
	border-radius: 14px;
	padding: 10px;
	box-shadow: 0 6px 20px rgba(20, 48, 79, .06);
}
.hp-menu--user-account ul { list-style: none; margin: 0; padding: 0; }
.hp-menu--user-account li { margin: 0; }
.hp-menu--user-account li a {
	display: block;
	padding: 11px 16px;
	border-radius: 10px;
	color: #14304f;
	font-weight: 600;
	text-decoration: none;
	transition: background .15s, color .15s;
}
.hp-menu--user-account li a:hover { background: #f4f6f9; }
.hp-menu--user-account li.hp-menu__item--current a,
.hp-menu--user-account li.current-menu-item a { background: #14304f; color: #fff; }
.hp-menu--user-account li.hp-menu__item--user-logout a { color: #8b97a6; }
.hp-menu--user-account li.hp-menu__item--user-logout a:hover { color: #c0392b; background: #fdf0ee; }

/* Settings form as a card */
.hp-form--user-update {
	background: #fff;
	border: 1px solid #e6eaf0;
	border-radius: 14px;
	padding: 28px 28px 24px;
	box-shadow: 0 6px 20px rgba(20, 48, 79, .06);
}
.hp-template--user-account-page .hp-page__title {
	color: #14304f;
	font-weight: 800;
	margin: 0 0 20px;
}

/* Fields */
.hp-form--user-update .hp-form__field,
.hp-form--user-delete .hp-form__field { margin-bottom: 18px; }
.hp-form--user-update .hp-field__label,
.hp-form--user-delete .hp-field__label {
	display: block;
	margin-bottom: 7px;
	color: #14304f;
	font-weight: 600;
	font-size: .95rem;
}
.hp-form--user-update .hp-field__label small,
.hp-form--user-delete .hp-field__label small { color: #9aa6b5; font-weight: 400; }
.hp-form--user-update input.hp-field,
.hp-form--user-update textarea.hp-field,
.hp-form--user-delete input.hp-field {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid #d7dee7;
	border-radius: 10px;
	background: #fff;
	color: #14304f;
	font-size: 1rem;
	transition: border-color .15s, box-shadow .15s;
}
.hp-form--user-update input.hp-field:focus,
.hp-form--user-update textarea.hp-field:focus,
.hp-form--user-delete input.hp-field:focus {
	outline: none;
	border-color: #f59e0b;
	box-shadow: 0 0 0 3px rgba(245, 158, 11, .18);
}
.hp-form--user-update textarea.hp-field { min-height: 120px; resize: vertical; }
/* keep text clear of the show/hide eye icon on password fields */
.hp-form__field--password { position: relative; }
.hp-form__field--password input.hp-field { padding-right: 44px; }
.hp-form__field--password .hp-field__icon {
	position: absolute;
	right: 14px;
	bottom: 13px;
	color: #9aa6b5;
}

/* "Select Image" / secondary buttons → navy */
.hp-form--user-update .hp-field--button {
	background: #14304f;
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 11px 20px;
	font-weight: 600;
	cursor: pointer;
	transition: background .15s;
}
.hp-form--user-update .hp-field--button:hover { background: #1d4068; }

/* Primary submit button → amber CTA */
.hp-form--user-update .hp-form__button {
	background: #f59e0b;
	color: #14304f;
	border: none;
	border-radius: 10px;
	padding: 13px 28px;
	font-weight: 700;
	font-size: 1rem;
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(245, 158, 11, .3);
	transition: transform .12s, box-shadow .12s, background .15s;
}
.hp-form--user-update .hp-form__button:hover {
	background: #e08c00;
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(245, 158, 11, .4);
}

/* Footer row: submit + delete link */
.hp-form--user-update .hp-form__footer {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 4px;
}
.hp-form__action--user-delete {
	color: #c0392b;
	text-decoration: none;
	font-size: .9rem;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.hp-form__action--user-delete:hover { text-decoration: underline; }

/* Delete-account modal */
.hp-modal .hp-modal__title { color: #14304f; font-weight: 800; }
.hp-form--user-delete .hp-form__description { color: #5a6776; }
.hp-form--user-delete .hp-form__button {
	background: #c0392b;
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 12px 24px;
	font-weight: 700;
	cursor: pointer;
	transition: background .15s;
}
.hp-form--user-delete .hp-form__button:hover { background: #a93226; }

/* Form status messages */
.hp-form__messages:not(:empty) {
	border-radius: 10px;
	padding: 12px 14px;
	margin-bottom: 16px;
	font-size: .95rem;
}


/* =========================================================================
   "Моят профил" account area (Поръчки / Настройки) — layout + page header
   The account page rendered a white .inside-article box on the #f7f8f9 page bg
   (clashing near-whites) and inset its content 40px from the header edge. Make
   the wrapper transparent + flush so the menu/content cards sit on one
   consistent background, aligned to the header width. A static "Моят профил"
   hero (functions.php, generate_after_header) replaces the per-endpoint h1.
   Scoped to body.woocommerce-account. Added 2026-06-26.
   ========================================================================= */

/* Dissolve the white content box -> cards sit on the page bg, flush with header */
body.woocommerce-account .inside-article {
  background: transparent;
  padding: 0;
  border: 0;
  box-shadow: none;
}
/* Per-endpoint title ("Поръчки"/"Настройки") replaced by the static hero */
body.woocommerce-account .entry-header { display: none; }

/* Static page header */
.ml-account-hero {
  background: linear-gradient(135deg, #1d3a5f 0%, #14304f 100%);
  border-radius: var(--ml-radius);
  box-shadow: var(--ml-shadow);
  padding: clamp(24px, 3.5vw, 38px) clamp(24px, 4vw, 44px);
  margin: 0 0 26px;
}
.ml-account-hero h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.6rem, 3vw, 2.3rem);
  line-height: 1.2;
  font-weight: 700;
}
.ml-account-hero p {
  margin: 8px 0 0;
  color: #c7d4e3;
  font-size: 1rem;
}

/* Empty-orders / notices -> branded card instead of the flat grey strip */
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-Message {
  background: #fff;
  border: 1px solid var(--ml-line);
  border-left: 4px solid #f59e0b;
  border-radius: var(--ml-radius);
  box-shadow: 0 6px 20px rgba(20, 48, 79, .06);
  color: #14304f;
  padding: 20px 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  font-size: 1rem;
}
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-message::before { content: none; }

/* "Преглед на продукти" + account buttons -> amber CTA */
body.woocommerce-account .woocommerce-info a.button,
body.woocommerce-account .woocommerce-message a.button,
body.woocommerce-account .hp-page__content a.button,
body.woocommerce-account .woocommerce-MyAccount-content a.button {
  background: #f59e0b;
  color: #14304f;
  border: 1px solid #f59e0b;
  border-radius: 8px;
  font-weight: 700;
  padding: 11px 22px;
  box-shadow: none;
  transition: background .15s, color .15s;
}
body.woocommerce-account .woocommerce-info a.button:hover,
body.woocommerce-account .woocommerce-message a.button:hover,
body.woocommerce-account .hp-page__content a.button:hover,
body.woocommerce-account .woocommerce-MyAccount-content a.button:hover {
  background: #14304f;
  border-color: #14304f;
  color: #fff;
}

/* ===== Brand logo (header) — uploaded Maistorlist logo as header image */
.site-logo{display:flex;align-items:center}
.site-logo img.header-image{height:52px;width:auto;max-width:100%}
.site-header .main-title{display:none} /* wordmark already in the logo image */
@media (max-width:768px){.site-logo img.header-image{height:42px}}

/* ===== Contact form (CF7) — consent line */
.ml-cf-accept{margin:4px 0 20px;font-size:13.5px;line-height:1.55;color:#5b6b7d}
.ml-cf-accept .wpcf7-list-item{margin:0;display:flex;align-items:flex-start;gap:9px}
.ml-cf-accept .wpcf7-list-item-label{flex:1 1 auto}
.ml-cf-accept input[type=checkbox]{margin-top:2px;width:17px;height:17px;accent-color:#f59e0b;flex:0 0 auto;cursor:pointer}
.ml-cf-accept a{color:#14304f;font-weight:600;text-decoration:underline}
.ml-cf-accept a:hover{color:#f59e0b}

/* ===== Mobile: one uniform 96% column for header, homepage body & footer (2026-06-26)
   Header (full-bleed bar), the homepage .mz-band sections, and the footer bands each
   span the full viewport; their inner content used different insets (header 0,
   .mz-wrap 24px, .ml-foot-wrap 30px) so the columns didn't line up. Normalize all three
   inner wrappers to 96% width, centered, so header / body / footer share one left edge. */
@media (max-width: 768px) {
  /* Lower header (logo + toggle): halve GP's 20px top/bottom padding → 10px, and let the
     hamburger sit flush at the 96% body right edge (drop GP's 20px toggle right padding). */
  .inside-header { width: 96%; max-width: 96%; margin-left: auto; margin-right: auto; padding-top: 8px; padding-bottom: 10px; align-items: center; }
  /* Center the logo & hamburger on one line: GP's toggle has line-height:60px which
     parks the icon on the text baseline (visually higher than the logo). Make the toggle a
     centered flex box with a normal line-height so its icon sits on the logo's centerline. */
  .has-inline-mobile-toggle .mobile-menu-control-wrapper { align-items: center; }
  .has-inline-mobile-toggle .mobile-menu-control-wrapper .menu-toggle { padding-right: 0; display: flex; align-items: center; line-height: 1; }
  .has-inline-mobile-toggle .mobile-menu-control-wrapper .menu-toggle .gp-icon { display: flex; align-items: center; }
  body.home .entry-content .mz-wrap { width: 96%; max-width: 96%; margin-left: auto; margin-right: auto; padding-left: 0; padding-right: 0; }
  .site-footer .ml-foot-wrap { width: 96%; max-width: 96%; margin-left: auto; margin-right: auto; padding-left: 0; padding-right: 0; }
}

/* ===== HivePress pages - align content box to header width.
   GP wraps the page in a 1360px .grid-container, but .hp-page.site-main capped
   at 1280px with 40px side padding, so its content sat 40px in on the left and
   80px short on the right vs the header/breadcrumb. Match it to the wrapper.
   Padding zeroed on desktop only so mobile keeps its gutter. (2026-06-26) */
.hp-page.site-main { max-width: none; }
@media (min-width: 769px) {
  .hp-page.site-main { padding-left: 0 !important; padding-right: 0 !important; }
}
