/*
 * MasterStyle – mobilaus ir planšetinio išdėstymo pataisymai.
 * Įkeliama per mu-plugins/ms-mobilus.php po The7 ir Elementor stilių.
 */

/* ------------------------------------------------------------------ */
/* Bendra (visi ekranai)                                              */
/* ------------------------------------------------------------------ */

/* „Išparduota“ – nedidelė žymė kampe, o ne didelis pilkas blokas per visą nuotrauką */
.woocom-project .out-stock-label,
.elementor-widget-the7-wc-products .out-stock-label,
.elementor-widget-the7-wc-products-carousel .out-stock-label {
	top: 10px !important;
	left: 10px !important;
	right: auto !important;
	bottom: auto !important;
	transform: none !important;
	margin: 0 !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 4px 9px !important;
	font-size: 11px !important;
	line-height: 1.3 !important;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	border-radius: 3px;
	background: rgba(0, 0, 0, .62) !important;
	z-index: 3;
}

/* Išparduotos prekės nuotrauka šiek tiek išblukinta */
.woocom-project .outofstock .woocom-list-content,
.product.outofstock .woocom-project img {
	opacity: .85;
}

/* ------------------------------------------------------------------ */
/* Planšetė ir telefonas (≤ 1024px)                                    */
/* ------------------------------------------------------------------ */
@media (max-width: 1024px) {
	/* Visos antraštės ikonos vienos spalvos (krepšelis buvo mėlynas) */
	.elementor-location-header .dt-menu-cart__toggle_button .elementor-icon,
	.elementor-location-header .dt-menu-cart__toggle_button .elementor-icon svg {
		color: #1f1f1f !important;
		fill: #1f1f1f !important;
	}

	/* Paspaudžiami elementai – ne mažesni nei 44px */
	.elementor-location-header .elementor-icon,
	.elementor-location-header .dt-menu-cart__toggle_button {
		min-width: 44px;
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	/* Paveikslėliai niekada neišlenda už ekrano */
	.elementor img,
	.woocommerce img {
		max-width: 100%;
		height: auto;
	}
}

/* ------------------------------------------------------------------ */
/* Telefonas (≤ 767px)                                                 */
/* ------------------------------------------------------------------ */
@media (max-width: 767px) {
	html,
	body {
		overflow-x: hidden;
	}

	body {
		-webkit-text-size-adjust: 100%;
	}

	/* --- Pagrindinio puslapio slaideris --- */
	.elementor-widget-the7-slider .the7-swiper-button {
		display: none !important; /* rodyklės dengia tekstą, slenkama pirštu */
	}

	.elementor-widget-the7-slider .elementor-widget-heading .elementor-heading-title {
		font-size: 30px !important;
		line-height: 1.2 !important;
		text-shadow: 0 1px 12px rgba(0, 0, 0, .35);
	}

	.elementor-widget-the7-slider .swiper-pagination {
		bottom: 18px !important;
	}

	/* --- Prekių kortelės (karuselės ir sąrašai) --- */
	.woocom-project .woocom-list-content {
		display: flex;
		flex-direction: column;
	}

	/* Pilnas pavadinimas (iki 5 eil.), nes tos pačios linijos prekės prasideda vienodai */
	.woocom-project .product-title,
	.woocom-project .woocommerce-loop-product__title {
		height: auto !important;
		max-height: none !important;
		display: -webkit-box !important;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 5;
		overflow: hidden;
	}

	.woocom-project .product-title,
	.woocom-project .product-title a,
	.woocom-project .woocommerce-loop-product__title {
		font-size: 13px !important;
		line-height: 1.4 !important;
		text-transform: none !important;
		letter-spacing: 0 !important;
		word-break: normal;
		overflow-wrap: break-word;
	}

	.woocom-project .price {
		font-size: 14px !important;
	}

	/* Trumpas aprašymas kortelėse telefone netelpa – slepiame */
	.woocom-project .woocommerce-product-details__short-description {
		display: none !important;
	}

	/* Kortelės mygtukas per visą plotį, tekstas vienoje eilutėje */
	.woocom-project .woo-list-buttons {
		width: 100%;
		margin-top: auto;
	}

	.woocom-project .woo-list-buttons .box-button {
		width: 100%;
		min-height: 42px;
		justify-content: center;
		padding: 8px 12px !important;
		font-size: 13px !important;
		line-height: 1.2 !important;
		white-space: nowrap;
	}

	.woocom-project .woo-list-buttons .box-button svg,
	.woocom-project .woo-list-buttons .box-button .elementor-button-icon {
		display: none !important; /* siauroje kortelėje ikona išstumia tekstą į 2 eil. */
	}

	/* Karuselės rodyklės neužlipa ant kortelių */
	.elementor-widget-the7-wc-products-carousel .owl-nav,
	.elementor-widget-the7-wc-products-carousel .the7-swiper-button,
	.elementor-widget-the7-simple-product-categories-carousel .the7-swiper-button {
		display: none !important;
	}

	/* --- Kategorijų plytelės --- */
	.elementor-widget-image .widget-image-caption {
		font-size: 18px !important;
		line-height: 1.2 !important;
		padding: 0 8px;
		text-shadow: 0 1px 8px rgba(0, 0, 0, .45) !important;
	}

	/* --- Antraštės ir tarpai --- */
	.elementor-widget-heading h1.elementor-heading-title,
	.page-title h1,
	.elementor-widget-the7-woocommerce-product-title .product_title {
		font-size: 26px !important;
		line-height: 1.25 !important;
		overflow-wrap: anywhere;
	}

	.elementor-widget-the7-wc-products-carousel .widget-title,
	.elementor-widget-the7-wc-products-carousel .rollover-title {
		font-size: 22px !important;
	}

	/* Duonos trupiniai – viena eilutė be perpildymo */
	.elementor-widget-the7-breadcrumb .breadcrumbs,
	.elementor-widget-the7-breadcrumb ol {
		flex-wrap: wrap;
		row-gap: 4px;
		font-size: 13px;
	}

	/* --- Filtrų / rūšiavimo eilutė katalogo viršuje --- */
	.elementor-widget-the7-product-sorting select,
	.elementor-widget-the7-product-sorting .orderby {
		max-width: 100%;
		font-size: 14px;
	}

	/* --- Prekės puslapis --- */
	.single-product .elementor-widget-the7-woocommerce-product-add-to-cart-v2 form.cart,
	.single-product form.cart {
		flex-wrap: wrap;
		gap: 12px;
	}

	.single-product form.cart:not(.grouped_form) .single_add_to_cart_button {
		flex: 1 1 auto;
		min-height: 48px;
	}

	/* Grupuotos prekės lentelė: pavadinimas per visą plotį, kaina ir kiekis po juo */
	.woocommerce-grouped-product-list,
	.woocommerce-grouped-product-list tbody {
		display: block;
		width: 100%;
	}

	.woocommerce-grouped-product-list tr.woocommerce-grouped-product-list-item {
		display: grid !important;
		grid-template-columns: 1fr auto;
		grid-template-areas:
			"label label"
			"qty   price";
		align-items: center;
		gap: 8px 12px;
		padding: 14px 0;
		border-bottom: 1px solid rgba(0, 0, 0, .1);
	}

	.woocommerce-grouped-product-list tr td {
		display: block !important;
		padding: 0 !important;
		border: 0 !important;
		width: auto !important;
	}

	.woocommerce-grouped-product-list .woocommerce-grouped-product-list-item__label {
		grid-area: label;
		font-size: 15px;
		line-height: 1.4;
	}

	.woocommerce-grouped-product-list .woocommerce-grouped-product-list-item__quantity {
		grid-area: qty;
	}

	.woocommerce-cart-form tr.cart_item td.product-quantity .quantity {
		margin: 0 !important;
		justify-content: flex-start !important;
		width: fit-content;
	}

	.woocommerce-grouped-product-list .woocommerce-grouped-product-list-item__price {
		grid-area: price;
		text-align: right;
		font-size: 14px;
		white-space: nowrap;
	}

	.woocommerce-grouped-product-list .woocommerce-grouped-product-list-item__price .stock {
		display: block;
		font-size: 12px;
		margin: 2px 0 0;
	}

	form.cart.grouped_form .single_add_to_cart_button {
		width: 100% !important;
		min-height: 48px;
		justify-content: center;
		margin-top: 12px;
	}

	/* --- Krepšelis --- */
	.woocommerce-cart-form table.cart thead {
		display: none;
	}

	.woocommerce-cart-form table.cart,
	.woocommerce-cart-form table.cart tbody {
		display: block;
		width: 100%;
	}

	.woocommerce-cart-form tr.cart_item {
		display: grid !important;
		grid-template-columns: 80px 1fr auto;
		grid-template-areas:
			"thumb name  remove"
			"thumb price price"
			"thumb qty   sub";
		gap: 6px 14px;
		align-items: center;
		padding: 16px 0 !important;
		border-bottom: 1px solid rgba(0, 0, 0, .1);
		text-align: left;
	}

	.woocommerce-cart-form table.cart tr.cart_item td {
		display: block !important;
		justify-content: flex-start !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		text-align: left !important;
		width: auto !important;
		min-height: 0 !important;
	}

	.woocommerce-cart-form tr.cart_item td::before {
		display: none !important;
	}

	.woocommerce-cart-form tr.cart_item td.product-thumbnail {
		grid-area: thumb;
		align-self: start;
	}

	.woocommerce-cart-form tr.cart_item td.product-thumbnail img {
		width: 80px !important;
		height: 80px !important;
		object-fit: contain;
	}

	.woocommerce-cart-form tr.cart_item td.product-name,
	.woocommerce-cart-form tr.cart_item td.product-name * {
		text-align: left !important;
		justify-content: flex-start !important;
	}

	.woocommerce-cart-form tr.cart_item td.product-name {
		grid-area: name;
		font-size: 14px;
		line-height: 1.35;
		font-weight: 600;
	}

	.woocommerce-cart-form tr.cart_item td.product-name a {
		color: #1f1f1f !important;
	}

	.woocommerce-cart-form tr.cart_item td.product-remove {
		grid-area: remove;
		align-self: start;
		justify-self: end;
	}

	.woocommerce-cart-form tr.cart_item td.product-price {
		grid-area: price;
		font-size: 13px;
		opacity: .75;
	}

	.woocommerce-cart-form tr.cart_item td.product-quantity {
		grid-area: qty;
	}

	.woocommerce-cart-form tr.cart_item td.product-subtotal {
		grid-area: sub;
		justify-self: end;
		font-weight: 600;
		white-space: nowrap;
	}

	.woocommerce-cart-form td.actions .cart-footer,
	.woocommerce-cart-form td.actions .coupon {
		flex-wrap: wrap;
		gap: 10px;
		width: 100%;
	}

	.woocommerce-cart-form td.actions .coupon .wc-coupon-field,
	.woocommerce-cart-form td.actions .coupon input.input-text {
		flex: 1 1 160px;
		width: 100% !important;
	}

	.woocommerce-cart-form td.actions {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.cart-collaterals .cart_totals,
	.woocommerce-cart .cart_totals {
		padding: 20px 16px !important;
	}

	/* --- Pristatymo būdai (krepšelis ir atsiskaitymas) --- */
	ul.woocommerce-shipping-methods li {
		display: grid !important;
		grid-template-columns: 22px 1fr;
		column-gap: 8px;
		align-items: center;
		margin: 0 0 12px !important;
		line-height: 1.35;
	}

	ul.woocommerce-shipping-methods li > input.shipping_method {
		margin: 0 !important;
		grid-column: 1;
	}

	ul.woocommerce-shipping-methods li > label,
	ul.woocommerce-shipping-methods li > div,
	ul.woocommerce-shipping-methods li > select,
	ul.woocommerce-shipping-methods li > .select2 {
		grid-column: 2;
		min-width: 0;
	}

	ul.woocommerce-shipping-methods li > br {
		display: none;
	}

	ul.woocommerce-shipping-methods li img {
		display: block;
		max-height: 22px;
		width: auto !important;
		margin: 0 0 4px;
	}

	ul.woocommerce-shipping-methods select,
	ul.woocommerce-shipping-methods .select2-container {
		width: 100% !important;
		max-width: 100%;
		margin-top: 6px;
	}

	.woocommerce-shipping-totals td,
	.woocommerce-shipping-totals th {
		display: block;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* --- Atsiskaitymas --- */
	.woocommerce-checkout .form-row select,
	.woocommerce-checkout .form-row .select2-container,
	.woocommerce-checkout .form-row input.input-text,
	.woocommerce-checkout .form-row textarea {
		width: 100% !important;
		max-width: 100%;
	}

	.woocommerce-checkout .form-row {
		width: 100% !important;
		float: none !important;
		margin-bottom: 14px;
	}

	.woocommerce-checkout input.input-text,
	.woocommerce-checkout select,
	.woocommerce-cart input.input-text,
	.woocommerce-account input.input-text {
		font-size: 16px !important; /* iOS nepritraukia (no zoom) */
		min-height: 44px;
	}

	.woocommerce-checkout-review-order-table th,
	.woocommerce-checkout-review-order-table td {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.wc-order-review,
	.woocommerce-checkout .woocommerce-checkout-review-order {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	#payment ul.payment_methods li {
		line-height: 1.4;
		margin-bottom: 10px;
	}

	#payment ul.payment_methods li img {
		max-height: 22px;
		width: auto;
		vertical-align: middle;
	}

	#payment .place-order .button,
	#place_order {
		width: 100%;
		min-height: 50px;
		font-size: 16px !important;
	}

	/* --- Paskyra --- */
	.woocommerce-MyAccount-navigation ul {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		padding: 0;
	}

	.woocommerce-MyAccount-navigation ul li {
		margin: 0 !important;
	}

	.woocommerce-account .woocommerce table.shop_table_responsive tr {
		display: block;
		padding: 12px 0;
		border-bottom: 1px solid rgba(0, 0, 0, .1);
	}

	/* --- Pranešimai („Įdėta į krepšelį“ ir pan.): apačioje per visą plotį, neuždengia turinio --- */
	.woocommerce-notices-wrapper .woocommerce-message,
	.woocommerce-notices-wrapper .woocommerce-info,
	.woocommerce-notices-wrapper .woocommerce-error {
		font-size: 14px;
		line-height: 1.45;
	}

	.woocommerce-notices-wrapper .woocommerce-message[style*="fixed"],
	.woocommerce-notices-wrapper > .woocommerce-message {
		position: fixed !important;
		left: 12px !important;
		right: 12px !important;
		top: auto !important;
		bottom: 12px !important;
		width: auto !important;
		max-width: none !important;
		transform: none !important;
		z-index: 9999;
		padding: 14px 44px 14px 60px !important;
		background: #1f1f1f !important;
		color: #fff !important;
		border-radius: 8px;
		box-shadow: 0 6px 24px rgba(0, 0, 0, .25);
	}

	.woocommerce-notices-wrapper > .woocommerce-message a {
		color: #ec8f9f !important;
	}

	/* --- Iššokantys langai (meniu, filtrai, krepšelis) --- */
	.elementor-popup-modal .dialog-widget-content {
		max-width: 100vw;
	}

	.elementor-popup-modal .dialog-close-button {
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	/* --- Poraštė --- */
	.elementor-location-footer .elementor-widget-the7_nav-menu li a {
		padding-top: 6px !important;
		padding-bottom: 6px !important;
	}
}

/* ------------------------------------------------------------------ */
/* Labai siauri telefonai (≤ 380px)                                    */
/* ------------------------------------------------------------------ */
@media (max-width: 380px) {
	.woocom-project .woo-list-buttons .box-button {
		font-size: 12px !important;
		padding: 8px !important;
	}

	.woocom-project .product-title,
	.woocom-project .product-title a {
		font-size: 13px !important;
	}

	.elementor-widget-the7-slider .elementor-widget-heading .elementor-heading-title {
		font-size: 26px !important;
	}

	.woocommerce-cart-form tr.cart_item {
		grid-template-columns: 64px 1fr auto;
	}

	.woocommerce-cart-form tr.cart_item td.product-thumbnail img {
		width: 64px !important;
		height: 64px !important;
	}
}
