/* RETAC single-container mobile/tablet horizontal scrolling fix */
html,body{max-width:100%;overflow-x:visible!important}
.content,.wrap,.main,.card{min-width:0;max-width:100%}
.content{overflow-x:hidden!important;touch-action:auto;overscroll-behavior-x:auto!important}
.table-wrap,.retac-table-wrap,.retac-scroll-x{display:block;width:100%;max-width:100%;overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch;touch-action:auto!important;overscroll-behavior-x:auto;scroll-behavior:auto}
.table-wrap table,.retac-table-wrap table,.retac-scroll-x table{display:table!important;overflow:visible!important;max-width:none!important;touch-action:auto!important}
@media(max-width:900px){
 table{display:table!important;overflow:visible!important;touch-action:auto!important;scroll-behavior:auto!important}
 .table-wrap table,.retac-table-wrap table,.retac-scroll-x table{width:max-content!important;min-width:100%!important}
 .table-wrap th,.table-wrap td,.retac-table-wrap th,.retac-table-wrap td,.retac-scroll-x th,.retac-scroll-x td{padding:4px 5px!important;font-size:10.5px!important;line-height:1.2}
 .table-wrap td,.retac-table-wrap td,.retac-scroll-x td{white-space:nowrap}
 .table-wrap td.name,.retac-table-wrap td.name,.retac-scroll-x td.name{white-space:normal!important;min-width:120px}
}

/* RETAC FULL SYSTEM RESPONSIVE LAYER — 2026-09-26 */
html{box-sizing:border-box;max-width:100%;overflow-x:hidden}
*,*::before,*::after{box-sizing:inherit}
body{max-width:100%;overflow-x:hidden}
img,video,canvas,svg{max-width:100%;height:auto}
iframe{max-width:100%}
.content,.main,.main-content,.page-content,.container,.container-fluid,.wrapper,.page-wrapper,.dashboard,.dashboard-content{min-width:0!important;max-width:100%!important}
.row,.grid,[class*="grid"],[class*="columns"]{min-width:0}
.card,.panel,.box,.widget,.form-card,.report-card,.info-card,.notice-card,.modal-content{max-width:100%!important;min-width:0!important}
input,select,textarea,button,.btn{max-width:100%}
input,select,textarea{min-width:0}
pre,code{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
.retac-table-wrap,.table-responsive,.responsive-table,.table-wrap{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-x:auto!important;touch-action:auto!important}
.retac-table-wrap table,.table-responsive table,.responsive-table table,.table-wrap table{display:table!important;width:max-content;min-width:100%;max-width:none}
table{border-collapse:collapse}
@media(max-width:900px){
  body{font-size:15px}
  .content,.main,.main-content,.page-content,.wrapper,.page-wrapper{width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:12px!important;padding-right:12px!important}
  .container,.container-fluid{width:100%!important;max-width:100%!important;padding-left:12px!important;padding-right:12px!important}
  .row,.form-row,.filters,.filter-row,.toolbar,.actions,.button-row,.controls,.search-row{max-width:100%!important;gap:8px!important}
  .row>*{min-width:0}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{width:100%;font-size:16px!important}
  .modal-dialog{width:auto!important;max-width:calc(100vw - 24px)!important;margin:12px!important}
  .modal-content{width:100%!important}
  .card,.panel,.box,.widget,.form-card,.report-card,.info-card,.notice-card{width:100%!important}
  table th,table td{padding:6px 7px!important;font-size:12px!important;line-height:1.25!important}
  .btn,button,input[type="submit"],input[type="button"]{min-height:38px;white-space:normal}
  h1{font-size:clamp(1.35rem,5vw,1.8rem)!important} h2{font-size:clamp(1.2rem,4.5vw,1.55rem)!important} h3{font-size:clamp(1.05rem,4vw,1.3rem)!important}
}
@media(max-width:600px){
  .content,.main,.main-content,.page-content,.wrapper,.page-wrapper,.container,.container-fluid{padding-left:8px!important;padding-right:8px!important}
  .toolbar,.actions,.button-row,.controls,.filters,.filter-row,.search-row{flex-wrap:wrap!important}
  .toolbar>*,.filters>*,.filter-row>*,.search-row>*{min-width:0!important;max-width:100%!important}
  .card,.panel,.box,.widget{border-radius:8px!important}
  table th,table td{padding:5px 6px!important;font-size:11.5px!important}
}

/* RETAC 2026-10-03: full-system phone table pan + pinch zoom */
.retac-mobile-table-scroll{
  display:block!important;width:100%!important;max-width:100vw!important;
  overflow-x:auto!important;overflow-y:visible!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-x pan-y pinch-zoom!important;
  overscroll-behavior-x:contain!important;
  scrollbar-width:auto!important;
}
.retac-mobile-table-scroll>table{
  display:table!important;width:max-content!important;min-width:100%!important;
  max-width:none!important;table-layout:auto!important;
  touch-action:pan-x pan-y pinch-zoom!important;
}
@media(max-width:900px){
 .retac-mobile-table-scroll{margin-left:0!important;margin-right:0!important}
 .retac-mobile-table-scroll th,.retac-mobile-table-scroll td{white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important}
}
@media print{.retac-mobile-table-scroll{overflow:visible!important;max-width:none!important}.retac-mobile-table-scroll>table{width:100%!important}}

/* Global horizontal table scrolling: keep all columns accessible on phones */
.retac-global-scroll{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom!important;overscroll-behavior-x:contain;position:relative;}
.retac-global-scroll>table{min-width:100%!important;width:max-content!important;max-width:none!important;table-layout:auto!important;}
@media(max-width:900px){.retac-global-scroll th,.retac-global-scroll td{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;} .retac-global-scroll{scrollbar-width:auto!important;}}
@media print{.retac-global-scroll{overflow:visible!important;max-width:none!important}.retac-global-scroll>table{width:100%!important;min-width:0!important;}}
