/* MMJU Anti-OCR Central Standard v1.1 — MMJU_AOCR_1_1_0 */
.mmju-secure-zone {
  --aocr-opacity: .092;
  --aocr-angle: -28deg;
  --aocr-offset-x: 0px;
  --aocr-offset-y: 0px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  -webkit-user-select: none;
  user-select: none;
}

.mmju-secure-zone > :not(.mmju-aocr-overlay):not(.mmju-aocr-trace) {
  position: relative;
  z-index: 2;
}

.mmju-aocr-overlay {
  position: absolute;
  inset: -18%;
  z-index: 3;
  pointer-events: none;
  overflow: hidden;
  opacity: var(--aocr-opacity);
  transform: translate(var(--aocr-offset-x), var(--aocr-offset-y));
  background-image:
    repeating-linear-gradient(28deg, rgba(26, 83, 91, .24) 0 1px, transparent 1px 27px),
    repeating-linear-gradient(118deg, rgba(26, 83, 91, .13) 0 1px, transparent 1px 41px),
    radial-gradient(circle at 2px 2px, rgba(26, 83, 91, .28) 1px, transparent 1.3px);
  background-size: auto, auto, 19px 19px;
}

.mmju-aocr-watermark-line {
  position: absolute;
  left: -10%;
  width: 125%;
  transform: rotate(var(--aocr-angle));
  transform-origin: center;
  white-space: nowrap;
  text-align: center;
  font: 700 18px/1.15 Arial, Helvetica, sans-serif;
  letter-spacing: .55px;
  color: #164f58;
  text-shadow: 0 0 .2px rgba(255,255,255,.75);
}

.mmju-aocr-trace {
  position: absolute;
  right: 10px;
  bottom: 8px;
  z-index: 4;
  pointer-events: none;
  max-width: calc(100% - 20px);
  padding: 4px 7px;
  border: 1px solid rgba(22,79,88,.18);
  border-radius: 6px;
  background: rgba(255,255,255,.67);
  color: rgba(22,79,88,.58);
  font: 700 10px/1.2 Arial, Helvetica, sans-serif;
  letter-spacing: .35px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mmju-aocr-print-message { display: none; }

@media (max-width: 600px) {
  .mmju-secure-zone { --aocr-opacity: calc(var(--aocr-base-opacity, .092) * .88); }
  .mmju-aocr-watermark-line { font-size: 15px; letter-spacing: .3px; }
  .mmju-aocr-trace { font-size: 9px; }
}

@media (prefers-contrast: more) {
  .mmju-secure-zone { --aocr-opacity: .055 !important; }
  .mmju-aocr-overlay {
    background-image: repeating-linear-gradient(28deg, rgba(26,83,91,.14) 0 1px, transparent 1px 35px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mmju-aocr-overlay { transition: none !important; }
}

@media print {
  body.mmju-aocr-print-block > * { display: none !important; }
  body.mmju-aocr-print-block .mmju-aocr-print-message {
    display: block !important;
    padding: 40px;
    font: 700 24px Arial, sans-serif;
  }
}
