.rh-directory-summary { padding: 24px; border: 1px solid #24516c; border-radius: 16px; background: #071d30; margin: 24px 0; }
.rh-summary-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.rh-summary-heading h3 { margin: 0 0 6px!important; font-size: 22px!important; color: #eaf6ff; }
.rh-summary-heading p { margin: 0!important; font-size: 14px; color: #b9d4e5!important; }
.rh-summary-heading strong { color: #6cdef4; font-variant-numeric: tabular-nums; }
.rh-directory-summary button { min-height: 44px; cursor: pointer; }
.rh-directory-summary button:focus-visible { outline: 3px solid #64dff7; outline-offset: 3px; }
.rh-summary-charts { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 32px; margin-top: 22px; }
.rh-summary-charts article { min-width: 0; }
.rh-summary-charts h4 { color: #d9eaf5; margin: 0 0 12px; font-size: 15px; }
.rh-summary-plot { height: 190px; position: relative; }
.rh-summary-legend { margin: 12px 0 0; }
.rh-summary-legend > div { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 6px 0; color: #c6ddeb; font-size: 13px; }
.rh-summary-legend dt { display: flex; align-items: center; gap: 8px; }
.rh-summary-legend dt span { display: inline-block; width: 8px; height: 8px; border-radius: 50%; }
.rh-summary-legend dd { margin: 0; font-weight: 700; font-variant-numeric: tabular-nums; color: #eaf6ff; }
.module-card .rh-summary-note { color: #adcadd; font-size: 13px; margin: 16px 0 0; }
@media(max-width:650px) { .rh-directory-summary { padding: 18px; } .rh-summary-charts { grid-template-columns: minmax(0,1fr); gap: 20px; } }
