/* Bombex – Přehledná pokladna. Barvu jde změnit v šabloně: :root { --bx-cg-accent: #… } */

/* ---------- Doprava ---------- */

/* Dvě karty pod sebou, uvnitř řádky dopravy tak, jak je kreslí šablona. */

ul.bx-cg-split {
	margin: 0 0 4px !important;
	padding: 0 !important;
	list-style: none !important;
}

ul.bx-cg-split > li.bx-cg-heading {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 !important;
	padding: 14px 2px 10px !important;
	border: 0 !important;
	background: none !important;
	color: #1d2327 !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	list-style: none;
}

ul.bx-cg-split > li.bx-cg-heading svg {
	flex: none;
	width: 18px;
	height: 18px;
	fill: var(--bx-cg-accent, #2b6fd6);
}

ul.bx-cg-split > li.bx-cg-heading:first-child {
	padding-top: 6px !important;
}

/* Každá doprava je samostatná karta: radio | logo | název | cena. */

ul.bx-cg-split > li.bx-cg-sli {
	position: relative;
	margin: 0 0 8px !important;
	padding: 12px 14px !important;
	border: 1px solid #dcdfe3 !important;
	border-radius: 10px !important;
	background: #fff !important;
	font-size: 15px !important;
	transition: border-color .15s, box-shadow .15s, background-color .15s;
}

ul.bx-cg-split > li.bx-cg-sli:hover {
	border-color: #b9bec5 !important;
}

ul.bx-cg-split > li.bx-cg-sli.is-selected {
	border-color: var(--bx-cg-accent, #2b6fd6) !important;
	box-shadow: 0 0 0 1px var(--bx-cg-accent, #2b6fd6);
	background: #f7faff !important;
}

/* Původní radio zůstává ve formuláři, jen ho nahrazuje vlastní kolečko. */
ul.bx-cg-split > li.bx-cg-sli > input.shipping_method {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	opacity: 0 !important;
	pointer-events: none;
}

ul.bx-cg-split > li.bx-cg-sli > label {
	display: flex !important;
	align-items: center;
	gap: 12px;
	min-height: 40px;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.3;
	cursor: pointer;
}

ul.bx-cg-split > li.bx-cg-sli > label::before,
ul.bx-cg-split > li.bx-cg-sli > label::after {
	display: none !important;
}

.bx-cg-radio {
	position: relative;
	flex: none;
	box-sizing: border-box;
	width: 20px;
	height: 20px;
	border: 2px solid #c3c7cc;
	border-radius: 50%;
	background: #fff;
	transition: border-color .15s;
}

li.bx-cg-sli.is-selected .bx-cg-radio {
	border-color: var(--bx-cg-accent, #2b6fd6);
}

li.bx-cg-sli.is-selected .bx-cg-radio::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: 50%;
	background: var(--bx-cg-accent, #2b6fd6);
}

.bx-cg-logo {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	padding: 4px;
	border: 1px solid #eceef1;
	border-radius: 8px;
	background: #fff;
}

ul.bx-cg-split .bx-cg-logo img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 4px;
	box-shadow: none !important;
}

ul.bx-cg-split > li.bx-cg-sli > label .woocommerce-Price-amount {
	flex: none;
	float: none !important;
	margin: 0 0 0 auto !important;
}

@media (max-width: 480px) {
	ul.bx-cg-split > li.bx-cg-sli {
		padding: 10px 12px !important;
	}

	ul.bx-cg-split > li.bx-cg-sli > label {
		gap: 10px;
		font-size: 14px;
	}

	.bx-cg-logo {
		width: 34px;
		height: 34px;
	}
}

.bx-cg-off {
	display: none !important;
}

.bx-cg-pick {
	clear: both;
	margin: 12px 0 2px !important;
	padding: 0 !important;
}

.bx-cg-pick--balikovna { --bx-cg-pick: #0083c3; }
.bx-cg-pick--ppl { --bx-cg-pick: #0b4a99; }
.bx-cg-pick--zasilkovna { --bx-cg-pick: #c62a1b; }

.bx-cg-pick button {
	display: flex;
	align-items: center;
	gap: 8px;
	box-sizing: border-box;
	width: 100%;
	min-height: 44px;
	margin: 0;
	padding: 10px 14px;
	border-radius: 6px;
	font-family: inherit;
	font-size: 14px;
	line-height: 1.35;
	text-align: left;
	text-transform: none;
	letter-spacing: 0;
	box-shadow: none;
	cursor: pointer;
}

.bx-cg-pick svg {
	flex: none;
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.bx-cg-pick__btn {
	justify-content: center;
	border: 0;
	background: var(--bx-cg-pick, #3bb54a);
	color: #fff;
	font-weight: 600;
}

.bx-cg-pick__btn:hover,
.bx-cg-pick__btn:focus {
	background: var(--bx-cg-pick, #3bb54a);
	color: #fff;
	filter: brightness(.94);
}

.bx-cg-pick__place {
	border: 1px solid #dcdcde;
	background: #fff;
	color: #1d2327;
	font-weight: 400;
}

.bx-cg-pick__place:hover,
.bx-cg-pick__place:focus {
	border-color: #a7aaad;
	background: #fff;
	color: #1d2327;
}

.bx-cg-pick__place svg {
	color: var(--bx-cg-accent, #2b6fd6);
}

.bx-cg-pick__text {
	flex: 1;
	min-width: 0;
}

.bx-cg-pick__change {
	flex: none;
	color: var(--bx-cg-accent, #2b6fd6);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* ---------- Platby: skupiny ----------
 * Řádek skupiny používá radio + label jako ostatní platby, vzhled radia dodává šablona.
 */

.bx-cg-group > label.bx-cg-group__label {
	cursor: pointer;
}

/* Štítek „Zdarma“ – vzhled přebírá od „50 Kč“ u dobírky (.custom-gateway-label).
   Tohle je jen záloha, kdyby šablona styl neměla. */
:where(.bx-cg-group .bx-cg-badge) {
	float: right;
	margin-left: 12px;
	padding: 4px 10px;
	border-radius: 3px;
	background: #d4d4d4;
	color: #1d2327;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
}

.bx-cg-group__sub {
	display: block;
	overflow: hidden;
	margin-top: 2px;
	color: #6b7177;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.bx-cg-group.is-open .bx-cg-group__sub {
	display: none;
}

/* Panel s dlaždicemi */

.bx-cg-group:not(.is-open) > .bx-cg-panel {
	display: none;
}

.bx-cg-group > .bx-cg-panel {
	clear: both;
	box-sizing: border-box;
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 16px 20px 20px;
}

.bx-cg-tiles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.bx-cg-tiles .bx-cg-tile {
	position: relative;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-width: 0;
	min-height: 84px;
	margin: 0;
	padding: 14px 10px 12px;
	border: 1px solid #dcdcde;
	border-radius: 10px;
	background: #fff;
	color: #3c434a;
	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
	text-align: center;
	text-transform: none;
	letter-spacing: 0;
	box-shadow: none;
	cursor: pointer;
	transition: border-color .15s, box-shadow .15s, background-color .15s;
}

.bx-cg-tiles .bx-cg-tile:hover {
	border-color: #a7aaad;
	background: #fff;
	color: #1d2327;
}

.bx-cg-tiles .bx-cg-tile:focus-visible {
	outline: 2px solid var(--bx-cg-accent, #2b6fd6);
	outline-offset: 2px;
}

.bx-cg-tiles .bx-cg-tile.is-selected {
	border-color: var(--bx-cg-accent, #2b6fd6);
	box-shadow: inset 0 0 0 1px var(--bx-cg-accent, #2b6fd6);
	background: #f5f9ff;
	color: #1d2327;
}

.bx-cg-tiles .bx-cg-tile.is-selected::after {
	content: "";
	position: absolute;
	top: 7px;
	right: 7px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--bx-cg-accent, #2b6fd6) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.2 6.8 11 12 5.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px no-repeat;
}

.bx-cg-tile__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	height: 26px;
}

.bx-cg-tile__logo.is-bg {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

ul.wc_payment_methods li.bx-cg-group .bx-cg-tile__logo img {
	max-width: 100% !important;
	max-height: 26px !important;
}

.bx-cg-tile__name {
	display: block;
	width: 100%;
	overflow-wrap: anywhere;
}

/* Původní řádky plateb jsou ve skupině schované. Ukáže se jen box vybrané platby,
   která potřebuje vlastní pole (např. tlačítko Apple Pay). */

ul.bx-cg-group__items {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	list-style: none;
}

ul.bx-cg-group__items > li.bx-cg-member {
	display: none !important;
}

ul.bx-cg-group__items > li.bx-cg-member.bx-cg-has-fields.is-selected {
	display: block !important;
	margin: 10px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
}

ul.bx-cg-group__items > li.bx-cg-member.bx-cg-has-fields.is-selected > input,
ul.bx-cg-group__items > li.bx-cg-member.bx-cg-has-fields.is-selected > label {
	display: none !important;
}

@media (max-width: 600px) {
	.bx-cg-tiles {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.bx-cg-group > .bx-cg-panel {
		padding: 12px 12px 16px;
	}

	.bx-cg-tiles .bx-cg-tile {
		min-height: 76px;
		font-size: 13px;
	}
}

@media (max-width: 480px) {
	.bx-cg-pick__change {
		font-size: 13px;
	}
}
