/* Mini-cart popup (200px) */
.mini-cart-popup {
  --popup-content-inset: 32px;
  position: fixed;
  top: auto;
  bottom: 0;
  height: calc(100% - 10px);
  right: 10px;
  left: auto;
  width: 100%;
  max-width: 600px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.1);
  box-shadow: 0 10px 30px rgba(0,0,0,.15);
  transform: translateY(100%);
  transition: transform .32s cubic-bezier(0.32, 0.72, 0, 1);
  z-index: 9999999;
  border-radius: 32px 32px 0 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.mini-cart-popup--overlay {
  position: fixed;
  inset: 0;
  display: block;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.4);
  transition: opacity .35s ease, visibility .35s ease;
  z-index: 999999999999;
}
#mini-cart-popup > div {
  display: none;
}
#mini-cart-popup .mci-active {
  display: block;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  box-sizing: border-box;
}

#mini-cart-popup .mini-cart-inner.instance-1.mci-active,
#mini-cart-popup .mini-cart-inner.instance-3.mci-active {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
}

.mini-cart-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  padding-left: var(--popup-content-inset, 32px);
  padding-right: var(--popup-content-inset, 32px);
  box-sizing: border-box;
}

.mini-cart-footer-bar {
  flex: 0 0 auto;
  position: relative;
  z-index: 2;
  padding-top: 16px;
  padding-bottom: 32px;
  background: transparent;
  background-color: transparent;
  box-shadow: none;
}

#mini-cart-popup .button.wc-forward {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0!important;
    color: #fff!important;
    font-size: var(--text-base)!important;
    font-weight: 700!important;
    padding: 0 2rem!important;
    border-radius: 2rem!important;
    width: 100%!important;
    max-width: 100%;
    box-sizing: border-box;
    text-align: center!important;
    align-content: center;
    margin: 0;
    bottom: auto;
    cursor: pointer;
    z-index: 1;
    flex-shrink: 0;
    min-height: 56px;
    height: 56px !important;
}

#mini-cart-popup .button.wc-forward:not(.no-select) {
    --base-color: #7717ff;
    --hover-color: color-mix(in srgb, var(--base-color) 90%, #000 10%);
    --active-color: color-mix(in srgb, var(--base-color) 80%, #000 20%);
    background-color: var(--base-color) !important;
    transition: none;
}

#mini-cart-popup .button.wc-forward:not(.no-select):hover {
    background-color: var(--hover-color) !important;
}

#mini-cart-popup .button.wc-forward:not(.no-select):active {
    background-color: var(--active-color) !important;
}

#mini-cart-popup .button.wc-forward.no-select {
    background: #BEBEBE!important;
    pointer-events: none !important;
    cursor: not-allowed;
}

#msc-nextstep-checkout,
#msc-shipping-confirm {
    padding: 0 2rem !important;
    flex-shrink: 0;
    min-height: 56px;
    height: 56px !important;
}

.mini-cart-popup.is-open {
  animation: mini-cart-popup-slide-in 0.5s ease-out forwards;
}

@keyframes mini-cart-popup-slide-in {
  0%   { transform: translateY(100%); }
  55%  { transform: translateY(-12px); }
  75%  { transform: translateY(4px); }
  100% { transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  .mini-cart-popup.is-open {
    animation: none;
    transform: translateY(0);
  }
}

.mini-cart-popup--overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Shell: no horizontal inset — that belongs on the scrollport (pulse room). */
.mini-cart-inner {
  padding: 66px 0 0;
}

/* Instances that scroll themselves (no .mini-cart-scroll): inset on the scrollport */
.mini-cart-inner:not(:has(.mini-cart-scroll)):not(.instance-5) {
  padding-left: var(--popup-content-inset, 32px);
  padding-right: var(--popup-content-inset, 32px);
}

.mini-cart-inner:not(:has(.mini-cart-footer-bar)) {
  padding-bottom: 20px;
}

.mini-cart-title {
  margin: 0 0 15px;
  font-size: calc(var(--text-base) * 2);
  line-height: var(--heading-lh);
  font-weight: 700;
}

.mini-cart-close.eshop-button {
  --base-color: #fafafa;
  --hover-color: color-mix(in srgb, var(--base-color) 95%, #000 5%);
  --active-color: color-mix(in srgb, var(--base-color) 90%, #000 10%);
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 10;
  width: var(--eshop-btn-lg);
  height: var(--eshop-btn-lg);
  padding: 0;
  border: 0;
  border-radius: 50%;
  background-color: var(--base-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 1 !important;
  transition: none;
}

/* Galerie: full-bleed obsah jinak během slide-in přebije křížek */
#mini-cart-popup:has(.instance-5.mci-active) .mini-cart-close.eshop-button {
  z-index: 100;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}
.mini-cart-close.eshop-button svg {
  width: var(--eshop-btn-icon);
  height: var(--eshop-btn-icon);
}

@media (hover: hover) {
  .mini-cart-close.eshop-button:hover {
    background-color: var(--hover-color);
  }
}

.mini-cart-close.eshop-button:active {
  background-color: var(--active-color);
}

.mini-cart-close.eshop-button.is-animating {
  animation: pulse-width 0.15s ease-in-out;
}

.mini-cart-close.eshop-button.is-animating svg {
  transform-origin: center bottom;
  animation: pulse-svg 0.15s ease-in-out;
}

.mini-cart-popup .buttons,
.mini-cart-popup .woocommerce-mini-cart__buttons {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mini-cart-popup .woocommerce-mini-cart__total {
  margin: 8px 0;
  font-size: 0.8125rem;
}

/* redesign */
/* Seznam */
.mini-cart-list { list-style:none; margin:0; padding:0!important; }
.mini-cart-item {
  position: relative;
  display:grid;
  grid-template-columns: 1fr auto auto;
  gap: 10px 16px;
  align-items:start;
  padding:20px 0;
  border-bottom:1px solid #dbdbdb;
}
.mini-cart-item:last-child { border-bottom:0; }

/* Levý blok */
.mc-left { min-width:0; }
.mc-product-link {
  display:block;
  color:#000;
  text-decoration:none;
  margin:0 0 20px;
}
.mc-product-link:hover {
  text-decoration:underline;
}
.mc-type-coll,
.mc-name {
  display:block;
  font-size: var(--text-base);
  line-height: var(--text-lh);
}
.mc-type-coll {
  font-weight: 700;
}
.mc-name {
  font-weight:400;
}
.mc-subtitle { font-size:0.75rem; opacity:.8; margin-bottom:6px; line-height: var(--text-lh); }

/* Pills (vydání, ISBN, tagy) – stejné styly jako .product-tag ve style.css */
.mc-pills.product-tags {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    bottom: 20px;
    margin: 0 !important;
}

/* Qty stepper */
.mini-cart-list .mc-qty {
    transform: translateX(calc(-28px + (var(--eshop-btn-sm) - 30px)));
}
.mc-qty { 
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 5px;
    color: #aaa !important;
    background: transparent;
    font-size: 0.625rem;
    margin: 0 0 3px 0;
}
.mc-qty .qty {
    width: 30px;
    height: 30px;
    padding: 0;
    text-align: center;
    font-size: var(--text-base);
    background: transparent;
    border: 0;
    outline: 0;
    font-weight: 700;
    line-height: 30px;
    box-sizing: border-box;
}
.mc-qty .qty-btn { 
    position: relative !important;
    border: none !important;
    cursor: pointer;
    opacity: 1;
}
.mc-qty .qty-btn.eshop-button {
    width: var(--eshop-btn-sm) !important;
    height: var(--eshop-btn-sm) !important;
    text-indent: 0 !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    background-image: none !important;
    display: inline-flex;
    flex: 0 0 var(--eshop-btn-sm);
    align-items: center;
    justify-content: center;
    padding: 0;
}
.mc-qty .qty-btn.eshop-button svg {
    width: var(--eshop-btn-icon);
    height: var(--eshop-btn-icon);
}
.mc-qty .qty-btn.minus.eshop-button:not(.active-btn) {
    background-color: transparent !important;
    cursor: default;
    pointer-events: none;
}
.mc-qty .qty-btn.minus.eshop-button:not(.active-btn) svg path {
    fill: #bebebe;
}
.mc-qty .qty-btn.minus.eshop-button.active-btn {
    --base-color: #fafafa;
    --hover-color: color-mix(in srgb, var(--base-color) 95%, #000 5%);
    --active-color: color-mix(in srgb, var(--base-color) 90%, #000 10%);
    background-color: var(--base-color) !important;
    border-radius: 50%;
    transition: none;
}
.mc-qty .qty-btn.minus.eshop-button.active-btn svg path {
    fill: #000000;
}
.mc-qty .qty-btn.plus.eshop-button {
    --base-color: #fafafa;
    --hover-color: color-mix(in srgb, var(--base-color) 95%, #000 5%);
    --active-color: color-mix(in srgb, var(--base-color) 90%, #000 10%);
    background-color: var(--base-color) !important;
    border-radius: 50%;
    transition: none;
}
.mc-qty .qty-btn.plus.eshop-button svg path {
    fill: #000000;
}

@media (hover: hover) {
  .mc-qty .qty-btn.plus.eshop-button:hover,
  .mc-qty .qty-btn.minus.eshop-button.active-btn:hover {
      background-color: var(--hover-color) !important;
  }
}

.mc-qty .qty-btn.plus.eshop-button:active,
.mc-qty .qty-btn.minus.eshop-button.active-btn:active {
    background-color: var(--active-color) !important;
}

.mc-qty input.qty[type='number'] {
    -moz-appearance: textfield;
    text-align: center;
}
.mc-qty input.qty::-webkit-outer-spin-button,
.mc-qty input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

/* Pravý blok: cena + koš */
.mc-right { display:flex; flex-direction:column; align-items:flex-end; gap:6px; }
.mc-price { font-weight:700; font-size: var(--text-base); white-space:nowrap; }
.mc-remove { position: absolute; bottom: 20px; right: 0; }
.mc-remove.eshop-button {
    --base-color: #fafafa;
    --hover-color: color-mix(in srgb, var(--base-color) 95%, #000 5%);
    --active-color: color-mix(in srgb, var(--base-color) 90%, #000 10%);
    width: var(--eshop-btn-lg);
    height: var(--eshop-btn-lg);
    background-color: var(--base-color) !important;
    border-radius: 50%;
    transition: none;
}
.mc-remove.eshop-button svg {
    width: var(--eshop-btn-icon);
    height: var(--eshop-btn-icon);
}

@media (hover: hover) {
  .mc-remove.eshop-button:hover {
      background-color: var(--hover-color) !important;
  }
}

.mc-remove.eshop-button:active {
    background-color: var(--active-color) !important;
}

.mc-remove img, .woocommerce a.remove { width: 27px!important; height: 27px!important; opacity: 1!important}
.mc-remove img:hover, .woocommerce a.remove:hover {opacity: 0.7!important}

/* Footer */
.mini-cart-buttons { display:flex; gap:8px; }
.mini-cart-buttons .button { font-size:0.75rem; padding:8px 10px; }
/* Footer */

/* Checkout summary */
.mini-cart-total { display:flex; justify-content:space-between; padding:10px 0 16px; font-size: var(--text-base); border-top:1px solid #dbdbdb; margin-top:0; }
.mini-cart-list-checkout {
    display: flex;
    gap: 32px;
    padding: 0 !important;
}
.mini-cart-item-checkout {
    border: 0;
    /* width: calc(25% - 5px); */
}
.msc-product-thumb {
    position: relative;
}
.msc-product-thumb.is-form-row-pulsing {
    transform-origin: center center;
    animation: form-row-pulse 0.15s ease-in-out;
}
.msc-product-amount {
    position: absolute;
    right: -5px;
    top: -7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    padding: 0;
    box-sizing: border-box;
    background: #000;
    color: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 0.675rem;
    font-weight: 700;
    line-height: 1;
    border-radius: 50%;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
}
.mini-cart-products {
    border-top: 1px solid #dbdbdb;
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
    font-size: var(--text-base);
    margin-top: 6px;
}
.mini-cart-delivery { 
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 55px;
    box-sizing: border-box;
    padding: 0;
    font-size: var(--text-base);
    border-top: 1px solid #dbdbdb;
    border-bottom: 1px solid #dbdbdb;
    margin-top: 6px;
}
.mini-cart-total.mini-cart-total-checkout {
    border-top: none;
}
/*
.mini-cart-total-checkout {
    padding-left: 10px;
    padding-right: 10px;
}
*/
/* Checkout summary */

.mc-undo.is-hidden {
    display: none !important;
}

#mc-undo.is-visible {
  display: flex;
  justify-content: space-between;
  padding: 10px 0;
  font-size: var(--text-base);
  border-top: 1px solid #dbdbdb;
  margin-top: 6px;
}
#mc-undo > span:first-child {
  font-weight: 500;
}
#mc-undo > #mc-undo-btn {
    width: 27px;
    cursor: pointer;
    opacity: 1;
}
#mc-undo > #mc-undo-btn:hover {
    opacity: 0.7;
}

/* Notification & msg */

.notify-card {
  padding-top: 20px;
  max-width: 560px;
  color: #111;
  font: 400 var(--text-base)/var(--text-lh) 'Open Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* řádek s ikonou a textem – stejná mřížka jako u vyprodaného produktu */
.notify-header {
  --notify-icon-cell: 27px;
  display: grid;
  grid-template-columns: var(--notify-icon-cell) 1fr;
  column-gap: 10px;
  align-items: center;
  margin-bottom: 30px;
  overflow: visible;
}

.notify-ding {
  grid-column: 1;
  grid-row: 1;
  width: var(--notify-icon-cell);
  justify-self: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.notify-content {
  grid-column: 2;
  grid-row: 1;
  position: relative;
  z-index: 0;
}

.notify-content p {
  margin: 0;
}

/* Newsletter – řádek sdílí .form-group / .form-input (hover + pulse), tlačítko až po zadání textu */
.notify-form,
.notify-form-popup,
.notify-form-product,
.notify-form-unsubscribe {
  width: 100%;
}

/* Odhlášení: mezera text → řádek e-mailu = 30px jako .notify-header u učebních textů */
.notify-card--unsubscribe {
  padding-top: 0;
  margin-top: 30px;
}

/* Vynulovat Divi padding/margin u intro odstavců (jinak + ~1em navíc k 30px) */
body.page-unsubscribe .et_pb_text_inner > p {
  margin-bottom: 0;
  padding-bottom: 0;
}

#mini-cart-popup .notify-form-popup {
  margin-top: 0;
}

.notify-form-row.form-group {
  margin-bottom: 0;
}

.notify-form-row .form-input {
  padding-right: calc(var(--eshop-btn-sm) + 14px) !important;
}

.notify-form-row .notify-submit.eshop-button {
  --base-color: #dbdbdb;
  --hover-color: color-mix(in srgb, var(--base-color) 95%, #000 5%);
  --active-color: color-mix(in srgb, var(--base-color) 90%, #000 10%);
  position: absolute;
  top: calc((var(--form-row-h) - var(--eshop-btn-sm)) / 2);
  right: 8px;
  width: var(--eshop-btn-sm);
  height: var(--eshop-btn-sm);
  border-radius: 50%;
  padding: 0;
  flex-shrink: 0;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.notify-form-row:has(.form-input[type="email"]:not(:placeholder-shown):valid) .notify-submit.eshop-button:not(.loading):not(.sb-added-check),
.notify-form-row:has(.notify-submit.loading) .notify-submit.eshop-button,
.notify-form-row:has(.notify-submit.sb-added-check) .notify-submit.eshop-button {
  --base-color: #7717ff;
  --hover-color: color-mix(in srgb, var(--base-color) 90%, #000 10%);
  --active-color: color-mix(in srgb, var(--base-color) 80%, #000 20%);
}

.notify-form-row:not(:has(.form-input[type="email"]:not(:placeholder-shown):valid)) .notify-submit.eshop-button:not(.loading):not(.sb-added-check) {
  --hover-color: #dbdbdb;
  --active-color: #dbdbdb;
  cursor: default;
}

.notify-form-row:has(.form-input[type="email"]:not(:placeholder-shown):valid) .notify-submit.eshop-button:not(.loading):not(.sb-added-check):hover {
  background-color: var(--hover-color);
}

.notify-form-row:has(.form-input[type="email"]:not(:placeholder-shown):valid) .notify-submit.eshop-button:not(.loading):not(.sb-added-check):active {
  background-color: var(--active-color);
}

.notify-form-row:has(.notify-submit.loading) .notify-submit.eshop-button,
.notify-form-row:has(.notify-submit.sb-added-check) .notify-submit.eshop-button {
  pointer-events: none;
}

.notify-submit.loading.eshop-button,
.notify-submit.sb-added-check.eshop-button {
  animation: none;
}

.notify-submit.loading.eshop-button svg:not(.sb-spinner),
.notify-submit.sb-added-check.eshop-button svg {
  animation: none;
  transform: none;
}

.notify-form-row:has(.form-input[type="email"]:not(:placeholder-shown):valid) .notify-submit.eshop-button.is-animating:not(.loading):not(.sb-added-check) {
  animation: eshop-pulse-width 0.15s ease-in-out;
}

.notify-form-row:has(.form-input[type="email"]:not(:placeholder-shown):valid) .notify-submit.eshop-button.is-animating:not(.loading):not(.sb-added-check) svg {
  animation: none;
  transform: none;
}

.notify-form-row:has(.form-input[type="email"]:not(:placeholder-shown):valid) .notify-submit.eshop-button.is-animating:not(.loading):not(.sb-added-check) .notify-btn-icon--arrow svg {
  transform-origin: center bottom;
  animation: eshop-pulse-svg 0.15s ease-in-out;
}

.notify-btn-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.notify-btn-icon svg {
  width: var(--eshop-btn-icon);
  height: var(--eshop-btn-icon);
}

.notify-btn-icon--spinner .sb-spinner {
  width: var(--eshop-btn-icon);
  height: var(--eshop-btn-icon);
}

.notify-btn-icon--arrow {
  display: flex;
}

.notify-btn-icon--spinner,
.notify-btn-icon--check {
  display: none;
}

.notify-submit.loading .notify-btn-icon--arrow {
  display: none;
}

.notify-submit.loading .notify-btn-icon--spinner {
  display: flex;
}

.notify-submit.loading .notify-btn-icon--spinner .sb-spinner {
  animation: notify-spin 1s linear infinite;
  transform-origin: center;
  shape-rendering: geometricPrecision;
}

@keyframes notify-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.notify-submit.sb-added-check .notify-btn-icon--arrow,
.notify-submit.sb-added-check .notify-btn-icon--spinner {
  display: none;
}

.notify-submit.sb-added-check .notify-btn-icon--check {
  display: flex;
}

.notify-form-row .notify-saved-label {
  display: none;
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: var(--text-base);
  font-weight: 400;
  line-height: var(--text-lh);
  color: #bebebe;
  pointer-events: none;
}

.notify-form-row:has(.notify-submit.sb-added-check) .notify-saved-label {
  display: block;
}

.notify-form-row:has(.notify-submit.sb-added-check) .form-label {
  opacity: 0;
  visibility: hidden;
}

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* mobil drobnosti */
@media (max-width:420px){
  .mini-cart-popup {right:0; width:100%;}
}
/* Notification & msg */


/* custom summarization */

/* Hlavička "Doprava" nad seznamem */
.mini-cart-summary-block .mini-cart-total--head{
  display:flex; justify-content:space-between; align-items:center;
  padding:8px 0 10px; border-bottom:1px solid #dbdbdb;
  margin-bottom:8px;
}


/* custom summarization */


/* overlay uvnitř popupu */
.msc-mini-cart { position: relative; } /* jistota pro absolute overlay */

.msc-mini-loading[hidden] { display: none !important; }

.msc-mini-loading{
  position:absolute; inset:0;
  background: rgba(255,255,255,.75);
  display:flex; align-items:center; justify-content:center;
  z-index: 99999999; /* nad obsahem popupu */
}

/* krabička pro spinner */
.msc-mini-loading__box{
  width:64px; height:64px;
  display:grid; place-items:center;
  border-radius: 999px;
  backdrop-filter: blur(2px);
}

/* jemné centrování canvasu */
.kulicka{ position:relative; display:block; }
.kulicka canvas{ display:block; background: transparent; }

/* overlay uvnitř popupu */



/* new redesign */
.mini-cart-item { display:flex; gap:12px; align-items:flex-start; }
.mc-thumb { height:96px; width:auto; flex:0 0 auto; position:relative; }
.mc-thumb.is-form-row-pulsing {
    transform-origin: center center;
    animation: form-row-pulse 0.15s ease-in-out;
}
.mc-thumb img { height:96px; width:auto; display:block; }

/* Added-to-cart success overlay on product thumb */
.mc-thumb-added {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 48px;
    height: 48px;
    margin: -24px 0 0 -24px;
    pointer-events: none;
    z-index: 2;
    opacity: 1;
    transition: opacity 0.35s ease;
}
.mc-thumb-added.is-fading {
    opacity: 0;
}
.mc-thumb-added svg {
    display: block;
    width: 48px;
    height: 48px;
}
.mc-added-stroke {
    fill: none;
    stroke: #137333;
    stroke-width: 2;
    stroke-dasharray: 144.513;
    stroke-dashoffset: 144.513;
    transform: rotate(-90deg);
    transform-origin: 24px 24px;
}
.mc-added-fill {
    opacity: 0;
}
.mc-added-mask-inner {
    transform-box: fill-box;
    transform-origin: center;
    transform: scale(1);
}
.mc-added-check-path {
    fill: none;
    stroke: #fff;
    stroke-width: 4;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: 0;
}
.mc-thumb-added.is-animating .mc-added-stroke {
    animation: mc-added-stroke-draw 0.55s ease-out forwards;
}
.mc-thumb-added.is-animating .mc-added-fill {
    animation: mc-added-fill-show 0.01s linear 0.55s forwards;
}
.mc-thumb-added.is-animating .mc-added-mask-inner {
    animation: mc-added-mask-shrink 0.4s ease-in 0.55s forwards;
}
.mc-thumb-added.is-animating .mc-added-check-path {
    animation:
        mc-added-check-visible 0.01s linear 0.95s forwards,
        mc-added-check-draw 0.35s ease-out 0.95s forwards;
}
@keyframes mc-added-stroke-draw {
    to { stroke-dashoffset: 0; }
}
@keyframes mc-added-fill-show {
    to { opacity: 1; }
}
@keyframes mc-added-mask-shrink {
    to { transform: scale(0); }
}
@keyframes mc-added-check-visible {
    to { opacity: 1; }
}
@keyframes mc-added-check-draw {
    to { stroke-dashoffset: 0; }
}
.mc-left { flex:1; line-height: var(--text-lh); }
.mc-middle { margin-top: -6px; }
.mc-right { text-align:right; min-width:90px; }
.mc-line-total { font-weight:700; line-height: var(--text-lh); }
.mc-unit-price { font-size: var(--text-base); font-weight: 500; line-height: var(--text-lh); }
/* new redesign */

/* Mobile */
  @media (max-width: 980px) {
    .mini-cart-popup--overlay {
      transition: none;
    }

    .mini-cart-popup {
      --popup-content-inset: var(--mobile-edge-gap, 16px);
      top: var(--sb-vv-top, 0px);
      bottom: auto;
      left: 0;
      right: 0;
      width: 100%;
      max-width: none;
      height: var(--sb-vv-height, 100dvh);
      max-height: var(--sb-vv-height, 100dvh);
    }

    .mini-cart-footer-bar {
      padding-bottom: calc(4px + env(safe-area-inset-bottom, 0px));
    }

    @keyframes mini-cart-popup-slide-in {
      0%   { transform: translateY(100%); }
      55%  { transform: translateY(0); }
      75%  { transform: translateY(12px); }
      100% { transform: translateY(0); }
    }

    .mini-cart-list .mc-left {
      display: none;
    }

    .mini-cart-list .mini-cart-item {
      position: relative;
      justify-content: space-between;
    }

    .mini-cart-list .mc-middle {
      position: absolute;
      left: 50%;
      padding-left: 0;
      transform: translateX(-50%);
    }

    .mini-cart-list .mc-qty {
      transform: none;
    }

    .mini-cart-list .mc-thumb {
      position: relative;
      z-index: 1;
    }

    /* Mobilní galerie (instance-5): plynulá páska + chrome mimo zoomovanou vrstvu */
    #mini-cart-popup .mini-cart-inner.instance-5.mci-active {
      display: flex;
      flex-direction: column;
      padding: 0;
      overflow: hidden;
      position: relative;
      z-index: 0;
    }

    #mini-cart-popup .mini-cart-inner.instance-5 .msc-carousel {
      flex: 1;
      height: 100%;
      min-height: 0;
      width: 100%;
      margin: 0;
      overflow: hidden;
      position: relative;
    }

    #mini-cart-popup .mini-cart-inner.instance-5 .msc-carousel-track {
      flex: 1;
      height: 100%;
      min-height: 0;
      gap: 8px;
      padding: 0;
      align-items: stretch;
      touch-action: pan-x;
      scroll-snap-type: none;
      box-sizing: border-box;
    }

    #mini-cart-popup .mini-cart-inner.instance-5 .msc-slide {
      height: 100%;
      align-items: center;
    }

    #mini-cart-popup .mini-cart-inner.instance-5 .msc-slide img {
      height: 100%;
      max-height: 100%;
      border-radius: 32px;
      box-shadow: none;
    }

    /* Pinch zoom: fotka nad chrome (křížek, scrollbar, okraje) */
    #mini-cart-popup .mini-cart-inner.instance-5 .msc-carousel.is-pinch-zooming {
      overflow: visible;
      z-index: 40;
    }

    #mini-cart-popup .mini-cart-inner.instance-5 .msc-carousel.is-pinch-zooming .msc-carousel-track {
      overflow: visible;
      touch-action: none;
    }

    #mini-cart-popup .mini-cart-inner.instance-5 .msc-slide.is-zooming {
      z-index: 50;
    }

    #mini-cart-popup .mini-cart-inner.instance-5 .msc-slide.is-zooming img {
      border-radius: 0;
    }

    /* Indikátor: edge-to-edge s 16px breakpointem, síla 2px */
    #mini-cart-popup .mini-cart-inner.instance-5 .msc-carousel-scrollbar {
      position: absolute;
      left: 16px;
      right: 16px;
      bottom: 16px;
      width: auto;
      height: 2px;
      flex: none;
      margin: 0;
      z-index: 6;
      pointer-events: none;
    }
  }

  @media (max-width: 480px) {    
    .mini-cart-inner.instance-3 .notify-card, .mini-cart-inner.instance-2 .notify-card {
      padding-top: 0;
    }
    body:not(.page-checkout) ul.mini-cart-list > li:first-child {
      padding-top: 0;
    }
    ul.mini-cart-list > li .mc-remove, ul.mini-cart-list > li .mc-pills {
      /* bottom: 10px; */
    }
    .mini-cart-list > li .mc-name br {
      display: none;
    }
    .mc-right {
      min-width: 70px;
    }
    #mini-cart-popup .button.wc-forward {
      width: 100% !important;
    }
  }
/* Mobile */

/* =============================================================================
   Transparent chrome bars (cart only): content scrolls under close + footer CTA
   Outer popup stays opaque white. Buttons themselves stay untouched.
   Scoped to #mini-cart-popup instance-1 / instance-3 — not gallery / other popups.
   ============================================================================= */

#mini-cart-popup.mini-cart-popup {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* Full-height scroll under floating close + footer (cart + shipping address) */
#mini-cart-popup .mini-cart-inner.instance-1.mci-active,
#mini-cart-popup .mini-cart-inner.instance-3.mci-active {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

#mini-cart-popup .mini-cart-inner.instance-1 .mini-cart-scroll,
#mini-cart-popup .mini-cart-inner.instance-3 .mini-cart-scroll {
  padding-top: 66px; /* same offset as former .mini-cart-inner padding-top */
  padding-bottom: calc(16px + 56px + 32px); /* footer bar padding + CTA height */
  box-sizing: border-box;
}

#mini-cart-popup .mini-cart-footer-bar {
  position: absolute !important;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  padding-left: var(--popup-content-inset, 32px);
  padding-right: var(--popup-content-inset, 32px);
  pointer-events: none;
}

#mini-cart-popup .mini-cart-footer-bar > * {
  pointer-events: auto;
}

@media (max-width: 980px) {
  #mini-cart-popup .mini-cart-footer-bar {
    padding-bottom: calc(4px + env(safe-area-inset-bottom, 0px));
  }

  #mini-cart-popup .mini-cart-inner.instance-1 .mini-cart-scroll,
  #mini-cart-popup .mini-cart-inner.instance-3 .mini-cart-scroll {
    padding-bottom: calc(16px + 56px + 4px + env(safe-area-inset-bottom, 0px));
  }
}