/* ========================================
   PIZZA TARA - BLACK & RED THEME
   Custom CSS Diff pro upload do systému
   Styl: černá, červená, moderní
   ======================================== */

/* --- FONTY --- */
/* VÝCHOZÍ FALLBACK - BEZ font-weight */
@font-face {
  font-family: Primary;
  src: url(/user-data/factories/701/Custom_Font_Regular.ttf);
}
/* Light */
@font-face {
  font-family: Primary;
  src: url(/user-data/factories/701/Custom_Font_Light.ttf);
  font-weight: 300;
}
/* Regular */
@font-face {
  font-family: Primary;
  src: url(/user-data/factories/701/Custom_Font_Regular.ttf);
  font-weight: 400;
}
/* Bold */
@font-face {
  font-family: Primary;
  src: url(/user-data/factories/701/Custom_Font_Bold.ttf);
  font-weight: 700;
}

/* --- CSS PROMĚNNÉ - BLACK & RED THEME --- */
:root {
  /* Základní barvy */
  --color-white: #FFFFFF;
  --color-gray-100: #333333;
  --color-gray-200: #2B2B2B;
  --color-gray-300: #222222;
  --color-gray-400: #999999;
  --color-gray-500: #777777;
  --color-gray-600: #555555;
  --color-gray-700: #333333;
  --color-gray-800: #222222;
  --color-gray-900: #111111;

  /* Primary = Červená Pizza Tara */
  --color-primary-500: #D70729;
  --color-primary-600: #B50621;

  /* Dark varianty */
  --color-dark-600: #2B2B2B;
  --color-dark-700: #1A1A1A;
  --color-dark-800: #111111;
  --color-dark-900: #0A0A0A;
  --color-black: #000000;

  /* Stavy */
  --color-error-500: #D70729;
  --color-info-500: #D70729;
  --color-success-500: #5B8C3E;

  /* Stickers */
  --color-sticker-green-bg: rgba(91, 140, 62, 0.85);
  --color-sticker-green-text: #FFFFFF;
  --color-sticker-red-bg: rgba(215, 7, 41, 0.85);
  --color-sticker-red-text: #FFFFFF;
  --color-sticker-blue-bg: rgba(90, 130, 150, 0.85);
  --color-sticker-blue-text: #FFFFFF;
  --color-sticker-yellow-bg: rgba(184, 115, 51, 0.85);
  --color-sticker-yellow-text: #FFFFFF;
}

/* --- HLAVIČKA --- */
.toppanel,
.toppanel.mini-menu,
.toppanel::before {
  background-color: #000000 !important;
}

/* --- PATIČKA --- */
footer {
  background-color: #000000 !important;
}

/* --- BODY POZADÍ --- */
body {
  background-color: #F3F3F3 !important;
}

/* --- PRODUKTOVÉ KARTY - ZÁKLADNÍ STYLY --- */
.items .item {
  position: relative;
  padding: 1rem;
  padding-bottom: 3.5rem;
  background-color: #FFFFFF;
  border-radius: 0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  outline: 1px solid #E0E0E0;
}

.items .item:hover {
  outline-color: #D70729;
}

/* --- OBRÁZEK KONTEJNER --- */
.items .item .item-photo-content {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 0 !important;
  isolation: isolate;
}

/* --- OBRÁZEK (pseudo-element) + Apple Safari 26.2 FIX --- */
.items .item .item-photo-content::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
  background-image: inherit;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* iOS Safari: inherit nefunguje na ::before, var(--item-bg) z JS jako override */
@supports (-webkit-touch-callout: none) {
  .items .item .item-photo-content::before {
    background-image: var(--item-bg);
  }
}

/* --- CENA - VĚTŠÍ, TUČNĚJŠÍ, ZAROVNANÁ DOLEVA DOLŮ --- */
.items .item .item-info-panel .item-info-btn:nth-child(2) {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
}

.items .item .item-info-panel .item-info-btn:nth-child(2) > h4 {
  font-weight: 500;
  font-size: 1.3rem;
  -webkit-text-stroke: 0.4px currentColor;
  color: #D70729 !important;
}

/* --- TLAČÍTKO "+" - ČERVENÝ STYL --- */
.items .item .item-buy-now {
  width: 3rem;
  height: 3rem;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFFFFF;
  background: linear-gradient(135deg, #E8102F 0%, #D70729 50%, #B50621 100%);
  border-radius: 50%;
  cursor: pointer;
  overflow: hidden;
}

.items .item .item-buy-now .item-buy-now-icon::before {
  content: '+';
  font-size: 1.5rem;
  font-weight: 600;
  color: #FFFFFF;
}

/* --- FIX: TLAČÍTKO VŽDY KULATÉ (přepisuje media query) --- */
@media (min-width: 470px) {
  .items .item .item-buy-now {
    width: 3rem !important;
    height: 3rem !important;
    border-radius: 50% !important;
    padding: 0 !important;
  }
  .items .item .item-buy-now::after {
    content: none !important;
  }
}

/* --- NOTIFICATION BOX - ČERVENÁ --- */
.notification-box {
  background-color: #D70729 !important;
  color: #FFFFFF !important;
}

.notification-box .notf-inform,
.notification-box .notf-info {
  color: #FFFFFF !important;
}

/* --- SKRYJE COOKIES PRO APPLE --- */
@supports (-webkit-touch-callout: none) {
  #cc-main {
    display: none;
  }
}

/* --- VŠECHNA TLAČÍTKA - ČERVENÝ GRADIENT --- */
.gradient-btn,
a.gradient-btn,
input[type='submit'].gradient-btn,
input[type='button'],
input[type='submit'],
.btn-href.gradient-btn,
.bonus-points-href-btn.gradient-btn,
.set-coupon-btn,
.js-go-next,
.js-btn-finish-order-step {
  background: linear-gradient(135deg, #E8102F 0%, #D70729 50%, #B50621 100%) !important;
  background-image: linear-gradient(135deg, #E8102F 0%, #D70729 50%, #B50621 100%) !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 999px !important;
}

.gradient-btn:hover,
a.gradient-btn:hover,
input[type='submit'].gradient-btn:hover,
input[type='button']:hover,
input[type='submit']:hover,
.btn-href.gradient-btn:hover,
.bonus-points-href-btn:hover,
.set-coupon-btn:hover,
.js-go-next:hover,
.js-btn-finish-order-step:hover {
  background: linear-gradient(135deg, #B50621 0%, #D70729 50%, #E8102F 100%) !important;
  background-image: linear-gradient(135deg, #B50621 0%, #D70729 50%, #E8102F 100%) !important;
  box-shadow: 0 4px 15px rgba(215, 7, 41, 0.5);
}

/* --- FIX: IKONY V KOŠÍKU - BÍLÁ BARVA --- */
.cart-items .item .product-delete-btn {
  background-image: var(--icon-delete-white) !important;
}

.cart-items .item-change-btn .change-btn.plus-icon {
  background-image: var(--icon-plus-white) !important;
}

.cart-items .item-change-btn .change-btn.minus-icon {
  background-image: var(--icon-minus-white) !important;
}

/* Bonus points tlačítka */
#cartOverlay-2 .bonus-points-btn.plus-icon {
  background-image: var(--icon-plus-white) !important;
}

#cartOverlay-2 .bonus-points-btn.minus-icon {
  background-image: var(--icon-minus-white) !important;
}

/* --- FIX: "Zvýhodněná doprava" - SPRÁVNÝ SELEKTOR --- */
.actions-container .cart-col-name {
  color: #FFFFFF !important;
}

/* --- FIX: TLAČÍTKA S IKONAMI --- */
/* Tlačítko filtrování - žádné efekty, původní styl */
button.filter-products-btn.gradient-btn,
button.filter-products-btn.gradient-btn:hover {
  background: #000000 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") !important;
  background-size: 1.2rem !important;
  background-position: center left 0.8rem !important;
  background-repeat: no-repeat !important;
  color: #FFFFFF !important;
  padding-left: 2.4rem !important;
  box-shadow: none !important;
}

/* Tlačítka navigace a volání */
.call-button.gradient-btn {
  background: linear-gradient(135deg, #E8102F 0%, #D70729 50%, #B50621 100%) !important;
  display: flex !important;
  align-items: center !important;
}

/* Ikony v call-button - vlastní SVG ikony */
.call-button.gradient-btn .call-button-icon {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: auto !important;
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  filter: brightness(0) invert(1) !important;
}

.call-button.gradient-btn .call-button-icon.pointer-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") !important;
  filter: none !important;
}

.call-button.gradient-btn .call-button-icon.mobile-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") !important;
  filter: none !important;
}

/* --- FIX: TLAČÍTKO ZPĚT - IKONA ŠIPKY --- */
.back-btn.gradient-btn .btn-icon.arrow-left-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='19' y1='12' x2='5' y2='12'/%3E%3Cpolyline points='12 19 5 12 12 5'/%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  display: inline-block !important;
}

/* --- FIX: TLAČÍTKO ZPĚT - FLEXBOX LAYOUT --- */
.back-btn.gradient-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
}

.back-btn.gradient-btn .cleaner {
  display: none !important;
}

/* --- FIX: ENHANCEMENT MODAL - KŘÍŽEK ZAVÍRACÍ TLAČÍTKO --- */
.delete-btn.js-enhancement-close,
.delete-btn.js-enhancement-close:hover {
  font-size: 0 !important;
  background-image: var(--icon-delete-white) !important;
  background-size: 50% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* --- FIX: DOPORUČENÉ PRODUKTY - TLAČÍTKO "+" --- */
.recomend-product-hover.gradient-btn {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  position: absolute !important;
  bottom: 0.5rem !important;
  right: 0.5rem !important;
  top: auto !important;
  left: auto !important;
  width: 2.5rem !important;
  height: 2.5rem !important;
  min-width: unset !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 2 !important;
}

.recomend-product-hover.gradient-btn .recomend-product-icon.plus-icon {
  width: 2.5rem !important;
  height: 2.5rem !important;
  border-radius: 50% !important;
  background-color: #D70729 !important;
  background-image: var(--icon-plus-white) !important;
  background-size: 50% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.recomend-product {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 0 !important;
}

/* --- FIX: CENA V KOŠÍKU - BÍLÝ TEXT --- */
.cart-price-column.cart-bonus .cart-col-name,
.cart-price-column.cart-bonus .cart-col-value {
  color: #FFFFFF !important;
}

/* --- FIX: ZÁLOŽKY PŘÍDAVKŮ - ČITELNÝ TEXT --- */
.extended-menu-taste .ingredient-type-button {
  color: #000000 !important;
}

.extended-menu-taste .ingredient-type-button:hover {
  background-color: rgba(215, 7, 41, 0.12) !important;
  color: #D70729 !important;
  border-radius: 999px !important;
}

.extended-menu-taste .ingredient-type-button.active {
  color: #FFFFFF !important;
  background-color: #D70729 !important;
  border-radius: 999px !important;
}

/* --- FIX: TLAČÍTKA V KOŠÍKU / INGREDIENCE - ČITELNÝ TEXT --- */
.cart-back-btn a {
  color: #000000 !important;
  background-color: transparent !important;
  border: 1px solid #000000 !important;
  border-radius: 999px !important;
}

.cart-back-btn a:hover {
  background-color: #000000 !important;
  color: #FFFFFF !important;
}

.cart-pay-btn a {
  border-radius: 999px !important;
}

.cart-pay-btn a:hover {
  background: linear-gradient(135deg, #B50621 0%, #D70729 50%, #E8102F 100%) !important;
  background-image: linear-gradient(135deg, #B50621 0%, #D70729 50%, #E8102F 100%) !important;
  box-shadow: 0 4px 15px rgba(215, 7, 41, 0.5) !important;
}

/* --- FIX: COUPON TLAČÍTKO - PILL TVAR --- */
.set-coupon-btn,
.js-add-coupon-btn {
  border-radius: 999px !important;
}

/* --- FIX: IKONY +/- U PŘÍDAVKŮ - BÍLÉ --- */
.extend-qantity-btn.arrow-down-icon {
  background-image: var(--icon-minus-white) !important;
}

.extend-qantity-btn.arrow-up-icon {
  background-image: var(--icon-plus-white) !important;
}

/* =========================================
   MICRO ANIMACE - DESKTOP (min-width: 769px)
   ========================================= */

@media screen and (min-width: 769px) {
  /* Ostatní tlačítka - plynulý hover */
  .set-coupon-btn,
  .js-add-coupon-btn,
  .specify-address-button,
  .js-specify-address-button,
  .bonus-points-center-class {
    transition: background 0.3s ease, box-shadow 0.3s ease !important;
  }

  .set-coupon-btn:hover,
  .js-add-coupon-btn:hover,
  .specify-address-button:hover,
  .js-specify-address-button:hover,
  .bonus-points-center-class:hover {
    box-shadow: 0 4px 12px rgba(215, 7, 41, 0.35) !important;
    cursor: pointer;
  }

  /* Doporučené produkty v košíku — tlačítko vlevo nahoře (desktop) */
  .cart-recomend-box .recomend-product-hover.gradient-btn {
    top: 0.5rem !important;
    left: 0.5rem !important;
    bottom: auto !important;
    right: auto !important;
  }
}

/* =========================================
   POJISTKY - NEZASAHOVAT DO MODÁLŮ A KŘÍŽKŮ
   ========================================= */
.close,
.fancybox-close,
.modal-close,
button.close {
  animation: none !important;
  box-shadow: none !important;
  transform: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}

@media screen and (min-width: 769px) {
  .modal-footer input,
  .btn-secondary,
  .quantity-input button {
    animation: none !important;
    transform: none !important;
    box-shadow: none !important;
  }
}

/* =========================================
   MOBILE - VYPNUTÍ HOVER EFEKTŮ
   ========================================= */
@media screen and (max-width: 768px) {
  .items .item {
    transition: none !important;
  }

  .items .item:hover {
    box-shadow: none !important;
  }

  .items .item .item-buy-now {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    align-items: center !important;
    justify-content: center !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
  }

  .items .item:hover .item-buy-now,
  .items .item:hover input[type="submit"] {
    transform: none !important;
    animation: none !important;
  }

}

/* =========================================
   SCROLLBAR
   ========================================= */
::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #FFFFFF;
}

::-webkit-scrollbar-thumb {
  background: #D70729;
  border-radius: 6px;
}

::-webkit-scrollbar-thumb:hover {
  background: #B50621;
}

/* =========================================
   SMOOTH SCROLLING
   ========================================= */
html {
  scroll-behavior: smooth;
}
