.validity form{margin:22px 0}
.validity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.validity label{display:grid;gap:6px;font-weight:800;font-size:13px;color:#28435f}
.validity input{box-sizing:border-box;width:100%;min-width:0;min-height:46px;border:1px solid #cdd8e8;border-radius:9px;padding:8px 10px;font:inherit;background:white;color:#193552}
.validity-actions{display:flex;flex-wrap:wrap;gap:8px}
.validity-result{padding:14px;border:1px solid #dbe6fa;border-radius:12px;background:#f5f8ff}
.validity-result h3{font-size:15px;margin:0 0 8px}
.validity-result p{margin:4px 0}
.validity-result p:first-of-type{font-size:17px;font-weight:800;color:#2455b5}
#validity-error{color:#a13232;margin-top:10px}
@media(max-width:520px){.validity-grid{grid-template-columns:1fr}}
.integrated-validity{min-height:0;padding:32px 0}
.integrated-validity .info-panel h2:first-child{margin-top:0}
.integrated-validity details{padding:10px 12px;border:1px solid #dbe6fa;border-radius:10px;margin:12px 0}
.integrated-validity summary{font-weight:800;cursor:pointer}
.integrated-validity ol{padding-left:20px}
.integrated-validity h3{margin-top:16px}
.plan-context{font-size:13px;color:#526b83;margin:12px 0}
.plan-match{color:#1b6472;font-size:12px;font-weight:800;margin-bottom:8px}
.plan-match.insufficient{color:#7a4e2c}
