.privacy-panel {
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  bottom: 16px;
  box-shadow: 0 16px 40px rgb(15 23 42 / 18%);
  color: #172033;
  display: grid;
  gap: 10px;
  left: 16px;
  max-height: calc(100dvh - 32px);
  max-width: 680px;
  overflow-y: auto;
  padding: 18px;
  position: fixed;
  right: 16px;
  z-index: 1000;
}

.privacy-panel__heading { align-items: center; display: flex; font-size: 1.12rem; gap: 12px; justify-content: space-between; }
.privacy-panel__body { line-height: 1.5; margin: 0; }
.privacy-panel__link { color: #175cd3; justify-self: start; }
.privacy-panel__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.privacy-panel button { background: #fff; border: 1px solid #aeb9c9; border-radius: 7px; color: #172033; cursor: pointer; font: inherit; font-weight: 650; min-height: 42px; padding: 9px 14px; }
.privacy-panel button:hover { background: #f8fafc; }
.privacy-panel button:focus-visible, .privacy-panel a:focus-visible { outline: 3px solid #9db4ff; outline-offset: 2px; }
.privacy-panel .privacy-panel__primary { background: #2563eb; border-color: #2563eb; color: #fff; }
.privacy-panel .privacy-panel__primary:hover { background: #1d4ed8; }
.privacy-panel__close { font-size: 1.45rem !important; height: 38px; min-height: 38px !important; padding: 0 !important; width: 38px; }
.privacy-panel__options { border-bottom: 1px solid #e2e8f0; border-top: 1px solid #e2e8f0; display: grid; }
.privacy-panel__option { align-items: center; display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr) auto; padding: 13px 0; }
.privacy-panel__option + .privacy-panel__option { border-top: 1px solid #e2e8f0; }
.privacy-panel__option div { display: grid; gap: 3px; }
.privacy-panel__option span { color: #526175; line-height: 1.4; }
.privacy-panel__status { font-size: 0.88rem; font-weight: 650; white-space: nowrap; }
.privacy-panel__option input { height: 20px; margin: 0; width: 20px; }

@media (max-width: 520px) {
  .privacy-panel { bottom: 8px; left: 8px; padding: 14px; right: 8px; }
  .privacy-panel__actions { display: grid; grid-template-columns: 1fr; }
  .privacy-panel__actions button { width: 100%; }
  .privacy-panel__option { align-items: start; }
}
