/* MorFM global responsive safety layer — mobile/tablet friendly without changing desktop compositions. */
:root{
  --morfm-safe-top:env(safe-area-inset-top,0px);
  --morfm-safe-right:env(safe-area-inset-right,0px);
  --morfm-safe-bottom:env(safe-area-inset-bottom,0px);
  --morfm-safe-left:env(safe-area-inset-left,0px);
  --morfm-visual-viewport-height:100dvh;
}
html{width:100%;min-width:320px;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{width:100%;min-width:0;max-width:100%;overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
img,video,canvas,svg,iframe{max-width:100%}
.morfm-app-layout,.morfm-main-content{min-width:0;max-width:100%}
.morfm-main-content{overflow-wrap:anywhere}
.morfm-main-content table{max-width:100%}
.morfm-main-content .table-responsive,.morfm-main-content .table-wrapper,.morfm-main-content .dj-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
[role="dialog"],.morfm-modal,.quick-guest-modal-card{max-height:calc(var(--morfm-visual-viewport-height) - 24px - var(--morfm-safe-top) - var(--morfm-safe-bottom));overflow:auto}

@media(max-width:900px){
  body{padding-left:var(--morfm-safe-left);padding-right:var(--morfm-safe-right)}
  .morfm-header-container{padding-left:max(10px,var(--morfm-safe-left))!important;padding-right:max(10px,var(--morfm-safe-right))!important}
  .morfm-main-content{padding-left:max(10px,var(--morfm-safe-left));padding-right:max(10px,var(--morfm-safe-right))}
  .morfm-logo{margin-left:0!important;min-width:0!important}
  .morfm-header-tools{min-width:0;max-width:58vw}
  .morfm-user-menu{min-width:0}
  .morfm-nav{scroll-snap-type:x proximity;overscroll-behavior-inline:contain}
  .morfm-nav a{scroll-snap-align:start}
}

@media(max-width:640px){
  .morfm-header-container{min-height:66px!important;padding-top:max(8px,var(--morfm-safe-top))!important}
  .morfm-logo .logo-text{font-size:19px!important}
  .morfm-logo-tagline{display:none!important}
  .morfm-header-tools{gap:5px!important;max-width:64vw}
  .morfm-navbar-notifications{width:36px!important;height:36px!important;flex-basis:36px!important}
  .morfm-navbar-profile{min-width:38px!important;min-height:38px!important;padding:0 5px!important}
  .morfm-navbar-logout{min-width:38px!important;min-height:38px!important;padding:0 9px!important}
  .morfm-nav{padding-bottom:3px!important}
  .morfm-main-content{padding-top:14px;padding-bottom:calc(24px + var(--morfm-safe-bottom))}
  input,select,textarea{font-size:16px}
}

@media (pointer: coarse){
  button,a,input[type="button"],input[type="submit"],input[type="reset"],[role="button"]{min-height:44px}
  button,a,[role="button"]{touch-action:manipulation}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
