/* LeNi Shopping Cart — v0.8.1 Figma cart section */
body.woocommerce-cart .site-main{padding:0;background:#f7f2e9}
body.woocommerce-cart .site-main>.container,
body.woocommerce-cart .site-main>.content-narrow{width:100%;max-width:none;margin:0;padding:0}
body.woocommerce-cart .site-main article.page{margin:0}
body.woocommerce-cart .site-main article.page>h1{display:none}
body.woocommerce-cart .woocommerce{width:100%;max-width:none}

.leni-cart-container{width:min(calc(100% - 64px),1240px);margin-inline:auto}
.leni-cart-hero{background:#eee5d6;padding:34px 0 46px}
.leni-cart-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:8px;color:#667080;font:400 12px/1.4 Inter,Arial,sans-serif}
.leni-cart-breadcrumb a:hover{color:#bd971a}
.leni-cart-hero h1{margin:0;color:#111827;font-family:'DM Serif Display',Georgia,serif;font-size:38px;font-weight:400;line-height:1.1}

.leni-cart-main{padding:68px 0 72px;background:#f7f2e9}
.leni-cart-layout{display:grid;grid-template-columns:minmax(0,800px) minmax(300px,370px);gap:32px;align-items:start;justify-content:center}
.leni-cart-items{width:800px;max-width:100%}
.leni-cart-list{display:grid;gap:24px}

/* Cart item — one Figma component */
.leni-cart-item{
 display:grid;
 grid-template-columns:160px minmax(0,1fr) auto 28px;
 grid-template-rows:1fr auto;
 column-gap:30px;
 row-gap:0;
 align-items:start;
 width:800px;
 max-width:100%;
 min-height:201px;
 box-sizing:border-box;
 padding:28px 28px 28px 30px;
 border:1px solid #eee7dc;
 border-radius:16px;
 background:#fff;
 box-shadow:0 8px 24px rgba(17,24,39,.035)
}
.leni-cart-item::after{content:none!important;display:none!important}
.leni-cart-item__media{grid-column:1;grid-row:1 / span 2;display:grid;place-items:center;width:160px;height:160px;align-self:center;overflow:hidden;border-radius:10px;background:#eee7dc}
.leni-cart-item__image{width:100%!important;height:100%!important;object-fit:cover!important;padding:0}
.leni-cart-item__content{grid-column:2;grid-row:1 / span 2;min-width:0;height:100%;padding:4px 0 0}
.leni-cart-item__copy{display:flex;min-width:0;height:100%;flex-direction:column;align-items:flex-start}
.leni-cart-item__title{display:-webkit-box;max-width:100%;margin:0 0 7px;overflow:hidden;color:#111827;font-family:Inter,Arial,sans-serif;font-size:20px;font-weight:600;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.leni-cart-item__title a{color:inherit;text-decoration:none}
.leni-cart-item__title a:hover{color:#a67d09}
.leni-cart-item__meta{margin:0 0 10px;color:#6f7887;font:400 14px/1.4 Inter,Arial,sans-serif}
.leni-cart-item__rating{display:flex;align-items:center;gap:4px;color:#d7d2c8;line-height:1}
.leni-cart-item__rating span{display:grid;place-items:center;width:15.75px;height:20px;font-size:18px;line-height:20px}
.leni-cart-item__rating .is-filled{color:#bd971a}
.leni-cart-item .variation{margin:8px 0 0;font-size:11px;color:#707784}
.leni-cart-item .variation dt,.leni-cart-item .variation dd{display:inline;margin:0 4px 0 0}

/* Quantity aligns to the same lower baseline as price */
.leni-cart-item__quantity{margin-top:auto;padding-top:18px}
.leni-cart-item__quantity .quantity{display:grid!important;grid-template-columns:32px auto 32px;align-items:center;column-gap:18px;width:max-content;height:32px;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
.leni-cart-item__quantity .qty{width:34px!important;height:32px!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-align:center;font:500 16px/32px Inter,Arial,sans-serif;-moz-appearance:textfield}
.leni-cart-item__quantity .qty::-webkit-outer-spin-button,.leni-cart-item__quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.leni-cart-item__quantity .leni-quantity__button,
.leni-cart-item__quantity .leni-qty-button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid #d8dce5;border-radius:6px;background:#fff;color:#4f5968;font-size:20px;font-weight:400;line-height:1;cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease}
.leni-cart-item__quantity .leni-quantity__button:hover,
.leni-cart-item__quantity .leni-qty-button:hover{border-color:#bd971a;color:#bd971a;background:#fffdf7}

.leni-cart-item__price{grid-column:3;grid-row:2;align-self:end;justify-self:end;min-width:94px;margin:0 0 2px;color:#111827;font:700 24px/1 Inter,Arial,sans-serif;text-align:right;white-space:nowrap}
.leni-cart-item__price .amount{color:inherit}
.leni-cart-item__remove{grid-column:4;grid-row:2;align-self:end;justify-self:end;margin:0}
.leni-cart-item__remove .remove{display:grid!important;place-items:center!important;width:28px!important;height:32px!important;padding:0!important;border-radius:6px!important;color:#a7adb5!important;background:transparent!important}
.leni-cart-item__remove svg{width:15.75px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.leni-cart-item__remove .remove:hover{color:#a12b2b!important;background:#f8eaea!important}

.leni-cart-actions{height:0;overflow:hidden}
.leni-cart-update{position:absolute!important;left:-9999px!important}

/* Order summary — same section, Figma proportions */
.leni-cart-summary{position:sticky;top:96px;width:100%;box-sizing:border-box;padding:30px;border:1px solid #eee7dc;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(17,24,39,.035)}
.leni-cart-summary h2{margin:0 0 30px;color:#111827;font-family:'DM Serif Display',Georgia,serif;font-size:30px;font-weight:400;line-height:1.1}
.leni-cart-summary__rows{display:grid;gap:22px;margin:0}
.leni-cart-summary__row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;color:#596272;font:400 16px/1.4 Inter,Arial,sans-serif}
.leni-cart-summary__row dt,.leni-cart-summary__row dd{margin:0}
.leni-cart-summary__row dd{text-align:right;color:#111827;font-weight:500}
.leni-cart-summary__row--shipping ul{margin:0;padding:0;list-style:none}
.leni-cart-summary__row--shipping label{font-size:14px}
.leni-cart-summary__row--total{margin-top:2px;padding-top:25px;border-top:1px solid #e8e4dc;color:#111827;font-family:'DM Serif Display',Georgia,serif;font-size:24px;font-weight:400}
.leni-cart-summary__row--total dd{font-family:Inter,Arial,sans-serif;font-size:30px;font-weight:700;line-height:1}
.leni-cart-summary__checkout,.leni-cart-summary__continue{display:flex!important;align-items:center!important;justify-content:center!important;width:100%;min-height:58px;margin-top:28px!important;border-radius:8px!important;text-transform:none!important;letter-spacing:0!important;font:500 16px/1 Inter,Arial,sans-serif!important}
.leni-cart-summary__checkout{border-color:#bd971a!important;background:#bd971a!important;color:#fff!important}
.leni-cart-summary__checkout:hover{background:#a98314!important;border-color:#a98314!important}
.leni-cart-summary__continue{margin-top:12px!important;border:1px solid #d9dde2!important;background:#fff!important;color:#111827!important}
.leni-cart-summary__continue:hover{border-color:#bd971a!important;color:#8c6910!important}
.leni-cart-summary__benefit{display:flex;align-items:center;gap:14px;margin-top:28px;padding-top:26px;border-top:1px solid #e8e4dc;color:#bd971a}
.leni-cart-summary__benefit svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.leni-cart-summary__benefit span{display:grid;color:#111827}
.leni-cart-summary__benefit strong{font:600 14px/1.25 Inter,Arial,sans-serif}
.leni-cart-summary__benefit small{margin-top:4px;color:#7b8490;font:400 12px/1.25 Inter,Arial,sans-serif}

/* Existing following sections stay unchanged */
.leni-cart-recommendations{padding:72px 0 86px;background:#181a18;color:#fff}
.leni-cart-recommendations__header{text-align:center;margin-bottom:44px}
.leni-cart-recommendations__header h2{margin:0;color:#bd971a;font-family:'DM Serif Display',Georgia,serif;font-size:36px;font-weight:400;line-height:1.1}
.leni-cart-recommendations__header p{margin:14px 0 0;color:#e8e8e5;font:400 13px/1.5 Inter,Arial,sans-serif}
.leni-cart-recommendations__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
body.woocommerce-cart .stay-updated{border-top:1px solid rgba(255,255,255,.08)}
body.woocommerce-cart .woocommerce-message,body.woocommerce-cart .woocommerce-info,body.woocommerce-cart .woocommerce-error{width:min(calc(100% - 64px),1240px);margin:20px auto!important}

@media(max-width:1100px){
 .leni-cart-layout{grid-template-columns:1fr}
 .leni-cart-items{width:100%}
 .leni-cart-item{width:100%}
 .leni-cart-summary{position:static;max-width:800px}
 .leni-cart-recommendations__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 .leni-cart-container{width:min(calc(100% - 32px),1240px)}
 .leni-cart-hero{padding:28px 0 34px}
 .leni-cart-hero h1{font-size:32px}
 .leni-cart-main{padding:38px 0 50px}
 .leni-cart-item{grid-template-columns:104px minmax(0,1fr) 28px;grid-template-rows:auto auto;column-gap:16px;row-gap:16px;width:100%;min-height:0;padding:16px;border-radius:12px}
 .leni-cart-item__media{grid-column:1;grid-row:1;width:104px;height:118px;align-self:start}
 .leni-cart-item__content{grid-column:2 / span 2;grid-row:1;height:auto;padding:0}
 .leni-cart-item__quantity{padding-top:18px}
 .leni-cart-item__price{grid-column:2;grid-row:2;align-self:center;justify-self:start;min-width:0;margin:0;font-size:24px}
 .leni-cart-item__remove{grid-column:3;grid-row:2;align-self:center;margin:0}
 .leni-cart-summary{padding:24px}
 .leni-cart-summary h2{font-size:26px}
 .leni-cart-summary__row--total dd{font-size:30px}
 .leni-cart-recommendations{padding:54px 0 62px}
 .leni-cart-recommendations__grid{grid-template-columns:1fr}
 .leni-cart-recommendations__grid .leni-product-card{width:100%;max-width:360px;margin-inline:auto}
 body.woocommerce-cart .woocommerce-message,body.woocommerce-cart .woocommerce-info,body.woocommerce-cart .woocommerce-error{width:min(calc(100% - 32px),1240px)}
}

/* v0.8.1.1 — Cart quantity recalculation + newsletter outer-spacing fix */
body.woocommerce-cart .site-main,
body.woocommerce-cart .woocommerce,
body.woocommerce-cart .leni-cart-recommendations,
body.woocommerce-cart .stay-updated,
body.woocommerce-cart .site-footer{
  margin-top:0!important;
  margin-bottom:0!important;
}
body.woocommerce-cart .leni-cart-recommendations + .stay-updated{
  margin-top:0!important;
  border-top:0!important;
}
body.woocommerce-cart .stay-updated{
  display:block;
  clear:both;
}
body.woocommerce-cart .stay-updated + .site-footer{
  margin-top:0!important;
}

/* v0.8.1.2 — remove the Gutenberg shortcode wrapper gap between newsletter and footer */
body.woocommerce-cart .site-main--cart,
body.woocommerce-cart .site-main--cart > .wp-block-shortcode,
body.woocommerce-cart .site-main--cart .wp-block-shortcode,
body.woocommerce-cart .site-main--cart > .woocommerce,
body.woocommerce-cart .site-main--cart > *:last-child{
  margin-top:0!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
}
body.woocommerce-cart .site-main--cart > p:empty,
body.woocommerce-cart .site-main--cart .wp-block-shortcode + p:empty{
  display:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-cart .stay-updated{
  margin-bottom:0!important;
  border-bottom:0!important;
}
body.woocommerce-cart .site-footer{
  margin-top:0!important;
}

/* v0.9.1.3.1 — delivery UX lives inside the existing Order Summary. */
.leni-cart-summary__shipping-progress{margin:0 0 24px;padding-bottom:24px;border-bottom:1px solid #e8e4dc}
.leni-cart-summary__shipping-progress .leni-shipping-progress{margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.leni-cart-summary__shipping-progress .leni-shipping-progress__head{margin-bottom:8px;font-size:12px}
.leni-cart-summary__shipping-progress .leni-shipping-progress__track{height:6px}
.leni-cart-summary__shipping-progress .leni-shipping-progress p{margin-top:8px;font-size:12px}
.leni-cart-summary__shipping-details{display:grid;gap:14px;margin:0 0 26px;padding:0 0 24px;border-bottom:1px solid #e8e4dc;list-style:none}
.leni-cart-summary__shipping-details__item{display:flex;align-items:flex-start;gap:12px;margin:0;color:#bd971a}
.leni-cart-summary__shipping-details__item svg{flex:0 0 22px;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.leni-cart-summary__shipping-details__item>span{display:grid;gap:2px;color:#111827}
.leni-cart-summary__shipping-details__item strong{font:600 13px/1.3 Inter,Arial,sans-serif}
.leni-cart-summary__shipping-details__item small{color:#7b8490;font:400 11px/1.35 Inter,Arial,sans-serif}


/* v0.9.1.3.3 — separator and breathing room between Total and shipping information. */
.leni-cart-summary__divider{width:100%;height:1px;margin:20px 0 24px;background:#e8e4dc}
.leni-cart-summary__divider + .leni-cart-summary__shipping-progress{margin-top:0}
.leni-cart-summary__divider + .leni-cart-summary__shipping-details{margin-top:0}
@media(max-width:767px){.leni-cart-summary__divider{margin:18px 0 20px}}

/* v0.9.7.1 — empty cart is a page state, not a notification. */
body.woocommerce-cart .cart-empty.woocommerce-info{display:none!important}.leni-cart-hero--empty{padding-bottom:42px}.leni-empty-cart{padding:34px 0 88px;background:#f8f4ec}
.leni-empty-cart__card{position:relative;overflow:hidden;max-width:980px;margin:0 auto;padding:58px 48px 42px;border:1px solid #eadfcb;border-radius:18px;background:radial-gradient(circle at 50% 0,rgba(195,154,22,.08),transparent 34%),#fffdf8;box-shadow:0 12px 36px rgba(36,29,18,.05);text-align:center}
.leni-empty-cart__icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 18px;border:1px solid rgba(195,154,22,.38);border-radius:50%;color:#bd971a}.leni-empty-cart__icon svg{width:36px;height:36px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.leni-empty-cart__eyebrow{margin:0 0 8px;color:#9a7611;font:600 12px/18px Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.leni-empty-cart h2{margin:0;color:#111827;font-family:'DM Serif Display',Georgia,serif;font-size:38px;font-weight:400;line-height:1.12}.leni-empty-cart__copy{max-width:580px;margin:14px auto 26px;color:#667085;font:400 15px/24px Inter,Arial,sans-serif}.leni-empty-cart__cta{gap:12px!important;min-height:52px!important;padding:0 28px!important;border-color:#17120f!important;background:#17120f!important;color:#fff!important;border-radius:7px!important;font:600 13px/1 Inter,Arial,sans-serif!important;letter-spacing:.06em!important}.leni-empty-cart__cta:hover{border-color:#bd971a!important;background:#bd971a!important}.leni-empty-cart__trust{display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;padding-top:28px;border-top:1px solid #eee5d7}.leni-empty-cart__trust>div{display:flex;align-items:center;justify-content:center;gap:10px;min-height:36px;padding:0 20px;color:#bd971a}.leni-empty-cart__trust>div+div{border-left:1px solid #eee5d7}.leni-empty-cart__trust span{font-size:19px;line-height:1}.leni-empty-cart__trust p{margin:0;color:#4e5968;font:500 13px/18px Inter,Arial,sans-serif}
@media(max-width:720px){.leni-empty-cart{padding:24px 0 56px}.leni-empty-cart__card{padding:40px 22px 28px;border-radius:14px}.leni-empty-cart h2{font-size:30px}.leni-empty-cart__trust{grid-template-columns:1fr;gap:15px;margin-top:34px}.leni-empty-cart__trust>div{justify-content:flex-start;padding:0 6px}.leni-empty-cart__trust>div+div{padding-top:15px;border-top:1px solid #eee5d7;border-left:0}}


/* v0.9.7.2 — empty cart fills the viewport and footer sits flush at the bottom. */
body.woocommerce-cart{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
body.woocommerce-cart .site-main--cart{
  flex:1 0 auto;
  display:flex;
  flex-direction:column;
  min-height:0!important;
}
body.woocommerce-cart .site-main--cart > .woocommerce,
body.woocommerce-cart .site-main--cart > .wp-block-shortcode,
body.woocommerce-cart .site-main--cart > .wp-block-shortcode > .woocommerce{
  flex:1 0 auto;
  display:flex;
  flex-direction:column;
  width:100%;
}
body.woocommerce-cart .leni-empty-cart{
  flex:1 0 auto;
  display:flex;
  align-items:center;
  width:100%;
  padding-top:42px;
  padding-bottom:54px;
}
body.woocommerce-cart .leni-empty-cart > .leni-cart-container{
  width:min(calc(100% - 64px),1240px);
}
body.woocommerce-cart .site-footer{
  flex:0 0 auto;
  margin-bottom:0!important;
}
@media(max-width:720px){
  body.woocommerce-cart .leni-empty-cart > .leni-cart-container{width:min(calc(100% - 32px),1240px)}
  body.woocommerce-cart .leni-empty-cart{padding-top:28px;padding-bottom:38px}
}


/* v0.9.7.3.1 — Empty Cart shared shipping component presentation fix. */
.leni-empty-cart__trust{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin-top:44px;
  padding-top:28px;
  border-top:1px solid #eee5d7;
}
.leni-empty-cart__trust-item{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:12px;
  min-width:0;
  min-height:44px;
  padding:0 22px;
  color:#bd971a;
  text-align:left;
}
.leni-empty-cart__trust-item + .leni-empty-cart__trust-item{
  border-left:1px solid #eee5d7;
}
.leni-empty-cart__trust-item svg{
  display:block;
  flex:0 0 22px;
  width:22px;
  height:22px;
  margin-top:1px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.leni-empty-cart__trust-item > span{
  display:grid;
  gap:2px;
  min-width:0;
  font-size:inherit;
  line-height:normal;
}
.leni-empty-cart__trust-item strong,
.leni-empty-cart__trust-item small{
  display:block;
  margin:0;
}
.leni-empty-cart__trust-item strong{
  color:#303744;
  font:600 13px/1.35 Inter,Arial,sans-serif;
}
.leni-empty-cart__trust-item small{
  color:#7b8490;
  font:400 11px/1.4 Inter,Arial,sans-serif;
}
@media(max-width:720px){
  .leni-empty-cart__trust{grid-template-columns:1fr;gap:15px;margin-top:34px}
  .leni-empty-cart__trust-item{justify-content:flex-start;padding:0 6px}
  .leni-empty-cart__trust-item + .leni-empty-cart__trust-item{
    padding-top:15px;
    border-top:1px solid #eee5d7;
    border-left:0;
  }
}
