/* V189: common phone, tablet, touch and desktop accessibility layer. */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
*,*::before,*::after { box-sizing:border-box; }
img,video,iframe { max-width:100%; }
input,select,textarea { max-width:100%; }
pre { overflow:auto; max-width:100%; }
.rh-table-scroll { width:100%; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
a,button,input,select,textarea { touch-action:manipulation; }
:focus-visible { outline:3px solid #76d6ff; outline-offset:3px; }
.shell,.wrap,main,.card,.panel { min-width:0; }
@media (max-width:860px) {
 .top,.top nav,header nav { flex-wrap:wrap; }
 .split,.grid2,.login-panel { grid-template-columns:minmax(0,1fr)!important; }
 .shell,.wrap { max-width:100%; }
}
@media (max-width:600px) {
 body { overflow-wrap:break-word; }
 .shell,.wrap,main.wrap { width:100%!important; padding-left:12px!important; padding-right:12px!important; }
 .grid,.grid2,.split,.login-panel,.dashboard-grid { grid-template-columns:minmax(0,1fr)!important; }
 input:not([type=hidden]),select,textarea { font-size:16px!important; }
 button,.btn,.button,nav a { min-height:44px!important; }
 h1 { font-size:clamp(24px,7vw,38px)!important; }
 .login-card,.login-panel { max-width:100%; }
}
@media (prefers-reduced-motion:reduce) {
 *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
}
