    /* Warm cream digital-menu theme — scoped to the single-shop page.
       Follows the site-wide light/dark toggle like everything else. */
    .shop-menu{ --menu-bg:#FAF8F5; --menu-surface:#ffffff; --menu-surface-2:#F3EEE6; --menu-border:#e7dbc9;
      --menu-text:#1F1B16; --menu-muted:#6B6259; --menu-accent:#B5502E; --menu-tag-bg:#e7f3e6; --menu-tag-text:#2f7a3d;
      position:relative; background:var(--menu-bg); border-radius:24px; overflow:hidden; border:1px solid var(--menu-border);
      color:var(--menu-text); padding:0; box-shadow:0 20px 60px rgba(40,25,10,0.18); }
    .shop-menu .menu-success-text{ color:#2f7a3d; }
    .shop-menu .menu-error-text{ color:#b3261e; }
    .shop-menu .menu-star-color{ color:#D98A3D; }
    .shop-menu-inner{ max-width:760px; margin:0 auto; padding-bottom:1.75rem; }
    .shop-menu .menu-back{ padding:1rem 1.25rem 0; }
    .shop-menu .menu-back a{ color:var(--menu-muted); font-size:.85rem; text-decoration:none; font-weight:600; }
    .shop-menu .menu-back a:hover{ color:var(--menu-accent); }
    /* Cover-photo identity header, matching the seller dashboard's own
       profile preview: photo (or accent-color gradient fallback) with a
       dark overlay, logo+name pinned to the bottom, and quick-fact pills. */
    .shop-menu .menu-hero{ position:relative; min-height:200px; display:flex; align-items:flex-end; background:linear-gradient(120deg, var(--menu-accent), color-mix(in srgb, var(--menu-accent) 65%, #000)); background-size:cover; background-position:center; }
    .shop-menu .menu-hero-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.45) 60%, rgba(0,0,0,0.8) 100%); }
    .shop-menu .menu-hero-content{ position:relative; z-index:1; width:100%; padding:1.25rem 1.5rem; color:#fff; }
    .shop-menu .menu-hero-top{ display:flex; flex-direction:row-reverse; align-items:center; gap:.9rem; text-align:start; margin-bottom:.75rem; }
    html[dir="rtl"] .shop-menu .menu-hero-top{ flex-direction:row; }
    .shop-menu .menu-hero-avatar{ flex:0 0 auto; width:76px; height:76px; border-radius:20px; overflow:hidden; border:2px solid rgba(255,255,255,0.85); box-shadow:0 8px 18px rgba(0,0,0,0.35); background:rgba(255,255,255,0.14); }
    .shop-menu .menu-hero-avatar img{ width:100%; height:100%; object-fit:cover; }
    .shop-menu .menu-hero-info{ flex:1 1 auto; min-width:0; }
    .shop-menu .menu-hero-name{ font-size:1.2rem; font-weight:800; letter-spacing:-0.02em; color:#fff; margin:0; text-shadow:0 2px 8px rgba(0,0,0,0.4); }
    .shop-menu .menu-hero-tagline{ color:rgba(255,255,255,0.9); font-size:.85rem; line-height:1.45; margin-top:.25rem; text-shadow:0 1px 6px rgba(0,0,0,0.35); }
    .shop-menu .menu-hero-pills{ display:flex; flex-wrap:wrap; gap:.4rem; }
    .shop-menu .menu-hero-pill{ background:rgba(255,255,255,0.16); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,0.25); color:#fff; padding:5px 11px; border-radius:999px; font-size:.78rem; display:inline-flex; align-items:center; gap:.3rem; }
    .shop-menu .menu-hero-pill a{ color:#fff; text-decoration:underline; }
    @media (min-width:640px){
      .shop-menu .menu-hero{ min-height:260px; }
      .shop-menu .menu-hero-content{ padding:1.75rem 2rem; }
      .shop-menu .menu-hero-avatar{ width:104px; height:104px; border-radius:24px; }
      .shop-menu .menu-hero-name{ font-size:1.6rem; }
      .shop-menu .menu-hero-tagline{ font-size:.92rem; max-width:32rem; }
    }
    .shop-menu .menu-header{ padding:1.5rem 1.5rem 0; }
    .shop-menu .menu-primary-cta{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1rem; }
    .shop-menu .menu-primary-cta a, .shop-menu .menu-primary-cta button.copy-link-btn{ display:inline-flex; align-items:center; gap:.4rem; padding:.6rem 1.05rem; border-radius:999px; font-weight:700; font-size:.85rem; text-decoration:none; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease; }
    .shop-menu .menu-primary-cta a:hover, .shop-menu .menu-primary-cta button.copy-link-btn:hover{ transform:translateY(-2px); }
    .shop-menu .menu-primary-cta .whatsapp-btn{ background:var(--menu-accent); color:#fff; box-shadow:0 10px 24px rgba(181,80,46,0.28); }
    .shop-menu .menu-primary-cta .ghost-btn, .shop-menu .menu-primary-cta button.copy-link-btn{ background:var(--menu-surface); color:var(--menu-text); border:1px solid var(--menu-border); }
    .shop-menu .menu-about{ margin-top:.9rem; }
    .shop-menu .menu-about summary{ cursor:pointer; font-weight:700; font-size:.85rem; color:var(--menu-accent); list-style:none; }
    .shop-menu .menu-about summary::-webkit-details-marker{ display:none; }
    .shop-menu .menu-about-body{ margin-top:.75rem; background:var(--menu-surface); border:1px solid var(--menu-border); border-radius:14px; padding:1rem; font-size:.85rem; }
    .shop-menu .menu-about-body .row{ display:flex; align-items:center; gap:.5rem; color:var(--menu-muted); margin-top:.55rem; }
    .shop-menu .menu-about-body .row:first-child{ margin-top:0; }
    .shop-menu .menu-about-body a{ color:var(--menu-accent); text-decoration:none; }
    .shop-menu .menu-about-body button.copy-link-btn{ background:none; border:none; padding:0; margin:0; font:inherit; color:var(--menu-accent); text-decoration:underline; cursor:pointer; }
    .shop-menu .menu-map{ width:100%; height:180px; border:0; border-radius:10px; margin-top:.75rem; display:block; }
    .shop-menu .menu-toolbar{ padding:.9rem 1.25rem 1.1rem; border-bottom:1px solid var(--menu-border); }
    .shop-menu .menu-tabs{ display:flex; gap:.6rem; overflow-x:auto; padding:.75rem 0 0; scrollbar-width:none; }
    .shop-menu .menu-tabs::-webkit-scrollbar{ display:none; }
    .shop-menu .menu-tab{ flex:0 0 auto; padding:.55rem 1.1rem; border-radius:999px; background:var(--menu-surface); border:1px solid var(--menu-border); color:var(--menu-text); font-weight:700; font-size:.85rem; white-space:nowrap; text-decoration:none; transition:background .2s ease, color .2s ease, border-color .2s ease, transform .18s ease; }
    .shop-menu .menu-tab:hover{ border-color:var(--menu-accent); transform:translateY(-1px); }
    .shop-menu .menu-tab.active{ background:var(--menu-accent); border-color:var(--menu-accent); color:#fff; }
    .shop-menu .menu-search-row{ display:flex; align-items:stretch; gap:.5rem; }
    .shop-menu .menu-search-box{ position:relative; flex:1 1 auto; min-width:0; }
    .shop-menu .menu-search-box input{ width:100%; height:100%; background:var(--menu-surface); border:1px solid var(--menu-border); border-radius:14px; padding:.85rem 1rem .85rem 2.6rem; color:var(--menu-text); font-size:.92rem; }
    html[dir="rtl"] .shop-menu .menu-search-box input{ padding:.85rem 2.6rem .85rem 1rem; }
    .shop-menu .menu-search-box input::placeholder{ color:var(--menu-muted); }
    .shop-menu .menu-search-box .ic{ position:absolute; left:.9rem; top:50%; transform:translateY(-50%); color:var(--menu-muted); pointer-events:none; }
    html[dir="rtl"] .shop-menu .menu-search-box .ic{ left:auto; right:.9rem; }
    .shop-menu .menu-more-filters{ position:relative; flex:0 0 auto; }
    .shop-menu .filters-toggle{ display:inline-flex; align-items:center; gap:.4rem; height:100%; padding:0 1rem; border-radius:14px; background:var(--menu-surface); border:1px solid var(--menu-border); color:var(--menu-text); font-weight:700; font-size:.82rem; white-space:nowrap; cursor:pointer; list-style:none; transition:border-color .2s ease, color .2s ease; }
    .shop-menu .filters-toggle::-webkit-details-marker{ display:none; }
    .shop-menu .filters-toggle:hover{ border-color:var(--menu-accent); }
    .shop-menu .menu-more-filters[open] .filters-toggle{ border-color:var(--menu-accent); color:var(--menu-accent); }
    .shop-menu .filters-panel{ position:absolute; top:calc(100% + .6rem); inset-inline-end:0; width:min(300px, calc(100vw - 2.5rem)); background:var(--menu-surface); border:1px solid var(--menu-border); border-radius:16px; box-shadow:var(--shadow-card); padding:1rem; z-index:20; }
    .shop-menu .filters-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:.5rem; }
    .shop-menu .filters-grid select{ width:100%; background:var(--menu-bg); border:1px solid var(--menu-border); border-radius:10px; padding:.5rem .6rem; color:var(--menu-text); font-size:.82rem; }
    .shop-menu .filters-btns{ display:flex; gap:.5rem; margin-top:.75rem; }
    .shop-menu .filters-btns button.apply, .shop-menu .filters-btns a.reset-link{ flex:1; text-align:center; font-size:.8rem; padding:.5rem .9rem; border-radius:999px; border:1px solid var(--menu-border); font-weight:700; text-decoration:none; cursor:pointer; }
    .shop-menu .filters-btns button.apply{ background:var(--menu-accent); color:#fff; border-color:var(--menu-accent); }
    .shop-menu .filters-btns a.reset-link{ background:var(--menu-bg); color:var(--menu-text); }
