/* ===== src/assets/css/subcategory-page.css ===== */

/* ===== assets/css/subcategory-page.css ===== */
/* ===== subcategory.html inline style 1 ===== */
:root{ --gold:#C89B3C; --white:#ffffff; --black:#111827; }

    /* Sticky nav */
    #site-nav{position:sticky;top:0;z-index:var(--z-nav,1000);background:rgba(255,255,255,.82);border-bottom:1px solid #eee}

    /* Full-bleed hero */
    .hero-bleed{position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;width:100vw}
    .hero-full{position:relative;width:100%;min-height:56vh}
    @media (min-width:768px){.hero-full{min-height:64vh}}
    .hero-img-full{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}
    .hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.28) 45%,rgba(0,0,0,.1) 70%,transparent)}
    .hero-content{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:2rem;z-index:1}
    .hero-textbox{width:min(92vw,60rem);text-align:center;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.35)}
    .hero-title{font-weight:900}
    .hero-sub{opacity:.95}
    .skeleton{position:relative;overflow:hidden}
    .skeleton::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.04),rgba(0,0,0,.08),rgba(0,0,0,.04));transform:translateX(-100%);animation:sk 1.2s infinite}
    @keyframes sk{to{transform:translateX(100%)}}

    /* Toolbar + chips */
    .toolbar{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;justify-content:space-between}
    .tool-left{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
    .chip{--c:#e5e7eb;--bg:#fff;--tx:#111827;display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .75rem;border:1px solid var(--c);border-radius:9999px;background:var(--bg);color:var(--tx);font-size:.9rem;cursor:pointer;user-select:none;transition:.18s}
    .chip input{display:none}
    .chip.active{--c:var(--gold);--bg:#fff6d8}
    .chip svg{width:16px;height:16px}
    .sort{display:inline-flex;align-items:center;gap:.45rem}
    .select{border:1px solid #e5e7eb;border-radius:.75rem;padding:.5rem .75rem;background:#fff;font-size:.92rem;box-shadow:0 1px 0 rgba(0,0,0,.02)}
    .clear-btn{font-size:.85rem;color:#6b7280;border:1px solid #e5e7eb;padding:.35rem .6rem;border-radius:.6rem;transition:.15s}
    .clear-btn:hover{background:#f8f8f8}
    .search-wrap{display:flex;align-items:center;gap:.5rem;width:100%;justify-content:center}
    .search-input{width:min(75vw,28rem);border:1px solid #e5e7eb;border-radius:9999px;padding:.6rem .9rem}



    /* Filter / sort modal buttons */
    .chip-btn{display:inline-flex;align-items:center;gap:.5rem;border:1px solid #e5e7eb;border-radius:999px;padding:.55rem .9rem;background:#fff;font-weight:700;transition:.18s}
    .chip-btn:hover{border-color:var(--gold);background:#fff9e8}
    .chip-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.35rem;border-radius:999px;background:#111;color:#fff;font-size:.78rem;font-weight:700}
    .modal-mask{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;z-index:var(--z-modal-overlay,2000)}
    .modal-mask.active{display:block}
    .modal-panel{position:fixed;inset:0;display:none;place-items:center;z-index:var(--z-modal,2010);padding:1rem}
    .modal-panel.active{display:grid}
    .modal-card{width:min(92vw,720px);max-height:88vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.24)}
    .modal-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #eee}
    .modal-body{padding:16px}
    .modal-foot{padding:12px 16px;border-top:1px solid #eee;display:flex;gap:8px;justify-content:flex-end}
    .field{display:grid;gap:6px;margin-bottom:12px}
    .field label{font-weight:800;font-size:.92rem}
    .field select,.field input{border:1px solid #e5e7eb;border-radius:12px;padding:.6rem .7rem;background:#fff;width:100%}

    /* Product cards */
    .product-card{position:relative;border:1px solid #eee;border-radius:1rem;background:#fff;overflow:hidden;transition:transform .18s,box-shadow .18s,border-color .18s; height:100%; display:flex; flex-direction:column;}
    .product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.08);border-color:var(--gold);background:#fffefb}
    .p-img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#f7f7f7;display:block}
    .p-body{padding:.6rem .7rem .75rem; flex:1; display:flex; flex-direction:column;}
    .p-title{font-weight:800;line-height:1.22;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.1em;font-size:.95rem}
    .p-meta{display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin-top:.3rem}
    .price{font-weight:800;font-size:.95rem}
    .old{color:#9ca3af;text-decoration:line-through;margin-inline-start:.32rem;font-weight:600;font-size:.84rem}
    .add-btn{width:100%;margin-top:auto;border-radius:.7rem;border:1px solid var(--gold);color:var(--gold);font-weight:700;font-size:.9rem;padding:.48rem .68rem;transition:.18s}
    .add-btn:hover{background:var(--gold);color:#000}

    /* Badges */
    .tag-left,.tag-right{position:absolute;top:.4rem;padding:.12rem .38rem;border-radius:.5rem;font-weight:800;font-size:10.5px;line-height:1;display:inline-flex;align-items:center;gap:.25rem;z-index:2}
    .tag-left{left:.4rem;background:#16a34a;color:#fff}
    .tag-right{right:.4rem;background:#ef4444;color:#fff}
    .tag-ico{width:12px;height:12px;flex:0 0 12px}

    /* Swatches (reserve height even if none) */
    .swatches{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem;min-height:22px}
    .swatch{width:18px;height:18px;border-radius:9999px;border:1px solid #e5e7eb;cursor:pointer;position:relative;background:#f3f4f6;overflow:hidden}
    .swatch[data-img]{background-size:cover;background-position:center}
    .swatch:focus{outline:2px solid var(--gold);outline-offset:2px}
    .swatch.active{box-shadow:0 0 0 2px #fff inset,0 0 0 2px var(--gold)}

    /* Pager */
    .page-btn,.page-num{border:1px solid #e5e7eb;border-radius:.6rem;background:#fff;padding:.5rem .75rem;font-size:14px;line-height:1;transition:background .15s,border-color .15s,color .15s}
    .page-btn:hover,.page-num:hover{background:#f5f5f5}
    .page-btn[disabled]{opacity:.5;cursor:not-allowed}
    .page-num.active{border-color:var(--gold);color:var(--gold);font-weight:600}
    .page-ellipsis{padding:0 .4rem;color:#9ca3af}

    /* Drawer overlay / panel (ported out of sticky nav) */
    #sbOverlay{ z-index:var(--z-drawer-overlay,1900); position:fixed; inset:0 }
    #sidebar{ z-index:var(--z-drawer,1910); position:fixed; top:0; bottom:0; width:min(88vw,400px); max-width:90vw; background:#fff }


    /* ===== Cart variant picker modal ===== */
    .cart-pick-mask{position:fixed;inset:0;background:rgba(0,0,0,.48);display:none;z-index:var(--z-modal-overlay,2000)}
    .cart-pick-mask.active{display:block}
    .cart-pick-panel{position:fixed;inset:0;display:none;align-items:end;justify-content:center;z-index:var(--z-modal,2010);padding:1rem}
    .cart-pick-panel.active{display:flex}
    @media (min-width:640px){.cart-pick-panel{align-items:center}}
    .cart-pick-card{width:min(94vw,520px);max-height:88vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 26px 80px rgba(0,0,0,.28)}
    .cart-pick-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:14px 16px;border-bottom:1px solid #eee}
    .cart-pick-body{padding:16px;display:grid;gap:14px}
    .cart-pick-product{display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:center}
    .cart-pick-img{width:86px;height:86px;border-radius:14px;object-fit:cover;background:#f7f7f7;border:1px solid #eee}
    .cart-pick-title{font-weight:900;line-height:1.35}
    .cart-pick-price{font-weight:900;margin-top:4px;color:#111827}
    .cart-pick-label{font-weight:900;margin-bottom:8px}
    .cart-color-options,.cart-size-options{display:flex;flex-wrap:wrap;gap:.55rem}
    .cart-color-choice{min-width:42px;height:42px;border-radius:999px;border:2px solid #fff;outline:2px solid #e5e7eb;background:#ddd;background-size:cover;background-position:center;cursor:pointer;position:relative}
    .cart-color-choice.active{outline-color:#111827}
    .cart-color-choice.active::after{content:'✓';position:absolute;right:-5px;top:-5px;width:18px;height:18px;border-radius:999px;background:#111827;color:#fff;display:grid;place-items:center;font-size:12px}
    .cart-size-choice{border:1px solid #e5e7eb;border-radius:.8rem;padding:.5rem .8rem;font-weight:900;background:#fff;cursor:pointer;min-width:48px}
    .cart-size-choice.active{border-color:#111827;background:#f9fafb;box-shadow:0 3px 10px rgba(0,0,0,.06)}
    .cart-pick-error{display:none;color:#dc2626;font-size:.9rem;font-weight:800}
    .cart-pick-error.active{display:block}
    .cart-pick-foot{display:flex;gap:.6rem;justify-content:flex-end;padding:14px 16px;border-top:1px solid #eee}
    .cart-confirm-btn{border-radius:.8rem;padding:.65rem 1rem;background:#111827;color:#fff;font-weight:900}
   .cart-toast{
  position:fixed;
  z-index:var(--z-toast,3000);
  left:50%;
  bottom:24px;
  transform:translateX(-50%) translateY(20px);
  width:min(92vw,420px);
  background:#111827;
  color:#fff;
  border-radius:18px;
  box-shadow:0 20px 50px rgba(0,0,0,.25);
  padding:14px 16px;
  display:flex;
  align-items:center;
  gap:12px;
  opacity:0;
  pointer-events:none;
  transition:.25s ease;
}

.cart-toast.show{
  opacity:1;
  transform:translateX(-50%) translateY(0);
  pointer-events:auto;
}

.cart-toast-icon{
  width:38px;
  height:38px;
  border-radius:999px;
  background:#16a34a;
  display:grid;
  place-items:center;
  font-weight:900;
  flex:0 0 auto;
}

.cart-toast-body{
  flex:1;
  min-width:0;
}

.cart-toast-title{
  font-weight:900;
  font-size:15px;
}

.cart-toast-text{
  font-size:13px;
  opacity:.82;
  margin-top:2px;
}

.cart-toast-actions{
  display:flex;
  gap:8px;
  align-items:center;
}

.cart-toast-link{
  background:#fff;
  color:#111827;
  border-radius:999px;
  padding:8px 12px;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}

.cart-toast-close{
  width:28px;
  height:28px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.12);
  color:#fff;
}
    .cart-cancel-btn{border-radius:.8rem;padding:.65rem 1rem;border:1px solid #e5e7eb;font-weight:800;background:#fff}


/* ===== src/assets/css/chicona-ui-system.css ===== */
/* Chicona UI System — unified layering, dialogs, drawers, touch targets and safe areas. */
:root{
  --ui-nav-height:76px;
  --ui-nav-gap:12px;
  --z-content:1;
  --z-sticky:800;
  --z-maintenance:900;
  --z-nav:1000;
  --z-drawer-overlay:1900;
  --z-drawer:1910;
  --z-modal-overlay:2000;
  --z-modal:2010;
  --z-toast:3000;
  --z-loader:4000;
  --ui-safe-top:env(safe-area-inset-top,0px);
  --ui-safe-right:env(safe-area-inset-right,0px);
  --ui-safe-bottom:env(safe-area-inset-bottom,0px);
  --ui-safe-left:env(safe-area-inset-left,0px);
}

/* Utility/accessibility primitives */
.ui-sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
[hidden]{display:none!important}
[aria-disabled="true"]{pointer-events:none;cursor:default}
html.ui-scroll-locked,body.ui-scroll-locked{overflow:hidden!important;overscroll-behavior:none}

/* Language must be exclusive; never show Arabic and English together. */
html[lang^="ar"] .i18n-en,html[dir="rtl"] .i18n-en{display:none!important}
html[lang^="en"] .i18n-ar,html[dir="ltr"] .i18n-ar{display:none!important}


/* Embedded nav paint guard. */
#site-nav{min-height:56px}
html:not(.nav-ready) #site-nav{visibility:hidden;opacity:0}
html.nav-ready #site-nav{visibility:visible;opacity:1;transition:opacity .12s ease}
html:not(.nav-ready) :is(#sidebar,#sbOverlay){display:none!important}

/* Navigation and drawer */
#site-nav,header.nav{z-index:var(--z-nav)!important}
#sbOverlay,.sb-overlay{z-index:var(--z-drawer-overlay)!important}
#sidebar,.sb{
  box-sizing:border-box!important;
  z-index:var(--z-drawer)!important;
  display:flex!important;
  flex-direction:column!important;
  height:100vh!important;
  height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  padding-top:var(--ui-safe-top);
  padding-bottom:var(--ui-safe-bottom);
}
#sidebar .sb-head,.sb .sb-head{flex:0 0 auto}
#sidebar .sb-body,.sb .sb-body{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  padding-bottom:max(1rem,var(--ui-safe-bottom))!important;
}

/* Sticky summaries must clear the real dynamic nav height. */
.sticky-summary{top:calc(var(--ui-nav-height) + var(--ui-nav-gap))!important}

/* Maintenance notice participates in layout and stays below navigation/dialogs. */
.maintenance-banner{
  position:relative!important;
  inset:auto!important;
  z-index:var(--z-maintenance)!important;
  padding-top:max(.7rem,var(--ui-safe-top));
}

/* Unified dialog surfaces. Keep existing display/open classes intact. */
:is(#addrModal,#msgModal,#resetModal,#vModal,#reviewModal,#noticeModal,#authModal,#sizeModal,.modal,.ui-modal){
  z-index:var(--z-modal-overlay)!important;
  max-width:none;
}
:is(.modal-overlay,.modal-mask,.cart-choice-overlay,.cart-pick-mask,.vg-overlay,.ui-modal-backdrop){
  z-index:var(--z-modal-overlay)!important;
}
:is(.modal-panel,.cart-choice-panel,.cart-pick-panel,.ui-modal-positioner){
  z-index:var(--z-modal)!important;
}
:is(.modal-card,.modal-content,.cart-choice-card,.cart-pick-card,.ui-modal-card){
  background:#fff;
  max-height:calc(100dvh - max(2rem, var(--ui-safe-top) + var(--ui-safe-bottom)))!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.ui-modal-positioner{
  padding-top:max(1rem,var(--ui-safe-top))!important;
  padding-right:max(1rem,var(--ui-safe-right))!important;
  padding-bottom:max(1rem,var(--ui-safe-bottom))!important;
  padding-left:max(1rem,var(--ui-safe-left))!important;
}
#reviewModal .ui-modal-card,#reviewModal .modal-card{
  max-height:calc(100dvh - 2rem - var(--ui-safe-top) - var(--ui-safe-bottom))!important;
  overflow-y:auto!important;
}
#sizeModal .ui-modal-card,#sizeModal .modal-card{
  padding-bottom:var(--ui-safe-bottom);
}

/* Loaders are truly blocking and always above interactive UI. */
:is(#loader,#siteLoader,.site-loader,.page-loader,[data-page-loader]){
  z-index:var(--z-loader)!important;
  pointer-events:auto!important;
  overscroll-behavior:none;
}
#siteLoader.is-hidden{pointer-events:none!important}
:is(.toast,.cart-toast,.notice-toast,[role="status"].toast){z-index:var(--z-toast)!important}

/* Avoid invisible overlays intercepting clicks. */
:is(.modal-overlay,.modal-mask,.modal-panel,.cart-choice-overlay,.cart-choice-panel,.cart-pick-mask,.cart-pick-panel,.vg-overlay):not(.active):not(.show):not(.open){
  pointer-events:none!important;
}

/* Readable badges. Controls are owned by storefront-layout.css. */
.product-card :is(.tag-left,.tag-bxgy,.tag-right,.tag-right-bxgy,.offer-badge,.promo-badge,.badge){
  min-height:22px;
  font-size:clamp(10px,2.8vw,11.5px)!important;
  line-height:1.15!important;
  padding:.28rem .48rem!important;
}

/* Consistent minimum hit area for controls used as actions. */
:is(button,.btn,[role="button"]):not(.star):not(.gal-dot):not(.bc-dot):not(.thumb){min-height:44px}
.icon-btn{min-width:44px;min-height:44px}

/* Placeholder contact/social links are hidden until valid settings arrive. */
a[data-ui-placeholder-link][aria-disabled="true"]{display:none!important}

/* Modal footers and bottom sheets respect iPhone/Android safe areas. */
.modal-foot,.cart-choice-foot,.cart-pick-foot{padding-bottom:max(1rem,var(--ui-safe-bottom))!important}

/* Short-screen safety. */
@media (max-height:620px){
  :is(.modal-card,.modal-content,.cart-choice-card,.cart-pick-card,.ui-modal-card){
    max-height:calc(100dvh - 1rem)!important;
    border-radius:14px!important;
  }
}
@media (max-width:640px){
  :root{--ui-nav-gap:8px}
  .sticky-summary{position:static!important;top:auto!important}
  :is(.modal-overlay,.modal-panel,.ui-modal-positioner){
    padding-right:max(.75rem,var(--ui-safe-right))!important;
    padding-left:max(.75rem,var(--ui-safe-left))!important;
  }
}

@media print{
  :is(#loader,#siteLoader,.site-loader,.modal,.modal-overlay,.modal-panel,.ui-modal,.toast,.cart-toast){display:none!important}
  .sticky-summary{position:static!important;top:auto!important}
}

/* ===== Integrated production refinements (formerly hotfix v2) ===== */
:root{
  --link-text:#6f4c12;
  --gold-text:#7a5314;
  --focus-ring:#8a621a;
}
a,a:link,a:visited{color:inherit;text-decoration:none;}
a:hover{color:var(--link-text);}
a:not(.icon-btn):not(.social-btn):not(.brand):not(.product-card a):focus-visible,
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:8px;
}
.prose a,.legal-content a,.policy-content a,.footer-contact-list a,.inline-link,.section-link,.addr-manage{
  color:var(--link-text);font-weight:650;text-underline-offset:3px;
}
.prose a:hover,.legal-content a:hover,.policy-content a:hover,.inline-link:hover{filter:brightness(.82);}
.section-link,.unified-kicker,.hero-kicker,.footer-contact-label{color:var(--gold-text);}
.old,.price-old{text-decoration:line-through;}

body[data-page-name="cart"] #cartItemsMobile:not(:empty){display:grid;visibility:visible;opacity:1;min-height:1px;}
body[data-page-name="cart"] #cartItemsMobile:empty{display:none;}
body[data-page-name="cart"] .cart-render-error{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px;padding:12px;border:1px solid rgba(17,24,39,.09);border-radius:18px;background:#fff;}
body[data-page-name="cart"] .cart-render-error img{width:72px;height:72px;object-fit:cover;border-radius:14px;background:#f8fafc;}
body[data-page-name="cart"] .cart-render-error strong{display:block;color:#111827;line-height:1.45;overflow-wrap:anywhere;}

body[data-page-name="checkout"] #itemsList .line,body[data-page-name="order"] #itemsWrap .line{align-items:flex-start;}
body[data-page-name="checkout"] #itemsList .truncate,body[data-page-name="order"] #itemsWrap .truncate{white-space:normal;overflow:visible;text-overflow:clip;max-width:none;overflow-wrap:anywhere;line-height:1.45;}
@media(max-width:520px){
 body[data-page-name="checkout"] #itemsList .line,body[data-page-name="order"] #itemsWrap .line{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;}
 body[data-page-name="checkout"] #itemsList .line>.shrink-0:last-child{justify-self:end;}
 body[data-page-name="order"] #itemsWrap .line>.text-sm.text-right{width:100%;text-align:start;padding-inline-start:92px;}
}

#site-footer .footer-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.15fr);gap:clamp(1.25rem,3vw,2.5rem);align-items:start;width:100%;}
#site-footer .footer-col{min-width:0;}#site-footer .footer-list{display:grid;gap:.48rem;}#site-footer .social-row{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;margin-top:.8rem;}
#site-footer .footer-bottom{margin-top:1.6rem;padding-top:1rem;border-top:1px solid rgba(200,155,60,.16);display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;}
@media(max-width:767px){
 #site-footer,#site-footer .footer-wrap,#site-footer .footer-grid,#site-footer .footer-col,#site-footer .footer-bottom{text-align:center;}
 #site-footer .footer-wrap{padding:28px 16px max(24px,env(safe-area-inset-bottom));}
 #site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px;}
 #site-footer .footer-brand-col,#site-footer .footer-col:last-child{grid-column:1/-1;}
 #site-footer .footer-desc{max-width:520px;margin-inline:auto;line-height:1.75;}
 #site-footer .footer-list{justify-items:center;gap:.45rem;}
 #site-footer .footer-contact-list li{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.25rem;width:100%;overflow-wrap:anywhere;}
 #site-footer .social-row{justify-content:center;}#site-footer .social-btn{width:44px;height:44px;border-radius:14px;}
 #site-footer .footer-bottom{flex-direction:column;justify-content:center;line-height:1.7;}
}
@media(max-width:480px){#site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));}#site-footer .footer-brand-col,#site-footer .footer-col:last-child{grid-column:1/-1;}#site-footer .footer-col{padding:0 4px;}}

@media(max-width:767px){
 body[data-page-name="index"] .home-hero-shell{min-height:0;height:clamp(500px,72svh,620px);max-height:620px;}
 body[data-page-name="index"] .bc-img{object-position:center 38%;}
 body[data-page-name="index"] .bc-grad{background:linear-gradient(180deg,rgba(255,250,244,.04) 0%,rgba(255,250,244,.20) 45%,rgba(255,250,244,.96) 100%);}
 body[data-page-name="index"] .bc-box{align-items:flex-end;justify-content:center;text-align:center;padding:14px 14px 58px;}
 body[data-page-name="index"] .bc-box>div{width:min(100%,560px);padding:16px 14px 18px;border-radius:22px;background:rgba(255,255,255,.84);border:1px solid rgba(200,155,60,.22);box-shadow:0 14px 34px rgba(17,24,39,.10);backdrop-filter:blur(8px);}
 body[data-page-name="index"] .hero-kicker{justify-content:center;margin-bottom:6px;font-size:.82rem;gap:8px;color:var(--gold-text);}
 body[data-page-name="index"] .hero-title{font-size:clamp(2rem,10vw,2.75rem);line-height:1.05;letter-spacing:-.025em;}
 body[data-page-name="index"] .hero-sub{margin:9px auto 0;max-width:34rem;font-size:.96rem;line-height:1.55;}
 body[data-page-name="index"] .hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:15px;}
 body[data-page-name="index"] .hero-btn{width:100%;min-width:0;min-height:46px;padding:.72rem .6rem;border-radius:12px;font-size:.96rem;white-space:nowrap;}
 body[data-page-name="index"] .bc-dots{bottom:16px;gap:8px;}body[data-page-name="index"] .bc-dot{width:9px;height:9px;min-height:9px;padding:0;}
}
@media(max-width:360px){body[data-page-name="index"] .home-hero-shell{height:520px;}body[data-page-name="index"] .hero-actions{grid-template-columns:1fr;}body[data-page-name="index"] .bc-box{padding-bottom:52px;}body[data-page-name="index"] .hero-btn{min-height:42px;}}

/* Phase 2.7.2 canonical bilingual visibility guard. */
html[data-chicona-lang="ar"] .i18n-en{display:none!important}
html[data-chicona-lang="ar"] .i18n-ar{display:revert!important}
html[data-chicona-lang="en"] .i18n-ar{display:none!important}
html[data-chicona-lang="en"] .i18n-en{display:revert!important}


/* ===== R15.2.9 storefront UI unification ===== */
:root{
  --ui-radius-sm:12px;--ui-radius:16px;--ui-radius-lg:22px;
  --ui-border:rgba(17,24,39,.10);--ui-surface:#fff;--ui-muted:#6b7280;
  --ui-shadow:0 10px 28px rgba(17,24,39,.06);--ui-shadow-modal:0 24px 70px rgba(17,24,39,.20);
}
body.chicona-unified :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  min-height:46px;border-radius:var(--ui-radius-sm);border:1px solid var(--ui-border);background:#fff;
}
body.chicona-unified :is(.btn,.primary-btn,.secondary-btn,.view-btn,.add-btn,.btn-add,button[type="submit"]):not(.star){
  border-radius:var(--ui-radius-sm);font-weight:800;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease;
}
body.chicona-unified :is(.empty-state,.empty,.no-results,.error-state,.catalog-empty,[data-empty-state]){
  border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);padding:clamp(1.1rem,3vw,1.6rem);text-align:center;
}
body.chicona-unified :is(.product-card,.category-card,.sub-card,.offer-card,.vendor-card){border-color:var(--ui-border);}

.chicona-feedback-overlay{position:fixed;inset:0;z-index:var(--z-modal,2010);display:grid;place-items:center;padding:max(18px,var(--ui-safe-top)) max(18px,var(--ui-safe-right)) max(18px,var(--ui-safe-bottom)) max(18px,var(--ui-safe-left));background:rgba(17,24,39,.46);backdrop-filter:blur(7px);opacity:0;transition:opacity .18s ease;}
.chicona-feedback-overlay[hidden]{display:none!important}.chicona-feedback-overlay.show{opacity:1}
.chicona-feedback-card{position:relative;width:min(92vw,430px);max-height:calc(100dvh - 36px);overflow:auto;background:#fff;border:1px solid rgba(200,155,60,.20);border-radius:24px;box-shadow:var(--ui-shadow-modal);padding:28px 22px 22px;text-align:center;transform:translateY(8px) scale(.985);transition:transform .18s ease;}
.chicona-feedback-overlay.show .chicona-feedback-card{transform:none}
.chicona-feedback-close{position:absolute;top:10px;inset-inline-end:10px;width:40px;height:40px;min-height:40px;border:0;border-radius:12px;background:#f7f7f7;color:#374151;font-size:25px;line-height:1;display:grid;place-items:center;}
.chicona-feedback-icon{width:58px;height:58px;margin:4px auto 14px;border-radius:999px;display:grid;place-items:center;background:#edf8f2;color:#147a48;font-size:27px;font-weight:900;box-shadow:inset 0 0 0 1px rgba(20,122,72,.12)}
.chicona-feedback-overlay[data-type="error"] .chicona-feedback-icon{background:#fff1f0;color:#b42318;box-shadow:inset 0 0 0 1px rgba(180,35,24,.12)}
.chicona-feedback-overlay[data-type="info"] .chicona-feedback-icon{background:#fff8e8;color:#8a621a;box-shadow:inset 0 0 0 1px rgba(138,98,26,.14)}
.chicona-feedback-title{margin:0;color:#111827;font-size:clamp(1.12rem,4vw,1.3rem);font-weight:900;line-height:1.35}
.chicona-feedback-message{margin:.65rem auto 0;max-width:34ch;color:#5f6672;font-size:.94rem;line-height:1.75;overflow-wrap:anywhere}
.chicona-feedback-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
.chicona-feedback-btn{min-height:46px;border-radius:13px;padding:.72rem .8rem;display:inline-flex;align-items:center;justify-content:center;font-weight:850;text-decoration:none!important}
.chicona-feedback-btn.primary{background:#111827;color:#fff!important;border:1px solid #111827}.chicona-feedback-btn.secondary{background:#fff;color:#374151;border:1px solid var(--ui-border)}
.ui-feedback-open{overflow:hidden!important}
@media(max-width:420px){.chicona-feedback-card{padding:26px 16px 18px;border-radius:20px}.chicona-feedback-actions{grid-template-columns:1fr}.chicona-feedback-btn.primary{order:-1}}
@media(prefers-reduced-motion:reduce){.chicona-feedback-overlay,.chicona-feedback-card{transition:none!important}}

/* R15.2.10.6 modal performance: backdrop blur is costly in Android WebView.
   Keep the same dimmed surface while avoiding GPU-heavy live blur on phones/apps. */
body.chicona-app-mode :is(.modal-overlay,.modal-mask,.cart-choice-overlay,.cart-pick-mask,.vg-overlay,.checkout-gate,.account-delete-modal,.chicona-feedback-overlay,.chicona-confirm-overlay),
body.chicona-app-mode :is(.modal,.vg-overlay)::before{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
@media(max-width:767px){
  :is(.modal-overlay,.modal-mask,.cart-choice-overlay,.cart-pick-mask,.vg-overlay,.checkout-gate,.account-delete-modal,.chicona-feedback-overlay,.chicona-confirm-overlay),
  :is(.modal,.vg-overlay)::before{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  :is(.modal-card,.modal-content,.cart-choice-card,.cart-pick-card,.chicona-feedback-card,.ui-modal-card){
    transition-duration:.12s!important;
  }
}
@media (hover:none), (pointer:coarse){
  :is(.modal-overlay,.modal-mask,.cart-choice-overlay,.cart-pick-mask,.vg-overlay,.checkout-gate,.account-delete-modal,.chicona-feedback-overlay,.chicona-confirm-overlay),
  :is(.modal,.vg-overlay)::before{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  :is(.modal-card,.modal-content,.cart-choice-card,.cart-pick-card,.chicona-feedback-card,.ui-modal-card){
    transition-duration:.1s!important;
  }
}


/* ===== src/assets/css/catalog-filter-system.css ===== */
/* Chicona Phase 2.10.8.2 — unified catalog filter/sort UI + deterministic closed state */
:root{
  --catalog-gold:#c99e4d;
  --catalog-ink:#111827;
  --catalog-muted:#6b7280;
  --catalog-line:#e8e1d5;
  --catalog-soft:#fffaf2;
  --catalog-card:#ffffff;
}
#openFilters.chip-btn::before,#openSort.chip-btn::before{
  width:16px;height:16px;display:inline-block;flex:0 0 auto;
  background:currentColor;content:"";
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:contain;mask-size:contain;
}
#openFilters.chip-btn::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
#openSort.chip-btn::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 6h12M8 12h8M8 18h4M4 5v14' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 6h12M8 12h8M8 18h4M4 5v14' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.chip-badge{
  min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--catalog-gold)!important;color:#fff!important;
  font-size:10px!important;font-weight:900!important;
}

/* Modal shell.
   These base rules live in the shared stylesheet deliberately: directory pages
   used to repeat them in page CSS, while offers.html did not. Without a shared
   closed state, the offers filter rendered as an ordinary in-flow block before
   any user action. */
#modalMask.modal-mask{
  position:fixed!important;
  inset:0!important;
  display:none!important;
  z-index:22000!important;
  background:rgba(17,24,39,.42)!important;
  backdrop-filter:blur(2px)!important;
  -webkit-backdrop-filter:blur(2px)!important;
}
#filtersPanel.modal-panel,#sortPanel.modal-panel{
  position:fixed!important;
  inset:0!important;
  display:none!important;
  place-items:center!important;
  padding:1rem!important;
  z-index:22010!important;
}
#modalMask.modal-mask.active{display:block!important;}
#filtersPanel.modal-panel.active,#sortPanel.modal-panel.active{display:grid!important;}
#filtersPanel .modal-card,#sortPanel .modal-card{
  width:min(94vw,760px)!important;
  max-height:min(84vh,760px)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  border:1px solid rgba(201,158,77,.23)!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 30px 80px rgba(17,24,39,.24)!important;
}
#filtersPanel .modal-head,#sortPanel .modal-head{
  min-height:68px!important;
  padding:16px 18px!important;
  border-bottom:1px solid #eee7da!important;
  background:linear-gradient(180deg,#fff 0%,#fffaf3 100%)!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
}
#filtersPanel .modal-head strong,#sortPanel .modal-head strong{
  font-size:1.12rem!important;font-weight:900!important;color:var(--catalog-ink)!important;
}
#filtersPanel .modal-body,#sortPanel .modal-body{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:18px!important;
  overflow:auto!important;
  overscroll-behavior:contain;
}
#filtersPanel .modal-body{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
#filtersPanel .field{
  min-width:0;
  display:flex;flex-direction:column;gap:7px;
  padding:13px;
  border:1px solid #eee7dc;
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#fffcf7);
}
#filtersPanel .field.catalog-span-2{grid-column:1/-1;}
#filtersPanel .field label{
  color:#374151!important;font-size:.86rem!important;font-weight:850!important;
}
.catalog-price-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;}

/* Product option fields stay inside the scrollable filter card. */
#filtersPanel .modal-body > #cx-filters{
  grid-column:1/-1;min-width:0;margin:0;padding:13px;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;
  border:1px solid #eee7dc;border-radius:18px;
  background:linear-gradient(180deg,#fff,#fffcf7);
}
#filtersPanel #cx-filters legend{padding-inline:4px;color:#374151;font-size:.86rem;font-weight:850;}
#filtersPanel #cx-filters .cx-field{min-width:0;margin:0;}
#filtersPanel #cx-filters input{min-width:0;}

/* Sort choices become touch-friendly cards */
#sortPanel .modal-body .grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;
}
#sortPanel label.inline-flex,
#sortPanel .catalog-sort-option{
  min-height:50px;
  display:flex!important;align-items:center!important;gap:10px!important;
  border:1px solid #e7e0d4!important;border-radius:16px!important;
  padding:12px 14px!important;background:#fff!important;
  cursor:pointer!important;font-weight:750!important;
  transition:border-color .16s ease, background .16s ease, transform .16s ease!important;
}
#sortPanel label.inline-flex:hover,#sortPanel .catalog-sort-option:hover{
  border-color:rgba(201,158,77,.55)!important;background:#fffcf7!important;transform:translateY(-1px);
}
#sortPanel input[type="radio"]{accent-color:var(--catalog-gold);width:16px;height:16px;flex:0 0 auto;}

/* Sticky actions */
#filtersPanel .modal-foot,#sortPanel .modal-foot{
  position:sticky!important;bottom:0!important;z-index:3!important;
  padding:14px 18px calc(14px + env(safe-area-inset-bottom))!important;
  border-top:1px solid #eee7dc!important;background:rgba(255,255,255,.97)!important;
  backdrop-filter:blur(12px);
  display:flex!important;gap:10px!important;
}

/* Compact checkbox/toggle cards */
.catalog-check{
  display:flex;align-items:center;gap:10px;min-height:46px;
  border:1px solid #e7e0d4;border-radius:14px;padding:10px 12px;background:#fff;
  cursor:pointer;font-weight:800;
}
.catalog-check input{width:16px;height:16px;accent-color:var(--catalog-gold);}

.catalog-filter-note{
  grid-column:1/-1;color:#6b7280;font-size:.78rem;line-height:1.55;
  padding:0 2px;
}

@media (max-width:767px){
  #filtersPanel.modal-panel.active,#sortPanel.modal-panel.active{
    display:flex!important;align-items:flex-end!important;justify-content:center!important;
  }
  #filtersPanel .modal-card,#sortPanel .modal-card{
    width:100%!important;max-width:none!important;max-height:88dvh!important;
    border-radius:26px 26px 0 0!important;border-bottom:0!important;
  }
  #filtersPanel .modal-card::before,#sortPanel .modal-card::before{
    content:"";display:block;width:44px;height:5px;border-radius:999px;background:#d7d7d7;margin:9px auto -2px;
  }
  #filtersPanel .modal-body{grid-template-columns:1fr!important;padding:14px!important;gap:10px!important;}
  #filtersPanel .modal-body > #cx-filters{grid-template-columns:1fr;}
  #filtersPanel .field.catalog-span-2{grid-column:auto;}
  #sortPanel .modal-body .grid{grid-template-columns:1fr!important;}
  #filtersPanel .modal-head,#sortPanel .modal-head{min-height:60px!important;padding:12px 15px!important;}
  #filtersPanel .modal-foot,#sortPanel .modal-foot{padding:12px 14px calc(12px + env(safe-area-inset-bottom))!important;}
}

/* Native app: catalog sheets are true top-level app sheets.
   They cover the bottom navigation while open so no controls are hidden behind it. */
body.chicona-app-mode.chicona-catalog-overlay-open .chicona-native-bottom-nav{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(110%)!important;
}
body.chicona-app-mode #modalMask.modal-mask{
  z-index:2147482500!important;
}
body.chicona-app-mode #filtersPanel.modal-panel,
body.chicona-app-mode #sortPanel.modal-panel{
  z-index:2147482600!important;
  bottom:0!important;
  padding-bottom:0!important;
}
body.chicona-app-mode #filtersPanel .modal-card,
body.chicona-app-mode #sortPanel .modal-card{
  max-height:calc(100dvh - max(8px,var(--chicona-safe-top)))!important;
}
body.chicona-app-mode #filtersPanel .modal-foot,
body.chicona-app-mode #sortPanel .modal-foot{
  padding-bottom:calc(14px + max(env(safe-area-inset-bottom),10px))!important;
}
@media (prefers-reduced-motion:reduce){
  #openFilters.chip-btn,#openSort.chip-btn,#sortPanel label.inline-flex{transition:none!important;}
  body.chicona-app-mode .chicona-native-bottom-nav{transition:none!important;}
}
/* Bounded reference options: controls appear only for partial/error/search views. */
.catalog-lookup-help{margin-top:.4rem;min-width:0;}
.catalog-lookup-help[hidden]{display:none!important;}
.catalog-lookup-help [role="status"]{font-size:.8rem;line-height:1.5;color:#4b5563;margin:.35rem 0;}
.catalog-lookup-tools{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;}
.catalog-lookup-tools input[type="search"]{flex:1 1 10rem;min-width:0;width:100%;}
.catalog-lookup-tools .chip-btn{flex:0 0 auto;white-space:normal;}

