.vemoria-cart{position:fixed;inset:0 0 0 auto;margin:0;width:min(100%,480px);max-width:100%;height:100dvh;max-height:100dvh;padding:0;border:0;background:#FAF9F6;color:#25343C;box-shadow:-16px 0 60px #25343c22;font-family:var(--font-body--family, sans-serif)}
.vemoria-cart[open]{display:flex;flex-direction:column}
.vemoria-cart::backdrop{background:#25343c66}
.vemoria-cart__header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid #25343c22;flex-shrink:0}
.vemoria-cart__header h2{font-family:var(--font-heading--family,sans-serif);font-size:26px;line-height:1.2;margin:0}
.vemoria-cart__close{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:32px;line-height:1;cursor:pointer}
.vemoria-cart__content{flex:1;overflow-y:auto;padding:24px;min-height:0}
.vemoria-cart__item{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:14px;padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #25343c22}
.vemoria-cart__item img{display:block;width:80px;height:80px;object-fit:cover;border-radius:10px;background:#fff}
.vemoria-cart__details{min-width:0}
.vemoria-cart__details h3{font:inherit;font-size:15px;font-weight:600;line-height:1.4;margin:0 0 8px}
.vemoria-cart__color{font-size:14px;line-height:1.5;margin:0 0 14px;color:#52636A}
.vemoria-cart__line-price{font-size:14px;font-weight:600;line-height:1.5;margin:0;white-space:nowrap}
.vemoria-cart__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vemoria-cart__quantity{display:flex;border:1px solid #25343c44;border-radius:8px;overflow:hidden;min-height:42px}
.vemoria-cart__quantity button{width:30px;min-height:40px;background:transparent;border:0;color:inherit;font-size:18px;cursor:pointer}
.vemoria-cart__quantity button:disabled{opacity:.35;cursor:default}
.vemoria-cart__quantity input{width:34px;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:14px;text-align:center;appearance:textfield}
.vemoria-cart__quantity input::-webkit-inner-spin-button,.vemoria-cart__quantity input::-webkit-outer-spin-button{appearance:none;margin:0}
.vemoria-cart__remove,.vemoria-cart__continue{background:transparent;border:0;padding:4px 0;color:inherit;font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.vemoria-cart__footer{padding:22px 24px;border-top:1px solid #25343c22;flex-shrink:0}
.vemoria-cart__subtotal{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:18px;line-height:1.5}
.vemoria-cart__shipping,.vemoria-cart__note{font-size:13px;line-height:1.6;margin:10px 0 16px}
.vemoria-cart__primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:14px 20px;border:0;border-radius:10px;background:#397C78;color:#FAF9F6;text-decoration:none;font:inherit;font-size:16px;font-weight:600;box-sizing:border-box}
.vemoria-cart__primary:disabled{opacity:.7;cursor:not-allowed}
.vemoria-cart__note{margin:12px 0;color:#52636A}
.vemoria-cart__continue{display:block;margin:0 auto;font-size:14px;min-height:36px}
.vemoria-cart__empty{text-align:center;margin:30px auto;max-width:320px}
.vemoria-cart__empty h3{font-family:var(--font-heading--family,sans-serif);font-size:24px;line-height:1.3;margin:0 0 14px}
.vemoria-cart__empty p{font-size:16px;line-height:1.6;margin:0 0 24px}
.vemoria-cart button:focus-visible,.vemoria-cart a:focus-visible,.vemoria-cart input:focus-visible{outline:2px solid #397C78;outline-offset:3px}
.vemoria-purchase__button[data-vemoria-add]:enabled{width:100%;min-height:54px;border:0;border-radius:10px;background:#397C78;color:#FAF9F6;font:inherit;font-weight:600;cursor:pointer}
@media(max-width:389px){.vemoria-cart__header,.vemoria-cart__content,.vemoria-cart__footer{padding-left:18px;padding-right:18px}.vemoria-cart__item{grid-template-columns:66px minmax(0,1fr);gap:12px}.vemoria-cart__item img{width:66px;height:66px}.vemoria-cart__line-price{grid-column:2;margin-top:-12px}}
@media(prefers-reduced-motion:no-preference){.vemoria-cart[open]{animation:vemoria-cart-enter .2s ease-out}@keyframes vemoria-cart-enter{from{transform:translateX(24px);opacity:0}to{transform:translateX(0);opacity:1}}}
