/* Side cart, same as the diesel.co.il 2027 theme: a 480 px panel under the header bar (top set by side-cart.js), page dimmed to 60 %,
   72 px head, 132 px images, a quantity stepper and "הסרה", a footer with an 18 px subtotal, a black checkout button and a view-cart link.
   It unfolds downward from the header and closes by itself when the mouse leaves. */
.cart-dialog { --c-text: #0f0f0f; --c-bg: #fff; --c-line: #e3e3e3; --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 24px;
  direction: rtl; font-family: 'IBM Plex Sans Hebrew', Arial, sans-serif; overflow: hidden; position: fixed; inset-block: var(--cart-top, 0px) 0; inset-inline-start: auto; inset-inline-end: 0; flex-direction: column; inline-size: min(480px, 100%); block-size: auto; max-inline-size: 100%; max-block-size: none; margin: 0; padding: 0; border: 0; background: var(--c-bg); color: var(--c-text); }
.cart-dialog *, .cart-dialog *::before, .cart-dialog *::after { box-sizing: border-box; }
.cart-dialog[open] { display: flex; transform-origin: center top; animation: cart-unfold .35s cubic-bezier(.25, .1, .25, 1); }
.cart-dialog.is-closing { animation: cart-fold .35s cubic-bezier(.25, .1, .25, 1) forwards; }
@keyframes cart-unfold { from { transform: scaleY(0); opacity: 0; } 55% { opacity: 0; } to { transform: scaleY(1); opacity: 1; } }
@keyframes cart-fold { from { transform: scaleY(1); opacity: 1; } 45% { opacity: 0; } to { transform: scaleY(0); opacity: 0; } }
@keyframes cart-content-in { from { opacity: 0; transform: translateY(-10px); } }
@keyframes cart-backdrop-out { to { opacity: 0; } }
.cart-dialog[open] > :is(.cart-dialog__head, .cart-dialog__body) { animation: cart-content-in .2s linear .25s backwards; }
.cart-dialog.is-closing::backdrop { animation: cart-backdrop-out .35s linear forwards; }
.cart-dialog:focus:not(:focus-visible), .cart-dialog:focus-visible { outline: none; box-shadow: none; }
.cart-dialog::backdrop { inset-block-start: var(--cart-top, 0px); background: rgba(0, 0, 0, .6); }
.cart-dialog a, .cart-dialog a:visited { color: var(--c-text); }
.cart-dialog :focus-visible { outline: 2px solid var(--c-text); outline-offset: 2px; box-shadow: 0 0 0 4px #fff; }
#cart-dialog .cart-dialog__head { display: flex; flex: none; align-items: center; justify-content: space-between; block-size: 72px; padding: var(--space-5); }
#cart-dialog .cart-dialog__head h2 { margin: 0; padding: 0; color: var(--c-text); font-size: 20px; font-weight: 600; line-height: 21px; letter-spacing: .01em; }
#cart-dialog .cart-dialog__close { inline-size: 32px; block-size: 32px; margin-inline-end: -4px; color: var(--c-text); background: none; border: 0; }
#cart-dialog .cart-dialog__close:hover { background: #f4f3f0; }
#cart-dialog .cart-dialog__close svg { inline-size: 14px; block-size: 14px; }
#cart-dialog .cart-dialog__body { flex: 1; display: flex; flex-direction: column; min-block-size: 0; }
#cart-dialog .cart-dialog__body[aria-busy="true"] { opacity: .6; }
#cart-dialog .cart-dialog__body .widget_shopping_cart_content { flex: 1; display: flex; flex-direction: column; min-block-size: 0; }
#cart-dialog .mini-cart-items { flex: 1; display: grid; align-content: start; gap: var(--space-5); overflow: auto; margin: 0; padding: 0 var(--space-5) var(--space-5); list-style: none; scrollbar-gutter: auto; }
@supports selector(::-webkit-scrollbar) {
  #cart-dialog .mini-cart-items::-webkit-scrollbar { inline-size: 14px; block-size: 14px; }
  #cart-dialog .mini-cart-items::-webkit-scrollbar-track { background: transparent; }
  #cart-dialog .mini-cart-items::-webkit-scrollbar-thumb { border: 4px solid transparent; border-radius: 10rem; background-color: #dfdfdf; background-clip: content-box; }
  #cart-dialog .mini-cart-items::-webkit-scrollbar-thumb:hover { background-color: #bdbdbd; }
}
@supports not selector(::-webkit-scrollbar) { #cart-dialog .mini-cart-items { scrollbar-width: thin; scrollbar-color: #dfdfdf transparent; } }
#cart-dialog .mini-cart-item { display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: var(--space-4); margin: 0; padding: 0; border: 0; }
#cart-dialog .mini-cart-item__img { min-inline-size: 0; inline-size: 132px; grid-column: 1; order: 0; float: none; display: block; background: none; }
#cart-dialog .mini-cart-item__img img { position: static !important; inset: auto !important; float: none !important; transform: none !important; display: block; inline-size: 100% !important; max-inline-size: 100% !important; block-size: auto !important; aspect-ratio: 2 / 3; object-fit: contain; border: 0; border-radius: 0; box-shadow: none; margin: 0; }
#cart-dialog .mini-cart-item__info { grid-column: 2; order: 0; display: flex; flex-direction: column; padding-block: var(--space-4); font-size: 12px; line-height: 15px; letter-spacing: .02em; }
#cart-dialog .mini-cart-item__name { margin: 0 0 11px; font-weight: 400; }
#cart-dialog .mini-cart-item__name a { color: var(--c-text); font-weight: 400; text-decoration: none; }
#cart-dialog .mini-cart-item__name a:hover { text-decoration: underline; }
#cart-dialog .mini-cart-item dl.variation { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-1); margin: 0; }
#cart-dialog .mini-cart-item dl.variation :is(dt, dd, p) { margin: 0; font-weight: 400; }
#cart-dialog .mini-cart-item__attr { margin: 0 0 4px; }
#cart-dialog .mini-cart-item__price { margin: var(--space-2) 0 0; }
#cart-dialog .mini-cart-item__price, #cart-dialog .mini-cart-item__price :is(ins, span, bdi) { color: var(--c-text); text-decoration: none; background: none; }
#cart-dialog .mini-cart-item__price del { color: #6b6b66; }
#cart-dialog .mini-cart-item__actions { display: flex; align-items: center; justify-content: space-between; margin-block-start: auto; padding-block-start: var(--space-4); }
#cart-dialog .mini-cart-qty { display: flex; align-items: center; gap: var(--space-1); }
#cart-dialog .mini-cart-qty__btn { display: grid; place-items: center; inline-size: 24px; block-size: 24px; padding: 0; border: 0; border-radius: 0; background: none; color: var(--c-text); cursor: pointer; }
#cart-dialog .mini-cart-qty__btn svg { inline-size: 17px; block-size: 17px; stroke: currentColor; fill: none; stroke-width: 1.5; }
#cart-dialog .mini-cart-qty__btn[disabled] { opacity: .35; cursor: default; }
#cart-dialog .mini-cart-qty__value { min-inline-size: 16px; font-size: 13px; font-weight: 500; text-align: center; }
#cart-dialog a.mini-cart-item__remove, #cart-dialog a.mini-cart-item__remove:hover { display: inline; inline-size: auto; block-size: auto; margin: 0; padding: 0 0 1px; border: 0; border-block-end: 1px solid currentColor; border-radius: 0; background: none !important; color: var(--c-text) !important; font-size: 12px; font-weight: 400; line-height: 15px; letter-spacing: .04em; text-align: start; text-decoration: none; }
#cart-dialog .mini-cart-foot { display: flex; flex: none; flex-direction: column; gap: var(--space-4); padding: var(--space-4) 20px var(--space-5); border-block-start: 1px solid #dfdfdf; }
#cart-dialog .mini-cart-foot .woocommerce-mini-cart__total { display: flex; justify-content: space-between; margin: 0; padding: 0; border: 0; font-size: 18px; font-weight: 400; line-height: 24px; }
#cart-dialog .mini-cart-foot .woocommerce-mini-cart__total :is(strong, span, bdi) { font-weight: 400; color: var(--c-text); }
#cart-dialog .mini-cart-foot .woocommerce-mini-cart__buttons { display: flex; flex-direction: column; align-items: center; gap: var(--space-4); margin: 0; padding: 0; }
#cart-dialog .mini-cart-foot a.mini-cart-foot__checkout { display: block; inline-size: 100%; min-block-size: 41px; padding: 12px; border: 1px solid var(--c-text); border-radius: 0; background: var(--c-text) !important; color: #fff !important; font-size: 12px; font-weight: 400; line-height: 15px; letter-spacing: .04em; text-align: center; text-decoration: none; }
#cart-dialog .mini-cart-foot a.mini-cart-foot__checkout:hover { background: #333 !important; color: #fff !important; }
#cart-dialog .mini-cart-foot__view { padding-block: 2px; color: var(--c-text); font-size: 12px; line-height: 15px; letter-spacing: .04em; text-decoration: underline; text-underline-offset: 3px; }
#cart-dialog .woocommerce-mini-cart__empty-message { margin: var(--space-2) var(--space-5) var(--space-5); font-size: 14px; }
#cart-dialog .cart-dialog__error { margin: 0 var(--space-5) var(--space-3); padding: var(--space-3); border: 1px solid var(--c-line); font-size: 14px; }
#cart-dialog .cart-dialog__error a { color: inherit; text-decoration: underline; }
@media (prefers-reduced-motion: reduce) { .cart-dialog[open], .cart-dialog.is-closing, .cart-dialog[open] > * { animation: none; } }
@media (forced-colors: active) { .cart-dialog { border-inline-start: 1px solid CanvasText; } }
/* Astra draws a circle on the remove link's ::before; staging shows plain underlined text */
#cart-dialog a.mini-cart-item__remove::before, #cart-dialog a.mini-cart-item__remove::after { content: none !important; display: none !important; border: 0 !important; }
#cart-dialog a.mini-cart-item__remove { opacity: 1 !important; -webkit-text-stroke: 0 !important; text-shadow: none !important; text-indent: 0 !important; }

/* empty cart: one centred message and a black button (Astra's own empty block is hidden) */
#cart-dialog .ast-mini-cart-empty, #cart-dialog .woocommerce-mini-cart__empty-message ~ .ast-mini-cart-empty { display: none !important; }
#cart-dialog .mini-cart-empty { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--space-3); padding: var(--space-5) var(--space-5) 96px; text-align: center; }
#cart-dialog .mini-cart-empty > svg { inline-size: 56px; block-size: 56px; stroke: var(--c-text); fill: none; stroke-width: 1.2; stroke-linecap: round; stroke-linejoin: round; margin-block-end: var(--space-2); }
#cart-dialog .mini-cart-empty .woocommerce-mini-cart__empty-message { margin: 0; font-size: 20px; font-weight: 600; line-height: 24px; }
#cart-dialog .mini-cart-empty__hint { margin: 0; color: #6b6b66; font-size: 14px; line-height: 20px; }
#cart-dialog .mini-cart-empty__btn { max-inline-size: 280px; margin-block-start: var(--space-4); }
#cart-dialog a.mini-cart-empty__btn { display: block; inline-size: 100%; min-block-size: 41px; padding: 12px; border: 1px solid var(--c-text); border-radius: 0; background: var(--c-text) !important; color: #fff !important; font-size: 12px; font-weight: 400; line-height: 15px; letter-spacing: .04em; text-align: center; text-decoration: none; }
#cart-dialog a.mini-cart-empty__btn:hover { background: #333 !important; }

/* Astra paints every button red on hover / focus / active: keep the cart buttons as designed */
#cart-dialog .cart-dialog__close,#cart-dialog .cart-dialog__close:focus,#cart-dialog .cart-dialog__close:active{background:transparent!important;color:#0f0f0f!important;box-shadow:none}
#cart-dialog .cart-dialog__close:hover{background:#f4f3f0!important}
#cart-dialog .mini-cart-qty__btn,#cart-dialog .mini-cart-qty__btn:hover,#cart-dialog .mini-cart-qty__btn:focus,#cart-dialog .mini-cart-qty__btn:active{background:transparent!important;color:#0f0f0f!important;box-shadow:none}
