.pdc-cookie-modal,

.pdc-cookie-modal * {

  box-sizing: border-box;

}



.pdc-cookie-modal {

  position: fixed;

  inset: 0;

  z-index: 1000000;

  display: grid;

  place-items: center;

  padding: 18px;

  font-family: var(--pdc-front-font);

}



.pdc-cookie-modal[hidden] {

  display: none !important;

}



.pdc-cookie-modal__overlay {

  position: absolute;

  inset: 0;

  background: rgba(15, 23, 42, 0.58);

  backdrop-filter: blur(5px);

}



.pdc-cookie-modal__dialog {

  position: relative;

  z-index: 1;

  width: min(620px, 100%);

  max-height: min(760px, calc(100vh - 36px));

  display: flex;

  flex-direction: column;

  overflow: hidden;

  border-radius: calc(var(--pdc-front-radius) + 4px);

  background: var(--pdc-front-bg);

  color: var(--pdc-front-text);

  box-shadow: var(--pdc-front-shadow);

}

.pdc-cookie-modal__dialog header {
  position: initial;
}

.pdc-cookie-modal__header {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 16px;

  padding: 24px;

  border-bottom: 1px solid var(--pdc-front-border);

}



.pdc-cookie-modal__header h2 {

  margin: 0;

  color: var(--pdc-front-primary);

  font-size: 24px;

  font-weight: 650;

  line-height: 1.25;

}



.pdc-cookie-modal__close {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  width: 46px;

  height: 46px;

  border: 0;

  border-radius: 999px;

  background: var(--pdc-front-primary);

  color: #fff;

  font-size: 26px;

  line-height: 1;

  cursor: pointer;

}



.pdc-cookie-tabs {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  padding: 0 24px;

  border-bottom: 1px solid var(--pdc-front-border);

}



.pdc-cookie-tabs button {

  position: relative;

  min-height: 58px;

  border: 0;

  background: transparent;

  color: var(--pdc-front-primary);

  font-family: var(--pdc-front-font);

  font-size: 14px;

  font-weight: 750;

  cursor: pointer;

}



.pdc-cookie-tabs button::after {

  content: "";

  position: absolute;

  left: 0;

  right: 0;

  bottom: -1px;

  height: 2px;

  background: transparent;

}



.pdc-cookie-tabs button.is-active::after {

  background: var(--pdc-front-primary);

}



.pdc-cookie-modal__body {

  overflow-y: auto;

  padding: 24px;

}



.pdc-cookie-tab-panel {

  display: none;

}



.pdc-cookie-tab-panel.is-active {

  display: block;

}



.pdc-cookie-intro {

  margin: 0 0 18px;

  color: var(--pdc-front-text);

  font-size: 16px;

  line-height: 1.55;

}



.pdc-cookie-preference-row {

  display: grid;

  grid-template-columns: 1fr auto;

  gap: 16px;

  align-items: center;

  margin-bottom: 16px;

}



.pdc-cookie-preference-row strong {

  display: block;

  margin-bottom: 4px;

  color: var(--pdc-front-primary);

  font-size: 17px;

  font-weight: 800;

  line-height: 1.25;

}



.pdc-cookie-preference-row small {

  display: block;

  max-width: 440px;

  color: var(--pdc-front-text);

  font-size: 14px;

  line-height: 1.45;

  opacity: 0.82;

}



.pdc-cookie-switch {

  position: relative;

  display: inline-flex;

  flex: 0 0 auto;

}



.pdc-cookie-switch input {

  position: absolute;

  opacity: 0;

  pointer-events: none;

}



.pdc-cookie-switch span {

  position: relative;

  display: inline-block;

  width: 58px;

  height: 30px;

  border-radius: 999px;

  background: #c7c7c7;

  cursor: pointer;

  transition: 0.2s ease;

}



.pdc-cookie-switch span::after {

  content: "";

  position: absolute;

  top: 3px;

  left: 3px;

  width: 24px;

  height: 24px;

  border-radius: 999px;

  background: #fff;

  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.2);

  transition: 0.2s ease;

}



.pdc-cookie-switch input:checked + span {

  /* background: var(--pdc-front-secondary); */

  background: var(--pdc-front-primary);

}



.pdc-cookie-switch input:checked + span::after {

  transform: translateX(28px);

}



.pdc-cookie-switch input:disabled + span {

  cursor: not-allowed;

  opacity: 0.78;

}



.pdc-cookie-list {

  display: grid;

  gap: 18px;

}



.pdc-cookie-list-group {

  display: grid;

  gap: 10px;

}



.pdc-cookie-list-group h4 {

  margin: 0;

  color: var(--pdc-front-primary);

  font-size: 15px;

  font-weight: 800;

}



.pdc-cookie-list-items {

  display: grid;

  gap: 10px;

}



.pdc-cookie-list-item {

  padding: 13px;

  border: 1px solid var(--pdc-front-border);

  border-radius: 12px;

  background: color-mix(in srgb, var(--pdc-front-bg) 94%, var(--pdc-front-primary));

}



.pdc-cookie-list-item strong {

  display: block;

  margin-bottom: 5px;

  color: var(--pdc-front-text);

  font-size: 14px;

  font-weight: 800;

  word-break: break-word;

}



.pdc-cookie-list-item span {

  display: inline-flex;

  margin-bottom: 6px;

  padding: 3px 8px;

  border-radius: 999px;

  background: color-mix(in srgb, var(--pdc-front-primary) 12%, transparent);

  color: var(--pdc-front-primary);

  font-size: 11px;

  font-weight: 800;

}



.pdc-cookie-list-item p {

  margin: 0;

  color: var(--pdc-front-text);

  opacity: 0.75;

  font-size: 13px;

  line-height: 1.45;

}



.pdc-cookie-notice h3 {

  margin: 0 0 10px;

  color: var(--pdc-front-primary);

  font-size: 20px;

}



.pdc-cookie-notice p {

  margin: 0 0 14px;

  color: var(--pdc-front-text);

  font-size: 15px;

  line-height: 1.6;

}



.pdc-cookie-notice a {

  color: var(--pdc-front-primary);

  font-weight: 750;

  text-decoration: underline;

  text-underline-offset: 3px;

}



.pdc-cookie-modal__footer {

  display: grid;

  grid-template-columns: auto 1fr;

  gap: 10px;

  align-items: center;

  padding: 18px 24px 24px;

  border-top: 1px solid var(--pdc-front-border);

}



.pdc-cookie-modal__footer [data-pdc-save-preferences] {

  justify-self: stretch;

}



.pdc-cookie-version {

  grid-column: 1 / -1;

  justify-self: center;

  margin-top: 4px;

  color: var(--pdc-front-text);

  opacity: 0.72;

  font-size: 12px;

}



@media (max-width: 560px) {

  .pdc-cookie-modal {

    padding: 10px;

    align-items: end;

  }



  .pdc-cookie-modal__dialog {

    max-height: calc(100vh - 20px);

  }



  .pdc-cookie-modal__header {

    padding: 18px;

  }



  .pdc-cookie-modal__header h2 {

    font-size: 20px;

  }



  .pdc-cookie-tabs {

    padding: 0 14px;

  }



  .pdc-cookie-tabs button {

    min-height: 52px;

    font-size: 12px;

  }



  .pdc-cookie-modal__body {

    padding: 18px;

  }



  .pdc-cookie-modal__footer {

    grid-template-columns: 1fr;

    padding: 16px 18px 18px;

  }



  .pdc-cookie-modal__footer .pdc-cookie-button {

    width: 100%;

  }

}