/* SOLUX SOGCES: shared responsive layer, no business data stored client-side */
:root{--solux-touch:44px}
@media(max-width:900px){
 html,body{max-width:100%;overflow-x:hidden}
 .cap-filter{gap:8px!important}.cap-filter label{flex:1 1 145px;min-width:0}.cap-filter input,.cap-filter select{max-width:100%!important;width:100%;box-sizing:border-box}
 .cap-title{flex-wrap:wrap;gap:8px}.cap-title h3{font-size:17px}
 .cap-actions{display:flex;flex-wrap:wrap;gap:7px}
 .cap-actions button,.cap-return,.cap-filter button{min-height:var(--solux-touch)}
 .cap-scroll{max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
 .cap-scroll table{min-width:650px}
 input,select,textarea{max-width:100%;box-sizing:border-box}
 dialog{max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;overflow:auto}
}
@media(max-width:600px){
 .cap-title h3{font-size:16px}
 .cap-filter{align-items:stretch}.cap-filter label{flex-basis:calc(50% - 8px)}
 .cap-actions button{flex:1 1 135px}
 .pwa-actions{max-width:calc(100vw - 20px)}
}
@media(hover:none){button,a,[role=button]{touch-action:manipulation}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
