/* Discourage casual copying. Delivered HTML remains accessible to the browser. */
[data-protected-content] {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}

[data-protected-content] :is(input, textarea, select, [contenteditable=""], [contenteditable="true"]) {
  -webkit-user-select: text;
  user-select: text;
  -webkit-touch-callout: default;
}

[data-protected-content] img {
  -webkit-user-drag: none;
}

.content-print-notice {
  display: none;
}

.content-protection-status {
  position: fixed;
  bottom: 90px;
  left: 50%;
  transform: translateX(-50%);
  width: max-content;
  max-width: calc(100% - 32px);
  padding: 12px 18px;
  border-radius: 12px;
  background: #27272a;
  color: #fff;
  box-shadow: 0 4px 24px #0002;
  z-index: 10000;
}

/* Applies to browser-menu printing and PDF export, including with JavaScript off. */
@media print {
  html,
  body[data-content-protected] {
    display: block !important;
    overflow: visible !important;
    height: auto !important;
    min-height: 0 !important;
    background: #fff !important;
  }

  body[data-content-protected] > :not(.content-print-notice) {
    display: none !important;
  }

  body[data-content-protected]::before,
  body[data-content-protected]::after {
    display: none !important;
  }

  body[data-content-protected] > .content-print-notice {
    display: block !important;
    padding: 24px;
    color: #000;
    font: 16px/1.6 sans-serif;
  }
}
