/* Header cart entry and right-side cart drawer. Loaded on every page when the cart is enabled. */
.header-cart{display:inline-flex;flex:none}
.header-cart[hidden]{display:none}
.gallery-ui .header-actions .cart-trigger{position:relative;display:grid;place-items:center;width:44px;min-width:44px;height:44px;padding:0;border:0;border-radius:var(--ac-radius-md);background:transparent;color:var(--ac-fg);cursor:pointer}
@media(hover:hover) and (pointer:fine){.gallery-ui .header-actions .cart-trigger:hover{background:var(--ac-secondary);color:var(--ac-accent)}}
.cart-count{position:absolute;inset-block-start:4px;inset-inline-end:2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--ac-fg);color:var(--ac-bg);font-size:11px;line-height:18px;font-weight:var(--ac-weight-medium);text-align:center;font-variant-numeric:tabular-nums}
.cart-count[hidden]{display:none}

/* Drawer: Radix Dialog positioned as a right sheet; surface from .ac-dialog. */
.cart-drawer-overlay{z-index:var(--ac-z-overlay)}
.ac-dialog.cart-drawer{position:fixed;inset-block:0;inset-inline-end:0;inset-inline-start:auto;z-index:var(--ac-z-modal);display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(420px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;overflow:hidden;border-block:0;border-inline-end:0;border-radius:var(--ac-radius-xl) 0 0 var(--ac-radius-xl);box-shadow:var(--ac-shadow-lg)}
.cart-drawer[data-state=open]{animation:cart-drawer-in var(--ac-duration-base) var(--ac-ease-standard)}
.cart-drawer[data-state=closed]{animation:cart-drawer-out var(--ac-duration-fast,150ms) var(--ac-ease-standard)}
@keyframes cart-drawer-in{from{transform:translateX(100%)}}
@keyframes cart-drawer-out{to{transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){.cart-drawer[data-state]{animation:none}}
.cart-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:var(--ac-space-3);padding:var(--ac-space-4) var(--ac-space-4) var(--ac-space-4) var(--ac-space-6);border-bottom:1px solid var(--ac-border)}
.cart-drawer-head .ac-dialog-title{display:flex;align-items:center;gap:var(--ac-space-2)}
.cart-drawer-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--ac-secondary);color:var(--ac-fg-muted);font-size:var(--ac-text-sm);font-weight:var(--ac-weight-medium);font-variant-numeric:tabular-nums}
.cart-drawer-body{overflow-y:auto;overscroll-behavior:contain;padding:var(--ac-space-2) var(--ac-space-6);display:grid;align-content:start;gap:var(--ac-space-4)}
.cart-drawer-foot{display:grid;gap:var(--ac-space-3);padding:var(--ac-space-4) var(--ac-space-6) max(var(--ac-space-5),env(safe-area-inset-bottom));border-top:1px solid var(--ac-border);background:var(--ac-surface-raised)}
.cart-drawer .cart-empty{padding-block:var(--ac-space-10);text-align:center;justify-items:center}
.cart-result{display:grid;gap:var(--ac-space-3);padding-top:var(--ac-space-4)}
.cart-items{list-style:none;margin:0;padding:0;display:grid}
.cart-item{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:var(--ac-space-3);align-items:center;padding-block:var(--ac-space-4);border-bottom:1px solid var(--ac-border)}
.cart-item:last-child{border-bottom:0}
.cart-item.is-unavailable .cart-item-art{opacity:.45}
.cart-item-art{display:block;aspect-ratio:1536/969;border-radius:var(--ac-radius-card);overflow:hidden;background:var(--ac-surface)}
.cart-item-art img{width:100%;height:100%;object-fit:cover;display:block}
.cart-item-body{display:grid;gap:2px;min-width:0;justify-items:start}
.cart-item-body .ac-help{margin:0;font-size:var(--ac-text-sm)}
.cart-item-title{color:var(--ac-fg);font-weight:var(--ac-weight-medium);text-decoration:none;overflow-wrap:anywhere;line-height:1.4}
.cart-item-title:hover{color:var(--ac-accent)}
.cart-item-price{display:inline-flex;align-items:baseline;gap:var(--ac-space-2);font-variant-numeric:tabular-nums}
.cart-item-price del{color:var(--ac-fg-muted);font-size:var(--ac-text-sm)}
.cart-item-price strong{font-weight:var(--ac-weight-medium)}
.cart-bundle{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ac-space-2);padding:var(--ac-space-3) var(--ac-space-4);border-radius:var(--ac-radius-md);background:var(--ac-surface);font-size:var(--ac-text-sm)}
.cart-bundle.is-applied{color:var(--ac-fg);font-weight:var(--ac-weight-medium)}
.cart-totals{margin:0;display:grid;gap:var(--ac-space-2)}
.cart-totals>div{display:flex;justify-content:space-between;gap:var(--ac-space-3);font-variant-numeric:tabular-nums}
.cart-totals dt{color:var(--ac-fg-muted)}
.cart-totals dd{margin:0}
.cart-total{padding-top:var(--ac-space-2);border-top:1px solid var(--ac-border);font-size:var(--ac-text-lg,1.125rem);font-weight:var(--ac-weight-medium)}
.cart-total dt{color:var(--ac-fg)}
.cart-drawer .ac-choice{font-size:var(--ac-text-sm)}
.cart-policy{margin:0;display:grid;gap:2px;font-size:var(--ac-text-sm);line-height:var(--ac-leading-sm,1.5)}
.cart-policy dt{font-weight:var(--ac-weight-medium);color:var(--ac-fg)}
.cart-policy dd{margin:0;color:var(--ac-fg-muted)}
.cart-note{margin:0;text-align:center;font-size:var(--ac-text-sm)}
@media(width < 640px){.ac-dialog.cart-drawer{width:100vw;border-radius:0}}
