/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ==========================================================================
   1.1 — Touch target'ai >= 48x48px (WCAG 2.5.5 / Google Mobile-First)
   Sprendimo planas, Etapas 1, punktas 1.1

   SVARBU: Woodmart komponentų CSS (woo-prod-loop-fw-button.css ir kt.)
   įkeliamas VĖLIAU dokumente nei šis inline'intas child stilius, todėl
   vienodo specifiškumo taisyklės pralaimi eilės tvarka. Dėl to mygtukų
   aukščio kintamiesiems naudojam !important — tai taikoma tik custom
   properties, ne išdėstymui.

   Taikoma tik touch įrenginiams — desktop išvaizda nesikeičia.
   ========================================================================== */
@media (pointer: coarse), (max-width: 1024px) {

	/* --- Mygtukų aukštį Woodmart valdo kintamaisiais, ne height --- */
	/* Temos reikšmės: --btn-accented-height 38/42px, .btn-size-small 36px */
	body .wd-product,
	body .wd-product.wd-hover-fw-button,
	body .wd-product .wd-add-btn,
	body .wd-products .wd-product {
		--btn-accented-height: 48px !important;
		--btn-height: 48px !important;
	}

	body .btn-size-small,
	body .btn-size-extra-small {
		--btn-height: 48px !important;
	}

	/* --- Header įrankių ikonos (paieška, krepšelis, paskyra, meniu) — buvo 40x40 --- */
	.whb-main-header .wd-tools-element > a,
	.whb-main-header .wd-tools-element > .wd-tools-inner,
	.wd-header-mobile-nav > a,
	.wd-header-cart > a,
	.wd-header-search > a,
	.wd-header-my-account > a,
	.wd-header-wishlist > a {
		min-width: 48px;
		min-height: 48px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	/* --- Bendri mygtukai — buvo 36-42px aukščio --- */
	body :is(.btn, .button, button:not(.wd-btn-arrow), input[type="submit"], input[type="button"]),
	body .single_add_to_cart_button,
	body .wd-buy-now-btn,
	body .added_to_cart,
	body a.button.product_type_simple,
	body a.button.add_to_cart_button,
	body a.button.ajax_add_to_cart {
		min-height: 48px !important;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	/* --- Slider rodyklės — buvo 44x44 --- */
	.wd-btn-arrow,
	.wd-prev,
	.wd-next {
		min-width: 48px;
		min-height: 48px;
	}

	/* --- Paieškos submit — buvo 46px pločio --- */
	.searchsubmit,
	.search-button,
	form.searchform button[type="submit"] {
		min-width: 48px;
		min-height: 48px;
	}

	/* --- Notice / popup uždarymo nuorodos — buvo 60x25 --- */
	body .wd-notice a.close,
	body .woocommerce-message a.close,
	body a.close,
	body .wd-close-side-widget,
	body .mfp-close {
		min-width: 48px !important;
		min-height: 48px !important;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	/* --- WhatsApp / chat widget (qlwapp plugin) — buvo 72x40 --- */
	body .qlwapp__button,
	body .qlwapp-toggle .qlwapp__button {
		min-width: 48px !important;
		min-height: 48px !important;
	}

	/* --- Tekstinės nuorodos, veikiančios kaip mygtukai — buvo 118x18 --- */
	.create-account-button,
	.wd-lost-password a,
	.woocommerce-privacy-policy-link,
	.showcoupon {
		display: inline-flex;
		align-items: center;
		min-height: 48px;
	}

	/* --- Kiekio laukelis ir jo mygtukai --- */
	.quantity input.qty,
	.quantity .plus,
	.quantity .minus,
	.wd-quantity .wd-qty-btn {
		min-width: 48px;
		min-height: 48px;
	}

	/* --- Skip-nav nuorodos (accessibility) --- */
	.wd-skip-navigation,
	.wd-skip-content {
		min-height: 48px;
		display: inline-flex;
		align-items: center;
	}

	/* --- Meniu punktai mobiliame --- */
	.wd-nav-mobile > li > a,
	.mobile-nav .wd-nav > li > a {
		min-height: 48px;
		display: flex;
		align-items: center;
	}
}

/* ==========================================================================
   Išdėstymo defektų taisymai
   PASTABA: abu defektai egzistuoja ir produkcijoje — tai NE regresija nuo
   1.1 touch target darbų (tie taikomi tik <=1024px / pointer:coarse).
   ========================================================================== */

/* --- A. Hero sekcija prilipusi prie kraštų ---------------------------------
   Priežastis: hero sekcijai (.elementor-element-1f7e021) Elementor'e
   nenustatytas horizontalus padding (0px), o visoms kitoms sekcijoms — 0 15px.
   Dėl to tekstas prasidėdavo ties x=0.
   Fonas lieka per visą plotį (jis ant tėvinio .e-con), padingas dedamas
   turiniui — tai standartinis Elementor pattern'as.
   -------------------------------------------------------------------------- */
@media (min-width: 1025px) {

	/* Apsauga: jei kuri nors pirmo lygio sekcija liktų be paraščių,
	   ji gaus bent tokią pat kaip visos kitos (15px). */
	.e-con.e-parent > .e-con-inner {
		padding-inline: max(15px, var(--wd-section-gutter, 0px));
	}

	/* Hero — platesnė paraštė nei bendra 15px, nes tai pilno pločio juosta su
	   fonu ir dideliu tekstu. Selektorius turi būti specifiškesnis už bendrą
	   .e-con.e-parent taisyklę aukščiau (0,3,0), todėl pridedam .e-con. */
	/* Antraštės kolona siaura (~699px), todėl per didelė paraštė nulaužia
	   "trust." į trečią eilutę. 40px – riba, ties kuria dar telpa 2 eilutės. */
	.e-con.elementor-element-1f7e021 > .e-con-inner {
		padding-inline: clamp(20px, 2.5vw, 40px);
	}
}

@media (max-width: 1024px) {
	.elementor-element-1f7e021 > .e-con-inner {
		padding-inline: 20px;
	}
}

/* --- B. Vaziuojanti eilutė (marquee) be tarpų tarp elementų ----------------
   Priežastis: .wd-marquee-content turi gap: 0, todėl "Free Shipping from 200€"
   ir "Shipped within 24hours" su ikonėlėmis lipdavo vienas prie kito.
   Sprendimas: padding-inline ant paties elemento, o ne gap ant konteinerio —
   taip tarpas vienodas ir ties animacijos ciklo siūle (gap paliktų šuolį).
   -------------------------------------------------------------------------- */
.wd-marquee-item {
	padding-inline: 28px;
}

/* Ikonėlės ir teksto tarpas elemento viduje (temos numatytas 10px — paliekam,
   tik užtikrinam, kad ikonėlė nebūtų prispausta prie teksto siauruose ekranuose) */
.wd-marquee-item > img {
	flex-shrink: 0;
	margin-inline-end: 2px;
}

@media (max-width: 767px) {
	.wd-marquee-item {
		padding-inline: 18px;
	}
}

/* ==========================================================================
   3.2 — Soft-conversion CTA produkto puslapyje
   Vizualiai silpnesnis uz "Add to cart", kad nekonkuruotu su pirkimu.
   ========================================================================== */
.ec-ask-expert {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin-top: 12px;
	width: 100%;
	background: transparent;
	border: 1px solid currentColor;
	opacity: .85;
}

.ec-ask-expert:hover {
	opacity: 1;
}

/* B2B sekcija */
.b2b-enquiry-section .ec-b2b-form input[type="text"],
.b2b-enquiry-section .ec-b2b-form input[type="email"],
.b2b-enquiry-section .ec-b2b-form textarea {
	width: 100%;
	min-height: 48px;
}

.b2b-enquiry-section .ec-b2b-form textarea {
	min-height: 120px;
}

.b2b-enquiry-section .ec-b2b-form .wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}

.b2b-enquiry-section .ec-b2b-form input[type="submit"] {
	min-height: 48px;
	padding-inline: 34px;
}

@media (max-width: 767px) {
	.b2b-enquiry-section .wd-col-6 {
		flex: 0 0 100%;
		max-width: 100%;
	}
}

/* ==========================================================================
   3.3 — FAQ sekcija (native <details>, be JS)
   ========================================================================== */
.ec-faq {
	max-width: 860px;
	margin: 0 auto;
}

.ec-faq-item {
	border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.ec-faq-q {
	cursor: pointer;
	list-style: none;
	padding: 18px 44px 18px 0;
	position: relative;
	font-weight: 600;
	font-size: 17px;
	line-height: 1.45;
	min-height: 48px;
	display: flex;
	align-items: center;
}

.ec-faq-q::-webkit-details-marker {
	display: none;
}

/* +/- indikatorius */
.ec-faq-q::after {
	content: "";
	position: absolute;
	right: 8px;
	top: 50%;
	width: 11px;
	height: 11px;
	margin-top: -7px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform .2s ease;
	opacity: .6;
}

.ec-faq-item[open] .ec-faq-q::after {
	transform: rotate(-135deg);
	margin-top: -2px;
}

.ec-faq-a {
	padding: 0 44px 20px 0;
	line-height: 1.65;
	opacity: .85;
}

.ec-faq-a p {
	margin: 0;
}

.ec-faq-q:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

/* ==========================================================================
   3.4 — Produkto trust blokas
   ========================================================================== */
.ec-product-trust {
	list-style: none;
	margin: 22px 0 14px;
	padding: 16px 18px;
	border: 1px solid rgba(0, 0, 0, .09);
	border-radius: 8px;
	background: rgba(0, 120, 209, .035);
}

.ec-product-trust li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	padding: 7px 0;
	line-height: 1.5;
	font-size: 14px;
}

.ec-trust-icon {
	flex: 0 0 auto;
	color: #0078d1;
	font-weight: 700;
	line-height: 1.5;
}

.ec-product-disclaimer {
	font-size: 12.5px;
	opacity: .7;
	line-height: 1.55;
	margin: 0 0 18px;
}

/* ==========================================================================
   4.1 — Trust / compliance blokas
   ========================================================================== */
.ec-trust-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	justify-content: center;
	margin-bottom: 40px;
}

.ec-trust-stat {
	text-align: center;
}

.ec-trust-stat strong {
	display: block;
	font-size: 40px;
	line-height: 1.1;
	color: #0078d1;
}

.ec-trust-stat span {
	font-size: 14px;
	opacity: .75;
}

.ec-trust-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 22px;
}

.ec-trust-card {
	padding: 24px;
	border: 1px solid rgba(0, 0, 0, .09);
	border-radius: 10px;
	background: #fff;
}

.ec-trust-card h3 {
	font-size: 17px;
	margin: 0 0 10px;
	line-height: 1.35;
}

.ec-trust-card p {
	margin: 0 0 12px;
	line-height: 1.6;
	opacity: .82;
	font-size: 14.5px;
}

.ec-trust-card a {
	font-size: 14px;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}
