/* assets/css/checkout-steps.css */

/* Formularz przychodzi z serwera w standardowym układzie WooCommerce, a JS
   przenosi jego istniejące pola do układu wieloetapowego. Ukrycie przez
   visibility zachowuje miejsce w dokumencie, ale eliminuje widoczny flash i
   skakanie elementów przed zakończeniem tej synchronicznej przebudowy. */
body.indizio-msc-checkout-booting form.checkout,
body.indizio-msc-checkout-booting form[name="checkout"] {
	visibility: hidden !important;
}

.indizio-msc-layout {
	display: none;
}

form.checkout.indizio-msc-ready .indizio-msc-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
	gap: 24px;
	align-items: flex-start;
	width: 100%;
	max-width: none;
	min-width: 0;
	flex: 0 0 100%;
	grid-column: 1 / -1;
	float: none;
	clear: both;
	box-sizing: border-box;
}

/* UWAGA - odejście od dosłownego brzmienia I1/M6 z finalnego reviewu, patrz
   final-review-fix-report.md: buildLayout() w checkout-steps.js przenosi
   .woocommerce-billing-fields i .woocommerce-shipping-fields W CAŁOŚCI
   (całe divy, $panels[2].append($billing, $shipFields)) do widocznego
   panelu kroku 2 - w miejscu oryginalnym NIE zostaje żaden osierocony
   fragment tych dwóch kontenerów, więc nie wolno ich ukrywać globalnym
   selektorem potomka: taki selektor złapałby też PRZENIESIONĄ, aktualnie
   widoczną kopię (bo nadal jest potomkiem form.checkout.indizio-msc-ready,
   tylko głębiej zagnieżdżonym) i chowałby prawdziwe pola formularza w
   kroku 2. Zweryfikowane na żywo (Playwright): z usuniętym ">" pole
   #billing_email miało offsetParent === null po przejściu do kroku 2.
   .woocommerce-additional-fields to inny przypadek - buildNotesToggle()
   przenosi tylko jego .contents(), a sam (już pusty) div zostaje na
   miejscu jako bezpośrednie dziecko form.checkout (tak w fixture, jak i w
   prawdziwym rdzeniu WC, gdzie additional-fields nie jest zagnieżdżone w
   #customer_details) - to faktyczny osierocony kontener, więc kombinator
   ">" tu zostaje i poprawnie go chowa. */
form.checkout.indizio-msc-ready > .woocommerce-additional-fields {
	display: none !important;
}

/* Prawdziwy rdzeń WooCommerce zagnieżdża pola rozliczeniowe/dostawy
   wewnątrz #customer_details > .col-1/.col-2. buildLayout() wyciąga same
   .woocommerce-billing-fields/.woocommerce-shipping-fields (patrz wyżej),
   więc #customer_details zostaje w DOM puste - trzeba je jawnie ukryć,
   tak samo jak nagłówek "Twoje zamówienie" i resztki #order_review,
   inaczej zostaje osierocony nagłówek i puste odstępy nad akordeonem.
   Kombinator ">" jest tu poprawny, bo #customer_details/#order_review
   same NIE są przenoszone - to bezpośrednie dzieci form.checkout,
   z których JS wyciąga tylko wybrane elementy potomne. */
form.checkout.indizio-msc-ready > #customer_details,
form.checkout.indizio-msc-ready > #order_review_heading,
form.checkout.indizio-msc-ready > #order_review {
	display: none !important;
}

.indizio-msc-main {
	min-width: 0;
}

.indizio-msc-summary {
	width: 100%;
	max-width: 380px;
	min-width: 0;
	justify-self: end;
	position: sticky;
	top: 20px;
	background: #fafafa;
	border: 1px solid #e2e2e2;
	border-radius: 10px;
	padding: 16px;
	box-sizing: border-box;
}

.indizio-msc-summary:empty {
	display: none;
}

.indizio-msc-mobile-summary-slot {
	display: none;
}

form.checkout.indizio-msc-ready tr.woocommerce-shipping-totals {
	display: none !important;
}

/* InPost PL w trybie klasycznym dodaje wybierak paczkomatu jako osobny
   wiersz tabeli po dostawie. JS przenosi jego zawartosc pod zaznaczona
   metoda, a pusty wiersz zrodlowy nie moze zostac w podsumowaniu. */
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.easypack-parcel-machine {
	display: none !important;
}

/* Czytelne wyrĂłwnanie produktĂłw i kwot niezaleĹĽnie od stylĂłw motywu. */
form.checkout.indizio-msc-ready .indizio-msc-table-slot table.woocommerce-checkout-review-order-table {
	width: 100% !important;
	table-layout: auto;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item .product-name,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item td:first-child {
	text-align: left !important;
	vertical-align: middle;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item .product-name img,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item .product-thumbnail img,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item td:first-child img {
	display: block !important;
	float: left !important;
	margin: 0 12px 0 0 !important;
	object-fit: contain;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item .product-total,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item td:last-child,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-subtotal td,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-discount td,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total td {
	text-align: right !important;
	vertical-align: middle;
	white-space: nowrap;
	padding-right: 6px !important;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item .product-total > *,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item td:last-child > *,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total td > strong {
	display: block !important;
	width: 100% !important;
	margin-right: 0 !important;
	margin-left: auto !important;
	text-align: right !important;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total td small.includes_tax {
	display: block;
	margin-top: 3px;
	font-size: 9px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	text-align: right !important;
	opacity: .62;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total td small.includes_tax *,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total td .tax_label {
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.tax-total th,
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.tax-total td {
	font-size: 10px !important;
	font-weight: 400 !important;
	line-height: 1.25 !important;
	opacity: .66;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.tax-total td {
	text-align: right !important;
}

/* Informacyjna pozycja wysyłki pozostaje ostatnim składnikiem zamówienia
   przed kwotą łączną. Nie zawiera pól formularza, więc nie dubluje wyboru z
   kroku 1 i jest bezpieczna przy podmianach tabeli przez AJAX WooCommerce. */
form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.indizio-msc-shipping-summary {
	display: flex !important;
	align-items: center;
	width: 100% !important;
	margin-top: 5px;
	padding-top: 9px;
	border-top: 1px solid #e2e2e2;
	box-sizing: border-box !important;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.indizio-msc-shipping-summary > th {
	display: block !important;
	flex: 1 1 55%;
	min-width: 0;
	padding-right: 10px !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.indizio-msc-shipping-summary > th > span,
form.checkout.indizio-msc-ready .indizio-msc-table-slot .indizio-msc-shipping-summary__method {
	display: block;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot .indizio-msc-shipping-summary__method {
	margin-top: 2px;
	color: #666;
	font-size: 10px;
	font-weight: 400;
	line-height: 1.3;
}

form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.indizio-msc-shipping-summary > td {
	display: block !important;
	flex: 0 1 45%;
	width: auto !important;
	min-width: 0;
	margin-left: auto;
	padding-right: 6px !important;
	box-sizing: border-box !important;
	text-align: right !important;
	white-space: nowrap;
}

/* Desktop: zawartość wykorzystuje pełną szerokość wewnętrznej karty.
   Siatka produktu i blokowe sekcje tabeli zachowują marginesy kontenera,
   ale nie pozwalają motywowi zwęzić wierszy kwot. */
@media (min-width: 781px) {
	form.checkout.indizio-msc-ready .indizio-msc-table-slot table.woocommerce-checkout-review-order-table {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot table.woocommerce-checkout-review-order-table > tbody {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot table.woocommerce-checkout-review-order-table > tfoot {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(92px, max-content) !important;
		align-items: center !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item > td {
		display: block !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item > .product-total,
	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart_item > td:last-child {
		width: auto !important;
		min-width: 92px !important;
	}
}

/* Akordeon - każdy krok to nagłówek (numer/checkmark + etykieta + recap +
   strzałka) + własna treść bezpośrednio pod nim, jedna kolumna */
.indizio-msc-accordion-item {
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	margin-bottom: 10px;
	overflow: hidden;
}

.indizio-msc-step {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 16px;
	width: 100%;
	border: none;
	background: #f7f7f7;
	color: #999;
	font-size: 13px;
	font-weight: 700;
	text-align: left;
	cursor: not-allowed;
	box-sizing: border-box;
}

.indizio-msc-step__badge {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #ccc;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
}

.indizio-msc-step.is-active .indizio-msc-step__badge,
.indizio-msc-step.is-done .indizio-msc-step__badge {
	background: #1a1a1a;
}

.indizio-msc-step__label {
	flex: 1 1 auto;
	letter-spacing: .02em;
	text-transform: uppercase;
}

.indizio-msc-step__recap {
	flex: 0 1 auto;
	font-size: 11px;
	font-weight: 400;
	text-transform: none;
	color: #666;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 220px;
}

.indizio-msc-step__chevron {
	display: flex;
	flex-shrink: 0;
	transition: transform .15s;
}

.indizio-msc-step.is-active .indizio-msc-step__chevron {
	transform: rotate(180deg);
}

.indizio-msc-step.is-active {
	background: #1a1a1a;
	color: #fff;
	cursor: default;
}

.indizio-msc-step.is-done {
	background: #fff;
	color: #1a1a1a;
	cursor: pointer;
}

.indizio-msc-step:disabled {
	opacity: .55;
}

.indizio-msc-panel[hidden] {
	display: none;
}

.indizio-msc-panel:not([hidden]) {
	padding: 20px;
	box-sizing: border-box;
}

.indizio-msc-actions {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 20px;
}

.indizio-msc-actions--pre {
	justify-content: flex-start;
	margin-top: 0;
	margin-bottom: 16px;
}

.indizio-msc-actions--entry {
	flex-direction: column;
	align-items: stretch;
}

.indizio-msc-next,
.indizio-msc-back,
.indizio-msc-login {
	padding: 12px 24px;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	cursor: pointer;
	border: 1px solid #1a1a1a;
}

.indizio-msc-next {
	background: #1a1a1a;
	color: #fff;
}

.indizio-msc-back {
	background: #fff;
	color: #1a1a1a;
}

.indizio-msc-actions--entry .indizio-msc-next,
.indizio-msc-actions--entry .indizio-msc-login {
	width: 100%;
}

.indizio-msc-login {
	background: #fff;
	color: #1a1a1a;
}

/* Karty metod dostawy/płatności - bordered rows, wyróżnienie wybranej */
.indizio-msc-shipping-slot ul,
.indizio-msc-payment-methods-slot ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.indizio-msc-shipping-slot li,
.indizio-msc-payment-methods-slot li {
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	padding: 12px 14px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.indizio-msc-shipping-slot li:has(input:checked),
.indizio-msc-payment-methods-slot li:has(input:checked) {
	border-color: #1a1a1a;
	background: #fafafa;
}

.indizio-msc-shipping-slot {
	width: 100%;
	min-width: 0;
	margin-bottom: 16px;
}

.indizio-msc-shipping-rates-slot,
.indizio-msc-shipping-rates-slot > td {
	display: block !important;
	width: 100% !important;
	min-width: 0;
	box-sizing: border-box;
}

.indizio-msc-shipping-slot #shipping_method {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.indizio-msc-shipping-slot li.indizio-msc-has-shipping-extra {
	flex-wrap: wrap;
}

.indizio-msc-shipping-extra-slot {
	flex: 0 0 100%;
	width: 100%;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid #e2e2e2;
	box-sizing: border-box;
}

.indizio-msc-shipping-extra-slot:empty {
	display: none;
}

.indizio-msc-shipping-extra-slot .easypack_show_geowidget,
.indizio-msc-shipping-slot #shipping_method > .easypack_show_geowidget {
	display: block !important;
	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding-right: 15px;
	padding-left: 15px;
	line-height: 1.3 !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: break-word;
	writing-mode: horizontal-tb !important;
	text-orientation: mixed;
	box-sizing: border-box;
}

/* Recap - kompaktowa tabelka podsumowania w kroku 3 */
.indizio-msc-recap {
	margin-bottom: 16px;
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	padding: 14px 16px;
	background: #fafafa;
	box-sizing: border-box;
}

.indizio-msc-recap__row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 4px 0;
	font-size: 13px;
}

.indizio-msc-recap__row span {
	color: #888;
}

.indizio-msc-recap__row strong {
	text-align: right;
	font-weight: 600;
	color: #1a1a1a;
}

/* Zwijana sekcja generyczna - używana i dla kuponu (podsumowanie), i dla
   uwag do zamówienia (krok 3) */
.indizio-msc-collapsible {
	margin-bottom: 16px;
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
	box-sizing: border-box;
}

.indizio-msc-collapsible__btn {
	display: block;
	width: 100%;
	padding: 10px 14px;
	background: none;
	border: none;
	text-align: left;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .02em;
	color: #1a1a1a;
	cursor: pointer;
	box-sizing: border-box;
}

.indizio-msc-collapsible__btn.is-open {
	border-bottom: 1px solid #e2e2e2;
}

.indizio-msc-collapsible__body {
	padding: 12px 14px;
}

.indizio-msc-collapsible__body[hidden] {
	display: none !important;
}

.indizio-msc-coupon-toggle .indizio-msc-collapsible__body {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: stretch;
	gap: 10px;
	min-width: 0;
}

.indizio-msc-coupon-toggle .indizio-msc-collapsible__body[hidden] {
	display: none !important;
}

.indizio-msc-coupon-toggle .indizio-msc-collapsible__body > p {
	float: none !important;
	width: auto !important;
	min-width: 0;
	max-width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

.indizio-msc-coupon-toggle .indizio-msc-collapsible__body > p:only-of-type {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: minmax(0, 1fr);
	gap: 10px;
}

.indizio-msc-coupon-toggle input[name="coupon_code"] {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

.indizio-msc-coupon-toggle button,
.indizio-msc-coupon-toggle .button {
	float: none !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	white-space: normal !important;
	box-sizing: border-box !important;
}

form.checkout.indizio-msc-ready .indizio-msc-coupon-empty {
	display: none !important;
}

/* Widoczne oznaczenie pola, ktore zatrzymalo przejscie do kolejnego kroku. */
form.checkout.indizio-msc-ready .indizio-msc-panel .woocommerce-invalid > label,
form.checkout.indizio-msc-ready .indizio-msc-panel .woocommerce-invalid-required-field > label {
	color: #c0392b !important;
}

form.checkout.indizio-msc-ready .indizio-msc-panel .woocommerce-invalid input:not([type="checkbox"]):not([type="radio"]),
form.checkout.indizio-msc-ready .indizio-msc-panel .woocommerce-invalid select,
form.checkout.indizio-msc-ready .indizio-msc-panel .woocommerce-invalid textarea,
form.checkout.indizio-msc-ready .indizio-msc-panel input[aria-invalid="true"]:not([type="checkbox"]):not([type="radio"]),
form.checkout.indizio-msc-ready .indizio-msc-panel select[aria-invalid="true"],
form.checkout.indizio-msc-ready .indizio-msc-panel textarea[aria-invalid="true"],
form.checkout.indizio-msc-ready .indizio-msc-panel .woocommerce-invalid .select2-selection {
	border-color: #c0392b !important;
	background-color: #fff8f7 !important;
	box-shadow: 0 0 0 2px rgba(192, 57, 43, .16) !important;
}

form.checkout.indizio-msc-ready .indizio-msc-panel input[type="checkbox"][aria-invalid="true"],
form.checkout.indizio-msc-ready .indizio-msc-panel input[type="radio"][aria-invalid="true"] {
	outline: 2px solid #c0392b !important;
	outline-offset: 2px;
}

.indizio-msc-validation-notice {
	margin: 0 0 12px;
	padding: 10px 14px;
	border: 1px solid #c0392b;
	border-radius: 6px;
	background: #fdf1f0;
	color: #c0392b;
	font-size: 13px;
}

form.checkout.indizio-msc-ready .indizio-msc-shipping-extra-slot.indizio-msc-inpost-invalid {
	padding: 12px;
	border-radius: 8px;
	background: #fff8f7;
	box-shadow: inset 0 0 0 2px rgba(192, 57, 43, .28);
}

form.checkout.indizio-msc-ready .indizio-msc-shipping-extra-slot.indizio-msc-inpost-invalid .easypack_show_geowidget {
	border-color: #c0392b !important;
	box-shadow: 0 0 0 2px rgba(192, 57, 43, .16) !important;
}

.indizio-msc-inpost-validation-notice {
	margin-bottom: 10px;
}

.indizio-msc-postcode-status {
	display: block;
	width: 100%;
	margin-top: 6px;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.35;
	color: #666;
}

.indizio-msc-postcode-status[hidden] {
	display: none !important;
}

.indizio-msc-postcode-status.is-loading {
	color: #666;
}

.indizio-msc-postcode-status.is-success {
	color: #2e6f40;
}

.indizio-msc-postcode-status.is-warning {
	color: #8a5a16;
}

/* Własna lista podpowiedzi działa tak samo w przeglądarkach desktopowych i
   mobilnych; nie zależy od nierówno obsługiwanego natywnego datalist. */
form.checkout.indizio-msc-ready .indizio-msc-street-suggestions-wrap,
form.checkout.indizio-msc-ready .indizio-msc-city-suggestions-wrap {
	display: block;
	width: 100%;
	min-width: 0;
	position: relative;
	box-sizing: border-box;
}

.indizio-msc-street-suggestions,
.indizio-msc-city-suggestions {
	position: absolute;
	z-index: 10020;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	width: 100%;
	max-height: 240px;
	margin: 0;
	padding: 5px;
	overflow-y: auto;
	border: 1px solid #d7d7d7;
	border-radius: 7px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .14);
	box-sizing: border-box;
}

.indizio-msc-street-suggestions[hidden],
.indizio-msc-city-suggestions[hidden] {
	display: none !important;
}

.indizio-msc-street-suggestion,
.indizio-msc-city-suggestion {
	display: block;
	width: 100%;
	margin: 0;
	padding: 9px 10px;
	border: 0;
	border-radius: 5px;
	background: transparent;
	color: #1a1a1a;
	font: inherit;
	font-size: 13px;
	line-height: 1.35;
	text-align: left;
	cursor: pointer;
	box-sizing: border-box;
}

.indizio-msc-street-suggestion:hover,
.indizio-msc-street-suggestion:focus,
.indizio-msc-street-suggestion.is-active,
.indizio-msc-city-suggestion:hover,
.indizio-msc-city-suggestion:focus,
.indizio-msc-city-suggestion.is-active {
	outline: none;
	background: #f1f1f1;
	color: #1a1a1a !important;
}

@media (max-width: 780px) {
	form.checkout.indizio-msc-ready .indizio-msc-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	/* Reset desktopowych flex-basis (480px/320px) i wyrównania w poprzek -
	   po zmianie osi na column-reverse te wartości stałyby się podpowiedziami
	   WYSOKOŚCI zamiast szerokości, tworząc puste piony między sekcjami
	   (błąd znaleziony i naprawiony podczas przeglądu pierwszej wersji). */
	.indizio-msc-main,
	.indizio-msc-summary {
		width: 100%;
	}

	.indizio-msc-summary {
		order: 1;
		position: static;
		max-width: none;
		justify-self: stretch;
	}

	.indizio-msc-main {
		order: 0;
	}

	.indizio-msc-mobile-summary-slot {
		display: block;
		margin-bottom: 16px;
	}

	/* JS dodaje klase po przeniesieniu kuponu i tabeli do kroku 3. WyĹĽsza
	   specyficznoĹ›Ä‡ oraz !important chroniÄ… slot przed stylem motywu/cache. */
	form.checkout.indizio-msc-ready .indizio-msc-mobile-summary-slot.is-mobile-active {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		width: 100%;
		min-width: 0;
	}

	form.checkout.indizio-msc-ready .indizio-msc-mobile-summary-slot.is-mobile-active > .indizio-msc-coupon-toggle {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		width: 100%;
	}

	/* Motyw oraz InPost potrafia na mobile nadac elementom dostawy szerokosc
	   oparta o zawartosc. Siatka uniezaleznia rozwijana czesc paczkomatu od
	   szerokosci radia, etykiety, ceny i logo w pierwszym wierszu. */
	form.checkout.indizio-msc-ready .indizio-msc-shipping-slot li.indizio-msc-has-shipping-extra {
		display: grid !important;
		grid-template-columns: auto minmax(0, 1fr);
		align-items: center;
		width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
	}

	form.checkout.indizio-msc-ready .indizio-msc-shipping-slot li.indizio-msc-has-shipping-extra > .indizio-msc-shipping-extra-slot {
		display: block !important;
		grid-column: 1 / -1;
		width: 100% !important;
		min-width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	form.checkout.indizio-msc-ready .indizio-msc-shipping-slot .easypack_show_geowidget {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		float: none !important;
		position: static !important;
		width: 100% !important;
		min-width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 48px !important;
		margin: 0 !important;
		padding: 12px 16px !important;
		line-height: 1.25 !important;
		letter-spacing: normal !important;
		word-spacing: normal !important;
		white-space: nowrap !important;
		word-break: keep-all !important;
		overflow-wrap: normal !important;
		writing-mode: horizontal-tb !important;
		text-orientation: mixed !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-shipping-slot .easypack_selected_point_data,
	form.checkout.indizio-msc-ready .indizio-msc-shipping-slot #selected-parcel-machine {
		float: none !important;
		position: static !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.indizio-msc-coupon-toggle .indizio-msc-collapsible__body,
	.indizio-msc-coupon-toggle .indizio-msc-collapsible__body > p:only-of-type {
		grid-template-columns: minmax(0, 1fr);
	}

	.indizio-msc-coupon-toggle .indizio-msc-collapsible__body > p,
	.indizio-msc-coupon-toggle button,
	.indizio-msc-coupon-toggle .button {
		width: 100% !important;
	}

	.indizio-msc-step {
		padding: 10px 12px;
		font-size: 11px;
	}

	.indizio-msc-step__recap {
		max-width: 120px;
	}

	.indizio-msc-panel:not([hidden]) {
		padding: 14px;
	}
}

/* Wspolny uklad podsumowania dla telefonu i desktopowego panelu bocznego.
   Przenosi na desktop sprawdzony mobilny podzial etykieta / wartosc. */
	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-subtotal,
	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-discount {
		display: flex !important;
		align-items: flex-start;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-subtotal > th,
	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-discount > th {
		display: block !important;
		flex: 1 1 45% !important;
		min-width: 0 !important;
		padding-right: 10px !important;
		box-sizing: border-box !important;
		text-align: left !important;
		white-space: normal !important;
		word-break: normal !important;
		overflow-wrap: anywhere;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-subtotal > td,
	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-discount > td {
		display: block !important;
		flex: 0 1 55% !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: 55% !important;
		margin-left: auto !important;
		padding-right: 6px !important;
		box-sizing: border-box !important;
		text-align: right !important;
		white-space: normal !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-discount {
		margin: 4px 0;
		padding: 8px 0;
		border-top: 1px solid #e2e2e2;
		border-bottom: 1px solid #e2e2e2;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.cart-discount a.woocommerce-remove-coupon {
		display: inline-block !important;
		margin: 4px 0 0 6px !important;
		padding: 2px 6px;
		border-radius: 4px;
		background: #f1f1f1;
		color: #555 !important;
		font-size: 10px;
		line-height: 1.4;
		text-decoration: none !important;
		white-space: nowrap !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total {
		display: flex !important;
		align-items: start;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total > th {
		display: block !important;
		flex: 1 1 0 !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
		text-align: left !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total > td {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-end !important;
		flex: 0 1 55% !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: 55% !important;
		margin-left: auto !important;
		padding-right: 6px !important;
		box-sizing: border-box !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		text-align: right !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total > td > strong,
	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total > td > small.includes_tax {
		align-self: flex-end !important;
		width: auto !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		margin-left: auto !important;
		text-align: right !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total > td > strong {
		white-space: nowrap !important;
	}

	form.checkout.indizio-msc-ready .indizio-msc-table-slot tr.order-total > td > small.includes_tax {
		white-space: normal !important;
		overflow-wrap: anywhere !important;
	}
