.cmplz-cookiebanner {
  border: 3px solid #000000!important;
  padding: 8px 12px 12px!important;
  gap: 8px!important;
  max-width: calc(100vw - 20px)!important;
  width: var(--cmplz_banner_width)!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox:focus + .cmplz-label:before,
input[type=checkbox]:focus+label:after,
input[type=radio]:focus+label:after {
  box-shadow: none!important;
}

.cmplz-cookiebanner .cmplz-header {
  grid-template-columns: 1fr max-content!important;
  align-items: start!important;
  gap: 10px!important;
}

.cmplz-message,
.cmplz-categories {
  width: 100%!important;
}

.cmplz-cookiebanner .cmplz-title {
  grid-column-start: 1!important;
  justify-self: start!important;
  font-size: 20px!important;
  font-weight: inherit!important;
  display: block!important;
}

.cmplz-cookiebanner .cmplz-links.cmplz-documents {
  justify-self: start!important;
}

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
  padding: 2px 10px!important;
  height: fit-content!important;
  font-size: 12px!important;
  line-height: 1.2!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-always-active,
.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-category-title,
.cmplz-cookiebanner .cmplz-message {
  font-size: 12px!important;
  line-height: 1.2!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-save-preferences,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny {
  background: #ffffff!important;
  border: 1px solid #000000!important;
}

.cmplz-close {
  width: 12px!important;
  height: 12px!important;
  margin-top: 4px!important;
}

.cmplz-icon,
.cmplz-close {
  position: relative;
}

.cmplz-icon svg,
.cmplz-close svg {
  display: none!important;
}

.cmplz-close::after,
.cmplz-close::before {
  content: '';
  position: absolute;
  width: 14px;
  height: 2.5px;
  background-color: #000000;
  top: 50%;
  left: 50%;
}

.cmplz-close::after {
  transform: translate(-50%, -50%) rotate(45deg);
}

.cmplz-close::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.cmplz-icon::after,
.cmplz-icon::before {
  content: '';
  position: absolute;
  width: 9px;
  height: 2.5px;
  background-color: #000000;
  top: 50%;
  left: 50%;
}

.cmplz-icon::after {
  transform: translate(-80%, -50%) rotate(45deg);
}

.cmplz-icon::before {
  transform: translate(-20%, -50%) rotate(-45deg);
}

.cmplz-categories {
  padding-top: 10px;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-category-header {
  padding: 2px 7px!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label:before {
  background: #ffffff!important;
  border: 1px solid #000000!important;
  height: 12px!important;
  width: 20px!important;
  top: -6px!important;
  padding: 0!important;
  left: auto!important;
  right: 0!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label:before,
.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox:checked + .cmplz-label::before {
  border-radius: 0!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox:checked + .cmplz-label::before {
  background: #000!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label:after {
  border-radius: 0!important;
  background: #000!important;
  left: 13px!important;
  top: -3px!important;
  height: 6px!important;
  width: 6px!important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox:checked + .cmplz-label::after {
  background: #fff!important;
  left: 21px!important;
}

#cmplz-manage-consent .cmplz-manage-consent {
  display: block!important;
  bottom: 0!important;
  padding: 4px 7px 5px!important;
  height: fit-content!important;
  width: fit-content!important;
  min-width: 0!important;
  border: 1px solid #000000!important;
  right: -1px!important;
  bottom: 10px!important;
  transform: rotate(-90deg) translateX(100%);
  transform-origin: right bottom;
}

/* ------------------------------------------------------------ */
/*                            MOBILE                            */
/* ------------------------------------------------------------ */

@media only screen and (max-width: 820px) {
.cmplz-cookiebanner .cmplz-title {
  font-size: 16px!important;
}
}