/* cart.css — the Cart chip in the nav and the cart drawer, in the site's dress (see cart.js) */
.cart-chip{ cursor:pointer; gap:7px }
.cart-chip svg{ width:16px; height:16px; flex:none }
.cart-chip__n{ display:inline-grid; place-items:center; min-width:20px; height:20px; padding:0 6px; border-radius:999px; background:var(--ink); color:#fff; font-size:.7rem; font-weight:800; line-height:1 }
.cart-chip.is-full{ --accent:var(--c-bubble) }
.cart-dlg{ border:0; padding:0; background:transparent; color:var(--ink); width:min(520px,94vw); max-width:94vw; margin:auto }
.cart-dlg::backdrop{ background:rgba(42,33,54,.72) }
.cart-dlg__panel{ position:relative; background:#fff; border:2.5px solid var(--ink); border-radius:24px; box-shadow:0 0 0 6px rgba(255,249,242,.10), var(--sh-sticker); padding:24px 26px 22px; max-height:88vh; overflow:auto }
.cart-dlg__panel h2{ margin:0 0 14px; padding-right:48px; font-family:'Fraunces',Georgia,serif; font-style:italic; font-weight:400; font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 48; font-size:1.8rem; line-height:1.1 }
.cart-dlg__close{ position:absolute; right:12px; top:12px; z-index:5; width:40px; height:40px; padding:0; display:grid; place-items:center; border-radius:50%; background:var(--ground); color:var(--ink); border:2.5px solid var(--ink); box-shadow:var(--sh-chip); cursor:pointer; font-family:var(--font-display); font-size:1.05rem; line-height:1 }
.cart-dlg__close:hover{ transform:translateY(-2px) }
.cart-list{ list-style:none; margin:0; padding:0; display:grid; gap:10px }
.cart-item{ display:grid; grid-template-columns:64px minmax(0,1fr) auto; align-items:center; gap:12px; padding:10px 0; border-bottom:1.5px dashed var(--hairline) }
.cart-item img{ width:64px; height:64px; object-fit:cover; border:2px solid var(--ink); border-radius:12px; display:block }
.cart-item__meta{ display:flex; flex-direction:column; min-width:0 }
.cart-item__name{ font-family:'Fraunces',Georgia,serif; font-style:italic; font-size:1.1rem; color:var(--ink); text-decoration:none; line-height:1.2 }
.cart-item__name:hover{ text-decoration:underline; text-underline-offset:3px }
.cart-item__price{ font-family:var(--font-display); font-weight:700; margin-top:2px }
.cart-item__buy{ font-size:.72rem; font-weight:700; letter-spacing:.04em; color:var(--ink); white-space:nowrap }
.cart-item__rm{ width:32px; height:32px; padding:0; border:2px solid var(--ink); border-radius:50%; background:#fff; cursor:pointer; font-size:.85rem; line-height:1 }
.cart-item__rm:hover{ background:var(--ink); color:#fff }
.cart-ship{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin:12px 0 0; font-size:.92rem }
.cart-ship select{ margin-left:6px; padding:5px 8px; border:2px solid var(--ink); border-radius:10px; background:#fff; font:inherit; color:inherit }
.cart-ship__rate{ font-family:var(--font-display); font-weight:700 }
.cart-total{ display:flex; justify-content:space-between; align-items:baseline; margin:14px 0 0; font-family:var(--font-display); font-size:1.05rem }
.cart-total b{ font-size:1.35rem }
.cart-go{ margin:16px 0 0 }
.cart-go .btn{ width:100%; justify-content:center; text-align:center }
.cart-empty{ margin:0 0 6px; font-family:'Fraunces',Georgia,serif; font-style:italic; font-size:1.2rem }
.cart-hint{ margin:10px 0 0; font-size:.82rem; line-height:1.5; color:var(--ink-soft) }
.cart-hint a{ color:inherit }
/* on a piece's page */
.sp-buy{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px }
.sp-buy .sp-buy__wix{ font-size:.8rem; font-weight:700; color:var(--ink) }
@media (max-width:520px){ .cart-item{ grid-template-columns:56px minmax(0,1fr) auto } .cart-dlg__panel{ padding:20px 16px 18px } }
