/* ============================================================
   רכיב נגישות — עושים תאטרון
   הועבר מהרכיב שנבנה במערכת ההכשרה (hotam-training),
   שוכתב כ-CSS/JS עצמאי ללא React וללא ספרייה חיצונית.
   הצבעים הותאמו לפלטת האתר.
   ============================================================ */

/* --- שכבת ההשפעות --- */
html { font-size: calc(16px * var(--a11y-font-scale, 1)); }

.skip-link{
  position:fixed; top:-100px; inset-inline-start:16px;
  background:var(--purple,#6A3AB2); color:#fff;
  padding:10px 18px; border-radius:8px; font-weight:700;
  font-family:'Heebo',sans-serif; text-decoration:none; z-index:10000;
  transition:top 200ms ease;
}
.skip-link:focus{ top:16px; outline:3px solid var(--sun,#FFC928); outline-offset:2px; }

/* ניגודיות גבוהה */
html[data-a11y-high-contrast] body{ background:#fff !important; color:#000 !important; }
html[data-a11y-high-contrast] h1,
html[data-a11y-high-contrast] h2,
html[data-a11y-high-contrast] h3,
html[data-a11y-high-contrast] p,
html[data-a11y-high-contrast] li,
html[data-a11y-high-contrast] label,
html[data-a11y-high-contrast] figcaption,
html[data-a11y-high-contrast] footer,
html[data-a11y-high-contrast] blockquote{ color:#000 !important; }
html[data-a11y-high-contrast] .hero,
html[data-a11y-high-contrast] .parties,
html[data-a11y-high-contrast] .only,
html[data-a11y-high-contrast] .stage,
html[data-a11y-high-contrast] .reel,
html[data-a11y-high-contrast] .lbox,
html[data-a11y-high-contrast] footer.site,
html[data-a11y-high-contrast] .hero-band{
  background:#000 !important; color:#fff !important;
}
html[data-a11y-high-contrast] .hero *,
html[data-a11y-high-contrast] .parties *,
html[data-a11y-high-contrast] .only *,
html[data-a11y-high-contrast] footer.site *,
html[data-a11y-high-contrast] .stage *,
html[data-a11y-high-contrast] .reel *,
html[data-a11y-high-contrast] .lbox .lcap,
html[data-a11y-high-contrast] .hero-band *{ color:#fff !important; }
html[data-a11y-high-contrast] .lbox .x{ background:#fff !important; color:#000 !important; border:2px solid #000 !important; }
html[data-a11y-high-contrast] .numbers{ background:#fff !important; border-block:3px solid #000; }
html[data-a11y-high-contrast] .num,
html[data-a11y-high-contrast] .num-label,
html[data-a11y-high-contrast] .numbers .source{ color:#000 !important; }
html[data-a11y-high-contrast] .btn-main{ background:#000 !important; color:#fff !important; box-shadow:none !important; }
html[data-a11y-high-contrast] .card,
html[data-a11y-high-contrast] .gain,
html[data-a11y-high-contrast] .member,
html[data-a11y-high-contrast] .info-box,
html[data-a11y-high-contrast] blockquote,
html[data-a11y-high-contrast] form{ background:#fff !important; border:2px solid #000 !important; }
html[data-a11y-high-contrast] .gain ul li::before{ background:#000 !important; opacity:1 !important; }
html[data-a11y-high-contrast] *{ text-shadow:none !important; box-shadow:none !important; }
html[data-a11y-high-contrast] a{ text-decoration:underline !important; }

/* תצוגה חד-גונית */
html[data-a11y-monochrome]{ filter:grayscale(1) contrast(1.1); }

/* הדגשת קישורים */
html[data-a11y-highlight-links] a{
  text-decoration:underline !important;
  outline:2px dashed currentColor !important;
  outline-offset:2px !important;
}

/* עצירת אנימציות */
html[data-a11y-stop-animations] *,
html[data-a11y-stop-animations] *::before,
html[data-a11y-stop-animations] *::after{
  animation:none !important; transition:none !important; scroll-behavior:auto !important;
}

/* סמן גדול */
html[data-a11y-big-cursor],
html[data-a11y-big-cursor] *{
  cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'><path fill='%23000' stroke='%23fff' stroke-width='2' d='M8 4 L8 38 L16 30 L22 42 L28 40 L22 28 L34 28 Z'/></svg>") 4 4, auto !important;
}

/* פונט קריא + מרווחים */
html[data-a11y-readable-font] body,
html[data-a11y-readable-font] p,
html[data-a11y-readable-font] li,
html[data-a11y-readable-font] span,
html[data-a11y-readable-font] div,
html[data-a11y-readable-font] a,
html[data-a11y-readable-font] button{
  letter-spacing:.04em !important; word-spacing:.12em !important;
  line-height:1.8 !important; font-weight:500 !important;
}

/* --- ממשק הסרגל --- */
.a11y-toggle{
  position:fixed; inset-inline-end:16px; bottom:16px; z-index:9998;
  width:52px; height:52px; border-radius:50%; border:none; cursor:pointer;
  background:var(--purple,#6A3AB2); color:#fff;
  display:grid; place-items:center;
  box-shadow:0 6px 18px rgba(0,0,0,.32);
  transition:transform .18s;
}
.a11y-toggle:hover{ transform:scale(1.08); }
.a11y-toggle:focus-visible{ outline:3px solid var(--sun,#FFC928); outline-offset:3px; }
.a11y-toggle svg{ width:28px; height:28px; }

.a11y-panel{
  position:fixed; inset-inline-end:16px; bottom:78px; z-index:9999;
  width:min(310px, calc(100vw - 32px)); max-height:min(76vh, 620px); overflow-y:auto;
  background:#fff; color:#2B2140; border:1px solid #EAE4D9; border-radius:16px;
  box-shadow:0 18px 44px rgba(0,0,0,.28); padding:1rem 1.1rem;
  font-family:'Assistant','Heebo',Arial,sans-serif; font-size:15px; line-height:1.6;
}
.a11y-panel[hidden]{ display:none; }
.a11y-panel h2{
  font-family:'Heebo',sans-serif; font-size:1.1rem; font-weight:900;
  color:var(--purple-deep,#43217C); margin:0 0 .1rem;
}
.a11y-panel .a11y-head{ display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-bottom:.7rem; }
.a11y-close{
  background:none; border:none; font-size:1.5rem; line-height:1; cursor:pointer;
  color:#6B6478; padding:.1rem .3rem; border-radius:6px;
}
.a11y-close:hover{ background:#F4EEFB; }
.a11y-close:focus-visible{ outline:2px solid var(--purple,#6A3AB2); outline-offset:2px; }

.a11y-row{ display:flex; align-items:center; justify-content:space-between; gap:.6rem; padding-block:.42rem; }
.a11y-row + .a11y-row{ border-top:1px solid #F0EBE2; }
.a11y-row .lbl{ font-weight:600; }
.a11y-stepper{ display:flex; align-items:center; gap:.4rem; }
.a11y-stepper button{
  width:34px; height:34px; border-radius:9px; border:2px solid var(--purple,#6A3AB2);
  background:#fff; color:var(--purple,#6A3AB2); font-family:'Heebo',sans-serif;
  font-weight:700; font-size:1rem; cursor:pointer;
}
.a11y-stepper button:hover{ background:#F4EEFB; }
.a11y-stepper button:focus-visible{ outline:3px solid var(--sun,#FFC928); outline-offset:2px; }
.a11y-stepper .val{ min-width:52px; text-align:center; font-variant-numeric:tabular-nums; font-weight:700; }

.a11y-switch{
  position:relative; width:46px; height:26px; flex:0 0 46px; border-radius:999px;
  border:2px solid #CFC7DE; background:#EFEAF6; cursor:pointer; padding:0;
  transition:background-color .18s, border-color .18s;
}
.a11y-switch::after{
  content:""; position:absolute; top:2px; inset-inline-start:2px;
  width:18px; height:18px; border-radius:50%; background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.3); transition:transform .18s;
}
.a11y-switch[aria-checked="true"]{ background:var(--purple,#6A3AB2); border-color:var(--purple-deep,#43217C); }
.a11y-switch[aria-checked="true"]::after{ transform:translateX(-20px); }
html[dir="ltr"] .a11y-switch[aria-checked="true"]::after{ transform:translateX(20px); }
.a11y-switch:focus-visible{ outline:3px solid var(--sun,#FFC928); outline-offset:2px; }

.a11y-foot{ margin-top:.8rem; display:flex; gap:.6rem; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.a11y-reset{
  border:2px solid #CFC7DE; background:#fff; color:#2B2140; border-radius:999px;
  padding:.38rem 1rem; font-family:'Heebo',sans-serif; font-weight:700; font-size:.86rem; cursor:pointer;
}
.a11y-reset:hover{ background:#F4EEFB; }
.a11y-reset:focus-visible{ outline:3px solid var(--sun,#FFC928); outline-offset:2px; }
.a11y-foot a{ font-size:.86rem; font-weight:700; color:var(--purple,#6A3AB2); }

@media print{ .a11y-toggle, .a11y-panel, .skip-link{ display:none !important; } }
