.rb-bag-drawer{box-sizing:border-box;position:fixed;inset:0 0 0 auto;margin:0;width:440px;max-width:100%;height:100dvh;max-height:100dvh;border:0;padding:0;background:#fff;color:#111;font:14px Lato,Arial,sans-serif;overflow:hidden;transform:translateX(100%);transition:transform .24s ease}
.rb-bag-drawer[open]{display:flex;flex-direction:column}.rb-bag-drawer.is-visible{transform:none}.rb-bag-drawer::backdrop{background:#0003;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.rb-bag-drawer *{box-sizing:border-box}.rb-bag-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #eee;min-height:64px;flex:none}.rb-bag-header h2{font:600 14px Lato,Arial;margin:0;color:#39815a}.rb-bag-header h2 span{display:inline-grid;place-items:center;border:1px solid;border-radius:50%;width:19px;height:19px;margin-right:8px}
.rb-bag-close{border:0;background:none;width:36px;height:36px;display:grid;place-items:center;padding:8px;cursor:pointer}.rb-bag-close svg{width:22px;height:22px;fill:none;stroke:#111;stroke-width:1.3}
.rb-bag-content{flex:1;overflow-y:auto;overscroll-behavior:contain}.rb-bag-product{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:14px;padding:24px 16px;border-bottom:1px solid #eee}.rb-bag-image{display:block;align-self:start;background:#f2f2f2;aspect-ratio:1}.rb-bag-image img{width:100%;height:100%;object-fit:contain;display:block}.rb-bag-title{display:block;font:500 17px/1.3 Oswald,Arial,sans-serif;color:inherit;text-decoration:none}.rb-bag-price{font:500 17px Oswald,Arial;white-space:nowrap}.rb-bag-specs{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;font:12px/1.4 Lato,Arial;margin:10px 0}.rb-bag-specs dt{font-weight:700}.rb-bag-specs dd{margin:0}.rb-bag-quantity{font-size:12px;color:#555;margin:8px 0 0}.rb-bag-service{margin:28px 16px;padding:20px 16px;background:#f5f5f5}.rb-bag-service h3{font:500 17px Oswald;margin:0 0 10px}.rb-bag-service p{font-size:13px;line-height:1.5;margin:0}
.rb-bag-footer{flex:none;background:#f5f5f5;padding:14px 16px max(16px,env(safe-area-inset-bottom));border-top:1px solid #e5e5e5;display:grid;gap:8px}.rb-bag-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font:500 17px Oswald}.rb-bag-total strong{font-weight:500;font-size:22px}.rb-bag-continue,.rb-bag-open{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;border:1px solid #111;border-radius:0;background:white;color:#111;font:500 15px Oswald,sans-serif;text-decoration:none;cursor:pointer}.rb-bag-open{background:#ed0000;border-color:#ed0000;color:white}.rb-bag-open:hover{background:#cf0000;color:white}.rb-bag-continue:hover{background:#eee}
.rb-bag-is-open .micro-alerts .success-notice,.rb-bag-is-open [class*="notification_add_to_cart"]{visibility:hidden!important}
[data-theme-template="cart"] .layout:has([data-cart-form])>.layout__content{max-width:1120px!important;margin:0 auto!important;padding:24px!important}[data-theme-template="cart"] .layout:has([data-cart-form]) h1.heading{font:500 26px Oswald;margin:22px 0 28px}
[data-theme-template="cart"] form.cart{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:48px;font-family:Lato,Arial}[data-theme-template="cart"] .cart__area-items{min-width:0}[data-theme-template="cart"] .cart__area-controls{width:auto!important;min-width:0}[data-theme-template="cart"] .cart__area-controls-sticky{position:sticky;top:100px;background:white!important}
[data-theme-template="cart"] .cart-item{display:grid!important;grid-template-columns:190px minmax(0,1fr) auto;grid-template-areas:'image title total' 'image specs specs' 'image delete counter';gap:12px 18px;border-bottom:1px solid #ddd;padding:0 0 28px;margin:0 0 28px;align-items:start}[data-theme-template="cart"] .cart-item>.item-image{grid-area:image;width:auto!important;height:auto!important}[data-theme-template="cart"] .cart-item>.item-title{grid-area:title;font:500 18px/1.3 Oswald;margin:0}[data-theme-template="cart"] .cart-item>.item-title .variant-title{display:none}[data-theme-template="cart"] .cart-item>.rb-bag-specs{grid-area:specs;margin:0;font-size:13px;justify-content:start}[data-theme-template="cart"] .cart-item>.item-total{grid-area:total;font:500 18px Oswald;white-space:nowrap}[data-theme-template="cart"] .cart-item>.item-price{display:none}[data-theme-template="cart"] .cart-item>.item-counter{grid-area:counter;align-self:end}[data-theme-template="cart"] .cart-item>.item-delete{grid-area:delete;align-self:end}[data-theme-template="cart"] .item-delete button{font:12px Lato;color:#555;padding:4px;background:none}[data-theme-template="cart"] .counter{width:104px}[data-theme-template="cart"] .item-image img{object-fit:contain!important;background:#f2f2f2}
[data-theme-template="cart"] .cart__area-count,[data-theme-template="cart"] .cart__area-coupon{background:white!important;padding:0!important}[data-theme-template="cart"] .sidebar_header{font:500 23px Oswald!important;margin:0 0 24px!important}[data-theme-template="cart"] .sidebar-size-items,[data-theme-template="cart"] .cart__area-coupon>.total{display:none}.rb-order-summary>div{display:flex;justify-content:space-between;gap:20px;margin:16px 0;font-size:13px}.rb-order-summary .rb-order-grand{border-top:1px solid #ddd;padding-top:20px;font-size:15px;margin-top:24px}[data-theme-template="cart"] .cart-controls{margin-top:18px}[data-theme-template="cart"] [data-cart-submit]{background:#ed0000!important;color:white!important;border:0!important;border-radius:0;min-height:46px;font:500 17px Oswald!important}[data-theme-template="cart"] .coupon-header{font:14px Lato;border:1px solid #ddd;padding:14px;margin:24px 0 0;cursor:pointer}[data-theme-template="cart"] #rb-cart-hint{font:12px/1.5 Lato,Arial;margin:16px 0;padding:0;color:#555}[data-theme-template="cart"] .coupon-content{margin-top:16px}
@media(max-width:767px){.rb-bag-drawer{width:100%}.rb-bag-product{grid-template-columns:80px minmax(0,1fr) auto;gap:10px}.rb-bag-title,.rb-bag-price{font-size:16px}[data-theme-template="cart"] .layout:has([data-cart-form])>.layout__content{padding:20px!important}[data-theme-template="cart"] form.cart{grid-template-columns:1fr;gap:12px}[data-theme-template="cart"] .cart-item{grid-template-columns:100px minmax(0,1fr) auto;gap:10px}[data-theme-template="cart"] .cart-item>.item-title,[data-theme-template="cart"] .cart-item>.item-total{font-size:16px}[data-theme-template="cart"] .cart-item>.rb-bag-specs{font-size:12px}[data-theme-template="cart"] .cart__area-controls-sticky{position:static}[data-theme-template="cart"] .layout:has([data-cart-form]) h1.heading{font-size:24px}[data-theme-template="cart"] .item-counter{max-width:104px}.rb-bag-specs{gap:4px 8px}}
@media(prefers-reduced-motion:reduce){.rb-bag-drawer{transition:none}}
/* Measured against Ray-Ban rb-panel and rb-minicart component CSS, 2026-10-03. */
.rb-bag-drawer{width:512px;transition:transform 300ms ease}
.rb-bag-drawer::backdrop{background:rgba(0,0,0,.1);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px)}
.rb-bag-header{height:64px;min-height:64px;margin-bottom:24px;padding:0 16px;border:0}.rb-bag-header h2{color:#1c8846;font-weight:700}
.rb-bag-product{grid-template-columns:108px minmax(0,1fr) auto;gap:16px;padding:16px;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2}
.rb-bag-image{display:grid;place-items:center}.rb-bag-image img{width:80%;height:auto}.rb-bag-title{font-size:16px;line-height:1.6}.rb-bag-price{font-size:16px}.rb-bag-product .rb-bag-specs{font-size:14px;line-height:1.6;grid-template-columns:1.2fr 2fr;gap:2px 8px}.rb-bag-model{font:12px/1.4 Lato;color:#666;margin:0 0 8px}
.rb-bag-footer{background:rgba(242,242,242,.6);backdrop-filter:blur(25px);border:0;padding:16px 16px max(16px,env(safe-area-inset-bottom))}.rb-bag-total{font-size:14px;margin-bottom:8px}.rb-bag-total strong{font-size:24px}.rb-bag-open,.rb-bag-continue{min-height:40px;font-size:14px;line-height:1.6;padding:9px 24px}
@media(max-width:1023px){.rb-bag-drawer{width:100%;max-width:512px}.rb-bag-header{height:48px;min-height:48px;margin-bottom:16px}.rb-bag-product{gap:8px;border:0}.rb-bag-product .rb-bag-specs{font-size:13px}.rb-bag-title{font-size:16px}}
@media(prefers-reduced-motion:reduce){.rb-bag-drawer{transition:none}}
/* Override the theme widget's explicit row/column placement. */
body[data-theme-template="cart"] .page_layout main .layout:has([data-cart-form]) > .layout__content{max-width:1180px!important;width:100%!important;padding:24px!important;margin:0 auto!important}
body[data-theme-template="cart"] form.cart{width:100%!important;grid-template-areas:'items controls'!important;grid-template-columns:minmax(0,2fr) minmax(280px,1fr)!important;grid-template-rows:auto!important}
body[data-theme-template="cart"] form.cart.hidden{display:none!important}
body[data-theme-template="cart"] .cart__area-items{grid-area:items!important}
body[data-theme-template="cart"] .cart__area-controls{grid-area:controls!important}
body[data-theme-template="cart"] .cart-item{grid-template-columns:170px minmax(0,1fr) auto!important;grid-template-rows:auto auto auto!important;grid-template-areas:'image title total' 'image specs specs' 'image delete counter'!important;width:100%!important}
body[data-theme-template="cart"] .cart-item > :is(.item-image,.item-title,.item-total,.item-counter,.item-delete,.rb-bag-specs){position:static!important;min-width:0!important;max-width:none!important;width:auto!important;margin:0!important}
body[data-theme-template="cart"] .cart-item>.item-image{grid-area:image!important}
body[data-theme-template="cart"] .cart-item>.item-title{grid-area:title!important}
body[data-theme-template="cart"] .cart-item>.item-total{grid-area:total!important}
body[data-theme-template="cart"] .cart-item>.rb-bag-specs{grid-area:specs!important}
body[data-theme-template="cart"] .cart-item>.item-delete{grid-area:delete!important}
body[data-theme-template="cart"] .cart-item>.item-counter{grid-area:counter!important}
@media(max-width:767px){
 body[data-theme-template="cart"] form.cart{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:'items' 'controls'!important;grid-template-rows:auto auto!important}
 body[data-theme-template="cart"] .cart-item{grid-template-columns:100px minmax(0,1fr)!important;grid-template-areas:'image title' 'image total' 'specs specs' 'delete counter'!important;grid-template-rows:auto auto auto auto!important}
 body[data-theme-template="cart"] .cart-item>.item-counter{justify-self:end}
 body[data-theme-template="cart"] .cart-item>.rb-bag-specs{grid-template-columns:auto 1fr}
 body[data-theme-template="cart"] .page_layout main .layout:has([data-cart-form]) > .layout__content{padding:20px!important}
}
body[data-theme-template="cart"] .cart__area-controls{margin:0!important}
body[data-theme-template="cart"] .cart-item>.item-counter{padding:0!important;border:0!important}
body[data-theme-template="cart"] .counter{display:flex!important;width:104px!important}
body[data-theme-template="cart"] .counter .counter-button{flex:0 0 30px!important;min-width:30px!important;width:30px!important;padding:0!important}
body[data-theme-template="cart"] .counter .counter-input{flex:1 1 44px!important;min-width:0!important;width:44px!important;padding:0!important}

/* Apply layout from server-rendered attributes, before the cart API initializes. */
body[data-theme-template="cart"] .layout:has([data-cart-form]) h1.heading{text-transform:uppercase}
