.roster-trigger{border:0;background:transparent;color:var(--deep);padding:0;display:inline-flex;align-items:center;gap:8px;text-align:left;cursor:pointer;font:inherit}.roster-trigger>span:last-child{display:grid;gap:2px}.roster-trigger small{display:block;color:var(--muted);font-size:11px;font-weight:500}.roster-trigger:after{content:'⌄';width:20px;height:20px;display:grid;place-items:center;border-radius:6px;background:var(--mint);color:var(--green);font-size:11px}.roster-trigger.open:after{content:'⌃'}.class-trigger>span:first-child{display:grid;gap:2px}.roster-expand-row td{padding:0 12px 12px!important;border-bottom:1px solid var(--line)}.roster-expand-row .roster-box{box-sizing:border-box;width:100%!important;max-width:none!important;max-height:250px;margin:0!important;padding:8px 14px!important;border-radius:10px;box-shadow:none}.roster-expand-row .student-chip{box-sizing:border-box;width:100%;display:block!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;margin:0!important;padding:8px 4px!important}.report-workspace{display:grid;grid-template-columns:minmax(310px,360px) minmax(0,1fr);gap:18px;align-items:start}.report-controls{display:grid;gap:18px;position:sticky;top:18px;max-height:calc(100vh - 36px);overflow:auto;padding-right:2px}.report-picker{display:grid;gap:12px}.report-picker .search{width:100%;max-width:none}.report-config{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;margin-top:18px!important}.report-config .card{padding:18px}.report-config .form-grid{grid-template-columns:1fr 1fr}.report-preview{min-width:0}.report-preview .report-sheet{box-sizing:border-box;width:100%;max-width:none;margin:0;padding:28px}.report-preview>.no-print:first-child{margin-top:0!important}.report-preview table{font-size:11px}@media(max-width:1050px){.report-workspace{grid-template-columns:300px minmax(0,1fr)}.report-preview .report-sheet{padding:20px}.report-config .form-grid{grid-template-columns:1fr}}@media(max-width:820px){.report-workspace{grid-template-columns:1fr}.report-controls{position:static;max-height:none;overflow:visible}.report-config{grid-template-columns:1fr 1fr!important}.report-preview .report-sheet{padding:20px}}@media(max-width:600px){.report-config{grid-template-columns:1fr!important}.identity-row{align-items:flex-start;flex-direction:column}}@media print{.report-workspace{display:block}.report-preview .report-sheet{width:auto;max-width:none;padding:10mm}}
