/* Ostukorv, kassa, tellimuse kinnitus, minu konto — vt inc/cart.php, woocommerce/cart/*, woocommerce/checkout/*.
   Disain: ostukorv.html, checkout.html. */

.sgb-shopflow {
  padding-top: 40px;
  padding-bottom: 96px;
}
.sgb-flip {
  transform: rotate(180deg);
}

/* ================================================================ Sammud: 1 Ostukorv › 2 Kassa › 3 Kinnitus */
.sgb-steps {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--sg-fs-base);
  color: var(--sg-text-faint);
}
.sgb-steps li {
  display: flex;
  align-items: center;
  gap: 12px;
}
.sgb-steps li + li::before {
  content: "";
  width: 12px;
  height: 12px;
  background: var(--sg-text-faint);
  -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='m9 18 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='m9 18 6-6-6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.sgb-steps a,
.sgb-steps li > span {
  display: flex;
  align-items: center;
  gap: 8px;
  color: inherit;
}
.sgb-steps__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border: 1px solid var(--sg-line-dark);
  border-radius: 50%;
  font-size: var(--sg-fs-xs);
}
.sgb-steps .is-current {
  font-weight: 700;
  color: var(--sg-text);
}
.sgb-steps .is-current .sgb-steps__num {
  border-color: var(--sg-accent);
  background: var(--sg-accent);
}
.sgb-steps .is-done {
  color: var(--sg-text);
}
.sgb-steps .is-done .sgb-steps__num {
  border-color: var(--sg-text);
  background: var(--sg-text);
  color: var(--sg-white);
}
.sgb-pagehead--flow .sgb-pagehead__title {
  margin-top: 14px;
}

/* ================================================================ Kokkuvõte (ostukorv + kassa) */
.sgb-sum,
.sgb-co__summary {
  padding: 28px;
  border: 1px solid var(--sg-line);
  border-radius: var(--sg-radius-md);
  background: var(--sg-warm);
}
.sgb-sum__title {
  margin: 0 0 18px;
  font-size: var(--sg-fs-eyebrow);
  font-weight: 700;
  letter-spacing: var(--sg-eyebrow-spacing);
  text-transform: uppercase;
  color: var(--sg-text-muted);
}
.sgb-sum__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 10px;
  font-size: var(--sg-fs-md);
  color: var(--sg-text-secondary);
}
.sgb-sum__row b {
  flex: none;
  color: var(--sg-text);
}
.sgb-sum__row small {
  display: block;
  margin-top: 2px;
  font-size: var(--sg-fs-sm);
  color: var(--sg-text-muted);
}
.sgb-sum__row small a,
.sgb-co__edit {
  font-weight: 700;
  color: var(--sg-accent-text);
}
.sgb-sum__label {
  margin: 0 0 10px;
  font-size: var(--sg-fs-md);
  color: var(--sg-text-secondary);
}
.sgb-sum__coupon .woocommerce-remove-coupon {
  margin-left: 6px;
  font-size: var(--sg-fs-sm);
  font-weight: 400;
}
.sgb-sum__total {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: baseline;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid var(--sg-line-strong);
}
.sgb-sum__total > span {
  font-size: var(--sg-fs-lg);
  font-weight: 700;
  color: var(--sg-text);
}
.sgb-sum__total > b {
  font-size: var(--sg-fs-total);
  font-weight: 700;
  letter-spacing: -.3px;
  color: var(--sg-text);
}
.sgb-sum__total > small {
  grid-column: 1 / -1;
  justify-self: end;
  font-size: var(--sg-fs-sm);
  color: var(--sg-text-muted);
}
.sgb-sum__go {
  margin-top: 20px;
}
.sgb-sum__go .sg-btn {
  width: 100%;
  height: 56px;
  font-size: var(--sg-fs-lg);
}
.sgb-sum__trust {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 20px 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--sg-line-strong);
  list-style: none;
  font-size: var(--sg-fs-base);
  color: var(--sg-text-secondary);
}
.sgb-sum__trust li {
  display: flex;
  align-items: center;
  gap: 10px;
}
.sgb-sum__trust .sgb-icon {
  flex: none;
  color: var(--sg-accent-text);
}
.sgb-sum__sticky {
  display: none;
}

/* ================================================================ Tarneviisid kaartidena */
.sgb-ship {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sgb-ship__opt {
  border: 1px solid var(--sg-line-strong);
  border-radius: var(--sg-radius-s);
  background: var(--sg-white);
}
.sgb-ship__opt.is-chosen {
  border: 2px solid var(--sg-text);
}
.sgb-ship__label {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 14px 17px;
  font-size: var(--sg-fs-md);
  font-weight: 400;
  color: var(--sg-text);
  cursor: pointer;
}
.is-chosen > .sgb-ship__label {
  padding: 13px 16px;
}
.sgb-ship__label input,
.wc_payment_method > input[type="radio"] {
  flex: none;
  width: 20px;
  height: 20px;
  margin: 0;
  border: 1px solid var(--sg-dot-inactive);
  border-radius: 50%;
  background: var(--sg-white);
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}
.sgb-ship__label input:checked,
.wc_payment_method > input[type="radio"]:checked {
  border: 6px solid var(--sg-text);
}
.sgb-ship__name {
  flex: 1;
  min-width: 0;
}
.is-chosen .sgb-ship__name,
.sgb-ship__price {
  font-weight: 700;
}
.sgb-ship__terminal {
  padding: 0 16px 16px;
}
.sgb-ship__terminal select {
  height: 46px;
  font-size: var(--sg-fs-md);
}
.sgb-ship__none {
  margin: 0;
  padding: 14px 16px;
  border-radius: var(--sg-radius-s);
  background: var(--sg-white);
  font-size: var(--sg-fs-base);
  line-height: 1.45;
}

/* Kupongi väli + "Rakenda" */
.sgb-coupon__row {
  display: flex;
  gap: 8px;
}
.sgb-coupon__row input {
  flex: 1;
  min-width: 0;
  height: 46px;
  padding: 0 18px;
  border-radius: var(--sg-radius-pill);
  font-size: var(--sg-fs-md);
}
.sgb-coupon__btn {
  flex: none;
  height: 46px;
  padding: 0 20px;
  border: 1px solid var(--sg-surface);
  border-radius: var(--sg-radius-pill);
  background: var(--sg-surface);
  font-family: inherit;
  font-size: var(--sg-fs-md);
  font-weight: 700;
  color: var(--sg-text);
  cursor: pointer;
}
.sgb-coupon__btn:hover {
  border-color: var(--sg-text);
}

/* ================================================================ Ostukorv */
.sgb-cart {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: 56px;
  align-items: start;
}
.sgb-cart__head,
.sgb-cart__item {
  display: grid;
  grid-template-columns: 128px minmax(0, 1fr) 120px 130px 100px 32px;
  align-items: center;
  column-gap: 20px;
}
.sgb-cart__head {
  padding-bottom: 12px;
  border-bottom: 1px solid var(--sg-line-strong);
  font-size: var(--sg-fs-2xs);
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--sg-text-muted);
}
.sgb-cart__head span:first-child {
  grid-column: 1 / 3;
}
.sgb-cart__head span:last-child {
  text-align: right;
}
.sgb-cart__item {
  padding: 22px 0;
  border-bottom: 1px solid var(--sg-line);
}
.sgb-cart__thumb a,
.sgb-cart__thumb > img {
  display: block;
}
.sgb-cart__thumb img {
  display: block;
  width: 128px;
  height: 88px;
  padding: 8px;
  border: 1px solid var(--sg-line);
  border-radius: var(--sg-radius-s);
  background: var(--sg-white);
  object-fit: contain;
}
.sgb-cart__name {
  font-size: var(--sg-fs-lg);
  line-height: 1.35;
  color: var(--sg-text);
}
.sgb-cart__name a {
  color: inherit;
}
.sgb-cart__name a:hover {
  color: var(--sg-accent-text);
}
.sgb-cart__name .variation {
  margin: 4px 0 0;
  font-size: var(--sg-fs-sm);
  color: var(--sg-text-muted);
}
.sgb-cart__name .variation dt,
.sgb-cart__name .variation dd,
.sgb-cart__name .variation p {
  display: inline;
  margin: 0;
}
.sgb-cart__name .backorder_notification {
  margin: 4px 0 0;
  font-size: var(--sg-fs-sm);
  color: var(--sg-amber-text);
}
.sgb-cart__unit {
  display: block;
  margin-top: 4px;
  font-size: var(--sg-fs-sm);
  color: var(--sg-text-muted);
}
.sgb-cart__price {
  font-size: var(--sg-fs-md);
  color: var(--sg-text-secondary);
}
.sgb-cart .quantity {
  height: 42px;
  padding: 0 2px;
  border-color: var(--sg-line-dark);
}
.sgb-cart .quantity input.qty {
  width: 30px;
  height: 36px;
  font-size: var(--sg-fs-md);
  font-weight: 700;
}
.sgb-cart .sgb-qty__btn {
  width: 34px;
  height: 34px;
  color: var(--sg-text-secondary);
}
.sgb-cart__total {
  font-size: var(--sg-fs-lg);
  font-weight: 700;
  text-align: right;
  color: var(--sg-text);
}
.sgb-cart__remove a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--sg-surface);
  color: var(--sg-text-secondary);
}
.sgb-cart__remove a:hover {
  background: var(--sg-text);
  color: var(--sg-white);
}
.sgb-cart__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 28px;
}
.sgb-cart__back {
  height: 48px;
  padding: 0 22px;
}
.sgb-coupon summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  list-style: none;
  cursor: pointer;
}
.sgb-coupon summary::-webkit-details-marker {
  display: none;
}
.sgb-coupon .sgb-coupon__row {
  width: 326px;
}
.sgb-cart__side .sgb-sum {
  position: sticky;
  top: 24px;
}

/* ================================================================ Kassa */
.sgb-co {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 440px;
  grid-template-areas: "main side";
  gap: 64px;
  align-items: start;
}
.sgb-co__main {
  grid-area: main;
  min-width: 0;
}
.sgb-co__side {
  grid-area: side;
  position: sticky;
  top: 24px;
}
.sgb-co__toggle {
  display: none;
}
.sgb-co__back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: var(--sg-fs-base);
  color: var(--sg-text-secondary);
}
.sgb-co__h1 {
  margin: 10px 0 28px;
}
.sgb-co__sec {
  padding: 32px 0;
  border-top: 1px solid var(--sg-line);
}
.sgb-co__sec:empty {
  display: none;
}
.sgb-co__title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  font-size: var(--sg-fs-card);
  font-weight: 300;
  color: var(--sg-text);
}
.sgb-co__num {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--sg-text);
  color: var(--sg-white);
  font-size: var(--sg-fs-sm);
  font-weight: 700;
}
.sgb-co__sub {
  margin: 28px 0 16px;
  font-size: var(--sg-fs-eyebrow);
  font-weight: 700;
  letter-spacing: var(--sg-eyebrow-spacing);
  text-transform: uppercase;
  color: var(--sg-text-muted);
}
/* Väljad 12 veerus: aadress 7+5 ja 5+7, nimed 6+6 */
.sgb-co__fields {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 0 16px;
}
.sgb-co__fields .form-row {
  grid-column: 1 / -1;
  width: auto;
  float: none;
  margin: 0 0 20px;
}
.sgb-co__fields .form-row-first,
.sgb-co__fields .form-row-last {
  grid-column: span 6;
  margin-left: 0;
}
.sgb-co__fields #billing_address_1_field,
.sgb-co__fields #shipping_address_1_field,
.sgb-co__fields #billing_city_field,
.sgb-co__fields #shipping_city_field {
  grid-column: span 7;
}
.sgb-co__fields #billing_address_2_field,
.sgb-co__fields #shipping_address_2_field,
.sgb-co__fields #billing_postcode_field,
.sgb-co__fields #shipping_postcode_field {
  grid-column: span 5;
}
.sgb-co__fields #billing_postcode_field,
.sgb-co__fields #shipping_postcode_field {
  grid-row-end: span 1;
  order: 1;
}
.sgb-co__fields #billing_city_field,
.sgb-co__fields #shipping_city_field {
  order: 2;
}
.sgb-co__fields #billing_state_field,
.sgb-co__fields #shipping_state_field {
  order: 3;
}
.sgb-co__fields #billing_address_2_field label.screen-reader-text {
  position: static !important;
  width: auto;
  height: auto;
  clip: auto;
}
.sgb-co__fields .form-row.thwcfe-disabled-field-wrapper,
.sgb-co__fields .form-row[style*="display: none"] {
  display: none;
}
.sgb-co .select2-container .select2-selection--single {
  height: 50px;
  border: 1px solid var(--sg-line-dark);
  border-radius: var(--sg-radius-input);
}
.sgb-co .select2-container .select2-selection--single .select2-selection__rendered {
  padding-left: 16px;
  line-height: 48px;
  color: var(--sg-text);
}
.sgb-co .select2-container .select2-selection--single .select2-selection__arrow {
  top: 12px;
  right: 10px;
}
.sgb-co-shipping .sgb-ship {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}
.sgb-co-shipping .sgb-ship__opt.has-terminal {
  grid-column: 1 / -1;
  order: 9;
}

/* Eraisik / Ettevõte lüliti (Checkout Field Editori raadioväli "tellija") */
#tellija_field > label {
  display: none;
}
#tellija_field .woocommerce-input-wrapper {
  display: inline-flex;
  gap: 0;
  padding: 4px;
  border-radius: var(--sg-radius-sm);
  background: var(--sg-surface);
}
#tellija_field input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
#tellija_field label.radio {
  display: inline-flex;
  align-items: center;
  height: 38px;
  margin: 0;
  padding: 0 20px;
  border-radius: var(--sg-radius-pill);
  font-size: var(--sg-fs-md);
  font-weight: 400;
  color: var(--sg-text-secondary);
  cursor: pointer;
}
#tellija_field label.radio.is-checked,
#tellija_field input:checked + label.radio {
  background: var(--sg-white);
  box-shadow: var(--sg-shadow-sm);
  font-weight: 700;
  color: var(--sg-text);
}
#tellija_field input:focus-visible + label.radio {
  outline: 2px solid var(--sg-accent);
}
#tellija_field .required {
  display: none;
}

/* Linnukesed (saada teisele aadressile, tingimused) */
.sgb-co__check label,
.woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  font-size: var(--sg-fs-md);
  font-weight: 400;
  line-height: 1.4;
  color: var(--sg-text);
  cursor: pointer;
}
.sgb-co__check input[type="checkbox"],
.woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
  flex: none;
  margin: 0;
}
.shipping_address {
  margin-top: 20px;
}

/* Makseviisid */
.wc_payment_methods {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.wc_payment_method {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  column-gap: 12px;
  padding: 17px 21px;
  border: 1px solid var(--sg-line-strong);
  border-radius: var(--sg-radius-md);
}
.wc_payment_method:has(> input:checked) {
  padding: 16px 20px 20px;
  border: 2px solid var(--sg-text);
}
.wc_payment_method > label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  font-size: var(--sg-fs-lg);
  font-weight: 400;
  color: var(--sg-text);
  cursor: pointer;
}
.wc_payment_method > input:checked + label {
  font-weight: 700;
}
.wc_payment_method > label img {
  max-height: 24px;
  width: auto;
}
.wc_payment_method .payment_box {
  grid-column: 1 / -1;
  margin-top: 14px;
  font-size: var(--sg-fs-sm);
  line-height: 1.5;
  color: var(--sg-text-muted);
}
.wc_payment_method .payment_box p:last-child {
  margin-bottom: 0;
}
/* Esto Pay: pangalogod 4 tulbas */
.esto-pay-countries {
  width: auto;
  height: 36px;
  margin: 0 0 14px;
  padding: 0 32px 0 12px;
  border-radius: var(--sg-radius-pill);
  font-size: var(--sg-fs-base);
}
.esto-pay-logos__country {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.esto-pay-logos__country[style*="none"] {
  display: none;
}
.esto-pay-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  padding: 12px 16px;
  border: 1px solid var(--sg-line-strong);
  border-radius: var(--sg-radius-input);
  background: var(--sg-white);
  cursor: pointer;
}
.esto-pay-logo:hover {
  border-color: var(--sg-text-faint);
}
.esto-pay-logo.selected {
  padding: 11px 15px;
  border: 2px solid var(--sg-text);
}
.esto-pay-logo img {
  max-width: 100%;
  max-height: 30px;
  object-fit: contain;
}

/* Tingimused + nupp */
.sgb-co__place {
  padding-top: 32px;
  border-top: 1px solid var(--sg-line);
}
.woocommerce-terms-and-conditions-wrapper {
  margin-bottom: 18px;
}
.woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text {
  display: none; /* privaatsustekst on nupu all */
}
.woocommerce-terms-and-conditions-link {
  font-weight: 700;
  color: var(--sg-accent-text);
}
.woocommerce-terms-and-conditions {
  max-height: 300px;
  overflow: auto;
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid var(--sg-line);
  border-radius: var(--sg-radius-input);
  font-size: var(--sg-fs-sm);
}
.sgb-co__submit {
  width: 100%;
  height: 58px;
  font-size: var(--sg-fs-xl);
}
.sgb-co__place .woocommerce-privacy-policy-text,
.sgb-co__privacy {
  margin-top: 16px;
  font-size: var(--sg-fs-sm);
  line-height: 1.55;
  color: var(--sg-text-muted);
}

/* "Sinu tellimus" */
.sgb-co__summary-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.sgb-co__summary-head .sgb-sum__title {
  margin-bottom: 14px;
}
.sgb-review__items {
  margin: 0 0 16px;
  padding: 0;
  border-top: 1px solid var(--sg-line);
  list-style: none;
}
.sgb-review__items li {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid var(--sg-line);
}
.sgb-review__img {
  position: relative;
  display: block;
  width: 72px;
  height: 54px;
  padding: 6px;
  border: 1px solid var(--sg-line);
  border-radius: var(--sg-radius-input);
  background: var(--sg-white);
}
.sgb-review__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.sgb-review__qty {
  position: absolute;
  top: -8px;
  right: -8px;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: var(--sg-radius-pill);
  background: var(--sg-text-muted);
  color: var(--sg-white);
  font-size: var(--sg-fs-xs);
  font-weight: 700;
  line-height: 22px;
  text-align: center;
}
.sgb-review__name {
  font-size: var(--sg-fs-base);
  line-height: 1.35;
  color: var(--sg-text);
}
.sgb-review__name .variation {
  margin: 2px 0 0;
  font-size: var(--sg-fs-xs);
  color: var(--sg-text-muted);
}
.sgb-review__name .variation dt,
.sgb-review__name .variation dd,
.sgb-review__name .variation p {
  display: inline;
  margin: 0;
}
.sgb-review__price {
  font-size: var(--sg-fs-base);
  color: var(--sg-text);
}
.sgb-review__coupon {
  margin-bottom: 20px;
}
.sgb-review__coupon .sgb-coupon__btn {
  border-color: var(--sg-text);
  background: var(--sg-white);
}
.sgb-co__mtotals {
  display: none;
}

/* Tellimuse kinnitus */
.woocommerce-order-overview {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 40px;
  margin: 0 0 32px;
  padding: 24px 28px;
  border-radius: var(--sg-radius-md);
  background: var(--sg-warm);
  list-style: none;
  font-size: var(--sg-fs-base);
  color: var(--sg-text-muted);
}
.woocommerce-order-overview strong {
  display: block;
  margin-top: 4px;
  font-size: var(--sg-fs-lg);
  color: var(--sg-text);
}
.woocommerce-order-details,
.woocommerce-customer-details {
  max-width: var(--sg-content);
  margin-top: 40px;
}
.woocommerce-order-details table,
.woocommerce-customer-details address {
  font-size: var(--sg-fs-md);
}
.woocommerce-customer-details address {
  padding: 20px;
  border: 1px solid var(--sg-line);
  border-radius: var(--sg-radius-input);
  font-style: normal;
}

/* ================================================================ Tahvel / mobiil */
@media (max-width: 1199px) {
  .sgb-cart {
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 40px;
  }
  .sgb-cart__head,
  .sgb-cart__item {
    grid-template-columns: 96px minmax(0, 1fr) 90px 110px 90px 32px;
    column-gap: 14px;
  }
  .sgb-cart__thumb img {
    width: 96px;
    height: 72px;
  }
  .sgb-co {
    grid-template-columns: minmax(0, 1fr) 380px;
    gap: 40px;
  }
}
@media (max-width: 989px) {
  .sgb-cart {
    grid-template-columns: 1fr;
  }
  .sgb-cart__side .sgb-sum {
    position: static;
  }
}
@media (max-width: 849px) {
  .sgb-shopflow {
    padding-top: 0;
    padding-bottom: 56px;
  }
  .sgb-pagehead--flow .sgb-steps {
    font-size: var(--sg-fs-sm);
  }
  /* Ostukorv: iga toode kaardina */
  .sgb-cart__head {
    display: none;
  }
  .sgb-cart__item {
    grid-template-columns: 72px minmax(0, 1fr) auto;
    grid-template-areas:
      "thumb name remove"
      "thumb qty total";
    row-gap: 14px;
    column-gap: 14px;
    padding: 20px 0;
  }
  .sgb-cart__thumb { grid-area: thumb; align-self: start; }
  .sgb-cart__name { grid-area: name; font-size: var(--sg-fs-md); }
  .sgb-cart__qty { grid-area: qty; }
  .sgb-cart__total { grid-area: total; }
  .sgb-cart__remove { grid-area: remove; align-self: start; justify-self: end; }
  .sgb-cart__thumb img {
    width: 72px;
    height: 60px;
    padding: 4px;
  }
  .sgb-cart__actions {
    flex-direction: column-reverse;
    align-items: stretch;
    padding-top: 20px;
  }
  .sgb-cart__back {
    align-self: center;
    height: auto;
    padding: 8px;
    border: 0;
    text-decoration: underline;
  }
  .sgb-coupon {
    padding: 0 16px;
    border: 1px solid var(--sg-line-strong);
    border-radius: var(--sg-radius-s);
  }
  .sgb-coupon summary {
    height: 52px;
    font-size: var(--sg-fs-md);
    color: var(--sg-text);
  }
  .sgb-coupon:not([open]) .sgb-coupon__row {
    display: none;
  }
  .sgb-coupon .sgb-coupon__row {
    width: auto;
    padding-bottom: 16px;
  }
  .sgb-coupon__row input {
    font-size: var(--sg-fs-lg);
  }
  .sgb-sum {
    padding: 20px;
  }
  .sgb-sum__go {
    display: none; /* nupp on ekraani all */
  }
  .sgb-sum__sticky {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 900;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
    border-top: 1px solid var(--sg-line);
    background: var(--sg-white);
    box-shadow: var(--sg-shadow-up);
  }
  .sgb-sum__sticky small {
    display: block;
    font-size: var(--sg-fs-xs);
    color: var(--sg-text-muted);
  }
  .sgb-sum__sticky b {
    font-size: var(--sg-fs-xl);
    color: var(--sg-text);
  }
  .sgb-sum__sticky .sg-btn {
    flex: 1;
    max-width: 240px;
  }
  .woocommerce-cart .sgb-ft {
    padding-bottom: 80px; /* kinnine riba ei kata jalust */
  }

  /* Kassa */
  .sgb-co {
    display: block;
  }
  .sgb-co__side {
    position: static;
    margin: 0 calc(-1 * var(--sg-gutter)) 20px;
  }
  .sgb-co__toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 14px var(--sg-gutter);
    border: 0;
    border-bottom: 1px solid var(--sg-line);
    background: var(--sg-warm);
    font-family: inherit;
    font-size: var(--sg-fs-base);
    font-weight: 700;
    color: var(--sg-accent-text);
    cursor: pointer;
  }
  .sgb-co__toggle-total {
    margin-left: auto;
    font-size: var(--sg-fs-lg);
    color: var(--sg-text);
  }
  .is-open .sgb-co__toggle .sgb-icon {
    transform: rotate(180deg);
  }
  .sgb-co__summary {
    display: none;
    border-width: 0 0 1px;
    border-radius: 0;
  }
  .sgb-co__side.is-open .sgb-co__summary {
    display: block;
  }
  .sgb-co__summary-head {
    display: none;
  }
  .sgb-co-shipping .sgb-ship {
    grid-template-columns: 1fr;
  }
  .sgb-co-shipping .sgb-ship__opt.has-terminal {
    order: 0;
  }
  .sgb-co__fields .form-row-first,
  .sgb-co__fields .form-row-last,
  .sgb-co__fields #billing_address_1_field,
  .sgb-co__fields #billing_address_2_field,
  .sgb-co__fields #shipping_address_1_field,
  .sgb-co__fields #shipping_address_2_field {
    grid-column: 1 / -1;
  }
  .sgb-co__fields #billing_postcode_field,
  .sgb-co__fields #shipping_postcode_field {
    grid-column: span 5;
  }
  .sgb-co__fields #billing_city_field,
  .sgb-co__fields #shipping_city_field {
    grid-column: span 7;
  }
  #tellija_field .woocommerce-input-wrapper {
    display: flex;
  }
  #tellija_field label.radio {
    flex: 1;
    justify-content: center;
  }
  .esto-pay-logos__country {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sgb-co__mtotals {
    display: block;
    margin-bottom: 24px;
    padding: 20px;
    border: 1px solid var(--sg-line);
    border-radius: var(--sg-radius-md);
    background: var(--sg-warm);
  }
  .sgb-co input[type="text"],
  .sgb-co input[type="email"],
  .sgb-co input[type="tel"],
  .sgb-co select,
  .sgb-co textarea {
    font-size: var(--sg-fs-lg); /* iOS ei suumi */
  }
}

/* ================================================================ Minu konto */
.woocommerce-account .woocommerce {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 48px;
}
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-account:not(.logged-in) .woocommerce > * {
  grid-column: 1 / -1;
}
.woocommerce-MyAccount-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.woocommerce-MyAccount-navigation a {
  display: block;
  padding: 12px 14px;
  border-bottom: 1px solid var(--sg-line);
  color: var(--sg-text);
}
.woocommerce-MyAccount-navigation .is-active a {
  border-radius: var(--sg-radius-xs);
  background: var(--sg-warm);
  font-weight: 700;
  color: var(--sg-accent-text);
}
.woocommerce-account .u-columns,
.woocommerce-account .col2-set {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 48px;
}
.woocommerce-account form.login,
.woocommerce-account form.register {
  padding: 28px;
  border: 1px solid var(--sg-line);
  border-radius: var(--sg-radius-md);
}
.woocommerce-account table.shop_table {
  font-size: var(--sg-fs-md);
}
@media (max-width: 849px) {
  .woocommerce-account .woocommerce,
  .woocommerce-account .u-columns,
  .woocommerce-account .col2-set {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

/* Kassa: aadress peidus, kui tarneviis seda ei vaja (cart.js addressBlock) */
.sgb-co__addr[hidden] {
  display: none;
}
