/* =============================================================
   JigjigaSale v2 — Shop / product-category (AliExpress-style).
   Loads on is_shop() / is_product_taxonomy() alongside home-v2.css
   (app bar) + foundation.css (tokens). Scope: body.jjs-shop.
   Palette: navy #0A1B3D / gold #F5A524 / warm price #E8462B.
   ============================================================= */

body.jjs-shop{
	background:#F4F7FC;
	color:#0A1B3D;
	margin:0;
	-webkit-font-smoothing:antialiased;
}
body.jjs-shop *{ box-sizing:border-box; }

.jjs-plp{
	max-width:1400px;
	margin:0 auto;
	padding:0 14px 40px;
}

/* ---- breadcrumb + heading ------------------------------------ */
.jjs-plp__crumb{
	display:flex;flex-wrap:wrap;align-items:center;gap:6px;
	font-size:var(--jjs-fs-xs);color:#5B6B85;padding:12px 2px 4px;
}
.jjs-plp__crumb a{ color:#5B6B85;text-decoration:none; }
.jjs-plp__crumb a:hover{ color:#2563EB; }
.jjs-plp__crumb b{ color:#0A1B3D; }
.jjs-plp__crumb span{ color:#AEB9CC; }

.jjs-plp__head{
	display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;
	padding:2px 2px 12px;
}
.jjs-plp__title{
	font-size:var(--jjs-fs-xl);font-weight:800;margin:0;letter-spacing:-.02em;line-height:1.15;color:#0A1B3D;
}
.jjs-plp__count{ font-size:var(--jjs-fs-sm);color:#5B6B85;font-weight:600; }

/* ---- subcategory chips --------------------------------------- */
.jjs-plp__chips{
	display:flex;gap:8px;overflow-x:auto;padding:2px 2px 14px;
	-ms-overflow-style:none;scrollbar-width:none;
}
.jjs-plp__chips::-webkit-scrollbar{ display:none; }
.jjs-chip{
	flex:0 0 auto;background:#fff;border:1px solid #E1E7F2;border-radius:var(--jjs-r-pill);
	padding:8px 15px;font-size:var(--jjs-fs-sm);font-weight:600;color:#0A1B3D;text-decoration:none;
	white-space:nowrap;transition:.15s;
}
.jjs-chip:hover{ border-color:#F5A524;color:#D98A0B;background:#FFF8EC; }

/* ---- layout: sidebar + results ------------------------------- */
.jjs-plp__wrap{ display:flex;gap:20px;align-items:flex-start; }
.jjs-plp__col{ flex:1 1 auto;min-width:0; }

.jjs-plp__side{
	flex:0 0 220px;width:220px;background:#fff;border:1px solid #E8EDF6;
	border-radius:var(--jjs-r-lg);padding:6px 16px 16px;position:sticky;top:126px;
	max-height:calc(100vh - 140px);overflow-y:auto;
}
.jjs-plp__sidehd{ display:none; } /* mobile only */
.jjs-plp__scrim{ display:none; }

.jjs-fblock{ padding:14px 0;border-bottom:1px solid #EEF2F8; }
.jjs-fblock:last-child{ border-bottom:0; }
.jjs-fblock h3{
	font-size:var(--jjs-fs-sm);font-weight:800;text-transform:uppercase;letter-spacing:.04em;
	color:#0A1B3D;margin:0 0 10px;
}
.jjs-fcats{ list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px; }
.jjs-fcats a{
	display:flex;justify-content:space-between;align-items:center;gap:8px;
	padding:7px 9px;border-radius:var(--jjs-r-sm);font-size:var(--jjs-fs-sm);color:#33415C;text-decoration:none;
	transition:.12s;
}
.jjs-fcats a span{ overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.jjs-fcats a em{ font-style:normal;font-size:var(--jjs-fs-xs);color:#9AA6BC;font-weight:600; }
.jjs-fcats a:hover{ background:#F4F7FC;color:#2563EB; }
.jjs-fcats a.is-on{ background:#0A1B3D;color:#fff;font-weight:700; }
.jjs-fcats a.is-on em{ color:#C9D4EA; }

.jjs-fprice__row{ display:flex;align-items:center;gap:8px; }
.jjs-fprice__row input{
	width:100%;min-width:0;border:1px solid #D9E1EF;border-radius:var(--jjs-r-sm);padding:9px 10px;
	font-size:var(--jjs-fs-sm);color:#0A1B3D;background:#F9FBFE;
}
.jjs-fprice__row input:focus{ outline:none;border-color:#2563EB;background:#fff; }
.jjs-fprice__row span{ color:#9AA6BC; }
.jjs-fprice__btns{ display:flex;gap:8px;margin-top:10px; }
.jjs-fbtn{
	flex:1;text-align:center;border-radius:var(--jjs-r-sm);padding:9px 10px;font-size:var(--jjs-fs-sm);font-weight:700;
	text-decoration:none;border:1px solid #D9E1EF;color:#33415C;background:#fff;cursor:pointer;
}
.jjs-fbtn--go{ background:#0A1B3D;border-color:#0A1B3D;color:#fff; }
.jjs-fbtn--go:hover{ background:#12295a; }

/* ---- sort bar ------------------------------------------------- */
.jjs-sortbar{
	display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #E8EDF6;
	border-radius:var(--jjs-r);padding:7px 10px;margin-bottom:16px;position:sticky;top:118px;z-index:20;
}
.jjs-sortbar__filter{
	display:none;align-items:center;gap:6px;background:#0A1B3D;color:#fff;border:0;
	border-radius:var(--jjs-r-sm);padding:9px 13px;font-size:var(--jjs-fs-sm);font-weight:700;cursor:pointer;
}
.jjs-sortbar__filter svg{ width:16px;height:16px; }
.jjs-sortbar__opts{ display:flex;gap:4px;align-items:center;flex-wrap:wrap; }
.jjs-sort{
	display:inline-flex;align-items:center;gap:4px;padding:8px 14px;border-radius:var(--jjs-r-sm);
	font-size:var(--jjs-fs-sm);font-weight:600;color:#33415C;text-decoration:none;transition:.12s;
}
.jjs-sort:hover{ background:#F4F7FC;color:#2563EB; }
.jjs-sort.is-on{ background:#FFF3DE;color:#B9770B;font-weight:800; }
.jjs-sort__ar{ font-size:var(--jjs-fs-xs);opacity:.75; }

/* ---- product grid -------------------------------------------- */
.jjs-plp__grid{
	display:grid;grid-template-columns:repeat(5,1fr);gap:12px;
}

/* ---- pagination ---------------------------------------------- */
.jjs-plp__pager{ display:flex;justify-content:center;margin-top:26px; }
.jjs-plp__pager .page-numbers{
	display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;
	padding:0 12px;margin:0 3px;border-radius:var(--jjs-r-sm);background:#fff;border:1px solid #E1E7F2;
	color:#33415C;font-size:var(--jjs-fs-sm);font-weight:600;text-decoration:none;transition:.12s;
}
.jjs-plp__pager .page-numbers:hover{ border-color:#F5A524;color:#D98A0B; }
.jjs-plp__pager .page-numbers.current{ background:#0A1B3D;border-color:#0A1B3D;color:#fff; }
.jjs-plp__pager .page-numbers.dots{ border:0;background:transparent; }

/* ---- empty --------------------------------------------------- */
.jjs-plp__empty{ text-align:center;padding:60px 20px;color:#5B6B85; }
.jjs-plp__emptyic{ font-size:52px;margin-bottom:12px;opacity:.7; }
.jjs-plp__empty p{ font-size:var(--jjs-fs-md);font-weight:600;margin:0 0 18px; }

/* ---- trust strip --------------------------------------------- */
body.jjs-shop .jjs-truststrip{
	display:flex;justify-content:center;gap:26px;flex-wrap:wrap;
	background:#fff;border-top:1px solid #EAEFF7;padding:18px 16px;margin-top:10px;
	font-size:var(--jjs-fs-sm);color:#33415C;font-weight:600;
}
body.jjs-shop .jjs-truststrip span{ margin-right:6px; }

/* =============================================================
   RESPONSIVE
   ============================================================= */
@media (max-width:1200px){ .jjs-plp__grid{ grid-template-columns:repeat(4,1fr); } }
@media (max-width:992px){
	.jjs-plp__grid{ grid-template-columns:repeat(3,1fr); }
	.jjs-plp__side{ flex-basis:200px;width:200px; }
}

@media (max-width:768px){
	.jjs-plp{ padding:0 10px 30px; }
	.jjs-plp__title{ font-size:var(--jjs-fs-lg); }

	/* sidebar becomes a slide-in drawer */
	.jjs-plp__wrap{ display:block; }
	.jjs-plp__side{
		position:fixed;top:0;left:0;bottom:0;width:82%;max-width:320px;z-index:1200;
		border-radius:0 16px 16px 0;transform:translateX(-100%);transition:transform .25s ease;
		max-height:100vh;padding:0 16px 20px;box-shadow:0 10px 40px rgba(10,27,61,.25);
	}
	.jjs-plp__side.is-open{ transform:translateX(0); }
	.jjs-plp__sidehd{
		display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;
		background:#fff;padding:16px 0 12px;border-bottom:1px solid #EEF2F8;margin-bottom:2px;
		font-size:var(--jjs-fs-md);
	}
	.jjs-plp__sideclose{ background:none;border:0;font-size:var(--jjs-fs-xl);line-height:1;color:#5B6B85;cursor:pointer; }
	.jjs-plp__scrim{
		display:block;position:fixed;inset:0;background:rgba(10,27,61,.45);z-index:1100;
		opacity:0;pointer-events:none;transition:.25s;
	}
	.jjs-plp__scrim.is-on{ opacity:1;pointer-events:auto; }

	.jjs-sortbar{ top:114px; }
	.jjs-sortbar__filter{ display:inline-flex; }
	.jjs-sortbar__opts{ flex:1;overflow-x:auto;flex-wrap:nowrap;-ms-overflow-style:none;scrollbar-width:none; }
	.jjs-sortbar__opts::-webkit-scrollbar{ display:none; }
	.jjs-sort{ white-space:nowrap;padding:8px 11px; }

	.jjs-plp__grid{ grid-template-columns:repeat(2,1fr);gap:10px; }


}

@media (max-width:360px){
	.jjs-plp__grid{ gap:8px; }
}
