/* Student booking calendar: fill the available desktop panel. */
.student-schedule .booking-grid{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  table-layout:fixed!important;
}
.policy-page{max-width:900px;margin:28px auto}.policy-page li{margin:10px 0}.safe-message{border-left:5px solid #3432cf}.message-thread{display:flex;flex-direction:column;gap:12px;min-height:180px}.message-bubble{max-width:78%;padding:12px 15px;border-radius:14px;background:#f0f1f8}.message-bubble.mine{align-self:flex-end;background:#e6e5ff}.message-bubble p{margin:7px 0}.message-bubble small{color:#666}.lesson-launch{text-align:center;max-width:720px;margin:22px auto}.evidence-cell{min-width:260px;max-width:480px;white-space:normal;word-break:break-word}@media(max-width:720px){.message-bubble{max-width:94%}}
.student-schedule .booking-grid tbody th,
.student-schedule .booking-grid thead th:first-child{
  width:130px!important;
  min-width:130px!important;
}
.student-schedule .booking-grid td,
.student-schedule .booking-grid thead th:not(:first-child){
  width:auto!important;
  min-width:80px!important;
  max-width:none!important;
}
.student-schedule .available-cell,
.student-schedule .available-cell form,
.student-schedule .unavailable{
  width:100%!important;
}
.student-schedule .booking-grid button{
  width:100%!important;
}
.student-schedule .booking-grid form:has(.half-lesson) button{
  width:50%!important;
}
@media(max-width:720px){
  .student-schedule .booking-grid{min-width:760px!important}
}
