/* Compact additions that inherit each theme's colors and existing hover. */
.student-class-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.student-class-actions .student-pro-button{margin:0;padding:10px 12px;font-size:12px;min-width:0}
.student-password-link{display:block;margin:18px auto 6px;font-size:11px;letter-spacing:1px}
.student-class-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:20px;overflow:auto}
.student-class-dialog h2{font-size:22px;line-height:1.2;margin:14px 0}
.student-class-dialog h3{font-size:14px;margin:20px 0 10px}
.student-class-dialog p{font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.student-class-dialog .class-cover{height:170px;object-fit:cover}
.student-class-dialog .teacher-chip img{width:40px;height:40px;object-fit:contain;object-position:center}
.student-class-dialog .class-topline{gap:12px;align-items:center}
.student-class-dialog .class-topline button{padding:7px 11px;flex-shrink:0}
.student-catalog-class{display:flex;flex-direction:column;gap:5px;width:100%;text-align:left;padding:13px;margin:8px 0;font:inherit;white-space:normal}
.student-catalog-class small,.student-booking-note{opacity:.7;font-size:12px}
.student-booking-row{display:grid;gap:8px;padding:14px;margin:10px 0;border:1px solid var(--line,rgba(180,160,110,.25));min-width:0}
.student-booking-row p{margin:0}.student-booking-row button{justify-self:start;max-width:100%;white-space:normal;font-size:12px;padding:9px 12px}
.student-booking-row label,.student-password-form label{display:grid;gap:7px;font-size:12px}
.student-booking-row select,.student-password-form input{width:100%;min-width:0;box-sizing:border-box;padding:11px;border:1px solid var(--line,#777);background:transparent;color:inherit;font:inherit;font-size:16px}
.student-password-form{display:grid;gap:15px}.student-password-form small{font-size:12px;opacity:.75}
.booking-status{font-size:12px}.booking-status[data-state=attended]{color:#58a77a}
.teacher-card{display:flex;flex-direction:column;gap:18px!important}
.teacher-card-heading{display:flex;align-items:center;gap:14px}.teacher-card-heading h3{margin:0!important;overflow-wrap:anywhere}
.teacher-card-heading .pro-photo{width:64px;height:64px;object-fit:contain;margin:0;flex-shrink:0}
.teacher-card-counts{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-block:1px solid var(--line,rgba(180,160,110,.2));padding:14px 0}
.teacher-card-counts div{display:grid;gap:6px}.teacher-card-counts strong{font-size:24px}.teacher-card-counts span{font-size:12px;line-height:1.4;opacity:.75}
.teacher-card-bio{font-size:13px;line-height:1.7;margin:0!important;white-space:pre-line}.teacher-card>button{margin-top:auto;align-self:flex-start}
.booking-group{margin:14px 0}.booking-balance{padding:12px;border:1px solid var(--line,rgba(180,160,110,.2));margin-bottom:12px}.booking-balance small{font-size:12px;opacity:.75}
.students-total-note{margin:18px 0 0!important;line-height:1.6;padding-bottom:4px}
#analyticsDate[hidden],#attendanceHistoryDate[hidden]{display:none!important}
.period-reference{min-width:0;width:100%;box-sizing:border-box}
.history-total strong{font-size:14px!important;line-height:1.5}.history-total span{font-size:9px!important;line-height:1.5}
#historyCategory:disabled{opacity:.5}
@media(max-width:600px){
 .academy-schedule-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px!important;gap:8px!important;padding:10px!important;align-items:end}
 .academy-schedule-field{min-width:0!important;width:100%;overflow:hidden}
 .academy-schedule-field input,.academy-schedule-field select{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box;font-size:16px!important;padding:8px!important;height:42px;appearance:none;-webkit-appearance:none}
 .academy-schedule-time::-webkit-date-and-time-value{text-align:left;min-width:0}.academy-schedule-time::-webkit-datetime-edit{min-width:0;padding:0}
 .academy-schedule-remove{min-width:0!important;width:36px!important;height:42px;padding:0!important}
 .student-class-dialog{padding:16px}.student-class-dialog .class-cover{height:145px}
 .booking-group .pro-row{flex-wrap:wrap;gap:10px}.booking-group .pro-row>div{min-width:0;overflow-wrap:anywhere}
 .pro-toolbar[data-range]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.pro-toolbar[data-range]>button{grid-column:1/-1}.pro-toolbar[data-range] input{width:100%;min-width:0;box-sizing:border-box;font-size:16px}
}
@media(max-width:380px){.academy-schedule-row{grid-template-columns:minmax(0,1fr) 36px!important}.academy-schedule-field:first-child{grid-column:1/-1}.academy-schedule-field:nth-child(2){grid-column:1}.academy-schedule-remove{grid-column:2}}

#historyFilters label[hidden]{display:none!important}
