.rate-review{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);min-width:0}
.rate-review h3,.rate-review h4{line-height:1.3}
.rate-review p{max-width:72ch}
.rate-review details{margin:16px 0}
.rate-review summary{cursor:pointer;font-weight:700;padding:10px 0}
.rate-summary{margin:0;font-size:.9rem}
.rate-summary>div{display:grid;grid-template-columns:minmax(0,2fr) minmax(90px,1fr);gap:14px;padding:9px 0;border-bottom:1px solid var(--line)}
.rate-summary dt{overflow-wrap:anywhere}.rate-summary dd{margin:0;text-align:right;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.rate-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px}
.rate-counter fieldset{min-width:0;margin:18px 0;border:1px solid var(--line);border-radius:8px;padding:16px}
.rate-counter legend{font-weight:700;max-width:100%;overflow-wrap:anywhere}
.rate-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rate-review button{margin-top:8px;white-space:normal}
.rate-review button:disabled{opacity:.6;cursor:wait}
.rate-review button.secondary{background:#e4e6ea;color:var(--ink)}
.rate-review :focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.rate-review ::selection{background:#ffe1e2;color:var(--ink)}
.rate-review input,.rate-review textarea{caret-color:var(--red);min-width:0}
.rate-consent{margin-top:16px;line-height:1.6}.rate-consent a{display:inline;padding:0;background:none;color:#a31118;text-decoration:underline}
@media(max-width:480px){.rate-inputs{grid-template-columns:1fr}.rate-summary>div{grid-template-columns:minmax(0,1fr) minmax(80px,.6fr)}}

.bulk-rates { margin: 20px 0; padding: 16px; border: 1px solid #cbd0d7; border-radius: 8px; }
.bulk-rates summary { cursor: pointer; font-weight: 650; }
.bulk-rates > label { margin-top: 12px; max-width: 300px; }
#bulk-targets { display: flex; flex-wrap: wrap; gap: 10px 20px; margin: 16px 0; }
#capability-catalog .capability-rates { grid-template-columns: repeat(2,minmax(0,1fr)); }
#capability-catalog .selection-item, #capability-catalog input, #capability-catalog select { min-width: 0; }
#capability-profile-form small { line-height: 1.5; font-weight: 400; }
@media(max-width: 600px) { #capability-catalog .capability-rates { grid-template-columns: 1fr; } }

#profile-missing { background: #f3f5f7; color: #16181d; box-shadow: none; border-left: 4px solid #b41420; }
@media(max-width:600px) {
  #capabilities-rates .section-head { flex-direction: column; align-items: flex-start; gap: 12px; }
  #capabilities-rates .section-head > div:first-child { width: 100%; }
}
