/* Shopify cart: header entry point, side drawer, merch buy box and toast.
   Uses the gallery's ink/cream palette directly — --bg and --paper resolve to the
   same cream on these pages, so they can't be used as a text/background pair. */
.cart-trigger{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 4px;background:none;border:0;color:inherit;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.cart-trigger svg{width:19px;height:19px}
.cart-trigger:hover{opacity:.62}
.cart-count{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--ink,#24241f);color:#fff;font-size:11px;font-weight:700}
.cart-count[hidden]{display:none}

#cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(430px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-left:1px solid var(--line,#d5cdbd);border-radius:0;display:flex;flex-direction:column;padding:0;background:#fff;color:var(--ink,#24241f)}
#cart-drawer:not([open]){display:none}
#cart-drawer::backdrop{background:#24241fb0}
.cart-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;border-bottom:1px solid var(--line,#d5cdbd)}
.cart-head p{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.cart-close{display:grid;place-items:center;width:42px;height:42px;background:none;color:inherit}
.cart-close svg{width:19px;height:19px}
.cart-close:hover{opacity:.6}
.cart-body{flex:1;overflow-y:auto;padding:8px 22px}
.cart-empty{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding-block:40px;color:var(--quiet,#69685d)}
.cart-item{display:grid;grid-template-columns:64px 1fr auto;gap:14px;padding-block:18px;border-bottom:1px solid var(--line,#d5cdbd)}
.cart-item:last-child{border-bottom:0}
.cart-item-image{width:64px;height:64px;background:var(--cream,#eee9de);overflow:hidden}
.cart-item-image img{width:100%;height:100%;object-fit:cover}
.cart-item-copy{min-width:0}
.cart-item-title{font-size:15px;font-weight:700;color:var(--ink,#24241f)}
.cart-item-variant{font-size:12px;color:var(--quiet,#69685d);margin-top:4px}
.cart-item-price{font-size:14px;margin-top:8px}
.cart-item-tools{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:10px}
.cart-remove{display:grid;place-items:center;width:32px;height:32px;background:none;color:var(--quiet,#69685d)}
.cart-remove svg{width:16px;height:16px}
.cart-remove:hover{color:var(--ink,#24241f)}
.cart-qty{display:flex;align-items:center;border:1px solid var(--line,#d5cdbd)}
.cart-qty button{display:grid;place-items:center;width:30px;height:30px;background:none;color:var(--ink,#24241f)}
.cart-qty button svg{width:13px;height:13px}
.cart-qty button:hover{opacity:.6}
.cart-qty span{min-width:28px;text-align:center;font-size:13px}
.cart-foot{border-top:1px solid var(--line,#d5cdbd);padding:18px 22px 22px}
.cart-total{display:flex;align-items:center;justify-content:space-between;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--quiet,#69685d)}
.cart-total strong{font-size:22px;letter-spacing:-.01em;color:var(--ink,#24241f)}
.cart-checkout{width:100%;margin-top:16px}
.cart-checkout:disabled{opacity:.55}
.cart-note{font-size:11px;color:var(--quiet,#69685d);margin-top:12px;line-height:1.6}

.product-buy{margin-top:28px}
.size-picker-label{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--quiet,#69685d)}
.size-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.size-option{min-width:56px;min-height:46px;padding:11px 14px;background:none;border:1px solid var(--line,#d5cdbd);color:var(--ink,#24241f);font-size:14px}
.size-option:hover{border-color:var(--ink,#24241f)}
.size-option[aria-pressed=true]{background:var(--ink,#24241f);border-color:var(--ink,#24241f);color:#fff}
.size-option:disabled{opacity:.4;text-decoration:line-through}
.product-buy .button{width:100%;margin-top:22px}
.product-buy .button:disabled{opacity:.6}

.cart-toast{position:fixed;top:96px;left:50%;transform:translateX(-50%);z-index:90;display:grid;gap:4px;max-width:min(420px,calc(100vw - 32px));padding:14px 18px;background:var(--ink,#24241f);color:#fff;box-shadow:0 14px 40px #24241f59}
.cart-toast strong{font-size:13px;letter-spacing:.05em;text-transform:uppercase}
.cart-toast span{font-size:12px;line-height:1.5;opacity:.8}

@media(max-width:600px){
  .cart-trigger-label{display:none}
  .cart-trigger{padding:8px 2px}
  #cart-drawer{width:100vw}
  .cart-head{padding:14px 16px}
  .cart-body{padding:6px 16px}
  .cart-foot{padding:16px}
  .cart-toast{top:80px}
}
