/*
 * IONTMAX Cookies — consent notice position
 * Keep the native cookie notice floating in the viewport.
 */

.siteCookies.siteCookies--right,
div.siteCookies.siteCookies--right.js-siteCookies {
  position: fixed !important;
  top: auto !important;
  right: 20px !important;
  bottom: 20px !important;
  left: auto !important;
  z-index: 100000001 !important;
  margin: 0 !important;
  transform: none !important;
}

@media (max-width: 479px) {
  .siteCookies.siteCookies--right,
  div.siteCookies.siteCookies--right.js-siteCookies {
    right: 12px !important;
    bottom: 12px !important;
    left: 12px !important;
  }
}


/*
 * IONTMAX Cookies — Colorbox anti-FOUC
 *
 * Popup se při otevírání skryje, ale overlay ani stránka
 * se nijak nemění. Po stabilizaci Colorbox layoutu se popup
 * zobrazí krátkým fade-inem.
 */


/* =========================================================
   OPENING / LAYOUT CALCULATION
   ========================================================= */

#colorbox.im-cookies-popup-pending {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;

  animation: none !important;
  transition: none !important;
}


/*
 * Během výpočtu zakážeme případné CSS animace uvnitř popupu.
 * Shoptet si může dál normálně počítat width/height.
 */

#colorbox.im-cookies-popup-pending #cboxContent,
#colorbox.im-cookies-popup-pending #cboxLoadedContent,
#colorbox.im-cookies-popup-pending .colorbox-html-content,
#colorbox.im-cookies-popup-pending .cookiesSetting__form {
  animation: none !important;
  transition: none !important;
}


/* =========================================================
   READY
   ========================================================= */

#colorbox.im-cookies-popup-ready {
  visibility: visible !important;
  pointer-events: auto !important;

  animation:
    im-cookies-popup-fade-in
    160ms
    ease-out
    both !important;
}


@keyframes im-cookies-popup-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}


/* =========================================================
   STABILNÍ COOKIE ROW UŽ PŘI PRVNÍM VÝPOČTU
   ========================================================= */

#cboxContent.cookiesDialog .cookiesSetting__item {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    50px !important;

  align-items: center !important;

  gap: 20px !important;

  width: 100% !important;
}


/* =========================================================
   SWITCH COLUMN
   ========================================================= */

#cboxContent.cookiesDialog .cookiesSetting__item__col2 {
  display: flex !important;

  align-items: center !important;
  justify-content: flex-end !important;

  flex: 0 0 50px !important;

  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   NATIVE CHECKBOX — NESMÍ ANI PROBLIKNOUT
   ========================================================= */

#cboxContent.cookiesDialog .cookiesSetting__item__checkbox {
  position: absolute !important;

  width: 1px !important;
  height: 1px !important;

  margin: -1px !important;
  padding: 0 !important;

  overflow: hidden !important;

  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;

  border: 0 !important;

  opacity: 0 !important;

  appearance: none !important;
  -webkit-appearance: none !important;

  pointer-events: none !important;

  white-space: nowrap !important;
}


/* =========================================================
   SWITCH SIZE
   ========================================================= */

#cboxContent.cookiesDialog .cookiesSetting__item__status {
  position: relative !important;

  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  flex: 0 0 50px !important;

  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;

  height: 28px !important;
  min-height: 28px !important;

  margin: 0 !important;
  padding: 0 !important;
}


#cboxContent.cookiesDialog .cookiesSetting__item__state {
  position: relative !important;

  display: block !important;

  flex: 0 0 50px !important;

  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;

  height: 28px !important;
  min-height: 28px !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {
  #cboxContent.cookiesDialog .cookiesSetting__item {
    grid-template-columns:
      minmax(0, 1fr)
      50px !important;

    gap: 14px !important;
  }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
  #colorbox.im-cookies-popup-ready {
    animation-duration: 0.01ms !important;
  }
}