/* NDIGIT v2 · תפריט נגישות (הועבר מהאתר החי והותאם ל־v2). כפתור קבוע בפינה, פאנל עם ארבע הגדרות שנשמרות בדפדפן */
.nd-a11y-btn { position: fixed; left: 18px; bottom: 18px; z-index: 90; display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border: 1.5px solid rgba(243,241,234,.25); border-radius: 50%; background: #0b0b0a; color: var(--bone, #f3f1ea); cursor: pointer; box-shadow: 0 10px 26px rgba(0,0,0,.35); transition: transform .25s, border-color .25s; }
.nd-a11y-btn svg { width: 22px; height: 22px; }
.nd-a11y-btn:hover { transform: translateY(-3px); border-color: var(--lime, #c8f542); }
.nd-a11y-btn:focus-visible { outline: 2px solid var(--lime, #c8f542); outline-offset: 3px; }
.nd-a11y-panel { position: fixed; left: 18px; bottom: 78px; z-index: 91; display: none; flex-direction: column; gap: 6px; width: 240px; padding: 16px; border: 1px solid rgba(243,241,234,.14); border-radius: 18px; background: #11120f; color: #f3f1ea; box-shadow: 0 30px 60px rgba(0,0,0,.5); font-family: var(--text, Heebo, sans-serif); }
.nd-a11y-panel.open { display: flex; }
.nd-a11y-panel h2 { margin: 0 0 6px; font: 700 26px/1 var(--display, sans-serif); }
.nd-a11y-panel button { min-height: 44px; padding: 0 14px; border: 1px solid rgba(243,241,234,.14); border-radius: 12px; background: none; color: inherit; font: 600 15px/1.2 var(--text, sans-serif); text-align: right; cursor: pointer; }
.nd-a11y-panel button:hover { background: rgba(255,255,255,.06); }
.nd-a11y-panel button[aria-pressed="true"] { border-color: var(--lime, #c8f542); background: var(--lime, #c8f542); color: #0b0b0a; }
.nd-a11y-panel button:focus-visible, .nd-a11y-link:focus-visible { outline: 2px solid var(--lime, #c8f542); outline-offset: 2px; }
.nd-a11y-panel .nd-a11y-reset { border-color: transparent; color: #9a978f; font-size: 14px; }
.nd-a11y-link { display: flex; align-items: center; min-height: 44px; padding: 0 14px; color: var(--lime, #c8f542); font-size: 14px; }
@media (max-width: 760px) { .nd-a11y-btn { left: 12px; bottom: 12px; width: 44px; height: 44px; } .nd-a11y-panel { left: 12px; right: 12px; bottom: 66px; width: auto; } }

/* ── מצבים ── */
/* הגדלת טקסט: v2 בנוי בפיקסלים, אז מגדילים את התוכן כולו (zoom), וכך גם הפריסה נשארת שלמה */
/* מגדילים רק את הטקסט, לא את התמונות והפריסה. רק על בלוק הטקסט העליון (לא על span בתוך p), כדי שההגדלה לא תוכפל.
   לא על איורים (דפי המחברת, כרטיסי ה־hero, גב הכרטיס של GOLDA) ולא על מילים מעוטרות ברקע */
:root { --nd-z: 1; }
html.nd-txt-1 { --nd-z: 1.15; } html.nd-txt-2 { --nd-z: 1.3; } html.nd-txt-3 { --nd-z: 1.5; }
html[class*="nd-txt-"] :is(main, footer) :is(p, li, dd, dt, h1, h2, h3, h4, blockquote, figcaption, label, legend, button, .cs-back, .so-name, .so-what, .cs-toc a):not(:is(p, li, dd, dt, h1, h2, h3, h4, blockquote, figcaption, label, legend, button, .fd-t) *):not(:is(.nb-book, .hx-card, .gd-back, .cs-word, .so-bg, .fk-wrap, .fd-front, [aria-hidden="true"]) *):not(.cs-word, .so-bg):not(:has(img, video, picture, canvas, input, textarea, select)) { zoom: var(--nd-z); }
/* בהגדלה, מילה ארוכה (INTEGRALAB, VISION) בכותרת גדולה נשברת במקום לדחוף את העמוד הצידה */
html[class*="nd-txt-"] :is(main, footer) :is(p, li, dd, dt, h1, h2, h3, h4, blockquote, figcaption, label, legend, button, span, b, a) { overflow-wrap: anywhere; min-width: 0; max-width: 100%; }
/* כרטיסי התיקיות בדף הבית הם צורה קבועה (חזית של תיקייה). הטקסט עליהם כבר גדול (26–40px) ולא מוגדל, כדי שלא יברח מהתיקייה */
html.nd-links a:not(.nd-a11y-btn):not(.skip) { text-decoration: underline !important; text-underline-offset: 3px; outline: 1px dashed rgba(200,245,66,.7); outline-offset: 2px; }
html.nd-still *, html.nd-still *::before, html.nd-still *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
html.nd-contrast, html.nd-contrast body { background: #000 !important; }
html.nd-contrast body * { background-image: none !important; background-color: transparent !important; color: #fff !important; border-color: #fff !important; text-shadow: none !important; }
html.nd-contrast body :is(img, video, canvas) { filter: contrast(1.15); }
html.nd-contrast a, html.nd-contrast .nd-a11y-panel button[aria-pressed="true"] { color: #ff0 !important; }
html.nd-contrast .nd-a11y-panel, html.nd-contrast .nd-a11y-btn, html.nd-contrast .sheet { background-color: #000 !important; }

/* ── ניגודיות AA בטקסט עצמו (בדיקה 28.09, יחס 4.5 לטקסט רגיל ו־3 לגדול) ── */
.cs-meta dt { color: #fff !important; }
.sf-l span { color: #5a574f !important; }
.sf-l b { color: #6b685f !important; }
.kt-hint { color: #5a574f !important; }
.sw5 li { color: #0b0b0a; }
.sw5 li b, .sw5 li span { color: inherit; opacity: 1 !important; }
/* שלושת הצבעים הכהים (כחול, סגול, ורוד) = טקסט לבן עם צל, שני הבהירים (כתום, טורקיז) = שחור */
.sw5 li:nth-child(-n+3) { color: #fff; } .sw5 li:nth-child(-n+3) :is(b, span) { text-shadow: 0 1px 2px rgba(0,0,0,.55); }

/* ── באנר קוקיז (מהאתר החי, בשפת v2). יושב בפינה הימנית, כדי לא לכסות את כפתור הנגישות ── */
.nd-consent { position: fixed; z-index: 95; right: 18px; bottom: 18px; display: flex; flex-direction: column; gap: 12px; width: min(340px, calc(100vw - 36px)); padding: 16px 18px; border: 1px solid rgba(243,241,234,.14); border-radius: 18px; background: rgba(14,14,13,.96); backdrop-filter: blur(14px); box-shadow: 0 20px 60px rgba(0,0,0,.55); color: #d6d2c8; font-family: var(--text, Heebo, sans-serif); transform: translateY(18px); opacity: 0; transition: transform .4s cubic-bezier(.16,1,.3,1), opacity .4s; }
.nd-consent.in { transform: none; opacity: 1; }
.nd-consent p { margin: 0; font-size: 14px; line-height: 1.6; }
.nd-consent a { color: var(--lime, #c8f542); text-underline-offset: 3px; }
.nd-consent-btns { display: flex; gap: 8px; }
.nd-consent button { flex: 1; min-height: 44px; border-radius: 99px; font: 700 14px/1 var(--text, sans-serif); cursor: pointer; }
.nd-ok { border: 0; background: var(--lime, #c8f542); color: #0b0b0a; }
.nd-no { border: 1px solid rgba(243,241,234,.25); background: none; color: #f3f1ea; }
.nd-consent button:focus-visible { outline: 2px solid var(--lime, #c8f542); outline-offset: 2px; }
@media (max-width: 760px) { .nd-consent { right: 12px; left: 68px; bottom: 12px; width: auto; } }
@media (prefers-reduced-motion: reduce) { .nd-consent { transition: none; } }
.hp { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); opacity: 0; pointer-events: none; }

/* ── פוקוס מקלדת בשפת האתר (היה כתום), נראה על רקע כהה ובהיר כאחד ── */
:focus-visible { outline: 3px solid var(--lime, #c8f542) !important; outline-offset: 3px; box-shadow: 0 0 0 6px #0b0b0a; }

/* נתי 29.09: במובייל הבאנר והכפתור היו ענקיים. באנר קומפקטי (טקסט קטן, כפתורים נמוכים בשורה אחת), כפתור נגישות קטן יותר.
   אזור הלחיצה נשאר 44px */
@media (max-width: 760px) {
  .nd-consent { left: 64px; right: 10px; bottom: 10px; gap: 8px; padding: 10px 12px; border-radius: 14px; }
  .nd-consent p { font-size: 12.5px !important; line-height: 1.45; }
  .nd-consent-btns { gap: 6px; }
  .nd-consent button { min-height: 44px; font-size: 13px !important; border-radius: 99px; }
  .nd-a11y-btn { left: 10px; bottom: 10px; width: 44px; height: 44px; border-width: 1px; box-shadow: 0 6px 16px rgba(0,0,0,.35); }
  .nd-a11y-btn svg { width: 18px; height: 18px; }
  .nd-a11y-panel { bottom: 62px; left: 10px; right: 10px; padding: 12px; gap: 4px; }
  .nd-a11y-panel h2 { font-size: 20px; }
  .nd-a11y-panel button, .nd-a11y-link { min-height: 44px; font-size: 14px; }
}
/* נתי 29.09: כפתור התפריט ריבועי עם פינות רכות, לא עיגול */
.top-menu { border-radius: 12px !important; }
/* כפתור וואטסאפ צף, זוג לכפתור הנגישות (js/wa-float.js) */
.wa-fab { position: fixed; left: 76px; bottom: 18px; z-index: 90; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #25d366; color: #fff; box-shadow: 0 8px 22px rgba(0,0,0,.28); opacity: 0; transform: translateY(12px) scale(.9); pointer-events: none; transition: opacity .3s, transform .35s cubic-bezier(.2,.8,.2,1); }
.wa-fab.on { opacity: 1; transform: none; pointer-events: auto; }
.wa-fab svg { width: 24px; height: 24px; fill: currentColor; }
.wa-fab:focus-visible { outline: 2px solid var(--lime, #c8f542); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) { .wa-fab:hover { transform: translateY(-2px); } }
@media (max-width: 760px) { .wa-fab { left: 64px; bottom: 12px; width: 44px; height: 44px; } }
@media (prefers-reduced-motion: reduce) { .wa-fab { transition: opacity .2s; transform: none; } }
