/* Shared tokens keep Light / Dark / System consistent with the existing shell. */
.report-tabs{display:flex;gap:.35rem;flex-wrap:wrap;margin:0 0 1.25rem;border-bottom:1px solid var(--line);padding-bottom:.5rem}
.report-tabs a{display:inline-flex;align-items:center;min-height:2.6rem;padding:.5rem 1rem;border-radius:.65rem;text-decoration:none;color:var(--muted);font-weight:600}
.report-tabs a[aria-current=page]{background:var(--accent-soft);color:var(--violet)}
.report-tabs a:hover{background:var(--surface-hover,var(--accent-soft));color:var(--ink)}
.report-tabs a:focus-visible,.reminder-card summary:focus-visible,.report-filters summary:focus-visible{outline:2px solid var(--violet);outline-offset:4px}
.reminder-search{display:flex;gap:.75rem;align-items:end;flex-wrap:wrap;margin-bottom:1.25rem}
.reminder-search label{flex:1 1 14rem;max-width:28rem}
.reminder-card summary,.report-filters summary{cursor:pointer;padding:.3rem 0}
.reminder-card-heading{display:inline-grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem .8rem;width:calc(100% - 1.5rem);vertical-align:top}
.reminder-card-heading strong{font-size:1.08rem;overflow-wrap:anywhere}
.reminder-card-heading small{grid-column:1/-1;color:var(--muted);font-weight:400;line-height:1.5}
.scope-badge{display:inline-block;align-self:start;font-size:.72rem;font-weight:600;padding:.18rem .5rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);white-space:nowrap;vertical-align:middle}
.reminder-card-body{padding-top:.75rem}
.reminder-card .timer-form fieldset{display:flex;gap:.5rem 1rem;flex-wrap:wrap}
.reminder-card .timer-form fieldset legend{margin-bottom:.35rem}
.reminder-quiet-hours{border-top:1px solid var(--line);padding:.75rem 0}
.reminder-quiet-hours>summary{font-weight:600;cursor:pointer}
.reminder-quiet-hours[open]>label{margin-top:.75rem}
.report-filters summary span{margin-left:.8rem;color:var(--muted);font-size:.88rem;font-weight:400}
.report-filters .attendance-form{margin-top:1rem}
.attendance-metrics{gap:.75rem}
.attendance-metrics article{padding:.8rem}
.attendance-metrics article strong{font-size:1.65rem}
.attendance-metrics article p{margin:.4rem 0 0;font-size:.9rem}
.attendance-metric-explanation{margin-top:.75rem}
.attendance-metric-explanation summary{cursor:pointer;font-weight:600}
@media(max-width:520px){.report-tabs a{flex:1 1 auto;justify-content:center;padding:.45rem .6rem}.reminder-card-heading{grid-template-columns:1fr}.reminder-card-heading small{grid-column:auto}.reminder-card-heading .scope-badge{justify-self:start}.report-filters summary span{display:block;margin:.3rem 0 0}.reminder-search label{max-width:none;width:100%}.reminder-search .button{flex:1}}
