/* =====================================================================
 * SHAHAZ.com — Product category archive (woocommerce/archive-product.php)
 * One shared designed banner (~100px, full width), sub-category chips,
 * Sort / Filter popups (same frame) and a masonry grid of the shared luxury
 * card (assets/css/shahaz-luxury-card.css). 6px gaps everywhere;
 * 2 / 3 / 4 columns on phone / tablet / desktop.
 * ===================================================================== */
.shz-ca{
	--ca-gap:6px;
	--ca-cols:2;
	--ca-magenta:#E6007E;
	--ca-deep:#8A0F4E;
	--ca-gold:#E9B44C;
	--ca-line:#F4DDE8;
	box-sizing:border-box;
	width:100vw;max-width:100vw;
	margin:0 calc(50% - 50vw);
	padding:var(--ca-gap) var(--ca-gap) 20px;
	background:radial-gradient(120% 60% at 50% 0%,#FFF2F8 0%,#FDEAF3 60%,#FCF1F6 100%);
	color:#2B1A23;
}
@media (min-width:700px){.shz-ca{--ca-cols:3;}}
@media (min-width:1100px){.shz-ca{--ca-cols:4;}}
@media (min-width:1500px){.shz-ca{--ca-cols:5;}}
@media (min-width:1900px){.shz-ca{--ca-cols:6;}}
.shz-ca *,.shz-ca *::before,.shz-ca *::after{box-sizing:border-box;}
.shz-ca a,.shz-ca button,.shz-ca label{-webkit-tap-highlight-color:transparent;}
.shz-ca a{text-decoration:none;}
.shz-ca button:focus,.shz-ca a:focus{outline:none;}
.shz-ca button:focus-visible,.shz-ca a:focus-visible{outline:2px solid var(--ca-gold);outline-offset:2px;}

/* ---------- Banner (code-designed, ~100px) ---------- */
.shz-ca-banner{
	position:relative;isolation:isolate;
	display:flex;align-items:center;
	height:104px;overflow:hidden;
	border-radius:16px;
	background:
		radial-gradient(60% 120% at 22% 30%,rgba(255,255,255,.95) 0%,rgba(255,255,255,0) 60%),
		radial-gradient(50% 90% at 88% 40%,rgba(255,214,102,.45) 0%,rgba(255,214,102,0) 60%),
		linear-gradient(115deg,#FFE3F0 0%,#FFC6E0 38%,#FF8CC0 70%,#F04E98 100%);
	box-shadow:0 0 0 1px rgba(233,180,76,.55);
}
.shz-ca-banner__swoosh{position:absolute;inset:auto -10% -38px 18%;z-index:-1;height:70px;border-radius:50%;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.65) 30%,rgba(242,182,50,.75) 60%,rgba(230,0,126,.55));filter:blur(.5px);transform:rotate(-6deg);}
.shz-ca-banner__swoosh::after{content:"";position:absolute;inset:14px -6% auto 6%;height:3px;border-radius:3px;background:linear-gradient(90deg,rgba(255,240,200,0),#FFE08A,#E9A82E,rgba(233,168,46,0));}
.shz-ca-banner__spark{position:absolute;z-index:1;color:#F2B632;text-shadow:none;line-height:1;}
.shz-ca-banner__spark--a{left:10px;top:10px;font-size:15px;}
.shz-ca-banner__spark--b{left:46%;top:14px;font-size:11px;}
.shz-ca-banner__spark--c{left:40%;bottom:14px;font-size:13px;}
.shz-ca-banner__copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:0 0 0 16px;min-width:0;max-width:62%;}
.shz-ca-banner__title{
	font-family:"Playfair Display",Georgia,serif;font-size:clamp(26px,8vw,46px);font-weight:900;line-height:.95;letter-spacing:.5px;
	background:linear-gradient(180deg,#E8338A 0%,#B0105A 55%,#7A0F47 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
	-webkit-text-stroke:.6px rgba(233,180,76,.9);
	filter:none;
	white-space:nowrap;
}
.shz-ca-banner__line{display:flex;align-items:center;gap:5px;width:100%;max-width:170px;margin:3px 0 2px;color:#C98612;font-size:9px;}
.shz-ca-banner__line i{flex:1;height:1px;background:linear-gradient(90deg,rgba(201,134,18,0),#C98612,rgba(201,134,18,0));}
.shz-ca .shz-ca-banner__sub{margin:0;padding:0;max-width:100%;overflow:hidden;color:#7A0F47;font-family:"Playfair Display",Georgia,serif;font-size:clamp(12px,3.4vw,18px);font-weight:800;line-height:1.15;white-space:nowrap;text-overflow:ellipsis;}
.shz-ca-banner__sub em{font-family:"Dancing Script",cursive;font-weight:700;font-style:normal;color:#9E1458;}
.shz-ca-banner__art{position:absolute;right:-4px;bottom:0;z-index:1;width:clamp(150px,44vw,260px);height:100%;}
.shz-ca-banner__art svg{position:absolute;right:0;bottom:-2px;display:block;width:100%;height:auto;max-height:100%;filter:none;}
@media (min-width:700px){
	.shz-ca-banner{height:120px;}
	.shz-ca-banner__copy{padding-left:28px;}
}

/* ---------- Sub-category chips ---------- */
.shz-ca-subcats{display:flex;gap:6px;margin:var(--ca-gap) 0 0;overflow-x:auto;scrollbar-width:none;}
.shz-ca-subcats::-webkit-scrollbar{display:none;}
.shz-ca-subcat{flex:0 0 auto;display:inline-flex;align-items:center;height:30px;padding:0 13px;border:1px solid rgba(230,0,126,.35);border-radius:999px;background:#FFFFFF;color:#B0005E;font-size:12.5px;font-weight:700;white-space:nowrap;}
.shz-ca-subcat--up{border-color:var(--ca-gold);color:#7A4A06;background:#FFF9EC;}

/* ---------- Toolbar ---------- */
.shz-ca-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:var(--ca-gap) 0;}
.shz-ca .shz-ca-tool{display:inline-flex;align-items:center;gap:7px;height:36px;min-height:0;margin:0;padding:0 14px;border:1px solid rgba(230,0,126,.45);border-radius:12px;background:#FFFFFF;color:#2B1A23;box-shadow:none;font:inherit;font-size:14px;font-weight:700;line-height:1;cursor:pointer;}
.shz-ca .shz-ca-tool:hover,.shz-ca .shz-ca-tool:focus{background:#FFFFFF;color:#2B1A23;}
.shz-ca-tool svg{width:18px;height:18px;color:var(--ca-magenta);}
.shz-ca-tool .shz-ca-tool__chev{width:14px;height:14px;color:#2B1A23;}
.shz-ca-tool__count{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--ca-magenta);color:#FFFFFF;font-size:10px;font-style:normal;font-weight:800;}

/* ---------- Popups (identical frame) ---------- */
.shz-ca-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(60,10,35,.38);-webkit-backdrop-filter:none;backdrop-filter:none;}
.shz-ca-modal[hidden]{display:none;}
.shz-ca-modal__card{display:flex;flex-direction:column;width:min(100%,360px);height:min(440px,calc(100vh - 120px));overflow:hidden;margin:0;border:1px solid rgba(217,163,58,.55);border-radius:20px;background:linear-gradient(180deg,#FFFFFF 0%,#FFF6FA 100%);box-shadow:none;animation:shzCaPop .2s ease-out;}
@keyframes shzCaPop{from{opacity:0;transform:translateY(10px) scale(.98);}to{opacity:1;transform:none;}}
.shz-ca-modal__head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid var(--ca-line);}
.shz-ca .shz-ca-modal__head h2{margin:0;color:#5A0E36;font-family:"Playfair Display",Georgia,serif;font-size:19px;font-weight:800;}
.shz-ca .shz-ca-modal__close{display:grid;place-items:center;width:32px;height:32px;min-height:0;margin:0;padding:0;border:1px solid var(--ca-line);border-radius:50%;background:#FFF4F9;color:var(--ca-magenta);cursor:pointer;}
.shz-ca-modal__close svg{width:16px;height:16px;}
.shz-ca-modal__body{flex:1 1 auto;overflow-y:auto;padding:12px 16px;}
.shz-ca-modal__actions{display:flex;gap:8px;padding:10px 16px 14px;border-top:1px solid var(--ca-line);}
.shz-ca-reset,.shz-ca .shz-ca-apply{flex:1 1 0;display:grid;place-items:center;height:38px;min-height:0;margin:0;border-radius:11px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;}
.shz-ca-reset{border:1px solid var(--ca-line);background:#FFFFFF;color:#2B1A23;}
.shz-ca .shz-ca-apply{border:1px solid #D9A33A;background:linear-gradient(180deg,#FFE7F2 0%,#FFCFE5 100%);color:#B0005E;}
.shz-ca-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.shz-ca-opts--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.shz-ca-opt{position:relative;display:block;cursor:pointer;}
.shz-ca-opt input{position:absolute;opacity:0;pointer-events:none;}
.shz-ca-opt span{display:flex;align-items:center;justify-content:center;height:42px;padding:0 24px 0 10px;border:1px solid var(--ca-line);border-radius:12px;background:#FFFFFF;color:#2B1A23;font-size:12.5px;font-weight:600;line-height:1.15;text-align:center;}
.shz-ca-opt input:checked + span{border-color:#D9A33A;background:linear-gradient(180deg,#FFF3F9 0%,#FFE4F0 100%);color:#B0005E;font-weight:700;}
.shz-ca-check{position:absolute;right:8px;top:50%;width:15px;height:15px;color:#D9A33A;opacity:0;transform:translateY(-50%) scale(.6);transition:opacity .15s ease,transform .15s ease;pointer-events:none;}
.shz-ca-opt input:checked ~ .shz-ca-check{opacity:1;transform:translateY(-50%) scale(1);}
.shz-ca-opt--wide{width:100%;}
.shz-ca-field{margin:0 0 12px;}
.shz-ca-field__label{display:block;margin:0 0 6px;color:#5A0E36;font-size:12.5px;font-weight:700;}
.shz-ca-field__row{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.shz-ca .shz-ca-field__row input{width:100%;height:40px;min-height:0;margin:0;padding:0 12px;border:1px solid var(--ca-line);border-radius:11px;background:#FFFFFF;font-size:14px;}

/* ---------- Masonry grid (6px) ---------- */
.shz-ca-grid{display:grid;grid-template-columns:repeat(var(--ca-cols),minmax(0,1fr));gap:var(--ca-gap);align-items:start;}
.shz-ca-grid.is-masonry{display:flex;align-items:flex-start;gap:var(--ca-gap);}
.shz-ca-col{display:flex;flex:1 1 0;flex-direction:column;gap:var(--ca-gap);min-width:0;}
.shz-ca-empty{margin:0;padding:28px 16px;border:1px dashed rgba(217,163,58,.5);border-radius:16px;background:rgba(255,255,255,.8);color:#8C7884;font-size:14px;font-weight:600;text-align:center;}

/* ---------- Pagination ---------- */
.shz-ca-pagination{margin:14px 0 4px;text-align:center;}
.shz-ca-pagination .nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;}
.shz-ca-pagination .page-numbers{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border:1px solid rgba(217,163,58,.45);border-radius:11px;background:#FFFFFF;color:#2B1A23;font-size:13px;font-weight:700;}
.shz-ca-pagination .page-numbers.current{border-color:#D9A33A;background:linear-gradient(180deg,#FFE7F2 0%,#FFCFE5 100%);color:#B0005E;}
body.shz-ca-modal-open{overflow:hidden;}
@media (prefers-reduced-motion:reduce){.shz-ca-modal__card{animation:none;}}
