/* Adapted from paka-tec/ISRWebAccessibility assets/a11y-widget-snippet.html. */

  /* ===== accessibility menu (תפריט נגישות) ===== */
  :root {
    --a11yw-accent: #89341e;
    --a11yw-accent-deep: #612211;
    --a11yw-ink: #1c2733;
    --a11yw-ink-soft: #45566a;
    --a11yw-paper: #ffffff;
    --a11yw-paper-alt: #f0f4f9;
    --a11yw-line: #c9d5e0;
    --a11yw-focus: #111111;
    --a11yw-on-accent: #ffffff;
  }
  .a11yw-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
  .a11yw-btn {
    position: fixed; bottom: 1.1rem; inset-inline-end: 1.1rem; z-index: 10010;
    width: 3.4rem; height: 3.4rem; border-radius: 50%;
    background: var(--a11yw-accent); color: var(--a11yw-on-accent);
    border: 2px solid var(--a11yw-on-accent); cursor: pointer;
    display: grid; place-items: center;
    box-shadow: 0 4px 14px rgba(8, 59, 107, 0.45);
    transition: transform 0.15s ease, background 0.15s ease;
  }
  .a11yw-btn:hover { background: var(--a11yw-accent-deep); transform: scale(1.06); }
  .a11yw-btn svg { width: 2rem; height: 2rem; }
  .a11yw-panel {
    position: fixed; bottom: 5.2rem; inset-inline-end: 1.1rem; z-index: 10011;
    width: min(21.5rem, calc(100vw - 2rem));
    max-height: min(80vh, 36rem);
    display: flex; flex-direction: column;
    background: var(--a11yw-paper); color: var(--a11yw-ink);
    border: 1px solid var(--a11yw-line); border-radius: 16px;
    box-shadow: 0 12px 40px rgba(10, 30, 50, 0.35);
    overflow: hidden;
    animation: a11yw-in 0.18s ease;
  }
  @keyframes a11yw-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
  @media (prefers-reduced-motion: reduce) {
    .a11yw-panel { animation: none; }
    .a11yw-btn { transition: none; }
  }
  .a11yw-panel[hidden] { display: none; }
  .a11yw-head {
    display: flex; align-items: center; gap: 0.6rem;
    background: linear-gradient(135deg, var(--a11yw-accent-deep), var(--a11yw-accent));
    color: var(--a11yw-on-accent); padding: 0.85rem 1rem;
  }
  .a11yw-head svg { width: 1.4rem; height: 1.4rem; flex: none; }
  .a11yw-head h2 { margin: 0; font-size: 1.08rem; font-weight: 700; flex: 1; }
  .a11yw-close {
    background: transparent; border: none; color: inherit; cursor: pointer;
    width: 2rem; height: 2rem; border-radius: 8px; display: grid; place-items: center;
    font-size: 1.5rem; line-height: 1;
  }
  .a11yw-close:hover { background: rgba(255, 255, 255, 0.18); }
  .a11yw-body { padding: 0.9rem; overflow-y: auto; }
  .a11yw-size {
    display: flex; align-items: center; gap: 0.6rem;
    border: 1.5px solid var(--a11yw-line); border-radius: 12px;
    padding: 0.55rem 0.7rem; margin-block-end: 0.7rem; background: var(--a11yw-paper-alt);
  }
  .a11yw-size .a11yw-size-label { flex: 1; font-weight: 600; font-size: 0.95rem; }
  .a11yw-size output { min-width: 3.2em; text-align: center; font-weight: 700; color: var(--a11yw-accent-deep); }
  .a11yw-size button {
    width: 2.3rem; height: 2.3rem; border-radius: 10px; cursor: pointer;
    border: 1.5px solid var(--a11yw-accent); background: var(--a11yw-paper);
    color: var(--a11yw-accent-deep); font-weight: 700; font-size: 1.05rem;
  }
  .a11yw-size button:hover:not(:disabled) { background: var(--a11yw-accent); color: var(--a11yw-on-accent); }
  .a11yw-size button:disabled { opacity: 0.4; cursor: not-allowed; }
  .a11yw-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.55rem; }
  .a11yw-tile {
    display: flex; flex-direction: column; align-items: center; gap: 0.35rem;
    padding: 0.7rem 0.4rem; border-radius: 12px; cursor: pointer;
    border: 1.5px solid var(--a11yw-line); background: var(--a11yw-paper);
    color: var(--a11yw-ink); font: inherit; font-size: 0.88rem; font-weight: 600;
    text-align: center; position: relative;
  }
  .a11yw-tile:hover { border-color: var(--a11yw-accent); background: var(--a11yw-paper-alt); }
  .a11yw-tile svg { width: 1.5rem; height: 1.5rem; color: var(--a11yw-accent-deep); }
  .a11yw-tile[aria-pressed="true"] {
    background: var(--a11yw-accent); border-color: var(--a11yw-accent-deep);
    color: var(--a11yw-on-accent);
  }
  .a11yw-tile[aria-pressed="true"] svg { color: var(--a11yw-on-accent); }
  .a11yw-tile[aria-pressed="true"]::after {
    content: "✓"; position: absolute; top: 0.3rem; inset-inline-start: 0.45rem;
    font-size: 0.8rem; font-weight: 800;
  }
  .a11yw-foot {
    display: flex; align-items: center; justify-content: space-between; gap: 0.6rem;
    border-block-start: 1px solid var(--a11yw-line);
    padding: 0.7rem 1rem; background: var(--a11yw-paper-alt);
  }
  .a11yw-reset {
    background: transparent; border: none; cursor: pointer; font: inherit;
    font-weight: 700; color: var(--a11yw-accent-deep); text-decoration: underline;
    padding: 0.2em 0;
  }
  .a11yw-foot a { color: var(--a11yw-accent-deep); font-weight: 600; font-size: 0.92rem; }
  .a11yw-btn:focus-visible, .a11yw-close:focus-visible, .a11yw-tile:focus-visible,
  .a11yw-size button:focus-visible, .a11yw-reset:focus-visible, .a11yw-foot a:focus-visible {
    outline: 3px solid var(--a11yw-focus); outline-offset: 2px;
  }
  /* ===== effect classes ===== */



  .a11yw-links a:not(.a11yw-foot a) {
    text-decoration: underline !important;
    background: #fff8c4 !important; color: #062a4d !important;
    box-shadow: 0 0 0 2px #f4c916; border-radius: 2px;
  }
  .a11yw-motion *, .a11yw-motion *::before, .a11yw-motion *::after {
    animation: none !important; transition: none !important; scroll-behavior: auto !important;
  }
  .a11yw-gray body > :not(.a11yw-root) { filter: grayscale(1); }
  .a11yw-font body, .a11yw-font body :not(.a11yw-root):not(.a11yw-root *) {
    font-family: Arial, "Segoe UI", sans-serif !important;
    letter-spacing: 0.02em !important; word-spacing: 0.08em !important;
  }
  .a11yw-cursor, .a11yw-cursor * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="44" height="44" viewBox="0 0 24 24"><path d="M4 2l16 11.5-6.6 1.2 3.8 6.7-3 1.6-3.7-6.8L6 20.6z" fill="black" stroke="white" stroke-width="1.4"/></svg>') 4 2, auto !important;
  }
  .a11yw-guide-bar {
    position: fixed; inset-inline: 0; height: 3rem; z-index: 10005;
    background: rgba(11, 83, 148, 0.12);
    border-block: 3px solid var(--a11yw-accent);
    pointer-events: none; display: none;
  }
  .a11yw-guide .a11yw-guide-bar { display: block; }
  .a11yw-contrast, .a11yw-contrast body { background: #000 !important; color: #fff !important; }
  .a11yw-contrast body > :not(.a11yw-root) :is(section, header, footer, main, nav, div, li, td, th, form, article, aside) { background: #000 !important; color: #fff !important; border-color: #fff !important; }
  .a11yw-contrast body > :not(.a11yw-root) :is(h1, h2, h3, h4, h5, h6, p, span, label, strong, em, code, time, figcaption) { color: #fff !important; background: transparent !important; }
  .a11yw-contrast body > :not(.a11yw-root) a { color: #ffef62 !important; background: transparent !important; }
  .a11yw-contrast body > :not(.a11yw-root) :is(button, input, textarea, select) { background: #000 !important; color: #fff !important; border: 2px solid #fff !important; }
  .a11yw-contrast body > :not(.a11yw-root) img { filter: brightness(0.9) contrast(1.2); }
  .a11yw-contrast :is(a, button, input, textarea, summary):focus-visible { outline: 3px solid #ffef62 !important; }

.a11yw-root{font:16px/1.5 Arial,sans-serif;position:relative;z-index:10010}
.a11yw-root *{box-sizing:border-box}.a11yw-root button{font-family:inherit;letter-spacing:normal}
.a11yw-root .a11yw-head h2{color:#fff;font-size:1.08rem;letter-spacing:normal;line-height:1.5}

.a11yw-motion .os-world *{animation-play-state:paused!important}
@media(max-width:480px){.a11yw-btn{width:46px;height:46px;bottom:12px;inset-inline-end:12px}.a11yw-panel{bottom:68px;max-height:calc(100svh - 84px)}}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) #app :is(h1,h2,h3,h4,p,a,button,label,li){overflow-wrap:anywhere}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) body{--site-nav-height:80px}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .nav{height:var(--site-nav-height)}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .nav-links{display:none}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .menu-button{display:block}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .nav-inner{height:auto;min-height:80px;flex-wrap:wrap}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .nav .login-link{display:none}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .cl-canvas :is(.cl-top,.cl-dock-row,.cl-lesson-actions){flex-wrap:wrap;height:auto;min-height:48px}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) :is(.cl-dock,.pc-foot){position:relative;inset:auto}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .cl-stage{overflow:auto}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) :is(.cl-lesson-row,.pc-nav button){white-space:normal;height:auto}
.a11yw-motion .home-film-scene{scroll-behavior:auto!important}
html[data-a11y-text-scale]:not([data-a11y-text-scale="100"]) .mobile-menu.open{display:flex;position:fixed;inset:80px 0 auto;z-index:90;background:#111;flex-direction:column;padding:16px 24px;gap:6px;max-height:calc(100svh - 80px);overflow:auto}
