/* custom-cr-medical.css — Rockettes medical release: the form, the signed copy, the print job. 2026-11-11 MST.
   One copy for three pages: /medical-release and /team/medical (linked by custom-cr-prelude.html) and /ops/medical-release
   (linked by custom-ops-medical-release.html). Moved here whole from the end of custom-cr-team.css so the Ops page does not
   have to load the Team Portal sheet. Brand tokens only (--color1 / --color2d / --color2xl / --color3). */
/* ---------- MEDICAL RELEASE (/team/medical) — 2026-11-11 MST ----------
   Craig 2026-11-11: the paper Parent/Guardian Consent and Player Medical Release Form, online, on its own page.
   Fields, checks, file inputs and buttons are the style guide's own classes (form-floating, form-check, form-control sg-file-input,
   btn btn-primary btn-sm caps + btn btn-secondary btn-sm caps); this block only lays them out. Section heads are the guide's h3 as
   it stands (margin only). Groups sit 36px apart, fields 14px (groups further apart than anything inside one).
   The signature box is the one element the guide does not have (Craig picked "typed name + drawn signature"): it borrows the
   field's own border, radius and ink. */
/* Craig 2026-11-11: "I hate it when a form is all spread out full width. Add padding on the two sides ... Keep everything in two
   columns, not spread out across three. i like vertical groupings." A narrow card with real side padding; a row is one field or
   two, never three; each person is a group (name, then Phone | Work Phone). Spacing: fields 14px, groups 28px, sections 40px. */
.cr-med-form{max-width:860px}
.cr-med-form .cr-pb{padding:clamp(20px,6vw,56px)}
.cr-med-form .cr-pb > p{max-width:75ch}
.cr-med-sec{margin:40px 0 0}
.cr-med-sec > h3{margin:0 0 14px}
.cr-med-sec > p{max-width:75ch}
.cr-med-group{margin:0 0 28px}
.cr-med-group:last-child{margin-bottom:0}
.cr-med-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 14px}
.cr-med-row[data-n="1"]{grid-template-columns:minmax(0,1fr)}
.cr-med-row:last-child{margin-bottom:0}
.cr-med-row > *{min-width:0;margin:0}
.cr-med-row .file-upload-wrapper{max-width:none}
.cr-med-row .file-upload-wrapper .input-group{margin-bottom:0 !important}   /* the guide's mb-3 would open a 16px gap the grid already supplies */
@media (max-width:560px){
  .cr-med-row{grid-template-columns:minmax(0,1fr)}
  .cr-med-blank{display:none}
}
.cr-med-flabel{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.cr-panel p.cr-med-note{margin:8px 0 0;font-size:16px;color:var(--color2d)}
.cr-med-form .form-check{margin:0 0 10px}
.cr-med-legal{padding:clamp(14px,2.4vw,24px);border:1px solid var(--color2xl);border-radius:10px}
.cr-med-legal > :first-child{margin-top:0}
.cr-med-legal > :last-child{margin-bottom:0}
.cr-med-legal h4{margin:20px 0 6px}
.cr-med-legal p{max-width:80ch}
.cr-med-legal p > strong:first-child{font-weight:700;color:var(--color1)}   /* each clause's run-in head */
.cr-med-sig{margin:14px 0 18px}
.cr-med-pad{display:block;width:100%;max-width:600px;height:auto;aspect-ratio:600/180;color:var(--color3);background:#fff linear-gradient(var(--color2xl),var(--color2xl)) no-repeat 50% 78%/90% 1px;
  border:var(--bs-border-width,1px) solid var(--bs-border-color,var(--color2xl));border-radius:var(--bs-border-radius,.375rem);touch-action:none;cursor:crosshair}
.cr-panel p.cr-med-err{margin:24px 0 0;font-size:17px;color:var(--bs-danger,#dc3545)}
.cr-panel p.cr-med-err:empty{display:none}
/* the pair: equal columns, one size, side by side (stacks, same size, when too narrow) */
.cr-med-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:12px;max-width:640px;margin:28px 0 0}   /* 1fr rows: a wrapped label never makes one row taller than the next */
.cr-med-actions .btn{width:100%;margin:0;white-space:normal}   /* a long label wraps inside its button; the grid keeps the pair one height */
[data-cr-mount="medical"] > .cr-med-actions{margin:0 0 20px}
@media (max-width:420px){.cr-med-actions{grid-template-columns:minmax(0,1fr)}}
[data-cr-mount="medical"] > .alert{max-width:980px;font-size:18px}
/* the signed copy: the paper form, filled in */
.cr-med-paper{display:flex;flex-direction:column;gap:24px}
.cr-med-page{max-width:980px;padding:clamp(20px,4vw,56px);background:#fff;color:var(--color3);border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.35)}
.cr-med-sheet{font-family:var(--cr-os,'Open Sans',Arial,sans-serif);font-size:16px;line-height:1.45;color:var(--color3)}
.cr-med-logo{display:block;width:240px;height:auto;margin:0 auto 22px}
.cr-med-sheet h2{margin:0 0 16px;font-family:inherit;font-size:21px;font-weight:700;line-height:1.25;letter-spacing:.02em;text-transform:uppercase;color:var(--color1)}
.cr-med-sheet h3{margin:22px 0 6px;font-family:inherit;font-size:17px;font-weight:700;line-height:1.3;color:var(--color1)}
.cr-med-sheet h4{margin:16px 0 4px;font-family:inherit;font-size:16px;font-weight:700;line-height:1.3;color:var(--color1)}
.cr-med-line{display:flex;flex-wrap:wrap;gap:4px 28px;padding:7px 0;border-bottom:1px solid var(--color2xl)}
.cr-med-kv{flex:1 1 180px;min-width:0}
.cr-med-k{font-weight:600}
.cr-med-v{white-space:pre-wrap;overflow-wrap:anywhere}
.cr-med-sheet .cr-med-legal{margin:22px 0 0;padding:0;border:0;border-radius:0}
.cr-med-sheet .cr-med-legal p{margin:0 0 10px;max-width:none;font-family:inherit;font-size:16px;line-height:1.45;color:var(--color3)}
.cr-med-signed{margin:26px 0 0;break-inside:avoid}
.cr-med-sigsvg{display:block;width:300px;max-width:100%;height:auto;color:var(--color3)}
.cr-med-sheet p.cr-med-audit{margin:10px 0 0;font-family:inherit;font-size:16px;line-height:1.4;color:var(--color2d)}
.cr-med-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0 0}
.cr-med-card{margin:0}
.cr-med-card img{display:block;width:100%;height:auto;border:1px solid var(--color2xl);border-radius:6px}
.cr-med-card figcaption{margin:6px 0 0;font-size:16px;color:var(--color2d)}
@media (max-width:560px){.cr-med-cards{grid-template-columns:minmax(0,1fr)}}
/* print: only the copies. js medPrint puts them in #cr-med-printroot on <body> and sets html.cr-med-printing for the print job */
#cr-med-printroot{display:none}
@media print{
  html.cr-med-printing body > *:not(#cr-med-printroot){display:none !important}
  html.cr-med-printing #cr-med-printroot{display:block !important}
  html.cr-med-printing,html.cr-med-printing body{background:#fff !important;overflow:visible !important;height:auto !important}
  #cr-med-printroot .cr-med-page{max-width:none;padding:0;border-radius:0;box-shadow:none;break-after:page}
  #cr-med-printroot .cr-med-page:last-child{break-after:auto}
  #cr-med-printroot .cr-med-sheet,#cr-med-printroot .cr-med-sheet .cr-med-legal p,#cr-med-printroot .cr-med-sheet p.cr-med-audit{font-size:10pt;line-height:1.35}
  #cr-med-printroot .cr-med-sheet h2{font-size:13pt}
  #cr-med-printroot .cr-med-sheet h3,#cr-med-printroot .cr-med-sheet h4{font-size:10.5pt}
  #cr-med-printroot .cr-med-logo{width:2.2in;margin-bottom:.15in}
  #cr-med-printroot .cr-med-line{padding:4px 0}
  #cr-med-printroot .cr-med-cards{break-before:page}
}

/* /ops/medical-release (Craig 2026-11-11: "create a PDF or download or email a PDF of the signed release"): four actions, one size,
   in one row; two by two on a phone. Older signings of a player read lighter in the list. */
.cr-med-actions[data-n="4"]{grid-template-columns:repeat(4,minmax(0,1fr));max-width:980px;margin:0 0 20px}
@media (max-width:760px){.cr-med-actions[data-n="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
.opsdash p.cr-med-err{margin:0 0 16px;font-size:17px;color:var(--bs-danger,#dc3545)}
.opsdash p.cr-med-err:empty{display:none}
.cr-med-table td,.cr-med-table th{vertical-align:middle}
.cr-med-table tr.is-old td{color:var(--color2d)}
.cr-med-card a{display:block}
