.reading :is(.proposal-form,#certificate-form) {
  --form-ink:#392f41;
  --form-line:#bcb0c5;
  --form-mark:#644877;
  margin:0 0 32px;
  color:var(--form-ink);
}
.reading :where(.proposal-form,#certificate-form) :is(input:not([type=checkbox],[type=radio]),select,textarea) {
  width:100%; min-height:44px; border:0; border-bottom:1px solid var(--form-line);
  border-radius:0; background:transparent; padding:8px 4px;
  font:400 1rem/1.5 var(--site-sans); color:var(--form-ink);
}
.reading :where(.proposal-form,#certificate-form) :is(input:not([type=radio],[type=checkbox]),select,textarea):focus-visible {
  outline:none; border-bottom-color:var(--form-mark); box-shadow:0 1px 0 var(--form-mark);
}
@media(forced-colors:active) {
  .reading :where(.proposal-form,#certificate-form) :focus-visible {outline:2px solid Highlight !important}
}
.reading :is(.proposal-form,#certificate-form) :is(input,textarea)::placeholder { color:#726a76 }
.reading .proposal-form > label { margin:24px 0 2px; font-size:1rem; font-weight:630 }
.reading .proposal-form > label:first-child { margin-top:0 }
.reading .proposal-form textarea {
  display:block; min-height:91px; resize:vertical; padding:3px 4px; line-height:28px;
  background:repeating-linear-gradient(to bottom,transparent 0 27px,#cfc4d34a 27px 28px);
  background-position:0 4px;
}
.reading .proposal-form .form-caption { margin:15px 0 8px; color:#625868; font-size:.78rem }
.reading :is(.proposal-form,#certificate-form) .primary { border-radius:3px; min-height:46px }
.reading .proposal-form .hint,.reading #certificate-form .hint { font-size:.79rem; line-height:1.55 }
.reading .cert-fields { padding:9px 0 0; margin:0 0 28px; border:0; border-top:1px solid #9c8da6 }
.reading .cert-fields legend { padding:0 12px 0 0; color:#47384e; font:650 1.15rem/1.45 var(--site-sans); letter-spacing:-.04em }
.reading.certificate-page .page-head h1 { font-family:var(--site-sans); font-weight:650 }
.reading .cert-fields label { margin-bottom:1px; margin-top:13px; font-size:.85rem }
.reading .cert-fields small { margin-left:3px; font-size:.72rem }
.reading .cert-affiliation { grid-template-columns:minmax(6rem,.7fr) minmax(0,1.3fr); column-gap:18px }
.reading .cert-terms { grid-template-columns:repeat(auto-fit,minmax(min(100%,8em),1fr)); gap:0 15px }
.reading .cert-terms label { margin:0; min-height:44px; border-bottom:1px solid #ded5dd }
.reading .cert-membership { display:flex; gap:18px; margin:1px 0 8px }
.reading .cert-membership label {
  display:inline-flex; align-items:center; gap:7px; margin:0; min-height:44px;
  color:#665a69; cursor:pointer;
}
.reading .cert-membership input[type=radio] {
  appearance:auto; background:transparent; padding:0; border:0; border-radius:50%;
  min-height:0; width:17px; height:17px; margin:0; accent-color:#644877;
}
.reading .cert-membership label:has(:checked) { color:#3f2e49; font-weight:700 }
.club-picker { position:relative }
.club-results { padding:0 1px; background:#f2edf3; border-bottom:1px solid #cbbece }
.club-results ul {
  max-height:min(170px,28dvh); margin:0; padding:0;
  list-style:none; overflow:auto; overscroll-behavior:contain; touch-action:pan-y;
}
.club-results li { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:0 6px;
  min-height:44px; padding:5px 9px; border-bottom:1px solid #ded6e1; font-size:.87rem; cursor:pointer }
.club-results li:last-child { border-bottom:0 }
.club-results li:is(.is-active,[aria-selected=true]) { background:#e2d8e8; color:#392544 }
.club-results li small { font-size:.71rem; color:#665a69 }
.club-empty { padding:12px 8px; color:#5f5066; font-size:.82rem }
@media(hover:hover) {
  .club-results li:hover { background:#eae2ed }
}
