/* Shared real-media compositions. Intrinsic geometry is independent of loading. */
.media-provenance { color: var(--muted); font-size: .6875rem; line-height: 1.5; }
.media-provenance a { display: inline-flex; min-height: 44px; align-items: center; }
.evidence-stage { aspect-ratio: 1048 / 666; position: relative; background: #fff; }
[data-evidence-view] { position: absolute; inset: 0; }
[data-evidence-view] img { width: 100%; height: 100%; object-fit: contain; }
.evidence-tools { min-height: 44px; display: flex; align-items: center; font-size: .6875rem; color: var(--muted); }
.evidence-switch { display: flex; gap: var(--space-lg); }
.evidence-switch button { border: 0; padding: var(--space-xs) 0; border-bottom: 1px solid transparent; background: transparent; font: inherit; color: var(--muted); min-height: 44px; cursor: pointer; }
.evidence-switch button[aria-pressed="true"] { color: var(--blue-strong); border-bottom-color: currentColor; }
.evidence-switch button:hover { color: var(--ink); }
.recording-frame { background: var(--mist); }
.recording video { width: 100%; height: auto; display: block; }
.recording-toolbar { min-height: 44px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 0 var(--space-sm); font: .6875rem/1.5 var(--mono); color: var(--muted); }
.recording-toggle { min-height: 44px; border: 0; padding: .4rem 0; background: transparent; color: var(--blue-strong); font: .75rem var(--sans); text-decoration: underline; text-underline-offset: .25em; cursor: pointer; }
.recording-toggle:hover { text-decoration-thickness: 2px; }
.recording-description { font-size: .75rem; color: var(--muted); line-height: 1.5; }
.recording figcaption>.media-provenance { margin-top: .35rem; color: var(--blue-strong); }
.phone-pair { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-md); width: min(100%, 420px); margin-inline: auto; }
.phone-pair>div { min-width: 0; }
.phone-pair>div+div { padding-top: var(--space-sm); }
.phone-pair img { width: 100%; height: auto; border: 1px solid var(--rule); border-radius: 6px; }
.screen-label { display: block; margin-bottom: var(--space-xs); color: var(--blue-strong); font: .6875rem var(--mono); }
.journey-evidence>figcaption { margin-top: var(--space-sm); }
.lens-comparison { background: #FAFAF8; }
.lens-comparison img { width: 100%; height: auto; }
.lens-comparison figcaption { padding: var(--space-xs) var(--space-sm); display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .25rem .65rem; font-size: .6875rem; color: var(--blue-strong); }
.lens-comparison figcaption>.media-provenance { width: 100%; text-align: center; }
.math-evidence .recording { width: min(100%, 330px); margin: var(--space-md) 0 0 auto; }
.project-media img, .project-media video { width: 100%; }
.project-media figcaption, .media-transcript { font-size: .8125rem; margin-top: var(--space-sm); }
.project-media figcaption>span { display: block; color: var(--muted); }
