/* 3.9.0: immediate exercise focus, call-safe student card and responsive guardrails. */
.sp-class-overlay[data-class-overlay="student-info"]{
  z-index:100010!important;
  pointer-events:auto!important;
}
.sp-class-overlay[data-class-overlay="student-info"] .sp-student-info-dialog{
  z-index:100011!important;
  pointer-events:auto!important;
}
.sp-class-assigned-exercises article.is-teacher-focus{
  scroll-margin-block:20vh!important;
  animation:spTeacherFocus .85s ease-in-out 6!important;
}
body :where(.student-dashboard,.sp-teacher-dashboard,.sp-schedule-wrapper,.sp-profile-wrapper,.sp-faq,.sp-lesson-prices,.sp-lesson-rules,.sp-teacher-library){
  max-width:100%!important;
}
body :where(.student-dashboard,.sp-teacher-dashboard,.sp-schedule-wrapper,.sp-profile-wrapper,.sp-teacher-library) :where(img,video,canvas,iframe){
  max-width:100%!important;
}
@media(max-width:760px){
  body .elementor-location-header>.elementor-element-5bbf68cc{
    width:100%!important;
    min-height:72px!important;
    height:72px!important;
    padding:0!important;
    border-radius:0 0 20px 20px!important;
  }
  body .elementor-location-header .elementor-element-665f5bb0{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    width:calc(100% - 24px)!important;
    max-width:none!important;
    min-height:72px!important;
    height:72px!important;
    margin:0 12px!important;
    padding:10px 8px!important;
  }
  body .elementor-location-header :is(.elementor-element-2733039,.elementor-element-ce10b68){display:none!important}
  body .elementor-location-header .elementor-element-6d88dbb7{grid-column:1!important;margin:0!important}
  body .elementor-location-header .elementor-element-57e385a9{grid-column:2!important;margin:0!important}
  body .elementor-location-header .elementor-menu-toggle{margin:0!important}
  body .student-calendar{
    width:100%!important;
    max-width:100%!important;
    margin:24px 0 60px!important;
    overflow-x:auto!important;
  }
  .sp-class-overlay[data-class-overlay="student-info"]{
    padding:66px 10px 10px!important;
  }
  .sp-class-overlay[data-class-overlay="student-info"] .sp-student-info-dialog{
    top:0!important;
    right:auto!important;
    left:auto!important;
    width:min(100%,520px)!important;
    max-width:100%!important;
    max-height:calc(100dvh - 76px)!important;
    margin:0 auto!important;
  }
  body :where(.student-dashboard,.sp-teacher-dashboard,.sp-schedule-wrapper,.sp-profile-wrapper,.sp-faq,.sp-lesson-prices,.sp-lesson-rules,.sp-teacher-library){
    width:calc(100vw - 24px)!important;
    margin-right:auto!important;
    margin-left:auto!important;
  }
  body :where(.sp-dashboard-actions,.sp-schedule-controls,.sp-profile-actions,.sp-materials-heading,.sp-teacher-profile-actions){
    flex-wrap:wrap!important;
  }
  body :where(.sp-dashboard-actions,.sp-profile-actions,.sp-teacher-profile-actions)>:where(a,button){
    max-width:100%!important;
    white-space:normal!important;
  }
}
@media(max-width:480px){
  .sp-student-info-card{padding:22px 18px!important}
  .sp-student-info-card dl>div{gap:4px!important}
}
