/* public/css/nexus-letter-copy.css
 *
 * Nexus letters on My Preparation (2026-10-08): the letter block on each
 * condition card and in the condition brief, and the letter drafts section of
 * Build your copy. Site tokens only; the printed copy is black on white.
 */
.cr-letter { margin-top: 1rem; padding: .9rem 1rem; border: 1px solid var(--color-accent); border-radius: 8px; background: var(--color-surface); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem 1rem; }
.cr-letter > div { min-width: 0; flex: 1 1 260px; }
.cr-letter strong { display: block; color: var(--color-text-strong); }
.cr-letter p { margin: .25rem 0 0; color: var(--color-text-muted); font-size: .95rem; }
.cr-letter .rf-btn { flex: 0 0 auto; }

.nxc-list { display: grid; gap: .5rem; margin: 1rem 0; }
.nxc-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 1rem; padding: .75rem 0; border-bottom: 1px solid var(--color-border); }
.nxc-pick { display: flex; align-items: flex-start; gap: .65rem; min-width: 0; flex: 1 1 280px; cursor: pointer; }
.nxc-pick input { flex: 0 0 auto; width: 20px; height: 20px; margin-top: .15rem; accent-color: var(--color-primary); }
.nxc-pick span { min-width: 0; overflow-wrap: anywhere; }
.nxc-pick strong { display: block; }
.nxc-pick small { display: block; color: var(--color-text-muted); font-size: .9rem; margin-top: .15rem; }
.nxc-status.is-error, .mp-note.is-error { color: var(--color-danger, #a12626); font-weight: 600; }
.nxc-paper { margin: 1rem 0; padding: 1.5rem; background: #fffefa; color: #253348; border: 1px solid #d9ccae; border-top: 3px solid var(--color-accent); border-radius: 4px; overflow-wrap: anywhere; }
.nxc-paper-head { font-size: .95rem; color: #253348; border-bottom: 1px solid #d9ccae; padding-bottom: .75rem; margin-bottom: 1rem; }
.nxc-letter + .nxc-letter { border-top: 2px solid #d9ccae; margin-top: 1.5rem; padding-top: 1.5rem; }
.nxc-label { font: 600 12px/1.5 var(--font-sans, Inter, sans-serif); letter-spacing: .05em; color: #6d5a37; margin: 0 0 .75rem; }
.nxc-paper h4 { font-size: 1.35rem; color: #0e2a4d; margin: 0 0 .75rem; }
.nxc-paper h5 { font-size: 1.1rem; color: #0e2a4d; margin: 1.25rem 0 .5rem; }
.nxc-paper p.nxc-block { white-space: pre-wrap; font: 1.05rem/1.65 'Source Serif 4', Georgia, serif; color: #253348; margin: 0 0 .75rem; }

#nx-copy-print { display: none; }
@media print {
  body.printing-nexus-letters:not(.printing-packet) { display: block !important; min-height: 0 !important; height: auto !important; background: #fff !important; }
  body.printing-nexus-letters:not(.printing-packet) > *:not(#nx-copy-print) { display: none !important; }
  body.printing-nexus-letters:not(.printing-packet) > #nx-copy-print { display: block !important; }
  /* The letter carries its own side margin, so the copy keeps one whatever
     the print dialog's Margins setting (owner 2026-10-08). */
  #nx-copy-print .nxc-paper { border: 0; padding: 0 .5in; margin: 0; background: #fff !important; }
  #nx-copy-print .nxc-paper, #nx-copy-print .nxc-paper * { color: #111 !important; }
  #nx-copy-print .nxc-letter + .nxc-letter { break-before: page; border-top: 0; margin-top: 0; padding-top: 0; }
  #nx-copy-print h4, #nx-copy-print h5 { break-after: avoid; }
  #nx-copy-print p.nxc-block { font-size: 11pt; line-height: 1.55; }
}
.mp-links[data-nx-copy] { margin-top: 2rem; }
