.activity-filters,.activity-pickers,.activity-history-head,.activity-pages{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.activity-filters label,.activity-pickers label,.activity-history-head label{display:grid;gap:6px;font-size:13px;font-weight:600;text-transform:none;letter-spacing:0}
.activity-filters input,.activity-pickers select{min-width:170px}
.activity-explainer,.activity-coverage{font-size:13px;line-height:1.65;max-width:1000px}
.activity-explainer{margin:18px 0 24px}
.activity-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.activity-metrics article{padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--card);display:grid;gap:12px}
.activity-metrics article>span{font-size:13px;color:var(--muted)}
.activity-metrics strong{font-size:30px;line-height:1.2;font-weight:650;letter-spacing:-1px}
.activity-metrics small{font-size:18px;font-weight:400;color:var(--muted)}
.activity-pickers{margin:24px 0 14px}
.activity-person{border:1px solid var(--line);border-radius:12px;margin:10px 0;background:var(--card);overflow:hidden}
.activity-person>summary{display:flex;align-items:center;gap:24px;padding:18px 22px;cursor:pointer;list-style:none}
.activity-person>summary:after{content:'+';font-size:23px;color:var(--muted)}
.activity-person[open]>summary:after{content:'−'}
.activity-person>summary::-webkit-details-marker{display:none}
.activity-person-name{flex:1;min-width:0}
.activity-person-name strong{overflow-wrap:anywhere}
.activity-person>summary span span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:3px}
.activity-person-time,.activity-person-count{min-width:85px}
.activity-person-body{padding:0 22px 20px;border-top:1px solid var(--line)}
.activity-person-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}
.activity-person-overview span{font-size:13px}
.activity-person-overview b{display:block;margin-bottom:7px;font-size:12px;color:var(--muted)}
.activity-table-wrap{overflow:auto;margin:18px 0}
.activity-table-wrap table{min-width:770px;width:100%;font-size:13px;text-align:left;border-collapse:collapse}
.activity-table-wrap caption{text-align:left;font-weight:600;margin-bottom:12px}
.activity-table-wrap th,.activity-table-wrap td{padding:11px;border-bottom:1px solid var(--line)}
.activity-table-wrap thead th{font-size:11px;color:var(--muted);font-weight:600}
.activity-history{margin-top:26px}
.activity-history-head{justify-content:space-between;align-items:center}
.activity-history ol,.record-activity ol{padding:0;list-style:none}
.activity-history li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.activity-history li>span>span{display:block;font-size:13px;margin-top:5px}
.activity-history time,.record-activity time{font-size:12px;color:var(--muted);white-space:nowrap}
.activity-pages{justify-content:space-between;align-items:center;margin-top:20px;font-size:13px}
.record-activity:empty{display:none}
.record-activity{border:1px solid var(--line);border-radius:12px;padding:13px 17px;margin:0 0 18px;background:var(--card);font-size:12px}
.record-people{display:flex;flex-wrap:wrap;gap:12px 26px}
.record-people span{display:grid;gap:4px}
.record-people strong{font-size:12px;font-weight:500}
.record-activity details{margin-top:9px}
.record-activity summary{cursor:pointer;color:var(--muted)}
.record-activity li{display:flex;justify-content:space-between;gap:12px;padding:7px 0}
@media(max-width:700px){.activity-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.activity-metrics article{padding:14px}.activity-metrics strong{font-size:25px}.activity-filters label{flex:1;min-width:0}.activity-filters input{width:100%;min-width:0}.activity-person>summary{padding:15px 12px;gap:12px}.activity-person-time,.activity-person-count{min-width:48px}.activity-person-body{padding:0 12px 15px}.activity-person-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-history li{display:block}.activity-history time{display:block;margin-top:9px}.record-activity li{flex-direction:column;gap:3px}.activity-pickers label{flex:1;min-width:0}.activity-pickers select{min-width:0;width:100%}}
@media print{.record-activity{display:none}}
@media(max-width:700px){.activity-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.activity-filters label{display:grid;min-width:0}.activity-filters button{width:100%;min-width:0}.activity-filters #activity-month,.activity-filters #activity-report,.activity-report-status{grid-column:1 / -1}}
/* Rankings: six leaderboards, three across, two on a tablet, one on a phone. */
.activity-rankings{margin:28px 0 8px}
.activity-rankings-head h2{margin:0}.activity-rankings-head p{margin:4px 0 14px;font-size:13px}
.activity-rank-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.activity-rank{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--card);min-width:0}
.activity-rank h3{margin:0;font-size:15px}.activity-rank>p{margin:4px 0 12px;font-size:12px;line-height:1.5}
.activity-rank ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.activity-rank li,.activity-rank-cols{display:grid;grid-template-columns:26px minmax(0,1fr) 84px;gap:10px;align-items:center}
.activity-rank.has-count li,.activity-rank.has-count .activity-rank-cols{grid-template-columns:26px minmax(0,1fr) 84px 60px}
.activity-rank li{padding:8px 0;border-top:1px solid var(--line)}
.activity-rank-cols{padding:0 0 6px;font-size:10px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.activity-rank-cols span:nth-child(n+3){text-align:right}
.activity-rank-place{display:inline-grid;place-content:center;width:24px;height:24px;border-radius:50%;font-size:12px;font-weight:650;background:var(--sunken);color:var(--muted);font-variant-numeric:tabular-nums}
.activity-rank li.is-top .activity-rank-place{background:var(--accent,#b94b17);color:#fff}
.activity-rank-who{min-width:0}.activity-rank-who strong{display:block;font-size:13px;overflow-wrap:anywhere}
.activity-rank-who span{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.activity-rank-value{font-size:14px;font-weight:650;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.activity-rank-count{font-size:14px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.activity-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.activity-report-status{font-size:13px;align-self:center}
.activity-rank details summary{cursor:pointer;font-size:12px;color:var(--muted);padding:8px 0}
.activity-rank-empty{font-size:13px}
@media(max-width:1100px){.activity-rank-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.activity-rank-grid{grid-template-columns:1fr}}

/* Colour: each figure at the top and each leaderboard wears the tone of the
   tool it counts, so the four cards are told apart before they are read. */
.activity-metrics article{background:color-mix(in srgb,var(--tone,var(--muted)) 9%,var(--card));border-color:color-mix(in srgb,var(--tone,var(--muted)) 26%,var(--line))}
.activity-metrics strong{color:var(--tone,var(--ink))}
.activity-rank{border-top:4px solid var(--tone,var(--line))}
.activity-rank h3{color:var(--tone,var(--ink))}
.activity-rank li.is-top .activity-rank-place{background:var(--tone,var(--accent,#b94b17));color:var(--card)}

