/* Phase 340 : accueil et connexion dans la hauteur utile du navigateur.
   Sur petits écrans et zoom important, conserver le défilement accessible. */
@media (min-width:1001px) and (min-height:700px){
 html,body{height:100%!important}
 body:has(>main.portal),body:has(>main.cx){height:100dvh!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
 body>main.portal{flex:1 1 auto!important;min-height:0!important;max-height:calc(100dvh - 78px)!important;width:min(100%,calc((100dvh - 85px)*1536/665))!important;aspect-ratio:1536/665!important;margin:auto!important;overflow:hidden!important}
 body>main.cx{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:4px 10px!important;align-items:center!important}
 body>main.cx .cx-wrap{max-height:100%!important;margin:auto!important}
 body>main.cx .djf-auth-banner{padding-top:5px!important;padding-bottom:5px!important;margin-bottom:4px!important}
 body>main.cx .cx-card{padding:7px 10px!important}
 body>main.cx input:not([type=checkbox]){min-height:30px!important}
 body>.fret-footer{flex:0 0 auto!important;min-height:0!important;max-height:74px!important;margin:0 auto!important;padding:5px 12px!important;font-size:10px!important;line-height:1.15!important}
 body>.fret-footer .identity{gap:2px!important}
 body>.fret-footer strong{font-size:11px!important}
}
@media (min-width:1001px) and (min-height:700px) and (max-height:790px){
 body>main.portal{width:min(100%,calc((100dvh - 90px)*1536/665))!important;max-height:calc(100dvh - 84px)!important}
 body>.fret-footer{max-height:78px!important}
}
@media (max-width:1000px),(max-height:699px){
 body:has(>main.portal),body:has(>main.cx){overflow-y:auto!important;height:auto!important;min-height:100dvh!important}
 body>main.portal,body>main.cx{max-height:none!important;overflow:visible!important}
 body>.fret-footer{max-height:none!important}
}
