.elron-ticket-select { margin: 12px 0 20px; }
.elron-ticket-select__title { margin: 0 0 10px; }
.elron-ticket-select__rows { display: flex; flex-direction: column; gap: 8px; }
.elron-ticket-select__row {
	display: flex; align-items: center; gap: 12px;
	padding: 8px 4px; border-bottom: 1px solid #eee;
}
.elron-ticket-select__name { flex: 1; }
.elron-ticket-select__price { min-width: 90px; text-align: right; font-weight: 600; }
.elron-tqty { display: inline-flex; align-items: center; gap: 6px; line-height: 1; }
.elron-tqty__dec, .elron-tqty__inc {
	flex: 0 0 auto; width: 32px; height: 32px; padding: 0; margin: 0; box-sizing: border-box;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 18px; line-height: 1; font-weight: 700; cursor: pointer; user-select: none;
	border: 0; border-radius: 4px; background: var(--wbtm_color_theme, #e8622a); color: #fff;
	appearance: none; -webkit-appearance: none;
}
.elron-tqty__dec:hover, .elron-tqty__inc:hover { filter: brightness(0.92); }
.elron-tqty__input {
	flex: 0 0 auto; width: 44px !important; height: 32px; box-sizing: border-box;
	text-align: center; margin: 0 !important; padding: 0 !important;
	border: 1px solid #ddd; border-radius: 4px; background: #fff; line-height: 32px;
}
.elron-ticket-select__total {
	display: flex; justify-content: flex-end; align-items: baseline; gap: 8px;
	margin-top: 12px; font-size: 1.05em; font-weight: 700;
}
.elron-ticket-select__total-val { color: var(--wbtm_color_theme, #e8622a); }

/* Quantity-first seat gating */
.elron-seat-hint { margin: 8px 0 4px; color: #b32d2e; font-weight: 600; }
.elron-seat-hint:empty { display: none; }
.wbtm_seat_plan_lower.elron-seats-full .seat_available:not(.seat_selected),
.wbtm_seat_plan_upper.elron-seats-full .seat_available:not(.seat_selected),
.elron_wagon_block.elron-seats-full .elron_wagon_available:not(.seat_selected) {
	pointer-events: none;
	opacity: 0.35;
}
[name="add-to-cart"].elron-disabled { opacity: 0.5; pointer-events: none; cursor: not-allowed; }
