:root{
  --ps-bg:#fffaf3;
  --ps-bg-soft:#f4fbf7;
  --ps-surface:#ffffff;
  --ps-surface-2:#fff7ec;
  --ps-text:#17332b;
  --ps-muted:#64756f;
  --ps-primary:#087f5b;
  --ps-primary-dark:#056148;
  --ps-primary-soft:#dff5eb;
  --ps-accent:#ff6b57;
  --ps-accent-dark:#e6503d;
  --ps-accent-soft:#fff0ed;
  --ps-violet:#7057d9;
  --ps-gold:#f4b740;
  --ps-border:#e4ece7;
  --ps-danger:#dc3f4f;
  --ps-shadow-sm:0 8px 24px rgba(23,51,43,.07);
  --ps-shadow:0 18px 48px rgba(23,51,43,.10);
  --ps-radius:18px;
  --ps-radius-lg:28px;
}
body{font-family:'Tajawal',sans-serif;}
.container>section,.container>.product-group,.products>.product-group{margin-bottom:var(--ps-section-gap,24px);}
.group-grid{grid-template-columns:repeat(var(--ps-products-per-row,4),minmax(0,1fr))!important;}
.card,.product-card,.panel,.filters,.subfilters{border-radius:var(--ps-radius,20px)!important;}
body[data-ps-cards="flat"] .card,body[data-ps-cards="flat"] .product-card{box-shadow:none!important;}
body[data-ps-cards="outlined"] .card,body[data-ps-cards="outlined"] .product-card{box-shadow:none!important;border:2px solid var(--ps-primary)!important;}
@media(max-width:900px){.group-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:520px){
  .page-shell{padding-left:4px!important;padding-right:4px!important;}
  header{margin:5px 5px 0!important;padding:7px 8px!important;gap:7px!important;border-radius:15px!important;top:5px!important;}
  header .hamburger{width:36px!important;height:36px!important;border-radius:11px!important;font-size:20px!important;}
  header .logo{font-size:16px!important;letter-spacing:0!important;}
  header .icons{display:flex!important;margin-inline-start:auto!important;}
  header .icons span{width:34px!important;height:34px!important;margin-left:4px!important;border-radius:10px!important;font-size:17px!important;}
  header .search-header{flex-basis:100%!important;}
  header .search-header input{height:36px!important;padding:7px 12px!important;font-size:13px!important;}
  .hero{margin-top:8px!important;padding:12px!important;border-radius:18px!important;}
  .hero .eyebrow{display:none!important;}
  .hero h1{font-size:22px!important;line-height:1.25!important;margin:0 0 5px!important;}
  .hero p{font-size:13px!important;line-height:1.45!important;margin:0!important;}
  .product-group{margin-bottom:12px!important;padding:0!important;border-radius:0!important;box-shadow:none!important;}
  .product-group-head{padding:0 6px!important;}
  .group-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;}
  .group-grid .card{min-width:0!important;max-width:none!important;width:100%!important;padding:0 0 5px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;column-gap:5px!important;align-items:center!important;overflow:hidden!important;}
  .group-grid .card:hover{transform:none!important;box-shadow:none!important;}
  .group-grid .card img{grid-column:1/-1!important;width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:cover!important;border-radius:0!important;margin:0 0 5px!important;}
  .group-grid .product-title-row{grid-column:1!important;min-width:0!important;padding-inline-start:6px!important;display:block!important;}
  .group-grid .card h4{font-size:13px!important;line-height:1.25!important;min-height:0!important;white-space:nowrap!important;text-overflow:ellipsis!important;overflow:hidden!important;display:block!important;}
  .group-grid .price{grid-column:2!important;font-size:13px!important;white-space:nowrap!important;padding-inline-end:6px!important;margin:0!important;}
  .group-grid .shop-name,.group-grid .card-type,.group-grid .product-code,.group-grid .shop-contact,.group-grid .product-colors-inline,.group-grid .card>button{display:none!important;}
}
@media(max-width:320px){.group-grid{grid-template-columns:1fr!important;}}

*{scrollbar-color:#acd9c8 transparent;}
html{scroll-behavior:smooth;}
body{
  color:var(--ps-text)!important;
  background:
    radial-gradient(circle at 8% 3%,color-mix(in srgb,var(--ps-accent) 18%,transparent),transparent 27%),
    radial-gradient(circle at 93% 8%,color-mix(in srgb,var(--ps-primary) 16%,transparent),transparent 28%),
    linear-gradient(180deg,var(--ps-bg) 0%,color-mix(in srgb,var(--ps-bg) 82%,var(--ps-surface)) 55%,var(--ps-surface) 100%)!important;
}
body::selection{background:#bdebd9;color:#073d2c;}
a{color:var(--ps-primary);}

header,.top-bar,.topbar{
  background:color-mix(in srgb,var(--ps-surface) 90%,transparent)!important;
  color:var(--ps-text)!important;
  border:1px solid rgba(228,236,231,.95)!important;
  box-shadow:var(--ps-shadow-sm)!important;
  backdrop-filter:blur(20px)!important;
  -webkit-backdrop-filter:blur(20px)!important;
}
header .logo,header h1,.brand{color:var(--ps-primary-dark)!important;font-weight:900!important;letter-spacing:-.5px!important;}

button,.btn,.action,.action-btn,.cat-btn,.filter-pill,.back-btn,.home-link,.preview-shop-link{
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
button:hover,.btn:hover,.action:hover,.action-btn:hover,.cat-btn:hover,.filter-pill:hover,.back-btn:hover,.home-link:hover,.preview-shop-link:hover{
  transform:translateY(-2px);
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(255,107,87,.25)!important;
  outline-offset:2px;
}

.add-btn,.action,.btn.primary,.action-btn.primary,.primary-btn{
  background:linear-gradient(135deg,var(--ps-accent),var(--ps-primary))!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(255,107,87,.25)!important;
}
.edit-btn,.show-btn,.secondary-btn,.btn-secondary,.btn.secondary,.back-btn,.preview-shop-link{
  background:linear-gradient(135deg,var(--ps-primary),var(--ps-accent))!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 9px 22px rgba(8,127,91,.18)!important;
}
.status-btn,.subscription-btn{
  background:linear-gradient(135deg,var(--ps-violet),#8b72ee)!important;
  color:#fff!important;
}
.delete-btn,.logout-btn,.remove-btn{background:linear-gradient(135deg,var(--ps-danger),#ee6673)!important;color:#fff!important;}

input,select,textarea{
  color:var(--ps-text)!important;
  background:#fff!important;
  border:1px solid var(--ps-border)!important;
  border-radius:14px!important;
  box-shadow:0 2px 0 rgba(23,51,43,.02)!important;
}
input:focus,select:focus,textarea:focus{
  border-color:#48b994!important;
  box-shadow:0 0 0 4px rgba(8,127,91,.10)!important;
}

body[data-ps-header="solid"] header{backdrop-filter:none!important;background:var(--ps-primary)!important;color:#fff!important;}
body[data-ps-header="minimal"] header{box-shadow:none!important;border:0!important;background:var(--ps-surface)!important;color:var(--ps-text)!important;}

.card,.panel,.form,.stat-card,.plan,.pay-card,.product-group,.filter-block,.shop-info-card,.shop-image-upload-card,.account-form{
  background:color-mix(in srgb,var(--ps-surface) 96%,transparent)!important;
  border:1px solid var(--ps-border)!important;
  box-shadow:var(--ps-shadow-sm)!important;
}
.card,.panel,.form,.plan,.pay-card,.product-group,.filter-block,.shop-info-card,.shop-image-upload-card{border-radius:var(--ps-radius)!important;}
.card:hover,.plan:hover,.shop-info-card:hover{box-shadow:var(--ps-shadow)!important;transform:translateY(-3px);}
.card,.plan,.shop-info-card{transition:transform .22s ease,box-shadow .22s ease!important;}

.price,.stat-value{color:var(--ps-accent-dark)!important;}
.shop-name,.shop-line,.group-title,.section-title,.panel-title,h1,h2,h3{color:var(--ps-text)!important;}
.subtext,.small-muted,.card-type,.card-meta,.code,.qty,.stat-label,.catalog-note,.shop-item-meta{color:var(--ps-muted)!important;}

table{background:#fff!important;border:1px solid var(--ps-border)!important;box-shadow:var(--ps-shadow-sm)!important;}
th{background:linear-gradient(135deg,var(--ps-primary-dark),var(--ps-primary))!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important;}
td{border-color:var(--ps-border)!important;}
tbody tr:nth-child(even){background:#f8fcfa!important;}
tbody tr:hover{background:var(--ps-primary-soft)!important;}

.hero{
  background:
    radial-gradient(circle at 82% 22%,rgba(255,255,255,.18),transparent 24%),
    linear-gradient(135deg,var(--ps-primary) 0%,var(--ps-accent) 100%)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 24px 60px rgba(8,127,91,.22)!important;
}
.hero h1,.hero h2,.hero p,.hero .eyebrow,.hero .shop-tagline,.hero .shop-description{color:#fff!important;}
.eyebrow{background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.25)!important;}

.filters,.subfilters,.advanced{
  background:color-mix(in srgb,var(--ps-surface) 92%,transparent)!important;
  border:1px solid var(--ps-border)!important;
  box-shadow:var(--ps-shadow-sm)!important;
}

@media (max-width:520px){
  .advanced{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    flex-direction:unset!important;
    gap:6px!important;
    padding:8px!important;
  }
  .advanced input,.advanced select{
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    padding:7px!important;
    font-size:12px!important;
  }
}
.filter-btn.maincat-btn{color:var(--ps-muted)!important;}
.filter-btn.maincat-btn.active{color:var(--ps-primary)!important;border-bottom-color:var(--ps-accent)!important;}
.filter-icon-circle{background:linear-gradient(145deg,#fff,#f0faf5)!important;border-color:#d8e9e1!important;}
.filter-btn.secondary.icon-filter.active .filter-icon-circle{border-color:var(--ps-accent)!important;box-shadow:0 0 0 4px rgba(255,107,87,.14),0 10px 22px rgba(23,51,43,.12)!important;}
.filter-btn.secondary.icon-filter.active .filter-icon-label{color:var(--ps-accent-dark)!important;}

.message.success,.success,.status-msg.success{background:var(--ps-primary-soft)!important;color:#056148!important;border-color:#a9dec9!important;}
.message.error,.error,.status-msg.error{background:#fff0f1!important;color:#a52736!important;border-color:#ffcbd0!important;}
.loading{color:var(--ps-primary)!important;}

.mobile-menu,.shops-drawer{background:#fff!important;color:var(--ps-text)!important;border:1px solid var(--ps-border)!important;box-shadow:var(--ps-shadow)!important;}
.mobile-menu a{color:var(--ps-text)!important;}
.shop-item:hover{background:var(--ps-primary-soft)!important;}
.hamburger,.icons>*,.icon-btn{background:var(--ps-primary-soft)!important;color:var(--ps-primary-dark)!important;border-color:#c9e9dc!important;}
.shop-home-btn{
  width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;
  border-radius:12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  background:var(--ps-primary-soft)!important;color:var(--ps-primary-dark)!important;
  border:1px solid #c9e9dc!important;box-shadow:none!important;
}

.main-image-wrap,.gallery,.image-viewer,.modal-backdrop{background:rgba(7,35,28,.90)!important;}
.product-modal{background:#fff!important;color:var(--ps-text)!important;border:1px solid var(--ps-border)!important;box-shadow:var(--ps-shadow)!important;}
.color-dot{box-shadow:0 0 0 2px #fff,0 0 0 3px #d8e2dd!important;}
.store-product-group{width:100%;margin:0 0 22px;}
.store-product-group .group-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.store-product-group .card img{width:100%;height:220px;object-fit:cover;}
body:has(.store-product-group) #products{display:block!important;}

@media(max-width:640px){
  :root{--ps-radius:16px;--ps-radius-lg:22px;}
  header,.top-bar,.topbar{border-radius:18px!important;}
  .card,.panel,.form,.product-group{box-shadow:0 10px 28px rgba(23,51,43,.08)!important;}
  .filter-icon-circle{width:54px!important;height:54px!important;}
  .store-product-group .group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  #products .product-group .group-grid{
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    gap:4px!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch;
  }
  #products .product-group .group-grid::-webkit-scrollbar{display:none!important;}
  #products .product-group .group-grid>.card{
    flex:0 0 calc(50% - 2px)!important;
    width:calc(50% - 2px)!important;
    min-width:calc(50% - 2px)!important;
    max-width:calc(50% - 2px)!important;
    scroll-snap-align:start!important;
  }
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important;}}
