/* AEFO v2.8.2 — authoritative deployment and mobile shell */
:root{--aefo-sidebar:18rem;--aefo-header:73px}
html,body{width:100%;max-width:100%;min-height:100%;overflow-x:hidden}
body{display:flex!important;align-items:stretch!important;background:#f8f5f1}
#sidebar{position:relative!important;inset:auto!important;flex:0 0 var(--aefo-sidebar)!important;width:var(--aefo-sidebar)!important;max-width:var(--aefo-sidebar)!important;min-width:var(--aefo-sidebar)!important;transform:none!important;z-index:50!important}
body>main{display:block!important;flex:1 1 auto!important;width:calc(100% - var(--aefo-sidebar))!important;min-width:0!important;max-width:none!important;overflow-x:hidden!important}
body>main>header{width:100%!important;max-width:100%!important}
.view{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.view>*{max-width:100%;box-sizing:border-box}
.view .overflow-x-auto,.view [class*="overflow-x-auto"],.table-wrap,.responsive-table{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
table{max-width:none}
img,svg,canvas,video{max-width:100%;height:auto}
.mobile-menu-btn{display:none!important}
#mobileSidebarBackdrop{display:none!important}

@media(max-width:900px){
 body{display:block!important;width:100%!important;min-width:0!important}
 #sidebar{position:fixed!important;top:0!important;bottom:0!important;left:0!important;width:min(86vw,320px)!important;max-width:min(86vw,320px)!important;min-width:0!important;height:100dvh!important;transform:translateX(-105%)!important;transition:transform .22s ease!important;box-shadow:0 0 35px rgba(0,0,0,.22)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
 #sidebar.open,#sidebar.mobile-open,#sidebar.is-open,body.mobile-menu-open #sidebar{transform:translateX(0)!important}
 #mobileSidebarBackdrop{position:fixed!important;inset:0!important;background:rgba(0,0,0,.48)!important;z-index:45!important}
 #mobileSidebarBackdrop:not(.hidden),body.mobile-menu-open #mobileSidebarBackdrop{display:block!important}
 body>main{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;overflow-x:hidden!important}
 body>main>header{padding:12px 14px!important;gap:8px!important;min-height:64px}
 .mobile-menu-btn{display:inline-flex!important;flex:0 0 auto!important}
 .desktop-only{display:none!important}
 #pageTitle{font-size:1.15rem!important;line-height:1.25!important;white-space:normal!important}
 #countdown{font-size:.8rem!important;max-width:82px;line-height:1.15}
 #countdown+*{display:none!important}
 .view{padding:16px!important;width:100%!important;min-width:0!important;max-width:100%!important}
 .view .grid{min-width:0!important}
 .view [class*="grid-cols-"]{grid-template-columns:minmax(0,1fr)!important}
 .view [class*="md:grid-cols-"],.view [class*="lg:grid-cols-"]{grid-template-columns:minmax(0,1fr)!important}
 .view .flex:not(.flex-col){flex-wrap:wrap}
 .view input,.view select,.view textarea,.modal input,.modal select,.modal textarea{width:100%!important;max-width:100%!important;min-width:0!important;font-size:16px!important}
 .modal{padding:10px!important;align-items:flex-start!important;overflow-y:auto!important}
 .modal-panel,.modal>div{width:100%!important;max-width:100%!important;min-width:0!important;margin:0 auto!important;max-height:calc(100dvh - 20px)!important;overflow-y:auto!important}
 table{min-width:680px!important;font-size:.85rem!important}
 th,td{white-space:normal!important;overflow-wrap:anywhere!important}
 #amodaAuthScreen{padding:12px!important;overflow-y:auto!important;align-items:flex-start!important}
 #amodaAuthScreen>div{margin:auto 0!important;max-width:100%!important}
 #amodaLoginForm .grid{grid-template-columns:1fr!important}
}

@media(max-width:420px){
 body>main>header{padding:10px!important}
 .view{padding:12px!important}
 #globalSearchBtn,#headerNotificationBtn,#amodaLogoutBtn{padding:9px!important}
 #pageTitle{font-size:1.05rem!important}
}
