/* Marcin: favorites (advansedwishlist) in the style of the account pages (custom/account.css) - 05.11.2026.
   Loaded from header.tpl after footer.css. The module's theme styles live in css/modules/advansedwishlist/views/css/front.css
   (18px rounded grey boxes, uppercase condensed names, pill fields); the page rules are scoped to the two wishlist pages
   with "html body#..." to stay on top of them. The heart, the note after a heart click, the "choose a list" popup and
   the sweetalert dialogs (rename / share / delete) are global. */

/* ── heart on product cards and the product page ── */
.pol_add_to_wishlist_button {
	cursor: pointer;
	transition: opacity 0.2s ease;
}

/* request on its way: the heart dims, a second click waits */
.pol_add_to_wishlist_button.is-busy {
	opacity: 0.45;
	pointer-events: none;
}

.pol_add_to_wishlist_button:focus-visible {
	outline: 2px solid #414f34;
	outline-offset: 2px;
	border-radius: 50%;
}

/* ── note after a heart click (wishlist-main.js showFavoriteNote) ── */
.sf-fav-note {
	position: fixed;
	left: 50%;
	bottom: 24px;
	z-index: 10050;
	display: flex;
	align-items: center;
	gap: 16px;
	max-width: calc(100vw - 32px);
	padding: 12px 18px;
	border-radius: 4px;
	background: #2b2b29;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
	color: #fff;
	font-family: "Open Sans", sans-serif;
	font-size: 14px;
	line-height: 1.4;
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, 8px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;
}

.sf-fav-note.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s;
}

.sf-fav-note.is-error {
	background: #a33a3a;
}

.sf-fav-note a,
.sf-fav-note a:visited {
	flex: 0 0 auto;
	color: #c9d6bb;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: underline;
	text-transform: uppercase;
	text-underline-offset: 3px;
}

.sf-fav-note a:hover {
	color: #fff;
}

@media (prefers-reduced-motion: reduce) {
	.sf-fav-note,
	.sf-fav-note.is-visible {
		transform: translate(-50%, 0);
		transition: none;
	}
}

/* phone: above the bottom bar */
@media (max-width: 767px) {
	.sf-fav-note {
		bottom: 76px;
		width: calc(100vw - 32px);
		justify-content: space-between;
	}
}

/* ── "choose a list" popup (customers with two or more lists, blockwishlist_footer_16.tpl) ── */
html body #wishlist_popup_container {
	/* above the card's photo arrows (flickity) */
	z-index: 30;
	width: 300px;
	padding: 20px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
}

/* the heart's block is a z-index 5 layer in the card - with the popup open it goes above the photo arrows
   that show on hover (z-index 99) */
html body .usefull_link_block:has(#wishlist_popup_container:not(.hidden)) {
	z-index: 120;
}

html body #wishlist_popup_container::before {
	display: none;
}

html body #wishlist_popup_form {
	padding: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

html body #wishlist_popup_form h2 {
	/* on phones the theme gives it a grey rounded band and a fixed height */
	height: auto;
	margin: 0 0 16px;
	padding: 0 28px 0 0;
	border-radius: 0;
	background: transparent;
	color: #2b2b29;
	font-family: "Marcellus", serif;
	font-size: 21px;
	font-weight: 400;
	line-height: 1.25;
	text-transform: none;
}

html body #wishlist_popup_form .close_wishlist {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: #6d6c67;
	font-size: 18px;
	cursor: pointer;
}

/* in a product card the close icon picked up the white heart circle (sfcatalog: .usefull_link_block i.fi) */
html body #wishlist_popup_form .close_wishlist i {
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: inherit;
	font-size: 18px;
	line-height: 1;
}

html body #wishlist_popup_form .close_wishlist:hover {
	background: #f4f4f4;
	color: #2b2b29;
}

html body #wishlist_popup_form .select-selected,
html body #wishlist_popup_form #new_wishlist_name {
	height: 44px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background-color: #fff;
	color: #2b2b29;
	font-size: 14px;
	line-height: 42px;
}

html body #wishlist_popup_form .select-items {
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

html body #wishlist_popup_form .select-items div {
	background: #fff;
	color: #3c3c3b;
	font-size: 14px;
}

html body #wishlist_popup_form .select-items div:hover,
html body #wishlist_popup_form .select-items div.same-as-selected {
	background: #f4f4f4;
	color: #414f34;
}

html body #wishlist_popup_form .button_new_medium_green,
html body #wishlist_popup_form .button_new_medium_grey {
	width: 100%;
	height: 44px;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
}

html body #wishlist_popup_form .alert {
	margin: 12px 0 0;
	padding: 10px 12px;
	border: 0;
	border-radius: 4px;
	font-size: 13px;
}

/* "Added to list!" / "Already in this list": the theme's were pale grey on grey */
html body #wishlist_popup_form .alert-success {
	background: #eef2ea;
	color: #414f34;
}

html body #wishlist_popup_form .alert-danger {
	background: #fbf3f3;
	color: #a33a3a;
}

/* ── page: My favorites (mywishlist) ── */
html body#module-advansedwishlist-mywishlist,
html body#module-advansedwishlist-view {
	background: #fff;
}

/* #columns is a flex row in the theme and #center_column shrank to its content - full container width */
html body#module-advansedwishlist-mywishlist #center_column {
	flex: 1 1 auto;
	width: 100%;
	max-width: 100%;
}

html body#module-advansedwishlist-mywishlist .mywishlist_container {
	width: 100%;
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 48px;
	align-items: start;
	padding: 32px 0 64px;
}

html body#module-advansedwishlist-mywishlist .mywishlist_left,
html body#module-advansedwishlist-mywishlist .mywishlist_center {
	width: auto;
	min-width: 0;
	margin: 0;
}

/* titles: "My favorites" on the left, the open list's name on the right */
html body .wishlist_section_title.my_account_page_title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 20px;
	padding: 0;
	color: #2b2b29;
	font-family: "Marcellus", serif;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.15;
}

/* + new list: solid green circle with a thin white plus drawn in CSS (the theme's fi-rs-add was a plus
   in its own circle - a circle in a circle) */
html body#module-advansedwishlist-mywishlist .add_new_wishlist_button {
	position: relative;
	top: 0;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 50%;
	background: #414f34;
	color: #fff;
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

html body#module-advansedwishlist-mywishlist .add_new_wishlist_button i {
	display: none;
}

html body#module-advansedwishlist-mywishlist .add_new_wishlist_button::before,
html body#module-advansedwishlist-mywishlist .add_new_wishlist_button::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 1.75px;
	border-radius: 1px;
	background: currentColor;
	transform: translate(-50%, -50%);
}

html body#module-advansedwishlist-mywishlist .add_new_wishlist_button::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

html body#module-advansedwishlist-mywishlist .add_new_wishlist_button:hover {
	background: #2f3a25;
	transform: rotate(90deg);
}

html body#module-advansedwishlist-mywishlist .add_new_wishlist_button:focus-visible {
	outline: 2px solid #414f34;
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	html body#module-advansedwishlist-mywishlist .add_new_wishlist_button:hover {
		transform: none;
	}
}

/* lists: like the account menu - 44px rows, the open one white with a line and a green bar */
html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element {
	min-height: 44px;
	margin: 0 0 4px;
	padding: 0 8px 0 14px !important;
	border-radius: 4px;
	color: #3c3c3b;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	white-space: normal;
	transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element:hover {
	background: #f4f4f4;
	color: #414f34;
}

html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element.element_active {
	background: #fff;
	box-shadow: inset 0 0 0 1px #e3e3e3, inset 3px 0 0 #414f34;
	color: #414f34;
}

html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element_left {
	min-width: 0;
	gap: 0;
}

html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element_icon {
	top: 0;
	margin: 0 12px 0 0;
	color: #a9a79f;
	font-size: 16px;
	line-height: 1;
}

html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element.element_active .wishlist_element_icon,
html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element:hover .wishlist_element_icon {
	color: #414f34;
}

/* product count after the name */
html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_element_left > span {
	margin-left: 6px;
	color: #8a8984;
	font-weight: 400;
}

/* ⋮ menu (rename / share / delete): round button, white card under it */
html body#module-advansedwishlist-mywishlist .wishlist_element_edit_container {
	top: 0;
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	margin: 0;
	border-radius: 50%;
	color: #6d6c67;
	font-size: 14px;
	cursor: pointer;
}

html body#module-advansedwishlist-mywishlist .wishlist_section_title .wishlist_element_edit_container {
	display: flex;
	flex-basis: 36px;
	width: 36px;
	height: 36px;
	border: 1px solid #e3e3e3;
	background: #fff;
	font-family: "Open Sans", sans-serif;
}

html body#module-advansedwishlist-mywishlist .wishlist_element_edit_container:hover,
html body#module-advansedwishlist-mywishlist .wishlist_element_edit_container.edit_active {
	background: #f4f4f4;
	color: #2b2b29;
}

html body#module-advansedwishlist-mywishlist .wishlist_element_edit_window {
	top: calc(100% + 6px);
	right: 0;
	left: auto;
	min-width: 160px;
	padding: 6px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
}

html body#module-advansedwishlist-mywishlist .wishlist_element_edit_window .wishlist_element_edit_element {
	padding: 9px 12px;
	text-align: left;
	border-radius: 4px;
	color: #3c3c3b;
	font-family: "Open Sans", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	white-space: nowrap;
}

html body#module-advansedwishlist-mywishlist .wishlist_element_edit_window .wishlist_element_edit_element:hover {
	background: #f4f4f4;
	color: #414f34;
}

html body#module-advansedwishlist-mywishlist .wishlist_element_edit_window .wishlist_element_edit_element[data-id-action="delete"] {
	color: #a33a3a;
}

/* the open list's name: smaller than the page title */
html body#module-advansedwishlist-mywishlist #wishlist-detail .wishlist_section_title.my_account_page_title {
	font-size: 24px;
}

/* ── product cards (managewishlist.tpl, also the shared list view.tpl) ── */
html body .ws_wishlist_product_list.wishlist_products_list_container {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin: 0 0 16px;
}

html body .wishlist_products_list_container .wishlist_product_list_element {
	/* name across the top, photo + prices under it, actions across the bottom */
	display: grid;
	grid-template-columns: 104px minmax(0, 1fr);
	grid-template-areas:
		"name name"
		"photo prices"
		"actions actions";
	gap: 14px 16px;
	width: auto;
	margin: 0;
	padding: 16px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

html body .wishlist_products_list_container .wishlist_product_list_element:hover {
	border-color: #d4d2cb;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05);
}

html body .wishlist_product_list_element .wishlist_product_list_center_left {
	grid-area: name;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	width: auto;
}

html body .wishlist_product_list_element .wishlist_product_name {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
}

html body .wishlist_product_list_element .wishlist_product_name .product_name {
	display: block;
	padding: 0;
	color: #2b2b29;
	font-family: "Open Sans", sans-serif;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
	text-decoration: none;
	text-transform: none;
}

html body .wishlist_product_list_element .wishlist_product_name .product_name:hover {
	color: #414f34;
}

/* stock: quiet pill on the right of the name */
html body .wishlist_product_list_element .wishlist_product_stock {
	flex: 0 0 auto;
	margin: 0;
	padding: 3px 9px;
	border-radius: 999px;
	background: #f4f4f4;
	color: #6d6c67;
	font-size: 12px;
	line-height: 1.4;
}

html body .wishlist_product_list_element .wishlist_product_stock span {
	color: #2b2b29;
	font-weight: 700;
}

/* tick box in front of the name (group actions): the 20px account checkbox */
html body .wishlist_product_list_element .wishlist_product_checkbox {
	position: relative;
	top: 0;
	left: 0;
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin: 0;
}

html body .wishlist_product_list_element .wishlist_product_checkbox input {
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	margin: 0;
	opacity: 0;
	cursor: pointer;
}

html body .wishlist_product_list_element .wishlist_product_checkbox .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	border: 1.5px solid #c9c7c0;
	border-radius: 4px;
	background-color: #fff;
	transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}

html body .wishlist_product_list_element .wishlist_product_checkbox:hover .checkmark {
	border-color: #414f34;
}

html body .wishlist_product_list_element .wishlist_product_checkbox input:checked ~ .checkmark {
	border-color: #414f34;
	border-radius: 4px;
	background-color: #414f34 !important;
}

html body .wishlist_product_list_element .wishlist_product_checkbox .checkmark::after {
	content: "";
	position: absolute;
	inset: 0;
	display: none;
	width: auto;
	height: auto;
	border: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.4l3 3 6-6.3' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 100% 100%;
	transform: none;
}

html body .wishlist_product_list_element .wishlist_product_checkbox input:checked ~ .checkmark::after {
	display: block;
}

html body .wishlist_product_list_element .wishlist_product_checkbox input:focus-visible ~ .checkmark {
	box-shadow: 0 0 0 3px rgba(65, 79, 52, 0.18);
}

/* photo */
html body .wishlist_product_list_element .wishlist_product_list_left {
	grid-area: photo;
	width: auto;
}

html body .wishlist_product_list_element .wishlist_product_image {
	width: 104px;
	margin: 0;
	/* responsive.css: padding-right 10px on phones left a grey strip */
	padding: 0;
	overflow: hidden;
	border-radius: 4px;
	background: #f4f4f4;
	aspect-ratio: 1 / 1;
}

html body .wishlist_product_list_element .wishlist_product_image a {
	display: block;
	width: 100%;
	height: 100%;
}

html body .wishlist_product_list_element .wishlist_product_image img {
	width: 100%;
	height: 100%;
	border-radius: 0;
	object-fit: cover;
}

/* prices by quantity: the right column, actions (inside the same wrapper in the markup) go to the bottom row */
html body .wishlist_product_list_element .wishlist_product_list_center_right {
	display: contents;
}

html body .wishlist_product_list_element .qty_prices {
	grid-area: prices;
	align-self: center;
	display: flex !important;
	flex-direction: column;
	gap: 2px;
	width: auto;
	margin: 0;
	padding: 0;
}

html body .wishlist_product_list_element .qty_prices .qty_prices_container {
	display: grid;
	/* price as wide as its text: centred in a narrow column it spilled left over the tag;
	   the theme's space-between spread the columns apart */
	grid-template-columns: 48px max-content minmax(0, 1fr);
	justify-content: start;
	align-items: center;
	gap: 12px;
	width: auto;
	height: auto;
	min-height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

html body .wishlist_product_list_element .qty_prices_container .wishlist_add_to_cart_container {
	width: auto;
	margin: 0;
}

/* 1+ / 10+ / 20+: quiet tag, a click adds that many to the cart */
html body .wishlist_product_list_element .qty_prices_container .reduction_title {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	/* global.css: min-width 60px */
	min-width: 0;
	height: 24px;
	margin: 0;
	padding: 0;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
	color: #3c3c3b;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

html body .wishlist_product_list_element .qty_prices_container .reduction_title span {
	margin: 0;
	padding: 0;
	background: transparent;
	color: inherit;
	font-size: inherit;
}

html body .wishlist_product_list_element .qty_prices_container a.reduction_title[href]:hover {
	border-color: #414f34;
	background: #f7f8f5;
	color: #414f34;
}

html body .wishlist_product_list_element .qty_prices_container .reduction_title_not_available {
	color: #b5b3ac;
	cursor: default;
}

html body .wishlist_product_list_element .qty_prices_container .reduction_price {
	width: auto;
	margin: 0;
	color: #2b2b29;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	white-space: nowrap;
}

/* price per flower: responsive.css hides it on phones - here there is room for it */
html body .wishlist_product_list_element .qty_prices_container .reduction_price_unit #unit_price_display {
	display: inline;
}

html body .wishlist_product_list_element .qty_prices_container .reduction_price_unit,
html body .wishlist_product_list_element .qty_prices_container .reduction_price_unit #unit_price_display,
html body .wishlist_product_list_element .qty_prices_container .par_fleur_label {
	margin: 0;
	color: #6d6c67;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
	white-space: nowrap;
}

/* actions: quantity, Add to cart, delete - across the bottom of the card */
html body .wishlist_product_list_element .wishlist_product_list_center_bottom {
	grid-area: actions;
	display: flex;
	align-items: center;
	gap: 8px;
	width: auto;
	height: auto;
	padding-top: 14px;
	border-top: 1px solid #ebebeb;
}

html body .wishlist_product_list_element .wishlist_qty_container {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	height: 40px;
	margin: 0;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
}

html body .wishlist_product_list_element .wishlist_qty_container .btn {
	/* the theme pins - and + absolutely over the field */
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 38px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #6d6c67;
	font-size: 11px;
	line-height: 1;
}

html body .wishlist_product_list_element .wishlist_qty_container .btn span {
	display: flex;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

html body .wishlist_product_list_element .wishlist_qty_container .btn:hover {
	background: #f4f4f4;
	color: #2b2b29;
}

html body .wishlist_product_list_element .wishlist_qty_container .wishlist_product_qty {
	width: 40px;
	height: 38px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none;
	color: #2b2b29;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
}

html body .wishlist_product_list_element .wishlist_add_to_cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	height: 40px;
	min-width: 0;
	margin: 0;
	padding: 0 16px;
	border: 0;
	border-radius: 4px;
	background: #414f34;
	box-shadow: none;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-shadow: none;
	text-transform: uppercase;
	transition: background-color 0.2s ease;
}

html body .wishlist_product_list_element .wishlist_add_to_cart span {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font-size: inherit;
	line-height: 1;
}

html body .wishlist_product_list_element .wishlist_add_to_cart:hover,
html body .wishlist_product_list_element .wishlist_add_to_cart:focus {
	background: #2f3a25;
	color: #fff;
}

/* delete: 40px outlined square, red on hover */
html body .wishlist_product_list_element .remove_from_wishlist.button_new_medium_grey {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	margin: 0 !important;
	padding: 0;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
	color: #6d6c67;
	transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

html body .wishlist_product_list_element .remove_from_wishlist.button_new_medium_grey i {
	margin: 0 !important;
	font-size: 15px !important;
	line-height: 1;
}

html body .wishlist_product_list_element .remove_from_wishlist.button_new_medium_grey:hover {
	border-color: #a33a3a;
	background: #fbf3f3;
	color: #a33a3a;
}

/* ── bottom bar: Select all, Group actions, OK ── */
/* the wrapper is a flex row in the theme - the cards and the bar one under the other, full width */
html body .wl-products,
html body#module-advansedwishlist-mywishlist #wishlist__detailed .wl-products {
	display: block;
}

html body .wl-products .wl-products__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	width: auto;
	padding: 12px 16px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
}

html body .wl-products .wl-products__footer > div {
	gap: 10px;
}

html body .wl-products .wl-products__footer .select_deselect_container {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 40px;
	/* front.css: margin-right 20px !important - here Select all on the left, the group actions on the right */
	margin: 0 auto 0 0 !important;
	padding: 0 16px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background: #fff;
	color: #3c3c3b;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
	transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

html body .wl-products .wl-products__footer .select_deselect_container:hover {
	border-color: #414f34;
	background: #f7f8f5;
	color: #414f34;
}

html body .wl-products .wl-products__footer .select_deselect_container i {
	margin: 0;
	font-size: 12px;
	line-height: 1;
}

html body .wl-products .wl-products__footer > div label {
	margin: 0;
	color: #6d6c67;
	font-size: 13px;
	font-weight: 400;
}

html body .wl-products .wl-products__footer > div select {
	height: 40px;
	min-width: 190px;
	margin: 0;
	padding: 0 36px 0 12px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	background-color: #fff;
	color: #2b2b29;
	font-size: 14px;
	font-weight: 400;
}

html body .wl-products .wl-products__footer > div select:focus {
	border-color: #414f34;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(65, 79, 52, 0.12);
}

html body .wl-products .wl-products__footer .wishlist_send_button.button_new_medium_green {
	height: 40px;
	min-width: 64px;
	margin: 0;
	padding: 0 20px;
	border: 0;
	border-radius: 4px;
	background: #414f34;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	opacity: 1;
	transition: background-color 0.2s ease, opacity 0.2s ease;
}

html body .wl-products .wl-products__footer .wishlist_send_button.button_new_medium_green:hover {
	background: #2f3a25;
}

/* nothing chosen yet: the OK waits */
html body .wl-products .wl-products__footer .wishlist_send_button.validate_button_inactive {
	opacity: 0.4;
	cursor: default;
}

/* ── messages: empty list, added to cart ── */
html body#module-advansedwishlist-mywishlist .mywishlist_center p.warning,
html body#module-advansedwishlist-view p.warning {
	margin: 0;
	padding: 40px 24px;
	border: 1px dashed #d4d2cb;
	border-radius: 4px;
	background: #fff;
	color: #6d6c67;
	font-size: 14px;
	line-height: 1.5;
	text-align: center;
}

html body#module-advansedwishlist-mywishlist .empty_spacer {
	display: none;
}

html body .ws_added_alert.alert-success {
	margin: 0 0 16px;
	padding: 12px 16px;
	border: 0;
	border-radius: 4px;
	background: #eef2ea;
	color: #414f34;
	font-size: 14px;
}

/* ── dialogs (sweetalert2): new list, rename, share, delete ── */
.swal2-popup.wishlist_popup_container,
.swal2-popup.share_popup_container {
	width: 440px !important;
	max-width: calc(100vw - 32px);
	padding: 28px 24px 24px !important;
	border-radius: 4px !important;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
}

.swal2-popup.share_popup_container {
	width: 520px !important;
}

.swal2-popup.wishlist_popup_container .wislist_popup_title,
.swal2-popup.share_popup_container .wislist_popup_title {
	position: relative;
	margin: 0 0 16px;
	padding: 0 40px 0 0;
	color: #2b2b29;
	font-family: "Marcellus", serif;
	font-size: 21px;
	font-weight: 400;
	line-height: 1.3;
	text-align: left;
}

/* front.css draws a 2px line under the title */
html body .swal2-popup .wislist_popup_title {
	padding-bottom: 0;
	border-bottom: 0;
}

.swal2-popup .wislist_popup_title .swal2-close-own {
	position: absolute;
	top: -4px;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: #6d6c67;
	font-size: 18px;
	cursor: pointer;
}

.swal2-popup .wislist_popup_title .swal2-close-own:hover {
	background: #f4f4f4;
	color: #2b2b29;
}

.swal2-popup.wishlist_popup_container .wislist_popup_text,
.swal2-popup.share_popup_container .wislist_popup_text {
	margin: 0 0 12px;
	color: #6d6c67;
	font-size: 14px;
	line-height: 1.5;
	text-align: left;
}

.swal2-popup.wishlist_popup_container .swal2-input,
.swal2-popup.share_popup_container .swal2-input,
.swal2-popup.share_popup_container #wishlist_url {
	height: 44px;
	margin: 0;
	padding: 0 12px;
	border: 1px solid #e3e3e3;
	border-radius: 4px;
	box-shadow: none;
	color: #2b2b29;
	font-size: 14px;
}

.swal2-popup.wishlist_popup_container .swal2-input:focus,
.swal2-popup.share_popup_container .swal2-input:focus {
	border-color: #414f34;
	box-shadow: 0 0 0 3px rgba(65, 79, 52, 0.12);
}

html body .swal2-popup.wishlist_popup_container .form_container,
html body .swal2-popup.share_popup_container .form_container {
	display: flex;
	justify-content: flex-start;
	gap: 8px;
}

/* the e-mail / new name field: front.css makes it a 30px-round pill with a 15px margin */
html body .swal2-popup .form_container #share_email,
html body .swal2-popup .form_container #wishlist_new_name,
html body .swal2-popup #wishlist_name {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	height: 44px;
	margin: 0;
	padding: 0 12px;
	border: 1px solid #e3e3e3;
	border-radius: 4px !important;
	background: #fff;
	box-shadow: none;
	color: #2b2b29;
	font-size: 14px;
	font-style: normal;
}

html body .swal2-popup .form_container #share_email:focus,
html body .swal2-popup .form_container #wishlist_new_name:focus,
html body .swal2-popup #wishlist_name:focus {
	border-color: #414f34;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(65, 79, 52, 0.12);
}

html body .swal2-popup .form_container ::placeholder {
	color: #8a8984;
	font-style: normal;
}

.swal2-popup.wishlist_popup_container .button_new_medium_green,
.swal2-popup.wishlist_popup_container .button_new_medium_grey,
.swal2-popup.share_popup_container .button_new_medium_green {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 44px;
	margin: 0;
	padding: 0 18px;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	white-space: nowrap;
}

.swal2-popup.wishlist_popup_container .button_new_medium_green,
.swal2-popup.share_popup_container .button_new_medium_green {
	border: 0;
	background: #414f34;
	color: #fff;
}

.swal2-popup.wishlist_popup_container .button_new_medium_green:hover,
.swal2-popup.share_popup_container .button_new_medium_green:hover {
	background: #2f3a25;
}

.swal2-popup.wishlist_popup_container .button_new_medium_grey {
	border: 1px solid #e3e3e3;
	background: #fff;
	color: #3c3c3b;
}

.swal2-popup.wishlist_popup_container .button_new_medium_grey:hover {
	border-color: #414f34;
	background: #f7f8f5;
	color: #414f34;
}

/* delete list / remove product: Cancel outlined, the delete red (it removes something) */
.swal2-popup.wishlist_popup_container .wishlist_delete_buttons {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 8px;
}

.swal2-popup.wishlist_popup_container .wishlist_delete_buttons .button_new_medium_green {
	order: 2;
	width: 100%;
	background: #a33a3a;
}

.swal2-popup.wishlist_popup_container .wishlist_delete_buttons .button_new_medium_green:hover {
	background: #8a2c2c;
}

.swal2-popup.wishlist_popup_container .wishlist_delete_buttons .button_new_medium_grey {
	order: 1;
	width: 100%;
}

/* share: the link field with the copy button inside */
html body .swal2-popup.share_popup_container .wislist_popup_copy_url {
	position: relative;
	display: flex;
	width: 100%;
	max-width: none;
	height: auto;
	margin: 0 0 20px;
	padding: 0;
}

html body .swal2-popup.share_popup_container .wislist_popup_copy_url #wishlist_url {
	flex: 1 1 auto;
	width: 100%;
	padding-right: 48px;
	background: #f4f4f4;
	color: #3c3c3b;
}

.swal2-popup.share_popup_container .wislist_popup_copy_url .copy_url_button {
	position: absolute;
	top: 4px;
	right: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 4px;
	color: #414f34;
	cursor: pointer;
}

.swal2-popup.share_popup_container .wislist_popup_copy_url .copy_url_button:hover {
	background: #fff;
}

.swal2-popup.share_popup_container .wislist_popup_send_container {
	padding-top: 20px;
	border-top: 1px solid #ebebeb;
}

.swal2-popup.share_popup_container .wislist_popup_container_confirmation {
	color: #414f34;
	font-size: 14px;
}

/* ── tablet: one card per row ── */
@media (max-width: 1199px) {
	html body .ws_wishlist_product_list.wishlist_products_list_container {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ── phone: lists above the products, the footer bar stacked ── */
@media (max-width: 991px) {
	html body#module-advansedwishlist-mywishlist .mywishlist_container {
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
		padding: 20px 0 48px;
	}

	/* the theme hides the lists here (they are in the bottom-bar heart's sheet) - the page lost its title;
	   shown above the products */
	html body#module-advansedwishlist-mywishlist .mywishlist_container .mywishlist_left {
		display: block;
	}

	html body#module-advansedwishlist-mywishlist .mywishlist_left .wishlist_section_title.my_account_page_title {
		margin-bottom: 12px;
	}

	html body .wishlist_section_title.my_account_page_title {
		font-size: 26px;
	}

	html body#module-advansedwishlist-mywishlist #wishlist-detail .wishlist_section_title.my_account_page_title {
		font-size: 21px;
	}
}

@media (max-width: 767px) {
	html body .wishlist_products_list_container .wishlist_product_list_element {
		grid-template-columns: 88px minmax(0, 1fr);
		gap: 12px;
		padding: 14px;
	}

	html body .wishlist_product_list_element .wishlist_product_image {
		width: 88px;
	}

	html body .wishlist_product_list_element .wishlist_product_list_center_left {
		flex-direction: column;
		gap: 8px;
	}

	html body .wishlist_product_list_element .qty_prices .qty_prices_container {
		grid-template-columns: 44px max-content minmax(0, 1fr);
		gap: 8px;
	}

	html body .wishlist_product_list_element .qty_prices_container .reduction_title {
		width: 44px;
	}

	html body .wl-products .wl-products__footer {
		justify-content: stretch;
	}

	html body .wl-products .wl-products__footer > * {
		flex: 1 1 100%;
	}

	html body .wl-products .wl-products__footer .select_deselect_container {
		justify-content: center;
		margin: 0 !important;
	}

	html body .wl-products .wl-products__footer > div select {
		flex: 1 1 auto;
		min-width: 0;
	}

	html body .wl-products .wl-products__footer > div {
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 6px;
	}

	html body .wl-products .wl-products__footer > div label {
		flex: 1 1 100%;
		text-align: left;
	}
}
