/* GS Comandă: cart, checkout and thank-you page. Colours from the theme (--gsco-* set inline from --fs-color-*). */
body.gs-comanda-page { --gsco-ink: #1b1b1b; --gsco-text: #3b3b38; --gsco-muted: #6b6b66; --gsco-line: #e8e8e5; --gsco-soft: #f6f6f4; --gsco-r: 14px; }
.gs-comanda-ic { width: 18px; height: 18px; flex: none; }
.gs-comanda-btn, a.gs-comanda-btn, button.gs-comanda-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; margin: 0; padding: 0 20px; border: 0; border-radius: 12px; background: var(--gsco-p); color: #fff; font-size: 15px; font-weight: 700; line-height: 1.2; text-transform: none; letter-spacing: 0; text-decoration: none; box-shadow: none; cursor: pointer; }
.gs-comanda-btn:hover { color: #fff; filter: brightness(.95); }
.gs-comanda-btn.gs-comanda-btn-ghost { background: #fff; color: var(--gsco-p); border: 1.5px solid var(--gsco-p); font-weight: 600; }
.gs-comanda-btn.gs-comanda-btn-ghost:hover { color: var(--gsco-p); filter: none; background: color-mix(in srgb, var(--gsco-p) 6%, #fff); }

/* ── Progress bar ── */
.gs-comanda-progress { background: #fff; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); padding: 14px 16px 10px; margin: 0 0 12px; }
.gs-comanda-progress-t { display: flex; gap: 10px; align-items: flex-start; margin: 0; font-size: 14px !important; line-height: 1.45; color: var(--gsco-ink); }
.gs-comanda-progress-t .gs-comanda-ic { color: var(--gsco-p); margin-top: 1px; }
.gs-comanda-progress-t b { color: var(--gsco-p); font-weight: 700; }
.gs-comanda-progress-t strong { color: var(--gsco-ok); font-weight: 700; } /* what is already won */
.gs-comanda-progress-t:has(> .gs-comanda-progress-img) { align-items: center; }
.gs-comanda-progress-img { width: 38px; height: 38px; flex: none; object-fit: contain; border: 1px solid #ededea; border-radius: 8px; background: #fff; }
.gs-comanda-track { position: relative; height: 8px; margin: 18px 16px 30px; border-radius: 99px; background: #ececea; }
.gs-comanda-track > i { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 99px; background: var(--gsco-p); transition: width .3s ease; }
.gs-comanda-mile { position: absolute; top: 50%; width: 28px; height: 28px; transform: translate(-50%, -50%); display: flex; align-items: center; justify-content: center; border-radius: 50%; background: #fff; border: 2px solid #d8d8d4; color: #8a8a85; }
.gs-comanda-mile.is-on { border-color: var(--gsco-p); background: var(--gsco-p); color: #fff; }
.gs-comanda-mile.is-on em { color: var(--gsco-p); font-weight: 700; }
.gs-comanda-mile:last-child em { left: auto; right: -2px; transform: none; } /* the last one sits at the end of the bar */
.gs-comanda-mile.is-new { animation: gsco-won .55s ease-out; } /* reached since the last update */
@keyframes gsco-won { 0% { transform: translate(-50%, -50%) scale(.6); } 60% { transform: translate(-50%, -50%) scale(1.2); } 100% { transform: translate(-50%, -50%) scale(1); } }
.gs-comanda-mile .gs-comanda-ic { width: 14px; height: 14px; }
.gs-comanda-mile em { position: absolute; top: 31px; left: 50%; transform: translateX(-50%); font-style: normal; font-size: 11.5px; line-height: 1; white-space: nowrap; color: var(--gsco-muted); }
.gs-comanda-progress-gift span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.gs-comanda-progress-gift { display: flex; gap: 10px; align-items: center; margin: 0; padding: 10px 0 2px; border-top: 1px dashed var(--gsco-line); font-size: 13px !important; line-height: 1.45; color: var(--gsco-text); }
.gs-comanda-progress-gift img { width: 38px; height: 38px; object-fit: contain; border: 1px solid #ededea; border-radius: 8px; background: #fff; flex: none; }
.gs-comanda-progress-gift b { color: var(--gsco-ink); }

/* ── Cart ── */
body.gs-comanda-cart:has(.gs-comanda-cartbox) .checkout-page-title { display: none; } /* Flatsome's step header: our cart has its own title (the empty cart keeps the theme's) */
.gs-comanda-cartbox { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 18px 0 30px; color: var(--gsco-text); }
.gs-comanda-head { margin: 0 0 12px; }
.gs-comanda-cartbox > .gs-comanda-head { grid-column: 1 / -1; margin: 0 0 -4px; } /* above both columns: the products and the totals start on one line */
.gs-comanda-cartbox .gs-comanda-title, .gs-comanda-checkout-title { margin: 0 0 2px; font-size: 24px; font-weight: 700; line-height: 1.2; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
.gs-comanda-sub { margin: 0; font-size: 13px !important; color: var(--gsco-muted); }
.gs-comanda-items { background: #fff; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); padding: 4px 14px; }
.gs-comanda-item { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto 36px; grid-template-areas: "img info info rm" "img qty sub sub" ". ext ext ext"; gap: 6px 12px; align-items: start; padding: 14px 0; border-bottom: 1px solid #f1f1ee; }
.gs-comanda-item:last-of-type { border-bottom: 0; }
.gs-comanda-item-img { grid-area: img; width: 72px; height: 72px; border: 1px solid #ededea; border-radius: 12px; background: #fff; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.gs-comanda-item-img img { width: 100%; height: 100%; object-fit: contain; margin: 0; padding: 0; border-radius: 0; box-shadow: none; }
.gs-comanda-item-info { grid-area: info; min-width: 0; }
.gs-comanda-item-name, a.gs-comanda-item-name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin: 0 0 4px; font-size: 14px; font-weight: 500; line-height: 1.35; color: var(--gsco-ink); text-decoration: none; }
a.gs-comanda-item-name:hover { color: var(--gsco-p); }
.gs-comanda-item-info dl.variation { display: flex; flex-wrap: wrap; gap: 0 4px; margin: 2px 0 4px; font-size: 12.5px; line-height: 1.4; color: var(--gsco-muted); }
.gs-comanda-item-info dl.variation :is(dt, dd) { margin: 0; padding: 0; font-size: inherit; font-weight: 400; color: inherit; text-transform: none; letter-spacing: 0; } /* themes write dt in capitals */
.gs-comanda-item-info dl.variation dd p { margin: 0; }
.gs-comanda-item-price { font-size: 14px; font-weight: 700; line-height: 1.3; color: var(--gsco-ink); }
.gs-comanda-item-price del { font-size: 12px; font-weight: 400; opacity: .6; margin-right: 4px; }
.gs-comanda-item-price ins { text-decoration: none; }
.gs-comanda-item-remove { grid-area: rm; justify-self: end; }
.gs-comanda-cartbox a.gs-comanda-remove, .gs-comanda-cartbox a.remove.gs-comanda-remove { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin: -4px -6px 0 0; border: 0; border-radius: 10px; background: transparent; color: #8a8a85 !important; font-size: 0; line-height: 1; }
.gs-comanda-cartbox a.gs-comanda-remove:hover { background: #f4f4f2; color: var(--gsco-alert) !important; }
.gs-comanda-item-qty { grid-area: qty; align-self: center; }
/* A quantity the customer cannot change (the gift): just the number, in the place of the buttons */
.gs-comanda-item-qty:not(:has(.quantity)) { font-size: 15px; font-weight: 600; color: var(--gsco-ink); }
.gs-comanda-item-qty .quantity { display: inline-flex; align-items: center; margin: 0; border: 1.5px solid var(--gsco-line); border-radius: 10px; overflow: hidden; height: 40px; background: #fff; }
.gs-comanda-item-qty .quantity input.qty { width: 40px; height: 38px; margin: 0; padding: 0; border: 0; box-shadow: none; text-align: center; font-size: 15px; font-weight: 600; color: var(--gsco-ink); background: transparent; -moz-appearance: textfield; }
.gs-comanda-item-qty .quantity input.qty::-webkit-inner-spin-button, .gs-comanda-item-qty .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.gs-comanda-item-qty .quantity .minus, .gs-comanda-item-qty .quantity .plus, .gs-comanda-item-qty .quantity .ux-quantity__button { width: 36px; height: 38px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--gsco-muted); font-size: 18px; line-height: 1; box-shadow: none; }
.gs-comanda-item-subtotal { grid-area: sub; align-self: center; justify-self: end; text-align: right; font-size: 15px; font-weight: 700; color: var(--gsco-ink); }
.gs-comanda-item-subtotal .gsqd-line-discount { text-align: left; font-weight: 400; }
/* Quantity discount (gs-quantity-discounts) in the line total, without its box: "−6%" and the old total struck, the new
   total in bold below; the "you save" row stays for screen readers. Its CSS is all !important, so these are too. */
.gs-comanda-item-subtotal:has(.gsqd-line-discount) { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 2px 6px; text-align: right; }
.gs-comanda-item-subtotal:has(.gsqd-line-discount) > .amount { order: 2; font-size: 13px; font-weight: 400; color: var(--gsco-muted); text-decoration: line-through; }
.gs-comanda-item-subtotal .gsqd-line-discount { display: contents !important; }
.gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__row { display: inline-flex !important; align-items: center !important; gap: 4px !important; margin: 0 !important; padding: 0 !important; white-space: nowrap !important; }
.gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__label, .gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__row:nth-child(2) { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
.gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__row:first-child { order: 1; }
.gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__row:first-child .gsqd-line-discount__amount { padding: 1px 7px !important; border-radius: 99px !important; background: color-mix(in srgb, var(--gsco-ok) 14%, #fff) !important; color: var(--gsco-ok) !important; font-size: 12px !important; font-weight: 700 !important; }
.gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__row:first-child .gsqd-line-discount__amount::before { content: "\2212"; }
.gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__final { order: 3; flex-basis: 100%; justify-content: flex-end !important; margin: 0 !important; }
.gs-comanda-item-subtotal .gsqd-line-discount .gsqd-line-discount__final-amount { color: var(--gsco-ink) !important; font-size: 16px !important; font-weight: 700 !important; }
.gs-comanda-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; padding: 12px 0; border-top: 1px solid #f1f1ee; }
.gs-comanda-coupon { flex: 1 1 100%; }
.gs-comanda-coupon summary { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; cursor: pointer; list-style: none; font-size: 14px; font-weight: 600; color: var(--gsco-p); }
.gs-comanda-coupon summary::-webkit-details-marker { display: none; }
.gs-comanda-coupon .coupon { display: flex; gap: 8px; margin-top: 8px; }
.gs-comanda-coupon .coupon input.input-text { flex: 1; min-width: 0; height: 46px; margin: 0; padding: 0 14px; border: 1.5px solid var(--gsco-line); border-radius: 11px; box-shadow: none; font-size: 15px; }
.gs-comanda-coupon .coupon .gs-comanda-btn { min-height: 46px; padding: 0 16px; font-size: 14px; }
.gs-comanda-actions .continue-shopping { margin: 0; float: none; }
.gs-comanda-actions .continue-shopping .button { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 0; min-height: 0; border: 0; background: none; color: var(--gsco-muted); font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0; box-shadow: none; }
/* Flatsome's outline button fills with the shop colour on hover; here it stays a link */
.gs-comanda-actions .continue-shopping .button:is(:hover, :focus-visible) { background: none !important; border-color: transparent !important; box-shadow: none !important; color: var(--gsco-p) !important; }
.gs-comanda-actions .continue-shopping .button > span[aria-hidden="true"] { display: none; } /* Flatsome's text arrow; an SVG one below */
.gs-comanda-actions .continue-shopping .button::before { content: ""; flex: none; width: 16px; height: 16px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 18l-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 18l-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; }
.gs-comanda-auto .gs-comanda-update { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }
.gs-comanda-cartbox .cross-sells { margin-top: 18px; }

/* Summary (WooCommerce's cart totals, restyled) */
.gs-comanda-summary { background: #fff; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); padding: 16px; }
.gs-comanda-summary .cart_totals { width: 100%; float: none; margin: 0; }
.gs-comanda-summary .cart_totals > h2, .gs-comanda-summary .cart_totals thead th { margin: 0 0 6px; padding: 0 0 4px; border: 0; font-size: 16px; font-weight: 700; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
.gs-comanda-summary .cart_totals thead, .gs-comanda-summary .cart_totals thead tr, .gs-comanda-summary .cart_totals thead th { border: 0; box-shadow: none; }
.gs-comanda-summary table.shop_table { width: 100%; margin: 0; border: 0; border-collapse: collapse; }
.gs-comanda-summary table.shop_table tr { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 12px; padding: 6px 0; border: 0; }
.gs-comanda-summary table.shop_table th, .gs-comanda-summary table.shop_table td { display: block; padding: 0; border: 0; background: none; font-size: 14px; font-weight: 400; color: var(--gsco-text); text-transform: none; letter-spacing: 0; text-align: left; }
.gs-comanda-summary table.shop_table td { text-align: right; font-weight: 600; color: var(--gsco-ink); }
.gs-comanda-summary table.shop_table tr.woocommerce-shipping-totals td, .gs-comanda-summary table.shop_table tr.woocommerce-shipping-totals { display: block; width: 100%; text-align: left; }
.gs-comanda-summary .shipping__table { width: 100%; margin: 0; }
.gs-comanda-summary .shipping__table th { display: none; }
.gs-comanda-summary tr.order-total { margin-top: 6px; padding-top: 12px; border-top: 1px solid var(--gsco-line); align-items: baseline; }
.gs-comanda-summary tr.order-total th { font-size: 16px; color: var(--gsco-ink); }
.gs-comanda-summary tr.order-total td, .gs-comanda-summary tr.order-total td strong { font-size: 19px; font-weight: 700; }
.gs-comanda-summary tr.order-total small { display: block; font-size: 11.5px; font-weight: 400; color: var(--gsco-muted); }
.gs-comanda-summary .wc-proceed-to-checkout { padding: 14px 0 0; margin: 0; }
.gs-comanda-summary .wc-proceed-to-checkout a.checkout-button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px; margin: 0; padding: 10px 20px; border: 0; border-radius: 12px; background: var(--gsco-cta, var(--gsco-p)); color: #fff; font-size: 15.5px; font-weight: 700; line-height: 1.25; text-align: center; text-transform: none; letter-spacing: 0; box-shadow: none; }
.gs-comanda-trust { display: flex; justify-content: center; gap: 14px; margin: 10px 0 0; font-size: 12px !important; color: var(--gsco-muted); }
.gs-comanda-trust span { display: inline-flex; gap: 5px; align-items: center; }
.gs-comanda-trust .gs-comanda-ic { color: var(--gsco-ok); }

/* Shipping options (cart totals and the checkout's order table): large, tappable */
body.gs-comanda-page ul#shipping_method { width: 100%; margin: 6px 0 0; padding: 0; float: none; list-style: none; text-align: left; }
body.gs-comanda-page ul#shipping_method li { position: relative; display: flex; align-items: center; gap: 10px; margin: 0 0 8px; padding: 10px 12px; border: 1.5px solid var(--gsco-line); border-radius: 12px; background: #fff; list-style: none; font-size: 14px; line-height: 1.35; color: var(--gsco-ink); }
body.gs-comanda-page ul#shipping_method li:has(input:checked) { border-color: var(--gsco-p); background: color-mix(in srgb, var(--gsco-p) 5%, #fff); }
body.gs-comanda-page ul#shipping_method li input.shipping_method { margin: 0; accent-color: var(--gsco-p); flex: none; }
body.gs-comanda-page ul#shipping_method li label { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin: 0; padding: 0; font-size: 14px; font-weight: 500; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; cursor: pointer; }
body.gs-comanda-page ul#shipping_method li label img { max-width: 40px; height: auto; margin: 0; }
body.gs-comanda-page ul#shipping_method li label .amount { font-weight: 700; }

/* Removing a discount code (cart and checkout): a small round button instead of "[Remove]"; the text stays for screen readers */
body.gs-comanda-page a.woocommerce-remove-coupon { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; margin: 0 0 0 6px; vertical-align: -5px; border-radius: 50%; background: var(--gsco-soft); color: var(--gsco-muted); font-size: 0; text-decoration: none; }
body.gs-comanda-page a.woocommerce-remove-coupon::before { content: ""; width: 10px; height: 10px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / contain no-repeat; }
body.gs-comanda-page a.woocommerce-remove-coupon:hover, body.gs-comanda-page a.woocommerce-remove-coupon:focus-visible { background: color-mix(in srgb, var(--gsco-alert) 12%, #fff); color: var(--gsco-alert); }

/* ── Checkout ── */
body.gs-comanda-checkout .gs-comanda-checkout-title { margin: 6px 0 10px; }
body.gs-comanda-checkout .gs-comanda-progress-slot { margin: 0 0 14px; }
body.gs-comanda-checkout #customer_details { padding: 0 !important; } /* the child theme pads it with !important */
body.gs-comanda-checkout .social-login:not(:has(*)) { display: none; } /* social login block with no buttons */
/* Sign in and discount code: two quiet links instead of banners */
body.gs-comanda-checkout .woocommerce-form-login-toggle, body.gs-comanda-checkout .woocommerce-form-coupon-toggle { display: inline-block; margin: 0 0 10px; vertical-align: top; }
body.gs-comanda-checkout .woocommerce-form-login-toggle { margin-right: 16px; } /* both on one row on phones */
body.gs-comanda-checkout .woocommerce-form-login-toggle .woocommerce-info, body.gs-comanda-checkout .woocommerce-form-coupon-toggle .woocommerce-info { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; font-size: 14px; }
body.gs-comanda-checkout .woocommerce-form-login-toggle .message-container, body.gs-comanda-checkout .woocommerce-form-coupon-toggle .message-container { padding: 0; text-align: left !important; } /* Flatsome centres it on phones with !important */
body.gs-comanda-checkout .woocommerce-form-login-toggle .woocommerce-info::before, body.gs-comanda-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none; }
body.gs-comanda-checkout a.showlogin, body.gs-comanda-checkout a.showcoupon { display: inline-flex; align-items: center; gap: 7px; margin: 0 !important; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: var(--gsco-p) !important; /* the child theme paints them as buttons, with !important */ font-size: 14px; font-weight: 600; line-height: 1.4; text-transform: none; letter-spacing: 0; text-decoration: none; }
body.gs-comanda-checkout a.showlogin::before, body.gs-comanda-checkout a.showcoupon::before { content: ""; width: 16px; height: 16px; flex: none; background: currentColor; -webkit-mask: var(--gsco-ic) center / contain no-repeat; mask: var(--gsco-ic) center / contain no-repeat; }
body.gs-comanda-checkout a.showlogin { --gsco-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E"); }
body.gs-comanda-checkout a.showcoupon { --gsco-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4l-7.2 7.2a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='8' cy='8' r='1.2'/%3E%3C/svg%3E"); }
body.gs-comanda-checkout form.woocommerce-form-login, body.gs-comanda-checkout form.checkout_coupon { margin: 0 0 14px; padding: 14px 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; }
/* The two forms in the page's style: same boxes and buttons as the steps */
body.gs-comanda-checkout form.woocommerce-form-login > p:first-child { margin: 0 0 12px; font-size: 14px !important; line-height: 1.5; color: var(--gsco-muted); }
body.gs-comanda-checkout form.woocommerce-form-login .form-row { float: none; width: auto; margin: 0 0 12px; padding: 0; }
body.gs-comanda-checkout form.woocommerce-form-login label:not(.woocommerce-form__label-for-checkbox) { display: block; margin: 0 0 5px; font-size: 13px; font-weight: 600; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
body.gs-comanda-checkout :is(form.woocommerce-form-login, form.checkout_coupon) .input-text { min-height: 46px; margin: 0; padding: 0 12px; border: 1.5px solid var(--gsco-line); border-radius: 10px; background-color: #fff; box-shadow: none; font-size: 15px; color: var(--gsco-ink); }
body.gs-comanda-checkout :is(form.woocommerce-form-login, form.checkout_coupon) .input-text:focus { border-color: var(--gsco-p); outline: 0; box-shadow: 0 0 0 3px color-mix(in srgb, var(--gsco-p) 18%, transparent); }
body.gs-comanda-checkout :is(form.woocommerce-form-login, form.checkout_coupon) .button { min-height: 46px; margin: 0; padding: 0 20px; border: 0; border-radius: 12px; background: var(--gsco-p); box-shadow: none; color: #fff; font-size: 15px; font-weight: 700; line-height: 1.2; text-transform: none; letter-spacing: 0; }
body.gs-comanda-checkout form.checkout_coupon .button { padding: 0 20px !important; width: auto !important; white-space: nowrap; } /* Flatsome's .expand forces padding 0 and width 100% (!important) */
body.gs-comanda-checkout form.woocommerce-form-login .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font-size: 14px; font-weight: 500; color: var(--gsco-ink); text-transform: none; }
body.gs-comanda-checkout form.woocommerce-form-login .woocommerce-form-login__submit { width: 100%; }
body.gs-comanda-checkout form.woocommerce-form-login .lost_password { margin: 10px 0 0; font-size: 14px; }
body.gs-comanda-checkout form.woocommerce-form-login .lost_password a { color: var(--gsco-p); font-weight: 600; text-decoration: none; }
body.gs-comanda-checkout form.checkout_coupon .flex-row { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0; }
body.gs-comanda-checkout form.checkout_coupon .flex-col { padding: 0; }
body.gs-comanda-checkout form.checkout_coupon .flex-col.flex-grow { flex: 1; min-width: 0; }

/* The steps: one card with the fields; the step headings keep their place even when WooCommerce re-sorts the fields */
body.gs-comanda-checkout .woocommerce-billing-fields { padding: 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; }
body.gs-comanda-checkout .woocommerce-billing-fields > h3 { display: none; }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper, body.gs-comanda-checkout .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 12px; align-items: end; /* paired boxes line up when one label wraps */ }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > *, body.gs-comanda-checkout .woocommerce-shipping-fields__field-wrapper > * { grid-column: 1 / -1; order: 6; float: none; width: auto; }
/* Half width only in pairs (first + last); a half field without its pair takes the whole row */
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > .form-row-first:has(+ .form-row-last), body.gs-comanda-checkout .woocommerce-shipping-fields__field-wrapper > .form-row-first:has(+ .form-row-last) { grid-column: 1; }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > .form-row-first + .form-row-last, body.gs-comanda-checkout .woocommerce-shipping-fields__field-wrapper > .form-row-first + .form-row-last { grid-column: 2; }
/* 1.1.4 (user: "arată aiurea decalat"): a pair where a field has text under its box (a hint, WooCommerce's error line, a shop script's message div) starts at the top: labels and boxes level, the text hangs below (at the bottom, the other field sat level with the hint) */
body.gs-comanda-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) > .form-row-first:has(:is(.description, .checkout-inline-error-message, input ~ div)), body.gs-comanda-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) > .form-row-first:has(+ .form-row-last :is(.description, .checkout-inline-error-message, input ~ div)), body.gs-comanda-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) > .form-row-first:has(:is(.description, .checkout-inline-error-message, input ~ div)) + .form-row-last, body.gs-comanda-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) > .form-row-first + .form-row-last:has(:is(.description, .checkout-inline-error-message, input ~ div)) { align-self: start; }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > .gs-comanda-step-1 { order: 1; }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > .gs-comanda-g1 { order: 2; }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > .gs-comanda-step-2 { order: 3; }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > .gs-comanda-g2 { order: 4; }
body.gs-comanda-checkout .woocommerce-billing-fields__field-wrapper > .gs-comanda-step-3 { order: 5; }
body.gs-comanda-checkout .gs-comanda-step { display: flex; align-items: center; gap: 10px; margin: 8px 0 12px; padding: 16px 0 0; border-top: 1px solid var(--gsco-line); font-size: 16px; font-weight: 700; line-height: 1.3; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
body.gs-comanda-checkout .gs-comanda-step > span { display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; flex: none; border-radius: 50%; background: var(--gsco-p); color: #fff; font-size: 13px; }
body.gs-comanda-checkout .gs-comanda-step-1 { margin-top: 0; padding-top: 0; border-top: 0; }
body.gs-comanda-checkout .gs-comanda-step-pay { margin: 18px 0 12px; }

/* Fields: labels always visible, one asterisk, large boxes */
body.gs-comanda-checkout form.checkout .form-row { margin: 0 0 12px; padding: 0; }
body.gs-comanda-checkout form.checkout .form-row > label:not(.checkbox) { display: block; margin: 0 0 5px; font-size: 13px; font-weight: 600; line-height: 1.3; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
body.gs-comanda-checkout form.checkout .form-row label .required { color: var(--gsco-alert); text-decoration: none; border: 0; }
body.gs-comanda-checkout form.checkout .form-row label .required ~ .required { display: none; }
body.gs-comanda-checkout form.checkout .form-row label .optional { font-weight: 400; color: var(--gsco-muted); }
body.gs-comanda-checkout form.checkout .form-row .input-text, body.gs-comanda-checkout form.checkout .form-row select, body.gs-comanda-checkout form.checkout .form-row textarea { min-height: 46px; margin: 0; padding: 0 12px; border: 1.5px solid var(--gsco-line); border-radius: 10px; background-color: #fff; box-shadow: none; font-size: 15px; color: var(--gsco-ink); }
body.gs-comanda-checkout form.checkout .form-row select { padding-right: 34px; text-overflow: ellipsis; } /* room for the theme's arrow */
body.gs-comanda-checkout form.checkout .form-row textarea { min-height: 90px; padding: 10px 12px; }
body.gs-comanda-checkout form.checkout .form-row .input-text:focus, body.gs-comanda-checkout form.checkout .form-row select:focus, body.gs-comanda-checkout form.checkout .form-row textarea:focus { border-color: var(--gsco-p); outline: 0; box-shadow: 0 0 0 3px color-mix(in srgb, var(--gsco-p) 18%, transparent); }
body.gs-comanda-checkout form.checkout .form-row .input-text::placeholder { color: #a5a5a0; }
body.gs-comanda-checkout form.checkout .select2-container .select2-selection--single { height: 46px; padding: 0; border: 1.5px solid var(--gsco-line); border-radius: 10px; background-color: #fff; }
body.gs-comanda-checkout form.checkout .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 32px 0 12px; line-height: 43px; font-size: 15px; color: var(--gsco-ink); }
body.gs-comanda-checkout form.checkout .select2-container .select2-selection--single .select2-selection__arrow { height: 43px; right: 6px; }
body.gs-comanda-checkout form.checkout .select2-container--open .select2-selection--single, body.gs-comanda-checkout form.checkout .select2-container--focus .select2-selection--single { border-color: var(--gsco-p); }
body.gs-comanda-checkout form.checkout .form-row.woocommerce-invalid .input-text, body.gs-comanda-checkout form.checkout .form-row.woocommerce-invalid select, body.gs-comanda-checkout form.checkout .form-row.woocommerce-invalid .select2-selection { border-color: var(--gsco-alert); }
body.gs-comanda-checkout form.checkout input[type="checkbox"], body.gs-comanda-checkout form.checkout input[type="radio"] { accent-color: var(--gsco-p); }

/* Person or company: two buttons drive the shop's select (which stays, hidden) */
.gs-comanda-has-seg > label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.gs-comanda-has-seg select, .gs-comanda-has-seg .select2-container { display: none !important; }
.gs-comanda-seg { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; gap: 3px; padding: 3px; border-radius: 11px; background: var(--gsco-soft); }
.gs-comanda-seg button { min-height: 40px; margin: 0; padding: 4px 8px; border: 0; border-radius: 9px; background: transparent; box-shadow: none; color: var(--gsco-muted); font-size: 14px; font-weight: 600; line-height: 1.2; text-transform: none; letter-spacing: 0; }
.gs-comanda-seg button.is-on { background: #fff; color: var(--gsco-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, .1); }
.gs-comanda-seg button:focus-visible { outline: 2px solid var(--gsco-p); outline-offset: 1px; }

/* Account and another delivery address: small cards under the steps */
/* The cards sit on the parts, not on the wrapper: other plugins hide them (Sameday hides another address for a locker) */
body.gs-comanda-checkout .woocommerce-account-fields, body.gs-comanda-checkout #ship-to-different-address, body.gs-comanda-checkout .shipping_address { margin: 12px 0 0; padding: 14px 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; }
body.gs-comanda-checkout .woocommerce-account-fields > .form-row:last-child, body.gs-comanda-checkout .woocommerce-account-fields p.create-account { margin: 0; }
body.gs-comanda-checkout #ship-to-different-address { font-size: 14px; font-weight: 400; text-transform: none; letter-spacing: 0; }
body.gs-comanda-checkout form.checkout label.checkbox { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 14px; font-weight: 500; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; cursor: pointer; }
body.gs-comanda-checkout form.checkout label.checkbox input { width: 18px; height: 18px; margin: 0; flex: none; }
body.gs-comanda-checkout form.checkout label.checkbox .optional { display: none; } /* a box to tick is optional anyway */
body.gs-comanda-checkout .shipping_address { padding-bottom: 4px; }
body.gs-comanda-checkout .woocommerce-additional-fields:not(:has(.form-row)) { display: none; }

/* Order summary and payment: a white card instead of the grey box */
body.gs-comanda-checkout form.checkout .col-inner.is-well { padding: 18px 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; box-shadow: none; }
body.gs-comanda-checkout #order_review_heading { margin: 0 0 6px; font-size: 17px; font-weight: 700; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
/* The table as rows of label + value, so wide rows (shipping options, points, the Easybox map) get the full width */
body.gs-comanda-checkout .woocommerce-checkout-review-order-table, body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody, body.gs-comanda-checkout .woocommerce-checkout-review-order-table tfoot { display: block; width: 100%; margin: 0; border: 0; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table thead { display: none; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr > th, body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr > td { display: block; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr > td[colspan], body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr > :only-child { flex: 1 1 100%; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody .cart_item .product-name { flex: 1; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table th, body.gs-comanda-checkout .woocommerce-checkout-review-order-table td { padding: 7px 0; border: 0; background: none; font-size: 14px; font-weight: 400; line-height: 1.4; color: var(--gsco-text); text-transform: none; letter-spacing: 0; vertical-align: top; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table td:last-child, body.gs-comanda-checkout .woocommerce-checkout-review-order-table tfoot td { text-align: right; font-weight: 600; color: var(--gsco-ink); }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item { border-bottom: 1px solid #f1f1ee; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody .cart_item td { padding: 10px 0; font-size: 13.5px; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody .cart_item .product-name { color: var(--gsco-ink); }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody .cart_item .product-total { padding-left: 10px; white-space: nowrap; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody .cart_item img { border: 1px solid #ededea; border-radius: 8px; background: #fff; }
/* The theme's thumbnail on the left, the name in one column beside it */
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody .cart_item .product-name:has(> img) { position: relative; min-height: 70px; padding-left: 62px; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tbody .cart_item .product-name > img { position: absolute; left: 0; top: 10px; width: 50px; height: 50px; margin: 0; object-fit: contain; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tfoot tr:first-child th, body.gs-comanda-checkout .woocommerce-checkout-review-order-table tfoot tr:first-child td { padding-top: 12px; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr:is(.woocommerce-shipping-totals, :has(#shipping_method)) { flex-direction: column; gap: 0; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr:is(.woocommerce-shipping-totals, :has(#shipping_method)) > * { width: 100%; text-align: left; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr:is(.woocommerce-shipping-totals, :has(#shipping_method)) > th { padding-bottom: 0; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.order-total { margin-top: 6px; border-top: 1px solid var(--gsco-line); }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table .order-total th, body.gs-comanda-checkout .woocommerce-checkout-review-order-table .order-total td { padding-top: 12px; font-size: 16px; color: var(--gsco-ink); }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table .order-total td strong .amount, body.gs-comanda-checkout .woocommerce-checkout-review-order-table .order-total td > .amount { font-size: 19px; font-weight: 700; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table .order-total .includes_tax { display: block; white-space: nowrap; font-size: 11.5px; font-weight: 400; color: var(--gsco-muted); }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table td[data-title="Economisești"], body.gs-comanda-checkout .woocommerce-checkout-review-order-table td[data-title="Economisești"] + td { color: var(--gsco-ok); }
/* Sameday's locker (easybox): a card under the shipping options with its button in the page's style, over the theme's
   "Locker / ALEGE" (all !important there, so here too) */
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store { display: flex !important; flex-direction: row !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; margin: 0 0 8px !important; padding: 12px 14px !important; border: 1.5px solid var(--gsco-line) !important; border-radius: 12px !important; background: var(--gsco-soft) !important; overflow: visible !important; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store > * { display: block !important; width: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; text-align: left !important; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store > td { flex: 1 1 140px; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store td strong { position: static !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1.35; color: var(--gsco-ink); }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store td strong::before { content: none !important; display: none !important; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store #select_locker { position: static !important; display: inline-flex !important; align-items: center; justify-content: center; width: auto !important; min-width: 0 !important; min-height: 40px; margin: 0 !important; padding: 0 16px !important; border: 1.5px solid var(--gsco-p) !important; border-radius: 10px !important; background: #fff !important; box-shadow: none !important; color: var(--gsco-p) !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1.2 !important; letter-spacing: 0 !important; text-indent: 0 !important; text-transform: none !important; transform: none !important; overflow: visible !important; white-space: nowrap; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store #select_locker::before { content: none !important; display: none !important; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store #select_locker * { display: inline !important; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store #select_locker:hover, body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store #select_locker:focus-visible { background: color-mix(in srgb, var(--gsco-p) 8%, #fff) !important; }
/* The chosen locker: "We deliver to" above, its name and address below */
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store#showSamedayLockerDetailsCheckoutLine { flex-direction: column !important; align-items: stretch; gap: 2px; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store#showSamedayLockerDetailsCheckoutLine > * { flex: none; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store#showSamedayLockerDetailsCheckoutLine { border-color: color-mix(in srgb, var(--gsco-p) 45%, #fff) !important; background: #fff !important; }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store#showSamedayLockerDetailsCheckoutLine td strong { font-size: 12.5px !important; font-weight: 400 !important; color: var(--gsco-muted); }
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store#showSamedayLockerDetailsCheckoutLine #showLockerDetails { font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--gsco-ink); }

/* Products folded on phones (the script adds the row) */
body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.gs-comanda-fold { display: none; }
.gs-comanda-fold { border-bottom: 1px solid #f1f1ee; }
.gs-comanda-fold td { padding: 2px 0 8px !important; }
.gs-comanda-fold button { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 40px; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; color: var(--gsco-ink); font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0; }
.gs-comanda-fold button b { color: var(--gsco-p); font-weight: 600; }

/* Points (gs-plata-partiala): only the look */
/* Points (mu-plugin gs-plata-partiala). 1.1.4 (user: "să arate mai bine complet, ocupă prea mult spațiu, buton inutil când nu e aplicat nimic"): one row, the text on the left, one button on the right; "Elimină" only once points are applied */
body.gs-comanda-checkout tr.gs-points-section td { padding: 10px 0 0 !important; border: 0; text-align: left; }
body.gs-comanda-checkout .gs-points-container { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; margin: 0; padding: 8px 8px 8px 14px; border: 0; border-radius: 12px; background: color-mix(in srgb, var(--gsco-p) 7%, #fff); font-size: 13.5px; font-weight: 400; line-height: 1.35; color: var(--gsco-text); text-align: left; }
body.gs-comanda-checkout .gs-points-container .gs-points-info { display: block; flex: 1 1 auto; min-width: 0; margin: 0; font-size: inherit; text-align: left; }
body.gs-comanda-checkout .gs-points-container .gs-points-label { color: var(--gsco-text); }
body.gs-comanda-checkout .gs-points-container .gs-points-balance { font-size: inherit; font-weight: 700; color: var(--gsco-ok); white-space: nowrap; }
body.gs-comanda-checkout .gs-points-container .gs-points-actions { display: flex; flex: none; gap: 8px; margin: 0; }
body.gs-comanda-checkout .gs-points-container .gs-btn { flex: none; width: auto; min-height: 36px; margin: 0; padding: 0 14px; border: 1.5px solid var(--gsco-p); border-radius: 10px; background: #fff; box-shadow: none; color: var(--gsco-p); font-size: 13.5px; font-weight: 700; line-height: 1.2; text-transform: none; letter-spacing: 0; transform: none; }
body.gs-comanda-checkout .gs-points-container .gs-btn:hover { background: var(--gsco-p); color: #fff; }
body.gs-comanda-checkout .gs-points-container .gs-btn-red { border-color: var(--gsco-line); color: var(--gsco-muted); }
body.gs-comanda-checkout .gs-points-container .gs-btn-red:hover { border-color: var(--gsco-alert); background: #fff; color: var(--gsco-alert); }
body.gs-comanda-checkout .gs-points-container .gs-btn:disabled { opacity: .6; cursor: progress; }
/* The mu-plugin before 2.0.0 prints both buttons always and "Discount aplicat" once applied */
body.gs-comanda-checkout .gs-points-container:not(.is-applied):not(:has(.gs-discount-info)) #gs_points_clear { display: none; }
body.gs-comanda-checkout .gs-points-container:has(.gs-discount-info) #gs_points_apply, body.gs-comanda-checkout .gs-points-container:has(.gs-discount-info) .gs-points-info { display: none; }
body.gs-comanda-checkout .gs-points-container .gs-discount-info { order: -1; flex: 1 1 auto; margin: 0; padding: 0; border-radius: 0; background: none; font-size: inherit; text-align: left; color: var(--gsco-text); }

/* Payment methods as large options, the order button full width */
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment { padding: 0; border-radius: 0; background: none; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment ul.payment_methods { margin: 0 0 12px; padding: 0; border: 0; list-style: none; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment ul.payment_methods > li { margin: 0 0 8px; padding: 12px 14px; border: 1.5px solid var(--gsco-line); border-radius: 12px; background: #fff; line-height: 1.4; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment ul.payment_methods > li:has(> input:checked) { border-color: var(--gsco-p); background: color-mix(in srgb, var(--gsco-p) 5%, #fff); }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment ul.payment_methods > li > input { margin: 0 8px 0 0; vertical-align: middle; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment ul.payment_methods > li > label { display: inline; margin: 0; font-size: 14.5px; font-weight: 600; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; cursor: pointer; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment ul.payment_methods > li > label img { max-height: 24px; width: auto; margin: 0 0 0 6px; vertical-align: middle; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .payment_box { margin: 8px 0 0; padding: 0; border: 0; background: none; font-size: 13px; color: var(--gsco-muted); }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .payment_box::before { display: none; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .payment_box p:last-child { margin-bottom: 0; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .payment_box > p { font-size: 13px !important; line-height: 1.45; } /* the theme's <p> size made the description larger than the box */
/* PayU card form (Secure Form): PayU draws a grey box with borderless white fields; here the fields look like the
   form's own (labels, 46 px boxes, focus ring). The text inside the fields is PayU's iframe (GS_Comanda_Payu sets it). */
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container { max-width: none; margin: 12px 0 0; padding: 0; border: 0; border-radius: 0; background: none; color: var(--gsco-ink); }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container label { display: block; margin: 0 0 5px; padding: 0; font-size: 13px; font-weight: 600; line-height: 1.3; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .payu-card-form { display: flex; align-items: center; height: 46px; padding: 0 12px; border: 1.5px solid var(--gsco-line); border-radius: 10px; background: #fff; transition: border-color .15s, box-shadow .15s; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .payu-card-form > * { flex: 1 1 auto; width: 100% !important; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .payu-card-form.payu-secure-form-focus { border-color: var(--gsco-p); box-shadow: 0 0 0 3px color-mix(in srgb, var(--gsco-p) 18%, transparent); }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .payu-card-form.payu-secure-form-invalid:not(.payu-secure-form-focus) { border-color: var(--gsco-alert); }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .card-details { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 12px; overflow: visible; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .card-details::before, body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .card-details::after { display: none; } /* PayU's clearfix would take grid cells */
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .card-details .expiration, body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container .card-details .cvv { float: none; width: auto; margin: 0; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payu-card-container :is(.payu-sf-validation-error, .payu-sf-technical-error) { margin-top: 4px; font-size: 12.5px; color: var(--gsco-alert); }
/* PayU's legal text: small, grey and left-aligned (justified, a narrow column gets wide gaps) */
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .payu-accept-conditions { margin-top: 12px; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .payu-accept-conditions .payu-conditions-description { margin-top: 0; font-size: 11.5px; line-height: 1.45; text-align: left; color: var(--gsco-muted); }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .place-order { margin: 0; padding: 4px 0 0; }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #payment .woocommerce-terms-and-conditions-wrapper, body:is(.gs-comanda-checkout,.gs-comanda-orderpay) .woocommerce-privacy-policy-text { font-size: 12.5px; line-height: 1.5; color: var(--gsco-muted); }
body:is(.gs-comanda-checkout,.gs-comanda-orderpay) #place_order { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; margin: 10px 0 0; padding: 10px 20px; border: 0; border-radius: 12px; background: var(--gsco-cta, var(--gsco-p)); box-shadow: none; color: #fff; font-size: 16px; font-weight: 700; line-height: 1.25; text-transform: none; letter-spacing: 0; }

/* ── Thank-you page ── */
.gs-comanda-btn.is-ghost, a.gs-comanda-btn.is-ghost { border: 1.5px solid var(--gsco-p); background: #fff; color: var(--gsco-p); }
.gs-comanda-thanks { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 18px 0 30px; color: var(--gsco-text); }
.gs-comanda-card { padding: 18px 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; }
.gs-comanda-ok { padding: 24px 16px 20px; text-align: center; }
.gs-comanda-ok-ring { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; margin: 0 auto 12px; border-radius: 50%; background: color-mix(in srgb, var(--gsco-ok) 12%, #fff); color: var(--gsco-ok); }
body.gs-comanda-thankyou h1.gs-comanda-ok-title { margin: 0 0 6px; font-size: 22px; font-weight: 700; line-height: 1.25; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
.gs-comanda-ok-ring svg { width: 28px; height: 28px; }
.gs-comanda-ok p { margin: 0; font-size: 14.5px !important; line-height: 1.55; color: var(--gsco-muted); }
.gs-comanda-ok p b { color: var(--gsco-ink); overflow-wrap: anywhere; }
body.gs-comanda-thankyou .gs-comanda-thanks h2 { margin: 0 0 10px; font-size: 16px !important; font-weight: 700; line-height: 1.3; color: var(--gsco-ink) !important; text-transform: none; letter-spacing: 0; } /* finalizare-comanda sets these with !important */
.gs-comanda-next ol { margin: 0; padding: 0; list-style: none; }
.gs-comanda-next li { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 10px; align-items: center; margin: 0; padding: 7px 0; font-size: 14px; line-height: 1.45; }
.gs-comanda-next li span { display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; background: color-mix(in srgb, var(--gsco-p) 10%, #fff); color: var(--gsco-p); font-size: 12.5px; font-weight: 700; }
.gs-comanda-next li b { font-weight: 600; color: var(--gsco-ink); }
.gs-comanda-pay { font-size: 14px; line-height: 1.5; }
.gs-comanda-pay > :last-child { margin-bottom: 0; }
.gs-comanda-thanks-actions { display: grid; gap: 10px; }
.gs-comanda-thanks-actions .gs-comanda-btn { width: 100%; }
.gs-comanda-thanks-failed .woocommerce-notice { margin: 0 0 12px; }
.gs-comanda-thanks-failed .woocommerce-thankyou-order-failed-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }

/* The order (WooCommerce's table) as a card of label + value rows, at every width */
body.gs-comanda-thankyou .gs-comanda-thanks-details > * + * { margin-top: 14px; }
body.gs-comanda-thankyou .gs-comanda-thanks .woocommerce-order-details { margin: 0; padding: 18px 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details, body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tbody, body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tfoot { display: block; width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; overflow: visible; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details thead { display: none; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tr { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin: 0; padding: 8px 0; border: 0; border-radius: 0; background: none; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tbody tr { padding: 10px 0; border-bottom: 1px solid #f1f1ee; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details th, body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details td { display: block; width: auto !important; margin: 0; padding: 0; border: 0; background: none; font-size: 14px; font-weight: 400; line-height: 1.4; color: var(--gsco-text); text-align: left; text-transform: none; letter-spacing: 0; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details td.product-name { flex: 1; color: var(--gsco-ink); }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details td.product-name a { color: var(--gsco-ink); text-decoration: none; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details td.product-total, body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tfoot td { font-weight: 600; color: var(--gsco-ink); text-align: right; white-space: nowrap; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tfoot tr:first-child { padding-top: 12px; }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tfoot tr:last-child { margin-top: 4px; padding-top: 12px; border-top: 1px solid var(--gsco-line); }
body.gs-comanda-thankyou .gs-comanda-thanks .gs-comanda-thanks-details table.woocommerce-table--order-details tfoot td small { display: block; font-size: 11.5px; font-weight: 400; color: var(--gsco-muted); white-space: nowrap; }
body.gs-comanda-thankyou .gs-comanda-thanks .woocommerce-customer-details { margin-top: 14px; }

/* The order's products: photo, name, quantity (the shop's field editor table of extra fields is replaced by the
   labelled rows of "Delivery and invoice", which show the company's data) */
.gs-comanda-oi { display: flex; gap: 12px; align-items: flex-start; }
.gs-comanda-oi .gs-comanda-oi-img { width: 48px; height: 48px; flex: none; margin: 0; object-fit: contain; border: 1px solid #ededea; border-radius: 10px; background: #fff; }
.gs-comanda-oi-body { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; }
.gs-comanda-oi-name, .gs-comanda-oi-name a { font-size: 13.5px; line-height: 1.4; color: var(--gsco-ink); text-decoration: none; }
.gs-comanda-oi-name { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.gs-comanda-oi-qty { padding: 4px 9px; border-radius: 99px; background: var(--gsco-soft); font-size: 12px; font-weight: 600; line-height: 1; color: var(--gsco-muted); }
body.gs-comanda-thankyou .gs-comanda-thanks .wc-item-meta { margin: 6px 0 0; padding: 0; list-style: none; font-size: 12.5px; line-height: 1.4; color: var(--gsco-muted); }
body.gs-comanda-thankyou .gs-comanda-thanks td.product-name:has(.gs-comanda-oi) .wc-item-meta { margin-left: 60px; }
body.gs-comanda-thankyou .gs-comanda-thanks .wc-item-meta li { display: flex; flex-wrap: wrap; gap: 4px; margin: 0; }
body.gs-comanda-thankyou .gs-comanda-thanks .wc-item-meta :is(p, strong) { margin: 0; font-weight: 400; text-transform: none; }
body.gs-comanda-thankyou .gs-comanda-thanks .woocommerce-table--custom-fields { display: none; }
/* The theme's step header ("1 Cart > 2 Delivery > 3 Order") repeats the page's own title and steps */
body.gs-comanda-checkout:has(.gs-comanda-checkout-title) .checkout-page-title, body.gs-comanda-thankyou:has(.gs-comanda-thanks) .checkout-page-title { display: none; }

/* Customer details: label + value */
.gs-comanda-dl { margin: 0; }
.gs-comanda-dl > div { display: grid; grid-template-columns: 118px minmax(0, 1fr); gap: 10px; padding: 8px 0; border-bottom: 1px solid #f1f1ee; font-size: 14px; line-height: 1.5; }
.gs-comanda-dl > div:last-child { border-bottom: 0; }
.gs-comanda-dl dt { margin: 0; font-size: 13px; font-weight: 400; color: var(--gsco-muted); }
.gs-comanda-dl dd { margin: 0; color: var(--gsco-ink); overflow-wrap: anywhere; }
.gs-comanda-dl address { margin: 0; padding: 0; border: 0; background: none; font-style: normal; line-height: 1.5; color: var(--gsco-ink); }
body.gs-comanda-thankyou .gs-comanda-dl :is(dt, dd, address) { text-transform: none; letter-spacing: 0; } /* the theme writes these in capitals */

/* Phones: every field on its own row (names, company and trade register, county and city do not fit side by side) */
@media (max-width: 549px) {
  body.gs-comanda-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) > * { grid-column: 1 / -1 !important; }
  body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store > th { flex: 1 1 100%; }
  body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.shipping-pickup-store #select_locker { width: 100% !important; }
}

/* Phones: a block other plugins print under the line total (quantity discount) gets its own row under the product */
@media (max-width: 849px) {
  .gs-comanda-item-subtotal:has(.gsqd-line-discount) { flex-direction: column; align-items: flex-end; gap: 1px; } /* narrow: one under the other, next to the quantity */
  .gs-comanda-item-subtotal:has(> div:not(.gsqd-line-discount)) { display: contents; }
  .gs-comanda-item-subtotal:has(> div:not(.gsqd-line-discount)) > * { grid-area: sub; align-self: center; justify-self: end; }
  .gs-comanda-item-subtotal:has(> div:not(.gsqd-line-discount)) > div { grid-area: ext; justify-self: stretch; margin: 2px 0 0; }
  body.gs-comanda-checkout .woocommerce-checkout-review-order-table tr.gs-comanda-fold { display: flex; }
  body.gs-comanda-checkout .woocommerce-checkout-review-order-table.is-folded tbody .cart_item { display: none; }
}

/* Sticky bar on phones */
.gs-comanda-sticky { display: none; }
@media (max-width: 849px) {
  .gs-comanda-sticky:not([hidden]) { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: flex; align-items: center; gap: 12px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid var(--gsco-line); box-shadow: 0 -6px 18px rgba(0, 0, 0, .06); transition: transform .2s ease; }
  .gs-comanda-sticky.is-away { transform: translateY(110%); }
  .gs-comanda-sticky-total { display: flex; flex-direction: column; font-size: 11.5px; line-height: 1.2; color: var(--gsco-muted); }
  .gs-comanda-sticky-total b { font-size: 17px; color: var(--gsco-ink); }
  .gs-comanda-sticky .gs-comanda-btn { flex: 1; min-height: 46px; background: var(--gsco-cta, var(--gsco-p)); }
  body.gs-comanda-page:has(.gs-comanda-sticky:not([hidden])) { padding-bottom: 76px; } /* room for the bar, only where it shows */
}

@media (min-width: 850px) {
  .gs-comanda-cartbox { grid-template-columns: minmax(0, 1fr) 360px; gap: 16px 28px; align-items: start; padding-top: 26px; }
  .gs-comanda-cart-side { position: sticky; top: 20px; }
  .gs-comanda-item { grid-template-columns: 80px minmax(0, 1fr) 130px 160px 36px; grid-template-areas: "img info qty sub rm" "ext ext ext ext ext"; align-items: center; }
  .gs-comanda-item-subtotal { justify-self: end; }
  .gs-comanda-item-qty:not(:has(.quantity)) { text-align: center; }
  .gs-comanda-item-img { width: 80px; height: 80px; }
  .gs-comanda-item-remove { align-self: center; }
  .gs-comanda-cartbox a.gs-comanda-remove { margin: 0; }
  /* Thank-you: confirmation and next steps on the left, the order on the right */
  .gs-comanda-thanks { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); grid-template-rows: auto auto auto 1fr; column-gap: 28px; align-items: start; padding-top: 26px; }
  .gs-comanda-thanks > * { grid-column: 1; }
  .gs-comanda-thanks > .gs-comanda-thanks-details { grid-column: 2; grid-row: 1 / span 4; }
  .gs-comanda-thanks-actions { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .gs-comanda-track > i, .gs-comanda-sticky { transition: none; } .gs-comanda-mile.is-new { animation: none; } }

/* ── 1.1.0 (user's mockups): mini-cart, second-unit offer, "Completează comanda", cart totals without shipping, checkout ── */
.gs-comanda-totals tr.gs-shipping-row { display: none !important; } /* the child theme's "Livrare" row; the rows are flex in the cart */
/* B / checkout 1: a second unit under the bar — 1.1.1 (user: "atâta text… nu e intuitiv"): the gain as the title, the
   product by its picture and name on one line, what else it brings as labels, the button with the price */
.gs-comanda-offer { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px 12px; align-items: center; margin: 12px 0 4px; padding: 12px; border-radius: 12px; background: color-mix(in srgb, var(--gsco-p) 7%, #fff); }
.gs-comanda-offer.has-img { grid-template-columns: 48px minmax(0, 1fr); }
.gs-comanda-offer-img { width: 48px; height: 48px; margin: 0; padding: 3px; object-fit: contain; border: 1px solid var(--gsco-line); border-radius: 10px; background: #fff; }
.gs-comanda-offer-txt { display: grid; gap: 2px; min-width: 0; }
p.gs-comanda-offer-t { margin: 0; font-size: 14px !important; font-weight: 800; line-height: 1.3; color: var(--gsco-ink); }
.gs-comanda-offer-name { overflow: hidden; font-size: 12.5px; line-height: 1.35; white-space: nowrap; text-overflow: ellipsis; color: var(--gsco-muted); }
button.gs-comanda-btn.gs-comanda-offer-btn { grid-column: 1 / -1; width: 100%; min-height: 44px; padding: 0 12px; border-radius: 10px; background: var(--gsco-cta, var(--gsco-p)); font-size: 14.5px; font-weight: 800; white-space: nowrap; }
.gs-comanda-offer-btn[disabled] { opacity: .6; cursor: progress; }
/* C: "Completează comanda": the shop's own product cards (its modern card where on), in a row that scrolls on phones */
.gs-comanda-recs { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; min-width: 0; margin: 16px 0 0; } /* minmax(0, 1fr): the list may not take the width of all its cards (1.1.3) */
.gs-comanda-recs-t { margin: 0; font-size: 17px !important; font-weight: 800; line-height: 1.3; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
.gs-comanda-recs-list > .products { display: flex; flex-wrap: nowrap; width: auto; max-width: none; margin: 0 -9.8px !important; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; }
.gs-comanda-recs-list > .products::-webkit-scrollbar { display: none; }
.gs-comanda-recs-list > .products > .col { flex: 0 0 46%; min-width: 0; max-width: 46%; padding: 0 9.8px 4px !important; scroll-snap-align: start; } /* two cards and the edge of the third; min-width 0: a card's content may not widen it (4 × 228 px did not fit 867 px) */
.gs-comanda-recs-list .added_to_cart { display: none; }
@media (min-width: 550px) { .gs-comanda-recs-list > .products > .col { flex-basis: 33.333%; max-width: 33.333%; } }
@media (min-width: 850px) { .gs-comanda-recs-list > .products > .col { flex: 1 0 max(25%, 190px); max-width: max(33.333%, 190px); } } /* 4 cards the size of the others; fewer fill the row; a narrow column keeps 190 px cards and scrolls */
/* D: shipping in the cart totals, only as a note */
.gs-comanda-cartbox .gs-comanda-ship-note th { flex: none; }
.gs-comanda-cartbox .gs-comanda-ship-note td { flex: 1 1 auto; text-align: right; }
.gs-comanda-ship-when, .gs-comanda-ship-free { display: block; }
.gs-comanda-ship-when { font-size: 13px; font-weight: 400; line-height: 1.4; color: var(--gsco-muted); }
.gs-comanda-ship-free { font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--gsco-ok); } /* the theme makes the cell bold already: <b> went to 900 */
.gs-comanda-totals .includes_tax, .gs-comanda-totals .includes_tax * { font-weight: 400 !important; }
/* Checkout 4: delivery time under each option, the threshold under them */
.gs-comanda-rate-time { display: block; font-size: 12.5px; font-weight: 400; line-height: 1.35; color: var(--gsco-muted); }
.gs-comanda-free-note td { padding-top: 4px !important; border: 0 !important; font-size: 13px; font-weight: 700; color: var(--gsco-ok); }
/* Checkout 5: the shop's note under a method; the reminder when none is chosen */
.gs-comanda-pay-note { display: block; margin-top: 2px; font-size: 12.5px; font-weight: 500; line-height: 1.35; color: var(--gsco-muted); } /* 1.1.6: cash on delivery neutral (user: "nu-mi place culoarea aia de verde aiurea") */
.gs-comanda-pay-note.is-online { color: color-mix(in srgb, var(--gsco-p) 78%, #000); } /* the online methods stand out by the shop's own colour only (1.1.7: no background, no bold), darkened to stay readable */
.gs-comanda-pay-msg, .gs-comanda-ship-msg { margin: 0 0 8px; padding: 10px 12px; border-radius: 10px; background: color-mix(in srgb, var(--gsco-alert) 8%, #fff); color: var(--gsco-alert); font-size: 14px !important; font-weight: 700; }
/* Checkout 6: the discount code under the total, the top link hidden */
body.gs-comanda-coupon-below .woocommerce-form-coupon-toggle, body.gs-comanda-coupon-below form.checkout_coupon { display: none !important; }
.gs-comanda-coupon-row td { padding: 6px 0 0 !important; border: 0 !important; }
button.gs-comanda-coupon-link { min-height: 0; margin: 0; padding: 4px 0; border: 0; background: none; color: var(--gsco-muted); font-size: 13px; font-weight: 400; line-height: 1.4; text-decoration: underline; text-transform: none; letter-spacing: 0; box-shadow: none; cursor: pointer; }
.gs-comanda-coupon-box { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.gs-comanda-coupon-box[hidden] { display: none; }
.gs-comanda-coupon-box input { flex: 1 1 140px; min-height: 44px; margin: 0; }
.gs-comanda-coupon-box .gs-comanda-btn { min-height: 44px; padding: 0 16px; }
.gs-comanda-coupon-box.is-busy { opacity: .6; pointer-events: none; }
.gs-comanda-coupon-msg { flex-basis: 100%; font-size: 13px; line-height: 1.4; color: var(--gsco-ok); }
.gs-comanda-coupon-msg.is-error { color: var(--gsco-alert); }
.gs-comanda-coupon-msg:empty { display: none; }
/* Checkout 7: trust next to the order button */
.gs-comanda-trust-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; margin: 6px 0 16px; padding: 0; list-style: none; }
.gs-comanda-trust-list li { display: flex; gap: 8px; align-items: center; margin: 0; font-size: 13px; font-weight: 500; line-height: 1.3; color: var(--gsco-ink); }
.gs-comanda-trust-ic { display: flex; flex: none; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: color-mix(in srgb, var(--gsco-ok) 12%, #fff); color: var(--gsco-ok); }
.gs-comanda-trust-list a { color: inherit; text-decoration: none; }
.gs-comanda-nw { white-space: nowrap; }
.gs-comanda-pay-line { margin: 8px 0 0; text-align: center; font-size: 12px !important; color: var(--gsco-muted); }
/* 1.1.2 (user: "și textul ăla e prea mare acolo"): a field's hint (under the e-mail) small and grey, not body text */
body.gs-comanda-checkout .woocommerce-billing-fields .form-row .description { display: block; margin-top: 5px; font-size: 12.5px !important; line-height: 1.45 !important; color: var(--gsco-muted) !important; }
/* 1.1.5: why cash on delivery is not offered (over the shop's limit), right under the payment methods */
body.gs-comanda-checkout .gs-comanda-cod-note { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 12px; padding: 10px 12px; border-radius: 10px; background: color-mix(in srgb, var(--gsco-p) 6%, #fff); font-size: 13px !important; line-height: 1.45; color: var(--gsco-text); }
body.gs-comanda-checkout .gs-comanda-cod-note svg { flex: none; margin-top: 1px; color: var(--gsco-p); }
/* 1.1.8 (user: "să se deschidă ca pe cele de pe home, ca să nu plece din pagină"): a trust line with details (after "|"
   in the settings) is a button; the details open over the line on wider screens, from below on phones (gs-comanda.js) */
.gs-comanda-trust-list li.has-info { position: relative; }
body.gs-comanda-checkout .gs-comanda-trust-btn { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: inherit; font: inherit; font-size: 13px; font-weight: 500; line-height: 1.3; letter-spacing: 0; text-align: left; text-transform: none; cursor: pointer; }
body.gs-comanda-checkout .gs-comanda-trust-btn > span:last-child { text-decoration: underline dotted; text-decoration-color: color-mix(in srgb, currentColor 45%, transparent); text-underline-offset: 3px; }
body.gs-comanda-checkout .gs-comanda-trust-btn:focus-visible { outline: 2px solid var(--gsco-p); outline-offset: 3px; border-radius: 6px; }
.gs-comanda-trust-pop { position: absolute; bottom: calc(100% + 10px); left: 0; z-index: 30; width: 300px; max-width: 80vw; padding: 12px 14px; border-radius: 12px; background: #fff; box-shadow: 0 10px 30px rgba(0, 0, 0, .14), 0 0 0 1px var(--gsco-line); font-size: 13px; line-height: 1.5; color: var(--gsco-text); text-align: left; }
.gs-comanda-trust-pop[hidden] { display: none; }
.gs-comanda-trust-pop::after { content: ""; position: absolute; bottom: -6px; left: 18px; width: 12px; height: 12px; background: #fff; box-shadow: 1px 1px 0 var(--gsco-line); transform: rotate(45deg); }
.gs-comanda-trust-list li.has-info:nth-child(2n) .gs-comanda-trust-pop { right: 0; left: auto; }
.gs-comanda-trust-list li.has-info:nth-child(2n) .gs-comanda-trust-pop::after { right: 18px; left: auto; }
.gs-comanda-trust-pop > b { display: block; margin-bottom: 4px; font-size: 13.5px; color: var(--gsco-ink); }
body.gs-comanda-checkout .gs-comanda-trust-pop p { margin: 0; font-size: 13px !important; line-height: 1.5 !important; }
.gs-comanda-sheet { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: flex-end; justify-content: center; background: rgba(10, 14, 12, .45); }
.gs-comanda-sheet-box { width: 100%; max-width: 520px; padding: 22px 22px 28px; border-radius: 20px 20px 0 0; background: #fff; color: var(--gsco-text, #3b3b38); font-size: 15px; line-height: 1.55; box-shadow: 0 -10px 40px rgba(0, 0, 0, .2); }
.gs-comanda-sheet-box:focus { outline: none; } /* focused after a touch: no frame */
.gs-comanda-sheet-box::before { content: ""; display: block; width: 40px; height: 4px; margin: -8px auto 16px; border-radius: 2px; background: #e2e2de; }
.gs-comanda-sheet-box > b { display: block; margin-bottom: 6px; font-size: 17px; color: var(--gsco-ink, #1b1b1b); }
.gs-comanda-sheet-box p { margin: 0; font-size: 15px !important; line-height: 1.55 !important; }
.gs-comanda-sheet .gs-comanda-sheet-close { display: block; width: 100%; height: 48px; min-height: 0; margin: 16px 0 0; padding: 0; border: 0; border-radius: 12px; background: var(--gsco-cta, var(--gsco-p)); color: #fff; font-size: 15px; font-weight: 700; line-height: 1; letter-spacing: 0; text-transform: none; cursor: pointer; }
/* 1.1.10: *bold* in the trust lines and their details (the window's title alone is on its own line) */
.gs-comanda-trust-list li span b, .gs-comanda-trust-pop p b, .gs-comanda-sheet-box p b { font-weight: 700; color: var(--gsco-ink, #1b1b1b); }
/* 1.1.12: paying an order placed earlier (order-pay; "se vede aiurea"): one centred column, a title with the order number,
   the order as a card (products with their pictures, the totals as label / amount rows), the payment as on the checkout,
   in its own card. */
body.gs-comanda-orderpay form#order_review { max-width: 720px; margin: 0 auto; }
body.gs-comanda-orderpay h1.gs-comanda-pay-title { max-width: 720px; margin: 8px auto 16px; font-size: 22px !important; font-weight: 700; line-height: 1.25; color: var(--gsco-ink); text-transform: none; letter-spacing: 0; }
body.gs-comanda-orderpay form#order_review > table.shop_table { display: block; width: 100%; margin: 0 0 14px; padding: 4px 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; }
body.gs-comanda-orderpay form#order_review > table.shop_table thead { display: none; }
body.gs-comanda-orderpay form#order_review > table.shop_table :is(tbody, tfoot) { display: block; }
body.gs-comanda-orderpay form#order_review > table.shop_table :is(tbody, tfoot) tr { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
body.gs-comanda-orderpay form#order_review > table.shop_table tbody tr { border-bottom: 1px solid #efefec; }
body.gs-comanda-orderpay form#order_review > table.shop_table tfoot tr + tr { border-top: 1px solid #efefec; }
body.gs-comanda-orderpay form#order_review > table.shop_table :is(th, td) { display: block; padding: 12px 0; border: 0; font-size: 14px; font-weight: 400; line-height: 1.45; text-align: left; text-transform: none; letter-spacing: 0; color: var(--gsco-text); background: none; }
body.gs-comanda-orderpay form#order_review > table.shop_table td.product-name { flex: 1 1 auto; min-width: 0; }
body.gs-comanda-orderpay form#order_review > table.shop_table td.product-quantity:empty, body.gs-comanda-orderpay form#order_review > table.shop_table td.product-quantity:not(:has(*)) { display: none; }
body.gs-comanda-orderpay form#order_review > table.shop_table :is(td.product-subtotal, td.product-total) { flex: none; text-align: right; color: var(--gsco-ink); }
body.gs-comanda-orderpay form#order_review > table.shop_table td.product-subtotal { white-space: nowrap; font-weight: 600; }
body.gs-comanda-orderpay form#order_review > table.shop_table tfoot th { flex: none; color: var(--gsco-muted); }
body.gs-comanda-orderpay form#order_review > table.shop_table tfoot td { flex: 0 1 auto; min-width: 0; }
body.gs-comanda-orderpay form#order_review > table.shop_table tfoot tr:has(.includes_tax) :is(th, td) { font-size: 16px; font-weight: 700; color: var(--gsco-ink); }
body.gs-comanda-orderpay form#order_review > table.shop_table tfoot small { display: block; font-size: 12px; font-weight: 400; color: var(--gsco-muted); }
body.gs-comanda-orderpay form#order_review > table.shop_table .gs-comanda-oi-name { -webkit-line-clamp: 2; }
body.gs-comanda-orderpay td.product-name:has(.gs-comanda-oi) .wc-item-meta { margin-left: 60px; }
body.gs-comanda-orderpay #payment { padding: 16px; border: 1px solid var(--gsco-line); border-radius: var(--gsco-r); background: #fff; }
body.gs-comanda-orderpay #payment .form-row { margin: 0; padding: 0; }

/* 1.1.16 (user's mockups): the terms under the order button instead of a checkbox; PayU's box with one line. */
/* WooCommerce's script hides descriptions until the field is focused; the e-mail's reason stays in view (mockup). */
body.gs-comanda-checkout #billing_email_field .description { display: block !important; }
.gs-comanda-terms-line { margin: 10px 0 0; text-align: center; font-size: 12.5px !important; line-height: 1.45; color: var(--gsco-muted); }
.gs-comanda-terms-line a { color: inherit !important; text-decoration: underline !important; text-underline-offset: 2px; white-space: nowrap; }
#payment .gs-comanda-payu-line { margin: 12px 0 0; font-size: 13px; line-height: 1.45; color: var(--gsco-muted); }
#payment button.gs-comanda-payu-more { display: inline; width: auto; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; font: inherit; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--gsco-ink); text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
#payment .gs-comanda-payu-open .payu-accept-conditions { margin-top: 8px; font-size: 12px; line-height: 1.5; color: var(--gsco-muted); }
