.dg-cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(100%,480px);height:100dvh;max-width:100%;max-height:100dvh;padding:0;border:0;border-radius:0;background:#fff;color:#111;box-shadow:-12px 0 70px #0002;overflow:hidden}
.dg-cart-drawer::backdrop{background:#10101465;backdrop-filter:blur(4px)}
.dg-cart-drawer[open]{animation:dg-cart-enter .46s cubic-bezier(.16,1,.3,1) both}
.dg-cart-drawer[open]::backdrop{animation:dg-cart-backdrop-in .3s ease both}
.dg-cart-drawer[open][data-closing]{animation:dg-cart-exit .28s cubic-bezier(.4,0,.7,.2) both;pointer-events:none}
.dg-cart-drawer[open][data-closing]::backdrop{animation:dg-cart-backdrop-out .28s ease both}
.dg-cart-drawer[open]:not([data-closing]) .dg-cart-line{animation:dg-cart-item-in .38s cubic-bezier(.16,1,.3,1) both}
.dg-cart-drawer[open]:not([data-closing]) .dg-cart-line:nth-child(2){animation-delay:40ms}
.dg-cart-drawer[open]:not([data-closing]) .dg-cart-line:nth-child(3){animation-delay:80ms}
.dg-cart-drawer[open]:not([data-closing]) .dg-cart-line:nth-child(n+4){animation-delay:120ms}
.dg-cart-shell{display:flex;flex-direction:column;height:100%;min-height:0}
.dg-cart-header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid #ececf0;flex-shrink:0}
.dg-cart-header h2{display:flex;align-items:center;gap:12px;margin:0;font-size:27px;letter-spacing:-1.1px}
.dg-cart-header h2 span{display:grid;place-items:center;min-width:25px;height:25px;border:1px solid #e5e5e9;border-radius:50%;font-size:11px;letter-spacing:0;font-weight:500}
.dg-cart-header button{width:40px;height:40px;border:1px solid #e5e5e9;border-radius:50%;background:#fff;font-family:inherit;font-size:24px;line-height:1;cursor:pointer}
.dg-cart-mount,.dg-cart-content{display:flex;flex-direction:column;flex:1;min-height:0}
.dg-cart-lines{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 24px}
.dg-cart-line{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;padding:24px 0;border-bottom:1px solid #ededf0}
.dg-cart-image{display:block;width:88px;height:106px;border:1px solid #eeeef2;border-radius:12px;overflow:hidden;background:#f7f7f9}
.dg-cart-image img{width:100%;height:100%;object-fit:cover}
.dg-cart-line-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.dg-cart-line-head h3{margin:1px 0 7px;font-size:16px;line-height:1.25;letter-spacing:-.4px}
.dg-cart-line-head strong{font-size:13px;white-space:nowrap;margin-top:3px}
.dg-cart-variant,.dg-cart-property{font-size:11px;line-height:1.5;color:#7b7b84;margin:0 0 7px;overflow-wrap:anywhere}
.dg-cart-discount{font-size:11px;color:#66715e;margin:6px 0}
.dg-cart-line-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px}
.dg-cart-quantity{display:flex;align-items:center;height:34px;border:1px solid #e2e2e8;border-radius:9px;padding:2px}
.dg-cart-quantity button{border:0;background:none;font-size:17px;width:30px;height:28px;cursor:pointer}
.dg-cart-quantity input{width:33px;min-width:0;border:0;padding:0;background:none;text-align:center;font-size:12px;appearance:textfield;-moz-appearance:textfield}
.dg-cart-quantity input::-webkit-inner-spin-button,.dg-cart-quantity input::-webkit-outer-spin-button{appearance:none;margin:0}
.dg-cart-quantity button:disabled{opacity:.25;cursor:default}
.dg-cart-remove,.dg-cart-adjust{border:0;background:none;font-size:10px;color:#787880;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:7px 0}
.dg-cart-stock-error,.dg-cart-message,.dg-stock-message{font-size:11px;line-height:1.5;color:#b5231d}
.dg-cart-stock-error{margin:10px 0 0}.dg-stock-message{margin:10px 0}
.dg-cart-message{flex-shrink:0;margin:0;padding:12px 24px;background:#fff5f3;border-bottom:1px solid #ffe6e0}
.dg-cart-message[hidden],.dg-stock-message[hidden],.dg-cart-retry[hidden]{display:none}
.dg-cart-footer{flex-shrink:0;border-top:1px solid #e9e9ef;background:#fff;padding:22px 24px max(24px,env(safe-area-inset-bottom))}
.dg-cart-total{display:flex;justify-content:space-between;align-items:center;font-size:15px}.dg-cart-total strong{font-size:23px;letter-spacing:-.7px}
.dg-cart-tax{font-size:10px;line-height:1.5;color:#82828b;margin:10px 0 17px}
.dg-cart-checkout{display:flex;justify-content:space-between;align-items:center;width:100%;height:54px;min-height:54px;margin:0;padding:14px 19px;border-radius:12px;font-size:14px}
.dg-cart-checkout:disabled{opacity:.45;cursor:default}
.dg-cart-empty{display:grid;align-content:center;justify-items:center;flex:1;gap:18px;padding:32px;text-align:center}.dg-cart-empty>span{font-size:50px;color:var(--red,#ef0800)}.dg-cart-empty h3{font-size:22px;letter-spacing:-.7px;margin:0}.dg-cart-empty .primary-button{font-size:13px;min-height:45px}
.dg-cart-loading{padding:35px 24px;color:#777780;font-size:13px}.dg-cart-retry{margin:0 24px 24px;padding:12px;border:1px solid #dddde5;border-radius:10px;background:#fff;cursor:pointer}
.dg-cart-mount[aria-busy=true]{opacity:.6;pointer-events:none}
body:has(.dg-cart-drawer[open]){overflow:hidden}
@keyframes dg-cart-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes dg-cart-exit{from{transform:translateX(0)}to{transform:translateX(100%)}}
@keyframes dg-cart-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes dg-cart-backdrop-out{from{opacity:1}to{opacity:0}}
@keyframes dg-cart-item-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.dg-cart-header{padding:18px}.dg-cart-lines{padding:0 18px}.dg-cart-line{grid-template-columns:76px minmax(0,1fr);gap:13px;padding:20px 0}.dg-cart-image{width:76px;height:94px}.dg-cart-footer{padding:18px 18px max(20px,env(safe-area-inset-bottom))}.dg-cart-message{padding:11px 18px}.dg-cart-line-head h3{font-size:15px}.dg-cart-header h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.dg-cart-drawer[open],.dg-cart-drawer[open][data-closing],.dg-cart-drawer[open]::backdrop,.dg-cart-drawer[open][data-closing]::backdrop,.dg-cart-drawer[open]:not([data-closing]) .dg-cart-line{animation:none}.dg-cart-drawer::backdrop{backdrop-filter:none}}
