/* Title II Snapshot (uses the site's colour variables from ../styles.css) */
.snap-form { display: grid; gap: 1.1rem; max-width: 40rem; margin: 1.5rem 0; }
.snap-form label, .snap-form legend { font-weight: 600; display: block; margin-bottom: 0.35rem; }
.snap-form input[type="text"], .snap-form select { width: 100%; min-height: 44px; font: inherit; padding: 0.5rem 0.75rem; border: 2px solid var(--color-control); border-radius: var(--radius-sm); background: var(--color-card); color: var(--color-text); }
.snap-form fieldset { border: 0; padding: 0; margin: 0; }
.snap-form .radio { display: flex; align-items: center; gap: 0.5rem; min-height: 44px; font-weight: 400; margin: 0; }
.snap-form .radio input { width: 1.25rem; height: 1.25rem; }
.snap-status { font-weight: 600; min-height: 1.5em; }
.snap-status.is-error { color: var(--color-accent-text); }
.snap-note { border-left: 4px solid var(--color-accent); padding-left: 0.75rem; }
.snap-table-wrap { overflow-x: auto; margin-bottom: 1.25rem; }
.snap-table-wrap table { min-width: 40rem; }
.snap-summary { width: 100%; font: inherit; font-size: 0.92rem; padding: 0.75rem; border: 2px solid var(--color-control); border-radius: var(--radius-sm); background: var(--color-card); color: var(--color-text); }
.snap-limits { border: 2px solid var(--color-border); border-radius: var(--radius); padding: 1rem 1.25rem; background: var(--color-card); }
.snap-actions .button { min-height: 44px; }
@media print { .snap-form, .snap-actions, .site-header, .site-footer { display: none !important; } .snap-table-wrap { overflow: visible; } }
.snap-form fieldset { background: none; box-shadow: none; max-width: none; }
.snap-form legend { font-family: inherit; font-size: 1rem; line-height: 1.4; padding: 0; color: var(--color-text); }
.snap-limits h2 { margin-top: 0; }
