/* Barrierefreiheits-Widget (1:1 aus der Startseite). Palette auf #a11y-widget
   gescoped, damit Farben stimmen, ohne mit Seiten-Variablen zu kollidieren.
   Split-Bar / Sprach-Panel / Side-Tabs / Google-Translate kommen aus a11y-multilang.css/.js. */
body.hc-mode{
  --navy:   #1a4a7a;
  --navy-2: #163f6b;
  --navy-3: #12355c;
  --blue:   #1a4a7a;
  --blue-l: #2a5a8a;
  --accent: #003080;
  --ink:    #000000;
  --ink-s:  #111111;
  --off:    #f5f5f5;
  --off-2:  #e8e8e8;
  --muted:  #2a2a2a;
  --border: #000000;
}
body.dyslexia-font,body.dyslexia-font *{font-family:'Arial','Verdana',sans-serif!important;letter-spacing:.05em!important;word-spacing:.1em!important;line-height:1.85!important;}
body.reduce-motion *,body.reduce-motion *::before,body.reduce-motion *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
@media(forced-colors:active){
  .a11y-toggle{forced-color-adjust:none;background:#224569;border:2px solid #fff;}
  .a11y-toggle svg{stroke:#fff!important;}
}

#a11y-widget{position:fixed;bottom:1.75rem;right:1.75rem;z-index:9998;font-family:'Manrope',sans-serif;--blue:#769cbe;--blue-l:#9ab8d4;--ink:#224569;--muted:#5c7a9a;}
.a11y-toggle{width:70px;height:70px;border-radius:50%;background:var(--blue);border:none;outline:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(34,69,105,.45),0 2px 8px rgba(34,69,105,.3);transition:transform .2s,box-shadow .2s;color:#fff;}
.a11y-toggle:focus,.a11y-toggle:focus-visible{outline:none!important;}
.a11y-toggle:hover{transform:scale(1.07);box-shadow:0 14px 44px rgba(34,69,105,.55),0 4px 12px rgba(34,69,105,.35);}
.a11y-bar{display:none;}
.a11y-panel{position:absolute;bottom:86px;right:0;width:256px;background:#fff;border-radius:18px;box-shadow:0 32px 80px rgba(34,69,105,.2),0 8px 24px rgba(34,69,105,.1);padding:.7rem;opacity:0;transform:translateY(14px) scale(.96);pointer-events:none;transition:opacity .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1);overflow:hidden;}
.a11y-panel.open{opacity:1;transform:translateY(0) scale(1);pointer-events:all;}

@media(max-width:900px){
  footer{padding-bottom:calc(3rem + 54px);}
  #a11y-widget{position:fixed;bottom:0;left:0;right:0;width:100%;}
  .a11y-toggle{display:none;}
  .a11y-bar{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;background:var(--blue);color:#fff;border:none;border-top:2px solid rgba(255,255,255,.2);padding:.65rem 1.5rem;cursor:pointer;font-family:'Manrope',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:background .2s;}
  .a11y-bar:hover{background:var(--blue-l);}
  .a11y-bar:focus,.a11y-bar:focus-visible{outline:none;}
  .a11y-panel{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%) translateY(8px) scale(.97);right:auto;}
  .a11y-panel.open{transform:translateX(-50%) translateY(0) scale(1);}
}
.a11y-panel-title{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:.3rem .6rem .55rem;border-bottom:1px solid rgba(34,69,105,.07);margin-bottom:.4rem;}
.a11y-font-row{display:flex;align-items:center;padding:.42rem .6rem;gap:.5rem;}
.a11y-font-label{font-size:.82rem;font-weight:500;color:var(--ink);flex:1;}
.a11y-font-ctrl{display:flex;gap:.35rem;}
.a11y-font-btn{width:32px;height:32px;border:1.5px solid rgba(34,69,105,.12);border-radius:8px;background:#f8f9fb;cursor:pointer;display:grid;place-items:center;font-weight:700;color:var(--ink);transition:all .15s;}
.a11y-font-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
#a11y-font-minus{font-size:.8rem;}#a11y-font-plus{font-size:.95rem;}
.a11y-btn{display:flex;align-items:center;gap:.65rem;padding:.52rem .6rem;border:none;background:none;border-radius:10px;cursor:pointer;font-family:'Manrope',sans-serif;font-size:.8rem;font-weight:500;color:var(--ink);transition:background .15s;text-align:left;width:100%;}
.a11y-btn:hover{background:#f8f9fb;}
.a11y-btn.active{background:rgba(34,69,105,.07);color:var(--ink);font-weight:700;}
.a11y-btn svg{flex-shrink:0;opacity:.45;}
.a11y-btn.active svg{opacity:1;}
.a11y-divider{height:1px;background:rgba(34,69,105,.07);margin:.35rem 0;}
.a11y-reset{display:block;width:100%;padding:.45rem;border:none;background:none;border-radius:8px;cursor:pointer;font-family:'Manrope',sans-serif;font-size:.73rem;font-weight:600;color:var(--muted);transition:all .15s;text-align:center;}
.a11y-reset:hover{background:#f8f9fb;color:var(--ink);}
