/* ==========================================================
   NexaGrid - עיצוב חנות (WooCommerce) - גרסה משודרגת
   ========================================================== */

/* --- Shop hero --- */
.nexagrid-shop-hero{ text-align:center; padding: 40px 24px 2px; max-width:900px; margin:0 auto; }
.nexagrid-shop-hero-eyebrow{
	display:inline-block; font-size:13px; font-weight:700; color: var(--nx-accent-from);
	background: rgba(0,240,255,0.08); border:1px solid rgba(0,240,255,0.25);
	padding:6px 16px; border-radius:999px; margin-bottom:16px;
}
.nexagrid-shop-hero-title{
	font-size: clamp(28px, 4vw, 42px); font-weight:800; margin:0 0 12px;
	background: linear-gradient(90deg, #fff, var(--nx-accent-from) 55%, var(--nx-accent-to));
	-webkit-background-clip:text; background-clip:text; color:transparent;
}
.nexagrid-shop-hero-sub{ color: var(--nx-text-dim); font-size:16px; }

.nexagrid-shop-cats-tight{ padding-bottom: 50px; }
.nexagrid-shop-cats-tight .nexagrid-shop-cat-card{ min-height:110px; }

/* --- תפריט קטגוריות נפתח (Dropdown) --- */
/* --- שורת כלים אחידה: תוצאות + תפריט קטגוריות + מיון, הכל באותה שורה --- */
.nexagrid-shop-toolbar{
	display:flex; align-items:center; justify-content:flex-start; flex-wrap:wrap;
	gap: 16px; max-width:1400px; margin: 0 auto 30px; padding: 0 24px;
}
.nexagrid-shop-toolbar .woocommerce-result-count{ margin:0; order:1; }
.nexagrid-shop-toolbar .nexagrid-cat-dropdown{ margin:0; padding:0; max-width:none; order:2; }
.nexagrid-shop-toolbar .woocommerce-ordering{ margin:0; order:3; }

.nexagrid-cat-dropdown{ position:relative; }
.nexagrid-cat-dropdown-trigger{
	display:flex; align-items:center; justify-content:space-between; gap:10px;
	background: var(--nx-bg-soft); border:1px solid var(--nx-card-border);
	color: var(--nx-text); font-family: var(--nx-font); font-size:14px; font-weight:700;
	padding: 12px 20px; border-radius: 999px; cursor:pointer; transition: border-color .2s;
	width: 441px; max-width: 100%; box-sizing: border-box;
}
.nexagrid-cat-dropdown-trigger:hover{ border-color: rgba(0,240,255,0.35); }
.nexagrid-cat-dropdown-arrow{ font-size:12px; color: var(--nx-accent-from); transition: transform .2s; }
.nexagrid-cat-dropdown.is-open .nexagrid-cat-dropdown-arrow{ transform: rotate(180deg); }

.nexagrid-cat-dropdown-panel{
	position:absolute; top: calc(100% + 8px); right: 0; z-index:40;
	min-width: 441px; max-width: 546px; width: 441px; max-height: 460px; overflow-y:auto;
	background: rgba(11,15,30,0.98); border:1px solid rgba(255,255,255,0.1);
	border-radius: 14px; padding: 8px; backdrop-filter: blur(14px);
	box-shadow: 0 24px 50px -20px rgba(0,0,0,0.6);
	display:none; flex-direction:column; gap:2px;
}
.nexagrid-cat-dropdown.is-open .nexagrid-cat-dropdown-panel{ display:flex; }

.nexagrid-cat-dropdown-item{
	position:relative;
	display:flex; align-items:center; justify-content:space-between; gap:10px;
	padding: 11px 14px; border-radius:8px; font-size:14px; font-weight:600; color: var(--nx-text);
}
.nexagrid-cat-dropdown-item.nexagrid-cat-child{
	padding-right: 30px; font-size:13px; font-weight:500; color: var(--nx-text-dim);
}
.nexagrid-cat-dropdown-item:hover{
	background: linear-gradient(90deg, var(--nx-accent-from), var(--nx-accent-to));
	color:#05070f; font-weight:800;
}
.nexagrid-cat-dropdown-item:hover .nexagrid-cat-dropdown-count{ color:#05070f; opacity:.85; }
.nexagrid-cat-dropdown-item.is-active{ color: var(--nx-accent-from); font-weight:800; background: rgba(0,240,255,0.08); }
.nexagrid-cat-dropdown-count{ font-size:12px; opacity:.7; }

/* --- תמונה מייצגת של הקטגוריה, צפה ליד סמן העכבר (מבוקר ב-JS) --- */
.nexagrid-cat-preview-floating{
	position:fixed; top:0; left:0; z-index:9999;
	width: 230px; height: 230px; border-radius: 14px;
	background-size:cover; background-position:center; background-color: var(--nx-bg-soft);
	border: 3px solid rgba(255,255,255,0.18);
	box-shadow: 0 24px 60px -15px rgba(0,0,0,0.75);
	opacity:0; visibility:hidden; pointer-events:none;
	transition: opacity .15s ease;
}
.nexagrid-cat-preview-floating.is-visible{ opacity:1; visibility:visible; }

@media (max-width: 700px){
	.nexagrid-cat-preview-floating{ display:none; } /* אין הובר אמיתי בטאץ' */
	.nexagrid-cat-dropdown-panel{ min-width: 260px; max-width: 90vw; }
}

/* --- הסתרת רשימת קטגוריות כפולה/ברירת מחדל שאינה שלנו, בעמודי חנות --- */
.woocommerce-page .widget_product_categories,
.woocommerce-page ul.product-categories,
.woocommerce-page .woocommerce-widget-layered-nav{
	display:none !important;
}

/* --- "הצג עוד מוצרים" במקום עימוד --- */
.woocommerce nav.woocommerce-pagination{ display:none !important; }
.nexagrid-load-more-wrap{ text-align:center; margin: 40px 0 20px; }
.nexagrid-load-more-wrap #nexagrid-load-more{
	cursor:pointer; font-family: var(--nx-font);
}
.nexagrid-load-more-wrap #nexagrid-load-more:disabled{ opacity:.6; cursor:default; }

.nexagrid-woocommerce-wrap .nexagrid-container{ padding-top: 2px; }
.woocommerce, .woocommerce-page{ color: var(--nx-text); }
.woocommerce a{ color: inherit; }
.woocommerce-breadcrumb{
	color: var(--nx-text-dim); font-size:13px; margin-bottom:24px; display:block;
}
.woocommerce-breadcrumb a{ color: var(--nx-text-dim); }
.woocommerce-breadcrumb a:hover{ color: var(--nx-accent-from); }

/* --- Result count + ordering bar --- */
.woocommerce-result-count{ color: var(--nx-text-dim); font-size:14px; margin:0 0 20px; }
.woocommerce-ordering{ margin: 0 0 24px; }
.woocommerce-ordering select{
	background: var(--nx-bg-soft) !important; color: var(--nx-text) !important;
	border:1px solid var(--nx-card-border) !important; border-radius: 999px !important;
	padding: 10px 18px !important; font-size:13px !important;
}
.woocommerce-ordering select option{
	background: var(--nx-bg-soft) !important; color: var(--nx-text) !important;
}
.woocommerce > .columns-wrapper > *:first-child,
.woocommerce .woocommerce-result-count + .woocommerce-ordering{ display:flex; }

/* --- Product categories widget/list (fixes "categories not showing properly") --- */
.woocommerce ul.products,
ul.product-categories,
.widget_product_categories ul,
.woocommerce-widget-layered-nav ul{
	list-style:none; margin:0; padding:0;
}
ul.product-categories li,
.widget_product_categories ul li,
.woocommerce-widget-layered-nav ul li{
	margin: 0 0 8px;
}
ul.product-categories a,
.widget_product_categories ul a,
.woocommerce-widget-layered-nav ul a{
	display:inline-block; font-size:13px; color: var(--nx-text-dim);
	background: rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1);
	padding: 7px 16px; border-radius:999px; transition: all .2s;
}
ul.product-categories a:hover,
.widget_product_categories ul a:hover{
	color:#05070f; background: linear-gradient(90deg, var(--nx-accent-from), var(--nx-accent-to));
	border-color: transparent;
}

/* --- Product grid --- */
.woocommerce ul.products,
.woocommerce-page ul.products{
	display:grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
	gap: 24px !important; list-style:none !important; margin:0 !important; padding:0 !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	width:auto !important; max-width:none !important; float:none !important; clear:none !important;
	margin:0 !important; list-style:none !important; position:relative;
	background: var(--nx-card-bg); border:1px solid var(--nx-card-border);
	border-radius: var(--nx-radius); padding: 0; overflow:hidden;
	transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.woocommerce ul.products li.product:hover{
	transform: translateY(-6px);
	box-shadow: 0 20px 40px -20px rgba(0,240,255,0.3);
	border-color: rgba(0,240,255,0.3);
}
.woocommerce ul.products li.product a{ display:block; text-decoration:none; }
.woocommerce ul.products li.product img{
	border-radius:0; width:100%; aspect-ratio: 1/1; object-fit: cover;
	transition: transform .5s ease;
}
.woocommerce ul.products li.product:hover img{ transform: scale(1.06); }

.woocommerce ul.products li.product .nexagrid-wc-body{ padding: 16px 18px 20px; }
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3{
	font-size: 15px !important; font-weight:700 !important; color: var(--nx-text) !important;
	margin: 0 0 8px !important; line-height:1.4;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow:hidden;
}
.woocommerce ul.products li.product .star-rating{
	color: var(--nx-gold, #ffb020) !important; font-size:13px; margin-bottom:8px;
}
.woocommerce ul.products li.product .price{
	color: var(--nx-accent-from) !important; font-weight:800 !important; font-size:16px;
	display:block; margin-bottom:12px;
}
.woocommerce ul.products li.product .price del{ color: var(--nx-text-dim) !important; opacity:.6; font-weight:400; font-size:13px; }
.woocommerce ul.products li.product .price ins{ text-decoration:none; color: var(--nx-accent-from) !important; }

.woocommerce ul.products li.product .onsale{
	position:absolute; top:14px; right:14px; z-index:2;
	background: linear-gradient(90deg, #ff5f6d, #ec4899); color:#fff;
	font-size:11px; font-weight:800; padding: 5px 12px; border-radius:999px;
	min-width:0; height:auto; line-height:1.4; text-transform:none;
}

.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.add_to_cart_button{
	display:block; width: calc(100% - 36px); margin: 0 18px 18px;
	background: linear-gradient(90deg, var(--nx-accent-from), var(--nx-accent-to)) !important;
	color:#05070f !important; text-align:center; font-weight:800 !important; font-size:13px !important;
	padding: 11px 0 !important; border-radius:999px !important; border:none !important;
	transition: opacity .2s, transform .2s;
}
.woocommerce ul.products li.product a.button:hover{ opacity:.88; transform: translateY(-2px); }
.woocommerce ul.products li.product a.added_to_cart{
	display:block; text-align:center; font-size:12px; margin: 0 18px 14px; color: var(--nx-accent-from);
}

/* --- Single product page --- */
.woocommerce div.product{ color: var(--nx-text); }
.woocommerce div.product div.images{ border-radius: var(--nx-radius); overflow:hidden; }
.woocommerce div.product div.images img{ border-radius: var(--nx-radius); }
.woocommerce div.product .product_title{ font-size:28px !important; font-weight:800 !important; color: var(--nx-text) !important; }
.woocommerce div.product p.price,
.woocommerce div.product span.price{ font-size:26px !important; margin: 14px 0 !important; }
.woocommerce div.product .woocommerce-product-details__short-description{ color: var(--nx-text-dim); line-height:1.7; }

.woocommerce div.product form.cart{
	background: var(--nx-card-bg); border:1px solid var(--nx-card-border);
	border-radius: 16px; padding: 20px; margin: 24px 0;
}
.woocommerce div.product form.cart .quantity input{
	background: var(--nx-bg-soft) !important; border:1px solid rgba(255,255,255,0.15) !important;
	color: var(--nx-text) !important; border-radius:8px !important; height:44px !important; width:64px !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button{
	height:44px !important; padding: 0 32px !important; font-size:15px !important;
}

.woocommerce div.product .woocommerce-tabs{ margin-top: 40px; }
.woocommerce div.product .woocommerce-tabs ul.tabs{
	list-style:none; display:flex; gap:8px; padding:0; margin: 0 0 20px; border-bottom:1px solid rgba(255,255,255,0.1);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{ margin:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
	display:block; padding: 12px 20px; font-weight:700; font-size:14px; color: var(--nx-text-dim);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color: var(--nx-accent-from); border-bottom:2px solid var(--nx-accent-from); }
.woocommerce div.product .woocommerce-tabs .panel{ color: var(--nx-text-dim); line-height:1.7; }

.woocommerce-tabs table.shop_attributes{ background:transparent !important; }

/* --- Cross-sells / related products heading --- */
.woocommerce .related.products h2,
.woocommerce .upsells.products h2{ font-size:22px; font-weight:800; margin: 40px 0 20px; }

/* --- Pagination --- */
.woocommerce nav.woocommerce-pagination{ margin-top: 40px; }
.woocommerce nav.woocommerce-pagination ul{
	border: none !important; display:flex; gap:8px; background:transparent !important;
}
.woocommerce nav.woocommerce-pagination ul li{
	border: none !important; background: var(--nx-card-bg); border-radius:10px !important; overflow:hidden;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	color: var(--nx-text) !important; padding: 10px 16px !important; font-size:14px;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
	background: linear-gradient(90deg, var(--nx-accent-from), var(--nx-accent-to)) !important; color:#05070f !important; font-weight:800;
}

/* --- Cart / checkout tables --- */
.woocommerce-cart table.cart,
.woocommerce-checkout table.shop_table,
.woocommerce table.shop_table{
	background: var(--nx-card-bg) !important; border:1px solid var(--nx-card-border) !important;
	border-radius: 14px !important; padding: 10px !important; color: var(--nx-text);
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{ border-color: rgba(255,255,255,0.08) !important; }

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register{
	background: var(--nx-card-bg); border:1px solid var(--nx-card-border); border-radius: 14px; padding: 20px;
}
.woocommerce input[type=text],
.woocommerce input[type=email],
.woocommerce input[type=tel],
.woocommerce input[type=password],
.woocommerce input[type=number],
.woocommerce textarea,
.woocommerce select{
	background: var(--nx-bg-soft) !important; border:1px solid rgba(255,255,255,0.15) !important;
	color: var(--nx-text) !important; border-radius: 8px !important; padding: 10px 12px !important;
}
.woocommerce select option{ background: var(--nx-bg-soft) !important; color: var(--nx-text) !important; }

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
	background: linear-gradient(90deg, var(--nx-accent-from), var(--nx-accent-to)) !important;
	color: #05070f !important; border:none !important; border-radius:999px !important;
	font-weight:800 !important; padding: 12px 26px !important;
}

/* --- Sidebar widgets shared with shop (product categories etc via our own sidebar.php) --- */
.woocommerce-widget-layered-nav-list{ list-style:none; padding:0; }

@media (max-width: 700px){
	.woocommerce ul.products{ grid-template-columns: repeat(2, 1fr) !important; gap:14px !important; }
}
