/* ============================================================================
   Wyjedzone – Dodatki: style frontendu.
   Tokeny projektu (z prototypu „Widok restauracji"): lila #fe9afc, zaznaczenie
   #fde4fb, ciemny #1a1a1a, „w cenie" #5cb85c, wymagane #e8341c.
   Markup własny → zero walki ze stylami WAPO.
   ========================================================================== */

.wyj-addons {
	margin: 6px 0 10px;
	/* Twardy reset typografii — motyw potrafi nadpisywać fonty/rozmiary w modalach */
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 15px;
	line-height: 1.35;
	color: #1a1a1a;
}
.wyj-addons label {
	font-family: inherit !important;
	font-style: normal !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

/* --- grupa --- */
.wyj-addons__group {
	margin: 0 0 22px;
}
.wyj-addons__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 10px;
}
/* Tytuł grupy — 1:1 z nagłówkiem grupy w quick-view (.wapo-addon-title:
   Fraunces 19px/600, letter-spacing -0.01em). */
.wyj-addons__title {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: "Fraunces", Georgia, "Times New Roman", serif !important;
	font-size: 19px !important;
	font-weight: 600 !important;
	color: #1a1a1a;
	line-height: 1.2;
	letter-spacing: -0.01em;
}
/* Badge WYMAGANE — ciemny jak w quick-view (nie czerwony). */
.wyj-addons__badge {
	display: inline-block;
	padding: 4px 8px;
	border-radius: 999px;
	background: #1a1a1a;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	white-space: nowrap;
}
.wyj-addons__meta {
	flex: 0 0 auto;
	font-size: 13px;
	white-space: nowrap;
}
.wyj-addons__hint {
	color: rgba(26, 26, 26, 0.45);
}
/* suma grupy „+8 zł" — jak w projekcie: ciemna, gruba, przy nagłówku */
.wyj-addons__sum {
	color: #1a1a1a;
	font-weight: 800;
	font-size: 15px;
}
/* podświetlenie grupy z niespełnionym wymogiem (po kliknięciu „Dodaj") */
.wyj-addons__group.wyj-addons__group--error .wyj-addons__title {
	color: #e8341c;
}
.wyj-addons__group.wyj-addons__group--error .wyj-addons__options {
	outline: 2px solid rgba(232, 52, 28, 0.5);
	outline-offset: 4px;
	border-radius: 16px;
}

/* --- opcja (karta) --- */
.wyj-addons__options {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.wyj-addons__option {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 15px 16px;
	border: 1.5px solid transparent;
	border-radius: 14px;
	background: #f7f4ef;
	cursor: pointer;
	transition: background 0.12s ease, border-color 0.12s ease;
	-webkit-tap-highlight-color: transparent;
	margin: 0;
}
.wyj-addons__option:hover {
	border-color: rgba(254, 154, 252, 0.55);
}
.wyj-addons__option.is-selected {
	background: #fde4fb;
	border-color: #fe9afc;
}
.wyj-addons__option input[type="checkbox"] {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
	pointer-events: none !important;
	margin: 0 !important;
}
.wyj-addons__mark {
	flex: 0 0 auto;
	width: 26px;
	height: 26px;
	border: 2px solid #d8d4cd;
	border-radius: 8px;
	background: #fff;
	position: relative;
	transition: background 0.12s ease, border-color 0.12s ease;
}
.wyj-addons__option.is-selected .wyj-addons__mark {
	background: #fe9afc;
	border-color: #fe9afc;
}
.wyj-addons__option.is-selected .wyj-addons__mark::after {
	content: "";
	position: absolute;
	left: 8px;
	top: 3px;
	width: 6px;
	height: 12px;
	border: solid #1a1a1a;
	border-width: 0 2.5px 2.5px 0;
	transform: rotate(45deg);
}
/* single-select: znacznik okrągły (radio) */
.wyj-addons__group[data-selection="single"] .wyj-addons__mark {
	border-radius: 50%;
}
.wyj-addons__group[data-selection="single"] .wyj-addons__option.is-selected .wyj-addons__mark::after {
	left: 7px;
	top: 7px;
	width: 8px;
	height: 8px;
	border: 0;
	border-radius: 50%;
	background: #1a1a1a;
	transform: none;
}
.wyj-addons__img {
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	object-fit: cover;
	border-radius: 8px;
}
.wyj-addons__label {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	line-height: 1.25;
}
/* stepper ilości przy opcji (2× ser) */
.wyj-addons__optqty[hidden] {
	display: none !important;   /* author display wygrywałby z atrybutem hidden */
}
/* DEFINICJA OBRAMOWANIEM, nie cieniem — quick-view ma `box-shadow:none!important`
   na wszystkim w modalu, więc cienie znikają i stepper wyglądał płasko/brzydko. */
.wyj-addons__optqty {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	background: #fff !important;
	border: 1.5px solid rgba(26, 26, 26, 0.12) !important;
	border-radius: 999px;
	padding: 2px;
}
.wyj-addons .wyj-addons__optqty-btn {
	-webkit-appearance: none !important;
	appearance: none !important;
	width: 28px !important;
	height: 28px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: #f3f0ee !important;
	color: #1a1a1a !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	cursor: pointer;
	box-shadow: none !important;
}
.wyj-addons .wyj-addons__optqty input {
	width: 24px !important;
	height: auto !important;
	border: 0 !important;
	background: transparent !important;
	text-align: center !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	color: #1a1a1a !important;
	padding: 0 !important;
	box-shadow: none !important;
	-moz-appearance: textfield;
	appearance: textfield;
}
.wyj-addons .wyj-addons__optqty input::-webkit-inner-spin-button,
.wyj-addons .wyj-addons__optqty input::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.wyj-addons__desc {
	display: block;
	margin-top: 2px;
	font-size: 13px;
	font-weight: 400;
	color: #8d8a85;
}
.wyj-addons__price {
	flex: 0 0 auto;
	font-size: 14px !important;
	font-weight: 400;
	color: #8d8a85 !important;
	white-space: nowrap;
}
.wyj-addons__price.is-free {
	color: #5cb85c !important;
	font-weight: 700 !important;
}

/* --- pole liczbowe (stepper) --- */
.wyj-addons__numberrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	border-radius: 14px;
	background: #fdeafd;
	border: 1.5px solid rgba(254, 154, 252, 0.4);
}
.wyj-addons__numberlabel {
	font-size: 16px;
	font-weight: 700;
	color: #1a1a1a;
}
.wyj-addons__numberlabel small {
	font-weight: 400;
	color: #8d8a85;
}
.wyj-addons__stepper {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
/* Twarde nadpisania (!important): motyw strony stylował button na żółto, a
   quick-view zdejmuje cienie — kółka definiujemy OBRAMOWANIEM (białe na pigułce). */
.wyj-addons__stepper {
	background: #fff !important;
	border: 1.5px solid rgba(26, 26, 26, 0.12) !important;
	border-radius: 999px;
	padding: 4px;
}
.wyj-addons .wyj-addons__step,
.wyj-addons .wyj-addons__step:hover,
.wyj-addons .wyj-addons__step:focus {
	-webkit-appearance: none !important;
	appearance: none !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: #f3f0ee !important;
	color: #1a1a1a !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	cursor: pointer;
	box-shadow: none !important;
	text-shadow: none !important;
	outline: none !important;
}
.wyj-addons .wyj-addons__stepper input[type="number"] {
	width: 40px !important;
	height: auto !important;
	min-width: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: center !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	color: #1a1a1a !important;
	-moz-appearance: textfield;
	appearance: textfield;
}
.wyj-addons__stepper input::-webkit-outer-spin-button,
.wyj-addons__stepper input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* --- pole tekstowe / komentarz --- */
.wyj-addons__textcard textarea,
.wyj-addons__textcard input[type="text"] {
	width: 100%;
	padding: 13px 14px;
	border: 1.5px solid #e7e3dc;
	border-radius: 14px;
	background: #fff;
	font-size: 15px;
	color: #1a1a1a;
	resize: vertical;
	box-sizing: border-box;
}
.wyj-addons__textcard textarea:focus,
.wyj-addons__textcard input[type="text"]:focus {
	outline: none;
	border-color: #fe9afc;
}

/* Przycisk „Dodaj do koszyka" gdy wymagane niespełnione — przygaszony, ale
   KLIKALNY (przechwytujemy klik i pokazujemy komunikat; bez pointer-events:none). */
.single_add_to_cart_button.wyj-addons-gate-off {
	opacity: 0.5 !important;
}

@media (max-width: 600px) {
	.wyj-addons__title {
		font-size: 18px !important;
	}
	.wyj-addons__option {
		padding: 13px 14px;
	}
}
