/* ===== Theme-independent layout (no theme selectors) =====
   .dsh-stage  : wrapper printed by the plugin template; neutralises flex/grid/float parents of any theme.
   .dsh-bleed  : full-viewport band. CSS gives a sane first paint; the small script in the frontend JS measures the
               real position and either fits it exactly or falls back to the container width (.is-contained). */
.dsh-stage{display:block;width:100%;max-width:none;min-width:0;flex:1 1 100%;grid-column:1/-1;float:none;clear:both;margin:0;padding:0;box-sizing:border-box}
main.dsh-stage-canvas{margin-block:0!important}
body.dsh-on{overflow-x:clip}
.dsh-shop.dsh-bleed{width:100vw;max-width:none!important;position:relative;margin-inline:calc(50% - 50vw)}
.dsh-shop.dsh-bleed.is-fit{margin-inline:0!important}
.dsh-shop.dsh-bleed.is-contained{width:100%!important;left:auto!important;margin-inline:0!important}

html{scroll-behavior:smooth}

/* ===== Tokens (colors/fonts/radius injected from the admin or inherited from Biodite Inspire Home) ===== */
.dsh-shop{
	--dsh-c1:#f2784b;--dsh-c2:#0f766e;--dsh-c3:#0b2f3a;--dsh-r:20px;
	--dsh-fh:Tahoma,"Segoe UI",Arial,sans-serif;--dsh-fb:Tahoma,"Segoe UI",Arial,sans-serif;
	--dsh-grad:linear-gradient(135deg,var(--dsh-c2) 0%,var(--dsh-c3) 100%);
	--dsh-bg:#f5faf9;--dsh-card:#fff;--dsh-text:#14313a;--dsh-muted:#5b7178;--dsh-line:#d9e6e4;
	--dsh-sh1:0 2px 8px rgba(61,31,69,.05);--dsh-sh2:0 12px 30px rgba(61,31,69,.11);
	direction:rtl;text-align:right;background:var(--dsh-bg);color:var(--dsh-text);
	font-family:var(--dsh-fb);line-height:1.7;overflow-x:hidden;overflow-x:clip;
}
.dsh-shop *,.dsh-shop *::before,.dsh-shop *::after{box-sizing:border-box}
.dsh-shop a{color:inherit;text-decoration:none}
.dsh-shop img{max-width:100%;height:auto;display:block}
.dsh-shop h1,.dsh-shop h2,.dsh-shop h3,.dsh-shop h4{font-family:var(--dsh-fh);color:var(--dsh-text);margin:0;line-height:1.35}
.dsh-shop p{margin:0}
.dsh-shop [id]{scroll-margin-top:84px}
.dsh-wrap{max-width:1240px;margin:0 auto;padding:0 18px}

/* ===== Header band ===== */
.dsh-top{position:relative;overflow:hidden;padding:40px 0 34px;background:#fff;border-bottom:1px solid var(--dsh-line);text-align:center}
.dsh-top::before{content:"";position:absolute;inset:-60% -8% auto auto;width:420px;height:420px;border-radius:50%;background:var(--dsh-grad);opacity:.1;pointer-events:none}
.dsh-top .dsh-wrap{position:relative}
.dsh-top h1,.dsh-top h2{font-size:1.9rem;font-weight:900}
.dsh-top h1::after,.dsh-top h2::after{content:"";display:block;width:56px;height:4px;border-radius:4px;background:var(--dsh-grad);margin:12px auto 0}
.dsh-top p{margin-top:12px;color:var(--dsh-muted)}
.dsh-main{padding-top:26px;padding-bottom:44px}

/* ===== Search + sort ===== */
.dsh-bar{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.dsh-search{display:flex;flex:1;background:#fff;border:2px solid var(--dsh-line);border-radius:calc(var(--dsh-r) * .6);overflow:hidden;transition:border-color .25s,box-shadow .25s}
.dsh-search:focus-within{border-color:var(--dsh-c2);box-shadow:var(--dsh-sh2)}
.dsh-search input[type=search]{flex:1;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:12px 16px;font-family:var(--dsh-fb);font-size:1rem;color:var(--dsh-text);height:auto}
.dsh-search button{border:0;padding:0 22px;cursor:pointer;font-family:var(--dsh-fb);font-weight:800;color:#fff;background:var(--dsh-grad);transition:filter .25s}
.dsh-search button:hover{filter:brightness(1.08)}
.dsh-sort{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.92rem}
.dsh-sort select{flex:1;min-width:0;padding:11px 14px;border:2px solid var(--dsh-line);border-radius:calc(var(--dsh-r) * .6);background:#fff;font-family:var(--dsh-fb);font-size:.95rem;color:var(--dsh-text);height:auto}
.dsh-sort select:focus{outline:0;border-color:var(--dsh-c2)}

/* ===== Category chips (horizontal scroller on mobile) ===== */
.dsh-chips{display:flex;gap:8px;margin:0 -18px 20px;padding:2px 18px 8px;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.dsh-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:50px;background:#fff;border:1px solid var(--dsh-line);font-size:.92rem;font-weight:700;white-space:nowrap;transition:transform .25s,border-color .25s,box-shadow .25s}
.dsh-chip img{width:26px;height:26px;border-radius:50%;object-fit:cover}
.dsh-chip small{color:var(--dsh-muted);font-weight:600}
.dsh-chip:hover{transform:translateY(-2px);border-color:var(--dsh-c2);box-shadow:var(--dsh-sh1)}
.dsh-chip.is-on{background:var(--dsh-grad);border-color:transparent;color:#fff}
.dsh-chip.is-on small{color:rgba(255,255,255,.85)}

/* ===== Results ===== */
.dsh-count{margin-bottom:14px;color:var(--dsh-muted);font-weight:700;font-size:.92rem}
.dsh-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.dsh-card{position:relative;display:flex;flex-direction:column;background:var(--dsh-card);border:1px solid var(--dsh-line);border-radius:var(--dsh-r);overflow:hidden;box-shadow:var(--dsh-sh1);transition:transform .3s,border-color .3s,box-shadow .3s}
.dsh-card:hover{transform:translateY(-6px);border-color:var(--dsh-c2);box-shadow:var(--dsh-sh2)}
.dsh-card-img{position:relative;display:block;aspect-ratio:1/1;background:#eaf3f1;overflow:hidden}
.dsh-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s,opacity .35s}
.dsh-card:hover .dsh-card-img img{transform:scale(1.07)}
.dsh-card-img .dsh-img2{position:absolute;inset:0;opacity:0}
@media(hover:hover){.dsh-card:hover .dsh-img2{opacity:1}}
.dsh-card-body{display:flex;flex-direction:column;gap:8px;padding:14px;flex:1}
.dsh-card h3{font-size:.95rem;font-weight:700;min-height:2.8em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dsh-price{font-size:1.1rem;font-weight:900;color:var(--dsh-c3)}
.dsh-price del{margin-inline-end:6px;color:#8fa3a9;font-size:.85rem;font-weight:500}
.dsh-price ins{text-decoration:none}
.dsh-tag{position:absolute;top:12px;inset-inline-start:12px;z-index:2;padding:3px 12px;border-radius:50px;background:var(--dsh-c3);color:#fff;font-size:.8rem;font-weight:800}
.dsh-tag-off{background:#455c63}
.dsh-stock{display:inline-block;align-self:flex-start;padding:2px 10px;border-radius:50px;background:#fff1f0;color:#d1281c;font-size:.8rem;font-weight:800}

/* ===== Buttons ===== */
.dsh-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border:0;border-radius:calc(var(--dsh-r) * .6);cursor:pointer;font-family:var(--dsh-fb);font-size:1rem;font-weight:800;line-height:1.3;background:var(--dsh-grad);color:#fff!important;box-shadow:0 8px 22px rgba(0,0,0,.14);transition:transform .25s,box-shadow .25s,filter .25s}
.dsh-btn::after{content:"";position:absolute;top:0;bottom:0;left:-80%;width:55%;transform:skewX(-20deg);background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s}
.dsh-btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.2);filter:brightness(1.06);color:#fff!important}
.dsh-btn:hover::after{left:130%}
.dsh-btn:focus-visible,.dsh-chip:focus-visible,.dsh-pg:focus-visible,.dsh-card a:focus-visible{outline:3px solid var(--dsh-c2);outline-offset:3px}
.dsh-card .dsh-btn{width:100%;margin-top:auto;padding:12px 8px;font-size:.92rem}

/* ===== Pagination ===== */
.dsh-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:32px}
.dsh-pg{min-width:42px;height:42px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#fff;border:1px solid var(--dsh-line);font-weight:800;transition:transform .25s,border-color .25s}
a.dsh-pg:hover{transform:translateY(-2px);border-color:var(--dsh-c2);color:var(--dsh-c2)}
.dsh-pg.is-on{background:var(--dsh-grad);border-color:transparent;color:#fff}
.dsh-dots{border:0;background:transparent;min-width:auto;padding:0 4px}

/* ===== Empty state ===== */
.dsh-empty{text-align:center;padding:48px 16px;background:#fff;border:1px dashed var(--dsh-line);border-radius:var(--dsh-r)}
.dsh-empty-ic{font-size:2.6rem;margin-bottom:8px}
.dsh-empty h3{font-size:1.2rem;margin-bottom:6px}
.dsh-empty p{color:var(--dsh-muted);margin-bottom:18px}
.dsh-empty-msg{text-align:center;color:var(--dsh-muted)}

/* ===== Trust ===== */
.dsh-trust{padding:44px 0;background:#fff;border-top:1px solid var(--dsh-line)}
.dsh-trust-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.dsh-trust-item{padding:22px 12px;text-align:center;background:var(--dsh-bg);border:1px solid var(--dsh-line);border-radius:var(--dsh-r);transition:transform .3s,border-color .3s,background .3s,box-shadow .3s}
.dsh-trust-item:hover{transform:translateY(-5px);background:#fff;border-color:var(--dsh-c2);box-shadow:var(--dsh-sh2)}
.dsh-trust-ic{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0 auto 12px;border-radius:50%;background:#fff;font-size:1.7rem;transition:background .3s,transform .3s}
.dsh-trust-item:hover .dsh-trust-ic{background:var(--dsh-grad);transform:scale(1.1)}
.dsh-trust-item h4{font-size:1rem;font-weight:800;margin-bottom:4px}
.dsh-trust-item p{color:var(--dsh-muted);font-size:.85rem}

/* ===== Tablet / Desktop ===== */
@media(min-width:768px){
	.dsh-top{padding:54px 0 46px}
	.dsh-top h1,.dsh-top h2{font-size:2.4rem}
	.dsh-main{padding-top:34px;padding-bottom:60px}
	.dsh-bar{flex-direction:row;align-items:center}
	.dsh-sort select{flex:none;min-width:190px}
	.dsh-chips{margin:0 0 22px;padding:2px 2px 8px;flex-wrap:wrap;overflow:visible}
	.dsh-grid{grid-template-columns:repeat(3,1fr);gap:18px}
	.dsh-trust-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}
}
@media(min-width:1024px){.dsh-grid{grid-template-columns:repeat(var(--dsh-cols,4),1fr)}}
@media(prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	.dsh-shop *,.dsh-shop *::before,.dsh-shop *::after{animation:none!important;transition:none!important}
}
