.skipper-privacy,
.skipper-privacy-settings {
  --privacy-cream: #fdfaee;
  --privacy-teal: #246b65;
  --privacy-teal-dark: #173f3d;
  --privacy-rule: rgba(23, 63, 61, 0.24);
  box-sizing: border-box;
  color: var(--privacy-teal-dark);
  font-family: ui-rounded, "Arial Rounded MT Bold", system-ui, sans-serif;
}

.skipper-privacy[hidden] { display: none; }

.skipper-privacy {
  position: fixed;
  z-index: 2147483000;
  inset: auto 0 0;
  padding: 0.75rem;
  pointer-events: none;
}

.skipper-privacy__card {
  box-sizing: border-box;
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  column-gap: 1rem;
  width: min(100%, 50rem);
  max-height: calc(100dvh - 1.5rem);
  overflow-y: auto;
  margin-inline: auto;
  padding: 1rem;
  border: 1px solid var(--privacy-rule);
  border-radius: 1rem;
  background: var(--privacy-cream);
  box-shadow: 0 0.6rem 2rem rgba(23, 63, 61, 0.2);
  pointer-events: auto;
}

.skipper-privacy__eyebrow,
.skipper-privacy__title,
.skipper-privacy__summary,
.skipper-privacy__status,
.skipper-privacy__details p { margin: 0; }

.skipper-privacy__eyebrow {
  color: var(--privacy-teal);
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.09em;
}

.skipper-privacy__title { margin-top: 0.15rem; font-size: clamp(1.15rem, 4vw, 1.55rem); }
.skipper-privacy__summary { margin-top: 0.35rem; font-family: system-ui, sans-serif; line-height: 1.45; }
.skipper-privacy__content { min-width: 0; }
.skipper-privacy__header { min-height: 3rem; padding-inline-end: 3rem; }
.skipper-privacy__art { align-self: center; width: 58px; height: auto; }
.skipper-privacy__status:not(:empty) { margin-top: 0.45rem; font: 700 0.85rem/1.4 system-ui, sans-serif; }
.skipper-privacy__details { margin-top: 0.55rem; font: 0.82rem/1.45 system-ui, sans-serif; }
.skipper-privacy__details summary { min-height: 2.2rem; display: flex; align-items: center; color: var(--privacy-teal); font-weight: 800; cursor: pointer; }
.skipper-privacy__details p + p { margin-top: 0.45rem; }
.skipper-privacy__details a { color: var(--privacy-teal-dark); font-weight: 700; }

.skipper-privacy__actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(10rem, 100%), 1fr));
  gap: 0.65rem;
  margin-top: 0.8rem;
}

.skipper-privacy__choice,
.skipper-privacy-settings {
  min-height: 44px;
  border: 2px solid var(--privacy-teal);
  border-radius: 0.7rem;
  color: var(--privacy-teal-dark);
  background: var(--privacy-cream);
  font: 900 0.78rem/1.2 ui-rounded, "Arial Rounded MT Bold", system-ui, sans-serif;
  cursor: pointer;
}

.skipper-privacy__choice { padding: 0.7rem 0.9rem; }
.skipper-privacy__choice--primary { color: #fff; background: var(--privacy-teal); }
.skipper-privacy__choice:hover,
.skipper-privacy-settings:hover { background: #eef6ec; }
.skipper-privacy__choice--primary:hover { background: var(--privacy-teal-dark); }
.skipper-privacy__choice:focus-visible,
.skipper-privacy__close:focus-visible,
.skipper-privacy-settings:focus-visible { outline: 3px solid var(--privacy-teal-dark); outline-offset: 3px; }
.skipper-privacy__choice:disabled { cursor: not-allowed; opacity: 0.58; }

.skipper-privacy .skipper-privacy__close {
  position: absolute;
  top: 0.55rem;
  right: 0.55rem;
}

.skipper-privacy-settings {
  position: fixed;
  z-index: 2147482999;
  right: 0.75rem;
  bottom: 0.75rem;
  padding-inline: 0.8rem;
  box-shadow: 0 0.25rem 1rem rgba(23, 63, 61, 0.15);
}

@media (min-width: 48rem) {
  .skipper-privacy__card { grid-template-columns: 72px minmax(0, 1fr); padding: 1.15rem 1.25rem; }
  .skipper-privacy__art { width: 72px; }
  .skipper-privacy__actions { width: min(100%, 31rem); }
}

@media (prefers-reduced-motion: no-preference) {
  .skipper-privacy__card { animation: skipper-privacy-enter 180ms ease-out; }
  @keyframes skipper-privacy-enter { from { opacity: 0; transform: translateY(0.5rem); } }
}
