body#cart { background: #f6f4f1; color: #000218; }
body#cart #wrapper { padding-bottom: 80px; background: linear-gradient(180deg, #fff 0, #f6f4f1 430px); }
body#cart #content-wrapper { max-width: 1320px; margin: 0 auto; }

.codebo-cart-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin: 10px 0 42px; padding: clamp(28px, 4vw, 48px); overflow: hidden; border-radius: 26px; background: #000218; color: #fff; box-shadow: 0 24px 60px rgba(0,2,24,.18); }
.codebo-cart-hero__copy>span { color: #d2b69f; font-size: 10px; font-weight: 850; letter-spacing: .17em; }
.codebo-cart-hero h1 { margin: 9px 0 7px; color: #fff; font-size: clamp(34px, 5vw, 58px); font-weight: 820; letter-spacing: -.055em; }
.codebo-cart-hero p { margin: 0; color: #bec0ca; font-size: 13px; }
.codebo-cart-steps { display: flex; align-items: center; gap: 0; margin: 0; padding: 0; list-style: none; }
.codebo-cart-steps li { position: relative; display: flex; min-width: 90px; flex-direction: column; align-items: center; color: #858897; font-size: 9px; font-weight: 750; }
.codebo-cart-steps li:not(:last-child)::after { position: absolute; top: 15px; left: calc(50% + 18px); width: calc(100% - 36px); height: 1px; background: rgba(255,255,255,.16); content: ''; }
.codebo-cart-steps b { display: flex; position: relative; z-index: 2; width: 31px; height: 31px; align-items: center; justify-content: center; margin-bottom: 7px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: #111329; color: #fff; font-size: 11px; }
.codebo-cart-steps .is-active { color: #fff; }.codebo-cart-steps .is-active b { border-color: #9A633F; background: #9A633F; box-shadow: 0 6px 16px rgba(154,99,63,.35); }

body#cart .cart-grid { align-items: flex-start; margin-right: -12px; margin-left: -12px; }
body#cart .cart-grid>div, body#cart .cart-grid>aside { padding-right: 12px; padding-left: 12px; }
.codebo-cart-section-title { display: flex; align-items: center; gap: 13px; margin: 0 0 16px; }
.codebo-cart-section-title>span { display: flex; width: 38px; height: 38px; flex: 0 0 38px; align-items: center; justify-content: center; border-radius: 11px; background: #eee8e1; color: #9A633F; font-size: 10px; font-weight: 850; }
.codebo-cart-section-title h2 { margin: 0; color: #000218; font-size: 21px; font-weight: 800; letter-spacing: -.025em; }.codebo-cart-section-title p { margin: 3px 0 0; color: #8a8e98; font-size: 10px; }

body#cart .cart-container, body#cart .cart-summary { border: 1px solid rgba(0,2,24,.08); border-radius: 20px; background: #fff; box-shadow: 0 14px 40px rgba(0,2,24,.07); }
body#cart .cart-container { padding: 18px; }
body#cart .cart-overview>hr { display: none; }
body#cart .cart__items { margin: 0; padding: 0; list-style: none; }
body#cart .cart__item { margin-bottom: 12px; padding: 15px; border: 1px solid #e8e7e3; border-radius: 15px; background: #fff; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
body#cart .cart__item>hr { display: none; }
body#cart .cart__item:hover { border-color: rgba(154,99,63,.35); box-shadow: 0 10px 28px rgba(0,2,24,.08); transform: translateY(-2px); }
body#cart .product-line__image img, body#cart .cart__item img { border-radius: 12px; background: #f3f1ed; }
body#cart .product-line__title { color: #000218; font-size: 14px; font-weight: 800; text-decoration: none; }
body#cart .product-line__info { margin-top: 5px; color: #858a95; font-size: 10px; }
body#cart .product-line__info .value { color: #555b67; font-weight: 700; }
body#cart .product-line__current .price { color: #9A633F; font-size: 15px; font-weight: 850; }
body#cart .product-line__regular { color: #999ca4; font-size: 10px; }
body#cart .product-line__basic .discount { border-radius: 999px; background: #9A633F; color: #fff; }
body#cart .product-line-info a, body#cart .product-name a { color: #000218; font-weight: 780; text-decoration: none; }
body#cart .product-price, body#cart .current-price, body#cart .cart-summary__value { color: #000218; font-weight: 800; }
body#cart .bootstrap-touchspin, body#cart .js-cart-line-product-quantity { border-radius: 10px!important; }
body#cart .quantity-button .input-group { max-width: 132px; overflow: hidden; border: 1px solid #dddcd8; border-radius: 11px; background: #fff; }
body#cart .quantity-button .btn { width: 38px; border: 0; background: #f5f3ef; color: #000218; }
body#cart .quantity-button input { min-width: 46px; border: 0!important; text-align: center; font-weight: 800; box-shadow: none!important; }
body#cart .product-line__price { color: #000218; font-size: 15px; }
body#cart .remove-from-cart { display: inline-flex; min-height: 34px; align-items: center; justify-content: center; padding: 0 13px; border-radius: 999px; background: #f5f3ef; color: #858a96!important; font-size: 10px; font-weight: 750; transition: .2s ease; }
body#cart .remove-from-cart:hover { background: #f3ece5; color: #9A633F!important; }
.codebo-cart-continue { display: inline-flex; min-height: 44px; align-items: center; gap: 7px; margin-top: 10px; padding: 0 16px; border-radius: 11px; color: #000218; font-size: 11px; font-weight: 780; text-decoration: none!important; transition: background .2s ease, transform .2s ease; }
.codebo-cart-continue:hover { background: #f3f1ed; color: #9A633F; transform: translateX(-3px); }

body#cart .cart-grid__right { position: sticky; top: 116px; }
body#cart .cart-summary { overflow: hidden; }
body#cart .cart-summary .card-block { padding: 20px; }
body#cart .cart-summary__line { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 8px 0; color: #686e7b; font-size: 12px; }
body#cart .cart-summary__line:has(.cart-summary__label--sub) { display: none !important; }
body#cart .cart-summary__totals { margin-top: 6px; border-top: 1px solid #e8e7e3; background: #faf9f7; }
body#cart .cart-total { margin-top: 7px; padding-top: 15px; border-top: 1px dashed #d9d8d4; }
body#cart .cart-total .cart-summary__label, body#cart .cart-total .cart-summary__value { color: #000218; font-size: 18px; font-weight: 850; }
body#cart .checkout .btn-primary { min-height: 54px; border: 0; border-radius: 12px; background: #000218; color: #fff; font-size: 13px; font-weight: 800; box-shadow: 0 10px 25px rgba(0,2,24,.2); transition: background .2s ease, transform .2s ease, box-shadow .2s ease; }
body#cart .checkout .btn-primary:not(.disabled):hover { background: #9A633F; transform: translateY(-2px); box-shadow: 0 14px 28px rgba(154,99,63,.25); }
body#cart .checkout .btn-primary.disabled { background: #d4d2ce; color: #858585; box-shadow: none; }
.codebo-cart-secure { display: flex; align-items: center; gap: 10px; padding: 16px 20px; border-top: 1px solid #e8e7e3; background: #f3eee8; }.codebo-cart-secure>i { color: #9A633F; }.codebo-cart-secure span { display: flex; flex-direction: column; }.codebo-cart-secure strong { font-size: 11px; }.codebo-cart-secure small { margin-top: 2px; color: #7f838d; font-size: 9px; }

.codebo-cart-empty { display: grid; min-height: 350px; grid-template-columns: .75fr 1.25fr; align-items: center; gap: 45px; padding: clamp(30px,5vw,58px); overflow: hidden; border-radius: 16px; background: linear-gradient(135deg,#f2ece5,#fff); }
.codebo-cart-empty__visual { position: relative; display: flex; width: min(210px,100%); aspect-ratio: 1; align-items: center; justify-content: center; margin: auto; border-radius: 38% 62% 58% 42%/45% 42% 58% 55%; background: #fff; color: #9A633F; box-shadow: 0 20px 48px rgba(0,2,24,.1); animation: codeboCartFloat 5s ease-in-out infinite; }.codebo-cart-empty__visual span { position: absolute; inset: 18%; border-radius: 50%; background: #f1e9e1; }.codebo-cart-empty__visual svg { position: relative; width: 92px; height: 92px; }
.codebo-cart-empty__copy>span { color: #9A633F; font-size: 9px; font-weight: 850; letter-spacing: .16em; }.codebo-cart-empty h3 { margin: 10px 0 11px; color: #000218; font-size: clamp(27px,3.2vw,40px); font-weight: 820; letter-spacing: -.045em; }.codebo-cart-empty p { max-width: 520px; margin: 0; color: #686e7b; font-size: 14px; line-height: 1.7; }
.codebo-cart-empty__actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 23px; }.codebo-cart-empty__actions a { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 7px; padding: 0 18px; border-radius: 12px; font-size: 11px; font-weight: 800; text-decoration: none!important; transition: .2s ease; }.codebo-cart-empty__primary { background: #000218; color: #fff!important; }.codebo-cart-empty__secondary { border: 1px solid rgba(154,99,63,.35); background: #fff; color: #9A633F!important; }.codebo-cart-empty__actions a:hover { transform: translateY(-3px); }.codebo-cart-empty__primary:hover { background: #9A633F; }.codebo-cart-empty__secondary:hover { background: #f3ece5; }
@keyframes codeboCartFloat { 50% { transform: translateY(-9px) rotate(1deg); } }

@media(max-width:991.98px){body#cart .cart-grid__right{position:static;margin-top:30px}.codebo-cart-hero{align-items:flex-start;flex-direction:column}.codebo-cart-steps{width:100%;justify-content:center}.codebo-cart-steps li{flex:1}.codebo-cart-section-title--summary{margin-top:5px}}
@media(max-width:575.98px){body#cart #wrapper{padding-bottom:45px}.codebo-cart-hero{margin:3px 0 25px;padding:26px 20px;border-radius:19px}.codebo-cart-hero h1{font-size:36px}.codebo-cart-hero p{line-height:1.5}.codebo-cart-steps li{min-width:0}.codebo-cart-steps li span{font-size:8px}.codebo-cart-section-title{margin-bottom:12px}body#cart .cart-container{padding:9px;border-radius:16px}.codebo-cart-empty{grid-template-columns:1fr;gap:26px;padding:32px 17px;text-align:center}.codebo-cart-empty__visual{width:135px}.codebo-cart-empty__visual svg{width:65px;height:65px}.codebo-cart-empty__actions{flex-direction:column}.codebo-cart-empty__actions a{width:100%}body#cart .cart__item{padding:11px}.codebo-cart-section-title--summary{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.codebo-cart-empty__visual{animation:none}}

.codebo-cart-popup{position:fixed;z-index:12000;top:80px;right:18px;width:min(370px,calc(100vw - 24px));padding:20px;border:1px solid rgba(0,2,24,.1);border-radius:18px;background:rgba(255,255,255,.98);color:#000218;opacity:0;visibility:hidden;box-shadow:0 25px 70px rgba(0,2,24,.24);transform:translateY(-12px) scale(.97);transform-origin:top right;transition:opacity .22s ease,transform .28s cubic-bezier(.22,.8,.25,1),visibility .22s;backdrop-filter:blur(16px)}.codebo-cart-popup.is-visible{opacity:1;visibility:visible;transform:none}.codebo-cart-popup:before{position:absolute;top:-7px;right:18px;width:14px;height:14px;border-top:1px solid rgba(0,2,24,.1);border-left:1px solid rgba(0,2,24,.1);background:#fff;content:'';transform:rotate(45deg)}.codebo-cart-popup__close{position:absolute;top:10px;right:11px;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:#f1efeb;color:#000218;font-size:22px;line-height:28px;cursor:pointer}.codebo-cart-popup__success{display:flex;align-items:center;gap:8px;color:#9A633F;font-size:9px;font-weight:850;letter-spacing:.13em}.codebo-cart-popup__success i{display:flex;width:25px;height:25px;align-items:center;justify-content:center;border-radius:50%;background:#9A633F;color:#fff;font-size:15px}.codebo-cart-popup__product{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:13px;margin:16px 0;padding:12px;border-radius:13px;background:#f6f3ef}.codebo-cart-popup__product img{width:72px;height:72px;border-radius:10px;object-fit:cover}.codebo-cart-popup__product>div{display:flex;min-width:0;flex-direction:column}.codebo-cart-popup__product strong{color:#000218;font-size:13px;line-height:1.35}.codebo-cart-popup__product span{margin-top:6px;color:#9A633F;font-size:13px;font-weight:850}.codebo-cart-popup__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.codebo-cart-popup__actions button,.codebo-cart-popup__actions a{display:flex;min-height:43px;align-items:center;justify-content:center;padding:0 11px;border-radius:11px;font-size:10px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}.codebo-cart-popup__continue{border:1px solid #dddcd8;background:#fff;color:#000218}.codebo-cart-popup__actions a{border:1px solid #000218;background:#000218;color:#fff!important}@media(max-width:575.98px){.codebo-cart-popup{top:auto!important;right:12px!important;bottom:12px;width:calc(100vw - 24px);transform:translateY(18px) scale(.98);transform-origin:bottom center}.codebo-cart-popup:before{display:none}.codebo-cart-popup__actions{grid-template-columns:1fr}.codebo-cart-popup__product{grid-template-columns:60px 1fr}.codebo-cart-popup__product img{width:60px;height:60px}}
.codebo-surmesure-cart-image {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 14px;
  background: #f4f1ee;
  box-shadow: 0 7px 18px rgba(0, 2, 24, 0.08);
}
