.pc-usage-summary { padding: 1rem; border: 1px solid var(--pc-border, #cbd5e1); border-radius: .75rem; margin-bottom: 1rem; color: inherit; }
.pc-usage-summary h2 { margin: 0 0 .8rem; font-size: 1.1rem; }
.pc-usage-summary summary { cursor: pointer; font-weight: 600; padding: .5rem 0; }
.pc-usage-summary p { font-size: .85rem; margin: .6rem 0; }
.pc-usage-summary__totals { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin: 0; }
.pc-usage-summary__totals div { min-width: 10rem; }
.pc-usage-summary__totals dt { font-size: .8rem; }
.pc-usage-summary__totals dd { font-weight: 600; margin: .3rem 0; }
.pc-usage-summary__table-wrap { overflow: auto; max-height: 20rem; }
.pc-usage-summary table { width: 100%; border-collapse: collapse; font-size: .85rem; }
.pc-usage-summary caption { text-align: left; font-weight: 600; margin: .75rem 0; }
.pc-usage-summary th, .pc-usage-summary td { border-bottom: 1px solid var(--pc-border, #cbd5e1); text-align: left; vertical-align: top; padding: .6rem; }
.pc-usage-summary__missing { display: block; margin-top: .25rem; font-size: .8rem; }
.pc-statistics-content { display: flex; flex-direction: column; min-height: 0; height: 100%; overflow: auto; }
.pc-statistics-content > p { flex: 0 0 auto; }
.pc-statistics-content .pc-grid-host { flex: 1 0 22rem; min-height: 22rem; }
