/* =========================================================================
   WooCommerce — pood, tooteleht, ostukorv, kassa
   ========================================================================= */

/* -------------------------------------------------------------------------
   Teekond
   ---------------------------------------------------------------------- */

.rz-breadcrumbs {
	color: var(--wp--preset--color--contrast-soft);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: var(--wp--preset--spacing--30);
}

.rz-breadcrumbs a { color: inherit; }
.rz-breadcrumbs a:hover { color: var(--wp--preset--color--primary); }


/* -------------------------------------------------------------------------
   Tootearhiiv
   ---------------------------------------------------------------------- */

.rz-shop__bar {
	align-items: center;
	padding: var(--wp--preset--spacing--30) 0;
	margin-bottom: var(--wp--preset--spacing--40);
	border-top: 1px solid var(--wp--preset--color--border);
	border-bottom: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--contrast-soft);
}

.rz-shop__bar select {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 4px;
	padding: 0.45rem 0.65rem;
	background: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--small);
}

/* Tootekaart */
.rz-grid .wc-block-product-template__responsive,
.rz-grid .wp-block-post-template {
	gap: var(--wp--preset--spacing--50) var(--wp--preset--spacing--40);
}

.rz-grid li img {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 4px;
	transition: transform 300ms ease;
}

.rz-grid li:hover img { transform: scale(1.02); }

.rz-grid .wp-block-post-title {
	margin: var(--wp--preset--spacing--30) 0 var(--wp--preset--spacing--20);
	line-height: 1.35;
}

.rz-grid .wp-block-post-title a { color: var(--wp--preset--color--contrast); }
.rz-grid .wp-block-post-title a:hover { color: var(--wp--preset--color--primary); }

.rz-grid .wc-block-components-product-price {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 600;
}

.rz-grid del { color: var(--wp--preset--color--contrast-soft); font-weight: 400; }
.rz-grid ins { text-decoration: none; }


/* -------------------------------------------------------------------------
   Tooteleht
   ---------------------------------------------------------------------- */

.rz-product__main { align-items: flex-start; }

.rz-product__info > * + * { margin-top: var(--wp--preset--spacing--30); }

.rz-price {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	color: var(--wp--preset--color--contrast);
}

.rz-price del {
	font-size: 0.7em;
	font-weight: 400;
	color: var(--wp--preset--color--contrast-soft);
	margin-right: 0.4em;
}

.rz-price ins { text-decoration: none; }

/* "Hind käibemaksuta: …" oma reale ja väiksemaks, mitte hinna sisse */
.rz-price .woocommerce-price-suffix,
.rz-price small {
	display: block;
	margin-top: 0.35rem;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400;
	color: var(--wp--preset--color--contrast-soft);
}

.rz-product__summary { color: var(--wp--preset--color--contrast-soft); }

.rz-product__meta {
	margin-top: var(--wp--preset--spacing--40);
	padding-top: var(--wp--preset--spacing--30);
	border-top: 1px solid var(--wp--preset--color--border);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--contrast-soft);
}

/* Müügimärgis pildil */
.rz-product .onsale,
.rz-grid .wc-block-components-product-sale-badge {
	background: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--contrast);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 0.35rem 0.75rem;
	border-radius: 3px;
}

/* Galerii */
.rz-product .woocommerce-product-gallery__image img { border-radius: 4px; }

.rz-product .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--wp--preset--spacing--20);
	margin-top: var(--wp--preset--spacing--20);
	padding: 0;
	list-style: none;
}

/*
 * Flexslider annab pisipiltidele `li { width: 25%; float: left }`, mis
 * grid-lahtri sees tähendab 25% lahtri laiusest — pildid jäid 31px suuruseks.
 */
.rz-product .woocommerce-product-gallery.woocommerce-product-gallery .flex-control-thumbs.flex-control-nav li {
	width: 100%;
	float: none;
	margin: 0;
}

.rz-product .woocommerce-product-gallery.woocommerce-product-gallery .flex-control-thumbs.flex-control-nav li img,
.rz-product .flex-control-thumbs img {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 3px;
	cursor: pointer;
	opacity: 0.7;
	transition: opacity 180ms ease;
}

.rz-product .flex-control-thumbs img:hover,
.rz-product .flex-control-thumbs .flex-active { opacity: 1; }


/* -------------------------------------------------------------------------
   Lisa korvi vorm
   ---------------------------------------------------------------------- */

.rz-atc { margin-top: var(--wp--preset--spacing--40); }

.rz-atc .quantity input[type="number"],
.woocommerce .quantity input[type="number"] {
	width: 4.5rem;
	padding: 0.7rem 0.5rem;
	text-align: center;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 4px;
}

.rz-atc .single_add_to_cart_button,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 600;
	border: 0;
	border-radius: 4px;
	padding: 0.9em 2em;
	transition: background 180ms ease;
}

.rz-atc .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover {
	background: var(--wp--preset--color--primary-dark);
	color: var(--wp--preset--color--base);
}

.woocommerce .button {
	background: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--contrast);
	border-radius: 4px;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 600;
}

.woocommerce .button:hover {
	background: var(--wp--preset--color--secondary-deep);
	color: var(--wp--preset--color--contrast);
}


/* -------------------------------------------------------------------------
   Tabid ja seotud tooted
   ---------------------------------------------------------------------- */

.rz-product__tabs .wc-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	list-style: none;
	margin: 0 0 var(--wp--preset--spacing--50);
	padding: 0;
	border-bottom: 1px solid var(--wp--preset--color--border);
}

/* WooCommerce'i vaikimisi tabid on kastikesed varjuga — teeme neist
   alljoonega vahekaardid, nagu Flatsome'is */
.rz-product__tabs .wc-tabs li {
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.rz-product__tabs .wc-tabs li::before,
.rz-product__tabs .wc-tabs li::after { display: none; }

.rz-product__tabs .wc-tabs a {
	display: block;
	padding: 0.75rem var(--wp--preset--spacing--40) 0.75rem 0;
	margin-right: var(--wp--preset--spacing--40);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-soft);
	text-decoration: none;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
	transition: color 160ms ease, border-color 160ms ease;
}

.rz-product__tabs .wc-tabs a:hover { color: var(--wp--preset--color--contrast); }

.rz-product__tabs .wc-tabs li.active a {
	color: var(--wp--preset--color--primary);
	border-bottom-color: var(--wp--preset--color--primary);
}

/*
 * WooCommerce kordab kaardi nime uuesti sisu kohal pealkirjana
 * ("Kirjeldus" vahekaart ja kohe all "Kirjeldus" h2). Flatsome peitis
 * selle ära — teeme sama.
 */
.rz-product__tabs .woocommerce-Tabs-panel > h2:first-child { display: none; }

.rz-related h2 { margin-bottom: var(--wp--preset--spacing--40); }


/* -------------------------------------------------------------------------
   Ostukorv, kassa, minu konto — klassikalised shortcode-lehed
   ---------------------------------------------------------------------- */

.rz-wide .woocommerce table.shop_table {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 4px;
	border-collapse: separate;
}

.rz-wide .woocommerce table.shop_table th {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 600;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-top-color: var(--wp--preset--color--primary);
	background: var(--wp--preset--color--base-soft);
	border-radius: 4px;
}

.woocommerce-message::before,
.woocommerce-info::before { color: var(--wp--preset--color--primary); }

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 4px;
	padding: 0.7rem 0.75rem;
	font-family: var(--wp--preset--font-family--body);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: -1px;
}

/* Tasuta tarne teade ostukorvis */
.woocommerce-cart .woocommerce-info .button { margin-right: var(--wp--preset--spacing--30); }


/* -------------------------------------------------------------------------
   Kassa — makseviisid ja tellimuse kinnitamine

   WooCommerce'i vaikevärvid on hallikas-lillad (#ebe9eb). Toome need
   brändi peale: murtud valge taust, teal aktsent.
   ---------------------------------------------------------------------- */

.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-payment {
	background: var(--wp--preset--color--base-soft);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 6px;
}

.woocommerce-checkout #payment ul.payment_methods {
	padding: var(--wp--preset--spacing--40);
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.woocommerce-checkout #payment ul.payment_methods li {
	list-style: none;
	margin: 0 0 var(--wp--preset--spacing--20);
}

.woocommerce-checkout #payment ul.payment_methods li:last-child { margin-bottom: 0; }

.woocommerce-checkout #payment ul.payment_methods label {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 500;
	cursor: pointer;
}

.woocommerce-checkout #payment ul.payment_methods img {
	max-height: 26px;
	width: auto;
	vertical-align: middle;
}

/* Valitud makseviisi selgitus */
.woocommerce-checkout #payment div.payment_box {
	background: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--contrast);
	border-radius: 4px;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.55;
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: var(--wp--preset--color--secondary);
}

/* Raadionupud ja märkeruudud brändivärvi */
.woocommerce-checkout input[type="radio"],
.woocommerce-checkout input[type="checkbox"],
.woocommerce-cart input[type="checkbox"] {
	accent-color: var(--wp--preset--color--primary);
	width: 1.05rem;
	height: 1.05rem;
}

/* Nõustumise plokk */
.woocommerce-checkout #payment .place-order {
	padding: var(--wp--preset--spacing--40);
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin-bottom: var(--wp--preset--spacing--40);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.6;
}

.woocommerce-checkout .woocommerce-privacy-policy-text p {
	color: var(--wp--preset--color--contrast-soft);
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox input { margin-top: 0.15rem; }

/* Esita tellimus */
.woocommerce-checkout #place_order {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.0625rem;
	font-weight: 600;
	border: 0;
	border-radius: 4px;
	padding: 1em 2.5em;
	transition: background 180ms ease;
}

.woocommerce-checkout #place_order:hover { background: var(--wp--preset--color--primary-dark); }

/* Tellimuse kokkuvõte */
.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout-review-order-table tfoot td {
	font-family: var(--wp--preset--font-family--heading);
}

.woocommerce-checkout-review-order-table tfoot .order-total th,
.woocommerce-checkout-review-order-table tfoot .order-total td {
	font-size: 1.125rem;
	font-weight: 700;
	border-top: 2px solid var(--wp--preset--color--border);
}

.woocommerce-checkout .includes_tax,
.woocommerce-checkout small.tax_label {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 400;
	color: var(--wp--preset--color--contrast-soft);
}

@media (max-width: 600px) {
	.woocommerce-checkout #payment ul.payment_methods,
	.woocommerce-checkout #payment .place-order { padding: var(--wp--preset--spacing--30); }

	.woocommerce-checkout #place_order { width: 100%; }
}


/* -------------------------------------------------------------------------
   Mobiil
   ---------------------------------------------------------------------- */

@media (max-width: 900px) {

	.rz-product__main { gap: var(--wp--preset--spacing--50); }

	.rz-shop__bar { gap: var(--wp--preset--spacing--20); }

	.rz-grid li img { aspect-ratio: 4 / 5; }
}

@media (max-width: 600px) {
	.rz-product__tabs .wc-tabs { gap: var(--wp--preset--spacing--30); }
}
