/* ===== NYE accessibility (נגישות) widget ===== */
.a11y-btn {
  position: fixed; bottom: 18px; left: 18px; z-index: 9998;
  width: 52px; height: 52px; border-radius: 50%; border: 0; cursor: pointer;
  background: #224D8B; color: #fff; box-shadow: 0 8px 24px rgba(0,0,0,.28);
  display: flex; align-items: center; justify-content: center;
}
.lang-en .a11y-btn,
html[dir="ltr"] .a11y-btn {
  left: auto;
  right: 18px;
}
.a11y-btn:hover { filter: brightness(1.08); }
.a11y-panel {
  position: fixed; bottom: 80px; left: 18px; z-index: 9999;
  width: 300px; max-width: calc(100vw - 36px); background: #fff; color: #1a1a1a;
  border-radius: 16px; box-shadow: 0 18px 50px rgba(0,0,0,.30); padding: 16px;
  font-family: 'Noto Sans Hebrew', Arial, sans-serif; direction: rtl; display: none;
  max-height: 80vh; overflow-y: auto;
}
.lang-en .a11y-panel,
html[dir="ltr"] .a11y-panel {
  left: auto;
  right: 18px;
  direction: ltr;
}
.a11y-panel.open { display: block; }
.a11y-panel h2 { font-size: 17px; margin: 2px 0 12px; font-weight: 700; }
.a11y-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.a11y-item {
  display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center;
  padding: 12px 8px; border: 1.5px solid #e3e3e3; border-radius: 12px; background: #fafafa;
  font-size: 12.5px; font-weight: 600; color: #333; cursor: pointer; transition: all .15s;
}
.a11y-item:hover { border-color: #224D8B; }
.a11y-item.active { background: #224D8B; color: #fff; border-color: #224D8B; }
.a11y-item svg { width: 22px; height: 22px; }
.a11y-reset { grid-column: 1 / -1; background: #872B64; color: #fff; border: 0; }
.a11y-statement { display: block; text-align: center; margin-top: 12px; font-size: 13px; color: #224D8B; font-weight: 700; }

/* Effects applied to <html> */
html.a11y-grayscale { filter: grayscale(1); }
html.a11y-contrast { filter: contrast(1.45); }
html.a11y-grayscale.a11y-contrast { filter: grayscale(1) contrast(1.45); }
html.a11y-links a { text-decoration: underline !important; outline: 1px dashed currentColor; outline-offset: 2px; }
html.a11y-readable, html.a11y-readable * { font-family: Arial, 'Noto Sans Hebrew', sans-serif !important; letter-spacing: .02em !important; line-height: 1.9 !important; }
html.a11y-noanim *, html.a11y-noanim *::before, html.a11y-noanim *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
html.a11y-bigcursor, html.a11y-bigcursor * {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23fff' stroke-width='1.5' d='M5 3l5 16 2.5-6.5L19 10z'/%3E%3C/svg%3E") 4 4, auto !important;
}

@media (max-width: 640px) {
  .a11y-btn { bottom: 78px; left: 14px; width: 46px; height: 46px; }
  .a11y-panel { bottom: 132px; left: 14px; width: min(300px, calc(100vw - 28px)); max-height: 68vh; }
  .lang-en .a11y-btn,
  html[dir="ltr"] .a11y-btn { left: auto; right: 14px; }
  .lang-en .a11y-panel,
  html[dir="ltr"] .a11y-panel { left: auto; right: 14px; }
}
