/* Schování původních widgetů (klik zůstává funkční pro programové volání) */
#HcCalculater{
  position:absolute !important; width:1px !important; height:1px !important;
  overflow:hidden !important; clip:rect(0 0 0 0) !important;
  white-space:nowrap !important; border:0 !important; padding:0 !important; margin:0 !important;
}
#essoxPaymentsCalculate, #essoxSpreadedInstallment { display:none !important; }
.twistoPay.twistoProductDetailBanner { display:none !important; }
skip-pay-placement, sp-banner { display:none !important; }
#pmt-old, .legacy-payment-box { display:none !important; }

/* Dlaždice – vzhled */
#pmt { display:block; --g:12px; --b:1px solid rgba(0,0,0,.1); --sh:0 2px 8px rgba(0,0,0,.06);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; margin-top:10px; }
#pmt .pmt-g { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--g); max-width:900px; margin:auto; }
#pmt .pmt-i { display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:8px 10px; border-radius:12px; border:var(--b); background:#fff; box-shadow:var(--sh);
  transition:.2s; height:96px; cursor:pointer; }
#pmt .pmt-i:hover { transform:translateY(-1px); box-shadow:0 4px 14px rgba(0,0,0,.12); }
#pmt .pmt-b { display:block; width:auto; height:28px; margin-bottom:6px; }
#pmt .pmt-l { font-weight:700; font-size:1.1rem; color:#111; text-align:center; }

/* Barevné odlišení */
#pmt .hc  { background:#c03528; color:#fff; } #pmt .hc .pmt-l { color:#fff; }
#pmt .sp  { background:#f4f7ff; border:2px solid #4a67f8; }
#pmt .tw  { background:#faf5ff; border:2px solid #8e44ff; }
#pmt .ex  { background:#fff; border:2px solid #aaa; }
#pmt .ex3 { background:#fff; border:2px solid #bbb; color:#666; } #pmt .ex3 .pmt-l { color:#666; }

/* Mobil */
@media (max-width:700px){
  #pmt .pmt-g { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:500px; }
  #pmt .pmt-i { height:92px; }
}

/* Modal */
#pmt-modal { position:fixed; inset:0; display:none; align-items:center; justify-content:center;
  background:rgba(0,0,0,.55); z-index:999999; }
#pmt-modal.open { display:flex; }
#pmt-modal .pmt-modal-box { position:relative; max-width:min(92vw,980px); max-height:92vh;
  background:#fff; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.25); overflow:auto; }
#pmt-modal img { display:block; max-width:100%; height:auto; }
#pmt-modal .pmt-modal-close { position:absolute; top:8px; right:10px; border:0; background:transparent;
  font-size:24px; line-height:1; cursor:pointer; }

/* Blokace kliků na pozadí (košík apod.) při otevřeném modalu */
body.modal-open { overflow:hidden; }
body.modal-open .add-to-cart,
body.modal-open .add-to-cart-button,
body.modal-open form[action*="cart"],
body.modal-open button[type="submit"] { pointer-events:none !important; }
