:root { color-scheme: light dark; }
body { font: 1rem/1.5 system-ui, sans-serif; color: CanvasText; background: Canvas; margin: 0 auto; max-width: 54rem; padding: 1.2rem; }
a { color: LinkText; }
h1 { font-size: 1.7rem; line-height: 1.2; }
h2 { font-size: 1.25rem; }
.field { min-height: 3rem; border: 1px solid GrayText; padding: .4rem; white-space: pre-wrap; overflow-wrap: anywhere; }
label, .label { display: block; font-weight: 650; margin-top: .8rem; }
.small { font-size: .9rem; }
section { break-inside: avoid; margin: 1.2rem 0; }
:focus-visible { outline: 3px solid Highlight; outline-offset: 2px; }
@media (max-width: 420px) {
  body { padding: .75rem; }
}
@media print {
  :root { color-scheme: light; }
  body { max-width: none; padding: 0; font-size: 10pt; }
  .screen { display: none; }
  a { color: inherit; }
  h1 { font-size: 16pt; }
  .field { min-height: 2rem; }
  @page { size: A4; margin: 14mm; }
}
