/* Shop: header cart icon (loaded on every public page while the shop is enabled) */
.nav-cart { position: relative; display: inline-grid; place-items: center; width: 2.6rem; height: 2.6rem; flex: none; border-radius: 50%; border: 1.5px solid var(--line); color: var(--ink); background: var(--paper); transition: border-color 0.2s var(--ease), transform 0.2s var(--ease); }
.nav-cart:hover { border-color: var(--ink); transform: translateY(-1px); }
.nav-cart:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.nav-cart-count { position: absolute; top: -0.3rem; inset-inline-end: -0.35rem; min-width: 1.3rem; height: 1.3rem; padding: 0 0.3rem; border-radius: 999px; background: var(--accent); color: #fff; font-size: 0.72rem; font-weight: 700; line-height: 1.3rem; text-align: center; box-shadow: 0 0 0 2px var(--bg); }
.nav-cart-count[hidden] { display: none; }
.nav-cart-count.is-bump { animation: sp-bump 0.45s var(--ease); }
@keyframes sp-bump { 0% { transform: scale(1); } 40% { transform: scale(1.35); } 100% { transform: scale(1); } }
@media (max-width: 800px) { .nav-cart { width: 2.75rem; height: 2.75rem; } }
