
/* Research shares the article frame and a compact Regel type hierarchy. */
.insight-report-page .insight-article-header { max-width: 1070px; }
.insight-report-page .insight-article-meta { gap: 4px 16px; }
:is(.insight-article-meta, .insight-metadata) time { color: var(--text-tertiary); }
.report-header-actions { display: flex; justify-content: center; margin-top: 32px; }
.report-pdf-icon { width: 20px; height: 20px; object-fit: contain; flex: none; }
.report-header-actions .report-pdf-icon { width: var(--regel-button-icon-size); }
/* Preserve the overlapping desktop artwork in compact article covers. */
.insight-article-cover.report-app-cover { position: relative; display: block; aspect-ratio: 16 / 9; padding: 0; background: var(--site-media-surface); container: report-cover / inline-size; }
.insights-card .report-app-cover { width: 100%; height: 100%; aspect-ratio: 4 / 3; margin: 0; background: var(--site-media-surface); container-name: report-thumbnail; }
.report-policy-scene { position: relative; width: 100%; height: auto; min-height: 56.25cqw; }
/* Listing thumbnails retain the full desktop composition at fixed miniature sizes. */
.insights-card .report-policy-scene { position: absolute; top: 50%; left: 50%; width: 1070px; height: 601.875px; min-height: 0; transform: translate(-50%, -50%) scale(.4); }
@container report-thumbnail (max-width: 319px) {
  .insights-card .report-policy-scene { transform: translate(-50%, -50%) scale(.3); }
}
@container report-thumbnail (min-width: 400px) {
  .insights-card .report-policy-scene { transform: translate(-50%, -50%) scale(.5); }
}
@container report-thumbnail (min-width: 480px) {
  .insights-card .report-policy-scene { transform: translate(-50%, -50%) scale(.6); }
}
:root .report-policy-paper.regel-card, :root .report-policy-detail.regel-card { background: var(--regel-surface); border: 1px solid color-mix(in srgb, var(--regel-border) 40%, transparent); position: absolute; width: 400px; max-width: none; height: auto; padding: 32px; gap: 24px; border-radius: var(--regel-card-radius); box-shadow: 0 16px 40px rgb(0 0 0 / 8%); transition: none; }
:root .report-policy-paper.regel-card { top: calc(50% - 210px); left: calc(50% - 350px); transform: rotate(-6deg); }
:root .report-policy-detail.regel-card { top: calc(50% - 96px); left: calc(50% - 50px); z-index: 1; margin: 0; transform: rotate(5deg); }
@container report-cover (max-width: 899px) {
  .report-policy-scene { position: absolute; inset: 0; width: 1070px; height: 601.875px; min-height: 0; transform-origin: top left; transform: scale(calc(100cqw / 1070px)); }
}
.report-policy-card-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.report-policy-eyebrow { color: var(--text-tertiary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); font-weight: var(--regel-type-label-weight); letter-spacing: var(--regel-label-sm-tracking); }
.report-policy-requirement-copy { display: grid; gap: 8px; }
.report-policy-paper h2 { margin: 0; max-width: none; color: var(--text-primary); font-size: var(--regel-heading-sm-size); line-height: var(--regel-heading-sm-line); letter-spacing: var(--regel-heading-sm-tracking); font-weight: var(--regel-type-heading-weight); }
.report-policy-requirement, .report-policy-wording { margin: 0; color: var(--text-primary); font-size: var(--regel-body-lg-size); line-height: var(--regel-body-lg-line); font-weight: var(--regel-type-body-weight); letter-spacing: var(--regel-body-lg-tracking); }
.report-policy-requirement { color: var(--text-secondary); text-wrap: pretty; }
.report-policy-badges { display: flex; flex-wrap: wrap; gap: 8px; }
:root .report-cover-badge[data-slot="badge"] { height: 28px; padding: 4px 10px; gap: 6px; background: var(--surface-sunken); border-color: transparent; color: var(--text-secondary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); font-weight: var(--regel-type-label-weight); letter-spacing: var(--regel-label-sm-tracking); }
.report-cover-badge > img, .report-cover-badge > svg, .report-cover-status .report-status-glyph > svg { width: 16px; height: 16px; flex: none; object-fit: contain; }
:root .report-cover-status[data-status="problem"] { color: var(--regel-color-problem, var(--regel-hero-problem)); background: color-mix(in srgb, var(--regel-color-problem, var(--regel-hero-problem)) 10%, var(--regel-surface)); border-color: transparent; }
:root .report-cover-status[data-status="solution"] { color: var(--text-success); background: color-mix(in srgb, var(--regel-color-solution, var(--regel-hero-solution)) 10%, var(--regel-surface)); border-color: transparent; }
:root .report-cover-status [data-regel-owner="StatusIcon"] { color: inherit; }

/* The pharma report uses one controller-identity review instead of overlapping cards. */
.report-controller-scene { position: absolute; top: 50%; left: 50%; width: 1070px; height: 601.875px; transform: translate(-50%, -50%) scale(calc(100cqw / 1070px)); }
:root .report-controller-panel.regel-card { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 720px; max-width: none; padding: 0; gap: 0; overflow: hidden; background: var(--regel-surface); border: 1px solid color-mix(in srgb, var(--regel-border) 40%, transparent); border-radius: var(--regel-card-radius); box-shadow: 0 16px 40px rgb(0 0 0 / 8%); }
.report-controller-header { padding: 20px 32px; border-bottom: 1px solid var(--border-default); }
.report-controller-body { display: grid; gap: 24px; padding: 32px; }
.report-controller-body h2 { margin: 0; color: var(--text-primary); font-size: var(--regel-heading-sm-size); line-height: var(--regel-heading-sm-line); letter-spacing: var(--regel-heading-sm-tracking); font-weight: var(--regel-type-heading-weight); }
.report-controller-excerpt, .report-controller-proposal { display: grid; gap: 8px; }
.report-controller-excerpt > p, .report-controller-proposal > p { margin: 0; color: var(--text-primary); font-size: var(--regel-body-lg-size); line-height: var(--regel-body-lg-line); letter-spacing: var(--regel-body-lg-tracking); }
.report-controller-excerpt mark { padding: 2px 4px; border-radius: 4px; color: var(--regel-color-problem, var(--regel-hero-problem)); background: color-mix(in srgb, var(--regel-color-problem, var(--regel-hero-problem)) 10%, var(--regel-surface)); }
.report-controller-excerpt > .report-controller-gap { color: var(--text-secondary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); }
.report-controller-proposal { padding-top: 24px; border-top: 1px solid var(--border-default); }
.insights-card .report-controller-scene { transform: translate(-50%, -50%) scale(calc(125cqw / 1070px)); }

/* Illustrated news media shares the photo zoom; product cards add a subtle tilt. */
.figma-news-card { --news-thumbnail-zoom: 1; --news-card-tilt: 0deg; }
.figma-news-media > :is(.report-app-cover, .svea-partnership-cover) { transform: scale(var(--news-thumbnail-zoom)); transition: transform 400ms cubic-bezier(0.2, 0.8, 0.2, 1); }
:root .figma-news-media :is(.report-policy-paper, .report-controller-panel).regel-card { rotate: calc(-1 * var(--news-card-tilt)); transition: rotate 400ms cubic-bezier(0.2, 0.8, 0.2, 1); }
:root .figma-news-media .report-policy-detail.regel-card { rotate: var(--news-card-tilt); transition: rotate 400ms cubic-bezier(0.2, 0.8, 0.2, 1); }
.figma-news-card:focus-within { --news-thumbnail-zoom: 1.02; --news-card-tilt: 1.2deg; }
@media (hover: hover) {
  .figma-news-card:hover { --news-thumbnail-zoom: 1.02; --news-card-tilt: 1.2deg; }
}
@media (prefers-reduced-motion: reduce) {
  .figma-news-card:is(:hover, :focus-within) { --news-thumbnail-zoom: 1; --news-card-tilt: 0deg; }
  .figma-news-media > :is(.report-app-cover, .svea-partnership-cover),
  :root .figma-news-media :is(.report-policy-paper, .report-policy-detail, .report-controller-panel).regel-card { transition: none; }
}

.insight-report-page .insight-article-reading { margin-top: 32px; }
/* A compact link to the preceding report, using its existing cover artwork. */
.insight-report-content > .report-series-card { display: flex; align-items: center; gap: 20px; max-width: 680px; margin-inline: auto; padding: 16px; border: 1px solid var(--border-default); border-radius: var(--regel-card-radius); color: var(--text-primary); text-decoration: none; transition: background-color var(--site-hover-transition); }
.report-series-card:hover, .report-series-card:focus-visible { background: var(--site-media-surface); }
.report-series-card:focus-visible { outline: 2px solid var(--text-primary); outline-offset: 4px; }
.report-series-thumbnail { width: 160px; flex: none; overflow: hidden; border-radius: var(--regel-media-frame-radius); }
.report-series-thumbnail .report-app-cover { width: 100%; margin: 0; aspect-ratio: 4 / 3; }
.report-series-thumbnail .report-policy-scene { position: absolute; inset: auto; top: 50%; left: 50%; width: 1070px; height: 601.875px; min-height: 0; transform-origin: center; transform: translate(-50%, -50%) scale(calc(100cqw / 1070px)); }
.report-series-copy { display: grid; gap: 8px; min-width: 0; }
.report-series-label { color: var(--text-tertiary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
.report-series-title { font-size: var(--regel-label-lg-size); line-height: var(--regel-label-lg-line); letter-spacing: var(--regel-label-lg-tracking); font-weight: var(--regel-type-label-weight); }
@media (max-width: 600px) {
  .insight-report-content > .report-series-card { gap: 16px; }
  .report-series-thumbnail { width: 96px; }
}
@media (prefers-reduced-motion: reduce) { .insight-report-content > .report-series-card { transition: none; } }
.report-scope { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--border-default); }
.report-scope > div { display: flex; flex-direction: column-reverse; justify-content: flex-end; align-items: center; gap: 8px; text-align: center; }
.report-scope dt { color: var(--text-secondary); font-size: var(--regel-label-md-size); line-height: var(--regel-label-md-line); letter-spacing: var(--regel-label-md-tracking); font-weight: var(--regel-type-label-weight); }
.report-scope dd { color: var(--text-primary); font-size: var(--regel-heading-lg-size); line-height: var(--regel-heading-lg-line); letter-spacing: var(--regel-heading-lg-tracking); font-weight: var(--regel-type-heading-weight); }
.report-finding-value { color: var(--text-primary); font-size: var(--regel-display-lg-size); line-height: var(--regel-display-lg-line); font-weight: var(--regel-type-display-weight); letter-spacing: var(--regel-display-lg-tracking); }
.insight-report-content { margin-top: 96px; color: var(--text-primary); font-size: var(--regel-body-lg-size); line-height: var(--regel-body-lg-line); font-weight: var(--regel-type-body-weight); letter-spacing: var(--regel-body-lg-tracking); }
.insight-report-content > :is(h2, h3, p, ul, ol, [data-original-source], .report-conversion, .report-finding) { max-width: 680px; margin-inline: auto; }
.insight-report-content > :is(p, ul, ol) { margin-top: var(--regel-space-4); }
.insight-report-content > :is(ul, ol) { padding-left: 24px; }
.insight-report-content > ul { list-style: disc; }
.insight-report-content > ol { list-style: decimal; }
.insight-report-content li + li { margin-top: 12px; }
.insight-report-content > h2 { margin-top: 80px; font-size: var(--regel-heading-md-size); line-height: var(--regel-heading-md-line); letter-spacing: var(--regel-heading-md-tracking); font-weight: var(--regel-type-heading-weight); scroll-margin-top: 100px; }
.insight-report-content > h2:first-child { margin-top: 0; }
.insight-report-content > h3 { margin-top: var(--regel-space-8); color: var(--text-primary); font-size: var(--regel-label-lg-size); line-height: var(--regel-label-lg-line); letter-spacing: var(--regel-label-lg-tracking); font-weight: var(--regel-type-label-weight); break-after: avoid; }
.insight-report-content > h3 + p { margin-top: var(--regel-space-2); }
.report-finding, .report-diagram { background: var(--site-media-surface); border-radius: var(--regel-media-frame-radius); padding: 32px; }
.report-finding { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 20px; padding: 32px; margin-top: 24px; text-align: left; }
.report-finding-copy h3, .report-figure-heading h3, .report-workflow h3 { margin: 0; font-size: var(--regel-label-lg-size); line-height: var(--regel-label-lg-line); letter-spacing: var(--regel-label-lg-tracking); font-weight: var(--regel-type-label-weight); color: var(--text-primary); }
.report-finding-copy > p { margin-top: var(--regel-space-2); }
.report-finding-copy > p { color: var(--text-tertiary); font-size: var(--regel-body-md-size); line-height: var(--regel-body-md-line); letter-spacing: var(--regel-body-md-tracking); font-weight: var(--regel-type-body-weight); }
.report-proportion { margin-top: var(--regel-space-6); }
.report-finding-copy > .report-proportion { margin-top: var(--regel-space-4); }
.report-proportion-track { height: 6px; background: var(--border-default); border-radius: 3px; overflow: hidden; }
.report-proportion-track > span { display: block; height: 100%; background: var(--regel-color-problem, var(--regel-hero-problem)); }
.report-proportion figcaption { display: flex; justify-content: space-between; align-items: start; gap: 16px; margin-top: 8px; }
.report-proportion .report-reference { margin-left: auto; text-align: right; }
.report-proportion figcaption, .insight-report-content .report-reference { color: var(--text-tertiary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
/* Explicit table roles preserve semantics when rows stack on phones. */
.report-examples-table { width: 100%; max-width: 680px; table-layout: fixed; border-collapse: collapse; margin: var(--regel-space-8) auto 0; text-align: left; }
.report-examples-table th, .report-examples-table td { vertical-align: top; padding: var(--regel-space-6) var(--regel-space-6) var(--regel-space-6) 0; border-bottom: 1px solid var(--border-default); }
.report-examples-table th:last-child, .report-examples-table td:last-child { padding-right: 0; }
.report-examples-table thead th { padding-top: 0; padding-bottom: var(--regel-space-3); color: var(--text-secondary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
.report-examples-table thead th:first-child { width: 24%; }
.report-examples-table tbody th { font-size: var(--regel-label-md-size); line-height: var(--regel-label-md-line); letter-spacing: var(--regel-label-md-tracking); font-weight: var(--regel-type-label-weight); }
.report-examples-table td > p { margin: 0; font-size: var(--regel-body-md-size); line-height: var(--regel-body-md-line); letter-spacing: var(--regel-body-md-tracking); font-weight: var(--regel-type-body-weight); }
.report-examples-table td > .report-reference { margin-top: var(--regel-space-4); text-align: right; }
@media (min-width: 768px) {
  .report-examples-table td > .report-reference { position: relative; left: 100%; width: max-content; max-width: none; transform: translateX(-100%); white-space: nowrap; }
}
.report-example-column-label { display: inline-flex; align-items: center; gap: var(--regel-space-1); }
.report-example-column-label[data-status="problem"] { color: var(--regel-color-problem, var(--regel-hero-problem)); }
.report-example-column-label[data-status="solution"] { color: var(--text-success); }
.report-example-column-label svg { width: 16px; height: 16px; flex: none; }
.report-example-column-label [data-regel-owner="StatusIcon"] { color: inherit; }
.report-example-mobile-label { display: none; }
.insight-report-content > .report-examples-table + h2 { margin-top: 48px; }
.report-state-problem { color: var(--regel-color-problem, var(--regel-hero-problem)); }
.report-state-solution { color: var(--text-success); }
.report-diagram { margin-block: 40px; }
.report-figure-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.report-figure-heading button { flex: none; }
.report-copy-drift, .report-workflow { margin-block: 40px; }
.report-copy-drift .report-drift-stage, .report-workflow .report-workflow-stage { margin: 0; }
.report-drift-controls { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; max-width: 100%; margin-bottom: 24px; }
.prototype-preview-tabs.report-drift-tabs { display: flex; justify-content: center; flex-wrap: wrap; min-width: 0; }
.report-drift-bottom { margin-top: 16px; }
.report-drift-copy-stack { display: grid; }
.report-drift-bottom .team-copy p, .report-workflow-result { color: var(--text-tertiary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
:root [data-drift-pause] { flex: none; width: 32px; height: 32px; padding: 0; color: var(--text-tertiary); }
[data-drift-pause][hidden] { display: none; }
[data-drift-pause] svg { width: 14px; height: 14px; }
[data-report-drift][data-paused="false"] [data-drift-icon="play"],
[data-report-drift][data-paused="true"] [data-drift-icon="pause"] { display: none; }
.report-publishing-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
:root .report-drift-source.regel-card { grid-column: 1 / -1; display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: 12px; }
:root .report-document.regel-card { gap: 20px; transition: background-color 400ms ease, border-color 400ms ease, box-shadow 400ms ease; }
.report-document-excerpt { padding-block: 16px; border-block: 1px solid var(--border-default); }
.report-document-excerpt > span { color: var(--text-tertiary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
.report-document-excerpt > p { min-height: 72px; margin: 8px 0 0; color: var(--text-primary); font-size: var(--regel-label-lg-size); line-height: var(--regel-label-lg-line); font-weight: var(--regel-type-label-weight); letter-spacing: var(--regel-label-lg-tracking); }
.report-document-excerpt ins { padding: 2px 3px; border-radius: 4px; color: var(--text-success); background: color-mix(in srgb, var(--text-success) 14%, transparent); text-decoration: none; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.report-document-excerpt ins[hidden] { display: none; }
.report-document[data-changed="true"] .report-document-excerpt ins { animation: report-wording-added 700ms ease both; }
.report-document-version { flex: none; margin-left: auto; padding: 2px 8px; border-radius: 999px; background: var(--site-media-surface); color: var(--text-secondary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
:root .report-document[data-changed="true"] { border-color: color-mix(in srgb, var(--text-success) 45%, var(--border-default)); background: color-mix(in srgb, var(--text-success) 4%, var(--regel-surface)); box-shadow: inset 0 3px 0 var(--text-success); }
:root .report-document[data-behind="true"] { border-color: color-mix(in srgb, var(--text-error) 35%, var(--border-default)); box-shadow: inset 0 3px 0 var(--text-error); }
.report-document[data-changed="true"] .report-document-version { background: color-mix(in srgb, var(--text-success) 12%, transparent); color: var(--text-success); }
.report-document[data-behind="true"] .report-document-version { background: color-mix(in srgb, var(--text-error) 10%, transparent); color: var(--text-error); }
.report-document[data-changed="true"] .report-status-badge { color: var(--text-success); }
.report-document[data-behind="true"] .report-status-badge { color: var(--regel-color-problem, var(--regel-hero-problem)); }
[data-report-drift][data-stage="connected"] .report-drift-source { border-color: color-mix(in srgb, var(--text-success) 45%, var(--border-default)); }
[data-report-drift][data-stage="connected"] [data-drift-wording] { color: var(--text-success); }
@keyframes report-wording-added { from { opacity: 0; background-color: color-mix(in srgb, var(--text-success) 35%, transparent); } to { opacity: 1; background-color: color-mix(in srgb, var(--text-success) 14%, transparent); } }
.report-document-heading { display: flex; align-items: center; gap: 8px; }
.report-drift-source > svg, .report-document-heading > svg { width: 20px; height: 20px; flex: none; color: var(--text-secondary); }
.report-drift-source strong, .report-document h3 { margin: 0; color: var(--text-primary); font-size: var(--regel-label-md-size); line-height: var(--regel-label-md-line); letter-spacing: var(--regel-label-md-tracking); font-weight: var(--regel-type-label-weight); }
.report-drift-source [data-drift-wording], .report-document-state { color: var(--text-tertiary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
.report-status-badge[data-slot="badge"] { display: inline-flex; align-self: start; align-items: center; justify-content: start; width: fit-content; height: 24px; padding: 2px 8px; gap: 4px; border: 1px solid var(--border-default); border-radius: 999px; background: var(--site-media-surface); color: var(--text-secondary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
.report-document-state > span:not([data-document-status]) { display: flex; flex: none; }
.report-status-badge svg { width: 16px; height: 16px; }
.report-status-glyph { display: inline-flex; flex: none; }
.report-document:not([data-behind="true"]) .report-state-problem, .report-document[data-behind="true"] .report-state-solution { display: none; }
.report-workflow-controls { display: flex; justify-content: center; margin-bottom: 24px; }
.report-workflow-stage > ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; padding: 0; margin: 0; gap: 16px; }
:root .report-workflow-card.regel-card { border-radius: var(--regel-card-radius); border: 1px solid color-mix(in srgb, var(--regel-border) 40%, transparent); height: 100%; gap: 12px; background: var(--regel-surface); box-shadow: none; }
.report-workflow li + li { margin: 0; }
.report-workflow h3 { display: flex; gap: 8px; }
.report-step-number { color: var(--text-tertiary); transition: color var(--site-hover-transition); }
.report-workflow [data-active="true"] .report-step-number { color: var(--text-primary); }
.report-workflow-card > p { margin: 0; color: var(--text-secondary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
.report-workflow [data-change-detail] { display: flex; flex-direction: column; justify-content: flex-end; min-height: 54px; margin-top: auto; color: var(--text-success); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); opacity: 0; transition: opacity 300ms ease; }
.report-workflow [data-active="true"] [data-change-detail] { opacity: 1; }
.report-workflow-result { margin-top: 16px; text-align: center; }
.insight-report-content .report-conversion { margin-top: 24px; }
.insight-report-content > [data-original-source] { margin-top: 64px; color: var(--text-tertiary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
.insight-report-content > [data-original-source] > p { color: inherit; font: inherit; letter-spacing: inherit; }
.insight-report-content > [data-original-source] > p + p { margin-top: 12px; }
.report-print-only { display: none; }
@media (max-width: 1000px) {
  .report-workflow-stage > ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  .report-scope { gap: 24px 16px; }
  .report-finding-value { font-size: var(--regel-display-sm-size); line-height: var(--regel-display-sm-line); letter-spacing: var(--regel-display-sm-tracking); font-weight: var(--regel-type-display-weight); }
  .report-finding { gap: 16px; }
  .report-finding, .report-diagram { padding: 24px; }
  .report-figure-heading { align-items: start; flex-direction: column; }
}

@media (max-width: 600px) {
  .report-header-actions { justify-content: start; }
  .insight-report-page .insight-article-reading { margin-top: 24px; }
  .report-scope { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 32px; }
  .insight-report-content { margin-top: 64px; }
  .insight-report-content > h2 { margin-top: 56px; }
  .report-examples-table, .report-examples-table tbody { display: block; }
  .report-examples-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .report-examples-table tbody { border-top: 1px solid var(--border-default); }
  .report-examples-table tbody tr { display: grid; gap: var(--regel-space-4); padding-block: var(--regel-space-6); border-bottom: 1px solid var(--border-default); }
  .report-examples-table tbody th, .report-examples-table td { display: block; padding: 0; border: 0; }
  .report-example-mobile-label { display: block; margin-bottom: var(--regel-space-2); color: var(--text-secondary); font-size: var(--regel-label-sm-size); line-height: var(--regel-label-sm-line); letter-spacing: var(--regel-label-sm-tracking); font-weight: var(--regel-type-label-weight); }
  .insight-report-content > .report-examples-table + h2 { margin-top: var(--regel-space-8); }
  .report-diagram { padding: 20px; }
  .report-diagram, .report-copy-drift, .report-workflow { margin-block: 32px; }
  .report-publishing-list { grid-template-columns: minmax(0, 1fr); }
  :root .report-drift-source.regel-card { grid-template-columns: 20px minmax(0, 1fr); }
  .report-drift-source [data-drift-wording] { grid-column: 2; }
  .report-workflow-stage > ol { grid-template-columns: minmax(0, 1fr); }
  .report-workflow [data-change-detail] { min-height: 36px; }
}
@media (prefers-reduced-motion: reduce) {
  .report-step-number, .report-workflow [data-change-detail], :root .report-policy-paper.regel-card, :root .report-policy-detail.regel-card { transition: none; }
  :root .report-document.regel-card { transition: none; }
  .report-document[data-changed="true"] .report-document-excerpt ins { animation: none; }
}
@media print {
  .insight-article-cover.report-app-cover { container-type: normal; min-height: 460px; }
  .report-policy-scene { min-height: 460px; }
  :root .report-policy-paper.regel-card, :root .report-policy-detail.regel-card { display: flex; width: 400px; height: auto; }
  :root .report-policy-paper.regel-card { top: 24px; left: 0; }
  :root .report-policy-detail.regel-card { top: 100px; left: auto; right: 0; }
  .report-policy-paper .report-policy-card-top { display: flex; }
  .report-policy-paper .report-policy-requirement { display: block; }
  .report-policy-paper .report-policy-badges { display: flex; }

  body:has(.insight-report-page) :is(.prototype-scroll-header, .prototype-site-footer, .insight-related, .report-series-card, .report-header-actions, .report-drift-controls, .report-workflow-controls, [data-report-replay], [data-gap-analysis-target], dialog) { display: none !important; }
  body:has(.insight-report-page), .insight-report-page { background: white; color: black; }
  .insight-report-page { --text-primary: #171717; --text-secondary: #525252; --text-tertiary: #525252; --text-error: #c10007; --text-success: #006d2c; --regel-color-solution: #166534; --regel-color-problem: #f5320a; --border-default: #d4d4d4; --bg-base: white; --surface-sunken: #f5f5f5; --site-media-surface: #fafafa; print-color-adjust: exact; }
  .insight-report-page, .insight-report-page .insight-article { padding: 0 !important; margin: 0 !important; }
  .insight-report-page .insight-article-header h1 { font-size: var(--regel-heading-lg-size) !important; line-height: var(--regel-heading-lg-line) !important; letter-spacing: var(--regel-heading-lg-tracking); font-weight: var(--regel-type-heading-weight); }
  .report-app-cover, .report-finding, .report-examples-table tr, .report-diagram, .report-copy-drift, .report-workflow, .report-scope { break-inside: avoid; }
  :root [data-report-cover] .report-policy-paper, :root [data-report-cover] .report-policy-detail { opacity: 1; transition: none; }
  :root [data-report-cover] .report-policy-paper { transform: rotate(-4deg); }
  :root [data-report-cover] .report-policy-detail { transform: rotate(3deg); }
  .report-drift-bottom .team-copy[data-active="false"] { display: none; }
  .report-drift-bottom .team-copy[data-active="true"] { opacity: 1; transform: none; }
  .insight-report-content > h2 { break-after: avoid; }
  .report-workflow [data-change-detail] { opacity: 1; }
  .report-print-only { display: block; font-size: var(--regel-body-sm-size); margin-top: 16px; line-height: var(--regel-body-sm-line); letter-spacing: var(--regel-body-sm-tracking); font-weight: var(--regel-type-body-weight); }
}

