/* Position Cookiebot's existing Swift dialog as a compact bottom bar.
   Cookiebot owns visibility, tabs, consent, buttons and branding.
   No consent controls or text are hidden or replaced by this stylesheet. */

#CybotCookiebotDialog#CybotCookiebotDialog {
  position: fixed !important;
  inset: auto 0 0 0 !important;
  top: auto !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important;
  translate: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: min(240px, 40vh) !important;
  max-height: min(240px, 40dvh) !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border-top: 1px solid #d7dce2 !important;
  box-shadow: 0 -8px 30px rgba(21, 31, 43, .12) !important;
  font-size: 14px !important;
  animation: none !important;
  transition: none !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogContentWrapper {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 1240px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: min(239px, calc(40vh - 1px)) !important;
  max-height: min(239px, calc(40dvh - 1px)) !important;
  margin: 0 auto !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogHeader {
  position: absolute !important;
  top: 5px !important;
  right: 18px !important;
  width: 120px !important;
  max-width: 120px !important;
  height: 26px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  z-index: 1 !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogHeaderLogosWrapper {
  width: 100% !important;
  height: 26px !important;
  margin: 0 !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogPoweredbyLink {
  flex: 0 0 auto !important;
  width: auto !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogPoweredbyCybot {
  width: 108px !important;
  height: 26px !important;
  margin-left: auto !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogPoweredbyCybot svg {
  width: 108px !important;
  height: 26px !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogNav {
  flex: 0 0 auto !important;
  min-height: 0 !important;
  padding: 0 150px 0 18px !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogNavList {
  width: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: flex-start !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogNavItem {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogNavItemLink {
  min-height: 34px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  line-height: 20px !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogTabContent {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow: auto !important;
  overscroll-behavior: contain;
}

#CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogTabPanel {
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBody {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBodyContent {
  flex: 0 1 auto !important;
  width: 100% !important;
  max-height: none !important;
  padding: 10px 16px !important;
  overflow: visible !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBodyContentTitle {
  margin-bottom: 6px !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText {
  font-size: 14px !important;
  line-height: 1.55 !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBodyFieldsetInnerContainer {
  padding: 8px 18px !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogFooter {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 10px 18px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBodyButtons {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBodyButtonsWrapper {
  width: 100% !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  margin: 0 !important;
}

#CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogBodyButton {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
}

/* Use the same bounded layout for every tab and every reopening of the CMP.
   Only the content scrolls; navigation and consent buttons stay accessible. */
@media (min-width: 1024px) {
  #CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogContentWrapper {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 390px !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    grid-template-areas: "nav nav" "content actions" !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogNav {
    grid-area: nav;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogTabContent {
    grid-area: content;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogFooter {
    grid-area: actions;
    align-items: center !important;
    align-self: stretch !important;
    border-top: 0 !important;
  }
}

@media (max-width: 600px) {
  #CybotCookiebotDialog#CybotCookiebotDialog {
    max-height: min(340px, 50vh) !important;
    max-height: min(340px, 50dvh) !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogContentWrapper {
    max-height: min(339px, calc(50vh - 1px)) !important;
    max-height: min(339px, calc(50dvh - 1px)) !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogHeader {
    top: 8px !important;
    right: 12px !important;
    width: 90px !important;
    max-width: 90px !important;
    height: 22px !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogHeaderLogosWrapper,
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogPoweredbyCybot,
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogPoweredbyCybot svg {
    width: 90px !important;
    height: 22px !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogNav {
    padding: 0 108px 0 6px !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogNavItemLink {
    padding: 8px 7px !important;
    font-size: 12px !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogBodyContent {
    padding: 12px !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog #CybotCookiebotDialogFooter {
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px)) !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogBodyButton {
    padding: 9px 6px !important;
    font-size: 12px !important;
  }
}

@media (max-height: 450px) {
  #CybotCookiebotDialog#CybotCookiebotDialog {
    max-height: min(200px, 60vh) !important;
    max-height: min(200px, 60dvh) !important;
  }
  #CybotCookiebotDialog#CybotCookiebotDialog .CybotCookiebotDialogContentWrapper {
    max-height: min(199px, calc(60vh - 1px)) !important;
    max-height: min(199px, calc(60dvh - 1px)) !important;
  }
}
