/* MTP Lesson Components: accessibility layer (09.03.26.001)
   Structural floors only; palette and type floors are applied at runtime by
   assets/js/lc-a11y.js against what actually rendered. */

/* Visible focus on every interactive element inside any MTP component (WCAG 2.4.7) */
[class^="mtp-"] :focus-visible,[class*=" mtp-"] :focus-visible,[id^="mtp-"] :focus-visible,.mtp-graph-widget :focus-visible,[class^="mtp-"]:focus-visible{outline:3px solid #0077C8!important;outline-offset:2px!important;box-shadow:0 0 0 5px #fff!important}

/* Visually hidden, still read */
.mtp-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}

/* Canvas figures announce as images; give them a focus stop so a reader can land on the description */
[class^="mtp-"] canvas[role="img"],.mtp-graph-widget canvas[role="img"]{max-width:100%}

/* Sliders and small controls keep a real hit area */
[class^="mtp-"] input[type="range"],.mtp-graph-widget input[type="range"]{min-height:24px}

/* Phone tier: nothing wider than the screen, wrapping bins and chip rows */
@media(max-width:540px){
  [class^="mtp-"],[class*=" mtp-"],.mtp-graph-widget{max-width:100%;box-sizing:border-box}
  [class^="mtp-sort"],[class*="mtp-sort-"],[class*="-bins"],[class*="-chips"],[class*="-bank"],[class*="-row"]{flex-wrap:wrap}
  .mtp-sort,[class^="mtp-sort-wrap"]{overflow-x:auto}
  [class^="mtp-"] canvas,.mtp-graph-widget canvas{width:100%!important;height:auto!important}
}

/* Motion: system setting honoured across every component (WCAG 2.3.3) */
@media(prefers-reduced-motion:reduce){
  [class^="mtp-"] *,[class*=" mtp-"] *,.mtp-graph-widget *{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important;scroll-behavior:auto!important}
}
