/* Nahrání vlastních fontů */
@font-face {
  font-family: 'Montserrat';
  src: url('/user-data/factories/675/Montserrat-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Montserrat';
  src: url('/user-data/factories/675/Montserrat-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}

/* Nastavení písma pro vše */
* {
  font-family: 'Montserrat' !important;
}

/* Běžný text bude Medium */
body,
p,
span,
div,
label {
  font-weight: 500 !important;
  /* Medium */
}

/* Nadpisy, ceny a tlačítka budou ExtraBold */
h1,
h2,
h3,
h4,
h5,
h6,
strong,
b,
.price,
button,
a.btn,
input[type="submit"] {
  font-weight: 800 !important;
  /* ExtraBold */
}

/* =========================================
   GLOBÁLNÍ ZAOBLENÍ VŠECH TLAČÍTEK (POUZE DESKTOP)
   ========================================= */
/* Toto zajistí, že VŠECHNA tlačítka na webu budou mít stejné zaoblení - JEN na desktopu */
@media screen and (min-width: 769px) {

  button,
  input[type="submit"],
  input[type="button"],
  input[type="reset"],
  a.btn,
  a.gradient-btn,
  .btn,
  .gradient-btn,
  .button,
  .btn-primary,
  .btn-secondary,
  .btn-outline,
  .btn-white,
  .btn-light,
  button.btn,
  button.btn-secondary,
  button.btn-primary,
  a[role="button"],
  input.btn {
    border-radius: 999px !important;
    /* Maximální zaoblení - tlačítka jako pilulky */
  }

  /* SUPER SILNÉ pravidlo pro sekundární tlačítka - MUST WIN! */
  .btn-secondary,
  button.btn-secondary,
  .modal-footer button,
  .modal-footer input,
  .modal-footer .btn,
  input[type="button"],
  button[type="button"] {
    border-radius: 999px !important;
    -webkit-border-radius: 999px !important;
    -moz-border-radius: 999px !important;
  }
}

/* STYLE DIFF */

/* HlaviÄka */
.toppanel,
.toppanel.mini-menu,
.toppanel::before {
  background-color: #ffffff;
}

/* PatiÄka */
footer {
  background-color: #ffffff;
}

/* Horní panel - šedé ikonky */
:root {
  --icon-menu_list-gray: url('/ui/system/icons/gray/menu_list.svg');
}

.toppanel::before {
  background-color: #fff;
}

.bottom-panel .bottom-btn.orders-icon {
  background-image: var(--icon-orders-gray);
}

.bottom-panel .bottom-btn.favorite-food {
  background-image: var(--icon-heart-gray);
}

.bottom-panel .bottom-btn.favorite-food:hover {
  background-image: var(--icon-heart_active-gray);
}

.bottom-panel .bottom-btn-cart::after {
  background-image: var(--icon-cart_empty-gray);
}

.bottom-panel .bottom-btn.customer-icon {
  background-image: var(--icon-customer-gray);
}

.bottom-panel .bottom-btn.points .bottom-btn-center>h4,
.bottom-panel .bottom-btn.points .bottom-btn-center>label {
  color: var(--color-gray-900);
}

.toppanel .toppanel-btn {
  background-image: var(--icon-menu_list-gray);
}

/* Phoenix */

.extended-menu .food-types .food-type-button>img {
  filter: brightness(0) saturate(100%) invert(10%) sepia(73%) saturate(6990%) hue-rotate(352deg) brightness(112%) contrast(99%);
}

/* Odstranění zaoblení JEN pro obrázky (::before), NE pro tlačítka */
.items .item .item-photo-content::before,
.item-detail-photo-content::before,
.menu .menu-btn .menu-btn-content::before,
.cart-items .item .item-photo-content::before {
  border-radius: unset !important;
  background-repeat: no-repeat;
}

/* Společné nastavení pro tlačítka a elementy (BEZ unset border-radius) */
.items .item .item-buy-now,
input[type="submit"],
input[type="button"],
a.gradient-btn,
a.back-btn,
.cart-back-btn>a,
.cart-pay-btn>a,
.set-coupon-btn,
.edit-cookies-btn,
.item-detail-box .back-btn,
.cart-sum,
.cart-box .cart-recomend-box,
.cart-items .item-change-btn,
.menu-btn,
.gradient-btn {
  background-repeat: no-repeat !important;
  transition: background-color 0.3s ease !important;
}

a.back-btn,
.back-btn,
.item-detail-box .back-btn,
a.gradient-btn.back-btn {
  color: #4F4F4F !important;
  /* border-radius je nastavený globálně, není třeba unset */
}

/* Ikona šipky v tlačítku Zpět */
.back-btn .btn-icon,
.back-btn .arrow-left-icon {
  filter: invert(30%) !important;
}

.selected {
  background-color: #e20b18;
}

/* =========================================
   OPRAVA MENU-BTN - odstranění černého pozadí
   ========================================= */
/* Menu tlačítko - pouze červené zaoblené, bez černého pozadí */
.menu-btn,
.menu .menu-btn {
  background-color: transparent !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

.menu-btn.selected,
.menu .menu-btn.selected {
  background-color: #e20b18 !important;
}

/* Vnitřní obsah menu tlačítka */
.menu-btn .menu-btn-content,
.menu .menu-btn .menu-btn-content {
  background-color: transparent !important;
  border-radius: 999px !important;
}

/* Pseudo-element ::before - skrýt černé pozadí */
.menu-btn::before,
.menu .menu-btn::before,
.menu-btn .menu-btn-content::before,
.menu .menu-btn .menu-btn-content::before {
  background-color: transparent !important;
  border-radius: 999px !important;
}

/* Hover pro item-buy-now je definován níže v sekci 2 a 4 (POUZE DESKTOP) */

.items .item .item-info-panel .item-info-btn:nth-child(1)>select,
#cartOverlay-2 .select-content-box {
  border-color: black;
  border-radius: unset;
}

.items .item .item-photo-content:hover::before {
  transform: scale(110%);
  transition: ease-in-out 0.5s;
}

.items .item .item-photo-content::before {
  transition: ease-in-out 0.5s;
}

.items .item .item-photo-content .stickers-content {
  justify-content: flex-start;

}

.footer-logo {
  background-image: url('/user-data/factories/675/imgs/logo/logo_ver_color.png') !important;
}

.sticker-green {
  color: transparent;
  /* hide text */
  font-size: 0;
  /* hide any remaining text spacing */
  background-image: url('https://cdn.objedname.eu/user-data/factories/675/imgs/stitek-vegeterianske.png');
  background-color: unset;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
}



.items .item .item-photo-content .stickers-content .sticker-red {
  color: transparent;
  /* hide text */
  background-image: url('https://cdn.objedname.eu/user-data/factories/675/imgs/stitek-palive.png');
  font-size: 1rem;
  background-color: unset;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
}

.items .item .item-info-panel .item-info-btn:nth-child(1) {
  justify-content: start;
}

footer {
  border-top: 1px solid #eeeeee;
  color: #e20b18;
}

.review-star {
  filter: brightness(0) saturate(100%) invert(23%) sepia(90%) saturate(2537%) hue-rotate(150deg) brightness(85%) contrast(99%);
}

.footer-app-content,
.social-links {
  filter: brightness(0) saturate(100%) invert(9%) sepia(86%) saturate(5955%) hue-rotate(348deg) brightness(111%) contrast(110%);

}

/* Nastavení tlačítek - POZOR: Hlavní styly tlačítek jsou níže v sekci "4. TLAČÍTKO" */

/* =========================================
   1. DEFINICE PULZUJÍCÍ ANIMACE
   ========================================= */
/* POZNÁMKA: Starší definice byla odstraněna - používá se finální verze níže (řádek 310+) */

/* =========================================
   2. APLIKACE JEN NA HLAVNÍ TLAČÍTKA (POUZE DESKTOP)
   ========================================= */
/* Zde cílíme POUZE na nákupní tlačítka a JEN na desktopu. */

@media screen and (min-width: 769px) {

  /* Pouze BUY-NOW tlačítka - červená s hover efektem */
  .items .item .item-buy-now,
  .item-detail-box .item-buy-now,
  .cart-pay-btn>a {
    border-radius: 999px !important;
    font-weight: 700 !important;
    background-color: #e20b18 !important;
    border: none !important;
    transition: background-color 0.3s ease !important;
  }

  /* Aktivace animace po najetí myší + ztmavnutí - POUZE BUY-NOW */
  .items .item .item-buy-now:hover,
  .item-detail-box .item-buy-now:hover,
  .cart-pay-btn>a:hover {
    animation: buttonPulse 1.5s infinite;
    background-color: #c00a15 !important;
    cursor: pointer;
  }
}

/* =========================================
   3. POJISTKA PROTI ROZBITÍ JINÝCH PRVKŮ
   ========================================= */
/* Toto zajistí, že křížky a bílá tlačítka zůstanou v klidu,
   i kdyby se na ně nějaké pravidlo omylem chytilo. */

/* Křížek (zavírání) - NATVRDO vypnout efekty */
.close,
.fancybox-close,
.modal-close,
button.close {
  animation: none !important;
  box-shadow: none !important;
  transform: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}

/* Bílá tlačítka a počítadla - NATVRDO vypnout efekty (POUZE DESKTOP) */
@media screen and (min-width: 769px) {

  .modal-footer input,
  .btn-secondary,
  .quantity-input button {
    animation: none !important;
    transform: none !important;
    box-shadow: none !important;
    background-color: #fff !important;
    color: #333 !important;
    border-radius: 999px !important;
  }
}

/* =========================================
   FINÁLNÍ OPRAVA (PULZOVÁNÍ BEZ SKÁKÁNÍ)
   ========================================= */

/* 1. UPRAVENÁ ANIMACE (Shadow Pulse) */
/* Odstranili jsme "scale", takže se animace nebude prát s posunem karty */
@keyframes buttonPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(226, 11, 24, 0.7);
  }

  70% {
    box-shadow: 0 0 0 10px rgba(226, 11, 24, 0);
  }

  /* Jen stín */
  100% {
    box-shadow: 0 0 0 0 rgba(226, 11, 24, 0);
  }
}

/* 2. OBRÁZEK - Zoom při najetí na celou kartu */
.items .item:hover .item-photo-content::before {
  transform: scale(1.10) !important;
  transition: transform 0.5s ease-in-out !important;
}

.items .item .item-photo-content::before {
  transition: transform 0.5s ease-in-out !important;
}

/* 3. TEXTY A CENA - Plynulý posun */
.items .item h3,
.items .item h4,
.items .item p,
.items .item .price,
.items .item .item-info-btn {
  transition: transform 0.5s ease-in-out !important;
  backface-visibility: hidden !important;
  transform-origin: center center !important;
  will-change: transform !important;
}

/* 4. TLAČÍTKO - Vzhled a příprava na pohyb (POUZE DESKTOP) */
@media screen and (min-width: 769px) {

  .items .item .item-buy-now,
  .items .item input[type="submit"] {
    /* Základní vzhled */
    border-radius: 999px !important;
    background-color: #e20b18 !important;
    border: none !important;
    font-weight: 700 !important;
    padding: 10px 20px !important;

    /* Pohyb - jen transition, bez transform */
    transition: transform 0.5s ease-in-out, background-color 0.3s !important;
  }

  /* 5. POHYB PŘI NAJETÍ MYŠÍ (HOVER) NA KARTU */

  /* A) Texty se posunou dolů a zvětší */
  .items .item:hover h3,
  .items .item:hover h4,
  .items .item:hover p,
  .items .item:hover .price,
  .items .item:hover .item-info-btn {
    transform: scale(1.02) translateY(5px) !important;
  }

  /* B) Tlačítko se posune dolů a začne pulzovat (při hoveru na kartu) */
  .items .item:hover .item-buy-now,
  .items .item:hover input[type="submit"] {
    transform: translateY(5px) !important;
    animation: buttonPulse 1.5s infinite;
    background-color: #c00a15 !important;
  }

  /* C) Ztmavnutí při hoveru přímo na BUY-NOW tlačítko */
  .items .item .item-buy-now:hover,
  .items .item input[type="submit"]:hover,
  .item-detail-box .item-buy-now:hover,
  .cart-pay-btn>a:hover {
    background-color: #c00a15 !important;
    cursor: pointer;
  }
}

/* =========================================
   6. OPRAVA PRO MOBILE
   ========================================= */
/* Na mobile vypneme pokročilé desktop efekty a zachováme jednoduché kulaté tlačítko */
@media screen and (max-width: 768px) {

  /* Zaoblení všech tlačítek na mobile (pilulky) */
  button,
  input[type="submit"],
  input[type="button"],
  input[type="reset"],
  a.btn,
  a.gradient-btn,
  .btn,
  .gradient-btn,
  .button,
  .btn-primary,
  .btn-secondary,
  a.back-btn,
  .cart-back-btn>a,
  .cart-pay-btn>a,
  .set-coupon-btn,
  .menu-btn {
    border-radius: 999px !important;
  }

  /* VÝJIMKA: Reset tlačítka buy-now na mobile - kulaté tlačítko s ikonou + */
  .items .item .item-buy-now,
  .items .item input[type="submit"],
  .items .item .js-add-to-cart-btn {
    /* Explicitní kruhový tvar */
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 700 !important;
    background-color: #e20b18 !important;
    border: none !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
  }

  /* Vypnout hover efekty na mobile (dotykové zařízení) */
  .items .item:hover .item-buy-now,
  .items .item:hover input[type="submit"] {
    transform: none !important;
    animation: none !important;
  }

  .items .item:hover h3,
  .items .item:hover h4,
  .items .item:hover p,
  .items .item:hover .price,
  .items .item:hover .item-info-btn {
    transform: none !important;
  }

  .items .item:hover .item-photo-content::before {
    transform: none !important;
  }
}

/* =========================================
   ⚡ ULTRA SILNÉ PRAVIDLO - POUZE DESKTOP ⚡
   ========================================= */
/* Toto pravidlo platí JEN pro desktop (min-width: 769px).
   Na mobile se tlačítka ponechají v původním stavu. */

@media screen and (min-width: 769px) {

  /* Všechna tlačítka - MAXIMÁLNÍ specificita */
  html body button,
  html body input[type="submit"],
  html body input[type="button"],
  html body input[type="reset"],
  html body a.btn,
  html body .btn,
  html body .button,
  html body .btn-primary,
  html body .btn-secondary,
  html body .btn-outline,
  html body .btn-white,
  html body a.gradient-btn,
  html body .gradient-btn,
  html body button.btn,
  html body button.btn-secondary,
  html body button.btn-primary,
  html body .modal-footer button,
  html body .modal-footer input,
  html body .modal-footer .btn,
  html body a.back-btn,
  html body .cart-back-btn>a,
  html body .cart-pay-btn>a,
  html body .set-coupon-btn,
  html body .edit-cookies-btn,
  html body .item-detail-box .back-btn,
  html body .menu-btn,
  html body .items .item .item-buy-now,
  html body form button,
  html body form input[type="submit"],
  html body form input[type="button"] {
    border-radius: 999px !important;
    -webkit-border-radius: 999px !important;
    -moz-border-radius: 999px !important;
  }

  /* Extra pojistka - pokud má tlačítko specifickou třídu */
  .btn-secondary.btn-secondary,
  button.btn-secondary.btn-secondary,
  input[type="button"][type="button"] {
    border-radius: 999px !important;
    -webkit-border-radius: 999px !important;
    -moz-border-radius: 999px !important;
  }

  /* VÝJIMKY - co NEMÁ být zaoblené */
  html body .close,
  html body .fancybox-close,
  html body .modal-close,
  html body button.close,
  html body .quantity-input button {
    border-radius: 0 !important;
  }
}

/* =========================================
   DESKTOP FOOTER - moderní layout
   ========================================= */
@media screen and (min-width: 769px) {

  /* Hlavní footer box */
  .footer-box {
    padding: 50px 40px 30px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
  }

  /* Footer content - hlavní kontejner */
  .footer-content {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 40px !important;
  }

  /* Logo v patičce */
  .footer-logo {
    flex: 0 0 180px !important;
    min-width: 180px !important;
    height: 100px !important;
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }

  /* Sloupce s informacemi */
  .footer-column {
    display: flex !important;
    flex: 1 !important;
    justify-content: space-between !important;
    gap: 30px !important;
  }

  /* Jednotlivé 33% sloupce */
  .footer-33-col {
    flex: 1 !important;
    min-width: 150px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  /* Nadpisy v patičce */
  .footer-box h4 {
    font-size: 1.1rem !important;
    margin-bottom: 12px !important;
    margin-top: 0 !important;
    color: #e20b18 !important;
    font-weight: 800 !important;
    text-align: center !important;
  }

  /* Texty a odkazy */
  .footer-box p,
  .footer-box a,
  .footer-info-btn {
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    color: #333 !important;
    text-decoration: none !important;
    text-align: center !important;
    margin: 0 !important;
  }

  .footer-info-btn:hover {
    color: #e20b18 !important;
  }

  /* Otevírací doba */
  .open-hours-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 4px !important;
    text-align: center !important;
  }

  .open-hours-D,
  .open-hours-H {
    font-size: 0.95rem !important;
    text-align: center !important;
    display: block !important;
    width: 100% !important;
  }

  /* Platební metody */
  .footer-payment-box {
    margin-top: 15px !important;
  }

  .footer-payment-content {
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 8px !important;
  }

  .footer-payment-type {
    width: 40px !important;
    height: 25px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    filter: none !important;
  }

  /* Platební ikony - barva #4F4F4F */
  .footer-payment-type.mastercard-accepted-payment,
  .footer-payment-type.visa-accepted-payment {
    filter: brightness(0) saturate(100%) invert(31%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(95%) contrast(90%) !important;
    opacity: 1 !important;
  }

  /* Sociální sítě */
  .social-links {
    display: flex !important;
    justify-content: center !important;
    gap: 15px !important;
    margin-top: 15px !important;
  }

  .social-link {
    width: 35px !important;
    height: 35px !important;
    display: inline-block !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    transition: transform 0.2s ease !important;
  }

  .social-link:hover {
    transform: scale(1.1) !important;
  }

  /* App store tlačítka */
  .footer-app-content {
    flex: 0 0 140px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    align-items: center !important;
  }

  .footer-app-content a {
    display: block !important;
    width: 120px !important;
    height: 40px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    transition: transform 0.2s ease !important;
  }

  .footer-app-content a:hover {
    transform: scale(1.05) !important;
  }

  /* Footer autor */
  .footer-author {
    text-align: center !important;
    margin-top: 30px !important;
    padding-top: 20px !important;
    border-top: 1px solid #eee !important;
    font-size: 0.85rem !important;
    color: #999 !important;
  }

  .footer-author a {
    color: #999 !important;
    text-decoration: none !important;
  }

  .footer-author a:hover {
    color: #e20b18 !important;
  }

  /* Skrýt cleaner divy */
  .footer-box .cleaner {
    display: none !important;
  }
}

/* =========================================
   MOBILE FOOTER - konzistentní design
   ========================================= */
@media screen and (max-width: 768px) {

  /* Hlavní footer box */
  .footer-box {
    padding: 30px 20px 20px !important;
  }

  /* Footer content - vertikální layout */
  .footer-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 25px !important;
  }

  /* Logo v patičce - centrované nahoře */
  .footer-logo {
    width: 150px !important;
    height: 80px !important;
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    margin-bottom: 10px !important;
  }

  /* Sloupce s informacemi - pod sebou */
  .footer-column {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 25px !important;
    width: 100% !important;
  }

  /* Jednotlivé sloupce */
  .footer-33-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
  }

  /* Nadpisy v patičce */
  .footer-box h4 {
    font-size: 1rem !important;
    margin-bottom: 8px !important;
    margin-top: 0 !important;
    color: #e20b18 !important;
    font-weight: 800 !important;
    text-align: center !important;
  }

  /* Texty a odkazy */
  .footer-box p,
  .footer-box a,
  .footer-info-btn {
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
    color: #333 !important;
    text-decoration: none !important;
    text-align: center !important;
    margin: 0 !important;
  }

  /* Otevírací doba */
  .open-hours-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px !important;
    text-align: center !important;
  }

  .open-hours-D,
  .open-hours-H {
    font-size: 0.9rem !important;
    text-align: center !important;
    display: block !important;
  }

  /* Platební metody */
  .footer-payment-box {
    margin-top: 10px !important;
    text-align: center !important;
  }

  .footer-payment-content {
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 6px !important;
  }

  .footer-payment-type {
    width: 35px !important;
    height: 22px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    filter: none !important;
  }

  /* Platební ikony - barva #4F4F4F */
  .footer-payment-type.mastercard-accepted-payment,
  .footer-payment-type.visa-accepted-payment {
    filter: brightness(0) saturate(100%) invert(31%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(95%) contrast(90%) !important;
    opacity: 1 !important;
  }

  /* Sociální sítě */
  .social-links {
    display: flex !important;
    justify-content: center !important;
    gap: 20px !important;
    margin-top: 10px !important;
  }

  .social-link {
    width: 30px !important;
    height: 30px !important;
    display: inline-block !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
  }

  /* App store tlačítka */
  .footer-app-content {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    gap: 15px !important;
    margin-top: 10px !important;
  }

  .footer-app-content a {
    display: block !important;
    width: 100px !important;
    height: 35px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
  }

  /* Footer autor */
  .footer-author {
    text-align: center !important;
    margin-top: 20px !important;
    padding-top: 15px !important;
    border-top: 1px solid #eee !important;
    font-size: 0.8rem !important;
    color: #999 !important;
  }

  .footer-author a {
    color: #999 !important;
    text-decoration: none !important;
  }

  /* Skrýt cleaner divy */
  .footer-box .cleaner {
    display: none !important;
  }
}

/* =========================================
   ČERVENÝ SCROLLBAR
   ========================================= */
::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #E20B18;
  border-radius: 6px;
}

::-webkit-scrollbar-thumb:hover {
  background: #b30913;
}

//Apple Safari 26.2 FIX
.items .item .item-photo-content::before{
  content:"";
  display:block;
  width:100%;
  padding-top:100%;
  border-radius: var(--border-radius-lg);

  background-image: var(--item-bg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/*TEMPLATE_PHOENIX*/

@keyframes cart-scale-kiosk {
    0% {
      transform: scale(1);
    }
    50% {
      transform: scale(1.15);
    }
    100% {
      transform: scale(1);
    }
  }
  
  @keyframes cart-pulse-border {
    0% {
      transform: scale(1);
      opacity: 0.8;
    }
  
    70% {
      transform: scale(1.6);
      opacity: 0.3;
    }
  
    100% {
      transform: scale(20.0);
      opacity: 0;
    }
  }
  
  @media (min-width: 640px) {
    .kiosk-css {
      user-select: none;
    }
    .kiosk-css select {
      height: 3.5rem;
    }
    .kiosk-css .slide,
    .kiosk-css #home {
      padding-top: 0;
      padding-bottom: 0;
    }
    .kiosk-css .notification-box, 
    .kiosk-css .toppanel.mini-menu ~ .notification-box {
      top: 0;  
      position: fixed;
    }
    .kiosk-css .toppanel {
      display: none;
    }
    /* TOPLINE-CART */
    .kiosk-css #cart .cart-sum, .kiosk-css #cartOverlay-3 .cart-sum {
      position: fixed!important;
      top: 0;
      width: 100%;
      margin: 0px!important;
      padding: 0px!important;
    }
    .kiosk-css .body-container {
      margin: 120px 0 0 0;
    }
    /* TOP PANEL */
    .kiosk-css .bottom-panel {
      top: 0;
      bottom: 0;
      background-color: #fff;
      left: 0;
      right: 0;
      width: 100%;
      height: 120px;
      box-shadow: 3px 0px 10px rgba(0,0,0,0.2);
      align-items: center;
      display: flex;
      transform: none;
      position: fixed!important;
    }
    .kiosk-css .bottom-panel .bottom-btn {
      display: none;
    }
    .kiosk-css .bottom-panel .bottom-btn-cart {
      max-width: 150px;
      max-height: 80px;
      background-color: var(--color-primary-500);
      right: 0;
      border-radius: 1rem;
      position: relative;
      transform: none;
      margin-right: 1rem;
    }
    .kiosk-css .bottom-panel .bottom-btn-cart.animation {
      position: relative;
      animation: cart-scale-kiosk 1s;
    }
    .kiosk-css .bottom-panel .bottom-btn-cart.js-cart-floating.animation::after  {
      content: "";
      position: absolute;
      inset: 0;
      border: 3px solid #E7381B;
      border-radius: 12px;
      pointer-events: none;
      animation: cart-pulse-border 0.8s ease-out;
    }
    .kiosk-css .bottom-btn-cart h4 {
      position: absolute;
      display: inline !important;
      right: 15px;
      margin-bottom: -29px;
    }
    .kiosk-css .bottom-btn-cart.empty h4 {
      background-image: none;
      font-size: 0;
    }
    .kiosk-css .bottom-btn-cart.empty h4::before {
      display: none;
    }
    .kiosk-css .bottom-btn-cart h4::before {
      bottom: 0;
      left: -5px;
    }
    .kiosk-css .bottom-btn-cart h4::after {
      content: "KoÃÂ¡ÃÂ­k";
      font-size: 1.25rem;
      position: absolute;
      right: 4rem;
      bottom: 0.5rem;
    }
    .kiosk-css .bottom-panel .bottom-btn-cart::after {
      transform: none;
      left: unset;
      right: 0;
    }
    .kiosk-css #home .app-banner-content {
      grid-area: banners;
    }
    .kiosk-css #home .mini-banners-box {
      grid-area: mini-banners;
    }
  
    .kiosk-css #home .filter-products-btn {
      display: none;
    }
    .kiosk-css #home .filter-products-content {
      transform: none;
      height: auto;
      opacity: 1;
    }
    .kiosk-css #home .filter-content {
      justify-content: space-between;
    }
    .kiosk-css #home .items {
      grid-area: items;
      align-items: start;
      padding-bottom: 120px;
    }
    .kiosk-css #home .items .item {
      max-width: 13rem;
    }
    .kiosk-css .items .item .item-photo-content-bottom > h4 {
      font-size: 1.25rem;
    }
    .kiosk-css .items .item .item-photo-content-bottom > p {
      font-size: 0.9rem;
    }
    .kiosk-css .items .item .item-info-panel .item-info-btn:nth-child(2) > h4 {
      font-size: 1.25rem;
    }
    .items .item .item-info-panel .item-info-btn:nth-child(1) {
      min-height: 2rem;
    }
    .kiosk-css #home .items .item .item-info-panel .item-info-btn:nth-child(2) {
      height: 2.75rem;
      display: flex;
      align-items: center;
    }
    .kiosk-css #home .items .item .item-buy-now {
      height: 4rem;
    }
    .kiosk-css .overlay-enhancement-content {
      transform: scale(1.25);
    }
    .kiosk-css footer {
      display: none;
    }
    .kiosk-css #item-detail {
      display: flex;
      backdrop-filter: blur(2px);
      flex-direction: column;
      align-items: center;
      justify-content: center;
      position: fixed;
      inset: 0;
      background-color: rgba(0,0,0,0.4);
      z-index: 5;
    }
    .kiosk-css #item-detail .item-detail-box {
      display: flex;
      flex-direction: column;
      max-width: 85%;
      border-radius: 2rem;
      background-color: #fff;
      transform: scale(1.25);
    }
    .kiosk-css .item-detail-box .back-btn {
      position: absolute;
      margin: 0;
      top: 1rem;
      right: 1.75rem;
      left: unset;
      background-image: var(--icon-delete-gray);
      font-size: 0;
      padding: 0;
      width: 2.5rem;
      background-position: center;
    }
    .kiosk-css .product-detail {
      padding: 4rem 1rem 0 1rem;
      margin-top: 0;
      min-width: 60vw;
    }
    .kiosk-css .add-cart-column .add-to-cart,
    .kiosk-css .add-cart-column .add-to-cart-unavailable {
       height: 4rem;
    }
    .kiosk-css .item-reviews-box {
      display: none;
    }
    .kiosk-css .favorite-food-box {
      display: none;
    }
    .kiosk-css #cart .back-btn {
      display: none;
    }
    .kiosk-css #cart .cart-box {
      margin: 0;
      max-width: unset;
      min-height: 100vh;
      flex-direction: column;
    }
    .kiosk-css .cart-box .no-content {
      font-size: 1.25rem;
    }
    .kiosk-css #cart .cart-box > h4:first-child {
      position: sticky;
      top: 0;
      display: flex;
      flex-direction: column;
      justify-content: center;
     z-index: 1;
      background-color: #fff;
      height: 80px;
       box-shadow: 3px 0px 10px rgba(0,0,0,0.2);
      margin: 0;
    }
    .kiosk-css #cart .cart-items {
      width: 100%;
      flex: 1;
      height: 100%;
    }
    .kiosk-css .cart-box .cart-items .item {
      border-bottom: 1px solid var(--color-gray-200);
      padding-bottom: 1rem;
      grid-template-columns: 12rem 1fr auto;
    }
    .kiosk-css .cart-items .item .item-photo-content-bottom,
    .kiosk-css .cart-items .item .item-info-btn:nth-child(2) {
      font-size: 1.5rem;
    }
    .kiosk-css #cart .cart-box .cart-items .item:last-child {
      border: none;
    }
    .kiosk-css #cart .cart-items .item-change-btn .change-btn {
      width: 3rem;
      height: 3rem;
    }
    .kiosk-css #cart .cart-items .item-change-btn > span {
      font-size: 1.25rem;
      padding: 0 1.25rem;
    }
    .kiosk-css #cart .cart-right-box {
      top: unset;
      position: sticky;
      bottom: 0;
      left: 0;
      width: 100%;
      margin: 0;
      display: flex !important;
      flex-direction: column-reverse;
      z-index: 10000;
      margin-top: 2rem;
    }
    .kiosk-css #cart .cart-box .cart-recomend-box {
      padding-top: 0;
      border: none;
      box-shadow: 3px 0px 10px rgba(0,0,0,0.2);
      border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
      margin: 0;
    }
    .kiosk-css #cart .cart-box .cart-recomend-box > h4 {
      padding-top: 0.5rem;
    }
    .kiosk-css #cart .cart-box .recomend-products-overflow > a {
      max-width: 12rem;
    }
    .kiosk-css #cart .cart-box .cart-recomend-box .recomend-products-overflow:empty {
      padding: 0;
      margin: 0;
    }
    .kiosk-css #cart .cart-sum {
      border: none;
      box-shadow: 3px 0px 10px rgba(0,0,0,0.2);
      z-index: 1;
      border-radius: 0;
      display: flex;
      flex-direction: column;
      height: 120px;
      justify-content: center;
    }
    .kiosk-css #cart .cart-sum .cart-price-column,
    .kiosk-css #cartOverlay-3 .cart-sum .cart-price-column {
      display: none;
    }
    .kiosk-css #cart .cart-sum .cart-price-column.cart-price,
    .kiosk-css #cartOverlay-3 .cart-sum .cart-price-column.cart-price {
      display: block;
    }
    .kiosk-css #cart .cart-sum .cart-price-column .cart-col-name,
    .kiosk-css #cartOverlay-3 .cart-sum .cart-price-column .cart-col-name {
      display: none;
    }
    .kiosk-css #cart .cart-sum .cart-price-column.cart-price .cart-col-value,
    .kiosk-css #cartOverlay-3 .cart-sum .cart-price-column.cart-price .cart-col-value{
      position: absolute;
      right: 1rem;
      bottom: 1.25rem;
      padding: 0 1rem;
      width: 250px;
      height: 80px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      color: #fff;
      pointer-events: none;
      font-size: 1.25rem;
    }
    .kiosk-css .cart-sum .cart-price-column.cart-bonus {
      display: none !important;
    }
    .kiosk-css #cart .cart-sum .cart-price-column.cart-price .cart-col-value::before {
      content: "PokraÃÂovat ";
    }
    .kiosk-css #cartOverlay-3 .cart-sum .cart-price-column.cart-price .cart-col-value::before {
      content: "Odeslat";
    }
    .kiosk-css #cart .cart-bottom-btns {
      padding-top: 0;
      justify-content: space-between;
    }
    .kiosk-css #cart .cart-bottom-btns .cart-pay-btn a,
    .kiosk-css #cartOverlay-3 .cart-bottom-btns .cart-pay-btn a{
      font-size: 0;
    }
    .kiosk-css #cart .cart-bottom-btns > div,
    .kiosk-css #cartOverlay-3 .cart-bottom-btns > div {
      width: 250px;
    }
    .kiosk-css #cartOverlay-3 .cart-bottom-btns > div {
      margin-left: auto;
      margin-right: 1rem;
    }
    .kiosk-css #cart .cart-bottom-btns > div > a,
    .kiosk-css #cartOverlay-3 .cart-bottom-btns > div > a {
      height: 80px;
      font-size: 1.25rem;
    }
    .kiosk-css #cartOverlay-2 .cart-box {
      width: 100%;
      margin: 0;
      max-width: unset;
    }
    .kiosk-css #cartOverlay-2 .cart-items {
      padding: 0;
    }
    .kiosk-css #cartOverlay-2 .cart-box > h4,
    .kiosk-css #cartOverlay-2 .cart-items > h4{
      box-shadow: 3px 5px 5px rgba(0,0,0,0.075);
      height: 80px;
      display: flex;
      align-items: center;
      padding: 0 1rem;
      margin: 0;
    }
    .kiosk-css #cartOverlay-2 .cart-items > .select-content-box {
      margin: 2rem 0;
    }
    .kiosk-css #cartOverlay-2 .select-content-box {
      display: flex;
      gap: 2rem;
      justify-content: center;
      border: none;
      flex-wrap: wrap;
    }
    .kiosk-css #cartOverlay-2 .select-content {
      flex-direction: column;
      background-position: center 2rem;
      background-size: 7rem;
      position: relative;
      min-width: 14rem;
      min-height: 14rem;
      padding: 0;
    }
    .kiosk-css #cartOverlay-2 .select-content .extended-title {
      flex: 0;
      margin-top: 9rem;
    }
    .kiosk-css #cartOverlay-2 .select-content .label {
      position: static;
    }
    .kiosk-css #cartOverlay-2 .select-content input {
       display: none;
    }
    .kiosk-css #cartOverlay-2 .extended-price {
      display: none;
    }
    .kiosk-css #cartOverlay-2 .select-content .toggle-control {
      position: absolute;
      inset: 0;
      background-color: transparent;
      width: 100%;
      height: 100%;
      border-radius: 2rem;
      border-width: 4px;
      background-image: none;
    }
    .kiosk-css #cartOverlay-2 .select-content .toggle-control::after {
      display: none;
    }
    .kiosk-css #cartOverlay-2 .cart-sum {
      border: none;
    }
    .kiosk-css #cartOverlay-2 .cart-sum .cart-bottom-btns {
      display: flex !important;
      padding: 0;
    }
    .kiosk-css #cartOverlay-2 .cart-sum .cart-bottom-btns > div {
      display: none;
    }
    .kiosk-css #cartOverlay-2 .cart-sum .cart-bottom-btns .cart-back-btn {
      display: flex;
      position: fixed;
      left: 1rem;
      top: 20px;
      z-index: 100000;
      width: 250px;
      height: 80px;
      font-size: 1.25rem;
      background-image: none;
      background-color: transparent;
      border-radius: var(--border-radius-lg);
      font-weight: 500;
      border-color: #000;
      color: #000;
    }
  
    .kiosk-css .bonus-points-box,
    .kiosk-css #cartOverlay-3 .cart-box >  h4, 
    .kiosk-css #cartOverlay-3 .cart-box > .cart-items {
      display: none;
    }
    .kiosk-css #order-customer-form {
      grid-template-areas: 
        'delivery' 
        'heading' 
        'finalize'
        'sum';
      grid-template-columns: 1fr;
      grid-template-rows: 1fr 1fr 1fr max-content;
      margin: 0;
      max-width: unset;
      padding-top: 0;
      padding-bottom: 120px;
      height: 100vh;
    }
    .kiosk-css #cartOverlay-3 .back-btn {
      display: none;
    }
    .kiosk-css #cartOverlay-3 .cart-right-box {
      left: 0;
      width: 100%;
      bottom: 0;
      top: unset;
      z-index: 1000;
      position: fixed;
    }
    .kiosk-css #cartOverlay-3 .cart-sum {
      position: static;
      border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
      padding-bottom: 0;
      border: none;
      box-shadow: 3px 0px 10px rgba(0,0,0,0.2);
    }
    .kiosk-css #cartOverlay-3 .cart-sum .cart-price-column.coupon-cart {
      display: flex;
      align-items: center;
      height: 4rem;
      padding-left: 5rem;
      font-size: 1.125rem;
    }
    .kiosk-css #cartOverlay-3 .cart-sum .cart-price-column.coupon-cart .cart-col-name {
      display: inline;
    }
    .kiosk-css .cart-sum .actions-container .coupon-delete-btn {
      width: 3rem;
      height: 3rem;
    }
    .kiosk-css #cartOverlay-3 .cart-sum  .cart-bottom-btns {
      height: 120px;
      padding: 0;
      align-items: center;
      box-shadow: 3px 0px 10px rgba(0,0,0,0.2);
      margin-top: 2rem;
    }
    .kiosk-css #cartOverlay-3 .cart-sum .coupon-content {
      align-items: end;
    }
    .kiosk-css #cartOverlay-3 .cart-sum .coupon-content > .set-coupon-btn {
      font-size: 1rem;
      padding: 1rem;
    }
    .kiosk-css .order-tracking-box {
      position: fixed;
      left: 0;
      top: 0;
      padding: 0;
      width: 100%;
      height: 100%;
      max-width: unset;
      transform: none;
      pointer-events: unset;
      background-color: #fff;
      z-index: 999;
    }
    .kiosk-css .order-tracking-box:empty {
      display: none !important;
    }
    .kiosk-css .order-tracking-box > div {
      max-width: unset;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .kiosk-css .order-tracking-content {
      border: none;
      backdrop-filter: none;
      background-color: transparent;
      z-index: 1000;
    }
  
    .kiosk-css .order-tracking-content {
      background-color: #fff;
      border-radius: 0.75em;
      color: transparent;
      user-select: none;
    }
    .kiosk-css .order-tracking-content .paragon,
    .kiosk-css .order-tracking-content .order-tracking-daily-id {
      color: #676767;
    }
    .kiosk-css .order-tracking-content .order-tracking-daily-id  {
      font-size: 5rem;
    }
    .kiosk-css .order-tracking-content > h3 {
      display: none;
    }
    .kiosk-css .order-tracking-content > .order-tracking-daily-id::after {
      content: 'BYLA VYTVOÃÂENA';
      display: block;
      font-size: 1.5rem;
    }
    .kiosk-css .order-tracking-content > .btn {
      display: block;
      margin: 0 auto;
      padding: 1rem;
      color: #fff;
      border: 0;
      border-radius: var(--border-radius-lg);
      font-size: 1.25rem;
      font-weight: 500;
    }
    .kiosk-css .pm,
    .kiosk-css .new-box {
      display: none !important;
    }
  }
  
  @media (orientation: portrait) {
    .kiosk-css #home {
      display: grid;
      grid-template-areas: 
        "extended-menu banners"
        "extended-menu mini-banners"
        "extended-menu filter"
        "extended-menu items"
        "extended-menu .";
      grid-template-columns: 300px 1fr;
      grid-template-rows: min-content min-content min-content min-content 1fr;
    }
  
    .kiosk-css #home .filter-products-box {
      display: none;
      grid-area: filter;
      width: 100%;
      position: sticky;
      top: 0;
      background: var(--cc-bg);
      z-index: 3;
    }
  
    .kiosk-css #home .extended-menu {
      position: sticky;
      top: 0;
      grid-area: extended-menu;
      height: 100vh;
      margin-top: 0;
      padding: 0;
      box-shadow: 3px 0px 10px rgba(0,0,0,0.2);
      z-index: 4;
      overflow: auto;
      overscroll-behavior: contain;
      padding-top: 160px;
      padding-bottom: 160px;
    }
    .kiosk-css #home .extended-menu .food-types {
      flex-direction: column;
      flex-wrap: nowrap;
      padding: 0;
      width: 100%;
      overflow: unset;
    }
    .kiosk-css #home .extended-menu .food-types .food-type-button {
      gap: 0.75rem;
      font-size: 1.2rem;
    }
    .kiosk-css #home .extended-menu .food-types .food-type-button.active {
      background-color: var(--color-gray-200);
    }
    .kiosk-css #home .extended-menu .food-types .food-type-button::before {
      content: unset;
    }
    .kiosk-css #home .items .item {
      max-width: 30%;
    }
    .kiosk-css #cart .cart-box .recomend-products-overflow > a {
      width: calc(25% - 1.15rem);
      max-width: unset;
    }
    .kiosk-css #cartOverlay-2 .cart-items > .select-content-box {
      margin: 5rem 0;
    }
  }

/* Skrytí dopravních metod */
.kiosk-css .js-delivery-container > .select-content:nth-child(1 /* Číslo dopravní metody v pořadí */) {
  display: none;
}
/* Skrytí platebních metod */
.kiosk-css .js-payment-container > .select-content:nth-child(1 /* Číslo platební metody v pořadí */) {
  display: none;
}

/* skrytí cookies*/
@supports (-webkit-touch-callout: none) {
   #cc-main{
    display: none;
  }
}
/* QR Skrytí údajů o zákazníkovi */
.note .cart-form-box {
	display: none!important;
}

