/* Doina Vin House · assets/woo/cart.css (woo-cart; enqueued by inc/woo-cart.php, handle dvh-woo-cart)
   The block Cart (/cos/) and Checkout (/finalizare-comanda/), the order-received page, My Account and the
   notices there, as pages/cart-checkout.html draws them (kit components.css 14-16b, 18). The kit carries the
   skin; WooCommerce's own block CSS prints earlier and often with higher specificity, so the rules here are
   scoped under :root + the block root to win, and they add the layout the mockup's stand-ins (its <style>
   sections 5 and 6) provide. No motion: checkout and account stay still.
   Selector prefix legend: CO = :root .wp-block-woocommerce-checkout, CA = :root .wp-block-woocommerce-cart. */

/* ==== 0. Page frame (page.php prints .pg-cart-checkout-page + h1) ============================== */
.pg-cart-checkout-page { padding-block: var(--sp-6) var(--sp-8); }
.pg-cart-checkout-title { margin-bottom: var(--sp-5); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) { max-width: none; margin: 0; padding: 0; font-size: var(--fs-ui); color: var(--ink); --wc-form-color-text: var(--ink); --wc-separator-color: var(--line); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-notices:empty { display: none; }

/* ==== 1. Two columns 7/5 (the mockup's section 5 stand-in; WooCommerce uses 65/35 flex) ========= */
:root .wc-block-components-sidebar-layout.wc-block-components-sidebar-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-5); align-items: start; margin: 0; }
:root .wc-block-components-sidebar-layout.wc-block-components-sidebar-layout > :is(.wc-block-components-main, .wc-block-components-sidebar) { width: auto; min-width: 0; margin: 0; padding: 0; }
@media (max-width: 899.98px) { :root .wc-block-checkout.wc-block-components-sidebar-layout > .wc-block-components-sidebar { order: -1; } }
@media (min-width: 900px) {
  :root .wc-block-components-sidebar-layout.wc-block-components-sidebar-layout { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--sp-7); }
  :root .wc-block-components-sidebar-layout > .wc-block-components-sidebar { position: sticky; top: var(--sp-5); align-self: start; }
}

/* ==== 2. Checkout steps: white cards numbered 01, 02... (kit 16 + 16a) ========================== */
:root .wp-block-woocommerce-checkout .wc-block-checkout__form { display: grid; gap: var(--sp-4); margin: 0; counter-reset: dvh-checkout-step; }
:root .wp-block-woocommerce-checkout .wc-block-checkout__form fieldset.wc-block-components-checkout-step.wc-block-components-checkout-step {
  min-width: 0; margin: 0; padding: var(--sp-5); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-media);
  counter-increment: dvh-checkout-step;
}
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step::after { content: none; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading-container { margin: 0; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading { display: flex; align-items: baseline; justify-content: space-between; gap: var(--sp-3); margin: 0 0 var(--sp-4); }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__title.wc-block-components-title {
  margin: 0; font-family: var(--font-display); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-title); color: var(--ink); letter-spacing: 0; text-transform: none;
}
:root .wp-block-woocommerce-checkout fieldset.wc-block-components-checkout-step .wc-block-components-checkout-step__title::before {
  content: counter(dvh-checkout-step, decimal-leading-zero); margin-right: var(--sp-3);
  color: var(--muted); font-weight: var(--fw-display); font-variant-numeric: tabular-nums lining-nums;
}
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading-content:empty { display: none; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__description { margin: 0 0 var(--sp-4); font-size: var(--fs-meta); line-height: var(--lh-meta); color: var(--muted); }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__container { position: static; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__content { display: grid; gap: var(--sp-4); margin: 0; padding: 0; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-step__content > * { margin: 0; }
/* the order note is a step <div> in the block, a plain row in the mockup */
:root .wp-block-woocommerce-checkout .wc-block-checkout__form div.wc-block-components-checkout-step.wc-block-components-checkout-step { padding: 0; margin: 0; background: none; border: 0; border-radius: 0; }
:root .wp-block-woocommerce-checkout .wc-block-checkout__guest-checkout-notice { display: none; }

/* ==== 3. Fields: labels above the control (kit 15 + 16a; the block floats them inside) ======== */
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-address-form { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-4); margin: 0; }
@media (min-width: 600px) {
  :root .wp-block-woocommerce-checkout .wc-block-components-address-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :root .wp-block-woocommerce-checkout .wc-block-components-address-form > * { grid-column: 1 / -1; }
  :root .wp-block-woocommerce-checkout .wc-block-components-address-form > :is(.wc-block-components-address-form__first_name, .wc-block-components-address-form__last_name) { grid-column: auto; }
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-address-form > * { flex: none; width: auto; min-width: 0; margin: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.wc-block-components-text-input {
  position: relative; display: grid; gap: 6px; align-content: start; min-width: 0; margin: 0; white-space: normal;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.wc-block-components-text-input label {
  grid-row: 1; position: static; transform: none; margin: 0; max-width: none; overflow: visible; white-space: normal; text-overflow: clip;
  font-size: var(--fs-meta); line-height: 20px; font-weight: var(--fw-ui); color: var(--ink); pointer-events: auto;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.wc-block-components-text-input :is(input[id], textarea) {
  grid-row: 2; width: 100%; height: auto; min-height: 48px; margin: 0; padding: 12px 14px;
  background: var(--surface); color: var(--ink); border: 1px solid var(--control); border-radius: var(--radius-control); box-shadow: none;
  font-family: inherit; font-size: var(--fs-btn); line-height: 22px;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.wc-block-components-text-input :is(input[id], textarea):hover { border-color: var(--ink); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.wc-block-components-text-input :is(input[id], textarea):focus { border-color: var(--ink); box-shadow: none; outline: 2px solid var(--focus, var(--ink)); outline-offset: 1px; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.wc-block-components-text-input .wc-block-components-validation-error { grid-row: 3; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-validation-error { margin: 0; padding: 0; font-size: var(--fs-meta); line-height: 20px; color: var(--error); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-validation-error > p { display: flex; gap: 6px; align-items: flex-start; margin: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-validation-error svg { flex: none; width: 16px; height: 16px; margin-top: 2px; fill: currentColor; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.has-error :is(input[id], textarea),
:root .wp-block-woocommerce-checkout .has-error .wc-blocks-components-select__select { border-color: var(--error); box-shadow: inset 0 0 0 1px var(--error); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-text-input.has-error label,
:root .wp-block-woocommerce-checkout .has-error .wc-blocks-components-select__label { color: var(--ink); }

/* selects (state, Nova Post office): label above, kit select, chevron on the right */
:root .wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container {
  position: relative; display: grid; gap: 6px; min-width: 0; height: auto; margin: 0; background: transparent; border: 0; border-radius: 0;
}
:root .wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__label {
  grid-row: 1; position: static; transform: none; margin: 0; max-width: none; overflow: visible; white-space: normal;
  font-size: var(--fs-meta); line-height: 20px; font-weight: var(--fw-ui); color: var(--ink);
}
:root .wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select {
  grid-row: 2; width: 100%; min-width: 0; height: auto; min-height: 48px; margin: 0; padding: 12px 44px 12px 14px; appearance: none; cursor: pointer;
  background: var(--surface); color: var(--ink); border: 1px solid var(--control); border-radius: var(--radius-control); box-shadow: none;
  font-family: inherit; font-size: var(--fs-btn); line-height: 22px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; color-scheme: light;
}
:root .wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select:hover { border-color: var(--ink); }
:root .wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select:focus { border-color: var(--ink); box-shadow: none; outline: 2px solid var(--focus, var(--ink)); outline-offset: 1px; }
:root .wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select option { background: var(--surface); color: var(--ink); }
:root .wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__expand {
  position: absolute; right: 12px; top: auto; bottom: 14px; left: auto; transform: none; width: 20px; height: 20px; fill: var(--ink); pointer-events: none;
}
/* one shipping country: printed as text, not as a control (the mockup's .dvh-static-field) */
:root .wp-block-woocommerce-checkout .wc-block-components-address-form__country:not(:has(option:nth-child(3))) .wc-blocks-components-select__select {
  min-height: 0; padding: 0; border: 0; background: transparent; font-weight: var(--fw-ui); pointer-events: none; cursor: default;
}
:root .wp-block-woocommerce-checkout .wc-block-components-address-form__country:not(:has(option:nth-child(3))) .wc-blocks-components-select__expand { display: none; }

/* checkboxes: the kit draws the tick on the input itself */
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox.wc-block-components-checkbox { margin: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox label {
  display: flex; align-items: flex-start; gap: var(--sp-3); min-height: var(--tap); margin: 0; padding-block: 10px;
  font-size: var(--fs-ui); line-height: 24px; cursor: pointer;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"] {
  appearance: none; position: static; flex: none; width: 20px; height: 20px; min-width: 20px; min-height: 20px; margin: 2px 0 0;
  display: grid; place-content: center; border: 1.5px solid var(--control); border-radius: 4px; background: var(--surface); box-shadow: none; cursor: pointer; font-size: inherit;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:hover { border-color: var(--ink); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked {
  background: var(--action) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 14px no-repeat;
  border-color: var(--action);
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"] + .wc-block-components-checkbox__mark { display: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox.has-error .wc-block-components-checkbox__input[type="checkbox"] { border-color: var(--error); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox__label { color: var(--ink); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-checkbox__label a { color: var(--link); text-decoration: underline; text-underline-offset: .2em; }
:root .wp-block-woocommerce-checkout .wc-block-components-textarea {
  width: 100%; min-height: 96px; margin: var(--sp-2) 0 0; padding: 12px 14px; resize: vertical;
  background: var(--surface); color: var(--ink); border: 1px solid var(--control); border-radius: var(--radius-control); box-shadow: none;
  font-family: inherit; font-size: var(--fs-btn); line-height: 22px;
}

/* ==== 4. Radio rows: delivery rates and payment methods (kit 16a) ============================== */
/* WooCommerce positions the radio absolutely (left 16px, top 50%) and pads the row 48 px on the left; in the
   kit's two-column grid that left the label in the 20 px track, one word per line. The radio is a grid item. */
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control { display: grid; gap: var(--sp-2); margin: 0; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control::after,
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__option::after,
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control div.wc-block-components-radio-control-accordion-option::after { content: none; display: none; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__option.wc-block-components-radio-control__option {
  position: relative; display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: var(--sp-1) var(--sp-3); align-items: start;
  margin: 0; padding: var(--sp-4); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-control); box-shadow: none; cursor: pointer;
}
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input.wc-block-components-radio-control__input {
  grid-column: 1; grid-row: 1; position: static; inset: auto; transform: none; display: block; appearance: none; flex: none;
  width: 20px; height: 20px; margin: 2px 0 0; cursor: pointer;
  border: 1.5px solid var(--control); border-radius: 50%; background: var(--surface); box-shadow: none;
}
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input::before { content: none; display: none; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked { border-color: var(--action); background: radial-gradient(circle, var(--action) 0 4.5px, var(--surface) 5px); }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:focus { outline: 2px solid var(--focus, var(--ink)); outline-offset: 2px; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__option:hover .wc-block-components-radio-control__input:not(:disabled) { border-color: var(--ink); }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked:hover { border-color: var(--action); }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__option-layout { grid-column: 2; grid-row: 1; display: grid; gap: var(--sp-1); min-width: 0; padding: 0; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__label-group { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0 var(--sp-3); min-width: 0; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__label {
  flex: 1 1 12em; min-width: 0; margin: 0; font-size: var(--fs-ui); line-height: 24px; font-weight: var(--fw-ui); color: var(--ink); overflow-wrap: normal; word-break: normal;
}
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__secondary-label {
  flex: none; margin: 0; font-size: var(--fs-ui); line-height: 24px; font-weight: var(--fw-strong); font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--ink);
}
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__description,
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__secondary-description { font-size: var(--fs-meta); line-height: var(--lh-meta); color: var(--muted); }
/* the checked row: ink frame (delivery rates are plain rows; payment rows sit in an accordion card) */
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control > .wc-block-components-radio-control__option:has(.wc-block-components-radio-control__input:checked),
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control > .wc-block-components-radio-control__option.wc-block-components-radio-control__option-checked { border-color: var(--ink); box-shadow: inset 0 0 0 1px var(--ink); }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control div.wc-block-components-radio-control-accordion-option {
  position: relative; margin: 0; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-control); box-shadow: none;
}
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control div.wc-block-components-radio-control-accordion-option:has(.wc-block-components-radio-control__input:checked) { border-color: var(--ink); box-shadow: inset 0 0 0 1px var(--ink); }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control div.wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option.wc-block-components-radio-control__option { border: 0; box-shadow: none; background: transparent; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control-accordion-content {
  margin: 0; padding: 0 var(--sp-4) var(--sp-4) calc(var(--sp-4) + 20px + var(--sp-3)); font-size: var(--fs-meta); line-height: var(--lh-meta); color: var(--muted);
}
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control-accordion-content > * + * { margin-top: var(--sp-1); }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control div.wc-block-components-radio-control-accordion-option:has(.wc-block-components-radio-control__input:disabled) { background: var(--ground); }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:disabled { border-color: var(--line); background: var(--ground); cursor: not-allowed; }
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-payment-method-label { display: inline; font: inherit; color: inherit; }
:root .wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control__package { margin: 0; padding: 0; }
:root .wp-block-woocommerce-checkout .wc-block-checkout__shipping-option--free { font-weight: var(--fw-strong); text-transform: none; }

/* 4a. Nova Post pickup point (2026-10-17, mu-plugin dv-np-points: municipality -> locality -> point under the
   delivery options; its selects and text field use WooCommerce's own markup, so section 3 styles them). */
:root .wp-block-woocommerce-checkout .dv-np-picker { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-4); margin: var(--sp-4) 0 0; }
:root .wp-block-woocommerce-checkout .dv-np-picker > * { margin: 0; min-width: 0; }
@media (min-width: 600px) {
  :root .wp-block-woocommerce-checkout .dv-np-picker { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :root .wp-block-woocommerce-checkout .dv-np-picker > :not(.dv-np-picker__state, .dv-np-picker__locality) { grid-column: 1 / -1; }
}
:root .wp-block-woocommerce-checkout .dv-np-picker .dv-np-picker__help { margin-top: calc(-1 * var(--sp-2)); font-size: var(--fs-meta); line-height: var(--lh-meta); color: var(--muted); }
/* "Detalii livrare" asks nothing for a pickup now (its courier fields are hidden): fold the empty step, the numbers follow. */
:root .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block:not(:has(.wc-block-components-address-form > *)) { display: none; }

/* ==== 5. Order summary card (kit 16a: open card on desktop, collapsed bar on phones) =========== */
:root .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
  margin: 0; padding: var(--sp-5); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-media); box-shadow: none;
}
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title { display: flex; align-items: center; gap: var(--sp-3); min-height: var(--tap); margin: 0; padding: 0; border: 0; cursor: pointer; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title-text {
  margin: 0 auto 0 0; font-family: var(--font-display); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-title); color: var(--ink); text-transform: none; letter-spacing: 0;
}
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title-price { font-size: var(--fs-ui); font-weight: var(--fw-strong); font-variant-numeric: tabular-nums; white-space: nowrap; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title-icon svg { width: 20px; height: 20px; fill: currentColor; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__content { padding-top: var(--sp-2); }
@media (max-width: 899.98px) {
  :root .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block { padding: var(--sp-2) var(--sp-4); }
  :root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title-text { font-size: var(--fs-card); line-height: var(--lh-card); }
}
@media (min-width: 900px) {
  :root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title { min-height: 0; cursor: default; pointer-events: none; margin-bottom: var(--sp-2); }
  :root .wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title :is(.wc-block-components-checkout-order-summary__title-price, .wc-block-components-checkout-order-summary__title-icon) { display: none; }
}
/* items: bottle in a 48x60 well, quantity badge top right, Literata name, type and volume */
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary { padding: 0; margin: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary__button-text { display: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary-item {
  display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: var(--sp-1) var(--sp-4); align-items: start;
  margin: 0; padding: var(--sp-4) 0; border-bottom: 1px solid var(--line); font-size: var(--fs-ui);
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary-item:last-child { border-bottom: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary-item__image {
  position: relative; width: 48px; height: 60px; margin: 0; padding: 0; border-radius: 6px; background: var(--well);
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary-item__image > img {
  position: absolute; left: 50%; bottom: 3%; width: auto; height: 92%; max-width: none; margin: 0; translate: -50% 0; object-fit: contain;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
  position: absolute; top: -8px; right: -8px; left: auto; z-index: 1; display: grid; place-items: center; transform: none;
  min-width: 20px; height: 20px; padding-inline: 5px; border: 0; border-radius: var(--radius-control); box-shadow: none;
  background: var(--ink); color: var(--surface); font-size: var(--fs-eyebrow); line-height: 1; font-weight: var(--fw-strong); font-variant-numeric: tabular-nums;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary-item__description { min-width: 0; margin: 0; padding: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-product-name {
  display: block; margin: 0; font-family: var(--font-display); font-size: var(--fs-ui); line-height: 20px; font-weight: var(--fw-title); color: var(--ink); text-decoration: none;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-order-summary-item__individual-prices { display: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary .wc-block-components-product-metadata { margin: 0; font-size: var(--fs-meta); line-height: 20px; color: var(--muted); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-order-summary-item__total-price {
  margin: 0; font-size: var(--fs-ui); line-height: 20px; font-weight: var(--fw-strong); font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right;
}
/* the wine's short description is replaced by its type and volume (inc/woo-cart.php, item data) */
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-product-metadata__description { display: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-product-details { list-style: none; margin: 0; padding: 0; font-size: var(--fs-meta); line-height: 20px; color: var(--muted); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-product-details li { display: block; margin: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-product-details__dvh-tip .wc-block-components-product-details__name { display: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-product-details__name { font-weight: var(--fw-ui); }

/* totals rows, coupon, grand total */
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-wrapper { margin: 0; padding: var(--sp-3) 0; border: 0; border-bottom: 1px solid var(--line); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-wrapper::after { content: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-wrapper:empty { display: none; }
:root .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-cart-items-block.wc-block-components-totals-wrapper { padding-block: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-wrapper:last-child { border-bottom: 0; padding-bottom: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-item {
  display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0 var(--sp-3); margin: 0; padding: 0; font-size: var(--fs-ui); line-height: 24px;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-item__label { flex: 1 1 auto; font-weight: var(--fw-text); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-item__value { margin: 0; font-weight: var(--fw-ui); font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-item__value strong { font-weight: inherit; text-transform: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-item__description { flex-basis: 100%; margin: 0; font-size: var(--fs-meta); line-height: var(--lh-meta); font-weight: var(--fw-text); color: var(--muted); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-shipping__via { margin: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-footer-item { font-weight: var(--fw-strong); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-weight: var(--fw-strong); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: var(--fs-price-lg); line-height: 1.15; font-weight: var(--fw-strong); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-footer-item-tax { margin: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-panel { margin: 0; padding: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-panel__button {
  display: inline-flex; align-items: center; min-height: var(--tap); width: auto; margin: 0; padding: 0; background: none; border: 0;
  color: var(--link); font-size: var(--fs-ui); font-weight: var(--fw-text); line-height: 24px; text-decoration: underline; text-underline-offset: .2em; cursor: pointer;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-panel__button > svg,
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-panel__button-icon { display: none; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-panel__content { margin-top: var(--sp-2); padding: 0; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-coupon__form { display: flex; align-items: flex-end; gap: var(--sp-2); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-coupon__form .wc-block-components-text-input { flex: 1 1 auto; }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-totals-coupon__button { flex: none; min-height: 48px; }

/* ==== 6. Terms and actions ===================================================================== */
:root .wp-block-woocommerce-checkout .wc-block-checkout__terms { margin: 0; padding: var(--sp-2) 0 0; border-top: 1px solid var(--line); }
:root .wp-block-woocommerce-checkout .wc-block-checkout__terms.wc-block-checkout__terms--with-separator { border-top: 1px solid var(--line); padding-top: var(--sp-2); margin: 0; }
:root .wp-block-woocommerce-checkout .wc-block-checkout__terms-note { font-size: var(--fs-meta); line-height: var(--lh-meta); color: var(--muted); padding-left: calc(20px + var(--sp-3)); }
:root .wp-block-woocommerce-checkout .wc-block-checkout__actions { display: grid; gap: var(--sp-3); margin: 0; padding: 0; }
:root .wp-block-woocommerce-checkout .wc-block-checkout__actions .wc-block-checkout__actions_row { display: flex; flex-direction: column; align-items: stretch; gap: var(--sp-2); margin: 0; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-return-to-cart-button {
  display: inline-flex; align-items: center; gap: var(--sp-1); min-height: var(--tap); align-self: flex-start; padding: 0;
  color: var(--link); font-size: var(--fs-ui); font-weight: var(--fw-ui); text-decoration: none;
}
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-return-to-cart-button svg { width: 20px; height: 20px; fill: currentColor; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button.wc-block-components-button { width: 100%; min-height: 48px; margin: 0; }
:root .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text { display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-2); }
@media (min-width: 600px) {
  :root .wp-block-woocommerce-checkout .wc-block-checkout__actions .wc-block-checkout__actions_row { flex-direction: row; align-items: center; justify-content: space-between; gap: var(--sp-5); }
  :root .wp-block-woocommerce-checkout .wc-block-checkout__actions_row--justify-flex-end { justify-content: flex-end; }
  :root .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button.wc-block-components-button { width: auto; flex: 0 1 auto; }
}
/* the kit's primary button, through WooCommerce's own button classes */
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-button.contained:not(.is-link) {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-2); min-height: 48px; padding: 0 var(--sp-5);
  background: var(--action); color: var(--on-action); border: 1px solid var(--action); border-radius: var(--radius-control);
  font-family: var(--font-text); font-size: var(--fs-btn); line-height: 1.2; font-weight: var(--fw-strong); text-decoration: none; white-space: nowrap; box-shadow: none; cursor: pointer;
}
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-button.contained:not(.is-link):hover { background: var(--action-hover); border-color: var(--action-hover); color: var(--on-action); }
:root :is(.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart) .wc-block-components-button .wc-block-components-spinner { position: static; }

/* ==== 7. Cart block (/cos/): the drawer's line rows on a page, the summary card on the side ====== */
:root .wp-block-woocommerce-cart table.wc-block-cart-items { width: 100%; margin: 0; border: 0; border-collapse: collapse; }
:root .wp-block-woocommerce-cart .wc-block-cart-items__header { font-size: var(--fs-eyebrow); line-height: var(--lh-eyebrow); font-weight: var(--fw-strong); letter-spacing: var(--track-eyebrow); text-transform: uppercase; color: var(--muted); }
:root .wp-block-woocommerce-cart .wc-block-cart-items__header th { padding: 0 0 var(--sp-3); border: 0; border-bottom: 1px solid var(--line); text-align: left; font-weight: inherit; }
:root .wp-block-woocommerce-cart .wc-block-cart-items__header .wc-block-cart-items__header-total { text-align: right; }
:root .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row td { padding: var(--sp-4) 0; border: 0; border-bottom: 1px solid var(--line); vertical-align: top; background: none; }
:root .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image { width: 80px; padding-right: var(--sp-4); }
:root .wp-block-woocommerce-cart .wc-block-cart-item__image a { position: relative; display: block; width: 64px; height: 80px; border-radius: 6px; background: var(--well); overflow: clip; }
:root .wp-block-woocommerce-cart .wc-block-cart-item__image img { position: absolute; left: 50%; bottom: 3%; width: auto; height: 92%; max-width: none; translate: -50% 0; object-fit: contain; }
:root .wp-block-woocommerce-cart .wc-block-cart-item__wrap { display: grid; gap: 2px; justify-items: start; }
:root .wp-block-woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name {
  margin: 0; font-family: var(--font-display); font-size: var(--fs-card); line-height: var(--lh-card); font-weight: var(--fw-title); color: var(--ink); text-decoration: none;
}
:root .wp-block-woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18em; }
:root .wp-block-woocommerce-cart .wc-block-cart-item__prices { order: 3; margin: 0; font-size: var(--fs-meta); line-height: 20px; color: var(--muted); }
:root .wp-block-woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price { font-weight: var(--fw-text); }
:root .wp-block-woocommerce-cart .wc-block-cart-item__wrap > .wc-block-components-product-metadata { order: 2; margin: 0; font-size: var(--fs-meta); line-height: 20px; color: var(--muted); }
:root .wp-block-woocommerce-cart .wc-block-cart-item__quantity { order: 4; display: flex; align-items: center; gap: var(--sp-4); margin-top: var(--sp-2); }
:root .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total { text-align: right; white-space: nowrap; font-weight: var(--fw-strong); font-variant-numeric: tabular-nums; }
:root .wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price { font-size: var(--fs-ui); font-weight: var(--fw-strong); }
:root .wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-sale-badge { display: none; }
/* quantity: the kit's small stepper */
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector.wc-block-components-quantity-selector {
  display: inline-flex; align-items: stretch; width: auto; height: 40px; min-width: 0; margin: 0;
  border: 1px solid var(--control); border-radius: var(--radius-control); background: var(--surface); box-shadow: none;
}
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector::after { content: none; }
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__input {
  order: 2; width: 44px; min-width: 0; height: auto; margin: 0; padding: 0; border: 0; border-inline: 1px solid var(--line); border-radius: 0; background: transparent; box-shadow: none;
  text-align: center; font-size: var(--fs-ui); font-weight: var(--fw-strong); font-variant-numeric: tabular-nums; color: var(--ink); -moz-appearance: textfield; appearance: textfield;
}
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
  width: 40px; min-width: 40px; height: auto; margin: 0; padding: 0; display: inline-grid; place-items: center; background: transparent; border: 0; border-radius: 0; box-shadow: none;
  color: var(--ink); font-size: 18px; line-height: 1; opacity: 1; cursor: pointer;
}
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button--minus { order: 1; }
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button--plus { order: 3; }
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover:not(:disabled) { background: var(--band); }
:root .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled { color: var(--line); cursor: not-allowed; }
/* remove: "Șterge" with the trash icon, as the drawer */
:root .wp-block-woocommerce-cart .wc-block-cart-item__remove-link.wc-block-cart-item__remove-link {
  display: inline-flex; align-items: center; gap: 6px; width: auto; height: auto; min-height: var(--tap); margin: 0; padding: 0;
  background: none; border: 0; color: var(--muted); font-size: var(--fs-meta); line-height: 20px; text-decoration: underline; text-underline-offset: .2em; cursor: pointer; opacity: 1;
}
:root .wp-block-woocommerce-cart .wc-block-cart-item__remove-link svg { width: 16px; height: 16px; fill: currentColor; }
/* 2026-10-18 (shop-strings): the label comes from __( 'Șterge' ) through --dvh-remove-label (inc/woo-cart.php, inline on this sheet) */
:root .wp-block-woocommerce-cart .wc-block-cart-item__remove-link::after { content: var(--dvh-remove-label, "Șterge"); }
:root .wp-block-woocommerce-cart .wc-block-cart-item__remove-link:hover { color: var(--ink); }
/* the summary card */
:root .wp-block-woocommerce-cart .wc-block-cart__sidebar.wc-block-components-sidebar { padding: var(--sp-5); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-media); }
:root .wp-block-woocommerce-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block { margin: 0; padding: 0; border: 0; }
:root .wp-block-woocommerce-cart .wc-block-cart__totals-title.wc-block-cart__totals-title {
  display: block; margin: 0 0 var(--sp-2); padding: 0; font-family: var(--font-display); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-title);
  text-transform: none; letter-spacing: 0; color: var(--ink); text-align: left;
}
:root .wp-block-woocommerce-cart .wc-block-cart__submit { margin: var(--sp-4) 0 0; padding: 0; }
:root .wp-block-woocommerce-cart .wc-block-cart__submit-container { padding: 0; background: none; box-shadow: none; }
:root .wp-block-woocommerce-cart .wc-block-cart__submit-button.wc-block-components-button { width: 100%; }
:root .wp-block-woocommerce-cart .wc-block-components-totals-shipping__change-address__link,
:root .wp-block-woocommerce-cart .wc-block-components-totals-shipping__change-address-button { color: var(--link); font-size: var(--fs-meta); }
@media (max-width: 599.98px) {
  :root .wp-block-woocommerce-cart .wc-block-cart-items__header { display: none; }
  :root .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row { display: grid; grid-template-columns: 80px minmax(0, 1fr) auto; padding: var(--sp-4) 0; border-bottom: 1px solid var(--line); }
  :root .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row td { padding: 0; border: 0; }
}
/* empty cart block */
:root .wp-block-woocommerce-empty-cart-block { text-align: center; padding-block: var(--sp-7); }
:root .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { font-family: var(--font-display); font-size: var(--fs-h2); line-height: var(--lh-h2); font-weight: var(--fw-title); }
:root .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before { display: none; }
:root .wp-block-woocommerce-empty-cart-block .wp-block-separator { display: none; }
:root .wp-block-woocommerce-cart .wp-block-woocommerce-product-collection, :root .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new { margin-top: var(--sp-7); text-align: left; }
:root .wp-block-woocommerce-cart :is(.wp-block-woocommerce-product-collection, .wp-block-woocommerce-empty-cart-block) h2 { font-family: var(--font-display); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-title); }

/* ==== 8. Notices (kit 18): the block banner carries its own icon; the kit draws one as a mask ==== */
:root .wc-block-components-notice-banner.wc-block-components-notice-banner {
  display: flex; align-items: flex-start; gap: var(--sp-3); margin: 0 0 var(--sp-4); padding: var(--sp-4);
  background: var(--surface); color: var(--ink); border: 1px solid var(--line); border-radius: var(--radius-control); font-size: var(--fs-ui); line-height: 1.5;
}
:root .wc-block-components-notice-banner.is-error { border-color: var(--error); }
:root .wc-block-components-notice-banner > svg { display: none; }
:root .wc-block-components-notice-banner > .wc-block-components-notice-banner__content { flex: 1 1 auto; min-width: 0; align-self: center; }
:root .wc-block-components-notice-banner__content .wc-forward,
:root .wc-block-components-notice-banner__content a { color: var(--link); text-decoration: underline; text-underline-offset: .2em; float: none; opacity: 1; }
:root .wc-block-components-notice-banner > .wc-block-components-button { flex: none; align-self: center; margin: 0; padding: 0; min-height: 0; background: none; border: 0; color: var(--muted); }
:root .wc-block-components-notice-banner > .wc-block-components-button svg { width: 20px; height: 20px; fill: currentColor; }
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-notices-wrapper > * + * { margin-top: var(--sp-2); }
:is(.woocommerce-message, .woocommerce-info, .woocommerce-error) .button { order: 2; margin-left: auto; min-height: 40px; }
.woocommerce-error li + li { margin-top: var(--sp-1); }
.pg-cart-checkout-page > .woocommerce > .woocommerce-notices-wrapper:not(:empty) { margin-bottom: var(--sp-5); }
/* dv-checkout-flow's booking banner above the block, in the notice look (its dark CSS stays unprinted) */
:root body .dv-flow-notice {
  display: grid; gap: var(--sp-2); margin: 0 0 var(--sp-5); padding: var(--sp-4);
  background: var(--surface); color: var(--ink); border: 1px solid var(--line); border-radius: var(--radius-control); font-size: var(--fs-ui); line-height: 1.5;
}
:root body .dv-flow-notice p { margin: 0; color: var(--ink); }

/* ==== 9. Order received (classic checkout/thankyou.php; kit 16b), 7/5 as the mockup's section 6 === */
.woocommerce-order { display: grid; gap: var(--sp-5); align-items: start; }
@media (min-width: 900px) {
  .woocommerce-order { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--sp-7); }
  .woocommerce-order > * { grid-column: 1; }
  .woocommerce-order > .woocommerce-order-details { grid-column: 2; grid-row: 1 / span 4; }
  .woocommerce-order > .woocommerce-customer-details { grid-column: 2; grid-row: 5 / span 2; }
}
.woocommerce-order > * { min-width: 0; margin: 0; }
.woocommerce-order .woocommerce-thankyou-order-received { font-family: var(--font-text); }
.woocommerce-order .woocommerce-notice { margin: 0; }
.woocommerce-order .dvh-notice .dvh-example { margin-left: var(--sp-2); }
.dv-flow-summary { padding: var(--sp-5); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-media); color: var(--ink); }
.dv-flow-summary p { max-width: 62ch; margin: 0; font-size: var(--fs-ui); line-height: 1.55; color: var(--ink); }
.dv-flow-summary p + p { margin-top: var(--sp-2); }
.dv-flow-summary .dv-flow-pending { padding: var(--sp-3) var(--sp-4); border: 1px solid var(--line); border-radius: var(--radius-control); background: var(--ground); }
.dv-flow-summary .dv-flow-visit { margin-top: var(--sp-4); padding-top: var(--sp-4); border-top: 1px solid var(--line); }
.dv-flow-summary .dv-flow-visit__title { font-family: var(--font-display); font-size: var(--fs-card); line-height: var(--lh-card); margin-bottom: var(--sp-2); }
.dv-flow-summary .dv-flow-note { font-size: var(--fs-meta); color: var(--muted); }
.woocommerce-customer-details { padding: var(--sp-5); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-media); }
.woocommerce-customer-details address { font-style: normal; font-size: var(--fs-ui); line-height: 1.55; border: 0; padding: 0; }
.woocommerce-customer-details :is(.woocommerce-column__title, h2) { font-family: var(--font-display); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-title); margin-bottom: var(--sp-2); }
.woocommerce-customer-details .col2-set { display: grid; gap: var(--sp-5); }
.woocommerce-order-details .order-again { margin-top: var(--sp-4); }
.woocommerce-order-details .wc-item-meta { list-style: none; margin: var(--sp-1) 0 0; padding: 0; font-size: var(--fs-meta); line-height: 20px; color: var(--muted); }
.woocommerce-order-details .wc-item-meta p { display: inline; margin: 0; }

/* ==== 10. My Account (/contul-meu/, shortcode): kit form fields, cards, tables ================== */
.woocommerce-account .pg-cart-checkout-page > .woocommerce { display: grid; gap: var(--sp-6); }
@media (min-width: 900px) { .woocommerce-account .pg-cart-checkout-page > .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: 240px minmax(0, 1fr); align-items: start; } }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--line); }
.woocommerce-MyAccount-navigation a { display: flex; align-items: center; min-height: var(--tap); padding-inline: var(--sp-3); color: var(--ink); text-decoration: none; font-size: var(--fs-ui); font-weight: var(--fw-ui); }
.woocommerce-MyAccount-navigation a:hover { background: var(--band); }
.woocommerce-MyAccount-navigation .is-active a { font-weight: var(--fw-strong); box-shadow: inset 2px 0 0 var(--ink); }
.woocommerce-MyAccount-content { min-width: 0; font-size: var(--fs-ui); line-height: 1.55; }
.woocommerce-MyAccount-content > * + * { margin-top: var(--sp-4); }
.woocommerce-MyAccount-content a:not(.button) { color: var(--link); }
.woocommerce-account .u-columns, .woocommerce-account .col2-set { display: grid; gap: var(--sp-5); }
@media (min-width: 900px) { .woocommerce-account .u-columns, .woocommerce-account .col2-set { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; } }
.woocommerce-account :is(.u-column1, .u-column2, .col-1, .col-2) { width: auto; float: none; min-width: 0; }
.woocommerce-account :is(.u-column1, .u-column2) > h2, .woocommerce-account .woocommerce > h2, .woocommerce-MyAccount-content h2, .woocommerce-MyAccount-content h3 {
  margin: 0 0 var(--sp-3); font-family: var(--font-display); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-title);
}
:is(.woocommerce-form-login, .woocommerce-form-register, .woocommerce-ResetPassword, .woocommerce-EditAccountForm, .woocommerce-address-fields, .woocommerce-account .lost_reset_password) {
  display: grid; gap: var(--sp-4); max-width: 520px; margin: 0; padding: var(--sp-5); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-media);
}
.woocommerce-address-fields__field-wrapper { display: grid; gap: var(--sp-4); }
@media (min-width: 600px) {
  .woocommerce-address-fields__field-wrapper, .woocommerce-EditAccountForm { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .woocommerce-address-fields__field-wrapper > *, .woocommerce-EditAccountForm > * { grid-column: 1 / -1; }
  :is(.woocommerce-address-fields__field-wrapper, .woocommerce-EditAccountForm) > :is(.form-row-first, .form-row-last) { grid-column: auto; }
}
.woocommerce-account :is(.woocommerce-form-row, .form-row) { display: grid; gap: 6px; align-content: start; min-width: 0; width: auto; float: none; margin: 0; padding: 0; }
.woocommerce-account :is(.woocommerce-form-row, .form-row) > label:not(.woocommerce-form__label-for-checkbox) { font-size: var(--fs-meta); line-height: 20px; font-weight: var(--fw-ui); color: var(--ink); }
.woocommerce-account :is(.woocommerce-form-row, .form-row) .required { color: var(--error); text-decoration: none; border: 0; }
.woocommerce-account :is(.woocommerce-Input, .input-text, select):not([type="checkbox"]):not([type="radio"]) {
  width: 100%; min-height: 48px; margin: 0; padding: 12px 14px; background: var(--surface); color: var(--ink);
  border: 1px solid var(--control); border-radius: var(--radius-control); box-shadow: none; font-family: inherit; font-size: var(--fs-btn); line-height: 22px;
}
.woocommerce-account :is(.woocommerce-Input, .input-text, select):not([type="checkbox"]):not([type="radio"]):hover { border-color: var(--ink); }
.woocommerce-account :is(.woocommerce-Input, .input-text, select):not([type="checkbox"]):not([type="radio"]):focus-visible { outline-offset: 1px; border-color: var(--ink); }
.woocommerce-account select { appearance: none; padding-right: 44px; cursor: pointer;
  background: var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A171B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 9.5l5.5 5.5 5.5-5.5'/%3E%3C/svg%3E") no-repeat right 12px center / 20px; }
.woocommerce-account :is(.woocommerce-form-login__rememberme, .woocommerce-form__label-for-checkbox) { display: inline-flex; align-items: flex-start; gap: var(--sp-3); min-height: var(--tap); padding-block: 10px; font-size: var(--fs-ui); line-height: 24px; cursor: pointer; }
.woocommerce-account .woocommerce-form-login .form-row:has(.woocommerce-form-login__submit) { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-3); }
.woocommerce-account :is(.woocommerce-form-login__submit, .woocommerce-form-register__submit, .woocommerce-Button, button[type="submit"]) { min-height: 48px; }
.woocommerce-LostPassword { margin: 0; }
.woocommerce-LostPassword a, .woocommerce-account .lost_password a { color: var(--link); font-size: var(--fs-meta); }
.woocommerce-account .password-input { position: relative; display: block; }
.woocommerce-account .show-password-input { position: absolute; right: 8px; top: 50%; translate: 0 -50%; width: 32px; height: 32px; padding: 0; background: none; border: 0; color: var(--muted); cursor: pointer; }
.woocommerce-account .show-password-input::after { content: ""; display: block; width: 20px; height: 20px; margin: auto; 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='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%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='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; }
.woocommerce-privacy-policy-text, .woocommerce-account .woocommerce-privacy-policy-text p { margin: 0; font-size: var(--fs-meta); line-height: var(--lh-meta); color: var(--muted); }
.woocommerce-account fieldset { margin: 0; padding: 0; border: 0; min-width: 0; display: grid; gap: var(--sp-4); }
.woocommerce-account fieldset legend { margin-bottom: var(--sp-2); font-family: var(--font-display); font-size: var(--fs-card); line-height: var(--lh-card); font-weight: var(--fw-title); }
.woocommerce-account :is(.woocommerce-orders-table, .woocommerce-table--order-downloads, .shop_table) { width: 100%; border-collapse: collapse; font-size: var(--fs-ui); }
.woocommerce-account :is(.woocommerce-orders-table, .shop_table) :is(th, td) { padding: var(--sp-3) var(--sp-2) var(--sp-3) 0; border: 0; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.woocommerce-account :is(.woocommerce-orders-table, .shop_table) thead th { font-size: var(--fs-eyebrow); line-height: var(--lh-eyebrow); font-weight: var(--fw-strong); letter-spacing: var(--track-eyebrow); text-transform: uppercase; color: var(--muted); }
.woocommerce-account .woocommerce-orders-table .button { min-height: 40px; padding-inline: var(--sp-3); font-size: var(--fs-meta); }
.woocommerce-account .woocommerce-Addresses address { font-style: normal; line-height: 1.55; }
.woocommerce-account .woocommerce-Address-title { display: flex; align-items: baseline; justify-content: space-between; gap: var(--sp-3); }
.woocommerce-account .woocommerce-Address-title .edit { color: var(--link); font-size: var(--fs-meta); }
.woocommerce-account .woocommerce-pagination { display: flex; gap: var(--sp-2); margin-top: var(--sp-4); }
.woocommerce-account mark.order-status, .woocommerce-account .order-status { background: none; font-weight: var(--fw-strong); }

/* ==== 11. One page, one tap (2026-10-17, checkout-maib; owner: "finalize the process in one click, one instance")
   Only what a Moldovan delivery needs stays on screen; nothing here changes what is asked or checked (18+, terms,
   the Nova Post point, the visit rules stay in dv-checkout-flow / dv-np-points). Measured before/after in
   scratchpad checkout-maib (390 px: 21 visible controls, order button at 2898 px). */
/* empty block wrappers (shipping-method toggle, pickup options) no longer add a grid gap each */
:root .wp-block-woocommerce-checkout .wc-block-checkout__form > div:empty { display: none; }
/* one shipping country (Moldova): nothing to choose, nothing to show (Livrare already says "Prin Nova Post") */
:root .wp-block-woocommerce-checkout .wc-block-components-address-form__country:not(:has(option:nth-child(3))) { display: none; }
/* first and last name side by side on phones too (short fields; one row less) */
:root .wp-block-woocommerce-checkout .wc-block-components-address-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:root .wp-block-woocommerce-checkout .wc-block-components-address-form > * { grid-column: 1 / -1; }
:root .wp-block-woocommerce-checkout .wc-block-components-address-form > :is(.wc-block-components-address-form__first_name, .wc-block-components-address-form__last_name) { grid-column: auto; }
/* billing = delivery for a consumer: the ticked "same address" box is not a question; unticked, it shows again */
:root .wp-block-woocommerce-checkout .wc-block-checkout__use-address-for-billing:has(input:checked) { display: none; }
/* one "Municipiu / raion": step 02's leads the Nova Post picker (dv-np-points follows it both ways), so the
   picker's own copy hides once a locality list stands under it; it shows again with an error or when step 02's
   municipality has no point of the chosen kind (then the picker lists only those that have one). */
:root .wp-block-woocommerce-checkout .dv-np-picker:has(.dv-np-picker__locality) > .dv-np-picker__state:not(.has-error) { display: none; }
@media (min-width: 600px) {
  :root .wp-block-woocommerce-checkout .dv-np-picker:has(.dv-np-picker__locality):has(> .dv-np-picker__state:not(.has-error)) > .dv-np-picker__locality { grid-column: 1 / -1; }
}
@media (max-width: 899.98px) {
  /* the summary above the order button keeps subtotal, delivery and the total with TVA; the wines and the coupon
     are one tap away in "Rezumatul comenzii" at the top */
  :root .wp-block-woocommerce-checkout .wc-block-checkout__actions :is(.wp-block-woocommerce-checkout-order-summary-cart-items-block, .wp-block-woocommerce-checkout-order-summary-coupon-form-block) { display: none; }
  /* room under the order button for the pay bar */
  :root .wp-block-woocommerce-checkout { margin-bottom: var(--buybar-h); }
}

/* maib's logo under the card row's description: the plugin prints it at its natural size */
:root .wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-content img:is([alt="maib"], [alt="Payment Gateway Icon"]) { width: auto; height: 24px; }

/* 11a. Phone pay bar (inc/woo-cart.php section 6): total, chosen payment, the order button's words */
.dvh-paybar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: var(--z-buybar);
  background: var(--surface); box-shadow: var(--shadow-bar); padding-bottom: env(safe-area-inset-bottom, 0px);
}
.dvh-paybar[hidden], body:has(.dvh-cookie:not([hidden])) .dvh-paybar { display: none; }
@media (min-width: 900px) { .dvh-paybar { display: none; } }
.dvh-paybar__inner {
  min-height: var(--buybar-h); display: flex; align-items: center; gap: var(--sp-3);
  padding: var(--sp-2) max(var(--sp-4), env(safe-area-inset-left, 0px)) var(--sp-2) max(var(--sp-4), env(safe-area-inset-right, 0px));
}
.dvh-paybar__sum { flex: 1 1 auto; min-width: 0; display: grid; margin: 0; font-size: var(--fs-meta); line-height: 20px; color: var(--muted); }
.dvh-paybar__total { font-size: var(--fs-ui); line-height: 22px; font-weight: var(--fw-strong); color: var(--ink); font-variant-numeric: tabular-nums; white-space: nowrap; }
.dvh-paybar__pay { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dvh-paybar__btn { flex: 0 1 auto; min-height: 48px; max-width: 62%; padding-inline: var(--sp-4); white-space: normal; text-align: center; line-height: 20px; }

/* checkout order summary: "− 1 +" on each line, a bin at 1 (assets/js/checkout-remove.js, owner 2026-10-21) */
:root .wc-block-components-order-summary-item .dvh-co-qty {
  display: inline-flex; align-items: center; gap: 2px; margin-top: var(--sp-2); padding: 2px;
  border: 1px solid var(--line); border-radius: 999px; background: var(--surface);
}
:root .wc-block-components-order-summary-item .dvh-co-qty__b {
  position: relative; display: inline-grid; place-items: center; width: 32px; height: 32px; min-height: 0; margin: 0; padding: 0;
  border: 0; border-radius: 999px; background: transparent; color: var(--ink); box-shadow: none; cursor: pointer;
}
:root .wc-block-components-order-summary-item .dvh-co-qty__b::before { content: ""; position: absolute; inset: -6px; }  /* 44 px to tap */
:root .wc-block-components-order-summary-item .dvh-co-qty__b svg { width: 16px; height: 16px; }
:root .wc-block-components-order-summary-item .dvh-co-qty__b:hover:not(:disabled) { background: var(--band); color: var(--ink); }
:root .wc-block-components-order-summary-item .dvh-co-qty__b.is-remove { color: var(--muted); }
:root .wc-block-components-order-summary-item .dvh-co-qty__b:disabled { opacity: .4; cursor: default; }
:root .wc-block-components-order-summary-item .dvh-co-qty__b:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
:root .wc-block-components-order-summary-item .dvh-co-qty__n { min-width: 22px; text-align: center; font-size: var(--fs-meta); line-height: 20px; font-weight: var(--fw-strong); font-variant-numeric: tabular-nums; }
/* the line's picture and name open its page (checkout-remove.js) */
:root .wc-block-components-order-summary-item .dvh-co-link { cursor: pointer; }
:root .wc-block-components-order-summary-item .wc-block-components-product-name.dvh-co-link { text-decoration: underline; text-decoration-color: transparent; text-decoration-thickness: 1px; text-underline-offset: .2em; transition: text-decoration-color .15s; }
:root .wc-block-components-order-summary-item .wc-block-components-product-name.dvh-co-link:hover { text-decoration-color: currentColor; }
:root .wc-block-components-order-summary-item .wc-block-components-product-name.dvh-co-link:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: 2px; }
