/* ==========================================================================
   מרכז הנגישות
   שני חלקים: עיצוב הרכיב עצמו, ואחריו ההתאמות שהוא מחיל על האתר.
   הרכיב מודד את עצמו ב-px בכוונה, כדי שהגדלת הטקסט של האתר
   לא תגדיל גם את התפריט שמנהל אותה.
   ========================================================================== */

.cb-a11y{
  --a-blue:#0B4F8A; --a-blue-d:#083A66; --a-ink:#0F172A; --a-ink-2:#475569;
  --a-line:#D8DFE7; --a-bg:#fff; --a-soft:#F4F7FA;
  font-family:"Heebo","Rubik","Segoe UI",Arial,sans-serif;
  font-size:14px; line-height:1.45; direction:rtl;
}

/* ---------- הכפתור הצף ---------- */
.cb-a11y-fab{
  position:fixed; inset-block-end:24px; inset-inline-start:24px; z-index:9998;
  inline-size:56px; block-size:56px; border-radius:50%;
  border:2px solid rgba(255,255,255,.85); background:var(--a-blue); color:#fff;
  display:grid; place-items:center; cursor:pointer; padding:0;
  box-shadow:0 6px 18px rgba(6,42,74,.34);
  transition:background .18s ease, transform .18s ease;
}
.cb-a11y-fab:hover,.cb-a11y-fab:focus-visible{background:var(--a-blue-d); transform:scale(1.06)}
.cb-a11y-fab:focus-visible{outline:3px solid #FFC24A; outline-offset:3px}
.cb-a11y-fab svg{inline-size:28px; block-size:28px}

/* ---------- הפאנל ---------- */
.cb-a11y-panel{
  position:fixed; inset-block-end:92px; inset-inline-start:24px; z-index:9999;
  inline-size:min(380px, calc(100vw - 32px)); max-block-size:min(78vh, 720px);
  background:var(--a-bg); color:var(--a-ink);
  border:1px solid var(--a-line); border-radius:18px;
  box-shadow:0 24px 60px -12px rgba(6,42,74,.34), 0 0 0 1px rgba(6,42,74,.04);
  display:flex; flex-direction:column; overflow:hidden;
}
.cb-a11y-panel[hidden]{display:none!important}

.cb-a11y-head{
  display:flex; align-items:flex-start; justify-content:space-between; gap:12px;
  padding:16px 18px; background:var(--a-blue); color:#fff;
}
.cb-a11y-head h2{
  margin:0; font-size:17px; font-weight:800; color:#fff;
  display:flex; align-items:center; gap:8px;
}
.cb-a11y-head p{margin:3px 0 0; font-size:12px; color:#CBE0F2}
.cb-a11y-x{
  flex:none; inline-size:34px; block-size:34px; border-radius:9px; cursor:pointer;
  border:1px solid rgba(255,255,255,.4); background:rgba(255,255,255,.12); color:#fff;
  display:grid; place-items:center;
}
.cb-a11y-x:hover{background:rgba(255,255,255,.24)}
.cb-a11y-x:focus-visible{outline:3px solid #FFC24A; outline-offset:2px}

.cb-a11y-body{overflow-y:auto; overscroll-behavior:contain; padding:4px 14px 14px}
.cb-a11y-body:focus{outline:none}

.cb-a11y-sec{padding:14px 0; border-block-end:1px solid var(--a-line)}
.cb-a11y-sec:last-child{border-block-end:0}
.cb-a11y-sec h3{
  margin:0 0 4px; font-size:13px; font-weight:800; color:var(--a-blue);
  display:flex; align-items:center; gap:6px; letter-spacing:.01em;
}
.cb-a11y-note{margin:0 0 10px; font-size:11.5px; color:var(--a-ink-2)}

.cb-a11y-grid{display:grid; grid-template-columns:1fr 1fr; gap:7px}
.cb-a11y-grid-1{grid-template-columns:1fr}

/* ---------- כפתור אפשרות ---------- */
.cb-a11y-opt{
  position:relative; display:flex; align-items:center; gap:7px;
  padding:10px 11px; min-block-size:44px;
  border:1.5px solid var(--a-line); border-radius:11px;
  background:var(--a-bg); color:var(--a-ink);
  font:inherit; font-weight:600; font-size:12.5px; text-align:start;
  cursor:pointer; transition:border-color .15s ease, background .15s ease;
}
.cb-a11y-opt svg{flex:none; color:var(--a-ink-2)}
.cb-a11y-lbl{flex:1 1 auto; line-height:1.25}
.cb-a11y-opt:hover{border-color:#8FB4D4; background:var(--a-soft)}
.cb-a11y-opt:focus-visible{outline:3px solid var(--a-blue); outline-offset:2px}
.cb-a11y-opt[aria-checked="true"],
.cb-a11y-opt[aria-pressed="true"]{
  border-color:var(--a-blue); background:#E8F1F9; color:var(--a-blue-d);
}
.cb-a11y-opt[aria-checked="true"] svg,
.cb-a11y-opt[aria-pressed="true"] svg{color:var(--a-blue)}

/* נורית מצב למתגים, סימן חזותי נוסף מלבד הצבע */
.cb-a11y-dot{
  flex:none; inline-size:16px; block-size:16px; border-radius:50%;
  border:1.5px solid var(--a-line); background:var(--a-bg);
}
.cb-a11y-opt[aria-checked="true"] .cb-a11y-dot{
  border-color:var(--a-blue); background:var(--a-blue);
  box-shadow:inset 0 0 0 3px #fff;
}

/* ---------- פרופילים ---------- */
.cb-a11y-profile{
  display:flex; align-items:center; gap:10px; text-align:start;
  padding:11px 12px; border:1.5px solid var(--a-line); border-radius:12px;
  background:var(--a-bg); color:var(--a-ink); font:inherit; cursor:pointer;
  transition:border-color .15s ease, background .15s ease;
}
.cb-a11y-profile svg{flex:none; color:var(--a-blue)}
.cb-a11y-profile span{display:flex; flex-direction:column; gap:1px; min-inline-size:0}
.cb-a11y-profile strong{font-size:13px; font-weight:800}
.cb-a11y-profile small{font-size:11px; color:var(--a-ink-2); line-height:1.3}
.cb-a11y-profile:hover{border-color:#8FB4D4; background:var(--a-soft)}
.cb-a11y-profile:focus-visible{outline:3px solid var(--a-blue); outline-offset:2px}
.cb-a11y-profile[aria-pressed="true"]{border-color:var(--a-blue); background:#E8F1F9}
.cb-a11y-profile[aria-pressed="true"]::after{
  content:"✓"; margin-inline-start:auto; font-weight:900; color:var(--a-blue); font-size:16px;
}

/* ---------- מדרגות ---------- */
.cb-a11y-stepper{
  display:flex; align-items:center; gap:6px; margin-block-end:7px;
  border:1.5px solid var(--a-line); border-radius:11px; padding:5px 6px; background:var(--a-bg);
}
.cb-a11y-stepper button{
  flex:none; inline-size:38px; block-size:38px; border-radius:9px; cursor:pointer;
  border:1px solid var(--a-line); background:var(--a-soft); color:var(--a-blue-d);
  display:grid; place-items:center;
}
.cb-a11y-stepper button:hover{background:#E8F1F9; border-color:#8FB4D4}
.cb-a11y-stepper button:focus-visible{outline:3px solid var(--a-blue); outline-offset:2px}
.cb-a11y-stepval{flex:1 1 auto; text-align:center; min-inline-size:0}
.cb-a11y-stepval strong{display:block; font-size:12.5px; font-weight:700}
.cb-a11y-stepval em{display:block; font-style:normal; font-size:11.5px; color:var(--a-blue); font-weight:800}

/* ---------- ניווט בכותרות ---------- */
.cb-a11y-toc{max-block-size:190px; overflow-y:auto; border:1px solid var(--a-line); border-radius:10px}
.cb-a11y-toc a{
  display:block; padding:8px 11px; font-size:12.5px; color:var(--a-ink);
  text-decoration:none; border-block-end:1px solid #EDF1F5;
}
.cb-a11y-toc a:last-child{border-block-end:0}
.cb-a11y-toc a:hover{background:var(--a-soft); color:var(--a-blue-d)}
.cb-a11y-toc a:focus-visible{outline:3px solid var(--a-blue); outline-offset:-3px}
.cb-a11y-toc a[data-lvl="3"]{padding-inline-start:26px; font-size:12px; color:var(--a-ink-2)}
.cb-a11y-toc a[data-lvl="4"]{padding-inline-start:38px; font-size:11.5px; color:var(--a-ink-2)}
.cb-a11y-toc p{margin:0; padding:10px; font-size:12px; color:var(--a-ink-2)}

/* ---------- תחתית ---------- */
.cb-a11y-foot{padding:12px 16px 14px; border-block-start:1px solid var(--a-line); background:var(--a-soft)}
.cb-a11y-reset{
  inline-size:100%; min-block-size:44px; border-radius:10px; cursor:pointer;
  border:1.5px solid #C7D3DF; background:var(--a-bg); color:var(--a-ink);
  font:inherit; font-weight:800; font-size:13px;
  display:flex; align-items:center; justify-content:center; gap:7px;
}
.cb-a11y-reset:hover{background:#FEF2F2; border-color:#E4A6A6; color:#991B1B}
.cb-a11y-reset:focus-visible{outline:3px solid var(--a-blue); outline-offset:2px}
.cb-a11y-links{margin-block-start:9px; text-align:center; font-size:12px}
.cb-a11y-links a{color:var(--a-blue); font-weight:700}
.cb-a11y-kbd{margin:8px 0 0; text-align:center; font-size:10.5px; color:var(--a-ink-2)}
.cb-a11y-kbd kbd{
  font-family:inherit; font-size:10px; font-weight:800; padding:1px 5px;
  border:1px solid var(--a-line); border-block-end-width:2px; border-radius:4px; background:#fff;
}

/* ---------- עזרי קריאה ---------- */
.cb-a11y-guide{
  position:fixed; inset-inline:0; block-size:0; z-index:9990; display:none;
  border-block-start:3px solid #B45309; box-shadow:0 0 0 1px rgba(255,255,255,.8);
  pointer-events:none;
}
html.a11y-guide .cb-a11y-guide{display:block}

.cb-a11y-mask{position:fixed; inset:0; z-index:9989; display:none; pointer-events:none}
html.a11y-mask .cb-a11y-mask{display:block}
.cb-a11y-mask span{position:absolute; inset-inline:0; background:rgba(3,14,26,.72)}
.cb-a11y-mask-t{inset-block-start:0}
.cb-a11y-mask-b{inset-block-end:0}

/* ---------- נייד ---------- */
@media (max-width:900px){
  .cb-a11y-fab{inset-block-end:82px; inset-inline-start:12px; inline-size:50px; block-size:50px}
  .cb-a11y-fab svg{inline-size:24px; block-size:24px}
  .cb-a11y-panel{
    inset-inline:8px; inset-block-end:8px; inline-size:auto;
    max-block-size:86vh; border-radius:16px;
  }
}

/* ==========================================================================
   ההתאמות שהרכיב מחיל על האתר
   ========================================================================== */

/* ---------- טקסט ---------- */
html.a11y-readable body,
html.a11y-readable body *:not(.cb-a11y):not(.cb-a11y *){
  font-family:Verdana,Tahoma,"Segoe UI",Arial,sans-serif!important;
}
html[data-a11y-space="1"] body :not(.cb-a11y):not(.cb-a11y *){letter-spacing:.06em!important; word-spacing:.14em!important}
html[data-a11y-space="2"] body :not(.cb-a11y):not(.cb-a11y *){letter-spacing:.11em!important; word-spacing:.26em!important}
html[data-a11y-space="3"] body :not(.cb-a11y):not(.cb-a11y *){letter-spacing:.17em!important; word-spacing:.4em!important}
html[data-a11y-line="1"] body :not(.cb-a11y):not(.cb-a11y *){line-height:1.8!important}
html[data-a11y-line="2"] body :not(.cb-a11y):not(.cb-a11y *){line-height:2.2!important}
html[data-a11y-line="3"] body :not(.cb-a11y):not(.cb-a11y *){line-height:2.7!important}

html.a11y-align body :not(.cb-a11y):not(.cb-a11y *){text-align:right!important}

html.a11y-headings body :is(h1,h2,h3,h4):not(.cb-a11y *){
  background:#FEF3C7!important; color:#3F2A05!important;
  border-inline-start:5px solid #B45309!important;
  padding:.35em .6em!important; border-radius:6px;
}

/* תיאורי תמונות מוצגים כטקסט מתחת לתמונה */
html.a11y-alts body img[alt]:not([alt=""]):not(.cb-a11y *){
  outline:2px dashed #B45309; outline-offset:2px;
}
html.a11y-alts .cb-a11y-altcap{
  display:block; background:#FEF3C7; color:#3F2A05; font-size:.85em;
  padding:.35em .6em; border:1px solid #E7C98B; border-radius:6px; margin-block-start:4px;
}

/* ---------- צבע ---------- */
html.a11y-fx body > *:not(.cb-a11y){filter:var(--a11y-fx)}
html.a11y-fx-invert{--a11y-fx:invert(1) hue-rotate(180deg)}
html.a11y-fx-gray{--a11y-fx:grayscale(1)}
html.a11y-fx-low{--a11y-fx:saturate(.45)}
html.a11y-fx-high{--a11y-fx:saturate(1.85) contrast(1.05)}
/* תמונות חוזרות לצבען המקורי בהיפוך, אחרת הן נראות כנגטיב */
html.a11y-fx-invert body img:not(.cb-a11y *),
html.a11y-fx-invert body video:not(.cb-a11y *){filter:invert(1) hue-rotate(180deg)}

/* ניגודיות כהה */
html.a11y-dark body{background:#000!important; color:#FFF!important}
html.a11y-dark body *:not(.cb-a11y):not(.cb-a11y *){
  background-color:transparent!important; background-image:none!important;
  color:#FFF!important; border-color:#FFF!important; box-shadow:none!important; text-shadow:none!important;
}
html.a11y-dark body :is(section,header,footer,div,article,aside,main):not(.cb-a11y):not(.cb-a11y *){background:#000!important}
html.a11y-dark body a:not(.cb-a11y *){color:#FFE14D!important; text-decoration:underline!important}
html.a11y-dark body :is(button,.btn,input,select,textarea):not(.cb-a11y *){
  background:#000!important; color:#FFF!important; border:2px solid #FFF!important;
}
html.a11y-dark body img:not(.cb-a11y *){filter:grayscale(.2) contrast(1.1)}
html.a11y-dark body ::placeholder{color:#CFCFCF!important}

/* ניגודיות בהירה */
html.a11y-light body{background:#FFF!important; color:#000!important}
html.a11y-light body *:not(.cb-a11y):not(.cb-a11y *){
  background-color:transparent!important; background-image:none!important;
  color:#000!important; border-color:#000!important; box-shadow:none!important; text-shadow:none!important;
}
html.a11y-light body :is(section,header,footer,div,article,aside,main):not(.cb-a11y):not(.cb-a11y *){background:#FFF!important}
html.a11y-light body a:not(.cb-a11y *){color:#0000C4!important; text-decoration:underline!important}
html.a11y-light body :is(button,.btn,input,select,textarea):not(.cb-a11y *){
  background:#FFF!important; color:#000!important; border:2px solid #000!important;
}

/* ---------- קריאה וניווט ---------- */
html.a11y-links body a:not(.cb-a11y *){
  text-decoration:underline!important; text-underline-offset:3px;
  text-decoration-thickness:2px!important; font-weight:700!important;
}
html.a11y-links body a:not(.cb-a11y *):hover{background:#FEF3C7!important; color:#3F2A05!important}

html.a11y-focus body :is(a,button,input,select,textarea,summary,[tabindex]):not(.cb-a11y *):focus{
  outline:4px solid #B45309!important; outline-offset:3px!important;
  background:#FEF3C7!important; color:#3F2A05!important;
}

html.a11y-bigtargets body :is(a.btn,button,.btn,.cta-duo-item,input[type="submit"]):not(.cb-a11y *){
  min-block-size:52px!important; padding-inline:1.3em!important;
}
html.a11y-bigtargets body :is(a.btn,button,.btn):not(.cb-a11y *){align-items:center}

html.a11y-noanim body *:not(.cb-a11y):not(.cb-a11y *){
  animation:none!important; transition:none!important; scroll-behavior:auto!important;
}
html.a11y-noanim body :is(video,.fab-pulse):not(.cb-a11y *){animation-play-state:paused!important}

html.a11y-noimg body :is(img,picture,svg:not(.cb-a11y-i),video):not(.cb-a11y *){
  visibility:hidden!important;
}
html.a11y-noimg body :is(figure,.gallery,.hero-photo):not(.cb-a11y *){background:#E2E8F0!important}
html.a11y-noimg body [style*="background-image"]:not(.cb-a11y *){background-image:none!important}

/* סמן גדול */
html.a11y-cursor body,
html.a11y-cursor body *:not(.cb-a11y):not(.cb-a11y *){
  cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='54' height='54' viewBox='0 0 54 54'%3E%3Cpath d='M9 4 L9 43 L18 34 L25 50 L32 47 L25 31 L39 31 Z' fill='%23000' stroke='%23fff' stroke-width='3'/%3E%3C/svg%3E") 6 4, auto!important;
}
html.a11y-cursor body :is(a,button,[role="button"],input,select,label):not(.cb-a11y *){
  cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='54' height='54' viewBox='0 0 54 54'%3E%3Cpath d='M18 24 V10a4 4 0 0 1 8 0v12m0-2a4 4 0 0 1 8 0v4m0-2a4 4 0 0 1 8 0v12a12 12 0 0 1-12 12h-3a12 12 0 0 1-12-12v-6a4 4 0 0 1 8 0' fill='%23000' stroke='%23fff' stroke-width='3'/%3E%3C/svg%3E") 20 6, pointer!important;
}

/* מכבדים את העדפת המערכת גם בלי לגעת בתפריט */
@media (prefers-reduced-motion:reduce){
  .cb-a11y-fab,.cb-a11y-opt,.cb-a11y-profile{transition:none}
}

/* בהדפסה הרכיב לא מודפס */
@media print{ .cb-a11y{display:none!important} }
