.cost-scope{display:flex;flex-wrap:wrap;gap:1rem;margin-block:1.5rem}
.cost-scope label,.cost-option label{display:flex;flex-direction:column;gap:.4rem;font-weight:700}
.cost-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.cost-option{min-width:0;border:1px solid #c8d2dc;border-radius:.75rem;padding:1rem}
.cost-option legend{float:none;width:auto;padding-inline:.35rem;font-size:1.2rem;font-weight:700}
.cost-option label{margin-block-end:1rem}
.cost-comparison input,.cost-comparison select{max-width:100%;min-height:2.8rem;border:1px solid #8795a3;border-radius:.35rem;padding:.55rem;background:#fff;color:#182d43}
.cost-comparison input[aria-invalid=true]{border:2px solid #a41926}
.cost-comparison :focus-visible{outline:3px solid #173b61;outline-offset:3px}
.cost-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-block:1.5rem}
.cost-message{color:#9d1926;font-weight:700}
.cost-results{border-block-start:2px solid #c8d2dc;padding-block-start:1.5rem;margin-block-start:1rem}
.cost-results td{overflow-wrap:anywhere}
.cost-profile dl{margin:1rem 0}.cost-profile dt{font-weight:700;margin-block-start:1rem}.cost-profile dd{margin-inline-start:0}
@media(max-width:767px){.cost-options{grid-template-columns:1fr}.cost-actions .btn{white-space:normal}.cost-scope label{flex:1 1 12rem}}
@media print{.cost-actions,.cost-scope,[data-cost-copy],.cost-options{display:none}.cost-results{border:0}}
