/* ==========================================================================
   S6 checkout redesign - /korzina-s-knigami/ (RU, page 360)
   Port of the GB version (fableau, s6-cart-gb.css) with the element ids of
   the RU funnel header (template 13314) and the МИР / MC / Visa badges.
   Override layer on top of the child theme cart template
   (hello-elementor-child/woocommerce/cart/cart.php) and header 13314.
   Loaded only when body has .fb-s6-cart (see child theme functions.php).
   ========================================================================== */

body.fb-s6-cart{
  --fb-accent:#E05F38;
  --fb-accent-dark:#BE5130;
  --fb-accent-soft:rgba(224,95,56,.08);
  --fb-ink:#23231E;
  --fb-muted:#7B7B70;
  --fb-line:rgba(123,123,112,.22);
  --fb-line-soft:rgba(123,123,112,.12);
  --fb-surface:#fff;
  --fb-canvas:#F7F6F3;
  --fb-info-bg:#ECF4FE;
  --fb-info-ink:#3C5EEC;
  background-color:var(--fb-canvas);
  font-family:"Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;
  letter-spacing:-.005em;
}

/* --------------------------------------------------------------------------
   1. Funnel header (Elementor header template 13314)
   -------------------------------------------------------------------------- */
body.fb-s6-cart .elementor-13314 .elementor-element.elementor-element-9164ca8{
  --min-height:0px;
  --overflow:visible;
  background-color:var(--fb-surface);
  border-bottom:1px solid var(--fb-line-soft);
  box-shadow:0 1px 2px rgba(35,35,30,.03);
}
body.fb-s6-cart .fb-topbar{
  display:flex !important;
  flex-direction:column !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:8px !important;
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:12px 24px !important;
}
body.fb-s6-cart .fb-topbar__row{
  --gap:16px 16px;--row-gap:16px;--column-gap:16px;
  --padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:16px !important;
  width:100%;
}
body.fb-s6-cart .fb-topbar__logo{
  flex:0 0 auto !important;
  width:auto !important;
  max-width:none !important;
  --container-widget-width:auto !important;
}
body.fb-s6-cart .fb-topbar__logo img{
  width:auto !important;
  height:30px !important;
  display:block;
}

body.fb-s6-cart .fb-steps{
  --gap:8px 8px;--row-gap:8px;--column-gap:8px;
  --padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;
  --flex-wrap:nowrap;--flex-wrap-mobile:nowrap;--width:auto;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:nowrap !important;
  flex:1 1 auto;
  gap:6px !important;
  width:auto !important;
  max-width:none !important;
}
body.fb-s6-cart .fb-step{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  width:auto !important;
  max-width:none !important;
  flex:none !important;
  align-self:center !important;
}
body.fb-s6-cart .fb-step > .elementor-widget-container{flex:none;margin:0 !important;padding:0 !important;}
body.fb-s6-cart .fb-step .elementor-icon-box-wrapper{display:flex;align-items:center;gap:6px;}
body.fb-s6-cart .fb-step .elementor-icon-box-icon{margin:0 !important;flex:none;}
body.fb-s6-cart .fb-step .elementor-icon-box-icon .elementor-icon{font-size:15px !important;}
body.fb-s6-cart .fb-step .elementor-icon-box-title{
  margin:0 !important;
  font-size:13px !important;
  line-height:18px !important;
  font-weight:500 !important;
  letter-spacing:-.005em !important;
  white-space:nowrap;
}
body.fb-s6-cart .fb-step.is-done .elementor-icon-box-icon .elementor-icon,
body.fb-s6-cart .fb-step.is-done .elementor-icon-box-title{color:var(--fb-accent) !important;}
body.fb-s6-cart .fb-step.is-todo .elementor-icon-box-icon .elementor-icon,
body.fb-s6-cart .fb-step.is-todo .elementor-icon-box-title{color:#B4B4AB !important;}
body.fb-s6-cart .fb-step + .fb-step::before{
  content:"";
  display:block;
  width:18px;
  height:1px;
  background:var(--fb-line);
  flex:none;
  margin:0 6px 0 0;
}

body.fb-s6-cart .fb-topbar__step{
  margin:0 0 0 auto !important;
  width:auto !important;
  max-width:none !important;
  flex:none;
  font-size:13px !important;
  line-height:18px !important;
  font-weight:500 !important;
  color:var(--fb-muted) !important;
  white-space:nowrap;
}
body.fb-s6-cart .fb-topbar__step p{margin:0 !important;}
body.fb-s6-cart .fb-topbar__label{
  font-size:14px;
  line-height:20px;
  font-weight:600;
  letter-spacing:-.01em;
  color:var(--fb-ink);
}
body.fb-s6-cart .fb-progress{
  height:3px;
  border-radius:100px;
  background:#EDECE9;
  overflow:hidden;
}
body.fb-s6-cart .fb-progress > i{
  display:block;
  height:100%;
  border-radius:100px;
  background:var(--fb-accent);
  transition:width 320ms cubic-bezier(.2,.6,.2,1);
}

/* --------------------------------------------------------------------------
   2. Page shell
   -------------------------------------------------------------------------- */
body.fb-s6-cart .page-content > .woocommerce{
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:36px 24px 132px;
}

body.fb-s6-cart .fb-c6-head{margin:0 0 26px;}
body.fb-s6-cart .fb-c6-head h1{
  margin:0;
  font-size:40px;
  line-height:46px;
  font-weight:700;
  letter-spacing:-.03em;
  color:var(--fb-ink);
  text-wrap:balance;
}
body.fb-s6-cart .fb-c6-head p{
  margin:8px 0 0;
  font-size:18px;
  line-height:26px;
  letter-spacing:-.015em;
  color:var(--fb-muted);
  text-wrap:pretty;
}

/* WooCommerce notices */
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-message,
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-info,
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-error{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 20px;
  padding:12px 16px;
  border:0;
  border-radius:12px;
  background:var(--fb-info-bg);
  color:var(--fb-info-ink);
  font-size:14px;
  line-height:20px;
}
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-error{
  background:rgba(224,95,56,.08);
  color:var(--fb-accent-dark);
}
/* WooCommerce pins its own icon absolutely - it collides with the flex row */
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-message::before,
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-info::before,
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-error::before,
body.fb-s6-cart .cart-empty::before,
body.fb-s6-cart .woocommerce-info::before{
  content:none !important;
  display:none !important;
}
/* the "Отменить?" undo link after removing an item inherited a white colour */
body.fb-s6-cart .woocommerce-notices-wrapper .woocommerce-message a.restore-item{
  color:var(--fb-info-ink) !important;
  font-weight:600;
  text-decoration:underline;
  text-underline-offset:2px;
}
body.fb-s6-cart .woocommerce-notices-wrapper .button{
  margin-left:auto;
  flex:none;
  padding:7px 14px !important;
  border-radius:8px !important;
  background:#fff !important;
  color:var(--fb-ink) !important;
  border:1px solid var(--fb-line) !important;
  font-size:13px !important;
  font-weight:600 !important;
  min-height:0 !important;
  height:auto !important;
}

/* --------------------------------------------------------------------------
   3. Two column shell
   -------------------------------------------------------------------------- */
body.fb-s6-cart .cart-flex-wrap{
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  gap:20px;
  align-items:start;
  max-width:none;
  margin:0;
}
body.fb-s6-cart .cart-main-block,
body.fb-s6-cart .cart-side-block{
  min-width:0 !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
}
body.fb-s6-cart .cart-side-block{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
}
/* the template prints the coupon box first; the summary leads the column */
body.fb-s6-cart .cart-side-block .cart-sum-block{order:1;}
body.fb-s6-cart .cart-side-block .cart-promocode-block{order:2;}

/* --------------------------------------------------------------------------
   4. Items
   -------------------------------------------------------------------------- */
body.fb-s6-cart .cart-header{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin:0 0 12px !important;
  font-size:15px !important;
  font-weight:600 !important;
  letter-spacing:-.01em;
  color:var(--fb-ink) !important;
}
body.fb-s6-cart .cart-header .cart-count{
  font-size:13px !important;
  font-weight:500 !important;
  color:var(--fb-muted) !important;
}

body.fb-s6-cart .cart-items-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}
body.fb-s6-cart .cart-divider{display:none !important;}

body.fb-s6-cart .cart-item-card{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  flex-wrap:wrap;
  gap:16px !important;
  margin:0 !important;
  padding:16px !important;
  border:1px solid var(--fb-line) !important;
  border-radius:14px !important;
  background:var(--fb-surface) !important;
  box-shadow:0 1px 2px rgba(35,35,30,.04);
}
body.fb-s6-cart .cart-item-thumb{
  flex:none !important;
  width:88px !important;
  height:88px !important;
  border-radius:10px;
  overflow:hidden;
  background:#F2F1EE;
}
body.fb-s6-cart .cart-item-thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  display:block;
  border-radius:0 !important;
  margin:0 !important;
}
body.fb-s6-cart .cart-item-body{
  flex:1 1 220px !important;
  min-width:0 !important;
  display:flex;
  flex-direction:column;
  gap:4px;
}
body.fb-s6-cart .cart-item-row{
  display:flex !important;
  align-items:baseline !important;
  justify-content:space-between !important;
  gap:14px !important;
}
body.fb-s6-cart .cart-item-title{
  font-size:17px !important;
  line-height:23px !important;
  font-weight:700 !important;
  letter-spacing:-.015em !important;
  color:var(--fb-ink) !important;
  font-family:inherit !important;
  min-width:0;
  text-wrap:pretty;
}
body.fb-s6-cart .cart-item-title a{color:inherit !important;font-weight:inherit !important;font-size:inherit !important;}
body.fb-s6-cart .fb-c6-format{
  display:block;
  margin-top:3px;
  font-size:14px;
  line-height:20px;
  font-weight:400;
  letter-spacing:-.005em;
  color:var(--fb-muted);
}
body.fb-s6-cart .cart-item-price{flex:none !important;}
body.fb-s6-cart .cart-item-price .woocommerce-Price-amount,
body.fb-s6-cart .cart-item-price .woocommerce-Price-currencySymbol{
  font-family:inherit !important;
  font-size:17px !important;
  font-weight:700 !important;
  letter-spacing:-.015em !important;
  color:var(--fb-ink) !important;
}

body.fb-s6-cart .cart-item-meta{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:2px 0 0 !important;
}
body.fb-s6-cart .cart-meta-row{
  display:flex;
  gap:6px;
  margin:0 !important;
  font-size:13.5px !important;
  line-height:19px !important;
  color:var(--fb-muted) !important;
}
body.fb-s6-cart .cart-meta-label{color:var(--fb-muted) !important;font-weight:400 !important;}
body.fb-s6-cart .cart-meta-value{color:var(--fb-ink) !important;font-weight:600 !important;}
body.fb-s6-cart .cart-meta-row.fb-c6-meta-id{font-size:12.5px !important;color:#A9A9A2 !important;}
body.fb-s6-cart .cart-meta-row.fb-c6-meta-id .cart-meta-value{color:#A9A9A2 !important;font-weight:400 !important;}

body.fb-s6-cart .cart-item-qty{margin:6px 0 0 !important;}
body.fb-s6-cart .cart-item-qty .quantity input.qty{
  height:38px;
  width:72px;
  border:1px solid var(--fb-line) !important;
  border-radius:8px !important;
  background:#fff !important;
  padding:0 8px;
  font-size:14px;
  color:var(--fb-ink);
  text-align:center;
}
body.fb-s6-cart .cart-item-remove{
  position:static !important; /* the theme pins it to the card corner */
  flex:none !important;
  align-self:flex-start !important;
  margin:0 !important;
}
/* .cart-icon-font draws a glyph in ::before with its own font-size, so it
   survives font-size:0 and would sit behind the SVG we inject */
body.fb-s6-cart .cart-item-remove a.remove::before,
body.fb-s6-cart .cart-item-remove a.remove::after{
  content:none !important;
  display:none !important;
}
body.fb-s6-cart .cart-item-remove a.remove{
  width:34px !important;
  height:34px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:8px !important;
  border:1px solid var(--fb-line) !important;
  background:#fff !important;
  color:var(--fb-muted) !important;
  font-size:0 !important;
  transition:background-color 140ms cubic-bezier(.2,.6,.2,1),border-color 140ms cubic-bezier(.2,.6,.2,1);
}
body.fb-s6-cart .cart-item-remove a.remove:hover{
  background:rgba(224,95,56,.06) !important;
  border-color:rgba(224,95,56,.35) !important;
  color:var(--fb-accent) !important;
}
body.fb-s6-cart .cart-item-remove a.remove svg{display:block}

/* reassurance under the item list */
body.fb-s6-cart .fb-c6-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:14px 0 0;
  padding:12px 14px;
  border-radius:12px;
  background:var(--fb-info-bg);
  font-size:14px;
  line-height:20px;
  color:var(--fb-info-ink);
  text-wrap:pretty;
}
body.fb-s6-cart .fb-c6-note svg{flex:none;margin-top:1px}

/* --------------------------------------------------------------------------
   5. Order summary card
   -------------------------------------------------------------------------- */
body.fb-s6-cart .cart-sum-block{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  margin:0 !important;
  padding:20px !important;
  border:1px solid var(--fb-line) !important;
  border-radius:14px !important;
  background:var(--fb-surface) !important;
  box-shadow:0 1px 2px rgba(35,35,30,.04);
}
body.fb-s6-cart .fb-c6-sumtitle{
  order:1;
  margin:0 0 12px;
  font-size:16px;
  line-height:22px;
  font-weight:700;
  letter-spacing:-.015em;
  color:var(--fb-ink);
}
body.fb-s6-cart .cart-sum-block .cart-sum-row{
  order:2;
  display:flex !important;
  align-items:baseline !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:0 0 8px !important;
  padding:0 !important;
  border:0 !important;
  font-size:14px !important;
  line-height:20px !important;
  color:var(--fb-muted) !important;
}
body.fb-s6-cart .cart-sum-block .cart-sum-row .woocommerce-Price-amount,
body.fb-s6-cart .cart-sum-block .cart-sum-row .woocommerce-Price-currencySymbol{
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:600 !important;
  color:var(--fb-ink) !important;
}
body.fb-s6-cart .cart-sum-block .cart-sum-row.total{
  order:3;
  margin:10px 0 0 !important;
  padding:14px 0 0 !important;
  border-top:1px solid var(--fb-line) !important;
  font-size:16px !important;
  line-height:22px !important;
  font-weight:600 !important;
  color:var(--fb-ink) !important;
}
body.fb-s6-cart .cart-sum-block .cart-sum-row.total .woocommerce-Price-amount,
body.fb-s6-cart .cart-sum-block .cart-sum-row.total .woocommerce-Price-currencySymbol{
  font-size:26px !important;
  font-weight:700 !important;
  letter-spacing:-.03em !important;
  color:var(--fb-ink) !important;
}
body.fb-s6-cart .fb-c6-vat{
  order:4;
  margin-top:3px;
  text-align:right;
  font-size:12.5px;
  line-height:18px;
  color:var(--fb-muted);
}

body.fb-s6-cart .fb-c6-assure{
  order:5;
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:16px -20px 0;
  padding:14px 20px;
  border-top:1px solid var(--fb-line-soft);
  border-bottom:1px solid var(--fb-line-soft);
  background:rgba(123,123,112,.05);
}
body.fb-s6-cart .fb-c6-assure > div{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:13.5px;
  line-height:19px;
  color:var(--fb-ink);
  text-wrap:pretty;
}
body.fb-s6-cart .fb-c6-assure svg{flex:none;margin-top:1px}
body.fb-s6-cart .fb-c6-assure strong{font-weight:600}

/* express payment area - the gateway containers keep their own markup */
body.fb-s6-cart .fb-c6-expresslabel{
  order:6;
  margin:18px 0 10px;
  font-size:13px;
  font-weight:600;
  letter-spacing:-.005em;
  color:var(--fb-muted);
}
body.fb-s6-cart .cart-sum-block #wc-revolut-payment-request-container{
  order:7;
  padding-top:0 !important;
  margin:0 0 8px;
  border-radius:8px;
  overflow:hidden;
}
/* Stripe renders G Pay / Apple Pay in its own iframe with square corners of
   its own; clipping the container is the only way to round it from here */
body.fb-s6-cart .cart-sum-block #wc-stripe-express-checkout-element{
  order:8;
  margin:0 0 8px !important;
  border-radius:8px;
  overflow:hidden;
}
body.fb-s6-cart .cart-sum-block .ppc-button-wrapper{order:9;margin:0 0 8px;}
body.fb-s6-cart .cart-sum-block .ppcp-messages{order:10;margin:0 0 6px;font-size:12.5px;}
body.fb-s6-cart .fb-c6-or{
  order:11;
  display:flex;
  align-items:center;
  gap:12px;
  margin:10px 0 0;
  font-size:12.5px;
  color:var(--fb-muted);
}
body.fb-s6-cart .fb-c6-or::before,
body.fb-s6-cart .fb-c6-or::after{
  content:"";
  flex:1;
  height:1px;
  background:var(--fb-line);
}
body.fb-s6-cart .cart-sum-block a.check_btn{
  order:12;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px;
  width:100% !important;
  height:54px !important;
  min-height:0 !important;
  /* keeps the button clear of the assurance strip when there is no express
     payment block (no such gateways on this shop) */
  margin:14px 0 0 !important;
  padding:0 20px !important;
  border:0 !important;
  border-radius:8px !important;
  background:var(--fb-accent) !important;
  color:#fff !important;
  font-family:inherit !important;
  font-size:16px !important;
  font-weight:700 !important;
  line-height:22px !important;
  letter-spacing:-.005em !important;
  text-align:center !important;
  transition:background-color 140ms cubic-bezier(.2,.6,.2,1),transform 140ms cubic-bezier(.2,.6,.2,1);
}
body.fb-s6-cart .cart-sum-block a.check_btn:hover{background:var(--fb-accent-dark) !important;}
body.fb-s6-cart .cart-sum-block a.check_btn:active{transform:scale(.99);}
body.fb-s6-cart .cart-sum-block a.check_btn::after{content:none !important;}

body.fb-s6-cart .fb-c6-trust{
  order:13;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 12px;
  margin-top:14px;
  font-size:12.5px;
  line-height:18px;
  color:var(--fb-muted);
}
body.fb-s6-cart .fb-c6-trust > span{display:inline-flex;align-items:center;gap:6px;}
body.fb-s6-cart .fb-c6-trust .fb-c6-sep{width:1px;height:13px;background:var(--fb-line);}
body.fb-s6-cart .fb-c6-cards{display:flex;gap:5px;margin-left:auto;}
body.fb-s6-cart .fb-c6-cards b{
  font-size:9.5px;
  font-weight:700;
  letter-spacing:.02em;
  border:1px solid var(--fb-line);
  border-radius:4px;
  padding:3px 5px;
  color:var(--fb-muted);
}
body.fb-s6-cart .fb-c6-cards b.fb-mir{color:#0F754E}
body.fb-s6-cart .fb-c6-cards b.fb-mc{color:#EB001B}
body.fb-s6-cart .fb-c6-cards b.fb-visa{color:#1A1F71}

body.fb-s6-cart .fb-c6-after{
  margin-top:12px;
  font-size:12.5px;
  line-height:18px;
  color:var(--fb-muted);
  text-wrap:pretty;
}

/* --------------------------------------------------------------------------
   6. Promo code
   -------------------------------------------------------------------------- */
body.fb-s6-cart .cart-promocode-block{
  margin:0 !important;
  padding:0 !important;
  border:1px solid var(--fb-line) !important;
  border-radius:14px !important;
  background:var(--fb-surface) !important;
  box-shadow:0 1px 2px rgba(35,35,30,.04);
  overflow:hidden;
}
body.fb-s6-cart .cart-promocode-title{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px;
  margin:0 !important;
  padding:15px 20px !important;
  font-size:14px !important;
  font-weight:500 !important;
  color:var(--fb-muted) !important;
  cursor:pointer;
  user-select:none;
}
body.fb-s6-cart .cart-promocode-title svg{
  flex:none;
  transition:transform 160ms cubic-bezier(.2,.6,.2,1);
}
body.fb-s6-cart .cart-promocode-block.is-open .cart-promocode-title svg{transform:rotate(180deg);}
body.fb-s6-cart .cart-promocode-block .cart-coupon{display:none !important;}
body.fb-s6-cart .cart-promocode-block.is-open .cart-coupon{
  display:flex !important;
  gap:8px;
  margin:0 !important;
  padding:0 20px 18px !important;
}
body.fb-s6-cart .cart-promocode-block .cart-coupon input#coupon_code{
  flex:1 1 auto;
  min-width:0;
  height:46px !important;
  border:1px solid var(--fb-line) !important;
  border-radius:8px !important;
  background:#fff !important;
  padding:0 13px !important;
  font-size:15px !important;
  color:var(--fb-ink) !important;
}
body.fb-s6-cart .cart-promocode-block .cart-coupon input#coupon_code:focus{
  outline:none;
  border-color:var(--fb-ink) !important;
}
body.fb-s6-cart .cart-promocode-block .cart-coupon button{
  flex:none;
  height:46px !important;
  min-height:0 !important;
  padding:0 18px !important;
  border:1px solid var(--fb-line) !important;
  border-radius:8px !important;
  background:#fff !important;
  color:var(--fb-ink) !important;
  font-size:14px !important;
  font-weight:600 !important;
  transition:background-color 140ms cubic-bezier(.2,.6,.2,1);
}
body.fb-s6-cart .cart-promocode-block .cart-coupon button:hover{background:#FAFAF7 !important;}
body.fb-s6-cart .cart-promocode-block .cart-coupon button::after{content:none !important;}

/* --------------------------------------------------------------------------
   7. Sticky bar (narrow screens only)
   -------------------------------------------------------------------------- */
body.fb-s6-cart .fb-c6-bar{
  display:none;
  position:fixed;
  left:0;right:0;bottom:0;
  z-index:400;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 16px;
  background:rgba(255,255,255,.97);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  border-top:1px solid var(--fb-line);
  box-shadow:0 -2px 14px rgba(35,35,30,.05);
}
body.fb-s6-cart .fb-c6-bar__sum{
  display:flex;
  flex-direction:column;
  gap:1px;
  min-width:0;
}
body.fb-s6-cart .fb-c6-bar__label{font-size:12.5px;line-height:17px;color:var(--fb-muted);white-space:nowrap;}
body.fb-s6-cart .fb-c6-bar__total{
  font-size:18px;
  line-height:24px;
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--fb-ink);
  white-space:nowrap;
}
body.fb-s6-cart .fb-c6-bar__cta{
  flex:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:48px;
  padding:0 20px;
  border-radius:8px;
  background:var(--fb-accent);
  color:#fff !important;
  font-size:15px;
  font-weight:700;
  letter-spacing:-.005em;
  text-decoration:none;
}
body.fb-s6-cart .fb-c6-bar__cta:hover{background:var(--fb-accent-dark);}

/* --------------------------------------------------------------------------
   8. Empty cart
   -------------------------------------------------------------------------- */
body.fb-s6-cart .cart-empty,
body.fb-s6-cart .woocommerce .return-to-shop{
  text-align:center;
}
body.fb-s6-cart .cart-empty{
  margin:40px auto 18px !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  font-size:20px !important;
  line-height:28px !important;
  font-weight:600 !important;
  letter-spacing:-.015em;
  color:var(--fb-ink) !important;
}
body.fb-s6-cart .woocommerce .return-to-shop{margin:0 0 40px !important;}
body.fb-s6-cart .woocommerce .return-to-shop .button{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  height:52px;
  padding:0 24px !important;
  border-radius:8px !important;
  background:var(--fb-accent) !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:700 !important;
  min-height:0 !important;
}

/* --------------------------------------------------------------------------
   9. Breakpoints
   -------------------------------------------------------------------------- */
@media (min-width:1025px){
  body.fb-s6-cart .cart-flex-wrap{
    grid-template-columns:minmax(0,1fr) 400px;
    gap:44px;
  }
  body.fb-s6-cart .cart-side-block{
    position:sticky;
    top:calc(var(--fb-topbar-h, 100px) + 20px);
    /* the left column carries a "Your order" label above its cards; this
       offset (measured in JS) lines the two cards up on the same baseline */
    margin-top:var(--fb-c6-side-offset, 0px) !important; /* beats the reset above */
  }
}

@media (max-width:1024px){
  body.fb-s6-cart .fb-steps{display:none !important;}
  body.fb-s6-cart .fb-topbar__step{margin-left:auto !important;}
  body.fb-s6-cart .fb-c6-bar{display:flex;}
  /* the Chaty "Поддержка" bubble (z-index 10001) would cover the total in
     the sticky bar - lift it above the bar */
  body.fb-s6-cart .chaty-widget{
    bottom:calc(var(--fb-c6-bar-h, 72px) + 14px) !important;
  }
  /* the sticky bar carries the primary action on narrow screens */
  body.fb-s6-cart .cart-sum-block a.check_btn{display:none !important;}
  body.fb-s6-cart .fb-c6-or{display:none;}
}

@media (max-width:767px){
  body.fb-s6-cart .fb-topbar{padding:10px 16px !important;gap:7px;}
  body.fb-s6-cart .fb-topbar__logo img{height:26px !important;}
  body.fb-s6-cart .page-content > .woocommerce{padding:24px 16px 150px;}
  body.fb-s6-cart .fb-c6-head h1{font-size:27px;line-height:33px;}
  body.fb-s6-cart .fb-c6-head p{font-size:15px;line-height:22px;}
  body.fb-s6-cart .cart-item-card{gap:12px !important;padding:12px !important;}
  body.fb-s6-cart .cart-item-thumb{width:68px !important;height:68px !important;}
  body.fb-s6-cart .cart-item-body{flex:1 1 140px !important;}
  body.fb-s6-cart .cart-item-title{font-size:16px !important;line-height:21px !important;}
  body.fb-s6-cart .cart-item-price .woocommerce-Price-amount,
  body.fb-s6-cart .cart-item-price .woocommerce-Price-currencySymbol{font-size:16px !important;}
  body.fb-s6-cart .cart-sum-block{padding:16px !important;}
  body.fb-s6-cart .fb-c6-assure{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;}
  body.fb-s6-cart .cart-sum-block .cart-sum-row.total .woocommerce-Price-amount,
  body.fb-s6-cart .cart-sum-block .cart-sum-row.total .woocommerce-Price-currencySymbol{font-size:23px !important;}
  body.fb-s6-cart .fb-c6-cards{margin-left:0;}
}

@media (max-width:480px){
  body.fb-s6-cart .cart-item-row{flex-wrap:wrap;}
  body.fb-s6-cart .fb-c6-bar__cta{padding:0 14px;font-size:14px;}
  body.fb-s6-cart .fb-c6-bar__label{display:none;}
}
