.analytics-panel{display:none}.analytics-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:0 0 10px;border-bottom:1px solid var(--line)}.analytics-header small{color:var(--gold);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.analytics-header h2{margin:5px 0 0;font-size:23px}.analytics-header p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.analytics-environment{display:flex;align-items:center;gap:7px;margin:9px 0;padding:8px 10px;border-left:3px solid var(--gold);background:#fffaf0}.analytics-environment strong{font-size:8px}.analytics-environment span{color:var(--muted);font-size:8px;line-height:1.45}.analytics-filters{display:flex;align-items:end;gap:7px}.analytics-filters label{display:grid;gap:4px;color:var(--muted);font-size:7px;font-weight:800}.analytics-filters select{min-width:125px;min-height:38px;padding:0 30px 0 10px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--navy);font:800 9px inherit}.analytics-export{display:flex;align-items:end;gap:6px}.analytics-export button{min-height:38px}.analytics-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:9px 0}.analytics-kpis article{min-width:0;padding:11px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--paper)}.analytics-kpis small,.analytics-kpis strong,.analytics-kpis span{display:block}.analytics-kpis small{color:var(--muted);font-size:8px}.analytics-kpis strong{margin-top:6px;font-size:23px}.analytics-kpis span{margin-top:4px;color:var(--muted);font-size:7px;line-height:1.35}.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.analytics-grid.analytics-grid-wide{grid-template-columns:1.25fr .75fr}.analytics-card{min-width:0;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--paper);overflow:hidden}.analytics-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid var(--line)}.analytics-card-head strong,.analytics-card-head span{display:block}.analytics-card-head strong{font-size:10px}.analytics-card-head span{margin-top:3px;color:var(--muted);font-size:8px}.analytics-card-body{padding:12px}.analytics-outstanding{display:flex;gap:7px}.analytics-outstanding>div{flex:1;padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--paper2)}.analytics-outstanding strong{display:block;margin-top:7px;font-size:15px}.analytics-status{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:99px;font-size:7px;font-weight:850}.analytics-status.upcoming{background:#eef2f5;color:#536879}.analytics-status.due{background:#fff4d6;color:#806425}.analytics-status.overdue{background:#f7e8e6;color:var(--red)}.analytics-line-chart{width:100%;min-height:190px;overflow:visible}.analytics-line-chart .analytics-grid-line{fill:none;stroke:#e7e1d6;stroke-width:1}.analytics-line-chart polyline{fill:none;stroke:var(--navy);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.analytics-line-chart circle{fill:var(--paper);stroke:var(--gold);stroke-width:3;cursor:pointer}.analytics-line-chart circle:hover,.analytics-line-chart circle:focus{fill:var(--goldsoft);outline:none;stroke-width:5}.analytics-line-chart text{fill:var(--muted);font-size:9px;font-weight:700}.analytics-tooltip{min-height:16px;margin:4px 0 0;color:var(--muted);font-size:7px;line-height:1.4}.analytics-bars{display:grid;gap:10px}.analytics-bars button{display:grid;width:100%;gap:6px;padding:0;border:0;background:none;text-align:left;cursor:pointer}.analytics-bars button>span{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px}.analytics-bars button b{font-size:8px}.analytics-bars button>i{height:8px;border-radius:99px;background:#eee8dc;overflow:hidden}.analytics-bars button em{display:block;width:var(--bar);height:100%;border-radius:inherit;background:var(--navy)}.analytics-bars button:hover em,.analytics-bars button:focus em{background:var(--gold)}.analytics-capacity{display:grid;gap:11px}.analytics-capacity article{display:grid;gap:6px}.analytics-capacity article>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.analytics-capacity strong{font-size:8px}.analytics-capacity span{color:var(--muted);font-size:7px}.analytics-capacity i{height:8px;border-radius:99px;background:#eee8dc;overflow:hidden}.analytics-capacity em{display:block;width:var(--capacity);height:100%;border-radius:inherit;background:var(--gold)}.analytics-attention{display:grid}.analytics-attention label{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:39px;padding:0 4px;border-bottom:1px solid var(--line);font-size:8px;cursor:pointer}.analytics-attention label:last-child{border-bottom:0}.analytics-attention label:hover span{color:var(--gold)}.analytics-attention strong{font-size:13px}.analytics-table{width:100%;border-collapse:collapse}.analytics-table th,.analytics-table td{padding:9px 10px;border-bottom:1px solid var(--line);font-size:8px;text-align:left}.analytics-table th{color:var(--muted);font-size:7px}.analytics-table tr:last-child td{border-bottom:0}.analytics-empty{display:grid;place-items:center;min-height:140px;padding:20px;text-align:center}.analytics-empty strong{font-size:10px}.analytics-empty span{margin-top:5px;color:var(--muted);font-size:8px}.analytics-mini-bars{height:190px;display:flex;align-items:end;gap:8px;padding-top:10px}.analytics-mini-bars button{height:100%;min-width:0;flex:1;display:flex;flex-direction:column;justify-content:end;gap:6px;padding:0;border:0;background:none;cursor:pointer}.analytics-mini-bars i{display:block;height:var(--bar);min-height:5px;border-radius:6px 6px 2px 2px;background:var(--navy)}.analytics-mini-bars button:hover i,.analytics-mini-bars button:focus i{background:var(--gold)}.analytics-mini-bars span{color:var(--muted);font-size:7px;white-space:nowrap}.analytics-usage{display:grid}.analytics-usage article{display:grid;grid-template-columns:72px 1fr auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}.analytics-usage article:last-child{border-bottom:0}.analytics-kind{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 7px;border-radius:99px;background:var(--paper2);color:var(--muted);font-size:7px;font-weight:800}.analytics-usage strong,.analytics-usage small{display:block}.analytics-usage strong{font-size:8px}.analytics-usage small{margin-top:3px;color:var(--muted);font-size:7px}.analytics-usage b{font-size:14px}.analytics-office,.analytics-engagement{display:grid}.analytics-office>div,.analytics-engagement>div{display:grid;grid-template-columns:70px 1fr auto;gap:8px;align-items:center;min-height:39px;border-bottom:1px solid var(--line);font-size:8px}.analytics-office>div:last-child,.analytics-engagement>div:last-child{border-bottom:0}.analytics-office span,.analytics-engagement span{color:var(--muted)}.analytics-office b{font-size:8px}.analytics-engagement>div{grid-template-columns:1fr auto}.analytics-engagement strong{font-size:14px}
#a-analytics:checked~.app [for=a-analytics]{background:var(--navy);color:white}#a-analytics:checked~.app .admin-analytics{display:block;animation:sectionReveal 260ms var(--ease-out) both}#i-analytics:checked~.app [for=i-analytics]{background:var(--navy);color:white}#i-analytics:checked~.app .instructor-analytics{display:block;animation:sectionReveal 260ms var(--ease-out) both}
@media(max-width:1100px){.analytics-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.analytics-header{display:block}.analytics-filters{margin-top:10px;flex-wrap:wrap}.analytics-filters label{flex:1}.analytics-filters select{width:100%;min-height:44px;font-size:16px}.analytics-export{width:100%}.analytics-export label{flex:1}.analytics-export button{min-height:44px}.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-grid,.analytics-grid.analytics-grid-wide{grid-template-columns:1fr}.analytics-line-chart{min-height:170px}.analytics-card{overflow:hidden}.analytics-table thead{display:none}.analytics-table,.analytics-table tbody,.analytics-table tr,.analytics-table td{display:block}.analytics-table tbody{display:grid;gap:8px}.analytics-table tr{padding:10px;border:1px solid var(--line);border-radius:10px}.analytics-table td{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border:0}.analytics-table td::before{content:attr(data-label);color:var(--muted);font-size:7px}.analytics-table td:first-child{padding-bottom:8px;border-bottom:1px solid var(--line)}}
@media(max-width:520px){.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-kpis article{padding:10px}.analytics-kpis strong{font-size:20px}.analytics-outstanding{display:grid}.analytics-header h2{font-size:21px}.analytics-filters label{flex:1 1 calc(50% - 7px)}.analytics-export{display:grid;grid-template-columns:1fr auto}.analytics-mini-bars{gap:4px;height:165px;overflow-x:auto}.analytics-mini-bars button{min-width:48px}.analytics-usage article{grid-template-columns:60px 1fr auto}.analytics-office>div{grid-template-columns:58px 1fr auto}}
@media(max-width:370px){.analytics-kpis{grid-template-columns:1fr}.analytics-filters label{flex-basis:100%}}

/* Touch-sized chart interaction targets without increasing visual weight. */
.analytics-line-chart .analytics-hit{fill:transparent;stroke:transparent;stroke-width:0;cursor:pointer}.analytics-line-chart circle.analytics-hit:hover,.analytics-line-chart circle.analytics-hit:focus{fill:transparent;stroke:transparent;stroke-width:0}.analytics-line-chart .analytics-dot{fill:var(--paper);stroke:var(--gold);stroke-width:3;pointer-events:none}.analytics-line-chart .analytics-hit:hover+.analytics-dot,.analytics-line-chart .analytics-hit:focus+.analytics-dot{fill:var(--goldsoft);stroke-width:5}.analytics-line-chart .analytics-hit:focus{outline:none}.analytics-bars{gap:4px}.analytics-bars button{min-height:44px;align-content:center}
@media(max-width:900px){.analytics-attention label{min-height:44px}}
