/* UX.4 — Responsive, Acessibilidade e Consolidação */
:root{--ux4-focus:3px solid var(--color-primary,#245987);--ux4-focus-offset:3px;--ux4-touch:44px}
.ux4-skip-link{position:fixed;z-index:10000;left:1rem;top:.75rem;transform:translateY(-180%);padding:.7rem 1rem;border-radius:.55rem;background:#fff;color:#173f66;font-weight:700;box-shadow:0 4px 18px rgba(0,0,0,.18)}
.ux4-skip-link:focus{transform:none;outline:var(--ux4-focus);outline-offset:2px}
#main-content:focus{outline:none}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:var(--ux4-focus)!important;outline-offset:var(--ux4-focus-offset)!important}
button,.button,.btn,.side-link,.mobile-menu-button,.sidebar-toggle,input[type=checkbox],input[type=radio]{min-height:var(--ux4-touch)}
input,select,textarea{font-size:max(1rem,16px)}
img,svg,video,canvas{max-width:100%}
:where(.table-wrap,.ux3-table-wrap,.responsive-table){overflow-x:auto;-webkit-overflow-scrolling:touch}
[hidden]{display:none!important}
[role=dialog]{max-height:calc(100dvh - 2rem);overflow:auto}
body.ux4-modal-open,body.sidebar-mobile-open{overflow:hidden}
.ux4-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:900px){.app-topbar{min-height:64px}.app-container{padding-inline:1rem}.sidebar{overscroll-behavior:contain}.side-link{min-height:46px}}
@media(max-width:768px){.ux3-section-head,.page-head,.app-topbar{align-items:flex-start}.ux3-form-actions,.form-actions{gap:.65rem}.ux3-form-actions :is(button,.button,.btn),.form-actions :is(button,.button,.btn){min-height:44px}.li-modal-dialog{width:min(94vw,680px);max-height:calc(100dvh - 1rem)}}
@media(max-width:576px){.app-container{padding-inline:.75rem}.app-topbar-meta .topbar-user-name{display:none}.ux3-form-actions,.form-actions,.li-modal-actions{display:grid;grid-template-columns:1fr}.ux3-form-actions :is(button,.button,.btn),.form-actions :is(button,.button,.btn),.li-modal-actions :is(button,.button,.btn){width:100%}.li-modal{padding:.5rem}.li-modal-dialog{width:100%;max-height:calc(100dvh - 1rem);border-radius:.75rem}.li-modal-head,.li-modal-body{padding-inline:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid CanvasText!important}.ux3-status,.badge,.role-chip{border:1px solid CanvasText}}
