/* Shared responsive layer; desktop rules remain in the existing theme. */
.ats-mobile-backdrop,.ats-mobile-close{display:none}
.ats-scroll-region{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:991px){
  html{ -webkit-text-size-adjust:100%;text-size-adjust:100% }
  body{margin:0}
  #main_content,.page,.section-body,.container-fluid,.card,.card-body,.tab-content,.tab-pane{min-width:0;box-sizing:border-box}
  body .page{margin-left:0!important;left:0!important;width:100%!important;max-width:100%}
  body #left-sidebar.sidebar{position:fixed!important;top:0!important;bottom:0;left:0!important;width:min(300px,85vw)!important;height:100dvh;max-height:100%;overflow-y:auto;transform:translateX(-105%);visibility:hidden;z-index:1041;background:#fff;transition:transform .18s ease; padding-top:50px}
  body.ats-mobile-menu-open #left-sidebar.sidebar{transform:translateX(0);visibility:visible}
  body.ats-mobile-menu-open{overflow:hidden}
  #left-sidebar-nav .metismenu li a span,#left-sidebar.sidebar > a img{display:inline!important}
  #left-sidebar-nav .metismenu li a{min-height:44px}
  .ats-mobile-close{display:block;position:absolute;right:12px;top:8px;width:40px;height:40px;border:0;background:#eef4fb;border-radius:8px;font-size:24px}
  .ats-mobile-menu-open .ats-mobile-backdrop{display:block;position:fixed;inset:0;background:rgba(20,35,55,.45);z-index:1040;border:0}
  #page_top{position:sticky;top:0;z-index:1030;margin:0!important;padding:6px 0!important}
  #page_top .container-fluid{padding:0 10px}
  #page_top .page-header{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0;gap:8px;flex-wrap:nowrap}
  #page_top .left,#page_top .right{display:flex;align-items:center;gap:6px;min-width:0;margin:0}
  #page_top .menu_toggle{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:44px;margin:0!important}
  #page_top .btn{font-size:13px;padding:8px 10px;min-height:40px;white-space:normal}
  #page_top .right .nav-link{display:flex!important;align-items:center;justify-content:center;min-width:40px;min-height:40px;margin:0!important}
  #page_top .dropdown-menu{position:absolute;right:0;left:auto;max-width:calc(100vw - 20px)}
  .section-body{padding-left:0!important;padding-right:0!important}
  .container-fluid{padding-left:12px;padding-right:12px;max-width:100%}
  .row{margin-left:-6px;margin-right:-6px}
  .row > [class*="col-"]{min-width:0;padding-left:6px;padding-right:6px}
  .task_form .row > [class*="col-lg-"],.modal .row > [class*="col-lg-"]{flex:0 0 100%;max-width:100%;width:100%}
  .task_form .width180{width:100%!important;max-width:100%!important}
  .card-body,.card-header,.p1c-card{padding:12px!important}
  .card-header,.p1c-header,.p1c-header-right,.ats-dash-card-title{flex-wrap:wrap;gap:8px}
  .p1c-body{grid-template-columns:minmax(0,1fr)}
  .p1c-fields,.p1c-main,.p1c-field-value{min-width:0}
  .p1c-field-value,.p1c-title{overflow-wrap:anywhere}
  .ats-dash-grid,.ats-dash-grid-2{grid-template-columns:minmax(0,1fr)}
  .ats-dash-grid > *,.ats-kpis > *{min-width:0}
  .ats-dash-wide{grid-column:auto}
  .ats-dash-tablewrap,.table-responsive,.gantt-timeline-wrap,.kanban-board-real{max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .gantt-flat,.gantt-project-card{min-width:0;max-width:100%;overflow-x:auto}
  .kanban-toolbar{flex-wrap:wrap;gap:8px}
  .kanban-filter{max-width:100%;min-width:0}
  .modal-dialog{width:auto!important;max-width:calc(100% - 16px)!important;margin:8px auto!important}
  .modal-content{max-height:calc(100dvh - 16px);overflow-y:auto}
  .modal-body{padding:12px}
  .modal-footer{flex-wrap:wrap;gap:6px}
  .form-control,select.form-select,.select2-container{max-width:100%!important;min-width:0}
  input.form-control,select.form-control,textarea.form-control,.select2-search__field{font-size:16px!important}
  input.form-control,select.form-control,select.form-select{min-height:44px}
  .select2-container{width:100%!important}
  .select2-selection{min-height:44px!important;height:auto!important}
  .select2-selection__rendered,.select2-selection__choice{white-space:normal!important;overflow-wrap:anywhere;max-width:100%}
  .select2-dropdown{max-width:calc(100vw - 24px)}
  .datepicker-container{max-width:100%;width:100%!important}
  .note-editor,.note-editable{max-width:100%;min-width:0}
  .note-editable{overflow-wrap:anywhere}
  .note-editable img,.card-body img{max-width:100%;height:auto}
  .fc-toolbar .fc-left,.fc-toolbar .fc-right,.fc-toolbar .fc-center{float:none;display:block;margin-bottom:8px}
  .fc-toolbar h2{font-size:18px}
}
@media(max-width:767px){
  .vkladki .nav,.page-header-tab,.ats-dash-tabs{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;gap:4px;overflow-x:auto;max-width:100%;padding:4px 0;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .vkladki .nav-item,.page-header-tab .nav-item,.ats-dash-tab{flex:0 0 auto!important;margin:0!important}
  .vkladki .nav-link,.page-header-tab .nav-link,.ats-dash-tab{font-size:13px!important;white-space:nowrap;padding:10px!important;min-height:42px}
  .vkladki{margin:4px 0!important;padding:0!important}
  .search-container{display:flex;flex-wrap:wrap;gap:8px;margin:8px 12px!important;max-width:calc(100% - 24px);width:auto!important;box-sizing:border-box}
  .search-container .search-bar{flex:1 1 180px;width:100%!important;max-width:100%!important;margin:0!important;min-height:44px;padding-right:32px!important}
  .project-folder-switch{margin:0!important;min-height:40px}
  .project-browser{flex-direction:column!important}
  .project-folders{flex:auto!important;max-width:100%!important;max-height:220px}
  .table_custom{font-size:13px}
  .table_custom th,.table_custom td{padding:10px 8px}
  .todo_list:has(.task_mobile) table,.todo_list:has(.task_mobile) tbody{display:block;width:100%;min-width:0!important}
  .todo_list:has(.task_mobile) thead{display:none}
  .todo_list:has(.task_mobile) tr{display:block;width:100%}
  .todo_list:has(.task_mobile) tr:has(.task_mobile) > td:not(.task_mobile){display:none!important}
  .todo_list .task_mobile{display:block!important;width:100%!important;box-sizing:border-box;white-space:normal!important;padding:12px!important}
  .task_mobile .task-details{display:flex!important;align-items:flex-start;flex-wrap:wrap;gap:8px;justify-content:space-between}
  .task_mobile .task-details small{font-size:12px!important;line-height:1.5;flex:1 1 150px}
  .task_mobile .status-form{position:static!important;margin:0;max-width:100%}
  .task_mobile .status-select{position:static!important;min-height:40px;max-width:100%;font-size:14px!important;margin:0}
  .task_mobile > span{display:block;font-size:16px!important;line-height:1.45;overflow-wrap:anywhere}
  #users tr{display:flex;flex-wrap:wrap;border-bottom:1px solid #e4ebf3;padding:8px}
  #users td.department_mob{display:block!important;width:100%!important;white-space:normal;overflow-wrap:anywhere;padding:5px}
  .ats-project-row{min-width:0;flex-wrap:wrap}
  .ats-dash-card,.ats-dash-tablecard{padding:12px}
  .ats-mini-kanban,.ats-mini-kanban-wide{grid-template-columns:minmax(0,1fr)}
  #ats-employee-projects form{padding:8px 0!important}
  #ats-employee-projects input[type=search]{max-width:none!important;flex:1 1 100%}
  #addSubtaskForm > .row{grid-template-columns:minmax(0,1fr)}
  .task_form .card-header > .d-flex{flex-wrap:wrap;min-width:0}
  .ats-page-title,.p1c-title{font-size:20px;line-height:1.35}
}
@media(prefers-reduced-motion:reduce){#left-sidebar.sidebar{transition:none!important}}
