/* Purpose:
Enforces the Issue #22 iPhone viewport contract for dossier controls, cards, and long field text.

Responsibilities:
- Apply the layout, responsive behavior, and visual states required by mobile-field-fixes.

Boundaries:
CSS controls presentation only; trust meaning, workflow state, privacy, and persistence remain in maintained source logic.

Key decisions and invariants:
These final overrides protect the verified iPhone viewport contract and should remain narrow.
*/
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

.dossier-content,
.dossier-content .section-block,
.dossier-content .section-heading,
.dossier-content .form-grid,
.dossier-content .form-grid label,
.dossier-content .entry-panel,
.dossier-content .evidence-card,
.dossier-content .gap-card,
.dossier-content .mission-item {
    min-width: 0;
    max-width: 100%;
}

.dossier-content input,
.dossier-content select,
.dossier-content textarea,
.dossier-content button {
    min-width: 0;
    max-width: 100%;
}

.dossier-content p,
.dossier-content span,
.dossier-content strong,
.dossier-content label,
.dossier-content h2,
.dossier-content h3 {
    overflow-wrap: anywhere;
}

@supports (overflow: clip) {
    html,
    body {
        overflow-x: clip;
    }
}
