/* תפריט נגישות (a11y.js). קובץ נפרד מ-landing.css. בלי inline, תואם CSP.
   הצבעים של התפריט עצמו קבועים (לא משתני העיצוב), כדי שיישאר קריא בכל מצב תצוגה. */
.a11y { position: fixed; z-index: 70; inset-inline-start: 0; top: 34%; font-family: Arial, 'Heebo', sans-serif; font-size: 16px; line-height: 1.4; }
.a11y-toggle { appearance: none; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 0; border: 2px solid #fff; border-inline-start: 0; border-start-end-radius: 12px; border-end-end-radius: 12px; background: #0b3d91; color: #fff; cursor: pointer; box-shadow: 0 4px 14px rgba(0,0,0,.3); }
.a11y-toggle svg { width: 30px; height: 30px; fill: currentColor; display: block; }
.a11y-toggle:hover { background: #072a66; }
.a11y-toggle:focus-visible, .a11y-panel :focus-visible { outline: 3px solid #ffbf00; outline-offset: 2px; border-radius: 6px; }
.a11y-panel { position: fixed; inset-inline-start: 12px; top: 50%; transform: translateY(-50%); width: min(320px, calc(100vw - 24px)); max-height: calc(100vh - 24px); overflow: auto; overscroll-behavior: contain; padding: 14px; background: #fff; color: #111; border: 2px solid #111; border-radius: 14px; box-shadow: 0 18px 50px rgba(0,0,0,.35); }
.a11y-panel[hidden] { display: none; }
.a11y-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 10px; }
.a11y-title { margin: 0; font: 700 18px/1.3 Arial, 'Heebo', sans-serif; color: #111; }
.a11y-close { appearance: none; width: 44px; height: 44px; border: 1px solid #111; border-radius: 8px; background: #fff; color: #111; font: 700 22px/1 Arial, sans-serif; cursor: pointer; }
.a11y-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.a11y-btn { appearance: none; display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; min-height: 46px; padding: 8px 12px; border: 1.5px solid #111; border-radius: 8px; background: #fff; color: #111; font: 700 16px/1.3 Arial, 'Heebo', sans-serif; text-align: start; cursor: pointer; }
.a11y-btn:hover, .a11y-close:hover { background: #eef3ff; }
.a11y-btn[aria-pressed="true"] { background: #0b3d91; border-color: #0b3d91; color: #fff; }
.a11y-btn[aria-pressed="true"]::after { content: "פעיל"; font-weight: 400; font-size: 14px; }
.a11y-size { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.a11y-size .a11y-btn { justify-content: center; }
.a11y-btn[disabled] { opacity: .45; cursor: default; }
.a11y-level { margin: 6px 0 0; font-size: 14px; color: #111; }
.a11y-foot { margin: 12px 0 0; padding-top: 10px; border-top: 1px solid #111; display: grid; gap: 8px; }
.a11y-link { color: #0b3d91; font-weight: 700; text-decoration: underline; }
.a11y-link:hover { color: #072a66; }

/* ===== מצבי התצוגה: מחלקות על <html> ===== */
/* הגדלת טקסט: כל הגדלים בדף ביחידות rem, ולכן מספיק לשנות את גודל הבסיס */
html.a11y-fs1 { font-size: 112.5%; }
html.a11y-fs2 { font-size: 125%; }
html.a11y-fs3 { font-size: 150%; }

/* ניגודיות גבוהה: שחור על לבן, בלי רקעים מדורגים */
html.a11y-contrast, html.a11y-contrast[data-lp] {
  --ink: #000; --ink-2: #000; --muted: #1a1a1a; --bg: #fff; --bg-2: #fff; --card: #fff;
  --line: #000; --accent: #8a1f00; --accent-2: #000; --mint: #000; --mint-soft: #fff;
  --primary: #000; --primary-ink: #fff; --primary-hover: #333;
  --danger: #8a0000; --ok: #004d2c; --hero-bg: #fff; --shadow: none; --shadow-lg: none;
}
html.a11y-contrast body { background: #fff; color: #000; }
html.a11y-contrast .site-footer, html.a11y-contrast[data-lp] .site-footer { background: #000; color: #fff; }
html.a11y-contrast .site-footer a, html.a11y-contrast .site-footer .lp-logo { color: #fff; }
html.a11y-contrast a:not(.button):not(.a11y-link) { text-decoration: underline; }
html.a11y-contrast input, html.a11y-contrast select, html.a11y-contrast textarea { border: 2px solid #000; background: #fff; color: #000; }
html.a11y-contrast .button, html.a11y-contrast .form-card, html.a11y-contrast details { border: 2px solid #000; }

/* הדגשת קישורים */
html.a11y-links a:not(.a11y-link) { text-decoration: underline !important; text-decoration-thickness: 2px !important; text-underline-offset: .2em; font-weight: 700; }

/* הדגשת מיקוד המקלדת */
html.a11y-focus :focus { outline: 4px solid #000 !important; outline-offset: 2px !important; box-shadow: 0 0 0 8px #ffd400 !important; border-radius: 4px; }

/* עצירת תנועה */
html.a11y-motion { scroll-behavior: auto !important; }
html.a11y-motion *, html.a11y-motion *::before, html.a11y-motion *::after { animation: none !important; transition: none !important; }
html.a11y-motion .reveal { opacity: 1 !important; transform: none !important; }

/* גופן קריא */
html.a11y-font body, html.a11y-font body *:not(.lp-logo):not(.lp-logo *) { font-family: Arial, 'Heebo', sans-serif !important; letter-spacing: normal !important; }
html.a11y-font p, html.a11y-font li, html.a11y-font dd { line-height: 1.9; }

@media (max-width: 860px) { .a11y { top: 22%; } .a11y-toggle { width: 44px; height: 44px; } }
/* בטלפון הכפתור צר וגבוה, כדי שלא יכסה את תחילת שורות הטקסט (השוליים שם כ-20px) */
@media (max-width: 600px) {
  .a11y-toggle { width: 28px; height: 48px; border-start-end-radius: 10px; border-end-end-radius: 10px; }
  .a11y-toggle svg { width: 20px; height: 20px; }
}
@media (forced-colors: active) { .a11y-toggle, .a11y-panel, .a11y-btn { border: 2px solid CanvasText; } }
@media print { .a11y { display: none; } }
