/* =========================================================
   FAKHIRA NETWORK BILLING V377
   Global interface scale: 90% — responsive viewport fix

   Perbaikan dari V376:
   - Tidak lagi memperlebar kanvas menjadi 111.111%.
   - Lebar halaman selalu mengikuti viewport sehingga sisi kanan
     tidak terpotong dan tidak memunculkan overflow horizontal.
   - Sidebar tinggi penuh tetap memenuhi layar setelah diskalakan.
   ========================================================= */

:root{
  --fns-global-ui-scale:.90;
  --fns-global-ui-inverse:1.1111111111;
}

/* Chromium/Chrome/Edge: zoom memperkecil layout sambil memberi
   ruang layout tambahan secara otomatis. Jangan set width 111%. */
@supports (zoom:1){
  html{
    zoom:var(--fns-global-ui-scale)!important;
    background-color:var(--bg,#071326);
  }

  body{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    min-height:111.111111vh!important;
  }

  /* Kompensasi elemen shell yang sebelumnya menggunakan 100vh.
     Setelah zoom 90%, 111.111vh tampil tepat setinggi viewport. */
  body.app-shell:not(.portal-customer-shell):not(.portal-staff-shell) > .sidebar,
  body.app-shell.sidebar-collapsed:not(.portal-customer-shell):not(.portal-staff-shell) > .sidebar,
  body.app-shell:not(.sidebar-collapsed):not(.portal-customer-shell):not(.portal-staff-shell) > .sidebar{
    height:111.111111vh!important;
    min-height:111.111111vh!important;
    max-height:111.111111vh!important;
  }
}

/* Firefox/fallback: transform membutuhkan kanvas invers 111.111%,
   namun hasil visual tetap tepat selebar viewport. */
@supports not (zoom:1){
  html{
    width:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    background-color:var(--bg,#071326);
  }

  body{
    transform:scale(var(--fns-global-ui-scale));
    transform-origin:top left;
    width:111.111111%!important;
    min-width:111.111111%!important;
    min-height:111.111111vh!important;
  }
}

/* Perlindungan akhir agar modul lebar tidak membuat halaman keluar
   dari viewport. Tabel tetap dapat digulir di wadahnya sendiri. */
html,body{
  overflow-x:hidden!important;
}

.table-wrap,
.table-responsive,
.data-table-wrap,
[style*="overflow-x:auto"],
[style*="overflow-x: auto"]{
  max-width:100%!important;
}

/* Cetak invoice/dokumen harus tetap ukuran asli 100%. */
@media print{
  html{
    zoom:1!important;
    width:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    overflow:visible!important;
  }

  body{
    transform:none!important;
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
    min-height:auto!important;
    overflow:visible!important;
  }
}
