/* ZelosShop: σελίδα προϊόντος σε χρώματα Zelos, όπως το κατάστημα και οι σελίδες Επικοινωνία/Γάμος/Βάπτιση. */
body.single-product {
	--zs-green: #53775a;
	--zs-deep: #385641;
	--zs-cream: #f6f1ea;
	--zs-paper: #fffdf8;
	--zs-ink: #1f2a1f;
	--zs-muted: #6a6a62;
	--zs-line: #e9e2b5;
	--zs-shadow: 0 2px 14px rgba(40, 60, 35, .06);
}

body.single-product .bwp-main {
	background: var(--zs-cream);
}

/* Κατηγορίες: δεν φαίνονται πουθενά στη σελίδα του προϊόντος (εφεδρικό για το PHP). */
.single-product .product_meta,
.single-product .posted_in,
.single-product .tagged_as,
.single-product .summary .social-icon {
	display: none !important;
}

/* Το «Εξαντλήθηκε» εμφανίζεται δύο φορές· μένει μόνο η ετικέτα πάνω από το κουμπί. */
.single-product .summary p.stock.out-of-stock {
	display: none;
}

/* Δύο κάρτες δίπλα-δίπλα: φωτογραφία και στοιχεία. */
.single-product .bwp-single-product {
	max-width: 1230px;
	margin: 0 auto;
	padding: 40px 15px 8px;
}

.single-product .bwp-single-product > .row {
	align-items: flex-start;
	row-gap: 24px;
}

/* Μία κάρτα για τη φωτογραφία (το div.images)· το figure μέσα της μένει διάφανο. */
.single-product .bwp-single-image > .images {
	padding: 24px;
	background: var(--zs-paper);
	border-radius: 24px;
	box-shadow: var(--zs-shadow);
	overflow: hidden;
}

.single-product .bwp-single-image .woocommerce-product-gallery.images {
	margin: 0;
	padding: 0;
	background: transparent;
	border-radius: 0;
	box-shadow: none;
}

.single-product .bwp-single-image .images img {
	border-radius: 16px;
}

/* Όταν υπάρχει μία φωτογραφία, η λωρίδα μικρογραφιών δεν χρειάζεται. */
.single-product .woocommerce-product-gallery .content-thumbs-scroll:has(.slick-track > .img-thumbnail:only-child) {
	display: none;
}

/* Η κάρτα στοιχείων ακολουθεί τη φωτογραφία καθώς κατεβαίνεις. */
.single-product .bwp-single-info .summary {
	position: sticky;
	top: 110px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 36px 40px;
	background: var(--zs-paper);
	border-radius: 24px;
	box-shadow: var(--zs-shadow);
}

/* Breadcrumb */
.single-product .summary .breadcrumb-noheading .container {
	padding: 0;
	max-width: none;
}

.single-product .summary .breadcrumb {
	margin: 0;
	padding: 0;
	font-size: 13px;
	color: var(--zs-muted);
}

.single-product .summary .breadcrumb a {
	color: var(--zs-muted);
	transition: color .15s;
}

.single-product .summary .breadcrumb a:hover {
	color: var(--zs-green);
}

/* Τίτλος και τιμή */
.single-product .summary .product_title {
	margin: 4px 0 0;
	font-family: var(--zs-head, 'Inter', system-ui, sans-serif);
	font-size: 32px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -.01em;
	color: var(--zs-ink);
}

.single-product .summary .price-single {
	margin: 0;
	padding: 0 0 18px;
	border-bottom: 1px solid var(--zs-line);
}

.single-product .summary .price-single .price,
.single-product .summary .price-single .price .amount {
	font-family: var(--zs-head, 'Inter', system-ui, sans-serif);
	font-size: 28px;
	font-weight: 600;
	color: var(--zs-green);
}

/* Διαθεσιμότητα ως «χάπι» (το θέμα βάζει γκρι κουτί γύρω από το «Εξαντλημένο») */
body.single-product .summary .product-stock {
	display: block !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	line-height: 1.4 !important;
	text-align: left !important;
}

.single-product .summary p.stock {
	margin: 0;
}

.single-product .summary .stock {
	display: inline-block;
	padding: 5px 14px;
	border-radius: 999px;
	background: #e6efe7;
	color: var(--zs-deep);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
}

.single-product .summary .stock.out-of-stock,
.single-product .summary .product-stock .stock {
	background: #f3e2df;
	color: #8a3a2f;
}

.single-product .summary p.stock.in-stock {
	background: #e6efe7;
	color: var(--zs-deep);
}

/* Αγορά */
.single-product .summary form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin: 4px 0 0;
}

body.single-product .summary form.cart .quantity-button {
	display: flex;
	flex: 1 1 100% !important;
	width: 100% !important;
	flex-wrap: nowrap;
	align-items: center;
	gap: 12px;
	margin: 0;
	min-width: 0;
	height: auto;
}

.single-product .summary .quantity {
	position: relative;
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	flex-direction: row-reverse;
	width: auto;
	height: 52px;
	margin: 0;
	padding: 0 2px;
	border: 1px solid var(--zs-line);
	border-radius: 999px;
	background: #fff;
	overflow: hidden;
}

.single-product .summary .quantity .qty {
	width: 40px;
	height: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: center;
	font-weight: 600;
	color: var(--zs-ink);
	-moz-appearance: textfield;
}

.single-product .summary .quantity .qty::-webkit-outer-spin-button,
.single-product .summary .quantity .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* + και −: στρογγυλά κουμπάκια με γραμμές ζωγραφισμένες σε CSS (όχι τα εικονίδια του θέματος). */
body.single-product .summary .quantity button.plus,
body.single-product .summary .quantity button.minus {
	position: relative;
	inset: auto;
	transform: none;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	margin: 0 6px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #eef3ee;
	font-size: 0;
	line-height: 0;
	color: var(--zs-deep);
	cursor: pointer;
	transition: background .15s, color .15s, transform .15s;
}

body.single-product .summary .quantity button.plus::before,
body.single-product .summary .quantity button.minus::before,
body.single-product .summary .quantity button.plus::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 2px;
	margin: -1px 0 0 -6px;
	border-radius: 2px;
	background: currentColor;
	font-size: 0;
	line-height: 0;
}

body.single-product .summary .quantity button.plus::after {
	transform: rotate(90deg);
}

body.single-product .summary .quantity button.plus:hover,
body.single-product .summary .quantity button.minus:hover {
	background: var(--zs-green);
	color: #fff;
}

body.single-product .summary .quantity button.plus:active,
body.single-product .summary .quantity button.minus:active {
	transform: scale(.92);
}

body.single-product .summary form.cart .single_add_to_cart_button.button,
body.single-product .summary form.cart .quick-buy.button {
	height: 52px;
	min-height: 52px;
	padding: 0 28px;
	border: 0;
	border-radius: 999px;
	font-family: var(--zs-head, 'Inter', system-ui, sans-serif);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: .01em;
	text-transform: none;
	transition: background .15s, transform .15s, box-shadow .15s, color .15s;
}

body.single-product .summary form.cart .single_add_to_cart_button.button {
	flex: 1 1 0;
	min-width: 0;
	white-space: nowrap;
	background: var(--zs-green);
	color: #fff;
}

body.single-product .summary form.cart .single_add_to_cart_button.button:hover:not(:disabled) {
	background: var(--zs-deep);
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(56, 86, 65, .25);
}

body.single-product .summary form.cart .single_add_to_cart_button.button:disabled,
body.single-product .summary form.cart .single_add_to_cart_button.button.disabled {
	background: #e3e6e3;
	color: #8a908a;
	cursor: not-allowed;
}

body.single-product .summary form.cart .quick-buy.button {
	flex: 1 1 calc(100% - 64px);
	background: transparent;
	color: var(--zs-deep);
	box-shadow: inset 0 0 0 2px var(--zs-green);
}

body.single-product .summary form.cart .quick-buy.button:hover {
	background: var(--zs-green);
	color: #fff;
	transform: translateY(-2px);
}

/* Λίστα επιθυμιών: στρογγυλό κουμπί με καρδιά δίπλα στο «Αγόρασε τώρα». */
.single-product .summary .woosw-wishlist {
	order: 3;
	flex: 0 0 52px;
	margin: 0;
}

.single-product .summary .woosw-wishlist .woosw-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	box-shadow: inset 0 0 0 1px var(--zs-line);
	color: var(--zs-deep);
	transition: background .15s, color .15s, transform .15s;
}

.single-product .summary .woosw-wishlist .woosw-btn::before {
	width: auto;
	height: auto;
	margin: 0;
	border: 0;
	background: transparent;
	font-size: 20px;
	line-height: 1;
	color: inherit;
}

.single-product .summary .woosw-wishlist .woosw-btn:hover {
	background: #e6efe7;
	color: var(--zs-green);
	transform: translateY(-2px);
}

/* Κουμπιά κοινοποίησης */
.single-product .zs-share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 16px;
	margin-top: 6px;
	padding-top: 20px;
	border-top: 1px solid var(--zs-line);
}

.single-product .zs-share__label {
	font-size: 14px;
	font-weight: 600;
	color: var(--zs-ink);
}

.single-product .zs-share__list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.single-product .zs-share__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #fff;
	box-shadow: inset 0 0 0 1px var(--zs-line);
	color: var(--zs-deep);
	transition: background .15s, color .15s, transform .15s, box-shadow .15s;
}

.single-product .zs-share__btn svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.single-product .zs-share__btn:hover,
.single-product .zs-share__btn:focus-visible {
	transform: translateY(-3px);
	color: #fff;
	box-shadow: 0 8px 16px rgba(40, 60, 35, .18);
}

.single-product .zs-share__btn--viber:hover { background: #7360f2; }
.single-product .zs-share__btn--whatsapp:hover { background: #25d366; }
.single-product .zs-share__btn--x:hover { background: #000; }
.single-product .zs-share__btn--facebook:hover { background: #1877f2; }

/* Περιγραφή */
.single-product .woocommerce-tabs {
	margin-top: 8px;
}

.single-product .woocommerce-tabs .content-woocommerce-tabs {
	max-width: 1170px;
	margin: 0 auto;
	padding: 32px 40px;
	background: var(--zs-paper);
	border-radius: 24px;
	box-shadow: var(--zs-shadow);
}

.single-product .woocommerce-tabs .content-ul-tab {
	margin-bottom: 18px;
	border-bottom: 1px solid var(--zs-line);
}

.single-product .woocommerce-tabs ul.tabs {
	margin: 0;
	padding: 0;
}

.single-product .woocommerce-tabs ul.tabs li a {
	font-family: var(--zs-head, 'Inter', system-ui, sans-serif);
	font-size: 16px;
	font-weight: 600;
	color: var(--zs-ink);
}

.single-product .woocommerce-tabs .content-tab,
.single-product .woocommerce-tabs .content-tab p {
	font-size: 16px;
	line-height: 1.7;
	color: #4b524b;
}

/* Σχετικά προϊόντα */
.single-product .related {
	padding: 32px 0 24px;
	overflow: hidden;
}

.single-product .related .title-block h2 {
	font-family: var(--zs-head, 'Inter', system-ui, sans-serif);
	font-size: 26px;
	font-weight: 600;
	color: var(--zs-ink);
}

.single-product .related .products-thumb {
	border-radius: 18px;
	overflow: hidden;
	box-shadow: var(--zs-shadow);
}

.single-product .related .products-entry .product-title a,
.single-product .related .products-entry .woocommerce-loop-product__title a {
	color: var(--zs-ink);
	font-weight: 600;
}

.single-product .related .products-entry .price,
.single-product .related .products-entry .price .amount {
	color: var(--zs-green);
	font-weight: 600;
}

/* Tablet και κινητό */
@media (max-width: 991px) {
	.single-product .bwp-single-product {
		padding-top: 24px;
	}

	.single-product .bwp-single-info .summary {
		padding: 28px 24px;
	}

	.single-product .summary .product_title {
		font-size: 26px;
	}

	.single-product .woocommerce-tabs .content-woocommerce-tabs {
		margin: 0 16px;
		padding: 24px 20px;
	}
}

@media (max-width: 575px) {
	body.single-product .summary .quantity button.plus,
	body.single-product .summary .quantity button.minus {
		flex-basis: 30px;
		width: 30px;
		height: 30px;
		margin: 0 3px;
	}

	.single-product .summary .quantity .qty {
		width: 26px;
	}

	body.single-product .summary form.cart .single_add_to_cart_button.button,
	body.single-product .summary form.cart .quick-buy.button {
		padding: 0 14px;
		font-size: 14px;
	}

	.single-product .bwp-single-image .images {
		padding: 14px;
		border-radius: 18px;
	}

	.single-product .bwp-single-info .summary {
		padding: 22px 18px;
		border-radius: 18px;
	}

	.single-product .zs-share__btn {
		width: 48px;
		height: 48px;
	}
}

/* Συμμετρία και κενά: το θέμα βάζει 50px κενό αριστερά και 50px πάνω στη στήλη των στοιχείων,
   γι' αυτό η κάρτα έπεφτε πιο κάτω από τη φωτογραφία και η διάταξη βγαίνει ασύμμετρη. */
body.single-product .bwp-single-product .bwp-single-info {
	padding: 0 15px;
}

body.single-product .bwp-single-product .bwp-single-image {
	padding: 0 15px;
}

body.single-product .bwp-single-product {
	padding-top: 24px;
}

/* Περιγραφή: λιγότερος αέρας πάνω από τον τίτλο και κάτω από την κάρτα. */
body.single-product .woocommerce-tabs {
	margin: 24px 0 0;
	padding: 0;
}

body.single-product .woocommerce-tabs .content-woocommerce-tabs {
	padding: 24px 40px 28px;
}

body.single-product .woocommerce-tabs .content-ul-tab {
	margin: 0 0 16px;
	padding: 0;
}

body.single-product .woocommerce-tabs ul.tabs li {
	margin: 0 20px;
}

/* Σχετικά προϊόντα: πιο κοντά στην περιγραφή και στο footer. */
body.single-product .related {
	margin: 0;
	padding: 28px 0 28px;
}

body.single-product .related .content-product-list {
	max-width: 1230px;
	margin: 0 auto;
	padding: 0 18px;
	box-sizing: border-box;
}

body.single-product .related .title-block {
	margin: 0 0 22px;
}

body.single-product .related .title-block h2 {
	padding-bottom: 10px;
}

@media (max-width: 991px) {
	body.single-product .bwp-single-product .bwp-single-info,
	body.single-product .bwp-single-product .bwp-single-image {
		padding: 0 15px;
	}

	body.single-product .woocommerce-tabs .content-woocommerce-tabs {
		padding: 20px 20px 24px;
	}
}

/* Λευκή λωρίδα: το θέμα βάζει margin-top 50px στο .main-single-product και margin-top 60px στο footer·
   το περιθώριο «ξεφεύγει» και αφήνει το λευκό φόντο της σελίδας να φαίνεται πάνω και κάτω από το κρεμ. */
body.single-product .main-single-product {
	margin-top: 0 !important;
}

body.single-product .bwp-footer {
	margin-top: 0 !important;
}
