.cart-trigger{position:relative;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:8px;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;cursor:pointer}
.cart-trigger svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cart-count{position:absolute;inset:-6px -6px auto auto;min-width:22px;padding:2px 5px;border-radius:20px;background:var(--ink,#222);color:var(--paper,#fff);font:600 12px/18px sans-serif}
.cart-count[hidden],.cart-footer[hidden]{display:none}
.cart-trigger:focus-visible,.cart-panel :focus-visible,.cart-add:focus-visible,.product-copy-summary:focus-visible{outline:3px solid #a24a2e;outline-offset:4px}
.cart-panel{box-sizing:border-box;position:fixed;inset:0 0 0 auto;width:min(100%,420px);max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:24px;border:0;background:var(--paper,#faf7f0);color:var(--ink,#222);overflow-y:auto;overscroll-behavior:contain;text-align:left;font-size:16px}
.cart-panel::backdrop{background:rgba(20,24,22,.52)}
.cart-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.cart-heading h2{margin:0;font-size:clamp(1.5rem,4vw,1.85rem)}
.cart-close{flex:0 0 44px;min-width:44px;height:44px;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;font-size:28px;cursor:pointer}
.cart-content,.cart-row-content{min-width:0}
.cart-empty{margin:0 0 16px}
.cart-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;padding:20px 0;border-top:1px solid #cecac1}
.cart-thumb{display:block;width:64px;height:80px}
.cart-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.cart-product-name{font-weight:600;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}
.cart-unit-price{margin:8px 0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.cart-colors{list-style:none;margin:10px 0;padding:0;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.cart-row-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}
.cart-quantity{display:flex;align-items:center;border:1px solid #aaa59a;border-radius:4px}
.cart-quantity button{width:44px;min-width:44px;height:44px;padding:0;border:0;background:transparent;color:inherit;font-size:20px;cursor:pointer}
.cart-quantity button:disabled{opacity:.35;cursor:default}
.cart-quantity span{min-width:24px;text-align:center;font-variant-numeric:tabular-nums}
.cart-remove,.cart-copy{border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:4px;min-height:44px;font:inherit;cursor:pointer;padding:4px 0}
.cart-remove{font-size:14px}
.cart-footer{border-top:1px solid #aaa59a;margin-top:12px;padding-top:24px}
.cart-subtotal{font-weight:600;line-height:1.5;margin:0 0 12px}
.cart-freight{font-size:14px;line-height:1.6;margin:0 0 24px}
.cart-order{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.cart-order .button{width:100%;min-width:0;white-space:normal;gap:12px}
.cart-order .under-link,.cart-order .cart-copy{align-self:flex-start;display:flex;align-items:center;min-height:44px;margin:0}
.cart-add-area{margin:24px 0 8px}
.cart-add{display:block;min-height:48px;padding:12px 20px;border:1px solid currentColor;background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer}
.cart-add:hover{background:rgba(60,60,40,.06)}
.cart-add-status{min-height:22px;margin:6px 0 0;font-size:14px;line-height:22px}
.product-copy-summary{display:block;margin:8px 0}
.cart-copy-fallback{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;user-select:text}
.cart-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:959px){.site-header .cart-trigger{margin-left:auto}.site-header .menu-toggle{margin-left:0}}
@media(max-width:767px){.cart-panel{padding:20px;width:100%}}
