/* ND Monsters Gate 5E — app-specific accessibility and responsive hardening. */
.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}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #6f2c91!important;outline-offset:3px!important}
#app [tabindex="-1"]:focus{outline:none}
.app-shell,.app-shell section,.app-shell article,.app-shell div{min-width:0}
.app-shell img,.app-shell svg,.app-shell video,.app-shell iframe{max-width:100%}
.app-shell button,.app-shell p,.app-shell li,.app-shell h1,.app-shell h2,.app-shell h3,.app-shell h4,.app-shell small{overflow-wrap:anywhere}
.app-shell button{white-space:normal}
.app-modal{align-items:start;overflow:auto}
.app-modal .modal-card{max-height:calc(100% - 20px);margin:auto}
.skill-embed{width:100%;max-width:100%;border:0}
@media(max-width:480px){
  .tabs-row-primary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .tabs-more-panel{grid-template-columns:1fr!important}
  .hero-utilities{width:100%;justify-content:flex-start!important}
  .hero-utilities button{flex:1 1 140px;min-height:44px}
  .app-modal{padding:8px!important}
  .app-modal .modal-card{width:100%!important;max-width:100%!important;padding:16px!important}
  .actions{flex-wrap:wrap}.actions>button,.actions>a{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
html.accessibility-text-xl .tabs button,html.accessibility-text-large .tabs button{white-space:normal!important;min-height:44px}
html.accessibility-text-xl .progress-stat-grid,html.accessibility-text-large .progress-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:560px){html.accessibility-text-xl .progress-stat-grid,html.accessibility-text-large .progress-stat-grid{grid-template-columns:1fr}}
