/* Commons quality (build/pages/quality.py). Builds on guides.css (.table-scroll, .gd-table, .gd-reviewed). */
.q-btns{margin-top:1.6rem}
.q-asof{margin:0 0 1.6rem}
.q-sub{margin:2.6rem 0 1rem}

/* Counts */
.q-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1rem;margin:0}
@media (max-width:640px){.q-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.q-stat{padding:.9rem}.q-stat-n{font-size:1.8rem}}
.q-sub time{white-space:nowrap}
.q-stat{padding:1.1rem 1.2rem;border:1px solid var(--line);border-radius:16px;background:var(--paper-3);min-width:0}
.q-stat dt{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);line-height:1.4}
.q-stat dd{margin:.5rem 0 0}
.q-stat-n{display:block;font-family:var(--f-display);font-size:2.2rem;font-weight:360;line-height:1.1;color:var(--text);font-variant-numeric:tabular-nums}
.q-stat-note{display:block;overflow-wrap:anywhere;margin-top:.4rem;font-size:.86rem;line-height:1.4;color:var(--muted)}
.q-stat-note time{white-space:nowrap}

/* Filters (shown by quality.js) */
.q-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1rem;margin:1.6rem 0 .4rem}
.q-filters[hidden]{display:none}
.q-filters label{display:block;font-weight:600;margin-bottom:.4rem}
.q-status{margin:.6rem 0 0;color:var(--muted);font-size:.92rem;min-height:1.4em}

/* The tables */
.q-table{min-width:58rem}
.q-table--kits{min-width:36rem}
.q-table th[scope="row"] a{font-weight:600}
.q-table th[scope="row"]{min-width:15rem}
.q-path{display:block;margin-top:.2rem;font-family:var(--f-mono);font-size:.72rem;font-weight:400;color:var(--muted);overflow-wrap:break-word}
.q-table time{white-space:nowrap;font-variant-numeric:tabular-nums}
.q-num{text-align:right;font-variant-numeric:tabular-nums}
.gd-table thead th.q-num{text-align:right}
.q-check{display:block;margin-top:.2rem;font-size:.86rem;color:var(--muted)}
.q-warn{color:var(--err-ink);font-weight:600}
.q-sort{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:.35rem;min-height:44px;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}
.q-sort:focus-visible{outline:2px solid var(--text);outline-offset:2px;border-radius:4px}
.q-sort::after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.35}
th[aria-sort="ascending"] .q-sort::after{border-top:0;border-bottom:5px solid currentColor;opacity:1}
th[aria-sort="descending"] .q-sort::after{opacity:1}
.q-table tr[hidden]{display:none}

/* What the numbers mean */
.q-mean{margin:0 0 2rem}
.q-mean:last-child{margin-bottom:0}
.prose .q-mean h3{margin-top:0}
.q-mean a,.q-stat a{overflow-wrap:anywhere}

@media print{
  .q-btns,.q-filters,.q-status,.cta-band{display:none}
  .table-scroll{overflow:visible;border:0}
  .q-table,.q-table--kits{min-width:0;font-size:.72rem}
  .q-stat{border-color:#999;background:none}
  }
