/* ================================================
   נגישות עברית Pro v2 — Desktop/Mobile Pos + Keyboard Focus & Skip Link
   ================================================ */

#acc-widget {
  --p:   #1a73e8;
  --pl:  rgba(26, 115, 232, 0.08);
  --pw:  470px;
  
  --btn-size:  54px;
  --icon-size: 30px;
  --offset-y:  24px;
  --offset-x:  24px;
  --offset-y-mob: 24px;
  --offset-x-mob: 24px;
  
  --bg:  #ffffff;
  --bg2: #f2f4f8;
  --tx:  #1a1a2e;
  --tx2: #64748b;
  --bd:  #dde1ea;
  --r:   8px;
  all: initial;
  direction: rtl;
  font-size: 14px !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  color: var(--tx) !important;
}

#acc-widget[dir="ltr"] { direction: ltr !important; }

#acc-widget *, #acc-widget *::before, #acc-widget *::after {
  box-sizing: border-box !important; font-family: inherit !important;
  margin: 0 !important; padding: 0 !important; border: none !important; background: none !important;
  color: inherit !important; text-decoration: none !important; list-style: none !important;
  outline: none !important; text-align: inherit !important;
}

/* ── קישור דלג לתוכן (יופיע למעלה בצד ימין בפוקוס) ── */
.acc-skip-link {
  position: fixed !important; /* <--- שונה ל-fixed כדי שיהיה סטיקי תמיד במסך */
  top: -1000px !important;
  right: -1000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  z-index: 2147483647 !important;
  background: var(--acc-primary, #1a73e8) !important;
  color: #fff !important;
  padding: 12px 24px !important;
  font-size: 16px !important;
  font-family: sans-serif !important;
  font-weight: bold !important;
  text-decoration: none !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2) !important; /* הוספתי צל קטן שיראה יותר טוב מעל האתר */
}
.acc-skip-link:focus {
  top: 15px !important; /* קצת יותר מרווח מלמעלה */
  right: 15px !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  outline: 3px solid #000 !important;
  outline-offset: 2px !important;
}
/* ── Toggle button base ── */
#acc-toggle {
  all: unset !important; position: fixed !important; z-index: 2147483640 !important;
  width: var(--btn-size) !important; height: var(--btn-size) !important; border-radius: 50% !important;
  background: var(--p) !important; cursor: pointer !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.25) !important; transition: transform .18s !important;
}
#acc-toggle svg { width: var(--icon-size) !important; height: var(--icon-size) !important; display: block !important; }
#acc-toggle:hover { transform: scale(1.08) !important; }

/* ── Desktop Positions ── */
@media (min-width: 769px) {
  #acc-widget.desk-bottom-right #acc-toggle { bottom: var(--offset-y) !important; right: var(--offset-x) !important; top: auto; left: auto; }
  #acc-widget.desk-bottom-left #acc-toggle  { bottom: var(--offset-y) !important; left: var(--offset-x) !important; top: auto; right: auto; }
  #acc-widget.desk-top-right #acc-toggle    { top: var(--offset-y) !important; right: var(--offset-x) !important; bottom: auto; left: auto; }
  #acc-widget.desk-top-left #acc-toggle     { top: var(--offset-y) !important; left: var(--offset-x) !important; bottom: auto; right: auto; }
  #acc-widget.desk-middle-right #acc-toggle { top: 50% !important; transform: translateY(-50%) !important; right: var(--offset-x) !important; bottom: auto; left: auto; }
  #acc-widget.desk-middle-left #acc-toggle  { top: 50% !important; transform: translateY(-50%) !important; left: var(--offset-x) !important; bottom: auto; right: auto; }
  #acc-widget.desk-middle-right #acc-toggle:hover, #acc-widget.desk-middle-left #acc-toggle:hover { transform: translateY(-50%) scale(1.08) !important; }
}

/* ── Mobile Positions ── */
@media (max-width: 768px) {
  #acc-widget.mob-bottom-right #acc-toggle { bottom: var(--offset-y-mob) !important; right: var(--offset-x-mob) !important; top: auto; left: auto; transform: none; }
  #acc-widget.mob-bottom-left #acc-toggle  { bottom: var(--offset-y-mob) !important; left: var(--offset-x-mob) !important; top: auto; right: auto; transform: none; }
  #acc-widget.mob-top-right #acc-toggle    { top: var(--offset-y-mob) !important; right: var(--offset-x-mob) !important; bottom: auto; left: auto; transform: none; }
  #acc-widget.mob-top-left #acc-toggle     { top: var(--offset-y-mob) !important; left: var(--offset-x-mob) !important; bottom: auto; right: auto; transform: none; }
  #acc-widget.mob-middle-right #acc-toggle { top: 50% !important; transform: translateY(-50%) !important; right: var(--offset-x-mob) !important; bottom: auto; left: auto; }
  #acc-widget.mob-middle-left #acc-toggle  { top: 50% !important; transform: translateY(-50%) !important; left: var(--offset-x-mob) !important; bottom: auto; right: auto; }
  #acc-widget.mob-middle-right #acc-toggle:hover, #acc-widget.mob-middle-left #acc-toggle:hover { transform: translateY(-50%) scale(1.08) !important; }
}

#acc-overlay { 
  all: unset !important; position: fixed !important; inset: 0 !important; 
  background: rgba(0,0,0,.35) !important; z-index: 2147483641 !important; 
  opacity: 0 !important; visibility: hidden !important; pointer-events: none !important;
  transition: opacity .3s ease, visibility .3s ease !important;
}
#acc-overlay.acc-open { opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; }

/* ── Panel Base ── */
#acc-panel {
  all: unset !important; position: fixed !important; top: 0 !important; bottom: 0 !important;
  width: var(--pw) !important; background: var(--bg2) !important; z-index: 2147483642 !important;
  display: flex !important; flex-direction: column !important;
  transition: transform .3s cubic-bezier(.4,0,.2,1), visibility .3s, opacity .3s !important;
  overflow: hidden !important; color: var(--tx) !important;
  
  right: 0 !important; left: auto !important; box-shadow: -2px 0 32px rgba(0,0,0,.14) !important;
  transform: translateX(106%) !important;
  opacity: 0 !important; visibility: hidden !important; pointer-events: none !important;
}
#acc-panel.acc-open { transform: translateX(0) !important; opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; }

/* Desktop Left Side Overrides */
@media (min-width: 769px) {
  #acc-widget.desk-bottom-left #acc-panel, #acc-widget.desk-top-left #acc-panel, #acc-widget.desk-middle-left #acc-panel { 
    left: 0 !important; right: auto !important; box-shadow: 2px 0 32px rgba(0,0,0,.14) !important; transform: translateX(-106%) !important; 
  }
  #acc-widget.desk-bottom-left #acc-panel.acc-open, #acc-widget.desk-top-left #acc-panel.acc-open, #acc-widget.desk-middle-left #acc-panel.acc-open { 
    transform: translateX(0) !important; 
  }
}
/* Mobile Left Side Overrides */
@media (max-width: 768px) {
  #acc-widget.mob-bottom-left #acc-panel, #acc-widget.mob-top-left #acc-panel, #acc-widget.mob-middle-left #acc-panel { 
    left: 0 !important; right: auto !important; box-shadow: 2px 0 32px rgba(0,0,0,.14) !important; transform: translateX(-106%) !important; 
  }
  #acc-widget.mob-bottom-left #acc-panel.acc-open, #acc-widget.mob-top-left #acc-panel.acc-open, #acc-widget.mob-middle-left #acc-panel.acc-open { 
    transform: translateX(0) !important; 
  }
}

/* ── Header ── */
#acc-panel .acc-header { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 0 14px !important; height: 54px !important; background: var(--p) !important; color: #fff !important; flex-shrink: 0 !important; gap: 8px !important; }
#acc-panel .acc-hdr-title { flex: 1 !important; font-size: 16px !important; font-weight: 700 !important; text-align: center !important; }
#acc-panel .acc-hdr-btns { display: flex !important; gap: 8px !important; }
#acc-panel .acc-hdr-icon { all: unset !important; width: 28px !important; height: 28px !important; border-radius: 50% !important; background: rgba(0,0,0,.15) !important; cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: background .15s !important; }
#acc-panel .acc-hdr-icon svg { width: 14px !important; height: 14px !important; stroke: #fff !important; fill: none !important; stroke-width: 2 !important; }
#acc-panel .acc-hdr-icon:hover { background: rgba(0,0,0,.25) !important; }

/* ── Body ── */
#acc-panel .acc-body { flex: 1 !important; overflow-y: auto !important; padding: 18px 20px !important; }
#acc-panel .acc-body::-webkit-scrollbar { width: 4px !important; }
#acc-panel .acc-body::-webkit-scrollbar-thumb { background: rgba(0,0,0,.12) !important; border-radius: 2px !important; }

/* ── Lang ── */
#acc-panel .acc-language { background: var(--bg) !important; border-radius: var(--r) !important; border: 1px solid var(--bd) !important; padding: 12px 16px !important; margin-bottom: 24px !important; display: flex !important; align-items: center !important; gap: 10px !important; cursor: pointer !important; }
#acc-panel .acc-lang-info { flex: 1 !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; gap: 8px !important; }
#acc-panel .acc-lang-name { font-size: 14px !important; font-weight: 600 !important; color: var(--tx) !important; }
#acc-panel .acc-lang-short { font-size: 12px !important; font-weight: 600 !important; background: var(--bg2) !important; padding: 2px 6px !important; border-radius: 4px !important; color: var(--tx) !important; }
#acc-panel .acc-lang-arrow svg { width: 16px !important; height: 16px !important; stroke: var(--tx2) !important; fill: none !important; stroke-width: 2 !important; }

/* ── Grid ── */
#acc-panel .acc-sec-title { font-size: 15px !important; font-weight: 700 !important; color: var(--tx) !important; padding: 0 0 12px !important; display: block !important; text-align: right !important; }
#acc-panel .acc-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 14px !important; margin-bottom: 30px !important; }

/* ── Cards ── */
#acc-panel .acc-card {
  all: unset !important; background: var(--bg) !important; border-radius: var(--r) !important; border: 1px solid var(--bd) !important;
  display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important;
  cursor: pointer !important; text-align: center !important; transition: .15s !important; box-sizing: border-box !important;
  position: relative !important; height: 109px !important; padding: 0 12px !important; gap: 10px !important;
}
#acc-panel .acc-card:hover:not(.acc-font-card) { border-color: var(--p) !important; box-shadow: 0 2px 8px var(--pl) !important; }
#acc-panel .acc-card[aria-pressed="true"] { border-color: var(--p) !important; border-width: 1.5px !important; }

#acc-panel .acc-card[aria-pressed="true"]::after {
  content: '' !important; position: absolute !important; top: 8px !important; right: 8px !important;
  width: 18px !important; height: 18px !important; background-color: var(--p) !important; border-radius: 50% !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-size: 10px !important; background-repeat: no-repeat !important; background-position: center !important; z-index: 2 !important;
}
#acc-panel .acc-card.acc-font-card::after { display: none !important; }

#acc-panel .acc-card-icon { width: 34px !important; height: 34px !important; display: flex !important; align-items: center !important; justify-content: center !important; color: var(--tx) !important; }
#acc-panel .acc-card[aria-pressed="true"] .acc-card-icon { color: var(--p) !important; }
#acc-panel .acc-card-icon svg { width: 100% !important; height: 100% !important; display: block !important; }
#acc-panel .acc-card-lbl { font-size: 13px !important; font-weight: 500 !important; color: var(--tx) !important; line-height: 1.25 !important; }
#acc-panel .acc-card[aria-pressed="true"] .acc-card-lbl { color: var(--p) !important; font-weight: 600 !important; }

/* ── Font Card ── */
#acc-panel .acc-font-card { grid-column: span 2 !important; cursor: default !important; padding: 0 12px !important; height: 109px !important; justify-content: center !important; }
#acc-panel .acc-font-header { display: flex !important; align-items: center !important; justify-content: center !important; gap: 12px !important; width: 100% !important; height: 36px !important; margin-bottom: 10px !important; }
#acc-panel .acc-font-tt { font-family: Georgia, 'Times New Roman', serif !important; color: var(--tx) !important; display: flex !important; align-items: baseline !important; direction: ltr !important; }
#acc-panel .acc-font-tt span:first-child { font-size: 28px !important; line-height: 1 !important; }
#acc-panel .acc-font-tt span:last-child { font-size: 20px !important; line-height: 1 !important; }
#acc-panel .acc-font-controls { display: flex !important; align-items: center !important; justify-content: space-between !important; width: 100% !important; direction: ltr !important; }
#acc-panel .acc-font-btn { all: unset !important; cursor: pointer !important; background: var(--p) !important; color: #fff !important; width: 42px !important; height: 42px !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; box-shadow: 0 2px 6px rgba(0,0,0,0.15) !important; transition: transform .1s !important; }
#acc-panel .acc-font-btn:active { transform: scale(0.95) !important; }
#acc-panel .acc-font-btn svg { width: 22px !important; height: 22px !important; stroke: #fff !important; stroke-width: 2.5 !important; fill: none !important; }
#acc-panel .acc-font-val { background: #eaedf4 !important; color: var(--p) !important; font-weight: 700 !important; font-size: 15px !important; padding: 8px 24px !important; border-radius: 20px !important; }

/* ── Bottom ── */
#acc-panel .acc-bottom { padding: 10px 0 25px !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; }
#acc-panel .acc-reset-btn { all: unset !important; display: block !important; width: 100% !important; background: var(--p) !important; color: #fff !important; text-align: center !important; padding: 14px !important; border-radius: var(--r) !important; font-size: 15px !important; font-weight: 600 !important; cursor: pointer !important; transition: opacity .15s !important; box-sizing: border-box !important; }
#acc-panel .acc-reset-btn:hover { opacity: .88 !important; }
#acc-panel .acc-stmt-link { font-size: var(--stmt-size, 13px) !important; color: var(--stmt-color, var(--tx2)) !important; font-weight: 600 !important; text-decoration: underline !important; margin-top: 16px !important; text-align: center !important; display: inline-block !important; transition: opacity .2s !important; }
#acc-panel .acc-stmt-link:hover { opacity: 0.8 !important; }

#acc-reading-guide { all: unset !important; display: block !important; position: fixed !important; left: 0 !important; right: 0 !important; height: 3px !important; background: rgba(26,111,232,.65) !important; pointer-events: none !important; z-index: 2147483638 !important; }
#acc-reading-guide[hidden] { display: none !important; }

/* ── Filters ── */
body.acc-contrast-light *:not(#acc-widget):not(#acc-widget *) { background-color: #ffffff !important; color: #0b0b0b !important; border-color: #0b0b0b !important; box-shadow: none !important; }
body.acc-contrast-dark *:not(#acc-widget):not(#acc-widget *) { background-color: #000000 !important; color: #ffffff !important; border-color: #ffffff !important; box-shadow: none !important; }
body.acc-contrast-high *:not(#acc-widget):not(#acc-widget *) { background-color: #000000 !important; color: #ffff00 !important; border-color: #ffff00 !important; box-shadow: none !important; }

body.acc-monochrome > *:not(#acc-widget) { filter: grayscale(1) !important; }
body.acc-saturation-low > *:not(#acc-widget) { filter: saturate(0.3) !important; }
body.acc-saturation-high > *:not(#acc-widget) { filter: saturate(2) !important; }

body.acc-align-left *:not(#acc-widget):not(#acc-widget *) { text-align: left !important; }
body.acc-dyslexia-font *:not(#acc-widget):not(#acc-widget *) { font-family: 'OpenDyslexic', Arial, sans-serif !important; }
body.acc-readable-font *:not(#acc-widget):not(#acc-widget *) { font-family: Georgia, serif !important; }

/* ── Highlights (Borders) ── */
body.acc-highlight-titles h1:not(#acc-widget *),
body.acc-highlight-titles h2:not(#acc-widget *),
body.acc-highlight-titles h3:not(#acc-widget *),
body.acc-highlight-titles h4:not(#acc-widget *),
body.acc-highlight-titles h5:not(#acc-widget *),
body.acc-highlight-titles h6:not(#acc-widget *) { 
    border: 3px solid var(--acc-primary, #1a73e8) !important; 
    padding: 4px 8px !important; 
    box-sizing: border-box !important; 
    border-radius: 4px !important;
}

body.acc-highlight-links a:not(#acc-widget *),
body.acc-highlight-links [role="link"]:not(#acc-widget *) { 
    border: 3px solid var(--acc-primary, #1a73e8) !important; 
    padding: 2px 4px !important; 
    box-sizing: border-box !important; 
    border-radius: 4px !important;
    background: transparent !important; 
}

/* ── Keyboard Focus Highlight ── */
body.acc-keyboard-focus *:focus:not(#acc-widget *) {
    outline: 4px solid var(--acc-primary, #1a73e8) !important;
    outline-offset: 4px !important;
    box-shadow: 0 0 0 4px #ffffff !important;
    border-radius: 2px !important;
}

body.acc-stop-animations *:not(#acc-widget):not(#acc-widget *) { animation: none !important; transition: none !important; }
body.acc-big-cursor-black { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24'%3E%3Cpath fill='black' stroke='white' stroke-width='1' d='M5 3l14 9-7 1-4 7z'/%3E%3C/svg%3E") 0 0, auto !important; }

@media (max-width: 490px) { #acc-panel { width: 100vw !important; } }