/* Certified Report Frame (v2.0 §14). No drop shadows, gradients, or
   rounded consumer-UI chrome, per design_system.py's own stated rules --
   a plain bordered container, institutional not decorative. */

.report-frame {
  border: 1px solid var(--color-border);
  background: var(--color-background);
  margin-bottom: var(--space-8);
}

.report-frame__watermark {
  position: sticky;
  top: 0;
  z-index: 1;
  margin: 0;
  padding: var(--space-2) var(--space-4);
  background: var(--color-background-subtle);
  color: var(--color-muted);
  font-family: var(--font-ui);
  font-size: var(--size-1);
  font-weight: var(--weight-emphasis);
  text-align: center;
  border-bottom: 1px solid var(--color-border);
}

.report-frame__viewport {
  width: 100%;
  aspect-ratio: 3 / 4;
}

.report-frame__viewer {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.report-frame__open-link {
  margin: 0;
  padding: var(--space-3) var(--space-4);
  border-top: 1px solid var(--color-divider);
  font-family: var(--font-ui);
  font-size: var(--size-1);
}

.report-frame__open-link a {
  color: var(--color-accent);
}

/* Below this width a scaled iframe of a full institutional document is
   not comfortable to read regardless of aspect ratio -- the "Open full
   report" link becomes the primary reading path, stated in page copy,
   not hidden. */
@media (max-width: 640px) {
  .report-frame__viewport {
    aspect-ratio: 1 / 1;
  }
}
