/* Wach storefront: supplied design references, 20 October 2026.
   Existing data, handlers, forms and navigation are retained. Selectors are
   intentionally scoped to storefront components so payment/admin UI is intact. */
html body.wach-yellow-theme .app-shell main.main{
  background:var(--wach-bg)!important;color:var(--wach-text)!important;
  font-family:var(--wach-font-body)!important;
  padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))!important;
}
html body.wach-yellow-theme .app-shell main.main :is(button,input){font-family:var(--wach-font-body)}
html body.wach-yellow-theme .app-shell main.main :is(h1,h2,h3,.price){font-family:var(--wach-font-title)!important}
html body.wach-yellow-theme .app-shell main.main .section-head{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:12px!important;margin:var(--wach-section-gap) 0 16px!important;padding:0!important;
  border:0!important;background:var(--wach-transparent)!important;box-shadow:none!important;
}
html body.wach-yellow-theme .app-shell main.main .section-head :is(h2,h3){
  color:var(--wach-text)!important;font-size:20px!important;font-weight:800!important;
  line-height:1.2!important;letter-spacing:-.5px!important;margin:4px 0 0!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-section-eyebrow{
  display:block;font-family:var(--wach-font-body);font-size:11px!important;
  font-weight:700!important;letter-spacing:.18em!important;color:var(--wach-yellow-ink)!important;
}
html body.wach-yellow-theme .app-shell main.main .section-head a{
  font:600 14px/1.3 var(--wach-font-body)!important;color:var(--wach-text-2)!important;
  background:var(--wach-transparent)!important;border:0!important;padding:8px 0!important;
  box-shadow:none!important;white-space:nowrap;text-decoration:none!important;
}
html body.wach-yellow-theme .app-shell main.main .section-head .subtle{
  color:var(--wach-text-2)!important;font-size:12px!important;line-height:1.4!important;font-weight:400!important;
}
html body.wach-yellow-theme .app-shell main.main :is(#wachOnlineBadge,.mobile-online-holder){display:none!important}

/* One full-bleed photograph, with the copy anchored over its shade. */
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero{
  display:block!important;position:relative!important;height:280px!important;min-height:0!important;
  border:0!important;border-radius:var(--wach-radius-hero)!important;overflow:hidden!important;
  margin:12px 0 var(--wach-section-gap)!important;background:var(--wach-text)!important;box-shadow:none!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero .hero-photo{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  min-height:0!important;clip-path:none!important;border-radius:0!important;
  background:var(--wach-transparent)!important;z-index:0!important;display:block!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero .hero-media{
  position:absolute!important;inset:0;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center 47%!important;filter:none!important;transform:none!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero .hero-photo:before{
  content:"";position:absolute;inset:0;z-index:1;background:var(--wach-hero-shade)!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero .hero-copy{
  position:absolute!important;inset:auto 0 0!important;width:100%!important;max-width:none!important;
  padding:28px!important;background:var(--wach-transparent)!important;color:var(--wach-card)!important;z-index:2!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero :is(h1,h1 em){
  font-family:var(--wach-font-title)!important;font-size:38px!important;font-weight:800!important;
  line-height:1.15!important;letter-spacing:-.8px!important;font-style:normal!important;
  color:var(--wach-card)!important;-webkit-text-fill-color:var(--wach-card)!important;margin:8px 0 18px!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero .wach-hero-eyebrow{
  color:var(--wach-yellow)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.18em!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero :is(p,.wach-hero-caption,.seller-portrait){display:none!important}
html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero .red-btn{
  background:var(--wach-yellow)!important;color:var(--wach-text)!important;
  border:0!important;border-radius:var(--wach-radius-pill)!important;padding:10px 20px!important;
  font-size:14px!important;font-weight:700!important;min-height:40px!important;box-shadow:none!important;
}

/* Compact category grid. The original toggle reveals all remaining choices. */
html body.wach-yellow-theme .app-shell main.main .categories{
  display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:16px 8px!important;overflow:visible!important;padding:0!important;margin:0!important;
}
html body.wach-yellow-theme .app-shell main.main .categories .cat-card{
  display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important;
  width:auto!important;min-width:0!important;max-width:none!important;min-height:0!important;
  padding:0!important;border:0!important;border-radius:0!important;background:var(--wach-transparent)!important;
  box-shadow:none!important;transform:none!important;
}
html body.wach-yellow-theme .app-shell main.main .categories:not(.show-all-cats) .cat-card:nth-child(n+9){display:none!important}
html body.wach-yellow-theme .app-shell main.main .categories .cat-card .cat-img{
  width:64px!important;height:64px!important;min-width:64px!important;flex:none!important;
  background-image:none!important;background-color:var(--wach-yellow-soft)!important;
  border:0!important;border-radius:16px!important;box-shadow:none!important;display:grid!important;place-items:center!important;
}
html body.wach-yellow-theme .app-shell main.main .categories .cat-card .cat-badge{
  position:static!important;width:32px!important;height:32px!important;color:var(--wach-yellow-ink)!important;
  background:var(--wach-transparent)!important;border:0!important;box-shadow:none!important;
}
html body.wach-yellow-theme .app-shell main.main .categories .cat-card .cat-badge svg{
  width:28px!important;height:28px!important;stroke-width:1.8!important;
}
html body.wach-yellow-theme .app-shell main.main .categories .cat-card>span{
  font:500 12px/1.3 var(--wach-font-body)!important;color:var(--wach-text)!important;
  text-align:center!important;min-height:2.6em!important;overflow-wrap:anywhere;
}
html body.wach-yellow-theme .app-shell main.main .categories .cat-card:focus-visible .cat-img{
  outline:2px solid var(--wach-text);outline-offset:3px;
}
html body.wach-yellow-theme .app-shell main.main #popularCategoryControls{display:none!important}
/* The category explorer still owns the full overlay opened by the heading.
   Its duplicate teaser is replaced visually by the eight existing shortcuts. */
html body.wach-yellow-theme .app-shell main.main #categories+.categories{display:grid!important}
html body.wach-yellow-theme .app-shell main.main #wachCategoryDirectory{display:none!important}

/* Cards keep their real price/status/seller data and existing buttons. */
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card{
  background:var(--wach-card)!important;border:0!important;border-radius:var(--wach-radius-card)!important;
  box-shadow:var(--wach-shadow-card)!important;overflow:hidden!important;min-width:0!important;
}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .product-img{
  display:block!important;position:relative!important;width:100%!important;height:auto!important;
  min-height:0!important;max-height:none!important;aspect-ratio:1/1!important;border-radius:0!important;
  background:var(--wach-muted)!important;overflow:hidden!important;
}
html body.wach-yellow-theme .app-shell main.main .product-img .product-photo{
  width:100%!important;height:100%!important;object-fit:cover!important;position:absolute;inset:0;
  color:var(--wach-transparent)!important;font-size:0!important;mix-blend-mode:normal!important;
}
html body.wach-yellow-theme .app-shell main.main .product-img img:is([src=""],:not([src])){visibility:hidden}
html body.wach-yellow-theme .app-shell main.main .product-img:before{
  content:"";position:absolute;width:48px;height:48px;left:calc(50% - 24px);top:calc(50% - 24px);
  background:url('assets/wach-official-logo.jpg') center/contain no-repeat;filter:grayscale(1);opacity:.4;pointer-events:none;
}
html body.wach-yellow-theme .app-shell main.main .product-img:has(img[src]:not([src=""])):before{display:none}
html body.wach-yellow-theme .app-shell main.main .product-img .wach-img-fallback{
  background:var(--wach-muted)!important;
  background-image:url('assets/wach-official-logo.jpg')!important;background-size:48px!important;
  background-position:center!important;background-repeat:no-repeat!important;filter:grayscale(1);opacity:.4;
}
html body.wach-yellow-theme .app-shell main.main .wach-img-fallback svg{visibility:hidden}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .product-body{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  padding:12px!important;gap:0!important;background:var(--wach-card)!important;
}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .price{
  order:-1;font:800 18px/1.2 var(--wach-font-title)!important;color:var(--wach-text)!important;
  margin:0 0 6px!important;overflow-wrap:anywhere;
}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .product-title{
  display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
  overflow:hidden!important;min-height:2.6em!important;margin:0 0 10px!important;
  font:700 13px/1.3 var(--wach-font-body)!important;color:var(--wach-text)!important;text-align:center!important;
}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .loc{
  font:400 12px/1.4 var(--wach-font-body)!important;color:var(--wach-text-2)!important;
  margin:0!important;white-space:normal!important;overflow-wrap:anywhere;
}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .heart{
  top:8px!important;right:8px!important;width:32px!important;height:32px!important;border:0!important;
  border-radius:50%!important;background:var(--wach-heart-bg)!important;color:var(--wach-text)!important;box-shadow:none!important;
}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .heart.active{color:var(--wach-red)!important}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .tag{
  top:8px!important;left:8px!important;padding:5px 10px!important;border-radius:var(--wach-radius-pill)!important;
  background:var(--wach-yellow)!important;color:var(--wach-text)!important;font:700 11px/1.2 var(--wach-font-body)!important;
}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .product-clicks{display:none!important}
html body.wach-yellow-theme .app-shell main.main :is(#nearbyProducts,#recommendedProducts,#freshTodayRow,#topTodayRow,#featuredProducts) .product-card .distance{
  background:var(--wach-heart-bg)!important;color:var(--wach-text-2)!important;font-size:11px!important;box-shadow:none!important;
}
html body.wach-yellow-theme .app-shell main.main #recommendedProducts.wach-rec-row{
  display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;
  gap:12px!important;padding:2px 0 12px!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;
}
html body.wach-yellow-theme .app-shell main.main #recommendedProducts.wach-rec-row::-webkit-scrollbar{display:none}
html body.wach-yellow-theme .app-shell main.main #recommendedProducts.wach-rec-row .product-card{
  flex:0 0 176px!important;width:176px!important;min-width:0!important;max-width:176px!important;scroll-snap-align:start;
}
html body.wach-yellow-theme .app-shell main.main #nearbyProducts{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:var(--wach-grid-gap)!important;overflow:visible!important;padding:0 0 12px!important;align-items:start!important;
}
html body.wach-yellow-theme .app-shell main.main #nearbyProducts .product-card{
  width:100%!important;max-width:none!important;min-width:0!important;flex:none!important;margin:0!important;
}
html body.wach-yellow-theme .app-shell main.main #nearby>.section-head{margin-bottom:12px!important}
html body.wach-yellow-theme .app-shell main.main .wach-filterbar{
  display:flex!important;flex-wrap:wrap;gap:8px!important;margin:0 0 16px!important;padding:0!important;
  border:0!important;background:var(--wach-transparent)!important;box-shadow:none!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-filterbar button{
  flex:0 1 auto!important;min-height:40px!important;border:1px solid var(--wach-border)!important;
  border-radius:var(--wach-radius-pill)!important;padding:9px 14px!important;
  background:var(--wach-card)!important;color:var(--wach-text)!important;font:500 13px/1.3 var(--wach-font-body)!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-filterbar .wach-filterbar-gps{
  order:-2;background:var(--wach-text)!important;color:var(--wach-card)!important;border-color:var(--wach-text)!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-filterbar .wach-filterbar-loc{order:-1}
html body.wach-yellow-theme .app-shell main.main :is(.wach-community-discovery,.home-action-card,.site-update-panel){
  background:var(--wach-card)!important;border-color:var(--wach-border)!important;border-radius:var(--wach-radius-card)!important;
}
html body.wach-yellow-theme .app-shell main.main .wach-community-discovery>summary{color:var(--wach-text)!important}
html body.wach-yellow-theme .app-shell main.main .wach-community-discovery>summary small{color:var(--wach-text-2)!important}

@media(max-width:860px){
  html body.wach-yellow-theme .app-shell main.main{padding-left:var(--wach-side)!important;padding-right:var(--wach-side)!important;padding-top:0!important}
  html body.wach-yellow-theme .app-shell main.main .topbar{
    display:grid!important;grid-template-columns:40px minmax(0,1fr) 80px!important;
    grid-template-areas:"menu brand actions" "search search search"!important;
    gap:8px 4px!important;position:sticky!important;top:0!important;z-index:60!important;
    padding:8px 0 12px!important;margin:0!important;background:var(--wach-header-bg)!important;
    backdrop-filter:blur(8px);border:0!important;box-shadow:none!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar>.hamb{
    grid-area:menu!important;width:40px!important;height:40px!important;min-width:0!important;
    padding:10px!important;border:0!important;background:var(--wach-transparent)!important;color:var(--wach-text)!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar>.hamb svg{width:20px;height:20px;stroke-width:1.8}
  html body.wach-yellow-theme .app-shell main.main .topbar .mobile-brand{
    grid-area:brand!important;justify-content:center!important;display:flex!important;gap:8px!important;
    min-width:0!important;transform:translateX(20px);overflow:visible!important;
  }
  html body.wach-yellow-theme .app-shell main.main .wach-brand-mark{width:32px;height:32px;border-radius:50%;object-fit:contain}
  html body.wach-yellow-theme .app-shell main.main .topbar .brand-word{
    font:800 24px/1 var(--wach-font-title)!important;letter-spacing:-.5px;color:var(--wach-text)!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar .top-actions{
    grid-area:actions!important;display:flex!important;gap:0!important;width:80px!important;
    min-width:0!important;margin:0!important;justify-content:flex-end!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar .top-actions>:is(.post-top-btn,.user-pill,.top-action){display:none!important}
  html body.wach-yellow-theme .app-shell main.main .topbar .top-actions>:is(#wachCartAction,.top-action:has(#wachNotifBadge)){
    display:grid!important;place-items:center!important;width:40px!important;height:40px!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:var(--wach-transparent)!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar .top-actions .top-action>span:not(.dot-badge){display:none!important}
  html body.wach-yellow-theme .app-shell main.main .topbar .top-action svg{width:20px!important;height:20px!important;stroke-width:1.8!important;color:var(--wach-text)!important}
  html body.wach-yellow-theme .app-shell main.main #wachNotifBadge{
    width:8px!important;height:8px!important;min-width:0!important;min-height:0!important;padding:0!important;
    top:6px!important;right:7px!important;border-radius:50%!important;background:var(--wach-red)!important;font-size:0!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar .search-wrap{
    grid-area:search!important;width:100%!important;min-width:0!important;height:48px!important;
    border:1px solid var(--wach-border)!important;border-radius:var(--wach-radius-pill)!important;
    padding:0 16px!important;background:var(--wach-card)!important;box-shadow:var(--wach-shadow-card)!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar .search-wrap input{
    font-size:16px!important;font-weight:400!important;color:var(--wach-text)!important;background:var(--wach-transparent)!important;
  }
  html body.wach-yellow-theme .app-shell main.main .topbar .search-wrap input::placeholder{color:var(--wach-text-2)!important;opacity:1}
  html body.wach-yellow-theme .app-shell main.main .topbar .search-wrap>svg{width:20px!important;height:20px!important;stroke:var(--wach-text-2)!important;stroke-width:1.8!important}
  html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero{height:208px!important;margin-top:0!important}
  html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero .hero-copy{padding:20px!important}
  html body.wach-yellow-theme .app-shell main.main .wach-discovery-hero :is(h1,h1 em){font-size:30px!important;margin:6px 0 18px!important;letter-spacing:-.6px!important}
  html body.wach-yellow-theme .app-shell main.main .categories{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  html body.wach-yellow-theme .app-shell main.main #nearbyProducts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body.wach-yellow-theme .app-shell main.main .wach-feed-heading{flex-wrap:wrap}
  html body.wach-yellow-theme .app-shell main.main .wach-feed-heading .wach-feed-actions{max-width:none!important;gap:8px!important}
  html body.wach-yellow-theme .app-shell main.main .wach-feed-heading .wach-preferences-link{
    background:var(--wach-card)!important;border-color:var(--wach-border)!important;color:var(--wach-text-2)!important;
  }
  html body.wach-yellow-theme .bottom-nav{
    background:var(--wach-glass)!important;backdrop-filter:blur(8px)!important;border-top:1px solid var(--wach-border)!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;overflow:visible!important;box-shadow:none!important;
  }
  html body.wach-yellow-theme .bottom-nav a{
    color:var(--wach-text-2)!important;background:var(--wach-transparent)!important;font:500 11px/1.3 var(--wach-font-body)!important;
    overflow:visible!important;border:0!important;border-radius:0!important;
  }
  html body.wach-yellow-theme .bottom-nav a.active{background:var(--wach-transparent)!important;color:var(--wach-text)!important;font-weight:700!important}
  html body.wach-yellow-theme .bottom-nav svg{width:20px!important;height:20px!important;stroke-width:1.8!important}
  html body.wach-yellow-theme .bottom-nav a.active svg{stroke-width:2.2!important}
  html body.wach-yellow-theme .bottom-nav .plus-main{
    width:56px!important;height:56px!important;border-radius:50%!important;box-sizing:border-box;
    background:var(--wach-yellow)!important;color:var(--wach-text)!important;border:4px solid var(--wach-card)!important;
    box-shadow:var(--wach-shadow-fab)!important;font:400 30px/1 var(--wach-font-body)!important;margin-top:-28px!important;
  }
  html body.wach-yellow-theme #boubaFab,html body.wach-yellow-theme.wach-seller-v2-ready #boubaFab{
    width:48px!important;height:48px!important;min-width:48px!important;bottom:calc(96px + env(safe-area-inset-bottom,0px))!important;right:16px!important;
  }
  /* Preserve keyboard and scroll visibility states from wach-mobile-nav.css. */
  html body.wach-yellow-theme.kb-open :is(.bottom-nav,#boubaFab){display:none!important}
}
