/* Deterrent layer only — not perfect protection. */

.zp-protect-overlay {
  position: absolute;
  inset: 0;
  z-index: 5;
  background: transparent;
  -webkit-user-drag: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  pointer-events: auto;
  touch-action: pan-y;
}

/* Zero specificity so the site's own positioning (e.g. absolute landing slides) always wins. */
:where([data-protect-poster]) {
  position: relative;
}

[data-protect-poster] {
  -webkit-user-drag: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

[data-protect-poster] canvas,
[data-protect-poster] .zp-protect-bleed {
  -webkit-user-drag: none;
  user-select: none;
  -webkit-touch-callout: none;
  pointer-events: none;
}

.zp-protect-bleed {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

#zp-protect-blackout {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  background: #000;
  display: none;
  pointer-events: auto;
}

#zp-protect-blackout.is-on {
  display: block;
}

body.zp-protect-blackout-posters [data-protect-poster],
body.zp-protect-blackout-posters [data-protect-poster] canvas,
body.zp-protect-blackout-posters [data-protect-poster] .zp-protect-bleed {
  visibility: hidden;
}

.zp-protect-legal {
  flex: 1 0 100%;
  margin: 8px 0 0;
  padding: 0;
  font-size: 11px;
  letter-spacing: 0.04em;
  line-height: 1.5;
  color: rgba(244, 239, 232, 0.55);
}

@media print {
  [data-protect-poster],
  .poster-frame,
  .landing-portrait,
  .landing-echo,
  .landing-art,
  .landing-bleed {
    display: none !important;
  }
  body::after {
    content: "Printing disabled. © Zahra Palmer. All rights reserved.";
    display: block;
    padding: 2rem;
    font-size: 16px;
    color: #000;
  }
}
