/* Shared modal: scoped to the app, using its existing design tokens. */
.gma-scd-app .gma-scd-document-preview:not([open]) { display: none; }
.gma-scd-app .gma-scd-document-preview[open] {
	display: grid;
	grid-template-rows: auto auto minmax(0, 1fr) auto;
	width: min(1100px, calc(100vw - 24px));
	height: min(900px, calc(100dvh - 24px));
	max-width: calc(100vw - 24px);
	max-height: calc(100dvh - 24px);
	margin: auto;
	padding: 0;
	overflow: hidden;
	color: var(--gma-scd-text);
	background: var(--gma-scd-surface);
	border: 1px solid var(--gma-scd-border);
	border-radius: var(--gma-scd-radius-lg);
	box-shadow: var(--gma-scd-shadow-md);
}
.gma-scd-app .gma-scd-document-preview::backdrop { background: rgb(15 23 42 / 60%); }
.gma-scd-app .gma-scd-document-preview__header,
.gma-scd-app .gma-scd-document-preview__footer { display: flex; align-items: center; gap: 12px; padding: 12px 16px; }
.gma-scd-app .gma-scd-document-preview__header { justify-content: space-between; border-bottom: 1px solid var(--gma-scd-border); }
.gma-scd-app .gma-scd-document-preview__header h2 { margin: 0; min-width: 0; overflow-wrap: anywhere; font-size: var(--gma-scd-font-size-lg); }
.gma-scd-app .gma-scd-document-preview__header button { flex-shrink: 0; }
.gma-scd-app .gma-scd-document-preview__status { margin: 0; padding: 8px 16px; color: var(--gma-scd-text-muted); }
.gma-scd-app .gma-scd-document-preview__content { min-height: 0; overflow: auto; background: var(--gma-scd-surface-secondary); }
.gma-scd-app .gma-scd-document-preview__content iframe { display: block; width: 100%; height: 100%; min-height: 200px; border: 0; background: var(--gma-scd-surface); }
.gma-scd-app .gma-scd-document-preview__content img { display: block; max-width: 100%; height: auto; margin: auto; }
.gma-scd-app .gma-scd-document-preview [hidden] { display: none; }
@media (max-width: 600px) {
	.gma-scd-app .gma-scd-document-preview[open] { width: 100vw; height: 100dvh; max-width: 100vw; max-height: 100dvh; border-radius: 0; }
}
