/**
 * SPOKI FINAL DESIGN SYSTEM LOCK
 * Source of truth for colors, typography, spacing and reusable components.
 * Loaded LAST in the cascade so it is authoritative.
 * Do NOT override these roles page-by-page. Do NOT add new colors/fonts without owner approval.
 * To re-theme the whole site, edit the TOKENS in :root below — every role consumes them.
 */
:root{
  /* ---- FONTS ---- */
  --spoki-font-heading:"Comfortaa","Nunito",sans-serif;
  --spoki-font-body:"Nunito",Arial,sans-serif;
  /* ---- CANONICAL COLORS ---- */
  --spoki-color-heading:#2E3A67;
  --spoki-color-text:#2A2D34;
  --spoki-color-teal:#19B0B6;
  --spoki-color-deep-teal:#00838A;
  --spoki-color-orange:#FF8A00;
  --spoki-color-orange-deep:#E67E00;
  --spoki-color-cream:#FFF7EB;
  --spoki-color-soft-teal-bg:#E8F7F5; /* helper/trust block backgrounds */
  --spoki-color-footer-mint:#E4F4EE;   /* APPROVED footer background (distinct role) */
  --spoki-color-border:#E7DED3;
  --spoki-color-muted:#54656B;
  --spoki-color-white:#FFFFFF;
  /* ---- RADII + LAYOUT ---- */
  --spoki-radius-sm:12px; --spoki-radius-md:18px; --spoki-radius-lg:28px; --spoki-radius-pill:999px;
  --spoki-container-wide:1240px; --spoki-container-readable:760px;
  /* ---- LEGACY ALIASES (existing rules consume these names) ---- */
  --spoki-color-trust-blue:var(--spoki-color-heading);
  --spoki-color-charcoal:var(--spoki-color-text);
  --spoki-color-warm-neutral:var(--spoki-color-border);
  --spoki-cream-bg:var(--spoki-color-cream);
  --spoki-price-current:var(--spoki-color-deep-teal);/* THE single current-price token = #00838A (PRICE COLOUR LAW). Declared ONLY here. */--spoki-price-old:var(--spoki-color-muted);/* struck old price */--spoki-price-secondary:var(--spoki-color-muted);/* BGN secondary value */--spoki-cart-total:var(--spoki-color-deep-teal);/* cart/mini-cart totals - own semantic role, currently same hex as price-current */--spoki-discount-value:var(--spoki-color-deep-teal);/* savings/negative discount rows *//* --spoki-price alias RETIRED 2026-07-16: full scan (child+parent theme css/php/js, wp_options, wp_postmeta, wp_posts) found ZERO consumers. Use --spoki-price-current / -old / -secondary / --spoki-cart-total / --spoki-discount-value. */
}
/* Token bridges that must beat older !important :root patches (same specificity, later source wins) */
html:root{
  --spoki-teal:#19B0B6!important;
  --spoki-teal-deep:#00838A!important;
  --spoki-orange:#FF8A00!important;
  --spoki-orange-deep:#E67E00!important;
  --spoki-slate:#2A2D34!important;   /* slate = body text EVERYWHERE (never blue) */
  --spoki-trust:#2E3A67!important;
  --wd-primary-color:#19B0B6!important;
  --wd-link-color:#19B0B6!important;
  --wd-title-color:#2E3A67!important;
  --wd-secondary-color:#FF8A00!important;
}

/* =========================================================
   GLOBAL TYPOGRAPHY ROLES (token-driven)
   ========================================================= */
h1,h2,h3,.wd-page-title .title,.wd-page-title .entry-title{font-family:var(--spoki-font-heading);color:var(--spoki-color-heading)}
body,p,li,td,th,input,textarea,select,button,.wd-nav-main,.woocommerce{font-family:var(--spoki-font-body)}
body{color:var(--spoki-color-text)}

/* =========================================================
   REUSABLE COMPONENT CONTRACT CLASSES
   New pages/sections MUST use these. Do not invent one-offs.
   ========================================================= */
.spoki-section{width:100%;padding:56px 0}
.spoki-section--cream{background:var(--spoki-color-cream)}
.spoki-section--white{background:var(--spoki-color-white)}
.spoki-section--mint{background:var(--spoki-color-soft-teal-bg)}
.spoki-section__inner{max-width:var(--spoki-container-wide);margin:0 auto;padding:0 20px}
.spoki-section__eyebrow{font-family:var(--spoki-font-heading);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--spoki-color-teal);margin:0 0 .5rem}
.spoki-section__title{font-family:var(--spoki-font-heading);font-weight:700;color:var(--spoki-color-heading);margin:0 0 .5rem}
.spoki-section__subtitle{font-family:var(--spoki-font-body);color:var(--spoki-color-muted);max-width:var(--spoki-container-readable)}
.spoki-card{background:var(--spoki-color-white);border:1px solid var(--spoki-color-border);border-radius:var(--spoki-radius-md);padding:20px}
.spoki-button,.spoki-button--primary{display:inline-block;font-family:var(--spoki-font-body);font-weight:800;background:var(--spoki-color-orange);color:var(--spoki-color-white);border:0;border-radius:var(--spoki-radius-pill);padding:12px 28px;cursor:pointer;text-decoration:none;transition:background .2s}
.spoki-button:hover,.spoki-button--primary:hover{background:var(--spoki-color-orange-deep);color:var(--spoki-color-white)}
.spoki-chip{display:inline-block;font-family:var(--spoki-font-body);font-weight:700;font-size:14px;line-height:1;padding:9px 18px;border-radius:var(--spoki-radius-pill);background:var(--spoki-color-white);border:1px solid var(--spoki-color-border);color:var(--spoki-color-heading);text-transform:none;text-decoration:none}
.spoki-chip--active{background:var(--spoki-color-teal);border-color:var(--spoki-color-teal);color:var(--spoki-color-white)}
.spoki-chip:hover{border-color:var(--spoki-color-teal);color:var(--spoki-color-teal)}
.spoki-chip--active:hover{color:var(--spoki-color-white)}
.spoki-product-price{font-family:var(--spoki-font-body);font-weight:800;color:var(--spoki-price-current)}
.spoki-faq__item{border-bottom:1px solid var(--spoki-color-border)}

/* =========================================================
   SECTION ROLE ENFORCEMENT — make older section CSS obey the roles
   (small labels + links = teal; card titles = heading blue)
   ========================================================= */
/* Homepage 'play guide' cards */
.spoki-play-guide__label{color:var(--spoki-color-teal)!important}
.spoki-play-guide__cardcta{color:var(--spoki-color-teal)!important}
/* Homepage 'browse by type' tiles */
.spoki-category-circles__label{color:var(--spoki-color-heading)!important}
.spoki-category-circles__btn-all,.spoki-category-circles__btn-find{color:var(--spoki-color-teal)!important}
/* Fidget helper cards: eyebrow=teal, title=heading blue (CTA stays orange) */
.spoki-cat__helpcard .spoki-cat__mini{color:var(--spoki-teal-deep,#00838A)!important}
.spoki-cat__helpcard>strong{color:var(--spoki-color-heading)!important}


/* =========================================================
   FOOTER + PRE-FOOTER DECORATION (subtle, hero-style; CSS only)
   ========================================================= */
/* dashed teal circle in the pre-footer→footer transition (top-right) */
.spoki-prefooter-cta::after{content:"";position:absolute;top:22px;right:6%;width:108px;height:108px;border:2px dashed rgba(25,176,182,0.35);border-radius:50%;pointer-events:none;z-index:0}
/* very pale circles in the footer background (white top-right, cream bottom-left) */
.wd-footer{position:relative}
.wd-footer::after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 88% 16%, rgba(255,255,255,0.55) 0, rgba(255,255,255,0) 18%), radial-gradient(circle at 8% 90%, rgba(255,247,235,0.55) 0, rgba(255,247,235,0) 22%);pointer-events:none;z-index:0}
/* keep footer text above any decoration */
.wd-footer .container{position:relative;z-index:1}
/* reduce decoration on mobile so it never interferes with text */
@media(max-width:782px){.spoki-prefooter-cta::after{display:none}}


/* =========================================================
   BROWSE-BY-TYPE TILE INTERACTION (hover + click, CSS only)
   ========================================================= */
.spoki-category-circles__tile{transition:transform .18s ease}
.spoki-category-circles__ring{transition:box-shadow .18s ease, transform .18s ease}
.spoki-category-circles__tile:hover{transform:translateY(-5px)}
.spoki-category-circles__tile:active{transform:translateY(-2px)}
.spoki-category-circles__tile:hover .spoki-category-circles__ring{box-shadow:0 12px 26px rgba(25,176,182,0.22)}
.spoki-category-circles__tile:active .spoki-category-circles__ring{box-shadow:0 6px 14px rgba(25,176,182,0.28)}
.spoki-category-circles__tile:hover .spoki-category-circles__label{color:var(--spoki-color-teal)!important}


/* =========================================================
   FILTER ROLE ENFORCEMENT — inactive option = charcoal, active/hover = teal
   (filter = 2 colors only: #2A2D34 text + #19B0B6 active/links)
   ========================================================= */
.spoki-cat__filterlink{color:var(--spoki-color-text)!important}
.spoki-cat__filterlink:hover,.spoki-cat__filterlink:focus{color:var(--spoki-color-teal)!important}
.spoki-cat__filterlink.is-active{color:var(--spoki-color-teal)!important}


/* =========================================================
   FOOTER MINT TOKEN (locked) — footer bg = --spoki-color-footer-mint #E4F4EE
   Distinct role from --spoki-color-soft-teal-bg #E8F7F5 (helper/trust blocks).
   ========================================================= */
.wd-footer.footer-container{background-color:var(--spoki-color-footer-mint)!important}


/* =========================================================
   FOOTER SOCIAL ICON STATES (locked) — NEVER a solid teal fill.
   default/active/focus/visited = white chip + blue glyph;
   hover = soft-teal bg + teal glyph; focus-visible = teal outline.
   ========================================================= */
.wd-footer .spoki-foot__socials a{background:#FFFFFF!important;border:1px solid var(--spoki-color-border)!important;color:var(--spoki-color-heading)!important;border-radius:999px!important;box-shadow:0 3px 8px rgba(15,142,147,.12)!important;transition:background .2s,color .2s,border-color .2s}
.wd-footer .spoki-foot__socials a svg,.wd-footer .spoki-foot__socials a i{color:inherit!important}
.wd-footer .spoki-foot__socials a:active,.wd-footer .spoki-foot__socials a:focus,.wd-footer .spoki-foot__socials a:visited,.wd-footer .spoki-foot__socials a:target{background:#FFFFFF!important;border-color:var(--spoki-color-border)!important;color:var(--spoki-color-heading)!important}
.wd-footer .spoki-foot__socials a:focus-visible{outline:2px solid var(--spoki-color-teal)!important;outline-offset:3px!important;background:#FFFFFF!important}
.wd-footer .spoki-foot__socials a:hover{background:var(--spoki-color-soft-teal-bg)!important;border-color:var(--spoki-color-teal)!important;color:var(--spoki-color-teal)!important}

/* =========================================================
   SPOKI STRIPS — Meaningful Play (cream wave) + Purchase Trust (compact)
   ========================================================= */
.spoki-usp-strip{width:100%;grid-column:1 / -1;background:var(--spoki-color-cream);padding:48px 20px;border-top:1px solid rgba(231,222,211,.6);border-bottom:1px solid rgba(231,222,211,.6)}
.spoki-usp-strip__inner{max-width:var(--spoki-container-wide);margin:0 auto}
.spoki-usp-strip__title{font-family:var(--spoki-font-heading);font-weight:700;color:var(--spoki-color-heading);text-align:center;font-size:clamp(1.4rem,2.4vw,1.9rem);margin:0 0 28px}
.spoki-usp-strip__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}
.spoki-usp-strip__item{text-align:center}
.spoki-usp-strip__icon{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:999px;background:var(--spoki-color-soft-teal-bg);color:var(--spoki-color-teal);margin:0 auto 12px}
.spoki-usp-strip__icon svg{width:26px;height:26px}
.spoki-usp-strip__h3{font-family:var(--spoki-font-body);font-weight:800;color:var(--spoki-color-heading);font-size:1rem;margin:0 0 6px;line-height:1.3}
.spoki-usp-strip__text{font-family:var(--spoki-font-body);color:var(--spoki-color-text);font-size:.9rem;line-height:1.5;margin:0}
.spoki-trust-strip{width:100%;grid-column:1 / -1;background:var(--spoki-color-soft-teal-bg);padding:22px 20px}
.spoki-trust-strip--cat{background:var(--spoki-color-white);border-top:0;border-bottom:0}
.spoki-trust-strip__inner{max-width:var(--spoki-container-wide);margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.spoki-trust-strip__item{display:flex;align-items:center;gap:11px;justify-content:center}
.spoki-trust-strip__icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 auto;border-radius:999px;background:#fff;color:var(--spoki-color-teal);border:1px solid var(--spoki-color-border)}
.spoki-trust-strip--cat .spoki-trust-strip__icon{background:var(--spoki-color-soft-teal-bg);border:0}
.spoki-trust-strip__icon svg{width:22px;height:22px}
.spoki-trust-strip__txt{display:flex;flex-direction:column;line-height:1.25}
.spoki-trust-strip__txt strong{font-family:var(--spoki-font-body);font-weight:800;color:var(--spoki-color-heading);font-size:.95rem}
.spoki-trust-strip__txt span{font-family:var(--spoki-font-body);color:var(--spoki-color-text);font-size:.82rem}
@media(max-width:900px){
  .spoki-usp-strip__grid{grid-template-columns:repeat(2,1fr);gap:18px 16px}
  .spoki-trust-strip__inner{grid-template-columns:repeat(2,1fr);gap:14px}
  .spoki-trust-strip__item{justify-content:flex-start}
}
@media(max-width:480px){
  .spoki-usp-strip{padding:36px 16px}
  .spoki-usp-strip__text{font-size:.85rem}
}

/* =========================================================
   TRUST STRIP SPACING + NO ROWS (locked)
   ========================================================= */
/* never a border/row on any trust strip variant */
.spoki-trust-strip,.spoki-trust-strip--cat,.spoki-trust-strip--home{border:0!important}
/* homepage: sit flush against the lead-magnet pre-footer */
.spoki-trust-strip--home{margin:0!important}
.spoki-trust-strip + .spoki-prefooter-cta{margin-top:0!important}

/* =========================================================
   SPOKI USP SECTION (final, single homepage benefit section)
   Replaces the cream 'usp-strip' + hides the old Gutenberg spoki-3ben.
   ========================================================= */
.spoki-band.spoki-3ben{display:none!important}
.spoki-usp{width:100%;grid-column:1 / -1;background:var(--spoki-color-white);padding:56px 20px}
.spoki-usp__inner{max-width:var(--spoki-container-wide);margin:0 auto;text-align:center}
.spoki-usp__eyebrow{font-family:var(--spoki-font-heading);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--spoki-color-teal);margin:0 0 .55rem}
.spoki-usp__h2{font-family:var(--spoki-font-heading);font-weight:700;color:var(--spoki-color-heading);font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 .6rem;line-height:1.2}
.spoki-usp__sub{font-family:var(--spoki-font-body);color:var(--spoki-color-muted);max-width:var(--spoki-container-readable);margin:0 auto 38px;line-height:1.55}
.spoki-usp__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 24px}
.spoki-usp__item{text-align:center}
.spoki-usp__icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:74px;height:74px;border-radius:999px;background:var(--spoki-color-soft-teal-bg);color:var(--spoki-color-teal);margin:0 auto 14px}
.spoki-usp__icon svg{width:30px;height:30px}
.spoki-usp__num{position:absolute;top:-3px;right:-3px;width:24px;height:24px;border-radius:999px;background:var(--spoki-color-orange);color:#fff;font-family:var(--spoki-font-body);font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center}
.spoki-usp__h3{font-family:var(--spoki-font-body);font-weight:800;color:var(--spoki-color-heading);font-size:1.05rem;margin:0 0 7px;line-height:1.3}
.spoki-usp__text{font-family:var(--spoki-font-body);color:var(--spoki-color-text);font-size:.92rem;line-height:1.5;margin:0}
.spoki-usp__cta{margin-top:34px}
.spoki-usp__btn{display:inline-block;font-family:var(--spoki-font-body);font-weight:800;background:var(--spoki-color-orange);color:#fff;border-radius:var(--spoki-radius-pill);padding:13px 30px;text-decoration:none;transition:background .2s}
.spoki-usp__btn:hover{background:var(--spoki-color-orange-deep);color:#fff}
@media(max-width:900px){.spoki-usp{padding:44px 18px}.spoki-usp__grid{grid-template-columns:repeat(2,1fr);gap:28px 18px}}
@media(max-width:480px){.spoki-usp__text{font-size:.86rem}.spoki-usp__icon{width:64px;height:64px}}
/* =========================================================
   TRUST STRIP REDESIGN (mobile-first horizontal scroll, no background)
   Same clean look on every page; scrolls on mobile, full row on desktop.
   ========================================================= */
.spoki-trust-strip,.spoki-trust-strip--home,.spoki-trust-strip--cat{background:transparent!important;border:0!important;padding:34px 0!important;margin:0!important}
.spoki-trust-strip__inner{max-width:var(--spoki-container-wide);margin:0 auto;display:flex;flex-wrap:nowrap;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding:2px 16px;scrollbar-width:none}
.spoki-trust-strip__inner::-webkit-scrollbar{display:none}
.spoki-trust-strip__item{flex:0 0 auto;min-width:210px;scroll-snap-align:start;display:flex;align-items:center;gap:11px;justify-content:flex-start}
.spoki-trust-strip__icon{background:var(--spoki-color-soft-teal-bg)!important;border:0!important;color:var(--spoki-color-teal)!important}
@media(min-width:901px){
  .spoki-trust-strip__inner{overflow-x:visible;gap:18px;padding-left:0;padding-right:0;justify-content:space-between}
  .spoki-trust-strip__item{flex:1 1 0;min-width:0;justify-content:center}
}
/* keep a calm gap to the lead-magnet below (no overlap/cut) */
.spoki-trust-strip + .spoki-prefooter-cta{margin-top:0!important}
/* =========================================================
   RELATED LINKS (top placement) — 'Продължи избора', compact chips
   Desktop: centered wrap row. Mobile: horizontal scroll. No overflow.
   ========================================================= */
.spoki-related-links--top{width:100%;background:transparent;padding:34px 20px;text-align:center}
.spoki-related-links--top .spoki-section-eyebrow{font-family:var(--spoki-font-heading);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--spoki-color-teal);margin:0 0 .5rem}
.spoki-related-links--top .spoki-related-links__h{font-family:var(--spoki-font-heading);font-weight:700;color:var(--spoki-color-heading);font-size:clamp(1.4rem,2.4vw,1.85rem);margin:0 0 .5rem}
.spoki-related-links--top .spoki-related-links__sub{font-family:var(--spoki-font-body);color:var(--spoki-color-muted);max-width:var(--spoki-container-readable);margin:0 auto 22px;line-height:1.5}
.spoki-related-links--top .spoki-related-links__list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:var(--spoki-container-wide);margin:0 auto}
.spoki-related-links__chip{display:inline-flex;align-items:center;font-family:var(--spoki-font-body);font-weight:700;font-size:14px;line-height:1;padding:10px 18px;border-radius:var(--spoki-radius-pill);background:var(--spoki-color-white);border:1px solid var(--spoki-color-border);color:var(--spoki-color-heading);text-decoration:none;transition:border-color .15s,color .15s;white-space:nowrap}
.spoki-related-links__chip:hover,.spoki-related-links__chip:focus{border-color:var(--spoki-color-teal);color:var(--spoki-color-teal)}
@media(max-width:600px){
  .spoki-related-links--top{padding:26px 0}
  .spoki-related-links--top .spoki-related-links__list{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding:2px 16px 6px;scrollbar-width:none}
  .spoki-related-links--top .spoki-related-links__list::-webkit-scrollbar{display:none}
  .spoki-related-links--top .spoki-related-links__sub{padding:0 16px}
  .spoki-related-links__chip{flex:0 0 auto;scroll-snap-align:start}
}
/* =========================================================
   USP CREAM WAVE + BRANDS WHITE (homepage swap)
   ========================================================= */
/* remove the extra 'Виж всички избрани' CTA in the products section */
.spoki-products2__cta{display:none!important}
/* USP section = soft cream wave (emotional brand band) */
.spoki-usp{background:var(--spoki-color-cream)!important;position:relative;overflow:hidden;padding:68px 20px 64px!important}
.spoki-usp::before{content:"";position:absolute;top:-1px;left:0;right:0;height:46px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23FFFFFF' d='M0,0 H1440 V40 C1190,82 1000,4 720,42 C470,80 250,2 0,40 Z'/%3E%3C/svg%3E") no-repeat center top;background-size:100% 100%;pointer-events:none}
.spoki-usp::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:42px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23FFFFFF' d='M0,80 H1440 V40 C1190,-2 1000,76 720,38 C470,0 250,78 0,40 Z'/%3E%3C/svg%3E") no-repeat center bottom;background-size:100% 100%;pointer-events:none}
.spoki-usp__inner{position:relative;z-index:1}
/* Brands section = calm white (was cream/peach band + wave) */
.spoki-band.spoki-awards-strip{background:var(--spoki-color-white)!important}
.spoki-awards-strip::before,.spoki-awards-strip::after{display:none!important}
@media(max-width:600px){.spoki-usp{padding:50px 16px 46px!important}}
/* =========================================================
   USP TEXT SPECIFICITY — beat inherited .spoki-band p (when USP sits inside a band)
   ========================================================= */
.spoki-usp .spoki-usp__eyebrow{font-family:var(--spoki-font-heading);font-weight:700;color:var(--spoki-color-teal)}
.spoki-usp .spoki-usp__h2{font-family:var(--spoki-font-heading);color:var(--spoki-color-heading)}
.spoki-usp .spoki-usp__sub{font-family:var(--spoki-font-body);color:var(--spoki-color-muted)}
.spoki-usp .spoki-usp__h3{font-family:var(--spoki-font-body);color:var(--spoki-color-heading)}
.spoki-usp .spoki-usp__text{font-family:var(--spoki-font-body);color:var(--spoki-color-text)}

/* =========================================================
   USP GUTENBERG ADJUST — full-width alignfull group, 1-row mobile scroll
   ========================================================= */
.spoki-usp__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 24px;max-width:var(--spoki-container-wide);margin:0 auto}
.spoki-usp .spoki-usp__btn{background:var(--spoki-color-orange)!important;color:#fff!important;border:0!important;border-radius:var(--spoki-radius-pill)!important;font-family:var(--spoki-font-body)!important;font-weight:800!important;padding:13px 30px!important}
.spoki-usp .spoki-usp__btn:hover{background:var(--spoki-color-orange-deep)!important;color:#fff!important}
.spoki-usp__cta{margin-top:30px}
@media(max-width:900px){
  .spoki-usp__grid{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:14px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 16px 8px}
  .spoki-usp__grid::-webkit-scrollbar{display:none}
  .spoki-usp__item{flex:0 0 72%;scroll-snap-align:start;text-align:center}
}


/* PLAY-GUIDE NO BG — remove butter background on 'Идеи за игра' section */
.spoki-band.spoki-play-guide{background:var(--spoki-color-white)!important}
.spoki-band.spoki-play-guide::before,.spoki-band.spoki-play-guide::after{display:none!important}


/* SUMMER SECTION BG + WAVES — peach #FDF0E3 + waves both sides */
.spoki-band.spoki-summer{background:#EAF6F4!important;position:relative;overflow:hidden}
.spoki-band.spoki-summer::before{content:"";display:block!important;position:absolute;top:-1px;left:0;right:0;height:46px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23FFFFFF' d='M0,0 H1440 V40 C1190,82 1000,4 720,42 C470,80 250,2 0,40 Z'/%3E%3C/svg%3E") no-repeat center top;background-size:100% 100%;pointer-events:none;z-index:0}
.spoki-band.spoki-summer::after{content:"";display:block!important;position:absolute;bottom:-1px;left:0;right:0;height:42px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23FFFFFF' d='M0,80 H1440 V40 C1190,-2 1000,76 720,38 C470,0 250,78 0,40 Z'/%3E%3C/svg%3E") no-repeat center bottom;background-size:100% 100%;pointer-events:none;z-index:0}
.spoki-band.spoki-summer > *{position:relative;z-index:1}

/* AEO GUIDE + COMPARISON TABLE (Fidget) */
.spoki-aeo-guide{max-width:820px;margin:0 auto}
.spoki-aeo-guide h2{font-family:var(--spoki-font-heading);color:var(--spoki-color-heading);font-size:1.25rem;line-height:1.3;margin:1.7rem 0 .5rem;padding-top:1.2rem;border-top:1px solid var(--spoki-color-border)}
.spoki-aeo-guide h2:first-child{margin-top:0;padding-top:0;border-top:0}
.spoki-aeo-guide p{font-family:var(--spoki-font-body);color:var(--spoki-color-text);line-height:1.6;font-size:1rem;margin:0 0 1rem}
.spoki-aeo-table{width:100%;border-collapse:collapse;margin:.4rem 0 1.4rem;font-family:var(--spoki-font-body);font-size:.95rem}
.spoki-aeo-table th{background:var(--spoki-color-soft-teal-bg);color:var(--spoki-color-heading);font-weight:800;text-align:left;padding:10px 14px;border:1px solid var(--spoki-color-border)}
.spoki-aeo-table td{color:var(--spoki-color-text);padding:10px 14px;border:1px solid var(--spoki-color-border);vertical-align:top}
.spoki-aeo-table tr:nth-child(even) td{background:var(--spoki-color-cream)}
@media(max-width:600px){.spoki-aeo-table{font-size:.85rem}.spoki-aeo-table th,.spoki-aeo-table td{padding:7px 9px}}

/* CATEGORY FILTER CHIPS + ACTIVE FILTERS (Fidget pilot) */
.spoki-cat__activefilters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px}
.spoki-cat__activelabel{font-family:var(--spoki-font-body);font-weight:700;color:var(--spoki-color-text);font-size:14px}
.spoki-cat__chip{display:inline-flex;align-items:center;gap:4px;font-family:var(--spoki-font-body);font-weight:700;font-size:13px;padding:6px 12px;border-radius:var(--spoki-radius-pill);background:var(--spoki-color-soft-teal-bg);color:var(--spoki-color-teal);border:1px solid var(--spoki-color-border);text-decoration:none}
.spoki-cat__chip:hover{border-color:var(--spoki-color-teal)}
.spoki-cat__clearall{font-family:var(--spoki-font-body);font-weight:700;font-size:13px;color:var(--spoki-color-teal);text-decoration:underline;margin-left:6px}
@media(min-width:901px){.spoki-cat__facetrail .spoki-cat__activefilters{display:none}}


/* NATIVE ARCHIVE FACET (pilot) — SpOki facet in WoodMart shop sidebar */
.wd-sidebar .widget-area > .widget{display:none!important}
.wd-sidebar .widget-area .wd-heading{display:none!important}
.spoki-arch-facet{display:block!important;position:static!important;transform:none!important;width:100%!important;height:auto!important;max-width:none!important;padding:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important}
.spoki-arch-facet .spoki-cat__railtitle{font-family:var(--spoki-font-body);font-weight:800;color:var(--spoki-color-text);margin:0 0 .5rem}
.spoki-arch-facet .spoki-cat__facet{border-bottom:1px solid var(--spoki-color-border);padding:.5rem 0}
.spoki-arch-facet summary{font-family:var(--spoki-font-body);font-weight:800;color:var(--spoki-color-text);cursor:pointer;list-style:none}
.spoki-arch-facet .spoki-cat__filterlinks{display:flex;flex-direction:column;gap:6px;padding:.5rem 0 .25rem}


/* NATIVE MOBILE FILTER (CSS-only collapsible) */
.spoki-arch-mobilefilter{display:none}
.spoki-arch-mobilefilter > summary{list-style:none;cursor:pointer;font-family:var(--spoki-font-body);font-weight:800;color:#fff;background:var(--spoki-color-teal);border-radius:var(--spoki-radius-pill);padding:12px 20px;text-align:center;margin:0 0 12px}
.spoki-arch-mobilefilter > summary::-webkit-details-marker{display:none}
@media(max-width:1024px){.wd-sidebar{display:none!important}.spoki-arch-mobilefilter{display:block;margin:0 0 16px}}


/* ===== FILTER UI COLOR NORMALIZATION — locked SpOki tokens (2026-06-20) ===== */
.spoki-cat__railtitle{color:var(--spoki-color-heading)!important}
.spoki-cat__facet > summary{color:var(--spoki-color-heading)!important}
.spoki-cat__filterlink{color:var(--spoki-color-text)!important}
.spoki-cat__filterlink.is-active{color:var(--spoki-color-teal)!important}
.woocommerce-result-count{color:var(--spoki-color-text)!important}
.spoki-archive-sort > span,.spoki-cat__sort > span{color:var(--spoki-color-text)!important}
.spoki-cat__facet > summary::after,.spoki-cat__facet > summary::before{color:var(--spoki-color-teal)!important}
/* 2026-07-21 (Claude Code, chips UX review): removable active-FILTER chips must not
   look identical to solid-filled active-NAVIGATION chips (.spoki-subcat-chips .spoki-chip-active
   below) -- same shape/color made "remove this filter" indistinguishable from "you are viewing
   this subcategory". Filter chips now stay in the soft/outlined teal treatment at rest and only
   go solid on hover, signalling the tap-to-remove action without colliding with nav-chip styling. */
.spoki-cat__chip{background:var(--spoki-color-soft-teal-bg)!important;color:var(--spoki-color-teal)!important;border:1px solid var(--spoki-color-teal)!important}
.spoki-cat__chip:hover{background:var(--spoki-color-teal)!important;border-color:var(--spoki-color-teal)!important;color:#fff!important}
.spoki-subcat-chips .spoki-chip{background:#fff!important;border:1px solid var(--spoki-color-border)!important;color:var(--spoki-color-heading)!important}
.spoki-subcat-chips .spoki-chip.spoki-chip-active{background:var(--spoki-color-teal)!important;color:#fff!important;border-color:var(--spoki-color-teal)!important}
.spoki-cat__facetrail,.spoki-arch-facet,.spoki-arch-mobilefilter,.spoki-cat__activefilters{color:var(--spoki-color-text)}
.spoki-cat__view-short{display:none}
@media(max-width:767px){.spoki-cat__view-full{display:none}.spoki-cat__view-short{display:inline}}
.spoki-cat__view--disabled{background:#fff!important;color:var(--spoki-color-muted)!important;border:1px solid var(--spoki-color-border)!important;cursor:not-allowed;pointer-events:none}


/* ===== SPOKI PRODUCT CARD v1 (Fidget pilot + native archives) ===== */
.spoki-pcard{display:flex;flex-direction:column;height:100%;background:#fff;border:0;border-radius:20px;overflow:hidden;box-shadow:0 4px 16px rgba(46,58,103,.08)}
.spoki-pcard__media{display:block;aspect-ratio:1/1;background:var(--spoki-color-soft-teal-bg);overflow:hidden}
.spoki-pcard__media img{width:100%;height:100%;object-fit:cover;display:block}
.spoki-pcard__body{display:flex;flex-direction:column;gap:6px;padding:14px 14px 16px;flex:1 1 auto}
.spoki-pcard__brand{font-family:var(--spoki-font-body);font-weight:700;font-size:12px;line-height:1.2;color:var(--spoki-color-teal)}
.spoki-pcard__title{margin:0;font-family:var(--spoki-font-body);font-weight:700;font-size:15px;line-height:1.3;color:var(--spoki-color-heading);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.spoki-pcard__title a{color:inherit;text-decoration:none}
.spoki-pcard__pills{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0}
.spoki-pcard__pill{font-family:var(--spoki-font-body);font-weight:700;font-size:11px;line-height:1.4;color:var(--spoki-color-text);background:var(--spoki-color-cream);border-radius:var(--spoki-radius-pill);padding:3px 9px}
.spoki-pcard__pill--soft{background:var(--spoki-color-soft-teal-bg);color:var(--spoki-color-deep-teal)}
.spoki-pcard__excerpt{margin:0;font-family:var(--spoki-font-body);font-size:12.5px;line-height:1.4;color:var(--spoki-color-muted);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.spoki-pcard__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:10px}
.spoki-pcard__price{font-family:var(--spoki-font-body);font-weight:800;font-size:16px;color:var(--spoki-price-current);white-space:nowrap}
.spoki-pcard__price del{opacity:.55;font-weight:600;font-size:13px}
.spoki-pcard__price ins{text-decoration:none}
.spoki-pcard__cta{flex:0 0 auto;font-family:var(--spoki-font-body);font-weight:800;font-size:13px;color:#fff!important;background:var(--spoki-color-orange);border-radius:var(--spoki-radius-pill);padding:8px 18px;line-height:1;text-decoration:none;transition:background .15s}
.spoki-pcard__cta:hover{background:#E67E00;color:#fff!important}
.spoki-pcard__cta--disabled{background:#fff;color:var(--spoki-color-muted)!important;border:1px solid var(--spoki-color-border);cursor:not-allowed;pointer-events:none}
/* reset WoodMart li chrome where the SpOki card renders */
.products li.product:has(> .spoki-pcard){display:block!important;list-style:none!important;box-shadow:none!important;border:0!important;padding:0!important;background:transparent!important;text-align:left!important;margin-bottom:0}\n.products li.product:has(> .spoki-pcard)::marker{content:""!important}
ul.products li.product > .spoki-pcard{margin:0}
/* equal row heights: WoodMart's own grid uses align-items:flex-start, so sibling cards
 * with differing content height (e.g. a sale item's extra struck-price line) never stretch
 * to match -- only affects grids that actually contain spoki-pcard, so unrelated WoodMart-
 * native grids (e.g. related-products widgets) are untouched. */
.products:has(.spoki-pcard){align-items:stretch!important}
@media(max-width:767px){
.spoki-pcard__excerpt{display:none}
.spoki-pcard__pill--soft{display:none}
.spoki-pcard__body{padding:10px 10px 12px;gap:5px}
.spoki-pcard__title{font-size:14px}
.spoki-pcard__price{font-size:15px}
.spoki-pcard__cta{padding:7px 14px;font-size:12px}
.spoki-pcard__foot{flex-wrap:nowrap;gap:6px}\n.spoki-pcard__price{font-size:14px}\n.spoki-pcard__cta{padding:7px 13px}
}

/* ===== CARD v1.2 dual-price stack + CTA protection ===== */
.spoki-pcard__foot{align-items:center;gap:10px}
.spoki-pcard__price{display:flex;flex-direction:column;line-height:1.15;min-width:0;white-space:nowrap}
.spoki-pcard__price .woocommerce-Price-amount{display:block;white-space:nowrap}
.spoki-pcard__price .amount:not(.amount-bgn){font-family:var(--spoki-font-body)!important;font-weight:800!important;font-size:16px!important;color:var(--spoki-price-current)!important}
.spoki-pcard__price .amount-bgn{font-family:var(--spoki-font-body)!important;font-weight:700!important;font-size:12.5px!important;color:var(--spoki-color-muted)!important}
.spoki-pcard__cta{flex:0 0 auto;white-space:nowrap;min-height:38px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:767px){
.spoki-pcard__price .amount:not(.amount-bgn){font-size:14px}
.spoki-pcard__price .amount-bgn{font-size:11px}
.spoki-pcard__cta{min-height:36px;padding:8px 14px}
}

/* ===== AGE FILTER: show-more toggle ===== */
.spoki-cat__age-extra[hidden]{display:none!important}
.spoki-cat__morebtn{display:inline-flex;align-items:center;gap:4px;margin-top:6px;padding:4px 0;background:none;border:0;cursor:pointer;font-family:var(--spoki-font-body);font-weight:700;font-size:13px;color:var(--spoki-color-teal);text-transform:none!important;letter-spacing:0}
.spoki-cat__morebtn:hover{color:var(--spoki-color-deep-teal)}
.spoki-cat__morebtn::before{content:'+';font-size:15px;line-height:1}
.spoki-cat__morebtn[aria-expanded="true"]::before{content:'–'}


/* ===== CARD v1.2 mobile compact (overlap-safe) ===== */
@media(max-width:767px){
.spoki-pcard__foot{gap:8px}
.spoki-pcard__price{min-width:0}
.spoki-pcard__price .amount:not(.amount-bgn){font-size:15px!important}
.spoki-pcard__price .amount-bgn{font-size:12px!important}
.spoki-pcard__cta{flex:0 0 auto;height:34px;padding:0 12px!important;font-size:12px;line-height:1}
.spoki-pcard__body{padding:10px 10px 14px}
}


/* ===== MOBILE FILTER BUTTON + CTA override (beats theme) ===== */
@media(max-width:767px){
.spoki-cat__filterbtn{background:#fff!important;border:1px solid var(--spoki-color-border)!important;color:var(--spoki-color-text)!important;box-shadow:none!important;text-transform:none!important;font-family:var(--spoki-font-body)!important;font-weight:800!important}
.spoki-cat__filterbtn:hover{background:var(--spoki-color-soft-teal-bg)!important;border-color:var(--spoki-color-border)!important;color:var(--spoki-color-text)!important}
.spoki-pcard__cta{height:34px!important;min-height:34px!important;padding:0 12px!important;font-size:12px!important;line-height:1!important}
}


/* ===== TEAL STICKY FILTER (mobile, single control; orange reserved for buy CTA) ===== */
@media(max-width:767px){
.spoki-cat__filterbtn{display:inline-flex!important}
.spoki-cat__stickyfilter{display:inline-flex!important;align-items:center;gap:8px;position:fixed!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:calc(env(safe-area-inset-bottom,0px) + 72px)!important;z-index:950!important;background:var(--spoki-color-heading)!important;color:#fff!important;font-family:var(--spoki-font-body)!important;font-weight:800!important;font-size:14px!important;border:0!important;border-radius:999px!important;padding:11px 22px!important;box-shadow:0 6px 18px rgba(46,58,103,.32)!important;cursor:pointer;text-transform:none!important}
.spoki-cat__stickyfilter.has-active{background:#1f2a4d!important}
.spoki-cat__shopframe{padding-bottom:40px!important}
body.spoki-facet-open .spoki-cat__stickyfilter,body.spoki-hide-pill .spoki-cat__stickyfilter{display:none!important}
}


/* ===== SECTION SPACING POLISH (trim oversized gaps) ===== */
.spoki-cat--top{margin-bottom:0!important}
.spoki-cat__shopframe{margin-bottom:0!important}
.spoki-related-links--top{margin-top:0!important;padding-top:32px!important;padding-bottom:28px!important}
.spoki-band.spoki-longdesc{padding-top:8px!important}
@media(max-width:767px){.spoki-cat--top{margin-bottom:10px!important}.spoki-related-links--top{padding-top:22px!important;padding-bottom:22px!important}}


/* ===== BAND PADDING TRIM (category only; homepage untouched) ===== */
body.tax-product_cat .spoki-gift-age{padding-top:52px!important;padding-bottom:52px!important}
body.tax-product_cat .spoki-trust-strip--cat{padding-top:22px!important;padding-bottom:22px!important}
body.tax-product_cat .spoki-cat__benefits--near{margin-top:6px!important;margin-bottom:6px!important}
@media(max-width:767px){body.tax-product_cat .spoki-gift-age{padding-top:34px!important;padding-bottom:34px!important}body.tax-product_cat .spoki-trust-strip--cat{padding-top:18px!important;padding-bottom:18px!important}}

/* === SALE PRICE LOCK (2026-06-20): prominent sale price, small struck old price, orange discount badge. Global SpOki product card. Do not change without owner approval. === */
.spoki-pcard__media{position:relative}
.spoki-pcard__sale{position:absolute;top:8px;left:8px;z-index:2;background:#FF8A00;color:#fff;font-family:var(--spoki-font-body);font-weight:800;font-size:12px;line-height:1;padding:5px 8px;border-radius:999px;box-shadow:0 .2rem .5rem rgba(46,58,103,.18)}
.spoki-pcard__price ins{order:0;text-decoration:none;display:flex;flex-direction:column;line-height:1.15}
.spoki-pcard__price del{order:1;opacity:1;text-decoration:none;margin-top:2px}
.spoki-pcard__price del .amount-bgn{display:none !important}
.spoki-pcard__price del .woocommerce-Price-amount{text-decoration:line-through}
.spoki-pcard__price del .amount:not(.amount-bgn){display:inline-block !important;font-size:12px !important;font-weight:700 !important;color:var(--spoki-color-muted) !important;text-decoration:line-through}
@media(max-width:767px){.spoki-pcard__sale{font-size:11px;padding:4px 7px;top:6px;left:6px}}

/* GIFT-AGE TITLE PARITY (2026-06-21): age block H2 must use the global heading font (Comfortaa), matching FAQ and Продължи избора titles. */
body.spoki-pilot .spoki-gift-age__h2{font-family:var(--spoki-font-heading) !important;}

/* GIFT-AGE WAVES RESTORED (2026-06-21): both-side peach band + white waves per agreed template (homepage + category identical). */

/* ===== CARD v1.4 CTA SAFETY + COMPACT: same row when it fits, centered when it must wrap, never covers price (2026-06-22) ===== */
.spoki-pcard__foot{flex-wrap:wrap;justify-content:flex-start;gap:6px 8px;row-gap:6px}
/* Price grows to push the button to the right edge on a shared row, and never shrinks under its own text. */
.spoki-pcard__price{flex:1 1 auto;min-width:-moz-max-content;min-width:max-content;overflow:visible}
/* margin:auto centers the button ONLY when it wraps to its own line; on a shared row the grown price leaves no free margin, so it sits right. */
.spoki-pcard__cta{flex:0 0 auto;margin-left:auto;margin-right:auto}
@media(max-width:767px){
.spoki-pcard__cta{padding:0 10px!important;font-size:11.5px!important}
}
/* ===== CARD v1.5 PRICE + DISCOUNT STANDARD (2026-06-22): new price prominent on top, old struck below, EUR+BGN inline, identical for short/long/sale ===== */
.spoki-pcard__price{display:block;white-space:nowrap;line-height:1.3}
.spoki-pcard__price ins,.spoki-pcard__price del{display:block;white-space:nowrap}
.spoki-pcard__price ins{text-decoration:none}
.spoki-pcard__price .woocommerce-Price-amount{display:inline!important}
/* PRICEFIX 2026-07-19: redundant separator removed; " / " is in the BGN text. */.spoki-pcard__price .amount-bgn::before{content:none}
.spoki-pcard__price del{opacity:1;margin-top:1px}
.spoki-pcard__price del .amount:not(.amount-bgn),.spoki-pcard__price del .amount-bgn{font-size:11px!important;font-weight:600!important;color:var(--spoki-color-muted)!important;text-decoration:line-through}
/* ===== CARD v1.6 MOBILE FULL-WIDTH CTA (2026-06-22): standardized card footer on phones — price block on top, full-width Order button below; price never covered ===== */
@media(max-width:767px){
.spoki-pcard__foot{flex-direction:column;align-items:stretch;gap:8px}
.spoki-pcard__price{align-items:flex-start;text-align:left}
.spoki-pcard__cta{width:100%;margin:0;min-height:40px;font-size:13px!important;padding:0 12px!important}
}
/* ===== CARD v1.7 FULL-WIDTH CTA ALL BREAKPOINTS (2026-06-22): price block on top, full-width Order button below — desktop + mobile, never covers price ===== */
.spoki-pcard__foot{flex-direction:column;align-items:stretch;gap:8px}
.spoki-pcard__price{align-items:flex-start;text-align:left}
.spoki-pcard__cta{width:100%;margin:0;justify-content:center}


/* EYEBROW GREEN PARITY (2026-06-27): all textual section eyebrows on pilot pages use the brand-page deep teal #00838A (matches /brand/taf-toys/). The age hero eyebrow keeps its lilac hero accent (more specific rule wins); the .spoki-gift-age circles band stays #19B0B6 to match the brand circles band. */
body.spoki-pilot .spoki-section__eyebrow{color:var(--spoki-color-deep-teal,#00838A)!important}


/* AGE-PAGE GIFTER HINT (2026-06-27): light 'не си сигурен за възрастта' related-age line near FAQ */
.spoki-agehint{max-width:760px;margin:0 auto;padding:2px 20px 30px;text-align:center;font-family:var(--spoki-font-body,'Nunito',sans-serif);color:var(--spoki-color-muted,#54656B);font-size:.95rem;line-height:1.6}
.spoki-agehint a{color:var(--spoki-color-deep-teal,#00838A);font-weight:700;text-decoration:none}
.spoki-agehint a:hover{text-decoration:underline}

/* SPOKI CARD CTA 44px touch target (2026-07-16, owner decision): mobile usability/accessibility correction, NOT a redesign — width/colour/radius/typography unchanged. Placed LAST in the design-system owner so it wins over the earlier 34-40px responsive rules (same/lower specificity, earlier source). */
.spoki-pcard .spoki-pcard__cta{min-height:44px!important;height:auto!important;display:inline-flex;align-items:center;justify-content:center;}


/* ===== WISHLIST GOLDEN STANDARD v1 (2026-07-16, owner-locked): icon-only teal heart BESIDE the primary CTA. Cards 44px in .spoki-pcard__actions grid; PDP v3 52px inside form.cart. Engine: native WoodMart toggle (.wd-wishlist-btn a). No image overlays, no sticky-bar heart. ROLLBACK: restore *.bak-wishlist-20260716. ===== */
.spoki-wl{display:flex;margin:0}
.spoki-wl a{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:44px;min-height:44px;padding:0;border:1.5px solid #00838A;border-radius:999px;background:#fff;color:#00838A !important;font-size:0;line-height:1;box-shadow:none;transition:background .15s ease;cursor:pointer}
.spoki-wl a::before{content:'';display:block;width:22px;height:22px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .2s ease}
.spoki-wl a.added::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}
.spoki-wl a .wd-action-icon,.spoki-wl a .wd-action-text,.spoki-wl a .wd-tools-count{display:none !important}
.spoki-wl a:hover{background:#EAF6F4;color:#00838A !important;text-decoration:none !important}
.spoki-wl a:active::before{transform:scale(.88)}
.spoki-wl a:focus-visible{outline:2px solid #00838A;outline-offset:2px}
.spoki-wl a.loading{pointer-events:none;opacity:.6}
.spoki-wl a.loading::before{animation:spoki-wl-pulse .8s ease-in-out infinite}
@keyframes spoki-wl-pulse{50%{transform:scale(.82)}}
@media (prefers-reduced-motion: reduce){.spoki-wl a::before{transition:none}.spoki-wl a.loading::before{animation:none}}
/* PDP v3: 52px beside Добави в количката */
/* PDP secondary row (owner 2026-07-16): [heart 52][gift registry 1fr] on its OWN row under add-to-cart */
body.spoki-pdp-v3 .summary-inner form.cart .spoki-pdp-secondary-actions{order:5;flex:0 0 100%;display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:stretch;margin-top:2px}
body.spoki-pdp-v3 .summary-inner form.cart .spoki-pdp-secondary-actions .spoki-wl--pdp{margin:0;display:flex}
body.spoki-pdp-v3 .summary-inner form.cart .spoki-pdp-secondary-actions .spoki-wl--pdp a{width:100%;height:100%;min-height:52px}
body.spoki-pdp-v3 .summary-inner form.cart .spoki-pdp-secondary-actions .spoki-pdp-registry{flex:none;width:auto;min-width:0;margin:0;min-height:52px}
@media(max-width:480px){body.spoki-pdp-v3 .summary-inner form.cart .spoki-pdp-secondary-actions .spoki-pdp-registry{font-size:14px}}
body.spoki-pdp-v3 .summary-inner form.cart .spoki-wl--pdp a{min-width:52px;min-height:52px;width:52px;height:52px}
body.spoki-pdp-v3 .summary-inner form.cart .spoki-wl--pdp a::before{width:24px;height:24px}
/* keep the heart on the SAME row as Добави в количката on mobile: let the CTA shrink instead of wrapping, and stretch the heart to the row height */
body.spoki-pdp-v3 .summary-inner form.cart button.single_add_to_cart_button{min-width:0;flex:1 1 0%}
body.spoki-pdp-v3 .summary-inner form.cart .spoki-wl--pdp{height:auto;align-self:stretch}
body.spoki-pdp-v3 .summary-inner form.cart .spoki-wl--pdp a{height:100%;min-height:52px}
@media(max-width:480px){body.spoki-pdp-v3 .summary-inner form.cart button.single_add_to_cart_button{font-size:15px;padding-left:12px;padding-right:12px}}
/* sticky ATC bar: no wishlist (belt & braces beside the PHP remove_action) */
.wd-sticky-btn .wd-wishlist-btn{display:none !important}
/* BG toast */
.spoki-wl-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(8px);background:#2E3A67;color:#fff;font-family:'Nunito',sans-serif;font-weight:700;font-size:14px;padding:10px 18px;border-radius:999px;box-shadow:0 4px 18px rgba(46,58,103,.25);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:100000}
.spoki-wl-toast.is-on{opacity:1;transform:translateX(-50%) translateY(0)}


/* /lubimi/ guest intro */
.spoki-wl-guest-intro{background:#E6F8F9;border:1px solid #BFE8EA;border-radius:14px;padding:16px 20px;margin:0 0 20px}
.spoki-wl-guest-intro p{margin:0 0 10px;color:#2E3A67;font-size:15px}
.spoki-wl-guest-intro__cta{display:inline-flex;align-items:center;min-height:40px;padding:8px 20px;border-radius:999px;border:1.5px solid #00838A;color:#00838A;font-weight:700;text-decoration:none}
.spoki-wl-guest-intro__cta:hover{background:#EAF6F4;color:#00838A}

/* ===== WLCARD v1 (2026-07-16): /lubimi/ canonical card variant. ROLLBACK: restore *.bak-wlcard-20260716 ===== */
.wd-wishlist-content .spoki-pcard__foot{flex-wrap:wrap}
.wd-wishlist-content .spoki-pcard__price{flex:1 1 100%}
.wd-wishlist-content .spoki-pcard__cta{flex:1 1 auto;text-align:center}
.spoki-wl--wlpage{flex:0 0 44px}
.spoki-wl--wlpage a{width:44px;height:44px;min-width:44px;min-height:44px}
.wd-wishlist-content .wd-wishlist-bulk-action,.wd-wishlist-content .wd-wishlist-select-all,.wd-wishlist-content .wd-wishlist-checkbox,.wd-wishlist-content .wd-wishlist-product-actions{display:none!important}
.wd-wishlist-content .spoki-wl.spoki-wl--wlpage.wd-wishlist-product-remove{display:flex!important}
.spoki-wl-clear{display:inline-block;margin-inline-start:16px;font-family:var(--spoki-font-body);font-size:14px;font-weight:600;color:#00838A;text-decoration:underline;cursor:pointer;background:none;border:0;padding:8px 0;vertical-align:middle}
.spoki-wl-clear:hover{color:#046A70}
.spoki-wl-clear:focus-visible{outline:2px solid #00838A;outline-offset:2px}
.spoki-wl-confirm{position:fixed;inset:0;background:rgba(15,40,42,.5);display:flex;align-items:center;justify-content:center;z-index:100000;padding:16px}
.spoki-wl-confirm__box{background:#fff;border-radius:16px;max-width:420px;width:100%;padding:24px;text-align:center;box-shadow:0 12px 40px rgba(0,0,0,.18)}
.spoki-wl-confirm__box p{font-family:var(--spoki-font-body);font-size:16px;font-weight:700;margin:0 0 18px}
.spoki-wl-confirm__actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:4px}
.spoki-wl-confirm__keep{display:inline-block;background:#00838A;color:#fff!important;border:0;border-radius:999px;padding:12px 22px;font-weight:800;cursor:pointer;margin:4px;min-height:44px}
.spoki-wl-confirm__keep:hover{background:#046A70}
.spoki-wl-confirm__clear{display:inline-block;background:#fff;color:#B3261E!important;border:1.5px solid #B3261E;border-radius:999px;padding:12px 22px;font-weight:800;cursor:pointer;margin:4px;min-height:44px}
.spoki-wl-confirm__clear:hover{background:#FBEDEC}
.spoki-wl-undo{background:none;border:0;color:#fff;text-decoration:underline;font-weight:800;cursor:pointer;margin-inline-start:10px;padding:6px;min-height:32px}

/* WLCARD v1.1: foot back to row on /lubimi/ so [CTA][heart] share a line (base card is column/full-width CTA) */
.wd-wishlist-content .spoki-pcard__foot{flex-direction:row;flex-wrap:wrap}
.wd-wishlist-content .spoki-pcard__cta{flex:1 1 0;width:auto;min-width:0}
.spoki-wl--wlpage{flex:0 0 44px;width:44px}

/* WLCARD v1.2: on narrow 2-col mobile cards the CTA keeps its full row; heart drops below (no text clipping) */
@media (max-width:575px){.wd-wishlist-content .spoki-pcard__cta{flex:1 1 100%}.wd-wishlist-content .spoki-wl--wlpage{justify-content:flex-end;margin-inline-start:auto}}

/* WLCARD v1.3 (closure): mobile keeps [CTA][heart] on ONE row - long labels shorten via .spoki-wl-cta-tail; only the disabled OOS pill may take a full row */
@media (max-width:575px){.wd-wishlist-content .spoki-pcard__cta{flex:1 1 0;min-width:0;padding:8px 10px;font-size:14px;white-space:nowrap}.spoki-wl-cta-tail{display:none}.wd-wishlist-content .spoki-pcard__cta--disabled{flex:1 1 100%;white-space:normal}}

/* WLCARD v1.4: tail span must stay inline on desktop (something forces block -> 2 lines) */
.spoki-wl-cta-tail{display:inline !important;white-space:normal}
@media (max-width:575px){.spoki-wl-cta-tail{display:none !important}}

/* WLCARD v1.5b: CTA is a flex-item chain -> child span blockifies & wraps. Render the CTA as a plain block text box (nowrap, no clipping) so the label stays one line; short mobile labels already fit. */
.wd-wishlist-content .spoki-pcard__cta{display:block;line-height:1.1;white-space:nowrap}

/* CARD PARITY CLOSURE 2026-07-17: wishlist cards render the RAW price (no .spoki-price--card wrapper), so the shared EUR/BGN parity rule misses them and colorlaw .amount-bgn{0.75em!important} wins -> BGN shrinks. Restore EUR==BGN parity for wishlist cards ONLY, at (0,4,0) specificity to beat colorlaw deterministically. Card-context CSS only; no price-value or wishlist-logic change; NOT a global .amount-bgn override. */
.wd-wishlist-content .spoki-pcard__price .amount.amount-bgn{font-size:16px!important}
@media(max-width:767px){.wd-wishlist-content .spoki-pcard__price .amount.amount-bgn{font-size:15px!important}}/*wlparity-mobile 20260718*/\n
@media(max-width:767px){.wd-wishlist-content .spoki-pcard__price .amount.amount-bgn{font-size:15px!important}}


/* ===== SPOKI SHARED HORIZONTAL SCROLLER (.spoki-hscroll) =====
   Canonical horizontal-scroll affordance. v2 2026-07-20 (Option B).

   WHY CUSTOM, NOT NATIVE: natives proved unreliable. scrollbar-width:none in
   style.css out-specified the component on 3 of 4 rails, and iOS Safari auto-hides
   native bars. Natives are now HIDDEN on adopted rails (which AGREES with the
   existing rules, so no specificity war) and a JS-driven track supplies the visible
   design identically on every platform.

   Native scrolling remains the real interaction; the track is only the indicator.
   Paired with assets/js/spoki-hscroll.js.
   Rollback: delete this block, the JS file, its enqueue in functions.php, and the
   spoki-hscroll / spoki-hscroll-owner class tokens in inc/*.php.
   ===== */
.spoki-hscroll{
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
}
.spoki-hscroll::-webkit-scrollbar{ display:none; }

/* Track is injected by JS immediately ABOVE its rail, and only when the rail really
   overflows. Hidden by default so it can never flash before measurement. */
.spoki-hscroll-progress{
  display:none;
  height:6px;
  margin:0 16px 10px;
  border-radius:999px;
  background:#EFE7DA;
  position:relative;
  overflow:hidden;
}
.spoki-hscroll-progress.is-active{ display:block; }
.spoki-hscroll-progress__thumb{
  position:absolute;
  top:0; left:0;
  height:100%;
  min-width:24px;
  border-radius:999px;
  background:#19B0B6;
  will-change:transform;
}

/* Desktop keeps the existing arrows and shows no track. */
@media (min-width:768px){
  .spoki-hscroll-progress{ display:none !important; }
}

/* Mobile: the track IS the affordance, so arrows go. Explicit owner class set in
   markup and in the railnav injector; never :has(). html body lifts this to (0,2,2)
   to beat style.css:4868 body.home .spoki-railnav{display:flex!important} = (0,2,1). */
@media (max-width:767px){
  html body .spoki-hscroll-owner .spoki-railnav{ display:none !important; }
}

/* ===== SPOKI MOBILE MENU — flat accordion rows (menu 272 / .mobile-nav) =====
   Added 2026-07-20. Replaces WoodMart card-style rows with flat dividers.
   Scoped to .mobile-nav only — desktop uses menu 70 (main-menu), untouched.
   Rollback: delete this block. Backup: ops-backups/mobilemenu-20260720/
   ===== */
.mobile-nav .wd-nav-mobile > li > a,
.mobile-nav ul > li.item-level-0 > a{
  min-height:56px;
  display:flex; align-items:center;
  padding-inline:18px;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  border-bottom:1px solid rgba(17,24,39,.08);
  color:#1F2937;
  font-weight:600;
}
.mobile-nav li.item-level-1 > a,
.mobile-nav li.item-level-2 > a,
.mobile-nav li.item-level-3 > a{
  min-height:48px;
  display:flex; align-items:center;
  padding-left:28px;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  border:0;
  color:#1F2937;
  font-weight:400;
}
.mobile-nav li.item-level-2 > a{ padding-left:40px; }
.mobile-nav li.item-level-3 > a{ padding-left:52px; }

/* chevrons: neutral closed, teal open. No separate bordered column. */
.mobile-nav .wd-nav-opener{
  border:0 !important; background:transparent !important;
  color:#1F2937; width:44px; height:44px;
}
.mobile-nav li.wd-opened > a > .wd-nav-opener,
.mobile-nav li.wd-opened > .wd-nav-opener{ color:#00838A; }

/* current/active + focus = teal */
.mobile-nav li.current-menu-item > a,
.mobile-nav a:focus-visible{ color:#00838A; }
.mobile-nav a:focus-visible{ outline:2px solid #00838A; outline-offset:-2px; }

/* the single orange CTA */
.mobile-nav li.spoki-nav-cta > a{
  margin:14px 18px; padding:0 18px;
  min-height:52px;
  background:#F5811F !important;
  color:#fff !important;
  border-radius:999px !important;
  border-bottom:0;
  justify-content:center; font-weight:700;
}
.mobile-nav li.spoki-nav-cta > a .wd-nav-opener{ display:none; }

/* utility groups — headings drawn with CSS, never clickable # items */
.mobile-nav li.spoki-mm-util > a,
.mobile-nav li.spoki-mm-acct > a{
  min-height:48px; font-weight:400; color:#4B5563;
  border-bottom:1px solid rgba(17,24,39,.06);
}
.mobile-nav li.spoki-mm-util--first,
.mobile-nav li.spoki-mm-acct--first{ margin-top:8px; }
.mobile-nav li.spoki-mm-util--first::before{ content:"ПОЛЕЗНО"; }
.mobile-nav li.spoki-mm-acct--first::before{ content:"МОЯТ SPOKI"; }
.mobile-nav li.spoki-mm-util--first::before,
.mobile-nav li.spoki-mm-acct--first::before{
  display:block; padding:18px 18px 6px;
  font-size:12px; letter-spacing:.08em; font-weight:700;
  color:#6B7280; text-transform:uppercase;
  border-top:1px solid rgba(17,24,39,.08);
}

/* specificity guard: WoodMart core out-specified the base rules above.
   html body + explicit level chain wins without touching WoodMart files. */
html body .mobile-nav li.item-level-0 > a{ color:#1F2937 !important; }
html body .mobile-nav li.item-level-1 > a{ min-height:48px !important; padding-left:28px !important; }
html body .mobile-nav li.item-level-2 > a{ min-height:48px !important; padding-left:40px !important; }
html body .mobile-nav li.item-level-3 > a{ min-height:48px !important; padding-left:52px !important; }
html body .mobile-nav li.spoki-nav-cta > a{ min-height:52px !important; }
html body .mobile-nav li.spoki-mm-util > a,
html body .mobile-nav li.spoki-mm-acct > a{ min-height:48px !important; padding-left:18px !important; }

/* SPOKI-MOBILE-LI-FLATTEN-20260720 */
/* Kill the card look WoodMart-child style.css puts on the <li> wrapper + submenu.
   Root cause of the 'stack of grey buttons'. Scoped to .mobile-nav drawer only.
   Rollback: delete from this marker to EOF. Backup: /novamira-sandbox/css-backups/spoki-design-system-PRE-liflatten-20260720-201150.css */
html body .mobile-nav .wd-nav-mobile > li,
html body .mobile-nav ul > li.item-level-0{
  margin:0 !important; border:0 !important; border-radius:0 !important;
  background:transparent !important; box-shadow:none !important; overflow:visible !important;
  border-bottom:1px solid rgba(17,24,39,.08) !important;
}
html body .mobile-nav .wd-nav-mobile .wd-sub-menu{
  margin:0 !important; padding:0 !important; border:0 !important;
  border-radius:0 !important; box-shadow:none !important;
  background:#FFF9F1 !important;
}
html body .mobile-nav .wd-nav-mobile .wd-sub-menu .woodmart-nav-link{
  border-radius:0 !important; background:transparent !important; box-shadow:none !important;
  min-height:48px !important;
}
html body .mobile-nav .wd-nav-mobile .wd-sub-menu > li{
  margin:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important;
  border-bottom:1px solid rgba(17,24,39,.05) !important;
}
html body .mobile-nav .wd-nav-mobile .wd-nav-opener{
  border:0 !important; background:transparent !important; box-shadow:none !important; width:44px !important; height:44px !important;
}
html body .mobile-nav .wd-nav-mobile .wd-nav-opener::after{ border-color:#00838A !important; }
html body .mobile-nav .wd-nav-mobile > li.wd-opened > .wd-nav-opener::after{ border-color:#00838A !important; }

/* SPOKI-MOBILE-COLOR-UNIFY-20260720 */
/* One text color law for the mobile drawer: ink everywhere; teal ONLY for
   current/active/focus and the chevron. Kills the mixed teal(#19B0B6) group
   headings and the invisible white 'Виж всички' pill. Rollback: delete to next marker. Backup: /novamira-sandbox/css-backups/spoki-design-system-PRE-colorunify-20260720-203138.css */
html body .mobile-nav .wd-nav-mobile a.woodmart-nav-link,
html body .mobile-nav .wd-nav-mobile li.spoki-mega-coltitle > a{
  color:#1F2937 !important;
}
html body .mobile-nav .wd-nav-mobile li.spoki-mega-coltitle > a{
  font-weight:700 !important;
}
html body .mobile-nav .wd-nav-mobile li.spoki-mega-cta > a{
  background:transparent !important; color:#00838A !important;
  border-radius:0 !important; box-shadow:none !important; font-weight:600 !important;
  justify-content:flex-start !important;
}
html body .mobile-nav .wd-nav-mobile li.current-menu-item > a,
html body .mobile-nav .wd-nav-mobile a:focus-visible{ color:#00838A !important; }
html body .mobile-nav .wd-nav-mobile .wd-nav-opener::after{ border-color:#00838A !important; }

/* SPOKI-MOBILE-ICONS-20260720 */
/* Inline-SVG icons for mobile drawer rows. ~2KB total, zero extra requests.
   Rollback: delete to EOF. Backup: /novamira-sandbox/css-backups/spoki-design-system-PRE-icons-20260720-204851.css */
html body .mobile-nav .wd-nav-mobile li.spoki-ico-toys > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='7' height='7' rx='1.5'/><rect x='14' y='3' width='7' height='7' rx='1.5'/><rect x='3' y='14' width='7' height='7' rx='1.5'/><circle cx='17.5' cy='17.5' r='3.8'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-age > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3v3'/><path d='M5 10h14v4a3 3 0 0 1-3 3H8a3 3 0 0 1-3-3z'/><path d='M4 21h16'/><path d='M9 10V8m6 2V8'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-gift > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='8' width='18' height='4' rx='1'/><path d='M5 12v9h14v-9'/><path d='M12 8v13'/><path d='M12 8S9 3 6.5 5 9 8 12 8z'/><path d='M12 8s3-5 5.5-3S15 8 12 8z'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-skill > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18h6'/><path d='M10 21h4'/><path d='M12 3a6 6 0 0 0-4 10.5c.7.7 1 1.5 1 2.5h6c0-1 .3-1.8 1-2.5A6 6 0 0 0 12 3z'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-brand > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0l-7-7A2 2 0 0 1 3 12.2V4a1 1 0 0 1 1-1h8.2a2 2 0 0 1 1.4.6l7 7a2 2 0 0 1 0 2.8z'/><circle cx='7.5' cy='7.5' r='1.3'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-ship > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6h11v9H3z'/><path d='M14 9h4l3 3v3h-7z'/><circle cx='7' cy='18' r='1.8'/><circle cx='17' cy='18' r='1.8'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-return > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M9 14 4 9l5-5'/><path d='M4 9h11a5 5 0 0 1 5 5v0a5 5 0 0 1-5 5H8'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-faq > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M9.5 9a2.5 2.5 0 1 1 3.5 2.3c-.8.4-1 .9-1 1.7'/><path d='M12 17h.01'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-mail > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2'/><path d='m3 7 9 6 9-6'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-user > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='8' r='4'/><path d='M4 21a8 8 0 0 1 16 0'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-heart > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%25231F2937' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 20s-7-4.5-9.5-9A4.7 4.7 0 0 1 12 6a4.7 4.7 0 0 1 9.5 5C19 15.5 12 20 12 20z'/></svg>") center/contain no-repeat;
}

/* phone tap-to-call row (teal icon = it's an action) */
html body .mobile-nav .wd-nav-mobile li.spoki-ico-phone > a::before{
  content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px;
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%252300838A' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M5 4h3l2 5-2.5 1.5a11 11 0 0 0 5 5L19 13l5 2v3a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/></svg>") center/contain no-repeat;
}
html body .mobile-nav .wd-nav-mobile li.spoki-ico-phone > a{ color:#00838A !important; font-weight:600 !important; }

/* SPOKI-MOBILE-UTIL-STACK-20260721 */
/* FIX two-column bug: WoodMart sets util <li> to display:flex, so the block
   ::before heading sat BESIDE the <a>. Force block so heading stacks above.
   Rollback: delete to EOF. Backup: /novamira-sandbox/css-backups/spoki-design-system-PRE-utilstack-20260720-211507.css */
html body .mobile-nav .wd-nav-mobile > li.spoki-mm-util,
html body .mobile-nav .wd-nav-mobile > li.spoki-mm-acct{
  display:block !important;
}
html body .mobile-nav .wd-nav-mobile > li.spoki-mm-util--first::before,
html body .mobile-nav .wd-nav-mobile > li.spoki-mm-acct--first::before{
  display:block !important; width:100% !important; text-align:left !important;
}
html body .mobile-nav .wd-nav-mobile > li.spoki-mm-util > a,
html body .mobile-nav .wd-nav-mobile > li.spoki-mm-acct > a{
  display:flex !important; width:100% !important; justify-content:flex-start !important;
  text-align:left !important; min-height:48px !important; align-items:center !important;
}
html body .mobile-nav .wd-nav-mobile .wd-sub-menu{ background:#F5FBFB !important; }

/* SPOKI-MOBILE-ICONS-FIX-20260721 */
/* Re-encode icons with pure rawurlencode (previous block left raw <> which Chrome rejects). Backup: /novamira-sandbox/css-backups/spoki-design-system-PRE-iconfix-20260720-212730.css */
html body .mobile-nav .wd-nav-mobile li.spoki-ico-toys > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%273%27%20y%3D%273%27%20width%3D%277%27%20height%3D%277%27%20rx%3D%271.5%27%2F%3E%3Crect%20x%3D%2714%27%20y%3D%273%27%20width%3D%277%27%20height%3D%277%27%20rx%3D%271.5%27%2F%3E%3Crect%20x%3D%273%27%20y%3D%2714%27%20width%3D%277%27%20height%3D%277%27%20rx%3D%271.5%27%2F%3E%3Ccircle%20cx%3D%2717.5%27%20cy%3D%2717.5%27%20r%3D%273.8%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-age > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%203v3%27%2F%3E%3Cpath%20d%3D%27M5%2010h14v4a3%203%200%200%201-3%203H8a3%203%200%200%201-3-3z%27%2F%3E%3Cpath%20d%3D%27M4%2021h16%27%2F%3E%3Cpath%20d%3D%27M9%2010V8m6%202V8%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-gift > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%273%27%20y%3D%278%27%20width%3D%2718%27%20height%3D%274%27%20rx%3D%271%27%2F%3E%3Cpath%20d%3D%27M5%2012v9h14v-9%27%2F%3E%3Cpath%20d%3D%27M12%208v13%27%2F%3E%3Cpath%20d%3D%27M12%208S9%203%206.5%205%209%208%2012%208z%27%2F%3E%3Cpath%20d%3D%27M12%208s3-5%205.5-3S15%208%2012%208z%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-skill > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M9%2018h6%27%2F%3E%3Cpath%20d%3D%27M10%2021h4%27%2F%3E%3Cpath%20d%3D%27M12%203a6%206%200%200%200-4%2010.5c.7.7%201%201.5%201%202.5h6c0-1%20.3-1.8%201-2.5A6%206%200%200%200%2012%203z%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-brand > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M20.6%2013.4%2013.4%2020.6a2%202%200%200%201-2.8%200l-7-7A2%202%200%200%201%203%2012.2V4a1%201%200%200%201%201-1h8.2a2%202%200%200%201%201.4.6l7%207a2%202%200%200%201%200%202.8z%27%2F%3E%3Ccircle%20cx%3D%277.5%27%20cy%3D%277.5%27%20r%3D%271.3%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-ship > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%206h11v9H3z%27%2F%3E%3Cpath%20d%3D%27M14%209h4l3%203v3h-7z%27%2F%3E%3Ccircle%20cx%3D%277%27%20cy%3D%2718%27%20r%3D%271.8%27%2F%3E%3Ccircle%20cx%3D%2717%27%20cy%3D%2718%27%20r%3D%271.8%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-return > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M9%2014%204%209l5-5%27%2F%3E%3Cpath%20d%3D%27M4%209h11a5%205%200%200%201%205%205a5%205%200%200%201-5%205H8%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-faq > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M9.5%209a2.5%202.5%200%201%201%203.5%202.3c-.8.4-1%20.9-1%201.7%27%2F%3E%3Cpath%20d%3D%27M12%2017h.01%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-mail > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%273%27%20y%3D%275%27%20width%3D%2718%27%20height%3D%2714%27%20rx%3D%272%27%2F%3E%3Cpath%20d%3D%27m3%207%209%206%209-6%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-user > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%278%27%20r%3D%274%27%2F%3E%3Cpath%20d%3D%27M4%2021a8%208%200%200%201%2016%200%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-heart > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%2020s-7-4.5-9.5-9A4.7%204.7%200%200%201%2012%206a4.7%204.7%200%200%201%209.5%205C19%2015.5%2012%2020%2012%2020z%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-phone > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M5%204h3l2%205-2.5%201.5a11%2011%200%200%200%205%205L15%2013l5%202v3a2%202%200%200%201-2%202A16%2016%200%200%201%203%206a2%202%200%200%201%202-2z%27%2F%3E%3C%2Fsvg%3E") !important; }
/* kill green submenu bg -> white + teal spine linking to parent */
html body .mobile-nav .wd-nav-mobile .wd-sub-menu{ background:#ffffff !important; border-left:3px solid #00838A !important; }
/* un-bold group headings so weight is consistent */
html body .mobile-nav .wd-nav-mobile li.spoki-mega-coltitle > a{ font-weight:500 !important; }

/* SPOKI-MOBILE-COLTITLE-WEIGHT-FIX-20260721 */
html body .mobile-nav .wd-nav-mobile li.spoki-mega-coltitle > a.woodmart-nav-link,
html body .mobile-nav .wd-nav-mobile li.item-level-1.spoki-mega-coltitle > a{ font-weight:600 !important; }
html body .mobile-nav .wd-nav-mobile li.item-level-2.spoki-mega-coltitle > a{ font-weight:600 !important; }

/* SPOKI-MOBILE-PINNED-ICONS-20260721 */
html body .mobile-nav .wd-nav-mobile li.spoki-ico-star > a::before{ content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%203l2.6%205.3%205.9.9-4.3%204.2%201%205.9L12%2016.9%206.8%2019.6l1-5.9L3.5%209.5l5.9-.9z%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-new > a::before{ content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%203v4M12%2017v4M3%2012h4M17%2012h4M6%206l2.5%202.5M15.5%2015.5%2018%2018M18%206l-2.5%202.5M8.5%2015.5%206%2018%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-award > a::before{ content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%279%27%20r%3D%275%27%2F%3E%3Cpath%20d%3D%27M9%2013.5%207.5%2021%2012%2018.5%2016.5%2021%2015%2013.5%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-offer > a::before{ content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M20.6%2013.4%2013.4%2020.6a2%202%200%200%201-2.8%200l-7-7A2%202%200%200%201%203%2012.2V4a1%201%200%200%201%201-1h8.2a2%202%200%200%201%201.4.6l7%207a2%202%200%200%201%200%202.8z%27%2F%3E%3Ccircle%20cx%3D%277.5%27%20cy%3D%277.5%27%20r%3D%271.3%27%2F%3E%3Cpath%20d%3D%27M9%2015l6-6%27%20stroke-width%3D%271.4%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-mm-pinned > a{ font-weight:600 !important; }

/* SPOKI-MOBILE-BUNDLE-ICON-20260721 */
html body .mobile-nav .wd-nav-mobile li.spoki-ico-bundle > a::before{ content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M21%208l-9-5-9%205%209%205%209-5z%27%2F%3E%3Cpath%20d%3D%27M3%208v8l9%205%209-5V8%27%2F%3E%3Cpath%20d%3D%27M12%2013v8%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat !important; }

/* SPOKI-MOBILE-PROMOTE-FIX-20260721 */
html body .mobile-nav .wd-nav-mobile li.spoki-ico-need > a::before{ content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%274%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%271%27%20fill%3D%27%2300838A%27%20stroke%3D%27none%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-interest > a::before{ content:''; flex:0 0 22px; width:22px; height:22px; margin-right:12px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M8.5%2010h.01M15.5%2010h.01M8.5%2015a4%204%200%200%200%207%200%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat !important; }
html body .mobile-nav .wd-nav-mobile li.current-menu-ancestor > a,
html body .mobile-nav .wd-nav-mobile li.current-menu-parent > a,
html body .mobile-nav .wd-nav-mobile li.current-page-ancestor > a{ color:#1F2937 !important; }
html body .mobile-nav .wd-nav-mobile li.current-menu-item > a,
html body .mobile-nav .wd-nav-mobile li.wd-opened > a{ color:#00838A !important; }

/* SPOKI-MOBILE-TAP-COMFORT-20260721 */
html body .mobile-nav .wd-nav-mobile > li.item-level-0 > a{ min-height:60px !important; }
html body .mobile-nav .wd-nav-mobile .wd-nav-opener{ min-width:48px !important; min-height:48px !important; }

/* SPOKI-MOBILE-TEAL-ECONOMY-20260721 */
/* Rebalance teal: icons neutral, teal = state only. Backup: /novamira-sandbox/css-backups/spoki-design-system-PRE-tealecon-20260720-222204.css */
html body .mobile-nav .wd-nav-mobile li.spoki-ico-age > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2364748B%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2020h16%27%2F%3E%3Crect%20x%3D%276%27%20y%3D%2716%27%20width%3D%2712%27%20height%3D%273.2%27%20rx%3D%271.6%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2712%27%20width%3D%278%27%20height%3D%273.2%27%20rx%3D%271.6%27%2F%3E%3Crect%20x%3D%279.5%27%20y%3D%278%27%20width%3D%275%27%20height%3D%273.2%27%20rx%3D%271.6%27%2F%3E%3Cpath%20d%3D%27M12%208V5.5%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%274%27%20r%3D%271.3%27%2F%3E%3C%2Fsvg%3E") !important; filter:none !important; }
html body .mobile-nav .wd-nav-mobile > li[class*='spoki-ico-'] > a::before,
html body .mobile-nav .wd-nav-mobile li[class*='spoki-ico-'] > a::before{ filter:grayscale(1) brightness(1.15) opacity(.75) !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-age > a::before{ filter:none !important; opacity:1 !important; }
html body .mobile-nav .wd-nav-mobile .wd-nav-opener::after{ border-color:#9CA3AF !important; }
html body .mobile-nav .wd-nav-mobile > li.wd-opened > a .wd-nav-opener::after,
html body .mobile-nav .wd-nav-mobile > li.wd-opened > .wd-nav-opener::after{ border-color:#00838A !important; }
html body .mobile-nav .wd-nav-mobile > li.item-level-0.wd-opened > a{ background:#EAF7F7 !important; color:#00838A !important; }

/* SPOKI-MOBILE-TAPFEEDBACK-20260721 */
/* revert icons to teal (owner likes teal icons); interest=light sparkles; strong tap feedback. Backup: /novamira-sandbox/css-backups/spoki-design-system-PRE-tapfb-20260720-223212.css */
html body .mobile-nav .wd-nav-mobile li[class*='spoki-ico-'] > a::before{ filter:none !important; opacity:1 !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-age > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2020h16%27%2F%3E%3Crect%20x%3D%276%27%20y%3D%2716%27%20width%3D%2712%27%20height%3D%273.2%27%20rx%3D%271.6%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2712%27%20width%3D%278%27%20height%3D%273.2%27%20rx%3D%271.6%27%2F%3E%3Crect%20x%3D%279.5%27%20y%3D%278%27%20width%3D%275%27%20height%3D%273.2%27%20rx%3D%271.6%27%2F%3E%3Cpath%20d%3D%27M12%208V5.5%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%274%27%20r%3D%271.3%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-ico-interest > a::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2722%27%20height%3D%2722%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2300838A%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M11%203l1.6%204.4L17%209l-4.4%201.6L11%2015l-1.6-4.4L5%209l4.4-1.6z%27%2F%3E%3Cpath%20d%3D%27M18%2014l.8%202.2%202.2.8-2.2.8-.8%202.2-.8-2.2-2.2-.8%202.2-.8z%27%2F%3E%3C%2Fsvg%3E") !important; }
html body .mobile-nav .wd-nav-mobile a{ transition:background-color .12s ease; }
html body .mobile-nav .wd-nav-mobile a:hover{ background:#EAF7F7 !important; }
html body .mobile-nav .wd-nav-mobile a:active{ background:#CDECEC !important; }
html body .mobile-nav .wd-nav-mobile li.spoki-nav-cta > a:active{ background:#D9720F !important; }

/* SPOKI-REMOVE-DUP-HEADER-SEARCH-20260721 */
/* Remove duplicate search icon in the TOP mobile header row only; inline search bar below + bottom sticky-toolbar 'Търсене' remain.
   NOTE: the top-header icon and the bottom sticky-toolbar icon share the exact same classes
   (wd-header-search wd-header-search-mobile), so the blanket hide rule below also killed the
   bottom bar's loop icon. The .wd-toolbar override restores it there. Fixed 2026-07-21. */
html body .wd-header-search.wd-header-search-mobile{ display:none !important; }
html body .wd-toolbar .wd-header-search.wd-header-search-mobile{ display:flex !important; }
/* Icon glyph: WoodMart normally supplies --wd-tools-icon via header-el-search.css, which only
   enqueues when the top-header search element renders. That element is absent on mobile here,
   so the toolbar's search icon was a blank box (masked) even once un-hidden. Supply the var
   directly, scoped to the toolbar, so the glyph shows regardless of the top-header element. */
html body .wd-toolbar .wd-header-search.wd-header-search-mobile{ --wd-tools-icon: "\f130"; }

/* SPOKI-MOBILE-HIDE-DUP-SEARCH-ICON-LOOP-20260721 */
/* .whb-mobile-left carries a redundant WoodMart "icon layout" AJAX-search overlay
   trigger (.dgwt-wcas-layout-icon) sitting next to the hamburger menu icon. It is
   normally 0x0 because WoodMart's header-el-search.css (which supplies the icon
   glyph width) is only conditionally enqueued per page/cache state -- when it IS
   enqueued, this element gets real width and flashes a search "loop" icon beside
   the menu button, intermittently. The real mobile search UX is the inline search
   bar + the bottom sticky-toolbar icon (see SPOKI-REMOVE-DUP-HEADER-SEARCH-20260721
   above); this element is pure redundant duplication. Force-hide unconditionally.
   Backup: /home/spokibg/ops-backups/spoki-design-system-PRE-loopfix-20260721-002132.css */
html body .whb-mobile-left .wd-tools-element .dgwt-wcas-layout-icon{ display:none !important; width:0 !important; height:0 !important; }


/* Search-results product pagination (2026-07-21): dedicated 'spoki_ppage' pager,
   independent of WordPress's own 'paged' query var (see search.php note -- that
   var already drives the blog-post main-loop pagination on this same page).
   Deliberately NOT using WooCommerce's .woocommerce-pagination class so its
   shop-archive-scoped AJAX pagination JS never mistakes this for the shop loop. */
/* PAGINATION-DESIGN-CONSISTENCY-20260721: mapped onto the site's existing canonical
   pagination visual language (same spec as .spoki-abc__page and .woocommerce-pagination
   .page-numbers in spoki-category.css / spoki-archive-global.css) so search results,
   age hubs, category archives and shop all read as one system. Deliberate deviation:
   44px min touch target (canonical is 40px) to meet this ticket's explicit a11y floor;
   the canonical component itself was NOT touched, so no other page's layout changes. */
.spoki-search-pagination{margin:32px 0;display:flex;justify-content:center}
.spoki-search-pagination ul.page-numbers{display:flex;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;margin:0;padding:0}
/* SPECIFICITY-FIX-20260721: WoodMart PARENT theme base.css ships
   nav[class*="-pagination"] li .page-numbers {...} which matches ANY nav whose
   class contains "-pagination" (incl. spoki-search-pagination) at specificity
   (0,2,1) -- higher than the (0,2,0) rule above, so it was silently winning on
   min-width/height/border-radius/font-weight regardless of load order. Adding
   li to the selector matches that specificity; since this file loads after
   WoodMart's base.css, source order then wins it for us. Not !important. */
nav.spoki-search-pagination li .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 12px;border-radius:999px;border:1px solid var(--spoki-sand,#E7DED3);background:#fff;color:var(--spoki-color-heading,#2E3A67);font-family:'Nunito',sans-serif;font-weight:800;font-size:.95rem;text-decoration:none;transition:.15s ease}
nav.spoki-search-pagination li a.page-numbers:hover{border-color:var(--spoki-teal,#19B0B6);color:var(--spoki-teal-deep,#00838A)}
nav.spoki-search-pagination li a.page-numbers:focus-visible{outline:2px solid var(--spoki-teal,#19B0B6);outline-offset:2px}
nav.spoki-search-pagination li .page-numbers.current{background:var(--spoki-teal,#19B0B6);border-color:var(--spoki-teal,#19B0B6);color:#fff}
nav.spoki-search-pagination li .page-numbers.dots{border:0;background:transparent;color:#8A9598}
.spoki-search-h1{font-family:'Comfortaa',sans-serif;font-size:22px;font-weight:700;color:#2B3638;margin:0 0 6px;text-align:center}
.spoki-search-count{margin:0 0 20px;text-align:center;color:#5B6668;font-weight:600;font-family:'Nunito',sans-serif}
.spoki-search-empty{max-width:640px;margin:20px auto 40px;text-align:center}
.spoki-search-empty__h2{font-family:'Comfortaa',sans-serif;font-size:19px;font-weight:700;color:#2B3638;margin:0 0 8px}
.spoki-search-empty__p{font-family:'Nunito',sans-serif;color:#5B6668;margin:0 0 20px}
.spoki-search-recovery{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.spoki-search-recovery a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid #E4E7E8;color:#00838A;font-weight:700;text-decoration:none;font-family:'Nunito',sans-serif}
.spoki-search-recovery a:hover{border-color:#00838A;background:#EAF6F4}

/* SEARCH-A11Y-CLOSEOUT-20260721 (audit follow-up, read-only 3-agent QA):
   1) WoodMart's own generic page-title H1 (.wd-page-title .entry-title) still
      renders alongside .spoki-search-h1 above on is_search() -- two H1s in the
      DOM. Suppress the theme's duplicate; ours is the only real one. Scoped to
      body.search so nothing outside search results is affected.
   2) Visible :focus-visible ring for keyboard users tabbing through pagination
      -- paginate_links() links had no dedicated focus style (only :hover). */
body.search .wd-page-title .entry-title.title{display:none !important;}
.spoki-search-pagination .page-numbers:focus-visible{outline:2px solid #00838A !important;outline-offset:2px !important;transition:none !important;}

/* Global :focus-visible fallback (2026-07-22, Mobile Gold Standard Phase 2, owner GO).
   Fills the gap for interactive elements with NO scoped focus ring above -- confirmed
   missing on: hero CTA, hamburger menu trigger, header account link, header search
   toggle (Batch 4 accessibility audit). Zero-specificity :where() so it never overrides
   any of the many existing component-scoped :focus-visible rules in this file and others
   (gift finder, PDP, nav, footer, wishlist, breadcrumbs, search pagination, FAQ, age-
   ladder) -- this only applies where nothing more specific already does. */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible{
  outline:3px solid var(--spoki-color-teal);
  outline-offset:3px;
}
/* Dark-background exception: sticky filter pill (trust-blue #2E3A67 bg) has no scoped
   rule above -- teal-on-navy contrast is weak, use a light cream outline instead. */
.spoki-cat__stickyfilter:focus-visible{
  outline-color:#FCF7EF;
}
