/* Get Out Scout accessibility menu (2026-11-05). Built in-house: no outside
   service, settings stay in this browser. Every rule skips the widget itself
   (.a11y-root) so the menu stays usable whatever is switched on. */

/* ---- launcher and panel -------------------------------------------------- */
.a11y-root{--a11y-accent:var(--scout-orange,#f64d01);--a11y-ink:#1f2328;font-family:Arial,Helvetica,sans-serif;line-height:1.3;letter-spacing:normal;word-spacing:normal;text-align:left}
.a11y-root *{box-sizing:border-box}
.a11y-launch{position:fixed;z-index:3600;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));display:grid;place-items:center;width:46px;height:46px;padding:0;border:2px solid #fff;border-radius:50%;background:#1d4ed8;color:#fff;box-shadow:0 6px 18px #0f172a40;cursor:pointer;transition:transform .15s}
.a11y-launch:hover{transform:scale(1.07)}
.a11y-launch:focus-visible,.a11y-panel button:focus-visible,.a11y-panel a:focus-visible{outline:3px solid #facc15;outline-offset:2px}
.a11y-launch svg{width:28px;height:28px}
.a11y-launch.is-on::after{content:"";position:absolute;top:1px;right:1px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:#22c55e}
html.a11y-ready .hol-toggle{right:70px}
@media(max-width:920px){
  .a11y-launch{right:10px;bottom:calc(84px + env(safe-area-inset-bottom));width:42px;height:42px}
  html.a11y-ready .hol-toggle{right:60px}
}
.a11y-panel{position:fixed;z-index:3610;top:0;right:0;bottom:0;display:flex;flex-direction:column;width:min(400px,100vw);background:#f3f5f9;color:var(--a11y-ink);box-shadow:-10px 0 34px #0f172a33;font-size:13px}
.a11y-panel[hidden]{display:none}
.a11y-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;background:#1d4ed8;color:#fff}
.a11y-head h2{margin:0;font:800 15px Arial,sans-serif;color:#fff}
.a11y-close{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:#fff;color:#1d4ed8;font:700 20px/1 Arial,sans-serif;cursor:pointer}
.a11y-body{flex:1;overflow:auto;padding:12px 14px 16px}
.a11y-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;margin:0 0 8px;padding:8px 12px;border:1px solid #dfe3ea;border-radius:10px;background:#fff;color:var(--a11y-ink);font:700 13px Arial,sans-serif;text-align:left;cursor:pointer}
.a11y-row small{color:#5b6472;font-weight:600}
.a11y-switch{position:relative;flex:none;width:42px;height:24px;border-radius:999px;background:#c7ccd6;transition:background .15s}
.a11y-switch::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .15s}
[aria-pressed="true"] .a11y-switch{background:#1d4ed8}
[aria-pressed="true"] .a11y-switch::after{left:21px}
.a11y-profiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px}
.a11y-profiles[hidden]{display:none}
.a11y-profile{min-height:40px;padding:8px 10px;border:1px solid #dfe3ea;border-radius:10px;background:#fff;color:var(--a11y-ink);font:700 12px Arial,sans-serif;text-align:left;cursor:pointer}
.a11y-profile[aria-pressed="true"]{border-color:#1d4ed8;background:#e8efff;color:#1d4ed8}
.a11y-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.a11y-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:96px;padding:12px 6px 14px;border:2px solid transparent;border-radius:12px;background:#fff;color:var(--a11y-ink);font:700 12px Arial,sans-serif;text-align:center;cursor:pointer;box-shadow:0 1px 3px #0f172a14}
.a11y-tile:hover{border-color:#bfd0ff}
.a11y-tile svg{width:28px;height:28px}
.a11y-tile[aria-pressed="true"]{border-color:#1d4ed8;background:#e8efff;color:#1d4ed8}
.a11y-tile[disabled]{opacity:.45;cursor:not-allowed}
.a11y-tile .a11y-level{position:absolute;bottom:6px;left:0;right:0;display:flex;justify-content:center;gap:3px}
.a11y-tile .a11y-level i{width:14px;height:3px;border-radius:2px;background:#d4d9e2}
.a11y-tile .a11y-level i.on{background:#1d4ed8}
.a11y-state{min-height:14px;color:#1d4ed8;font-size:10px;font-weight:700}
.a11y-reset{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;margin:14px 0 6px;border:0;border-radius:10px;background:#1d4ed8;color:#fff;font:800 14px Arial,sans-serif;cursor:pointer}
.a11y-note{margin:6px 2px 0;color:#5b6472;font-size:11px}
.a11y-structure{margin:0 0 12px;padding:10px 12px;border:1px solid #dfe3ea;border-radius:10px;background:#fff}
.a11y-structure[hidden]{display:none}
.a11y-structure h3{margin:6px 0;font:800 12px Arial,sans-serif;color:#5b6472;text-transform:uppercase;letter-spacing:.4px}
.a11y-structure ul{margin:0 0 6px;padding:0;list-style:none;max-height:180px;overflow:auto}
.a11y-structure button{display:block;width:100%;padding:6px 4px;border:0;border-bottom:1px solid #eef0f4;background:none;color:#1d4ed8;font:700 12px Arial,sans-serif;text-align:left;cursor:pointer}
.a11y-tip,.a11y-define{position:fixed;z-index:3620;max-width:280px;padding:7px 10px;border-radius:8px;background:#111827;color:#fff;font:600 13px/1.35 Arial,sans-serif;box-shadow:0 8px 20px #0003;pointer-events:none}
.a11y-define{pointer-events:auto}
.a11y-define a{color:#93c5fd;font-weight:800}
.a11y-tip[hidden],.a11y-define[hidden]{display:none}
/* Oversized widget */
.a11y-root.is-big .a11y-launch{width:60px;height:60px}
.a11y-root.is-big .a11y-launch svg{width:36px;height:36px}
.a11y-root.is-big .a11y-panel{width:min(500px,100vw);font-size:15px}
.a11y-root.is-big .a11y-tile{min-height:120px;font-size:14px}
.a11y-root.is-big .a11y-tile svg{width:36px;height:36px}
.a11y-root.is-big .a11y-row,.a11y-root.is-big .a11y-profile{font-size:15px}
@media(max-width:480px){.a11y-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- page features (classes on <html>) ------------------------------------ */
/* Contrast +: 1 dark (inverted; pictures turned back), 2 light, 3 high (filters set by script) */
html.a11y-contrast-1 img,html.a11y-contrast-1 video,html.a11y-contrast-1 picture,html.a11y-contrast-1 iframe,
html.a11y-contrast-1 [style*="background-image"],html.a11y-contrast-1 .a11y-root{filter:invert(1) hue-rotate(180deg)}
html.a11y-contrast-2 body *:not(.a11y-root):not(.a11y-root *):not(img):not(video):not(svg):not(svg *){background-color:#fff!important;color:#000!important;border-color:#000!important}
html.a11y-contrast-2 body a:not(.a11y-root *){color:#0000c8!important}
/* Highlight links */
html.a11y-links a:not(.a11y-root *),html.a11y-links button:not(.a11y-root *),html.a11y-links [role="button"]:not(.a11y-root *){outline:3px solid #facc15!important;outline-offset:2px!important}
html.a11y-links a:not(.a11y-root *){text-decoration:underline!important;text-underline-offset:3px}
/* Text spacing */
html.a11y-spacing-1 body *:not(.a11y-root):not(.a11y-root *){letter-spacing:.05em!important;word-spacing:.1em!important}
html.a11y-spacing-2 body *:not(.a11y-root):not(.a11y-root *){letter-spacing:.1em!important;word-spacing:.2em!important}
html.a11y-spacing-3 body *:not(.a11y-root):not(.a11y-root *){letter-spacing:.16em!important;word-spacing:.3em!important}
/* Line height */
html.a11y-lh-1 body *:not(.a11y-root):not(.a11y-root *){line-height:1.6!important}
html.a11y-lh-2 body *:not(.a11y-root):not(.a11y-root *){line-height:1.9!important}
html.a11y-lh-3 body *:not(.a11y-root):not(.a11y-root *){line-height:2.2!important}
/* Text align */
html.a11y-align-1 body *:not(.a11y-root):not(.a11y-root *){text-align:left!important}
html.a11y-align-2 body *:not(.a11y-root):not(.a11y-root *){text-align:center!important}
html.a11y-align-3 body *:not(.a11y-root):not(.a11y-root *){text-align:right!important}
html.a11y-align-4 body *:not(.a11y-root):not(.a11y-root *){text-align:justify!important}
/* Pause animations */
html.a11y-pause *:not(.a11y-root *),html.a11y-pause *::before,html.a11y-pause *::after{animation-play-state:paused!important;transition:none!important;scroll-behavior:auto!important}
/* Hide images */
html.a11y-images img:not(.a11y-root *),html.a11y-images picture:not(.a11y-root *),html.a11y-images video:not(.a11y-root *){visibility:hidden!important}
html.a11y-images [style*="background-image"]:not(.a11y-root *){background-image:none!important}
/* Dyslexia friendly: fonts already on the device, nothing is downloaded */
html.a11y-dyslexia body *:not(.a11y-root):not(.a11y-root *){font-family:"Comic Sans MS","Comic Neue","OpenDyslexic",Verdana,Tahoma,sans-serif!important}
/* Big cursor: 1 dark, 2 light */
html.a11y-cursor-1,html.a11y-cursor-1 *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'><path d='M4 3 L4 37 L13 28 L19 42 L25 39 L19 26 L32 26 Z' fill='%23111' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/></svg>") 4 3,auto!important}
html.a11y-cursor-2,html.a11y-cursor-2 *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'><path d='M4 3 L4 37 L13 28 L19 42 L25 39 L19 26 L32 26 Z' fill='%23fff' stroke='%23111' stroke-width='2.5' stroke-linejoin='round'/></svg>") 4 3,auto!important}
/* Screen reader: the part being read */
.a11y-reading{outline:3px solid #22c55e!important;outline-offset:3px!important}
@media(prefers-reduced-motion:reduce){.a11y-launch{transition:none}}
@media print{.a11y-root{display:none!important}}
