/* 8.19.8-p16.8 — final mobile width governor: exact phone width, zero page-level horizontal pan */
@media (max-width: 900px){
  html,body{
    width:100%!important;max-width:100%!important;min-width:0!important;
    margin:0!important;padding-left:0!important;padding-right:0!important;
    overflow-x:hidden!important;
  }
  body.acmnp40-standalone-body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}

  /* Admin/control portal */
  .acmnp40-front-shell,
  .acmnp40-front-shell .acmnp40-portal-layout,
  .acmnp40-front-shell .acmnp40-front-main,
  .acmnp40-front-shell .acmnp40-page-view,
  .acmnp40-front-shell .acmnp40-front-panel,
  .acmnp40-front-shell .acmnp40-page-heading,
  .acmnp40-front-shell .acmnp40-p1-topbar,
  .acmnp40-front-shell .acmnp40-p1-page-head,
  .acmnp40-front-shell .acmnp40-meeting-center-toolbar,
  .acmnp40-front-shell .acmnp40-meeting-filters,
  .acmnp40-front-shell .meeting-center-kpis,
  .acmnp40-front-shell .acmnp40-meeting-kpis{
    box-sizing:border-box!important;
    width:100%!important;max-width:100%!important;min-width:0!important;
    margin-left:0!important;margin-right:0!important;
  }
  .acmnp40-front-shell{padding-left:8px!important;padding-right:8px!important;overflow-x:hidden!important}
  .acmnp40-front-shell .acmnp40-portal-layout{display:block!important;overflow-x:hidden!important}
  .acmnp40-front-shell .acmnp40-front-main{overflow-x:hidden!important}
  .acmnp40-front-shell .acmnp40-front-sidebar{max-width:86vw!important}
  .acmnp40-front-shell .acmnp40-p1-topbar{
    display:grid!important;grid-template-columns:40px minmax(0,1fr) auto!important;
    gap:7px!important;padding:8px!important;min-height:60px!important;
  }
  .acmnp40-front-shell .acmnp40-p1-mobile-menu{grid-column:1!important;width:38px!important;height:38px!important;min-width:38px!important}
  .acmnp40-front-shell .acmnp40-p1-brand{grid-column:2!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}
  .acmnp40-front-shell .acmnp40-p1-brand>div{min-width:0!important;max-width:100%!important;overflow:hidden!important}
  .acmnp40-front-shell .acmnp40-p1-brand h1{font-size:14px!important;white-space:normal!important;line-height:1.4!important;overflow-wrap:anywhere!important}
  .acmnp40-front-shell .acmnp40-p1-brand p,.acmnp40-front-shell .acmnp40-p1-brand small{display:none!important}
  .acmnp40-front-shell .acmnp40-p1-userbar{grid-column:3!important;display:flex!important;gap:4px!important;min-width:0!important;max-width:86px!important}
  .acmnp40-front-shell .acmnp40-p1-user{display:none!important}
  .acmnp40-front-shell .acmnp40-p1-icon-btn{width:36px!important;height:36px!important;min-width:36px!important;max-width:36px!important}

  .acmnp40-front-shell .meeting-center-kpis,
  .acmnp40-front-shell .acmnp40-meeting-kpis{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;
  }
  .acmnp40-front-shell .meeting-center-kpis>* ,
  .acmnp40-front-shell .acmnp40-meeting-kpis>*{
    min-width:0!important;width:100%!important;max-width:100%!important;
  }
  .acmnp40-front-shell .acmnp40-page-heading h2{font-size:20px!important;line-height:1.35!important}
  .acmnp40-front-shell .acmnp40-page-heading p{font-size:11px!important;line-height:1.6!important;overflow-wrap:anywhere!important}

  /* Meeting table becomes real cards; desktop min-width must never survive on phone. */
  .acmnp40-front-shell .acmnp40-table-scroll,
  .acmnp40-front-shell .acmnp40-front-table-wrap{
    width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;
  }
  .acmnp40-front-shell table.acmnp40-meeting-table,
  .acmnp40-front-shell .acmnp40-meeting-table{
    min-width:0!important;width:100%!important;max-width:100%!important;display:block!important;table-layout:auto!important;
  }
  .acmnp40-front-shell .acmnp40-meeting-table thead{display:none!important}
  .acmnp40-front-shell .acmnp40-meeting-table tbody{display:block!important;width:100%!important;max-width:100%!important}
  .acmnp40-front-shell .acmnp40-meeting-table tbody tr{
    display:grid!important;grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;min-width:0!important;
    gap:6px!important;margin:0 0 9px!important;padding:10px!important;box-sizing:border-box!important;
  }
  .acmnp40-front-shell .acmnp40-meeting-table tbody td{
    display:block!important;grid-column:1!important;width:100%!important;max-width:100%!important;min-width:0!important;
    padding:2px 0!important;border:0!important;box-sizing:border-box!important;overflow-wrap:anywhere!important;white-space:normal!important;
  }

  /* Other large tables may scroll internally, never widen the page. */
  .acmnp40-front-shell .acmnp40-table-scroll:has(table:not(.acmnp40-meeting-table)),
  .acmnp40-front-shell .acmnp40-front-table-wrap:has(table:not(.acmnp40-meeting-table)){
    overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;
  }

  /* Association dashboard */
  .acmnp40-ad,
  .acmnp40-ad .acmnp40-ad-main,
  .acmnp40-ad .acmnp40-ad-top,
  .acmnp40-ad .acmnp40-ad-page,
  .acmnp40-ad .acmnp40-ad-hero,
  .acmnp40-ad .acmnp40-ad-kpis,
  .acmnp40-ad .acmnp40-premium-kpis,
  .acmnp40-ad .acmnp40-premium-grid,
  .acmnp40-ad .acmnp40-stage-track-card{
    box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;
  }
  .acmnp40-ad{display:block!important;overflow-x:hidden!important}
  .acmnp40-ad .acmnp40-ad-main{margin:0!important;padding-left:8px!important;padding-right:8px!important;overflow-x:hidden!important}
  .acmnp40-ad .acmnp40-ad-kpis,.acmnp40-ad .acmnp40-premium-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .acmnp40-ad .acmnp40-ad-kpis>* , .acmnp40-ad .acmnp40-premium-kpis>*{min-width:0!important;max-width:100%!important;width:100%!important}
  .acmnp40-ad .acmnp40-stage-track{max-width:100%!important;overflow-x:auto!important;overscroll-behavior-inline:contain}
  .acmnp40-ad .acmnp40-ad-table-wrap{max-width:100%!important;overflow-x:auto!important}

  /* Consultant dashboard */
  .acmnp40-consultant-app,
  .acmnp40-consultant-app .acmnp40-consultant-main,
  .acmnp40-consultant-app .acmnp40-consultant-topbar,
  .acmnp40-consultant-app [class*="consultant-"]{
    box-sizing:border-box!important;max-width:100%!important;min-width:0!important;
  }
  .acmnp40-consultant-app{width:100%!important;overflow-x:hidden!important}
  .acmnp40-consultant-app .acmnp40-consultant-main{width:100%!important;margin:0!important;padding-left:8px!important;padding-right:8px!important;overflow-x:hidden!important}

  /* Booking modal and every form field: exact phone width */
  #acmnp40-meeting-book-modal,
  #acmnp40-meeting-book-modal .acmnp40-front-modal,
  #acmnp40-meeting-book-modal .acmnp40-front-form-grid,
  #acmnp40-meeting-book-modal footer{
    box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;
  }
  #acmnp40-meeting-book-modal{overflow-x:hidden!important}
  #acmnp40-meeting-book-modal .meeting-workshop-choice,
  #acmnp40-meeting-book-modal .meeting-slot,
  #acmnp40-meeting-book-modal input,
  #acmnp40-meeting-book-modal select,
  #acmnp40-meeting-book-modal textarea{
    box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
  }

  /* Generic overflow safety without touching Gantt's own horizontal scroller. */
  .acmnp40-front-shell :where(section,article,header,footer,main,nav,form,fieldset,div),
  .acmnp40-ad :where(section,article,header,footer,main,nav,form,fieldset,div),
  .acmnp40-consultant-app :where(section,article,header,footer,main,nav,form,fieldset,div){min-width:0;max-width:100%}
  .acmnp40-front-shell img,.acmnp40-ad img,.acmnp40-consultant-app img{max-width:100%!important;height:auto!important}
}

@media (max-width: 430px){
  .acmnp40-front-shell .meeting-center-kpis,
  .acmnp40-front-shell .acmnp40-meeting-kpis,
  .acmnp40-ad .acmnp40-ad-kpis,
  .acmnp40-ad .acmnp40-premium-kpis{gap:6px!important}
  .acmnp40-front-shell .meeting-kpi,
  .acmnp40-front-shell .meeting-center-kpis article,
  .acmnp40-ad .acmnp40-ad-kpis article,
  .acmnp40-ad .acmnp40-premium-kpis article{padding:9px!important;min-height:76px!important}
}


/* 8.19.8-p16.8 — zero horizontal page movement + working mobile drawer */
@media (max-width:900px){
  html,body{
    width:100%!important;max-width:100%!important;min-width:0!important;
    overflow-x:hidden!important;overscroll-behavior-x:none!important;
  }
  body{touch-action:pan-y!important;position:relative!important}
  .acmnp40-front-shell{
    width:100%!important;max-width:100vw!important;min-width:0!important;
    margin:0!important;padding-left:6px!important;padding-right:6px!important;
    box-sizing:border-box!important;overflow-x:hidden!important;contain:inline-size!important;
    touch-action:pan-y!important;
  }
  .acmnp40-front-shell .acmnp40-p1-topbar{
    width:auto!important;max-width:none!important;min-width:0!important;
    margin-left:-6px!important;margin-right:-6px!important;
    padding-left:10px!important;padding-right:10px!important;
    box-sizing:border-box!important;overflow:visible!important;
  }
  .acmnp40-front-shell .acmnp40-p1-userbar,
  .acmnp40-front-shell .acmnp40-p1-notification-wrap,
  .acmnp40-front-shell .acmnp40-p1-brand,
  .acmnp40-front-shell .acmnp40-p1-brand>div{min-width:0!important}
  .acmnp40-front-shell .acmnp40-p1-icon-btn>span{left:0!important;top:-4px!important}
  .acmnp40-front-shell .acmnp40-front-main,
  .acmnp40-front-shell .acmnp40-page-view,
  .acmnp40-front-shell .acmnp40-front-panel,
  .acmnp40-front-shell .acmnp40-page-heading,
  .acmnp40-front-shell .acmnp40-meeting-kpis,
  .acmnp40-front-shell .meeting-center-kpis{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  }
  .acmnp40-front-shell .acmnp40-front-sidebar{
    display:block!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;
    width:min(310px,86vw)!important;max-width:86vw!important;height:100dvh!important;max-height:100dvh!important;
    transform:translateX(110%)!important;transition:transform .22s ease!important;z-index:10050!important;
    overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;
  }
  .acmnp40-front-shell .acmnp40-front-sidebar.is-open{transform:translateX(0)!important}
  .acmnp40-front-shell .acmnp40-p1-sidebar-backdrop:not([hidden]){
    display:block!important;position:fixed!important;inset:0!important;z-index:10049!important;
    background:rgba(8,30,37,.55)!important;
  }
  .acmnp40-gantt-scroll,.acmnp40-ad .acmnp40-stage-track{touch-action:pan-x pan-y!important;overscroll-behavior-inline:contain!important}
}

/* 8.24.4 — إصلاح حاسم لصفحة الخطة بالجوال: الملف الأخير تحميلًا */
@media (max-width:720px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  .acmnp40-p2-page,.acmnp40-p2-page *{box-sizing:border-box!important}
  .acmnp40-p2-page,.acmnp40-p2-panel,.acmnp40-p2-schedule-panel,.acmnp40-p2-table-wrap{
    width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important
  }
  .acmnp40-p2-table{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .acmnp40-p2-table thead{display:none!important}
  .acmnp40-p2-table tbody{display:grid!important;gap:12px!important;width:100%!important;max-width:100%!important}
  .acmnp40-p2-table tr{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
    margin:0!important;background:#fbfdff!important;border:1px solid #d8e5ef!important;
    border-right:4px solid #126ca6!important;border-radius:14px!important;overflow:hidden!important
  }
  .acmnp40-p2-table td{
    display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;gap:8px!important;
    width:100%!important;max-width:100%!important;min-width:0!important;padding:10px 12px!important;
    border:0!important;border-bottom:1px solid #e5edf4!important;text-align:right!important;
    white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere!important;word-break:break-word!important
  }
  .acmnp40-p2-table td:last-child{border-bottom:0!important}
  .acmnp40-p2-table td:before{content:attr(data-label)!important;font-size:11px!important;font-weight:800!important;color:#72869a!important}
  .acmnp40-p2-table td>*{max-width:100%!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .acmnp40-p2-table select,.acmnp40-p2-table input,.acmnp40-p2-table button{max-width:100%!important}
  .acmnp40-p2-progress-inline{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
  .acmnp40-p2-governor-phase{
    display:grid!important;grid-template-columns:46px minmax(0,1fr)!important;gap:8px 10px!important;
    width:100%!important;max-width:100%!important;min-width:0!important;padding:14px!important
  }
  .acmnp40-p2-governor-phase>b{grid-column:1!important;grid-row:1/5!important}
  .acmnp40-p2-governor-phase>div{grid-column:2!important;min-width:0!important}
  .acmnp40-p2-governor-phase>div strong,.acmnp40-p2-governor-phase>div small{
    display:block!important;white-space:normal!important;overflow-wrap:anywhere!important
  }
  .acmnp40-p2-governor-phase>.acmnp40-p2-metric,
  .acmnp40-p2-governor-phase>span{
    grid-column:2!important;justify-self:start!important;display:inline-flex!important;align-items:center!important;
    gap:6px!important;white-space:normal!important;max-width:100%!important
  }
  .acmnp40-p2-governor-phase>em{grid-column:2!important;justify-self:start!important;max-width:100%!important;white-space:normal!important}
}
.acmnp40-p2-status[data-status="blocked_dependency"],
[data-status="blocked_dependency"].acmnp40-p2-status{
  background:#fff4df!important;color:#895500!important;border:1px solid #f0d39b!important;
  white-space:normal!important;line-height:1.5!important;text-align:center!important
}
