/* r22zoom · Anh Long t126: xem được ở zoom 100% · không scale toàn trang
   - Không transform/scale/zoom toàn cục; giữ pinch-zoom (viewport không maximum-scale)
   - Chặn tràn ngang cấp trang; bảng rộng chỉ cuộn trong khung
   - iPhone: input/select/textarea ≥16px (tránh Safari tự zoom khi focus)
   - Safe-area; mobile full width; nút/chữ đọc được */
html{width:100%;max-width:100%;overflow-x:clip}
body{width:100%;max-width:100%;overflow-x:clip;min-height:100dvh;min-height:100vh}
#app{width:100%;max-width:100%;overflow-x:clip;overflow-y:visible;box-sizing:border-box}
#app.D .dmain{max-width:100%;min-width:0;overflow-x:clip;padding-right:max(16px,env(safe-area-inset-right));padding-left:0}
#app.D .dnav{padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}

/* Mobile: full width (bỏ khung 560px “thiết kế” khiến cảm giác bị thu/zoom) */
#app.M{max-width:100%!important;width:100%!important;margin:0!important;
  padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);
  padding-bottom:calc(96px + env(safe-area-inset-bottom))}
#app.M .mscr{width:100%;max-width:100%;min-width:0;overflow-x:clip}
#app.M .mbar,#app.M .hd,#app.M .gtabs{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
#app.M .sheet{left:0;right:0;width:100%!important;max-width:100%!important;margin:0!important;
  padding-bottom:max(18px,env(safe-area-inset-bottom));box-sizing:border-box}
#app.M .tb{width:min(370px,calc(100% - 24px - env(safe-area-inset-left) - env(safe-area-inset-right)));
  bottom:calc(12px + env(safe-area-inset-bottom))}
#app.M .modal{width:min(520px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important;box-sizing:border-box}

/* iOS Safari: không tự zoom khi focus ô nhập */
@media (max-width:1099.98px){
  #app input.inp,#app select.inp,#app textarea.inp,#app textarea,
  #app input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]),
  #app select{font-size:16px!important;line-height:1.25}
  #app .btn{font-size:15px;white-space:normal;line-height:1.25;height:auto;min-height:48px;padding:12px 14px;text-align:center}
  #app .btn.gl2,#app .btn.pri{word-break:break-word}
  #app .dh .t{font-size:clamp(20px,6vw,26px)}
  #app .oanav>div,#app .gtabs .oanav>div{white-space:nowrap}
}

/* Bảng: không ép nowrap toàn trang → chỉ cuộn ngang trong khung */
#app .tblscroll,#app .bkscroll,#app .ptn-scroll{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
#app.D .tbl th{white-space:nowrap}
#app.D .tbl td{white-space:normal}
#app.D .tbl td .nw,#app.D .tbl .mono{white-space:nowrap}
#app.D .tbl.bkhn{min-width:min(720px,100%)}

/* Phòng trong ngày: xếp chồng khi hẹp thay vì ép 360px cạnh */
#app.D .ptn-split{display:flex;gap:14px;align-items:flex-start;min-width:0}
#app.D .ptn-main{flex:1 1 0;min-width:0}
#app.D .ptn-side{flex:0 1 360px;min-width:0;max-width:100%}
@media (max-width:1280px){
  #app.D .ptn-split{flex-direction:column}
  #app.D .ptn-side{flex:1 1 auto;width:100%;max-width:100%}
}
/* Quỹ HV 2 cột: cho phép cuộn ngang cục bộ, không kéo rộng trang */
#app .ql-table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
#app.M .ql-table-wrap .tbl{min-width:0}

/* Chặn mọi scale “preview frame” còn sót */
#app,#app.D,#app.M,.mscr,.dmain{transform:none!important;zoom:normal!important}
