/* v16.2.2: touch-first workspace overlays; desktop presentation is unchanged. */
@media (max-width: 900px), (hover: none) and (pointer: coarse) {
 #rax-app:has(#student-portal) {background:#071321!important;}
 #rax-app #student-portal {background:#071321!important;background-color:#071321!important;padding-top:28px!important;}
 #rax-app #student-portal::before {content:none!important;}
 #student-portal .ro-mobile-workspace-bar {border-radius:0!important;margin:0 12px 24px!important;}
 #student-portal .ro-mobile-workspace-toggle {border-radius:0!important;}
 #student-portal .ro-mobile-workspace-panel:not([hidden]) {border-radius:0!important;margin-top:-24px!important;margin-bottom:24px!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
 #student-portal .ro-mobile-workspace-panel a {border-radius:0!important;}
 /* Native dialogs must scroll inside their own viewport on iOS Safari. */
 #student-portal dialog, #ro-booking-dialog, #rax-app dialog {
   box-sizing:border-box!important;
   width:min(100% - 20px, 720px)!important;
   max-width:calc(100vw - 20px)!important;
   max-height:calc(100dvh - 24px)!important;
   overflow-x:hidden!important;
   overflow-y:auto!important;
   -webkit-overflow-scrolling:touch!important;
   overscroll-behavior:contain;
   touch-action:pan-y;
 }
 #student-portal dialog form, #student-portal dialog .ro-dialog-content,
 #student-portal dialog .rax-schedule-create, #ro-booking-dialog .ro-dialog-content {
   min-width:0!important;max-width:100%!important;
 }
 #student-portal dialog input, #student-portal dialog select,
 #student-portal dialog textarea, #ro-booking-dialog input,
 #ro-booking-dialog select, #ro-booking-dialog textarea {
   box-sizing:border-box;max-width:100%;min-width:0;
   font-size:max(16px,1em); /* Prevent Safari zoom when editing a form. */
 }
 #ro-booking-dialog {height:auto!important;}
 #ro-booking-dialog .ro-dialog-bar {position:sticky;top:0;z-index:5;}
 #rax-app .rax-slide-modal:not([hidden]), #rax-app .rax-metar-modal:not([hidden]),
 #rax-app .rax-invoice-modal:not([hidden]) {
   max-height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;
   overscroll-behavior:contain;touch-action:pan-y;
 }
 #rax-app .rax-slide-shell, #rax-app .rax-metar-modal-panel,
 #rax-app .rax-invoice-window {max-height:calc(100dvh - 16px);min-height:0;}
 #rax-app .rax-invoice-scroll, #rax-app .rax-slide-viewport {
   min-height:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
 }
}
@media(max-width:550px){
 #student-portal dialog.rax-flight-dialog{padding:14px!important;}
 #student-portal dialog .rax-flight-buttons{flex-wrap:wrap;}
}
