/* Shared phone layout safeguards; page overflow is fixed at the source, not hidden. */
@media screen and (max-width:760px){
 main,main *,[role=dialog],[role=dialog] *{box-sizing:border-box}
 main,main :is(section,article,form,fieldset,.card,.panel,.cj-card,.vx-tab-content,.grid,.grid2,.cj-grid,.player,.layout){min-width:0;min-inline-size:0;max-width:100%}
 main :is(.grid,.grid2,.cj-form-grid,.ob-grid,.mn-fields,.lm-fields,.cj-grid,.cards,.player){grid-template-columns:minmax(0,1fr)!important}
 main :is(.grid,.grid2,.cj-form-grid,.ob-grid,.mn-fields,.lm-fields)>*,main :is(.page-head,.page-top,.toolbar,.actions,.cj-actions)>*{min-width:0;max-width:100%}
 main :is(p,li,dt,dd,label,legend,h1,h2,h3,h4,a,button){overflow-wrap:anywhere;word-break:normal}
 main :is(p,li,label,legend){font-size:16px;line-height:1.6}
 main :is(small,.muted,.limit){font-size:13px;line-height:1.5}
 main :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea){font-size:16px!important;line-height:1.5!important;min-width:0!important;max-width:100%!important}
 main :is(button,.button,.btn,.vx-button,.primary){min-height:44px;max-width:100%;white-space:normal}
 main :is(.page-head,.page-top,.toolbar,.actions,.cj-actions,.reading-footer,.save-footer,.savebar){flex-wrap:wrap;gap:10px}
 main :is(.toolbar,.actions,.cj-actions)>:is(button,a){flex-shrink:1;white-space:normal}
 main :is(img,svg,video,canvas,iframe){max-width:100%}main :is(img,video){height:auto}
 main pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
 main .vx-tab-shell>.vx-form-tabbar{flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none;overscroll-behavior-x:contain}
 main .vx-tab-shell>.vx-form-tabbar::-webkit-scrollbar{display:none}
 main .vx-tab-shell>.vx-form-tabbar>:is(a,button){flex:0 0 auto;white-space:nowrap;font-size:14px!important;min-height:46px}
 body[data-admin-workspace] #app>.layout{grid-template-columns:minmax(0,1fr);padding:0;gap:0}
 body[data-admin-workspace] #app>.layout>.sidebar{border-right:0;border-bottom:1px solid #dce5eb;max-width:100%;overflow-x:auto}
 body[data-admin-workspace] #app>.layout>main{padding:16px 12px}
 body:has(#lms-admin) .layout{grid-template-columns:minmax(0,1fr)}
 main :is(.dw-report-table,.technical-table,.sl-data-table){min-width:0!important}
 .workspace-tools{padding-left:12px!important;padding-right:12px!important}.workspace-tools nav{min-width:0;flex-wrap:wrap}
 .workspace-tools a{min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere}
}
@media screen and (max-width:430px){main .sl-assessment-progress{position:static;grid-template-columns:minmax(0,1fr)}main .sl-assessment-progress button{width:100%}main .overview-bottom li{flex-wrap:wrap}main .overview-bottom li>span:last-child{margin-left:0}main .lesson-row{align-items:stretch;flex-direction:column}}
@media screen and (max-width:760px) and (max-height:600px){main .sl-assessment-progress,main .reading-footer,main .save-footer{position:static}}
@media screen and (max-width:760px){
 main .ld-notice{font-size:14px!important;line-height:1.5!important}
 main :is(.cc-topic-label,.cc-metrics,.cc-status,.cc-meta){font-size:12px!important;line-height:1.5}
 .vx-footer .vx-footer-links a{font-size:13px!important;line-height:1.5;min-height:40px;display:inline-flex;align-items:center}
 .vx-footer small{font-size:12px!important;line-height:1.5}
 .vx-header .vx-panel :is(a,button){font-size:14px!important;line-height:1.5!important;min-height:44px;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
}
