/* IMPULSO POS USC 2.2.1 — ajustes visuales aditivos sobre v2.2 */
body.usc-has-session{font-size:15px}
.usc-nav-link{font-size:14px;min-height:46px;gap:12px}
.usc-nav-group{font-size:11px}
.usc-main{max-width:1700px}
.usc-main .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.usc-main .stat{margin:0;min-width:0;padding:21px;border-radius:16px}
.usc-main .stat strong{font-size:30px;line-height:1.2;color:#7a0026}
.usc-main .panel{padding:24px}
.usc-main .panel > div[style*="display:grid"]{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.usc-main .panel > div[style*="display:grid"] > div{min-width:0;padding:18px!important;border-radius:13px!important}
.usc-main .panel > div[style*="display:grid"] > div > div{font-size:13px!important;line-height:1.4}
.usc-main .panel > div[style*="display:grid"] > div > strong{font-size:29px!important;line-height:1.35}
.usc-main th{font-size:12px;line-height:1.35;white-space:nowrap;padding:15px}
.usc-main td{font-size:13px;line-height:1.5;padding:15px}
.usc-main table{min-width:660px}
.usc-main .responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}
.usc-main .panel h2{font-size:21px;margin-bottom:12px}
.usc-main button:focus-visible,.usc-nav-link:focus-visible,.usc-icon-button:focus-visible,.usc-close-sidebar:focus-visible{outline:3px solid #00babc;outline-offset:3px}
.usc-sidebar{max-height:100dvh}
.usc-sidebar nav{min-height:0;overscroll-behavior:contain}
.usc-close-sidebar{display:none;flex:none;background:rgba(255,255,255,.12);color:white;border:1px solid rgba(255,255,255,.32);border-radius:10px;width:38px;height:38px;font-size:25px;line-height:1;cursor:pointer;margin-left:auto}
.usc-close-sidebar:hover{background:rgba(255,255,255,.22)}
.usc-sidebar-footer{padding-bottom:max(17px,env(safe-area-inset-bottom))}
@media(max-width:1200px){.usc-main .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.usc-main .panel > div[style*="display:grid"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:800px){
 .usc-topbar{padding:0 max(14px,env(safe-area-inset-right)) 0 max(14px,env(safe-area-inset-left));gap:8px}
 .usc-topbar-right{min-width:0;gap:8px}
 .usc-logout-btn{padding:9px 12px!important;min-height:39px}
 .usc-icon-button{flex-shrink:0;min-width:41px;min-height:41px}
 .usc-topbar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
 .usc-user-chip{flex-shrink:0}
 .usc-close-sidebar{display:inline-flex;align-items:center;justify-content:center}
 .usc-brand{padding:18px 12px 18px 16px;gap:9px}
 .usc-brand-icon{width:46px;height:46px}
 .usc-brand strong{font-size:14px}
 .usc-brand small{font-size:8px}
 .usc-sidebar{width:min(272px,86vw);height:100dvh;overflow:hidden}
 .usc-sidebar nav{padding-bottom:20px}
 .usc-main{padding:20px 16px}
 .usc-main .panel{padding:17px}
 .usc-main .grid{gap:12px}
 .usc-main .stat{padding:18px}
 .usc-main .stat strong{font-size:27px}
 .usc-main .panel > div[style*="display:grid"]{gap:10px!important}
 .usc-main .panel > div[style*="display:grid"] > div{padding:14px!important}
 .usc-main .panel > div[style*="display:grid"] > div > strong{font-size:25px!important}
 .usc-main .panel h2{font-size:19px}
}
@media(max-width:380px){.usc-topbar-label{font-size:10px}.usc-main .grid{gap:9px}.usc-main .stat{padding:14px}.usc-main .panel > div[style*="display:grid"]{grid-template-columns:1fr!important}}
@media print{.usc-close-sidebar{display:none!important}}
