.analytics-panel {color:#101b30;min-width:0;}
.analytics-panel h2,.analytics-panel h3 {text-wrap:balance;}
.analytics-panel .analytics-intro {max-width:72ch;color:#54647a;}
.analytics-filters {display:flex;flex-wrap:wrap;align-items:end;gap:16px;margin:24px 0;}
.analytics-filters label {display:grid;gap:8px;min-width:140px;flex:1;}
.analytics-filters input,.analytics-filters select,.analytics-panel button {font:inherit;}
.analytics-filters input,.analytics-filters select {width:100%;min-height:48px;padding:10px 12px;border:1px solid #b8cee2;border-radius:10px;background:#fff;color:#101b30;}
.analytics-filters .analytics-search {flex:2;min-width:200px;}
.analytics-dates {display:flex;flex-wrap:wrap;gap:16px;flex-basis:100%;}
.analytics-panel [hidden] {display:none!important;}
.analytics-panel button,.analytics-panel .analytics-export {min-height:44px;padding:10px 16px;border:1px solid #b8cee2;border-radius:8px;background:#fff;color:#006dcc;text-decoration:none;cursor:pointer;}
.analytics-panel #analyticsRefresh {background:#006dcc;color:#fff;border-color:#006dcc;}
.analytics-panel button:hover,.analytics-panel .analytics-export:hover {background:#e0f0ff;color:#005eb2;}
.analytics-panel button:disabled {opacity:.55;cursor:default;}
.analytics-panel :focus-visible {outline:3px solid #006dcc;outline-offset:3px;}
.analytics-panel ::selection {background:#d9edff;color:#101b30;}
.analytics-panel input {caret-color:#006dcc;}
.analytics-summary {display:flex;flex-wrap:wrap;gap:24px 40px;padding:24px 0;border-block:1px solid #d9e6f2;margin:24px 0;}
.analytics-summary dt {color:#54647a;}
.analytics-summary dd {font-size:1.5rem;font-weight:700;margin:4px 0 0;font-variant-numeric:tabular-nums;}
.analytics-panel table {width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;text-align:left;}
.analytics-panel th,.analytics-panel td {padding:14px 12px;border-bottom:1px solid #d9e6f2;vertical-align:top;}
.analytics-panel thead th {color:#54647a;font-weight:600;}
.analytics-panel small {display:block;margin-top:4px;color:#54647a;font-weight:400;}
.analytics-scroll {overflow:auto;max-width:100%;scrollbar-color:#b8cee2 #edf7ff;}
.analytics-panel .analytics-roster {min-width:1100px;}
.analytics-panel .analytics-student {padding:0;min-height:44px;border:0;background:none;text-align:left;text-decoration:underline;text-underline-offset:4px;font-weight:700;}
.analytics-trend {max-width:900px;margin-block:24px;}
.analytics-trend svg {width:100%;color:#006dcc;}
.analytics-trend-dates {display:flex;justify-content:space-between;gap:12px;color:#54647a;font-size:.875rem;margin-bottom:16px;}
.analytics-panel summary {cursor:pointer;padding-block:12px;min-height:44px;}
.analytics-pagination,.analytics-detail-actions {display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-block:24px;}
.analytics-detail {margin-top:40px;padding-top:32px;border-top:1px solid #b8cee2;scroll-margin-top:24px;}
.analytics-detail-heading {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;}
.analytics-detail h3 {font-size:1.5rem;margin:0;}
.analytics-events {list-style:none;padding:0;margin:24px 0;}
.analytics-events li {border-bottom:1px solid #d9e6f2;padding:20px 0;overflow-wrap:anywhere;}
.analytics-event-heading {display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;}
.analytics-event-heading time {color:#54647a;}
.analytics-events p {margin:8px 0;max-width:75ch;}
.analytics-coverage {max-width:80ch;color:#54647a;font-size:.875rem;}
.analytics-status {min-height:1.65em;}
@media(max-width:767px){.analytics-filters{gap:12px;}.analytics-filters label{flex-basis:calc(50% - 12px);min-width:0;}.analytics-filters .analytics-search{flex-basis:100%;}.analytics-summary{gap:20px;}.analytics-summary>div{flex-basis:calc(50% - 12px);}.analytics-roster th:first-child{position:sticky;left:0;background:#fff;min-width:140px;}.analytics-detail-actions>*{max-width:100%;}.analytics-dates label{flex-basis:100%;}}
