/* Performance view (#485). Every selector starts with .agc-performance so nothing leaks into the global dashboard styles.
   Mobile first: one column at 375px, two from 700px. Text never relies on colour alone. */
.agc-performance { font: 16px/1.45 system-ui, sans-serif; color: #1c1b19; max-width: 100%; box-sizing: border-box; }
.agc-performance *, .agc-performance *::before, .agc-performance *::after { box-sizing: inherit; }
.agc-performance-status { margin: 0 0 12px; font-weight: 600; }
.agc-performance-compare { border: 1px solid #cfc9bd; border-radius: 8px; padding: 12px; margin-bottom: 16px; background: #faf8f3; }
.agc-performance-compare h3 { margin: 0 0 4px; font-size: 1.05rem; }
.agc-performance-note { margin: 0 0 8px; font-size: .9rem; color: #4a463e; }
.agc-performance-groups { margin: 0; padding-left: 20px; }
.agc-performance-cards { display: grid; grid-template-columns: 1fr; gap: 12px; }
.agc-performance-card { border: 1px solid #cfc9bd; border-radius: 8px; padding: 12px; background: #fff; min-width: 0; overflow-wrap: anywhere; }
.agc-performance-title { margin: 0 0 4px; font-size: 1.05rem; }
.agc-performance-when, .agc-performance-age { margin: 0 0 4px; font-size: .9rem; color: #4a463e; }
.agc-performance-headline { margin: 8px 0 4px; font-weight: 600; }
.agc-performance-caption { margin: 0 0 8px; font-size: .95rem; }
.agc-performance-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 12px; margin: 8px 0; }
.agc-performance-metric { margin: 0; min-width: 0; }
.agc-performance-metric dt { font-size: .8rem; color: #4a463e; }
.agc-performance-metric dd { margin: 0; font-weight: 600; }
.agc-performance-metric dd.agc-performance-missing { font-weight: 400; font-style: italic; color: #5c5750; }
.agc-performance-caveat { margin: 4px 0; padding: 6px 8px; border-left: 4px solid #9a6b00; background: #fff6df; font-size: .85rem; }
.agc-performance-links { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 8px 0 0; }
.agc-performance-link { color: #0b4f8a; text-decoration: underline; min-height: 44px; display: inline-flex; align-items: center; }
.agc-performance-more { min-height: 44px; margin-top: 12px; padding: 0 16px; font: inherit; border: 1px solid #1c1b19; border-radius: 8px; background: #fff; cursor: pointer; }
.agc-performance-more:focus-visible, .agc-performance-link:focus-visible { outline: 3px solid #0b4f8a; outline-offset: 2px; }
@media (min-width: 700px) { .agc-performance-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.agc-performance-formats { border: 1px solid #cfc9bd; border-radius: 8px; padding: 12px; margin-bottom: 16px; background: #faf8f3; }
.agc-performance-formats h3 { margin: 0 0 8px; font-size: 1.05rem; }
.agc-performance-formats-scroll { overflow-x: auto; max-width: 100%; }
.agc-performance-formats-table { border-collapse: collapse; min-width: 320px; width: 100%; font-size: .9rem; }
.agc-performance-formats-table th, .agc-performance-formats-table td { text-align: left; padding: 6px 8px; border-bottom: 1px solid #cfc9bd; }
.agc-performance-formats-ig-fb { margin: 8px 0 0; font-size: .9rem; }
.agc-performance-readings { margin: 8px 0; }
.agc-performance-readings-btn { min-height: 44px; padding: 0 16px; font: inherit; border: 1px solid #1c1b19; border-radius: 8px; background: #fff; cursor: pointer; }
.agc-performance-readings-btn:focus-visible { outline: 3px solid #0b4f8a; outline-offset: 2px; }
.agc-performance-reading-list { margin: 8px 0 0; padding: 0; list-style: none; }
.agc-performance-reading { display: flex; flex-wrap: wrap; gap: 2px 12px; padding: 6px 0; border-top: 1px solid #e4dfd3; font-size: .9rem; }
.agc-performance-reading strong { flex: 1 0 100%; }
