/* PowerSense cookie consent module */

.ps-cookie-consent,
.ps-cookie-consent *,
.ps-cookie-consent *::before,
.ps-cookie-consent *::after,
.ps-cookie-consent__manage {
  box-sizing: border-box;
}

.ps-cookie-consent {
  --ps-cookie-bg: var(--ps-ui-paper);
  --ps-cookie-text: var(--ps-ui-ink);
  --ps-cookie-muted: var(--ps-ui-muted);
  --ps-cookie-soft: var(--ps-ui-muted);
  --ps-cookie-line: var(--ps-ui-line);
  --ps-cookie-line-strong: var(--ps-ui-line-strong);
  --ps-cookie-shadow: var(--ps-ui-shadow);

  position: fixed;
  inset: auto max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
  z-index: var(--ps-layer-overlay, 1000);
  color: var(--ps-cookie-text);
  font-family: var(--ps-ui-font);
}

.ps-cookie-consent[hidden],
.ps-cookie-consent__bar[hidden],
.ps-cookie-consent__modal[hidden],
.ps-cookie-consent__manage[hidden] {
  display: none !important;
}

.ps-cookie-consent__bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  width: min(100%, 920px);
  max-height: calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  margin-inline: auto;
  overflow: auto;
  padding: 24px;
  border: 1px solid var(--ps-cookie-line);
  border-radius: var(--ps-ui-radius-card);
  background: var(--ps-chrome-bg-strong);
  box-shadow: var(--ps-cookie-shadow);

  -webkit-backdrop-filter: blur(18px) saturate(112%);

  backdrop-filter: blur(18px) saturate(112%);
}

.ps-cookie-consent__copy {
  min-width: 0;
}

.ps-cookie-consent__eyebrow {
  display: block;
  margin-block-end: 8px;
  color: var(--ps-cookie-soft);
  font-size: var(--ps-ui-overline-size);
  font-weight: var(--ps-ui-label-weight);
  line-height: var(--ps-ui-leading-label);
  letter-spacing: var(--ps-ui-tracking-label);
}

.ps-cookie-consent h2 {
  margin: 0;
  color: var(--ps-cookie-text);
  font-size: var(--ps-ui-component-title);
  font-weight: var(--ps-ui-heading-weight);
  line-height: var(--ps-ui-leading-heading);
  letter-spacing: var(--ps-ui-tracking-body);
}

.ps-cookie-consent p {
  max-width: 620px;
  margin: 10px 0 0;
  color: var(--ps-cookie-muted);
  font-size: var(--ps-ui-small);
  line-height: var(--ps-ui-leading-body);
}

.ps-cookie-consent__link {
  display: inline-flex;
  margin-block-start: 10px;
  color: var(--ps-cookie-text);
  font-size: var(--ps-ui-small);
  font-weight: var(--ps-ui-strong-weight);
  line-height: var(--ps-ui-leading-compact);
  text-decoration: none;
}

.ps-cookie-consent__actions,
.ps-cookie-consent__panel-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.ps-cookie-consent__btn,
.ps-cookie-consent__icon-btn,
.ps-cookie-consent__manage {
  appearance: none;
}

.ps-cookie-consent__btn,
.ps-cookie-consent__icon-btn {
  border: 0;
  border-radius: var(--ps-ui-button-radius);
}

.ps-cookie-consent__btn,
.ps-cookie-consent__icon-btn,
.ps-cookie-consent__manage {
  font-family: inherit;
  line-height: var(--ps-ui-leading-control);
  cursor: pointer;
}

.ps-cookie-consent__btn {
  
  --ps-button-bg: var(--ps-ui-button-secondary-bg);
  --ps-button-color: var(--ps-ui-button-secondary-color);
  --ps-button-line: var(--ps-ui-button-secondary-line);
  --ps-button-hover-bg: var(--ps-ui-button-secondary-hover-bg);
  --ps-button-hover-color: var(--ps-ui-button-secondary-hover-color);
  --ps-button-hover-line: var(--ps-ui-button-secondary-hover-line);

  
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--ps-ui-control-height);
  max-width: 100%;
  padding: var(--ps-ui-button-padding);
  border: 1px solid var(--ps-button-line, var(--ps-ui-button-secondary-line));
  border-radius: var(--ps-ui-button-radius);
  background: var(--ps-button-bg, var(--ps-ui-button-secondary-bg));
  color: var(--ps-button-color, var(--ps-ui-button-secondary-color));
  box-shadow: none;
  cursor: pointer;
  font-family: var(--ps-ui-font);
  font-size: var(--ps-ui-button-size);
  font-weight: var(--ps-ui-button-weight);
  line-height: var(--ps-ui-leading-control);
  letter-spacing: var(--ps-ui-tracking-body);
  text-align: center;
  text-decoration: none !important;
  text-transform: none;
  white-space: normal;
  transition: background var(--ps-transition), border-color var(--ps-transition), color var(--ps-transition);

}

.ps-cookie-consent__btn--primary {
  --ps-button-bg: var(--ps-ui-brand);
  --ps-button-color: var(--ps-ui-on-color);
  --ps-button-line: var(--ps-ui-brand);
  --ps-button-hover-bg: var(--ps-ui-brand-hover);
  --ps-button-hover-color: var(--ps-ui-on-color);
  --ps-button-hover-line: var(--ps-ui-brand-hover);
}

.ps-cookie-consent__btn--soft {
  
  --ps-button-bg: var(--ps-ui-button-secondary-bg);
  --ps-button-color: var(--ps-ui-button-secondary-color);
  --ps-button-line: var(--ps-ui-button-secondary-line);
  --ps-button-hover-bg: var(--ps-ui-button-secondary-hover-bg);
  --ps-button-hover-color: var(--ps-ui-button-secondary-hover-color);
  --ps-button-hover-line: var(--ps-ui-button-secondary-hover-line);

}

.ps-cookie-consent__btn--ghost {
  
  --ps-button-bg: var(--ps-ui-button-secondary-bg);
  --ps-button-color: var(--ps-ui-button-secondary-color);
  --ps-button-line: var(--ps-ui-button-secondary-line);
  --ps-button-hover-bg: var(--ps-ui-button-secondary-hover-bg);
  --ps-button-hover-color: var(--ps-ui-button-secondary-hover-color);
  --ps-button-hover-line: var(--ps-ui-button-secondary-hover-line);

  --ps-button-line: transparent;
  --ps-button-hover-line: transparent;
  --ps-button-hover-bg: transparent;
}

.ps-cookie-consent__btn--ghost:hover:not(:disabled):not(.disabled):not([aria-disabled="true"]),
.ps-cookie-consent__btn--ghost:focus-visible:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
  
  border-color: var(--ps-button-hover-line, var(--ps-ui-button-secondary-hover-line));
  background: var(--ps-button-hover-bg, var(--ps-ui-button-secondary-hover-bg));
  color: var(--ps-button-hover-color, var(--ps-ui-button-secondary-hover-color));
  text-decoration: none !important;
  transform: none;
  box-shadow: none;
  filter: none;

}

.ps-cookie-consent__link:hover,
.ps-cookie-consent__link:focus-visible {
  color: var(--ps-cookie-text);
}

.ps-cookie-consent__btn--primary:hover:not(:disabled):not(.disabled):not([aria-disabled="true"]),
.ps-cookie-consent__btn--primary:focus-visible:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
  
  border-color: var(--ps-button-hover-line, var(--ps-ui-button-secondary-hover-line));
  background: var(--ps-button-hover-bg, var(--ps-ui-button-secondary-hover-bg));
  color: var(--ps-button-hover-color, var(--ps-ui-button-secondary-hover-color));
  text-decoration: none !important;
  transform: none;
  box-shadow: none;
  filter: none;

}

.ps-cookie-consent__btn--soft:hover:not(:disabled):not(.disabled):not([aria-disabled="true"]),
.ps-cookie-consent__btn--soft:focus-visible:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
  
  border-color: var(--ps-button-hover-line, var(--ps-ui-button-secondary-hover-line));
  background: var(--ps-button-hover-bg, var(--ps-ui-button-secondary-hover-bg));
  color: var(--ps-button-hover-color, var(--ps-ui-button-secondary-hover-color));
  text-decoration: none !important;
  transform: none;
  box-shadow: none;
  filter: none;

}


.ps-cookie-consent__modal {
  position: fixed;
  inset: 0;
  z-index: var(--ps-layer-modal, 10000);
  display: grid;
  place-items: center;
  padding: 20px;
}

.ps-cookie-consent__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .34);
}

.ps-cookie-consent__panel {
  position: relative;
  width: min(100%, 620px);
  max-height: min(760px, calc(100dvh - 40px));
  overflow: auto;
  padding: 24px;
  border: 1px solid var(--ps-cookie-line);
  border-radius: var(--ps-ui-radius-card);
  background: var(--ps-chrome-bg-strong);
  box-shadow: var(--ps-cookie-shadow);

  -webkit-backdrop-filter: blur(18px) saturate(112%);

  backdrop-filter: blur(18px) saturate(112%);
}

.ps-cookie-consent__panel-head {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  justify-content: space-between;
  padding-block-end: 18px;
  border-bottom: 1px solid var(--ps-cookie-line);
}

.ps-cookie-consent__icon-btn {
  
  --ps-button-bg: var(--ps-ui-button-icon-bg);
  --ps-button-color: var(--ps-ui-button-icon-color);
  --ps-button-line: var(--ps-ui-button-icon-line);
  --ps-button-hover-bg: var(--ps-ui-button-icon-hover-bg);
  --ps-button-hover-color: var(--ps-ui-button-icon-hover-color);
  --ps-button-hover-line: var(--ps-ui-button-icon-hover-line);

  
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--ps-ui-control-height);
  max-width: 100%;
  padding: var(--ps-ui-button-padding);
  border: 1px solid var(--ps-button-line, var(--ps-ui-button-secondary-line));
  border-radius: var(--ps-ui-button-radius);
  background: var(--ps-button-bg, var(--ps-ui-button-secondary-bg));
  color: var(--ps-button-color, var(--ps-ui-button-secondary-color));
  box-shadow: none;
  cursor: pointer;
  font-family: var(--ps-ui-font);
  font-size: var(--ps-ui-button-size);
  font-weight: var(--ps-ui-button-weight);
  line-height: var(--ps-ui-leading-control);
  letter-spacing: var(--ps-ui-tracking-body);
  text-align: center;
  text-decoration: none !important;
  text-transform: none;
  white-space: normal;
  transition: background var(--ps-transition), border-color var(--ps-transition), color var(--ps-transition);

  display: inline-flex;
  width: var(--ps-touch-target, 44px);
  height: var(--ps-touch-target, 44px);
  flex: 0 0 auto;
  padding: 0;
  font-size: var(--ps-ui-icon-size);
}

.ps-cookie-consent__icon-btn:hover:not(:disabled):not(.disabled):not([aria-disabled="true"]),
.ps-cookie-consent__icon-btn:focus-visible:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
  
  border-color: var(--ps-button-hover-line, var(--ps-ui-button-secondary-hover-line));
  background: var(--ps-button-hover-bg, var(--ps-ui-button-secondary-hover-bg));
  color: var(--ps-button-hover-color, var(--ps-ui-button-secondary-hover-color));
  text-decoration: none !important;
  transform: none;
  box-shadow: none;
  filter: none;

}

.ps-cookie-consent__form {
  display: grid;
  gap: 10px;
  margin-block: 18px;
}

.ps-cookie-consent__option {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--ps-cookie-line);
  border-radius: var(--ps-ui-radius-control);
  background: var(--ps-ui-paper);
}

.ps-cookie-consent__option strong,
.ps-cookie-consent__option span span {
  display: block;
}

.ps-cookie-consent__option strong {
  color: var(--ps-cookie-text);
  font-size: var(--ps-ui-small);
  line-height: var(--ps-ui-leading-compact);
}

.ps-cookie-consent__option span span {
  margin-block-start: 4px;
  color: var(--ps-cookie-muted);
  font-size: var(--ps-ui-small);
  line-height: var(--ps-ui-leading-compact);
}

.ps-cookie-consent__option input {
  width: 20px;
  height: 20px;
  accent-color: var(--ps-ui-brand);
}

.ps-cookie-consent__manage {
  --ps-cookie-text: var(--ps-ui-ink);
  --ps-cookie-muted: var(--ps-ui-muted);
  --ps-cookie-line: var(--ps-ui-line);

  position: fixed;
  inset: auto auto calc(18px + env(safe-area-inset-bottom)) 0;
  z-index: var(--ps-layer-sticky, 100);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--ps-touch-target, 44px);
  min-width: var(--ps-touch-target, 44px);
  height: var(--ps-touch-target, 44px);
  min-height: var(--ps-touch-target, 44px);
  padding: 0;
  border: 1px solid var(--ps-cookie-line, rgba(29, 29, 31, .14));
  border-left: 0;
  border-radius: 0 var(--ps-ui-button-radius) var(--ps-ui-button-radius) 0;
  background: var(--ps-chrome-bg-strong);
  color: var(--ps-cookie-muted, #6e6e73);
  font-size: 0;
  font-weight: var(--ps-ui-button-weight);
  opacity: .72;
  box-shadow: none;
  pointer-events: auto;
  transition:
    width .18s ease,
    opacity .18s ease,
    background .18s ease,
    color .18s ease;

  -webkit-backdrop-filter: blur(18px) saturate(112%);

  backdrop-filter: blur(18px) saturate(112%);
}

.ps-cookie-consent__manage::before {
  content: "";
  width: 6px;
  height: 18px;
  border-radius: var(--ps-ui-radius-control);
  background: currentColor;
  opacity: .75;
}

.ps-cookie-consent__manage:hover,
.ps-cookie-consent__manage:focus-visible {
  width: 104px;
  padding-inline: 12px;
  background: var(--ps-ui-paper);
  color: var(--ps-cookie-text, #1d1d1f);
  font-size: var(--ps-ui-caption);
  opacity: 1;
}

.ps-cookie-consent__manage:hover::before,
.ps-cookie-consent__manage:focus-visible::before {
  display: none;
}

@media (max-width: 720px) {
  .ps-cookie-consent {
    inset: auto 12px 12px;
  }

  .ps-cookie-consent__bar {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 18px;
  
  background: var(--ps-chrome-bg-strong);

  -webkit-backdrop-filter: blur(18px) saturate(112%);

  backdrop-filter: blur(18px) saturate(112%);
}

  

  .ps-cookie-consent__actions,
  .ps-cookie-consent__panel-actions {
    justify-content: stretch;
  }

  .ps-cookie-consent__btn {
    flex: 1 1 100%;
}

  .ps-cookie-consent__panel {
    padding: 18px;
  
  background: var(--ps-chrome-bg-strong);

  -webkit-backdrop-filter: blur(18px) saturate(112%);

  backdrop-filter: blur(18px) saturate(112%);
}

  .ps-cookie-consent__option {
    grid-template-columns: 1fr;
  }

  .ps-cookie-consent__manage {
    inset: auto auto calc(10px + env(safe-area-inset-bottom)) 0;
  
  background: var(--ps-chrome-bg-strong);

  -webkit-backdrop-filter: blur(18px) saturate(112%);

  backdrop-filter: blur(18px) saturate(112%);

  border-radius: 0 var(--ps-ui-button-radius) var(--ps-ui-button-radius) 0;
}
}

@media (prefers-reduced-motion: reduce) {
  .ps-cookie-consent__btn,
  .ps-cookie-consent__manage {
    transition: none;
  }
}
