/*
Theme Name: Mystara 5
Theme URI: https://mystaraayurveda.com
Author: Mystara Pvt. Ltd.
Author URI: https://mystaraayurveda.com
Description: Mystara 5 — an accessible, fast, luxury Ayurveda block theme (Full Site Editing) for any WooCommerce store. Warm greige (#F0EEE9) foundation with a WCAG-AA verified palette, sticky navigation, bespoke product-image zoom (hover on desktop, double-tap on mobile), and a one-click product import. Razorpay / Site Kit / Yoast / Rank Math friendly. "Ayurveda, elevated."
Version: 5.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mystara5
Tags: full-site-editing, block-patterns, e-commerce, accessibility-ready, custom-colors, custom-logo, custom-menu, featured-images, editor-style, block-styles, wide-blocks, sticky-post, translation-ready
*/

/* Design tokens live in theme.json. This adds accessibility, performance,
   sticky nav, WooCommerce polish, and the bespoke image-zoom. */

:root{
  --m-greige:#f0eee9;
  --m-surface:#f5f3ee;
  --m-sand:#d4cabb;
  --m-gold:#7c5916;
  --m-gold-soft:#c6a15b;
  --m-moss:#42543b;
  --m-moss-deep:#2a3326;
  --m-amber:#a85e1c;
  --m-ink:#29261f;
  --m-cloud:#fbfaf7;
  --m-zoom:2.4;
  --ease-quint:cubic-bezier(.22,1,.36,1);
}

/* ---- Performance & base ---- */
html{ scroll-padding-top:88px; }               /* sticky-header aware anchor jumps */
@media (prefers-reduced-motion: no-preference){ html{ scroll-behavior:smooth; } }
body{ -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
img{ max-width:100%; height:auto; }
/* keep long content readable */
p, li{ max-width:72ch; }
.has-text-align-center p, .wp-block-cover p{ max-width:none; }

/* ---- Accessibility: visible focus everywhere ---- */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, .wp-block-button__link:focus-visible, summary:focus-visible,
.wp-block-navigation-item__content:focus-visible{
  outline:2px solid var(--m-gold);
  outline-offset:3px;
  border-radius:2px;
}
:focus:not(:focus-visible){ outline:none; }

/* Micro-labels */
.is-style-eyebrow,.mystara-eyebrow{ text-transform:uppercase; letter-spacing:.26em; font-size:.72rem; font-weight:600; }
.mystara-rule{ width:60px; height:1px; background:var(--m-gold); border:0; margin-block:1.25rem; }

/* ---- Sticky header (powerful, always-available nav) ---- */
.mystara-header{ position:sticky; top:0; z-index:100; background:var(--m-greige); }
.mystara-announce{ font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; }

/* Logo */
.wp-block-site-logo img,.mystara-logo img{ height:auto; }

/* Navigation */
.wp-block-navigation{ font-family:var(--wp--preset--font-family--body); letter-spacing:.14em; text-transform:uppercase; font-size:.78rem; }
.wp-block-navigation .wp-block-navigation-item__content:hover{ color:var(--m-gold); }

/* Buttons — squared, ≥44px tap target, animated on transform only */
.wp-block-button__link{
  letter-spacing:.16em; text-transform:uppercase; font-size:.76rem; font-weight:500;
  border-radius:0; padding-block:1em; padding-inline:2.2em; min-height:44px;
  transition:transform .4s var(--ease-quint), background-color .3s var(--ease-quint), color .3s var(--ease-quint);
}
.wp-block-button__link:hover{ transform:translateY(-2px); }
.is-style-outline .wp-block-button__link{ border-width:1px; }

h1,h2,.has-display-font-size,.has-colossal-font-size{ letter-spacing:-.01em; }

/* ============================================================
   BESPOKE PRODUCT IMAGE ZOOM
   Desktop: hover magnify + pan. Mobile: double-tap zoom + drag pan.
   ============================================================ */
.mz-frame{ display:block; position:relative; overflow:hidden; border-radius:4px; background:var(--m-surface); }
.mz-frame .mz-img{ display:block; width:100%; height:auto; transform-origin:center center;
  transition:transform .5s var(--ease-quint); will-change:transform; backface-visibility:hidden; }
.mz-frame.mz-hover{ cursor:zoom-in; }
.mz-frame.mz-touch.mz-zoomed{ cursor:zoom-out; }
.mz-frame.mz-touch::after{
  content:"Double-tap to zoom"; position:absolute; left:50%; bottom:12px; transform:translateX(-50%);
  font:600 10px/1 var(--wp--preset--font-family--body,sans-serif); letter-spacing:.16em; text-transform:uppercase;
  color:var(--m-cloud); background:rgba(42,51,38,.7); padding:.55em .9em; border-radius:999px; pointer-events:none;
  opacity:.92; transition:opacity .3s var(--ease-quint);
}
.mz-frame.mz-touch.mz-zoomed::after{ content:"Tap to exit"; }
.mz-frame.mz-touch.mz-hint-off::after{ opacity:0; }
@media (prefers-reduced-motion: reduce){ .mz-frame .mz-img{ transition:none; } }

/* ============================================================
   WooCommerce polish (works with ANY store)
   ============================================================ */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{ text-align:center; }
.woocommerce ul.products li.product a img{ border-radius:3px; transition:transform .7s var(--ease-quint); will-change:transform; }
.woocommerce ul.products li.product > a:first-of-type{ display:block; overflow:hidden; border-radius:3px; }
.woocommerce ul.products li.product:hover a img{ transform:scale(1.06); }
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--wp--preset--font-family--display); font-weight:500; font-size:1.2rem; padding-top:.7em; line-height:1.2; color:var(--m-ink);
}
.woocommerce ul.products li.product .price{ color:var(--m-ink); font-size:1rem; }
.woocommerce ul.products li.product .price del{ opacity:.55; }

.woocommerce span.onsale{
  background:var(--m-moss); color:var(--m-cloud); border-radius:0; min-height:auto; min-width:auto;
  padding:.4em .8em; font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; line-height:1; font-weight:600;
}
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{
  background:var(--m-ink); color:var(--m-cloud); border-radius:0; letter-spacing:.14em; text-transform:uppercase;
  font-size:.76rem; font-weight:500; padding:1em 2em; min-height:44px;
  transition:transform .4s var(--ease-quint), background-color .3s var(--ease-quint);
}
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{ background:var(--m-amber); transform:translateY(-2px); }
.woocommerce div.product .single_add_to_cart_button{ background:var(--m-amber); }
.woocommerce div.product .single_add_to_cart_button:hover{ background:var(--m-moss); }

.woocommerce div.product p.price,.woocommerce div.product span.price{ color:var(--m-ink); font-size:1.5rem; font-weight:500; }
.woocommerce div.product .product_title{ font-family:var(--wp--preset--font-family--display); font-weight:500; color:var(--m-ink); }
.woocommerce .star-rating span::before,.woocommerce p.stars a::before{ color:var(--m-gold); }

.woocommerce .quantity input,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text{ border:1px solid var(--m-sand); border-radius:0; padding:.75em .85em; background:var(--m-surface); color:var(--m-ink); min-height:44px; }
.woocommerce .quantity input:focus,.woocommerce form .form-row input.input-text:focus{ outline:2px solid var(--m-gold); outline-offset:2px; border-color:var(--m-gold); }

.woocommerce-message,.woocommerce-info{ border-top-color:var(--m-gold); }
.woocommerce-tabs ul.tabs li.active{ border-bottom-color:var(--m-gold); }
.woocommerce div.product .flex-control-thumbs li{ margin:.4rem .4rem 0 0; }

/* ============================================================
   Almost-invisible creator credit (footer)
   ============================================================ */
.mystara-credit{ text-align:center; margin:0; padding:.4rem 0 0; font-size:9px; letter-spacing:.12em; text-transform:uppercase; line-height:1.4; }
.mystara-credit a{ color:rgba(251,250,247,.13); text-decoration:none; transition:color .4s var(--ease-quint); }
.mystara-credit a:hover,.mystara-credit a:focus-visible{ color:rgba(251,250,247,.55); }

/* ============================================================
   MYSTARA 4 — storefront UI (mega menu, actions, sidebars,
   wishlist, steppers, sticky bar, delivery, upsell). AA-safe.
   ============================================================ */

/* Header layout */
.mystara-header .alignwide{ gap:1.5rem; }

/* Mega menu */
.mystara-mega{ position:relative; }
.mystara-mega__list{ display:flex; gap:1.6rem; align-items:center; list-style:none; margin:0; padding:0; }
.mystara-mega__item > a{ text-transform:uppercase; letter-spacing:.14em; font-size:.78rem; font-weight:500; color:var(--m-ink); text-decoration:none; padding:.5rem 0; display:inline-block; }
.mystara-mega__item > a:hover{ color:var(--m-gold); }
.mystara-mega__club{ color:var(--m-gold); }
.mystara-mega__item.has-panel{ position:static; }
.mystara-mega__panel{ position:absolute; left:0; right:0; top:100%; background:var(--m-surface); border-top:1px solid var(--m-sand);
  box-shadow:0 30px 50px -30px rgba(41,38,31,.4); display:grid; grid-template-columns:repeat(3,1fr) 1.2fr; gap:2rem;
  padding:2rem clamp(1.25rem,5vw,3rem); opacity:0; visibility:hidden; transform:translateY(6px);
  transition:opacity .25s var(--ease-quint), transform .25s var(--ease-quint), visibility .25s; z-index:90; }
.mystara-mega__item.has-panel:hover .mystara-mega__panel,
.mystara-mega__item.has-panel:focus-within .mystara-mega__panel{ opacity:1; visibility:visible; transform:none; }
.mystara-mega__col ul{ list-style:none; margin:.6rem 0 0; padding:0; display:grid; gap:.5rem; }
.mystara-mega__col a{ color:var(--m-smoke); text-decoration:none; font-size:.92rem; }
.mystara-mega__col a:hover{ color:var(--m-gold); }
.mystara-mega__all{ color:var(--m-ink); font-weight:500; }
.mystara-mega__feature{ background:var(--m-greige); border:1px solid var(--m-sand); border-radius:4px; padding:1.25rem; display:flex; flex-direction:column; justify-content:center; gap:.4rem; }
.mystara-mega__feature-title{ font-family:var(--wp--preset--font-family--display); font-size:1.3rem; margin:.2rem 0; }
.mystara-mega__feature-link{ color:var(--m-gold); text-decoration:none; font-size:.85rem; }

/* Header action icons */
.mystara-actions{ display:flex; align-items:center; gap:.35rem; }
.mystara-actions__btn{ position:relative; display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; color:var(--m-ink); background:none; border:0; cursor:pointer; text-decoration:none; border-radius:50%; }
.mystara-actions__btn:hover{ color:var(--m-gold); background:rgba(124,89,22,.08); }
.mystara-bag-count,.mystara-wishlist-count{ position:absolute; top:3px; right:1px; min-width:16px; height:16px; padding:0 3px; background:var(--m-amber); color:var(--m-cloud); font-size:10px; font-weight:600; line-height:16px; text-align:center; border-radius:999px; }

@media (max-width:900px){
  .mystara-header .alignwide{ flex-wrap:wrap; row-gap:.5rem; }
  .mystara-mega{ order:3; width:100%; overflow-x:auto; }
  .mystara-mega__list{ gap:1.1rem; }
  .mystara-mega__item.has-panel .mystara-mega__panel{ position:static; display:none; }
}

/* Shop / product side rail */
.mystara-siderail{ font-size:.9rem; position:sticky; top:96px; }
.mystara-siderail__eyebrow{ color:var(--m-gold); margin:0 0 1rem; }
.mystara-siderail__group{ margin-bottom:1.25rem; }
.mystara-siderail__heading{ font-family:var(--wp--preset--font-family--body); font-size:.76rem; text-transform:uppercase; letter-spacing:.12em; color:var(--m-ink); margin:0 0 .5rem; }
.mystara-siderail ul{ list-style:none; margin:0; padding:0; display:grid; gap:.35rem; }
.mystara-siderail a{ color:var(--m-smoke); text-decoration:none; }
.mystara-siderail a:hover{ color:var(--m-gold); }
.mystara-siderail__club{ display:inline-block; margin-top:.5rem; color:var(--m-gold); font-weight:500; text-decoration:none; }
@media (max-width:782px){ .mystara-shop-sidebar,.mystara-pdp-sidebar{ display:none; } }

/* Fix Add to Bag button shape (was tall/fat) */
.woocommerce div.product form.cart{ display:flex; align-items:stretch; gap:.75rem; flex-wrap:wrap; margin-top:1.25rem; }
.woocommerce div.product form.cart .single_add_to_cart_button{ flex:1 1 auto; max-width:360px; min-height:52px; display:inline-flex; align-items:center; justify-content:center; }

/* Quantity steppers */
.mystara-qty{ display:flex; align-items:stretch; border:1px solid var(--m-sand); background:var(--m-surface); }
.mystara-qty-btn{ width:42px; min-height:52px; border:0; background:none; font-size:1.15rem; color:var(--m-ink); cursor:pointer; }
.mystara-qty-btn:hover{ color:var(--m-gold); }
.woocommerce .quantity input.qty{ width:52px; border:0; text-align:center; background:transparent; min-height:52px; }

/* Wishlist heart on cards + PDP */
.woocommerce ul.products li.product{ position:relative; }
.mystara-wish{ position:absolute; top:12px; right:12px; z-index:3; width:38px; height:38px; border-radius:50%; border:0; background:rgba(251,250,247,.92); color:var(--m-ink); display:inline-flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 4px 12px -6px rgba(0,0,0,.3); transition:transform .3s var(--ease-quint), color .3s; }
.mystara-wish:hover{ transform:scale(1.08); color:var(--m-amber); }
.mystara-wish.is-active{ color:#b3402f; }
.mystara-wish.is-active svg path{ fill:currentColor; }
.mystara-wish--text{ position:static; width:auto; height:auto; border-radius:0; background:none; box-shadow:none; gap:.5rem; padding:.5rem 0; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; color:var(--m-smoke); }
.mystara-wish--text:hover{ transform:none; color:var(--m-amber); }
.mystara-pdp-actions{ margin-top:1rem; }

/* Quick-add reveal on hover */
@media (hover:hover){
  .woocommerce ul.products li.product a.add_to_cart_button{ opacity:0; transform:translateY(6px); transition:opacity .3s var(--ease-quint), transform .3s var(--ease-quint); }
  .woocommerce ul.products li.product:hover a.add_to_cart_button,
  .woocommerce ul.products li.product:focus-within a.add_to_cart_button{ opacity:1; transform:none; }
}

/* Delivery / pincode checker */
.mystara-delivery{ margin-top:1.25rem; border:1px solid var(--m-sand); padding:1rem; background:var(--m-surface); max-width:440px; }
.mystara-delivery__label{ display:block; font-size:.72rem; text-transform:uppercase; letter-spacing:.14em; color:var(--m-ink); margin-bottom:.5rem; font-weight:600; }
.mystara-delivery__row{ display:flex; gap:.5rem; }
.mystara-delivery input{ flex:1; border:1px solid var(--m-sand); padding:.6em .7em; min-height:44px; background:#fff; color:var(--m-ink); }
.mystara-delivery__btn{ background:var(--m-ink); color:var(--m-cloud); border:0; padding:0 1.2rem; min-height:44px; text-transform:uppercase; letter-spacing:.12em; font-size:.72rem; cursor:pointer; }
.mystara-delivery__btn:hover{ background:var(--m-amber); }
.mystara-delivery__result{ margin:.6rem 0 0; font-size:.85rem; }
.mystara-delivery__result.is-ok{ color:var(--m-moss); }
.mystara-delivery__result.is-error{ color:#b3402f; }

/* What's inside */
.mystara-inside{ margin:var(--wp--preset--spacing--50) 0 0; padding:var(--wp--preset--spacing--40) 0; border-top:1px solid var(--m-sand); }
.mystara-inside__title{ font-size:2rem; margin:.2rem 0 1.5rem; }
.mystara-inside__grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1.5rem; }
.mystara-inside__item h3{ font-family:var(--wp--preset--font-family--display); font-size:1.2rem; margin:0 0 .3rem; }
.mystara-inside__item p{ color:var(--m-smoke); font-size:.9rem; margin:0; }

/* De-emphasise meta; prominence to reviews */
.woocommerce div.product .product_meta{ font-size:.78rem; color:var(--m-smoke); opacity:.8; margin-top:2rem; border-top:1px dashed var(--m-sand); padding-top:1rem; }

/* Sticky Add to Bag */
.mystara-sticky-bar{ position:fixed; left:0; right:0; bottom:0; z-index:200; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.7rem clamp(1rem,4vw,2rem); background:var(--m-surface); border-top:1px solid var(--m-sand); box-shadow:0 -10px 30px -20px rgba(0,0,0,.4); }
.mystara-sticky-bar[hidden]{ display:none; }
.mystara-sticky-bar__info{ display:flex; align-items:center; gap:.75rem; }
.mystara-sticky-bar__info img{ width:48px; height:48px; object-fit:cover; border-radius:3px; }
.mystara-sticky-bar__name{ display:block; font-family:var(--wp--preset--font-family--display); font-size:1rem; line-height:1.1; }
.mystara-sticky-bar__price{ display:block; font-size:.85rem; color:var(--m-smoke); }
.mystara-sticky-bar__btn{ background:var(--m-amber); color:var(--m-cloud); border:0; padding:.9em 1.8em; text-transform:uppercase; letter-spacing:.14em; font-size:.76rem; font-weight:500; cursor:pointer; min-height:48px; }
.mystara-sticky-bar__btn:hover{ background:var(--m-moss); }

/* Free-shipping progress */
.mystara-freeship{ background:var(--m-surface); border:1px solid var(--m-sand); padding:1rem 1.25rem; margin-bottom:1.5rem; border-radius:4px; }
.mystara-freeship p{ margin:0 0 .6rem; font-size:.9rem; }
.mystara-freeship__track{ height:6px; background:var(--m-sand); border-radius:999px; overflow:hidden; }
.mystara-freeship__track span{ display:block; height:100%; background:linear-gradient(90deg,var(--m-gold),var(--m-amber)); transition:width .5s var(--ease-quint); }

/* Wishlist drawer */
.mystara-drawer{ position:fixed; inset:0; z-index:300; visibility:hidden; }
.mystara-drawer.is-open{ visibility:visible; }
.mystara-drawer__scrim{ position:absolute; inset:0; background:rgba(41,38,31,.45); opacity:0; transition:opacity .3s; }
.mystara-drawer.is-open .mystara-drawer__scrim{ opacity:1; }
.mystara-drawer__panel{ position:absolute; top:0; right:0; height:100%; width:min(380px,90vw); background:var(--m-greige); box-shadow:-20px 0 50px -30px rgba(0,0,0,.5); transform:translateX(100%); transition:transform .35s var(--ease-quint); display:flex; flex-direction:column; }
.mystara-drawer.is-open .mystara-drawer__panel{ transform:none; }
.mystara-drawer__head{ display:flex; align-items:center; justify-content:space-between; padding:1.25rem; border-bottom:1px solid var(--m-sand); }
.mystara-drawer__head h2{ font-size:1.3rem; margin:0; }
.mystara-drawer__close{ background:none; border:0; font-size:1.6rem; line-height:1; cursor:pointer; color:var(--m-ink); }
.mystara-drawer__body{ padding:1rem 1.25rem; overflow-y:auto; }
.mystara-drawer__item{ display:flex; align-items:center; gap:.75rem; padding:.6rem 0; border-bottom:1px solid var(--m-sand); }
.mystara-drawer__item a{ display:flex; align-items:center; gap:.75rem; color:var(--m-ink); text-decoration:none; flex:1; }
.mystara-drawer__item img{ width:48px; height:48px; object-fit:cover; border-radius:3px; }
.mystara-drawer__rm{ background:none; border:0; font-size:1.2rem; color:var(--m-smoke); cursor:pointer; }
.mystara-drawer__empty{ color:var(--m-smoke); font-size:.9rem; }

/* ============================================================
   MYSTARA 5 — fixes: breadcrumb, sorting, button height,
   mobile nav, inline search, actionable wishlist, cloud-dancer.
   ============================================================ */

/* Breadcrumb: smaller, lighter, subtle underline (not touching) */
.woocommerce .woocommerce-breadcrumb{ font-size:.76rem; color:var(--m-smoke); letter-spacing:.02em; margin:0 0 1.5rem; opacity:.9; }
.woocommerce .woocommerce-breadcrumb a{ color:var(--m-smoke); text-decoration:none; border:0; }
.woocommerce .woocommerce-breadcrumb a:hover{ color:var(--m-gold); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }

/* Sorting dropdown */
.woocommerce .woocommerce-ordering select{
  border:1px solid var(--m-sand); background:var(--m-greige); color:var(--m-ink);
  padding:.55em 2.2em .55em .9em; border-radius:0; font-size:.8rem; letter-spacing:.04em; min-height:44px;
  -webkit-appearance:none; appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%237c5916' stroke-width='1.4'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right .9em center;
}
.woocommerce .woocommerce-ordering select:focus{ outline:2px solid var(--m-gold); outline-offset:2px; }
.woocommerce .woocommerce-result-count{ color:var(--m-smoke); font-size:.85rem; }

/* Add to Bag button — normal height, never tall/fat */
.woocommerce div.product form.cart{ align-items:center; }
.woocommerce div.product form.cart .single_add_to_cart_button{
  flex:0 1 auto; width:auto; min-width:220px; max-width:360px; height:52px; min-height:52px;
  padding:0 2.4em; line-height:1.2; display:inline-flex; align-items:center; justify-content:center;
}
.woocommerce a.button.add_to_cart_button{ min-height:44px; line-height:1.2; padding-top:.7em; padding-bottom:.7em; }

/* Header: burger hidden on desktop */
.mystara-actions__burger{ display:none; }
@media (max-width:900px){
  .mystara-actions__burger{ display:inline-flex; }
  .mystara-mega{ display:none; }
  .mystara-actions__account{ display:none; }
  .mystara-header .alignwide{ flex-wrap:nowrap; }
}

/* Inline search panel (slide down) */
.mystara-search-panel{ max-height:0; overflow:hidden; transition:max-height .3s var(--ease-quint); border-top:0; }
.mystara-search-panel.is-open{ max-height:120px; border-top:1px solid var(--m-sand); margin-top:.75rem; }
.mystara-search-form{ display:flex; gap:.5rem; max-width:640px; margin:1rem auto; padding:0 clamp(1.25rem,5vw,3.25rem); }
.mystara-search-form input{ flex:1; border:1px solid var(--m-sand); background:var(--m-surface); padding:.7em .9em; min-height:48px; color:var(--m-ink); }
.mystara-search-form input:focus{ outline:2px solid var(--m-gold); outline-offset:2px; }
.mystara-search-form button{ background:var(--m-ink); color:var(--m-cloud); border:0; padding:0 1.6em; min-height:48px; text-transform:uppercase; letter-spacing:.12em; font-size:.74rem; cursor:pointer; }
.mystara-search-form button:hover{ background:var(--m-amber); }

/* Mobile nav drawer */
.mystara-navdrawer{ position:fixed; inset:0; z-index:400; visibility:hidden; }
.mystara-navdrawer.is-open{ visibility:visible; }
.mystara-navdrawer__scrim{ position:absolute; inset:0; background:rgba(41,38,31,.45); opacity:0; transition:opacity .3s; }
.mystara-navdrawer.is-open .mystara-navdrawer__scrim{ opacity:1; }
.mystara-navdrawer__panel{ position:absolute; top:0; left:0; height:100%; width:min(320px,86vw); background:var(--m-greige); box-shadow:20px 0 50px -30px rgba(0,0,0,.5); transform:translateX(-100%); transition:transform .35s var(--ease-quint); display:flex; flex-direction:column; }
.mystara-navdrawer.is-open .mystara-navdrawer__panel{ transform:none; }
.mystara-navdrawer__head{ display:flex; align-items:center; justify-content:space-between; padding:1.1rem 1.25rem; border-bottom:1px solid var(--m-sand); text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; }
.mystara-navdrawer__close{ background:none; border:0; font-size:1.6rem; line-height:1; cursor:pointer; color:var(--m-ink); }
.mystara-navdrawer__nav{ padding:1rem 1.25rem; overflow-y:auto; }
.mystara-navdrawer__nav > a{ display:block; padding:.7rem 0; color:var(--m-ink); text-decoration:none; text-transform:uppercase; letter-spacing:.12em; font-size:.82rem; border-bottom:1px solid var(--m-sand); }
.mystara-navdrawer__cats{ margin-top:1rem; }
.mystara-navdrawer__eyebrow{ margin:1rem 0 .4rem; font-size:.68rem; text-transform:uppercase; letter-spacing:.16em; color:var(--m-gold); }
.mystara-navdrawer__sub{ display:block; padding:.35rem 0; color:var(--m-smoke); text-decoration:none; font-size:.9rem; }

/* Actionable wishlist drawer */
.mystara-drawer__item{ display:block; padding:.75rem 0; border-bottom:1px solid var(--m-sand); }
.mystara-drawer__link{ display:flex; align-items:center; gap:.75rem; color:var(--m-ink); text-decoration:none; }
.mystara-drawer__meta{ display:flex; flex-direction:column; }
.mystara-drawer__name{ font-size:.95rem; }
.mystara-drawer__price{ font-size:.85rem; color:var(--m-smoke); }
.mystara-drawer__row{ display:flex; align-items:center; gap:.75rem; margin-top:.5rem; }
.mystara-drawer__add{ flex:1; text-align:center; background:var(--m-ink); color:var(--m-cloud); text-decoration:none; padding:.6em 1em; text-transform:uppercase; letter-spacing:.12em; font-size:.7rem; min-height:40px; display:inline-flex; align-items:center; justify-content:center; }
.mystara-drawer__add:hover{ background:var(--m-amber); color:var(--m-cloud); }
.mystara-drawer__oos{ flex:1; text-align:center; color:var(--m-smoke); font-size:.75rem; text-transform:uppercase; letter-spacing:.1em; padding:.6em; border:1px dashed var(--m-sand); }
.mystara-drawer__item.is-oos{ opacity:.55; }

/* Talk to doctors footer accent already inline */
