.student-schedule-modal{width:min(920px,calc(100vw - 32px));max-height:88vh;display:flex;flex-direction:column}
.student-schedule-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-right:34px}
.student-schedule-header h2{margin:0}
.student-schedule-export{display:flex;gap:8px;flex-shrink:0}
.student-schedule-content{overflow:auto;padding-right:5px;display:grid;gap:14px}
.student-schedule-show{border:1px solid #e1e6f0;border-radius:12px;background:#f5f6f9;padding:14px}
.student-schedule-show>header{display:flex;justify-content:space-between;align-items:center;padding:0 4px 10px}
.student-schedule-show h3{font-size:17px;margin:2px 0 0}
.student-schedule-show>header>span{font-size:11px;font-weight:700;color:#5a6680}
.student-schedule-song{border:1px solid #e8ebf2;border-radius:10px;background:#fff;padding:13px;margin-top:9px}
.student-schedule-song.suggestion{background:#fff5b8;border-color:#efd972}
.student-schedule-song-heading h4{font-size:13px;margin:0 0 4px}
.student-schedule-song-heading p{font-size:10px;color:#66728b;margin:0}
.student-schedule-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.student-schedule-columns>div{background:#f7f8fb;border-radius:8px;padding:10px;min-width:0}
.student-schedule-columns>div>b{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#56627c;margin-bottom:7px}
.student-schedule-columns small{font-size:10px;color:#7c879e}
.student-schedule-entry{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #e8ebf2;padding:7px 0;font-size:10px}
.student-schedule-entry:first-of-type{border-top:0;padding-top:0}
.student-schedule-attendance{font-size:9px;font-weight:700;border-radius:99px;padding:4px 7px;white-space:nowrap;background:#edf0f5;color:#63708a}
.student-schedule-attendance.attendance-present{background:#e6f8ef;color:#257a52}
.student-schedule-attendance.attendance-absent{background:#ffe8e8;color:#c52929}
.student-schedule-attendance.attendance-justified{background:#fff2dc;color:#a56812}
.student-schedule-empty{padding:28px;text-align:center;color:#75809a;background:#f7f8fb;border-radius:10px}
@media(max-width:720px){.student-schedule-header{flex-direction:column}.student-schedule-export{width:100%;flex-wrap:wrap}.student-schedule-columns{grid-template-columns:1fr}.student-schedule-show>header{align-items:flex-start;gap:8px;flex-direction:column}.student-schedule-entry{align-items:flex-start;flex-direction:column}}
