.jsp-admin-app,
.jsp-academy {
  position: relative;
  left: auto;
  width: 100vw;
  max-width: none !important;
  margin: 0 0 0 calc(50% - 50vw) !important;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  min-height: 100vh;
}
.jsp-admin-shell,.jsp-academy .jsp-shell{min-height:100vh}
body.admin-bar .jsp-admin-app,body.admin-bar .jsp-academy,body.admin-bar .jsp-admin-shell,body.admin-bar .jsp-academy .jsp-shell{min-height:calc(100vh - 32px)}
.jsp-admin-body{width:100%;max-width:1600px;margin-inline:auto}
.jsp-admin-side{position:sticky;top:0;height:100vh;overflow-y:auto}
body.admin-bar .jsp-admin-side{top:32px;height:calc(100vh - 32px)}
.jsp-table{min-width:720px}
.jsp-admin-card:has(>.jsp-table){overflow-x:auto}
@media(max-width:1100px){.jsp-admin-shell{grid-template-columns:210px 1fr}.jsp-builder{grid-template-columns:270px 1fr}.jsp-admin-body{padding:22px}.jsp-course-row{grid-template-columns:minmax(220px,1fr) 95px 90px 80px}}
@media(max-width:900px){.jsp-admin-side{position:relative;top:auto!important;height:auto!important}.jsp-admin-top{position:sticky;top:0;z-index:10}.jsp-admin-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:782px){body.admin-bar .jsp-admin-app,body.admin-bar .jsp-academy,body.admin-bar .jsp-admin-shell,body.admin-bar .jsp-academy .jsp-shell{min-height:calc(100vh - 46px)}}
@media(max-width:560px){.jsp-admin-app,.jsp-academy{min-height:100dvh}.jsp-admin-top{align-items:flex-start;gap:12px}.jsp-admin-top h1{font-size:25px}.jsp-admin-top .jsp-status-pill{flex:none}.jsp-admin-toolbar,.jsp-savebar{align-items:stretch;flex-wrap:wrap}.jsp-admin-toolbar .jsp-admin-btn,.jsp-savebar .jsp-admin-btn{flex:1}.jsp-admin-cards{grid-template-columns:1fr}.jsp-admin-card{padding:15px}.jsp-modal-backdrop{padding:10px}.jsp-modal{max-height:calc(100dvh - 20px);overflow-y:auto;padding:19px}}
