/* Portal de Servicios Compartidos - adaptación responsive 2026 */
html,body{max-width:100%;}body{overflow-x:hidden;}img{max-width:100%;height:auto;} .wrapper{min-width:0;} .content{min-width:0;} .card,.card-body{min-width:0;} .table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;} .table-responsive table{min-width:620px;} .chart-container{max-width:100%;} canvas{max-width:100%!important;} .input-group{flex-wrap:nowrap;} .input-group .form-control{min-width:0;} .dataTables_wrapper{max-width:100%;} .dataTables_wrapper .row{row-gap:12px;} .btn{white-space:normal;} 
.mobile-menu-toggle{display:none;position:fixed;top:12px;left:12px;z-index:1052;background:#003DA5;color:#fff;border:0;border-radius:10px;padding:10px 14px;box-shadow:0 3px 12px #0003;min-height:44px;min-width:48px;}
.mobile-menu-backdrop{display:none;position:fixed;inset:0;background:#0008;z-index:1048;}
@media(max-width:991.98px){
 body{overflow-x:hidden!important;} .wrapper{display:block!important;} .sidebar{position:fixed!important;top:0!important;left:0!important;width:min(290px,85vw)!important;height:100dvh!important;min-height:0!important;overflow-y:auto!important;z-index:1050!important;transform:translateX(-105%);transition:transform .25s ease;padding-top:68px!important;}
 body.mobile-menu-open .sidebar{transform:translateX(0);} body.mobile-menu-open .mobile-menu-backdrop{display:block;} .mobile-menu-toggle{display:block;} .content{margin-left:0!important;width:100%!important;max-width:100%!important;padding:72px 14px 22px!important;} .portal-header,.header{padding:18px 12px!important;} .logo{height:auto!important;max-height:70px;max-width:125px;} .portal-title{font-size:clamp(1.3rem,4vw,1.9rem);} .row>[class*="col-"]{min-width:0;} .chart-container{height:280px!important;} .pie-chart{max-width:100%;} .kpi{margin-bottom:4px;} .container-fluid{padding:14px!important;}
}
@media(max-width:767.98px){
 body:has(.card-login){height:auto!important;min-height:100dvh!important;overflow-y:auto!important;display:block!important;padding:18px 8px!important;} .card-login{width:100%!important;max-width:540px!important;margin:0 auto!important;border-radius:16px!important;} .card-login .left{padding:24px 20px!important;} .card-login .left img{width:auto!important;max-width:110px!important;margin-bottom:12px!important;} .card-login .left h2{font-size:1.35rem;} .card-login .left .fa-server,.card-login .left br{display:none;} .card-login .right{padding:26px 20px!important;} .card-login .logo2{max-width:95px!important;} .version{position:static!important;text-align:center;margin:12px auto!important;} .footer{margin-top:24px!important;} .kpi{padding:16px!important;} .content .row.g-4{--bs-gutter-y:12px;} .header .row,.portal-header .row{row-gap:12px;} .header .text-end,.portal-header .text-end{text-align:center!important;} .dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_length{text-align:left!important;} .dataTables_wrapper .dataTables_filter input{max-width:100%;} .btn{min-height:40px;} input,select,textarea{max-width:100%;} .container{max-width:100%;} 
}
@media print{.mobile-menu-toggle,.mobile-menu-backdrop{display:none!important;} .sidebar{display:none!important;} .content{margin-left:0!important;padding:0!important;}}
