.activity-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.activity-heading h3 { margin:0; }
.activity-period { display:flex; gap:5px; }
.activity-period button { font-size:12px; padding:7px 10px; }
.activity-period .selected { border-color:var(--accent,#e5b44d); color:var(--accent,#e5b44d); }
.activity-cards { margin-top:18px; }
.activity-small { font-size:12px; color:#a8b1c0; line-height:1.7; margin:14px 0; }
.activity-calendar { max-width:430px; margin:20px auto; }
.activity-month { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; text-transform:capitalize; }
.activity-month button { padding:6px 12px; }
.activity-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; }
.activity-grid .weekday { text-align:center; font-size:11px; color:#a8b1c0; padding:6px 0; }
.activity-day { aspect-ratio:1.3; padding:5px; min-width:0; font-size:12px; background:rgba(255,255,255,.035); }
.activity-panel .level-1 { background:#274735; }.activity-panel .level-2 { background:#346649; }.activity-panel .level-3 { background:#438458; }.activity-panel .level-4 { background:#5da870; color:#071e10; }
.activity-panel .level-legacy { background:transparent; border-color:#65705f; border-style:dashed; }
.activity-day.today { box-shadow:inset 0 0 0 1px #c6ad60; }.activity-day.selected { outline:2px solid #e5b44d; outline-offset:1px; }
.activity-legend { display:flex; justify-content:flex-end; align-items:center; gap:5px; margin-top:10px; font-size:11px; color:#a8b1c0; }
.activity-legend i { width:12px; height:12px; border-radius:3px; }
.activity-day-info { font-size:13px; margin:12px 0; }.activity-history { margin:15px 0; }.activity-history summary { cursor:pointer; font-size:13px; }
.activity-table-wrap { overflow-x:auto; }.activity-history table { font-size:12px; }.activity-history td { white-space:nowrap; }
.activity-footnote { font-size:11px; color:#929aab; line-height:1.6; margin-top:20px; }
@media(max-width:600px) { .activity-cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
