/* mai-a11y — תפריט הנגישות (שלב 4, C6). הכפתור בשמאל-תחתון (ב-RTL הצד "האחורי");
   הווידג'ט עצמו מוחרג מכל האפקטים (body > :not(.mai-a11y)). */
.mai-a11y { position: fixed; left: 16px; bottom: 16px; z-index: 2147483000; direction: rtl; font: 15px/1.4 Arial, Heebo, sans-serif; }
.mai-a11y button { font: inherit; cursor: pointer; }
.mai-a11y :focus-visible { outline: 3px solid #ffbf00; outline-offset: 2px; }
.mai-a11y-btn { width: 48px; height: 48px; border-radius: 50%; border: 2px solid #fff; background: #1747c9; color: #fff; display: grid; place-items: center; padding: 0; box-shadow: 0 6px 20px rgba(0,0,0,.3); }
.mai-a11y-btn svg { width: 28px; height: 28px; }
.mai-a11y-panel { position: absolute; left: 0; bottom: 60px; width: min(320px, calc(100vw - 32px)); max-height: min(72vh, 560px); overflow: auto; background: #fff; color: #10131f; border-radius: 16px; box-shadow: 0 18px 50px rgba(0,0,0,.35); padding: 14px; }
.mai-a11y-panel[hidden] { display: none; }
.mai-a11y-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.mai-a11y-head strong { font-size: 17px; }
.mai-a11y-x { border: 0; background: #eef0f5; color: #10131f; border-radius: 8px; width: 34px; height: 34px; }
.mai-a11y-fs { display: flex; align-items: center; justify-content: space-between; gap: 8px; background: #f3f5f9; border-radius: 12px; padding: 6px; margin-bottom: 10px; }
.mai-a11y-fs button { width: 46px; height: 38px; border: 0; border-radius: 9px; background: #fff; color: #10131f; font-weight: 700; }
.mai-a11y-fs button:disabled { opacity: .4; cursor: default; }
.mai-a11y-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.mai-a11y-grid button { min-height: 50px; border: 2px solid #e2e6ee; background: #fff; color: #10131f; border-radius: 12px; padding: 6px 8px; }
.mai-a11y-grid button[aria-pressed="true"] { border-color: #1747c9; background: #e9efff; font-weight: 700; }
.mai-a11y-reset { width: 100%; margin-top: 10px; min-height: 42px; border: 0; border-radius: 12px; background: #10131f; color: #fff; }
.mai-a11y-link { display: block; text-align: center; margin-top: 10px; color: #1747c9; text-decoration: underline; }
@media (max-width: 640px) { .mai-a11y { left: 12px; bottom: 12px; } .mai-a11y-btn { width: 44px; height: 44px; } .mai-a11y-panel { bottom: 54px; } }
/* Fixes1 (R8): כשכותרת/כפתור/שדה עוברים מתחת לכפתור, הדף מסמן is-tucked והכפתור נאסף
   לשוליים — רצועה של 24px גלויה ולחיצה. פוקוס מקלדת או תפריט פתוח ⇒ חוזר למקומו. */
.mai-a11y { transition: transform .25s ease; }
.mai-a11y.is-tucked { transform: translateX(calc(-100% - 16px + 24px)); }
@media (max-width: 640px) { .mai-a11y.is-tucked { transform: translateX(calc(-100% - 12px + 24px)); } }
.mai-a11y.is-tucked:focus-within { transform: none; }
@media (hover: hover) { .mai-a11y.is-tucked:hover { transform: none; } }
@media (prefers-reduced-motion: reduce) { .mai-a11y { transition: none; } }
/* 0.9-r2 (M3): בטלפון קטן (≤480) הצפים בעמודה אחת בצד שמאל — הנגישות למטה (10px), הוואטסאפ מעליה (canvas-shell). הפאנל נשאר מעוגן לשמאל. */
@media (max-width: 480px) {
    .mai-a11y { left: 10px; bottom: 10px; }
    .mai-a11y.is-tucked { transform: translateX(calc(-100% - 10px + 22px)); }
    .mai-a11y-panel { bottom: 54px; width: min(320px, calc(100vw - 20px)); max-height: min(70vh, 520px); }
}
@media print { .mai-a11y { display: none; } }

/* ── האפקטים ── */
html.mai-a11y-fs1 body > :not(.mai-a11y) { zoom: 1.15; }
html.mai-a11y-fs2 body > :not(.mai-a11y) { zoom: 1.3; }
html.mai-a11y-fs3 body > :not(.mai-a11y) { zoom: 1.5; }
html.mai-a11y-contrast body,
html.mai-a11y-contrast body > :not(.mai-a11y),
html.mai-a11y-contrast body > :not(.mai-a11y) * { background-color: #000 !important; background-image: none !important; color: #fff !important; border-color: #fff !important; text-shadow: none !important; box-shadow: none !important; }
html.mai-a11y-contrast body > :not(.mai-a11y) a { color: #ffeb3b !important; }
html.mai-a11y-contrast body > :not(.mai-a11y) :is(input, textarea, select) { border: 2px solid #fff !important; }
html.mai-a11y-gray body > :not(.mai-a11y) { filter: grayscale(1); }
html.mai-a11y-links body > :not(.mai-a11y) a { text-decoration: underline !important; text-underline-offset: 3px; outline: 2px solid #ffbf00 !important; outline-offset: 2px; }
html.mai-a11y-headings body > :not(.mai-a11y) :is(h1, h2, h3, h4, h5, h6) { outline: 3px dashed #1747c9 !important; outline-offset: 4px; }
html.mai-a11y-font body > :not(.mai-a11y),
html.mai-a11y-font body > :not(.mai-a11y) * { font-family: Arial, Assistant, sans-serif !important; }
html.mai-a11y-spacing body > :not(.mai-a11y) * { line-height: 1.9 !important; letter-spacing: .04em !important; word-spacing: .12em !important; }
html.mai-a11y-cursor, html.mai-a11y-cursor * { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24'%3E%3Cpath d='M4 2l15 11-6.5.8L16 21l-3 1.3-3.4-7.2L4 19z' fill='%23000' stroke='%23fff' stroke-width='1.3'/%3E%3C/svg%3E") 6 3, auto !important; }
html.mai-a11y-still *, html.mai-a11y-still *::before, html.mai-a11y-still *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
html.mai-a11y-still .mai-reveal, html.mai-a11y-contrast .mai-reveal { opacity: 1 !important; transform: none !important; }
