/* Mrkálek · produktová tlačítka · 1.0.0 · 2. 11. 2026
   Shoptet Disco (šablona 13). Čisté CSS, původní funkce Shoptetu.
   Rozsah: produktové karty a nákupní blok na detailu produktu.
   Vložit jako poslední vlastní CSS. Nezasahuje do checkoutu ani hlavičky. */

@media screen {
  :is(.product .p-tools, .p-detail .p-to-cart-block) {
    --mrkb-blue: #365ae7;
    --mrkb-hover: #2848cf;
    --mrkb-deep: #263fb5;
    --mrkb-ink: #25304b;
    --mrkb-pale: #eef2ff;
    --mrkb-line: #dce4ff;
    --mrkb-cart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h3l3 13h11l3-10H6'/%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3C/svg%3E");
    --mrkb-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16m-6-6 6 6-6 6'/%3E%3C/svg%3E");
  }

  /* Původní formulář zůstává včetně vstupů a tlačítek na místě.
     Úzká karta zalomí množství a tlačítko na dva řádky. */
  body .product .p-tools form.pr-action {
    display: flex;
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    max-width: 100%;
  }

  /* Společné rozměry a typografie obou nákupních akcí. */
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .add-to-cart-button,
  body .product .p-tools > a.btn.btn-primary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    position: relative;
    min-width: 0 !important;
    max-width: 100%;
    width: auto !important;
    min-height: 50px;
    height: auto !important;
    padding: 12px 16px !important;
    margin: 0 !important;
    border: 2px solid var(--mrkb-blue) !important;
    border-radius: 999px !important;
    background: var(--mrkb-blue) !important;
    color: #fff !important;
    box-shadow: 0 4px 0 var(--mrkb-deep), 0 7px 14px #365ae71b;
    font-family: "Poppins", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: normal;
    text-align: center;
    text-transform: none !important;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    vertical-align: middle;
    transition: background-color .16s, transform .16s, box-shadow .16s;
  }

  body .product .p-tools .add-to-cart-button { flex: 1 1 140px; }
  body .product .p-tools > a.btn.btn-primary { min-width: min(176px, 100%) !important; }

  body :is(.product .p-tools, .p-detail .p-to-cart-block) .add-to-cart-button > span:not(.sr-only) {
    display: inline;
    font: inherit;
    color: inherit;
    line-height: inherit;
  }

  /* Ikona bez další knihovny, fontu nebo požadavku na server. */
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .add-to-cart-button::before,
  body .product .p-tools > a.btn.btn-primary::after {
    content: "" !important;
    display: inline-block;
    position: static;
    flex: 0 0 19px;
    width: 19px;
    height: 19px;
    margin: 0 !important;
    padding: 0;
    border: 0;
    background: currentColor;
    -webkit-mask: var(--mrkb-cart) center / contain no-repeat;
    mask: var(--mrkb-cart) center / contain no-repeat;
    transform: none;
  }

  /* Detail produktu: obrys + šipka. Původní odkaz se nemění. */
  body .product .p-tools > a.btn.btn-primary {
    background: #fff !important;
    color: var(--mrkb-blue) !important;
    box-shadow: 0 4px 0 var(--mrkb-line);
  }
  body .product .p-tools > a.btn.btn-primary::after {
    -webkit-mask-image: var(--mrkb-arrow);
    mask-image: var(--mrkb-arrow);
    transition: transform .16s;
  }

  /* Množství: vizuálně minus / číslo / plus, bez změny DOM a událostí. */
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity {
    box-sizing: border-box;
    position: relative;
    display: inline-grid;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    grid-template-rows: 44px;
    align-items: center;
    flex: 0 0 132px;
    width: 132px !important;
    max-width: 100%;
    min-width: 0;
    height: 52px;
    padding: 2px !important;
    margin: 0 !important;
    border: 2px solid var(--mrkb-line) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: var(--mrkb-ink);
    box-shadow: none !important;
    vertical-align: middle;
    overflow: visible;
  }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > label {
    grid-column: 2;
    grid-row: 1;
    display: block;
    min-width: 0;
    width: 100%;
    height: 44px;
    padding: 0;
    margin: 0;
  }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity input.amount {
    box-sizing: border-box;
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100%;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 5px;
    background: #fff !important;
    color: var(--mrkb-ink) !important;
    font: 600 16px/1 "Poppins", sans-serif !important;
    text-align: center;
    text-indent: 0;
    appearance: textfield;
    -moz-appearance: textfield;
    box-shadow: none;
  }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity input.amount::-webkit-inner-spin-button,
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity input.amount::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > :is(.decrease, .increase) {
    box-sizing: border-box;
    grid-row: 1;
    position: static !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px !important;
    height: 44px !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: var(--mrkb-pale) !important;
    color: var(--mrkb-blue) !important;
    box-shadow: none;
    transition: background-color .16s, color .16s;
  }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > .decrease { grid-column: 1; }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > .increase { grid-column: 3; }

  /* Shoptet má podle verze znaménko v pseudo-prvku nebo ve span.
     Zobrazujeme právě jedno znaménko; aria-label tlačítka se zachová. */
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity :is(.decrease__sign, .increase__sign) { display: none; }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > :is(.decrease, .increase)::before {
    display: block;
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    border-radius: 0;
    background: transparent !important;
    color: inherit;
    font: 400 24px/1 Arial, sans-serif !important;
    transform: none;
  }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > .decrease::before { content: "−" !important; }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > .increase::before { content: "+" !important; }

  /* Zachovat nativní stavy nedostupnosti a zobrazování. */
  body :is(.product .p-tools, .p-detail .p-to-cart-block) :is(.add-to-cart-button, .increase, .decrease):is(:disabled, .disabled, [aria-disabled="true"]) {
    opacity: .5;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
  }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) :is(.add-to-cart-button, .quantity)[hidden],
  body :is(.product .p-tools, .p-detail .p-to-cart-block) :is(.add-to-cart-button, .quantity).no-display { display: none !important; }

  body :is(.product .p-tools, .p-detail .p-to-cart-block) :is(.add-to-cart-button, .increase, .decrease, input.amount):focus-visible,
  body .product .p-tools > a.btn.btn-primary:focus-visible {
    outline: 3px solid var(--mrkb-blue);
    outline-offset: 3px;
  }

  @media (hover: hover) {
    body :is(.product .p-tools, .p-detail .p-to-cart-block) .add-to-cart-button:not(:disabled):not(.disabled):not([aria-disabled="true"]):hover {
      background: var(--mrkb-hover) !important;
      border-color: var(--mrkb-hover) !important;
      transform: translateY(-1px);
      box-shadow: 0 5px 0 var(--mrkb-deep), 0 9px 16px #365ae726;
    }
    body .product .p-tools > a.btn.btn-primary:hover {
      background: var(--mrkb-pale) !important;
      transform: translateY(-1px);
      box-shadow: 0 5px 0 var(--mrkb-line);
    }
    body .product .p-tools > a.btn.btn-primary:hover::after { transform: translateX(3px); }
    body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > :is(.decrease, .increase):not(:disabled):not(.disabled):not([aria-disabled="true"]):hover {
      background: var(--mrkb-blue) !important;
      color: #fff !important;
    }
  }
  body :is(.product .p-tools, .p-detail .p-to-cart-block) .add-to-cart-button:not(:disabled):not(.disabled):not([aria-disabled="true"]):active {
    transform: translateY(3px);
    box-shadow: 0 1px 0 var(--mrkb-deep);
  }
  body .product .p-tools > a.btn.btn-primary:active {
    transform: translateY(3px);
    box-shadow: 0 1px 0 var(--mrkb-line);
  }
  @media (prefers-reduced-motion: reduce) {
    body :is(.product .p-tools, .p-detail .p-to-cart-block) .add-to-cart-button,
    body :is(.product .p-tools, .p-detail .p-to-cart-block) .quantity > :is(.increase, .decrease),
    body .product .p-tools > a.btn.btn-primary,
    body .product .p-tools > a.btn.btn-primary::after { transition: none; }
  }
}
