.validity{--validity-small:.9rem;background:var(--color-sage);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-6);scroll-margin-top:var(--space-6)}
.validity .eyebrow{margin-bottom:var(--space-3)}
.validity .validity-intro h2{margin-bottom:var(--space-4)}
.validity .validity-help,.validity .validity-reviewed{font-size:var(--validity-small);line-height:1.5}
.validity-form fieldset{border:0;padding:0;margin:0;min-width:0}
.validity-form legend{font-weight:600;padding:0;margin-bottom:var(--space-4)}
.validity-fields{display:grid;gap:var(--space-6)}
.validity-field{min-width:0}
.validity-field label{display:block;font-weight:600;font-size:var(--validity-small);line-height:1.45;margin-bottom:var(--space-2)}
.validity-field input,.validity-field select{display:block;width:100%;min-width:0;min-height:48px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:1rem;padding:var(--space-3) var(--space-2)}
.validity .validity-field .validity-help{margin:var(--space-2) 0 0}
.validity .validity-form>fieldset>.validity-help{margin:var(--space-4) 0 0}
.validity-form>.button{margin-top:var(--space-6);max-width:100%;white-space:normal;text-align:center}
.validity-errors{border-left:3px solid var(--color-accent);padding:var(--space-3) var(--space-4);margin-top:var(--space-6);background:var(--color-surface)}
.validity .validity-errors p,.validity .validity-errors ul{margin:0}
.validity .validity-status{font-size:var(--validity-small);margin:var(--space-4) 0 0}
.validity .validity-status:empty{margin:0}
.validity-output{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border);scroll-margin-top:var(--space-6)}
.validity-output:focus{outline:0}
.validity .validity-label{display:inline-block;font-size:var(--validity-small);font-weight:600;color:var(--color-primary);margin:0 0 var(--space-3)}
.validity-output[data-status=renew] .validity-label{color:var(--color-accent)}
.validity .validity-output>h3{font-family:var(--font-heading);font-size:1.8rem;margin:0 0 var(--space-4)}
.validity .validity-next{font-size:1rem;line-height:1.6;margin-bottom:var(--space-4)}
.validity .validity-date{font-size:var(--validity-small);font-weight:600;color:var(--color-text);margin-bottom:var(--space-6)}
.validity-rule,.validity-context{margin-block:var(--space-6)}
.validity-rule h4,.validity-context h4{font-size:1rem;font-weight:600;line-height:1.45;margin:0 0 var(--space-3)}
.validity .validity-rule p,.validity .validity-rule ul,.validity-context dl{font-size:var(--validity-small);line-height:1.6}
.validity .validity-rule p{margin-bottom:var(--space-2)}
.validity .validity-rule ul{padding-left:var(--space-6);margin:0}
.validity-context dl{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-1);margin:0}
.validity-context dt{font-weight:600;margin-top:var(--space-3)}
.validity-context dd{margin:0;color:var(--color-muted);overflow-wrap:anywhere}
.validity-actions{display:flex;align-items:flex-start;flex-direction:column;gap:var(--space-3);margin-block:var(--space-6)}
.validity-actions .button{width:100%;text-align:center}
.validity-secondary{padding:var(--space-2) 0;min-height:44px;background:transparent;border:0;color:var(--color-primary);text-align:left;text-decoration:underline;text-underline-offset:.2em}
.validity-links{display:flex;flex-wrap:wrap;column-gap:var(--space-6);row-gap:var(--space-2);font-size:var(--validity-small);margin-bottom:var(--space-6)}
.validity .validity-reviewed{margin:0}
@media(min-width:600px){.validity{padding:var(--space-8)}.validity-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.validity-field input,.validity-field select{font-size:var(--validity-small)}.validity-actions{flex-direction:row;align-items:center;flex-wrap:wrap;column-gap:var(--space-6)}.validity-actions .button{width:auto}.validity-context dl{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--space-6)}.validity-context dt,.validity-context dd{margin-top:var(--space-2)}}
@media print{
  .validity-form,.validity-actions,.validity-status,.validity-links{display:none!important}
  .validity{background:#fff;color:#000;border:0;padding:0}
  .validity,.validity-output{break-inside:auto}
  .validity-rule,.validity-context{break-inside:avoid}
  html.printing-validity .site-header,html.printing-validity .site-footer,html.printing-validity .breadcrumbs,html.printing-validity .article-hero,html.printing-validity .article-aside,html.printing-validity .related-section,html.printing-validity .skip-link{display:none!important}
  html.printing-validity .article-grid{display:block;width:100%;padding:0;margin:0}
  html.printing-validity .prose>*:not(.validity){display:none!important}
  html.printing-validity .validity>*:not(.validity-output){display:none!important}
  html.printing-validity .validity-output{padding:0;margin:0;border:0}
  html.printing-validity .validity-rule a{color:#000}
}
