.schedule-admin-visual #content,
.schedule-admin-visual #week-scale{min-width:0;max-width:100%;overflow-x:hidden}
.schedule-admin-visual #week-scale>.day-sheet{display:block;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
.schedule-admin-visual #week-scale>.day-sheet .schedule-matrix.explicit-matrix{
  width:100%;
  min-width:100%;
  grid-template-columns:64px repeat(var(--teacher-count),minmax(0,1fr));
}
@media(min-width:761px){.schedule-admin-visual #week-scale>.day-sheet{overflow-x:hidden}.schedule-admin-visual #week-scale .matrix-cell,.schedule-admin-visual #week-scale .matrix-head{padding-left:5px!important;padding-right:5px!important;font-size:clamp(10px,.78vw,14px)}.schedule-admin-visual #week-scale .matrix-cell small{font-size:clamp(8px,.66vw,12px)}}
@media(min-width:761px){
  body.schedule-admin-visual #content,
  body.schedule-admin-visual #week-scale{width:100%!important;min-width:0!important;max-width:100%!important;overflow-x:hidden!important}
  body.schedule-admin-visual #week-scale>.day-sheet{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}
  body.schedule-admin-visual #week-scale>.day-sheet .schedule-matrix.explicit-matrix{display:grid!important;width:100%!important;min-width:0!important;max-width:100%!important;grid-template-columns:minmax(52px,.42fr) repeat(var(--teacher-count),minmax(0,1fr))!important}
  body.schedule-admin-visual #week-scale .matrix-head,
  body.schedule-admin-visual #week-scale .matrix-cell{width:auto!important;min-width:0!important;max-width:none!important;padding-left:3px!important;padding-right:3px!important;font-size:clamp(8px,.68vw,12px)!important;overflow:hidden!important}
  body.schedule-admin-visual #week-scale .matrix-cell>strong,
  body.schedule-admin-visual #week-scale .matrix-cell>small{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis}
  body.schedule-admin-visual #week-scale .matrix-cell>small{display:block;white-space:nowrap;font-size:clamp(7px,.58vw,10px)!important}
  body.schedule-admin-visual #week-scale .matrix-head{white-space:nowrap;text-overflow:ellipsis}
}
.schedule-admin-visual #week-scale .matrix-cell,
.schedule-admin-visual #week-scale .matrix-head{min-width:0;max-width:100%;overflow:hidden}
.schedule-admin-visual #week-scale .matrix-cell>strong{display:flex!important;align-items:center;justify-content:center;width:100%;min-width:0;gap:5px;white-space:normal}
.schedule-admin-visual .student-line-group{display:grid;min-width:0;max-width:100%;gap:3px;text-align:center}
.schedule-admin-visual .student-line-group>span{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.18}
.schedule-admin-visual #week-scale .matrix-cell.teacher-absent-cell-final{
  background:#f9d9dd!important;
  border-color:#c9253a!important;
  color:#831525!important;
  box-shadow:inset 0 0 0 1px #c9253a!important;
}
.schedule-admin-visual #week-scale .matrix-cell.teacher-absent-cell-final::after{
  content:"AUSÊNCIA"!important;
  display:block!important;
  color:#a10f24!important;
  font-weight:900!important;
}
@media(max-width:760px){
  .schedule-admin-visual #week-scale{display:block!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
  .schedule-admin-visual #week-scale>.mobile-day-tabs.final-mobile-day-tabs{display:flex!important;width:100%;gap:5px;margin:0 0 10px;overflow-x:auto}
  .schedule-admin-visual #week-scale>.mobile-day-tabs.final-mobile-day-tabs .tab{display:block!important;flex:1 0 54px;min-width:54px;padding:8px 5px}
  .schedule-admin-visual #week-scale>.day-sheet{display:none!important;min-width:0!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .schedule-admin-visual #week-scale>.day-sheet.mobile-active{display:block!important}
  .schedule-admin-visual #week-scale>.day-sheet .schedule-matrix.explicit-matrix{display:none!important}
  .schedule-admin-visual .mobile-compact-day{display:grid;background:#f4f8fb;border:1px solid #cfe0ea;border-top:0}
  .schedule-admin-visual .mobile-compact-time{display:grid;grid-template-columns:58px minmax(0,1fr);gap:7px;padding:7px;border-bottom:1px solid #d7e4eb}
  .schedule-admin-visual .mobile-compact-time:last-child{border-bottom:0}
  .schedule-admin-visual .mobile-compact-time>time{display:flex;align-items:flex-start;justify-content:center;padding-top:10px;color:#174661;font-size:13px;font-weight:900}
  .schedule-admin-visual .mobile-compact-time>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .schedule-admin-visual .mobile-compact-card{display:grid;align-content:center;gap:2px;min-width:0;min-height:56px;padding:7px 6px;border:1px solid #bcd6e5;border-left:4px solid #3ba8dc;border-radius:8px;background:#edf7fd;color:#123f60;text-align:center;box-shadow:none}
  .schedule-admin-visual .mobile-compact-card strong,.schedule-admin-visual .mobile-compact-card span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .schedule-admin-visual .mobile-compact-card strong{font-size:13px}
  .schedule-admin-visual .mobile-compact-card span{font-size:11px;color:#496878}
  .schedule-admin-visual .mobile-compact-card.atividade{background:#e5f6ed;border-color:#7fc8a3;color:#176748}
  .schedule-admin-visual .mobile-compact-card.planejamento,.schedule-admin-visual .mobile-compact-card.reuniao{background:#fff7e5;border-color:#e8b85c;color:#74510d}
  .schedule-admin-visual .mobile-compact-card.unavailable{background:repeating-linear-gradient(135deg,#faeeee,#faeeee 7px,#f6e2e4 7px,#f6e2e4 14px);border-color:#e6bec2;color:#9c3d42}
  .schedule-admin-visual .mobile-compact-card.absent{background:#f9d9dd!important;border-color:#c9253a!important;color:#831525!important;box-shadow:inset 0 0 0 1px #c9253a}
  .schedule-admin-visual .mobile-compact-card.absent span{color:#a10f24!important}
  .schedule-admin-visual .mobile-compact-card:disabled{opacity:.72;cursor:default}
}
@media(max-width:370px){.schedule-admin-visual .mobile-compact-time>div{grid-template-columns:1fr}}
@media(min-width:761px){.mobile-compact-day{display:none!important}}
