/* =========================================================
   KARISSA – CLASSIC WOOCOMMERCE CART (REV. 2)
   Cleaner styling, earlier responsive stacking, square buttons
   ========================================================= */

:root{
  --karissa-text:#111111;
  --karissa-muted:#7a7a7a;
  --karissa-line:#e8e3e6;
  --karissa-line-strong:#d8d1d6;
  --karissa-surface:#ffffff;
  --karissa-surface-soft:#fbf9fa;
  --karissa-accent:#bf002e;
  --karissa-accent-2:#a5345f;
  --karissa-accent-soft:#fff7f9;
  --karissa-pill:#f3eef1;
  --karissa-radius:2px;
  --karissa-radius-sm:2px;
  --karissa-shadow:0 10px 28px rgba(20,16,20,.06);
}

/* layout */
.woocommerce-cart .col-full{
  max-width:1440px;
  margin:0 auto;
  padding:0 18px;
}

.woocommerce-cart .website-col,
.woocommerce-cart #primary,
.woocommerce-cart #main,
.woocommerce-cart .entry-content{
  width: 95vw;
  margin: 0 auto;
  max-width: 1400px;
}

.woocommerce-cart #primary{
  float:none;
  width:100%;
  margin:0;
}

.woocommerce-cart #secondary,
.woocommerce-cart .widget-area{
  display:none !important;
}

.woocommerce-cart .storefront-breadcrumb{
  margin:0 auto 14px;
  padding:16px 0 0;
  max-width:1440px;
}

.woocommerce-cart .entry-header{
  margin:0 0 18px;
}

.woocommerce-cart .entry-title{
  font-size: 26px;
  line-height: 1.1;
  letter-spacing: .25px;
}

.woocommerce-cart .woocommerce-notices-wrapper:empty{
  display:none;
}

.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-error{
  margin:0 0 18px;
  border:1px solid var(--karissa-line);
 
  background:#fff;
  box-shadow:none;
}

.woocommerce-cart .entry-content > .woocommerce{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:28px;
  align-items:start;
}

/* main cart table */
.woocommerce-cart .shop_table.cart{
  width:100%;
  margin:0;
  border:1px solid var(--karissa-line);
 
  overflow:hidden;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
  box-shadow:none;
}

.woocommerce-cart .shop_table.cart thead th{
  background:#fff;
  color:var(--karissa-muted);
  border-bottom:1px solid var(--karissa-line);
  padding:16px 14px;
  font-family:var(--karissa-font);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.woocommerce-cart .shop_table.cart td{
  padding:18px 14px;
  border-bottom:1px solid var(--karissa-line);
  vertical-align:top;
  background:#fff;
}

.woocommerce-cart .shop_table.cart tbody tr:last-child td{
  border-bottom:0;
}

.woocommerce-cart td.product-remove{
  width:54px;
  text-align:center;
}

.woocommerce-cart td.product-thumbnail{
  width:114px;
}

.woocommerce-cart td.product-thumbnail a{
  display:block;
  /* border-radius:10px; */
  overflow:hidden;
  background:transparent;
}

.woocommerce-cart td.product-thumbnail img{
  width:100%;
  max-width: initial !important;
  display:block;
  aspect-ratio:3/4;
  object-fit:cover;
}

.woocommerce-cart td.product-name{
  min-width:220px;
}

.woocommerce-cart td.product-name > a{
  display:inline-block;
  margin:0 0 8px;
  color:var(--karissa-text);
  text-decoration:none;
  font-family:var(--karissa-font);
  font-size:19px;
  line-height:1.25;
  font-weight:700;
}

.woocommerce-cart td.product-name > a:hover{
  color:var(--karissa-accent);
}

.woocommerce-cart .variation{
  margin:10px 0 0;
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
}

.woocommerce-cart .variation dt,
.woocommerce-cart .variation dd{
  margin:0;
  font-size:13px;
  line-height:1.3;
}

.woocommerce-cart .variation dt{
  color:var(--karissa-muted);
  font-weight:600;
}

.woocommerce-cart .variation dd p{
  margin:0;
  color:var(--karissa-text);
  font-weight:700;
}

.woocommerce-cart a.remove{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border:1px solid var(--karissa-line-strong);
  border-radius:999px;
  background:#fff;
  color: #a5345f !important;
  font-size: 22px !important;
  line-height:1;
  text-decoration:none;
  transition:.2s ease;
}

.woocommerce-cart a.remove:hover{
  background:var(--karissa-accent);
  border-color:var(--karissa-accent);
  color:#fff !important;
}

/* prices */
.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal{
  font-family:var(--karissa-font);
  font-size:16px;
  line-height:1.35;
  font-weight:700;
  color:var(--karissa-text);
}

.woocommerce-cart .product-price .awdr_cart_strikeout_line,
.woocommerce-cart .product-price .price,
.woocommerce-cart .product-subtotal .amount,
.woocommerce-cart .cart_totals .amount,
.woocommerce-cart .order-total .amount{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  justify-content: end;
  font-weight: 700;
}

.woocommerce-cart .product-price del{
  color:var(--karissa-muted);
  font-size:14px;
  font-weight:600;
  opacity:1;
  text-decoration: none;
  display: flex;
}

.woocommerce-cart .product-price del .price-eur{
  display:none !important;
}

.woocommerce-cart .product-price del::after{
  content:'Преди';
  display:inline-block;
  margin-left:6px;
  padding:4px 7px;
  border-radius:999px;
  background: #ccc;
  color: #000000;
  font-size:10px;
  font-weight:700;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.05em;
  text-decoration: none !important;
}

.woocommerce-cart .product-price ins{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius: 0;
  background: #ffffff;
  text-decoration:none;
  border: 1px solid #da096b;
}

.woocommerce-cart .product-price ins::before{
  content:'Сега';
  display:inline-block;
  padding:4px 7px;
  border-radius:999px;
  background: #da096b;
  color: #ffffff;
  font-size:10px;
  font-weight:700;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.woocommerce-cart .price-eur{
  display:inline-flex;
  align-items:center;
  padding:5px 8px;
  border-radius:999px;
  background: #e2e6e7;
  color:var(--karissa-text);
  font-size:12px;
  line-height:1;
  font-weight: 700;
  white-space:nowrap;
}
tr.woocommerce-shipping-totals.shipping span.price-eur {
    display: none;
}
.woocommerce-cart .product-subtotal .price-eur{
  margin-left:4px;
}

/* qty */
.woocommerce-cart .quantity{
  display:inline-flex;
  align-items:center;
}

.woocommerce-cart .quantity .qty{
  width:58px;
  height:46px;
  padding:0 8px;
  border: 1px solid #999;
  border-radius:12px;
  background:#fff;
  box-shadow:none;
  color:var(--karissa-text);
  text-align:center;
  font-family:var(--karissa-font);
  font-size:16px;
  font-weight:700;
}

.woocommerce-cart .quantity .qty:focus,
.woocommerce-cart .coupon .input-text:focus{
  outline:none;
  border-color:var(--karissa-accent);
  box-shadow:0 0 0 3px rgba(191,0,46,.08);
}

/* actions */
.woocommerce-cart td.actions{
  padding:20px;
  background:#fff;
}

.woocommerce-cart td.actions::after{
  content:'';
  display:block;
  clear:both;
}

.woocommerce-cart .coupon{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

.woocommerce-cart .coupon .input-text{
  float:none;
  width:min(100%,260px);
  height:50px;
  margin:0;
  padding:0 14px;
  border-radius:12px;
  background:#fff;
  font-size:15px;
  border: 1px solid #da096b;
  border-radius: 0;
}

/* buttons - square like current site */
.woocommerce-cart .button,
.woocommerce-cart .button.alt,
.woocommerce-cart .checkout-button.button,
.woocommerce-cart button.button,
.woocommerce-cart input.button{
  min-height:50px;
  border:0;
  border-radius:4px;
  background: #a5345f;
  color:#fff;
  font-family:var(--karissa-font);
  font-size: 14px;
  font-weight:700;
  letter-spacing:.01em;
  padding:12px 20px;
  text-decoration:none;
  box-shadow:none;
  transition:.2s ease;
  border-radius: 0;
}

.woocommerce-cart .button:hover,
.woocommerce-cart .button.alt:hover,
.woocommerce-cart .checkout-button.button:hover,
.woocommerce-cart button.button:hover,
.woocommerce-cart input.button:hover{
  background:var(--karissa-accent-2);
  color:#fff;
}

.woocommerce-cart button[name="update_cart"]{
  float:right;
  background:#8f8f8f;
}

.woocommerce-cart button[name="update_cart"]:hover{
  background:#777;
}

.woocommerce-cart button[disabled],
.woocommerce-cart button[disabled]:hover{
  opacity:.72;
  cursor:not-allowed;
}

/* totals box */
.woocommerce-cart .cart-collaterals{
  min-width:0;
}

.woocommerce-cart .cart_totals{
  position:sticky;
  top:24px;
  border:1px solid var(--karissa-line);
  border-radius: 0;
  background:#fff;
  box-shadow:var(--karissa-shadow);
  padding:26px;
}

.woocommerce-cart .cart_totals > h2{
  margin:0 0 18px;
  color:var(--karissa-text);
  font-family:var(--karissa-font);
  font-size:27px;
  line-height:1.1;
  font-weight:700;
}

.woocommerce-cart .cart_totals .shop_table{
  border:0;
  margin:0;
}

.woocommerce-cart .cart_totals .shop_table th,
.woocommerce-cart .cart_totals .shop_table td{
  padding:14px 0;
  border-top:1px solid var(--karissa-line);
  font-size:15px;
  background:transparent;
  vertical-align:top;
}

.woocommerce-cart .cart_totals .shop_table tr:first-child th,
.woocommerce-cart .cart_totals .shop_table tr:first-child td{
  border-top:0;
}

.woocommerce-cart .cart_totals th{
  width:42%;
  color:var(--karissa-muted);
  font-family:var(--karissa-font);
  font-size:14px;
  font-weight:700;
  display: none !important;
}

.woocommerce-cart .cart_totals td{
  text-align:right;
}

.woocommerce-cart .woocommerce-shipping-methods{
  list-style:none;
  margin:0;
  padding:0;
}

.woocommerce-cart .woocommerce-shipping-methods li{
  margin:0;
}

.woocommerce-cart .woocommerce-shipping-methods label{
  display:inline-flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  color:var(--karissa-text);
  font-weight:700;
}

.woocommerce-cart .woocommerce-shipping-destination,
.woocommerce-cart .woocommerce-shipping-calculator{
  display:none !important;
}

.woocommerce-cart .order-total th,
.woocommerce-cart .order-total td{
  padding-top:18px;
}

.woocommerce-cart .order-total th{
  color:var(--karissa-text);
}

body .woocommerce-cart .order-total strong{
  color:var(--karissa-text);
  font-size:24px;
  font-weight: 800 !important;
}

.woocommerce-cart .wc-proceed-to-checkout{
  padding:18px 0 0;
  margin-bottom: 0;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:54px;
  border-radius: 0;
  font-size: 17px !important;
  background: #a5345f;
  margin-bottom: 0;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button::after{
  content:'→';
  margin-left:10px;
  font-size:18px;
}

/* --------------- tablet --------------- */
@media (max-width: 1180px){
  .woocommerce-cart .entry-content > .woocommerce{
    grid-template-columns:1fr;
    gap:22px;
  }

  .woocommerce-cart .cart_totals{
    position:relative;
    top:auto;
  }
}

@media (max-width: 860px){
  .woocommerce-cart td.product-thumbnail{
    width:96px;
  }

  .woocommerce-cart td.product-name > a{
    font-size:18px;
  }

  .woocommerce-cart .shop_table.cart th,
  .woocommerce-cart .shop_table.cart td{
    padding-left:12px;
    padding-right:12px;
  }
}

/* --------------- mobile cards --------------- */
@media (max-width: 767px){
  .woocommerce-cart .col-full{
    padding:0 12px;
  }

  .woocommerce-cart .entry-title{
  /* text-align: center; */
  }

  .woocommerce-cart .shop_table.cart,
  .woocommerce-cart .cart_totals{
   
  }

  .woocommerce-cart .shop_table.cart thead{
    display:none;
  }

  .woocommerce-cart .shop_table.cart,
  .woocommerce-cart .shop_table.cart tbody,
  .woocommerce-cart .shop_table.cart tr,
  .woocommerce-cart .shop_table.cart td{
    display:block;
    width:100%;
  }

  .woocommerce-cart .shop_table.cart tbody tr.cart_item{
    position:relative;
    padding:14px;
    border-bottom:1px solid var(--karissa-line);
    background:#fff;
  }

  .woocommerce-cart .shop_table.cart tbody tr.cart_item:last-of-type{
    border-bottom:0;
  }

  .woocommerce-cart .shop_table.cart tbody tr.cart_item td{
    padding:0;
    border:0;
    background:transparent;
  }

  .woocommerce-cart td.product-remove{
    position:absolute;
    top:14px;
    right:14px;
    width:auto;
    z-index:2;
  }

  .woocommerce-cart td.product-thumbnail{
    width:100%;
    float:none;
    margin:0 0 14px;
    text-align:center;
  }

  .woocommerce-cart td.product-thumbnail a{
    display:inline-block;
    width:76px;
  }

  .woocommerce-cart td.product-name,
  .woocommerce-cart td.product-price,
  .woocommerce-cart td.product-quantity,
  .woocommerce-cart td.product-subtotal{
    overflow:hidden;
  }

  .woocommerce-cart td.product-name{
    min-width:0;
    margin-bottom:12px;
    text-align:center;
  }
  .woocommerce-cart table.shop_table_responsive tr td[data-title]::before {line-height: 1.6 !important;margin-right: 10px;}
  .woocommerce-cart .cart_totals table.shop_table_responsive tr td[data-title]::before {
  line-height: 1.2;
}
    .woocommerce-cart .cart_totals table.shop_table_responsive tr.order-total td[data-title]::before {
 margin-top: 5px;
}
  .woocommerce-cart td.product-name > a{
    display:block;
    font-size:17px;
    line-height:1.28;
    padding:0 30px;
    margin-bottom:8px;
  }

  .woocommerce-cart .variation{
    justify-content:center;
  }

  .woocommerce-cart td.product-price,
  .woocommerce-cart td.product-quantity,
  .woocommerce-cart td.product-subtotal{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-top:12px;
    padding-top:10px !important;
    border-top:1px solid var(--karissa-line);
  }

  .woocommerce-cart td.product-price::before,
  .woocommerce-cart td.product-quantity::before,
  .woocommerce-cart td.product-subtotal::before{
    content:attr(data-title) ':';
    flex:0 0 88px;
    color:var(--karissa-muted);
    font-size:11px;
    font-weight:700;
    line-height:1.25;
    letter-spacing:.08em;
    text-transform:uppercase;
    padding-top: 6px;
    text-align:left;
    position: absolute;
  }

  .woocommerce-cart td.product-price > *,
  .woocommerce-cart td.product-quantity > *,
  .woocommerce-cart td.product-subtotal > *{
    flex:1 1 auto;
    justify-content:flex-end;
    text-align:right;
  }

  .woocommerce-cart .product-price .awdr_cart_strikeout_line,
  .woocommerce-cart .product-price .price,
  .woocommerce-cart .product-subtotal .amount{
    justify-content:flex-end;
  }

  .woocommerce-cart .quantity{
    width:100%;
    justify-content:flex-end;
  }

  .woocommerce-cart td.actions{
    padding:16px 14px 18px;
  }

  .woocommerce-cart .coupon{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:12px;
  }

  .woocommerce-cart .coupon .input-text,
  .woocommerce-cart .coupon .button,
  .woocommerce-cart button[name="update_cart"]{
    width:100%;
  }

  .woocommerce-cart button[name="update_cart"]{
    float:none;
  }

  .woocommerce-cart .cart_totals{
    padding:20px 16px;
  }

  .woocommerce-cart .cart_totals > h2{
    font-size:24px;
  }

  .woocommerce-cart .cart_totals .shop_table,
  .woocommerce-cart .cart_totals .shop_table tbody,
  .woocommerce-cart .cart_totals .shop_table tr,
  .woocommerce-cart .cart_totals .shop_table th,
  .woocommerce-cart .cart_totals .shop_table td{
    display:block;
    width:100%;
    text-align:left;
  }

  .woocommerce-cart .cart_totals .shop_table tr{
    padding:12px 0;
    border-top:1px solid var(--karissa-line);
  }

  .woocommerce-cart .cart_totals .shop_table tr:first-child{
    border-top:0;
    padding-top:0;
  }

  .woocommerce-cart .cart_totals .shop_table th,
  .woocommerce-cart .cart_totals .shop_table td{
    padding:0;
    border:0;
  }

  .woocommerce-cart .cart_totals .shop_table td{
    margin-top:6px;
    position: relative;
  }

  .woocommerce-cart .woocommerce-shipping-methods label{
    justify-content:flex-start;
  }

  .woocommerce-cart .order-total strong{
    font-size: 19px;
  }

  
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals.shipping span.price-eur {
    position: absolute;
    right: 0;
    top: 0;
}

  
}

@media (max-width: 380px){
  .woocommerce-cart td.product-name > a{
    padding:0 24px;
    font-size:16px;
  }

  .woocommerce-cart .price-eur{
    font-size: 15px;
    padding:5px 7px;
  }

  .woocommerce-cart .product-price,
  .woocommerce-cart .product-subtotal{
    font-size:15px;
  }

  .woocommerce-cart .product-price del::after,
  .woocommerce-cart .product-price ins::before{
    font-size:9px;
  }
}



@media (min-width: 768px){
table.cart td.actions .coupon {
    display: flex !important;
    min-width: 490px;
}
  .woocommerce-cart .cart_totals th {
    display: block !important;
    width: 70px;
}
  .woocommerce-cart .cart_totals {
    min-width: 340px;
}
}


.woocommerce-notices-wrapper {
    display: none;
}

tr.woocommerce-shipping-totals.shipping {
    display: none !important;
}