/* RXOPD Patch 08: conservative accessibility, responsive and failure-state layer. */
:root{--rx-a11y-focus:#075fb8;--rx-a11y-touch:44px;--rx-a11y-danger:#9f1f2c;--rx-a11y-warning:#8a4b00}
.rx-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}
.rx-skip-link{position:fixed;z-index:10000;top:8px;left:8px;transform:translateY(-160%);padding:11px 16px;border-radius:10px;background:#082f5c;color:#fff;font-weight:800;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.24)}
.rx-skip-link:focus{transform:none}
.rx-network-banner{position:fixed;z-index:9999;inset:0 0 auto 0;min-height:44px;padding:11px 16px;background:#fff4df;border-bottom:1px solid #e7b867;color:#633800;font-size:14px;font-weight:800;text-align:center}
.rx-network-banner[data-state="offline"]{background:#fff0f1;border-color:#e2a2a8;color:#821d29}
.rx-a11y-production :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--rx-a11y-focus)!important;outline-offset:2px!important}
.rx-a11y-production :where(button,input,select,textarea){font:inherit}
.rx-a11y-production :where(img,svg,video,canvas){max-width:100%}
.rx-a11y-production :where(.table-wrap,.rx-table-wrap,.table-responsive,.responsive-table){max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.rx-a11y-production :where(td,th,.card,.panel,.rx-card){overflow-wrap:anywhere}
.rx-a11y-production [aria-busy="true"]{cursor:progress!important}
.rx-a11y-production [aria-invalid="true"]{border-color:var(--rx-a11y-danger)!important;box-shadow:0 0 0 3px rgba(159,31,44,.13)!important}
.rx-a11y-production .rx-submit-busy{position:relative;pointer-events:none;opacity:.72}
.rx-a11y-production .rx-submit-busy::after{content:"";width:15px;height:15px;margin-left:9px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;vertical-align:-2px;animation:rx-a11y-spin .7s linear infinite}
@keyframes rx-a11y-spin{to{transform:rotate(360deg)}}
@media(pointer:coarse){.rx-a11y-production :where(button,.button,.btn,input:not([type="hidden"]),select,textarea,summary){min-height:var(--rx-a11y-touch)}.rx-a11y-production :where(input[type="checkbox"],input[type="radio"]){min-width:22px;min-height:22px}}
@media(max-width:700px){.rx-a11y-production :where(.actions,.form-actions,.card-actions){gap:10px;flex-wrap:wrap}.rx-a11y-production :where(.actions,.form-actions,.card-actions)>:where(a,button){flex:1 1 160px}.rx-network-banner{font-size:12px}.rx-skip-link{max-width:calc(100vw - 16px)}}
@media(prefers-reduced-motion:reduce){.rx-a11y-production *,.rx-a11y-production *::before,.rx-a11y-production *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(forced-colors:active){.rx-skip-link,.rx-network-banner{border:1px solid CanvasText}.rx-a11y-production :focus-visible{outline:3px solid Highlight!important}}
