/* ==========================================================================
   WooCommerce: dish add-to-cart button, "added" toast, shop / product / cart / checkout in the dark theme
   ========================================================================== */

/* ---------- Dish add-to-cart (menu-tabs / menu-cards rows) ---------- */
.sv-dish-cart {
	position: relative; flex-shrink: 0; display: inline-grid; place-items: center;
	width: 36px; height: 36px; margin-left: 14px; border: 1px solid var(--sv-accent); border-radius: 50%;
	color: var(--sv-accent); transition: background .3s, color .3s, transform .3s;
}
.sv-dish-cart svg { grid-area: 1 / 1; width: 17px; height: 17px; transition: opacity .25s, transform .25s; }
.sv-dish-cart__check { opacity: 0; transform: scale(.4); }
.sv-dish-cart:hover, .sv-dish-cart:focus-visible { background: var(--sv-accent); color: #000; outline: 0; }
.sv-dish-cart.loading { pointer-events: none; opacity: .7; }
.sv-dish-cart.loading::after { content: ""; position: absolute; inset: -4px; border: 1px solid transparent; border-top-color: var(--sv-accent); border-radius: 50%; animation: sv-spin .8s linear infinite; }
.sv-dish-cart.is-added { background: var(--sv-accent); color: #000; }
.sv-dish-cart.is-added .sv-dish-cart__bag { opacity: 0; transform: scale(.4); }
.sv-dish-cart.is-added .sv-dish-cart__check { opacity: 1; transform: none; }
.sv-menu-tabs__name a, .sv-menu-cards__name a { color: inherit; }
.sv-menu-tabs__name a:hover, .sv-menu-cards__name a:hover { color: var(--sv-accent); }
.sv-menu-tabs__row .added_to_cart, .sv-menu-cards__row .added_to_cart { display: none; }
.sv-menu-tabs__price del, .sv-menu-cards__price del { opacity: .5; margin-right: 6px; }
.sv-menu-tabs__price ins, .sv-menu-cards__price ins { text-decoration: none; }

/* ---------- Toast ---------- */
.sv-toast {
	position: fixed; z-index: 500; left: 50%; bottom: 30px; display: flex; align-items: center; gap: 18px;
	max-width: calc(100vw - 32px); padding: 14px 18px 14px 22px; border: 1px solid var(--sv-accent); border-radius: 5px;
	background: var(--sv-surface); color: var(--sv-heading); font-size: 15px; box-shadow: 0 20px 40px rgba(0, 0, 0, .35);
	opacity: 0; visibility: hidden; transform: translate(-50%, 20px); transition: opacity .3s, transform .3s, visibility .3s;
}
.sv-toast.is-visible { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.sv-toast a { flex-shrink: 0; padding: 8px 16px; background: var(--sv-accent); color: #000; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; border-radius: 2px; }
.sv-toast a:hover { color: #000; filter: brightness(1.08); }

/* ---------- Shared WooCommerce chrome ---------- */
.sv-shop { padding: 120px 0; }
.woocommerce .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner {
	margin: 0 0 30px !important; padding: 16px 20px !important; border: 1px solid var(--sv-line) !important; border-left: 3px solid var(--sv-accent) !important;
	border-radius: 5px; background: var(--sv-surface) !important; color: var(--sv-heading) !important; list-style: none;
}
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { color: var(--sv-accent) !important; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.wc-block-components-button:not(.is-link), .wp-block-button__link.add_to_cart_button {
	min-height: 50px; padding: 0 35px !important; border: 1px solid var(--sv-accent) !important; border-radius: 0 !important;
	background: var(--sv-accent) !important; color: #000 !important;
	font-family: var(--sv-body-font) !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .13em; text-transform: uppercase;
	display: inline-flex !important; align-items: center; justify-content: center; transition: background .3s, color .3s;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .wc-block-components-button:not(.is-link):hover { background: transparent !important; color: var(--sv-accent) !important; }
.woocommerce .price, .woocommerce-Price-amount, .wc-block-components-product-price { color: var(--sv-accent) !important; }
.woocommerce .price del { opacity: .5; }
.woocommerce .price ins { text-decoration: none; }
.woocommerce span.onsale { min-height: 0; min-width: 0; padding: 4px 10px; border-radius: 2px; background: var(--sv-accent); color: #000; font-size: 11px; font-weight: 700; line-height: 1.4; letter-spacing: .1em; text-transform: uppercase; }
.woocommerce .star-rating span::before { color: var(--sv-accent); }

/* Inputs (classic + block checkout) */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.woocommerce .quantity .qty, .woocommerce-cart table.cart td.actions .coupon .input-text,
.wc-block-components-text-input input, .wc-block-components-textarea, .wc-block-components-combobox .components-combobox-control__input,
.wc-blocks-components-select__select, .wc-block-components-quantity-selector {
	background: transparent !important; border: 1px solid var(--sv-line) !important; border-radius: 5px !important; color: var(--sv-heading) !important;
}
.wc-block-components-text-input label, .wc-block-components-combobox label, .wc-blocks-components-select__label { color: var(--sv-text) !important; opacity: .7; }
.woocommerce form .form-row input.input-text:focus, .wc-block-components-text-input input:focus { border-color: var(--sv-accent) !important; box-shadow: none !important; outline: 0; }
.wc-block-components-quantity-selector input, .wc-block-components-quantity-selector button { color: var(--sv-heading) !important; background: transparent !important; }
.wc-blocks-components-select__select option, .woocommerce select option { background: var(--sv-surface); }

/* ---------- Shop archive ---------- */
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 40px; }
.woocommerce .woocommerce-ordering select { height: 44px; padding: 0 14px; background: transparent; border: 1px solid var(--sv-line); border-radius: 5px; color: var(--sv-heading); }
.woocommerce ul.products.sv-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 50px 30px; margin: 0; }
.woocommerce ul.products.sv-products::before, .woocommerce ul.products.sv-products::after { display: none; }
.woocommerce ul.products.sv-products li.product { width: auto !important; margin: 0 !important; float: none; text-align: center; }
.woocommerce ul.products li.product a img { aspect-ratio: 410 / 460; object-fit: cover; margin: 0 0 24px; border-radius: 300px 300px 0 0; transition: transform .8s var(--sv-ease); }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { display: block; overflow: hidden; }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link:hover img { transform: scale(1.03); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; margin: 0 0 8px; font-family: var(--sv-heading-font); font-size: 26px !important; font-weight: 300; color: var(--sv-heading); }
.woocommerce ul.products li.product .price { margin-bottom: 18px; font-size: 16px; }
.woocommerce ul.products li.product .button { margin-top: 0; }
.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; justify-content: center; gap: 8px; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 34px; padding: 8px; color: var(--sv-heading); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--sv-accent); color: #000; }

/* ---------- Single product ---------- */
.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: start; }
.woocommerce div.product div.images, .woocommerce div.product div.summary { width: auto !important; float: none !important; margin: 0 !important; }
.woocommerce div.product div.images img { border-radius: 300px 300px 0 0; }
.woocommerce div.product .product_title { font-size: clamp(36px, 3.6vw, 52px); font-weight: 300; margin: 0 0 16px; }
.woocommerce div.product p.price { font-size: 24px; margin-bottom: 24px; }
.woocommerce div.product .woocommerce-product-details__short-description { margin-bottom: 30px; font-size: 16px; line-height: 1.8; color: var(--sv-heading); }
.woocommerce div.product form.cart { display: flex; gap: 14px; align-items: stretch; margin-bottom: 30px; }
.woocommerce div.product form.cart .quantity .qty { width: 80px; height: 50px; }
.woocommerce div.product .product_meta { padding-top: 24px; border-top: 1px solid var(--sv-line); font-size: 14px; display: grid; gap: 6px; }
.woocommerce div.product .product_meta a { color: var(--sv-accent); }
.woocommerce div.product .woocommerce-tabs, .woocommerce div.product .related, .woocommerce div.product .upsells { grid-column: 1 / -1; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 30px; border-bottom: 1px solid var(--sv-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 30px 0 0; padding: 0; border: 0; background: none; border-radius: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 0 0 12px; color: var(--sv-heading); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--sv-accent); box-shadow: inset 0 -2px 0 var(--sv-accent); }
.woocommerce div.product .woocommerce-tabs .panel h2:first-child { display: none; }
.woocommerce div.product .related > h2, .woocommerce div.product .upsells > h2 { margin: 30px 0 40px; text-align: center; font-size: clamp(36px, 3.6vw, 52px); font-weight: 300; }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger { background: var(--sv-surface); }

/* ---------- Cart & checkout (blocks) ---------- */
.woocommerce-cart .sv-container--narrow, .woocommerce-checkout .sv-container--narrow, .woocommerce-account .sv-container--narrow { max-width: calc(var(--sv-container) + 48px); }
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { color: var(--sv-heading); }
.wc-block-cart-items, .wc-block-components-totals-wrapper, .wc-block-components-sidebar .wp-block-woocommerce-cart-order-summary-block,
.wc-block-checkout__sidebar .wc-block-components-panel, .wc-block-components-order-summary {
	border-color: var(--sv-line) !important;
}
.wc-block-cart-items th, .wc-block-components-totals-item__label, .wc-block-components-order-summary-item__description { color: var(--sv-text) !important; }
.wc-block-cart-item__image img, .wc-block-components-order-summary-item__image img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }
.wc-block-components-product-name { color: var(--sv-heading) !important; font-family: var(--sv-heading-font); font-size: 20px !important; }
.wc-block-components-sidebar, .wc-block-checkout__sidebar { padding: 30px !important; border-radius: 5px; background: var(--sv-surface); }
.wc-block-components-title, .wc-block-components-checkout-step__title, .wp-block-woocommerce-cart-order-summary-heading-block { font-family: var(--sv-heading-font) !important; font-weight: 300 !important; color: var(--sv-heading) !important; }
.wc-block-components-radio-control__option, .wc-block-components-radio-control-accordion-option { border-color: var(--sv-line) !important; }
.wc-block-components-radio-control__input { border-color: var(--sv-line) !important; }
.wc-block-components-radio-control__input:checked { border-color: var(--sv-accent) !important; }
.wc-block-components-radio-control__input:checked::before { background: var(--sv-accent) !important; }
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] { background: transparent; border-color: var(--sv-line); }
.wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: var(--sv-accent); }
.wc-block-cart__empty-cart__title, .wp-block-woocommerce-empty-cart-block h2 { font-family: var(--sv-heading-font); font-weight: 300; }
.wp-block-woocommerce-empty-cart-block .wp-block-separator { border-color: var(--sv-line); }
.wc-block-components-totals-coupon a, .wc-block-components-checkout-return-to-cart-button { color: var(--sv-accent) !important; }

/* ---------- Cart / checkout / account: compact title instead of the banner ---------- */
.sv-shop-flow { padding: 150px 0 120px; }
.sv-shop-flow__head { text-align: center; margin-bottom: 50px; }
.sv-shop-flow__title { margin: 0; font-size: clamp(40px, 4.2vw, 60px); font-weight: 300; }
.sv-shop-flow .sv-prose { font-size: 16px; }

/* ---------- Cart line items (block cart) ---------- */
.wc-block-cart-items { border-collapse: separate !important; border-spacing: 0 14px !important; }
.wc-block-cart-items thead { display: none; }
.wc-block-cart-items .wc-block-cart-items__row { background: var(--sv-surface); }
.wc-block-cart-items .wc-block-cart-items__row td { border: 0 !important; padding: 22px 24px !important; vertical-align: middle !important; }
.wc-block-cart-items .wc-block-cart-items__row td:first-child { border-radius: 5px 0 0 5px; }
.wc-block-cart-items .wc-block-cart-items__row td:last-child { border-radius: 0 5px 5px 0; }
.wc-block-cart-item__image { width: 120px; }
.wc-block-cart-item__image a, .wc-block-cart-item__image img { display: block; width: 96px !important; height: 96px; max-width: none; }
.wc-block-cart-item__image img { border: 1px solid var(--sv-accent); padding: 3px; }
.wc-block-cart-item__product .wc-block-components-product-name { display: inline-block; margin-bottom: 4px; font-size: 24px !important; font-weight: 300; line-height: 1.25; text-decoration: none; }
.wc-block-cart-item__product .wc-block-components-product-name:hover { color: var(--sv-accent) !important; }
.wc-block-cart-item__prices .wc-block-components-product-price { font-size: 14px; color: var(--sv-text) !important; opacity: .75; }
.wc-block-cart-item__prices .wc-block-components-product-price::after { content: " each"; }
.wc-block-cart-item__product .wc-block-components-product-metadata { margin: 6px 0 14px; font-size: 14px; line-height: 1.7; color: var(--sv-text); opacity: .85; }
.wc-block-cart-item__quantity { display: flex; align-items: center; gap: 16px; }
.wc-block-components-quantity-selector { width: 112px !important; height: 40px; border-radius: 40px !important; overflow: hidden; }
.wc-block-components-quantity-selector::after { display: none !important; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__input { font-size: 15px !important; font-weight: 600 !important; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button { color: var(--sv-accent) !important; opacity: 1 !important; font-size: 18px !important; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover { background: rgba(230, 177, 95, .12) !important; }
.wc-block-cart-item__remove-link { width: 40px; height: 40px; display: inline-grid !important; place-items: center; border: 1px solid var(--sv-line) !important; border-radius: 50%; color: var(--sv-heading) !important; text-decoration: none; transition: .3s; }
.wc-block-cart-item__remove-link:hover { border-color: #d9534f !important; color: #e8766f !important; }
.wc-block-cart-item__remove-link svg { width: 18px; height: 18px; }
.wc-block-cart-item__total { width: 140px; text-align: right; }
.wc-block-cart-item__total .wc-block-components-product-price { font-family: var(--sv-heading-font); font-size: 26px; font-weight: 300; color: var(--sv-accent) !important; }
.wc-block-cart-item__total .wc-block-components-sale-badge { display: none; }

/* Order summary sidebar */
.wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-item__value { color: var(--sv-heading); }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-size: 16px; color: var(--sv-heading) !important; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-family: var(--sv-heading-font); font-size: 30px; font-weight: 300; color: var(--sv-accent) !important; }
.wc-block-cart__submit-button { width: 100%; }

@media (max-width: 767px) {
	.wc-block-cart-items .wc-block-cart-items__row { display: grid !important; grid-template-columns: 80px 1fr; gap: 14px; padding: 18px; border-radius: 5px; }
	.wc-block-cart-items .wc-block-cart-items__row td { padding: 0 !important; border-radius: 0 !important; }
	.wc-block-cart-item__image, .wc-block-cart-item__image a, .wc-block-cart-item__image img { width: 80px !important; height: 80px; }
	.wc-block-cart-item__total { grid-column: 2; width: auto; text-align: left; }
	.wc-block-cart-item__product .wc-block-components-product-name { font-size: 20px !important; }
}

/* ---------- My account ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; border: 1px solid var(--sv-line); border-radius: 5px; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 14px 20px; border-bottom: 1px solid var(--sv-line); color: var(--sv-heading); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { color: var(--sv-accent); }

@media (max-width: 991px) {
	.sv-shop { padding: 90px 0; }
	.woocommerce ul.products.sv-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.woocommerce div.product { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 767px) {
	.woocommerce ul.products.sv-products { grid-template-columns: minmax(0, 1fr); }
	.sv-dish-cart { width: 32px; height: 32px; margin-left: 8px; }
}

/* ==========================================================================
   Single dish page: facts, dietary badges, options, note, live total, service strip, tabs, sticky bar
   ========================================================================== */
.single-product div.product .summary .price { font-family: var(--sv-heading-font); font-size: 30px !important; }
.sv-dish-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 24px 0 18px; padding: 0; list-style: none; background: var(--sv-line); border: 1px solid var(--sv-line); }
.sv-dish-facts li { display: grid; gap: 4px; padding: 14px 12px; background: var(--sv-bg); text-align: center; }
.sv-dish-facts span { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; opacity: .6; }
.sv-dish-facts strong { font-family: var(--sv-heading-font); font-size: 19px; font-weight: 400; color: var(--sv-heading); }
.sv-dish-spice { display: inline-flex; justify-content: center; gap: 4px; }
.sv-dish-spice i { width: 9px; height: 14px; border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%; background: var(--sv-line); }
.sv-dish-spice i.is-on { background: #c2523c; }
.sv-dish-diet { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 26px; }
.sv-dish-diet__badge { padding: 5px 12px; border: 1px solid var(--sv-accent); border-radius: 30px; color: var(--sv-accent); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.sv-dish-diet__badge--nuts { border-color: #c2523c; color: #e08a77; }

.sv-dish-options { display: grid; gap: 18px; width: 100%; margin: 0 0 22px; }
.sv-dish-opt { margin: 0; padding: 0; border: 0; }
.sv-dish-opt legend { margin-bottom: 10px; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--sv-heading); }
.sv-dish-choice { display: flex; align-items: center; gap: 12px; margin: 0 0 8px; padding: 13px 16px; border: 1px solid var(--sv-line); cursor: pointer; transition: border-color .25s, background .25s; }
.sv-dish-choice:hover { border-color: color-mix(in srgb, var(--sv-accent) 60%, transparent); }
.sv-dish-choice:has(input:checked) { border-color: var(--sv-accent); background: color-mix(in srgb, var(--sv-accent) 8%, transparent); }
.sv-dish-choice input { width: 18px; height: 18px; margin: 0; accent-color: var(--sv-accent); }
.sv-dish-choice span { flex: 1; color: var(--sv-heading); }
.sv-dish-choice em { font-style: normal; font-size: 14px; color: var(--sv-accent); }
.sv-dish-note { display: grid; gap: 8px; }
.sv-dish-note span { font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--sv-heading); }
.sv-dish-note textarea { width: 100%; padding: 12px 16px; border: 1px solid var(--sv-line); background: transparent; color: var(--sv-heading); font: inherit; font-size: 15px; resize: vertical; outline: 0; }
.sv-dish-note textarea:focus { border-color: var(--sv-accent); }
.sv-dish-total { display: flex; justify-content: space-between; align-items: baseline; margin: 0; padding-top: 14px; border-top: 1px solid var(--sv-line); font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.sv-dish-total strong { font-family: var(--sv-heading-font); font-size: 28px; font-weight: 400; letter-spacing: 0; color: var(--sv-accent); }

.single-product form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.single-product form.cart .sv-dish-options { flex: 1 1 100%; }
.sv-qty { display: inline-flex; align-items: center; height: 54px; border: 1px solid var(--sv-line); border-radius: 30px; }
.sv-qty__btn { width: 44px; height: 100%; border: 0; background: none; color: var(--sv-heading); font-size: 20px; cursor: pointer; }
.sv-qty__btn:hover { color: var(--sv-accent); }
.sv-qty input.qty { width: 44px !important; height: 100%; padding: 0 !important; border: 0 !important; background: none !important; text-align: center; -moz-appearance: textfield; }
.sv-qty input.qty::-webkit-outer-spin-button, .sv-qty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.single-product form.cart .quantity { margin: 0 !important; }
.single-product form.cart .single_add_to_cart_button { flex: 1 1 220px; height: 54px; }

.sv-dish-service { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 22px 0 0; padding: 16px 0 0; list-style: none; border-top: 1px solid var(--sv-line); font-size: 14px; }
.sv-dish-service li { display: inline-flex; align-items: center; gap: 8px; }
.sv-dish-service li::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--sv-accent); }
.sv-dish-share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 16px 0 0; font-size: 14px; }
.sv-dish-share a { color: var(--sv-heading); }
.sv-dish-share a:hover { color: var(--sv-accent); }
.sv-dish-share .sv-icon { width: 16px; height: 16px; }

/* Tabs: no white box; padded labels with a gold underline on the active one */
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 30px; padding: 0; border-bottom: 1px solid var(--sv-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: block; padding: 14px 22px !important; color: var(--sv-heading) !important; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; border-bottom: 2px solid transparent; margin-bottom: -1px; transition: color .25s, border-color .25s; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a, .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--sv-accent) !important; border-bottom-color: var(--sv-accent); }
.woocommerce div.product .woocommerce-tabs .panel { margin: 0 0 40px; font-size: 16px; line-height: 1.8; }
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child { display: none; }
.sv-dish-nutrition { display: flex; gap: 30px; margin: 12px 0 0; padding: 0; list-style: none; }
.sv-dish-nutrition span { display: block; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; opacity: .6; }
.sv-dish-nutrition strong { font-family: var(--sv-heading-font); font-size: 22px; font-weight: 400; color: var(--sv-heading); }

/* Sticky bar: phones only, after the real button has scrolled away */
.sv-dish-bar { display: none; }
@media (max-width: 767px) {
	.sv-dish-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 12px 14px !important; font-size: 11px; }
	.sv-dish-bar {
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; display: flex; align-items: center; justify-content: space-between; gap: 14px;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: color-mix(in srgb, var(--sv-bg) 94%, #000); border-top: 1px solid var(--sv-line);
		transform: translateY(110%); transition: transform .35s var(--sv-ease);
	}
	.sv-dish-bar.is-visible { transform: none; }
	.sv-dish-bar span { display: grid; min-width: 0; }
	.sv-dish-bar em { overflow: hidden; font-style: normal; font-size: 13px; white-space: nowrap; text-overflow: ellipsis; opacity: .75; }
	.sv-dish-bar strong { font-family: var(--sv-heading-font); font-size: 22px; font-weight: 400; color: var(--sv-accent); }
	.sv-dish-bar__btn { flex: 0 0 auto; height: 48px; padding: 0 24px; border: 0; background: var(--sv-accent); color: #000; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
}
