:root{
  --bg:#F7F3EA; --surface:#FFFDF8; --surface-2:#F1EADC;
  --ink:#241F17; --ink-2:#5A5143; --ink-3:#6E6354;
  --line:#E2D8C4; --line-2:#CFC2A6;
  --accent:#8A6D3B; --accent-ink:#FFFDF8; --accent-soft:#EFE5D0;
  /* זהב לטקסט קטן: הזהב של הכפתורים מגיע ל-4.4:1 על הרקע, מתחת לסף */
  --accent-text:#7D6234;
  --ring:#8A6D3B;
  --r:12px; --r-lg:18px;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px;
  --shadow:0 1px 2px rgba(36,31,23,.05), 0 6px 20px rgba(36,31,23,.06);
  --player-h:0px; --sticky-h:73px; --where-h:40px;
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#16130E; --surface:#1E1A14; --surface-2:#262117;
    --ink:#F2ECE0; --ink-2:#C8BEAB; --ink-3:#9A8F7B;
    --line:#332C21; --line-2:#463D2E;
    --accent:#D9BE86; --accent-ink:#1A160F; --accent-soft:#2C2418; --accent-text:#D9BE86;
    --ring:#D9BE86;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 6px 20px rgba(0,0,0,.35);
  }
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0; background:var(--bg); color:var(--ink);
  font-family:"Noto Sans Hebrew","Arial Hebrew",Arial,system-ui,sans-serif;
  font-size:16px; line-height:1.6;
  padding-bottom:calc(var(--player-h) + env(safe-area-inset-bottom))}
a{color:var(--accent); text-underline-offset:3px}
:focus-visible{outline:3px solid var(--ring); outline-offset:2px; border-radius:8px}
.wrap{max-width:960px; margin:0 auto; padding:0 var(--s4)}
.skip{position:absolute; inset-inline-start:-9999px}
.skip:focus{position:static; display:inline-block; margin:var(--s2);
  padding:var(--s2) var(--s3); background:var(--accent); color:var(--accent-ink); border-radius:8px}
.muted{color:var(--ink-3)}

/* hero */
.hero{padding:var(--s4) 0 var(--s5); border-bottom:1px solid var(--line)}
.eyebrow{margin:0; color:var(--ink-3); font-weight:600;
  font-size:.82rem; letter-spacing:.12em}
h1{margin:0 0 var(--s3); font-size:clamp(1.9rem,5.4vw,3rem); font-weight:700;
  line-height:1.15; letter-spacing:-.015em; text-wrap:balance}
h2, h3{text-wrap:balance}
/* כותרת המשנה בדף הבית ובדף הנתונים. לא כל span בכותרת: שם סדרה עטוף ב-.nm */
.hero h1 > span{display:block; font-size:.5em; font-weight:600; color:var(--ink-2);
  letter-spacing:0; margin-top:var(--s2)}
.blurb{margin:0 0 var(--s5); color:var(--ink-2); max-width:62ch}
.stats{display:flex; gap:var(--s6); flex-wrap:wrap; margin:0}
.stats div{margin:0}
.stats dt{color:var(--ink-3); font-size:.8rem; font-weight:600; letter-spacing:.06em}
.stats dd{margin:2px 0 0; font-size:1.6rem; font-weight:700;
  font-variant-numeric:tabular-nums; line-height:1.1}

/* controls */
.controls{position:sticky; top:0; z-index:20; background:var(--bg);
  padding:var(--s3) 0; border-bottom:1px solid var(--line)}
.search{position:relative; display:block}
.search svg{position:absolute; inset-inline-start:14px; top:50%;
  transform:translateY(-50%); width:18px; height:18px; color:var(--ink-3); pointer-events:none}
input[type=search]{width:100%; min-height:48px; padding:var(--s3) var(--s4);
  padding-inline-start:44px; font:inherit; font-size:16px; color:var(--ink);
  background:var(--surface); border:1px solid var(--line-2); border-radius:var(--r);
  -webkit-appearance:none}
input[type=search]::placeholder{color:var(--ink-3)}

main{padding:var(--s6) 0 var(--s7)}
/* עמוד סדרה: כל גלילה אל יעד (קישור, פוקוס מהמקלדת, קפיצה לחלק) עוצרת מתחת
   לפס הדביק ולפס המיקום, כך ששום דבר לא נעלם מתחתיהם */
html:has(#where){scroll-padding-top:calc(var(--sticky-h) + var(--where-h) + var(--s2))}
.section-h{margin:0 0 var(--s4); font-size:1.15rem; font-weight:700; line-height:1.3;
  color:var(--ink); display:flex; align-items:center; gap:var(--s3)}
.section-h::after{content:""; flex:1; height:1px; background:var(--line)}

/* series grid */
.grid{list-style:none; margin:0; padding:0; display:grid; gap:var(--s3);
  grid-template-columns:repeat(auto-fill,minmax(310px,1fr))}
.card{margin:0}
.card-link{display:flex; gap:var(--s4); padding:var(--s4); text-decoration:none;
  color:inherit; background:var(--surface); border:1px solid var(--line);
  border-radius:var(--r-lg); box-shadow:var(--shadow); height:100%;
  transition:border-color .18s ease, transform .18s ease}
.card-link:hover{border-color:var(--accent); transform:translateY(-2px)}
.cover{width:96px; height:96px; flex:none; border-radius:var(--r);
  border:1px solid var(--line-2); object-fit:cover; background:var(--surface-2)}
.card-body{min-width:0}
.card-body h3{margin:0 0 6px; font-size:1.1rem; font-weight:700; line-height:1.32}
.card-meta{margin:0 0 var(--s2); color:var(--ink-3); font-size:.84rem;
  font-variant-numeric:tabular-nums}
.parts{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:4px}
.parts li{font-size:.74rem; color:var(--ink-2); background:var(--surface-2);
  border:1px solid var(--line); border-radius:999px; padding:1px 8px; text-wrap:balance}

/* search hits */
.hits{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:var(--s2)}
.hits a{display:flex; justify-content:space-between; gap:var(--s4); align-items:baseline;
  padding:var(--s3) var(--s4); background:var(--surface); border:1px solid var(--line);
  border-radius:var(--r); text-decoration:none; color:inherit}
.hits a:hover{border-color:var(--accent)}
.hit-t{font-weight:600}
.hit-s{flex:none; max-width:42%; color:var(--ink-3); font-size:.8rem; line-height:1.4; text-align:end}
.empty{padding:var(--s5); text-align:center; color:var(--ink-3)}

footer{border-top:1px solid var(--line); padding:var(--s6) 0 var(--s7);
  color:var(--ink-3); font-size:.86rem}
footer p{margin:0 0 var(--s2)}

/* ---- series page ---- */
/* 🚨 hidden חייב לנצח כל display שכתבנו (.ep, .node, .toc-btn). חוץ מ-until-found:
   שם הדפדפן מסתיר בעצמו ומשאיר את הטקסט זמין ל-Ctrl+F. */
[hidden]:not([hidden="until-found" i]){display:none!important}
.nw{white-space:nowrap}
.vh{position:absolute!important; width:1px; height:1px; overflow:hidden;
  clip-path:inset(50%); white-space:nowrap}
button{touch-action:manipulation}

/* שרשרת המקום באתר — כל הסדרות ‹ אוסף. החץ מצביע אל כיוון הקריאה. */
.trail{padding-top:var(--s2)}
.trail ol{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap;
  align-items:center; gap:0 6px; font-size:.88rem; font-weight:600}
.trail li{display:inline-flex; align-items:center; gap:6px; min-width:0}
.trail a{display:inline-flex; align-items:center; min-height:44px; text-decoration:none; color:var(--accent-text)}
.trail a:hover{text-decoration:underline}
.trail li + li::before, .where li + li::before{content:""; flex:none; width:12px; height:12px;
  background:var(--ink-3);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 6-6 6 6 6'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 6-6 6 6 6'/%3E%3C/svg%3E") center/contain no-repeat}

.s-head{display:grid; grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:"cover title" "cover more"; column-gap:var(--s5); align-items:start;
  padding-block:var(--s3) var(--s5); border-bottom:1px solid var(--line)}
.s-head .cover{grid-area:cover; width:128px; height:128px; border-radius:var(--r-lg)}
.s-title{grid-area:title; min-width:0; align-self:end}
.s-more{grid-area:more; min-width:0}
.s-head h1{margin:0 0 var(--s2); font-size:clamp(1.5rem,3.6vw,2.25rem); line-height:1.2; letter-spacing:-.01em}
.s-meta{margin:0; color:var(--ink-2); font-size:.92rem; font-weight:500; font-variant-numeric:tabular-nums}
.s-note{margin:var(--s3) 0 0; color:var(--ink-2); font-size:.92rem; max-width:62ch}
.s-note:empty{display:none}
@media (max-width:640px){
  /* טלפון: העטיפה ליד השם, וכל השאר ברוחב מלא מתחתם */
  .s-head{grid-template-areas:"cover title" "more more"; column-gap:var(--s4)}
  .s-head .cover{width:76px; height:76px; border-radius:var(--r)}
  .s-title{align-self:center}
  .s-head h1{font-size:1.42rem; margin-bottom:var(--s1)}
  .s-meta{font-size:.86rem}
}
.actions{display:flex; gap:var(--s2); flex-wrap:wrap; margin-top:var(--s4)}
.actions:empty{display:none}
.btn{display:inline-flex; align-items:center; gap:var(--s2); min-height:44px;
  padding:var(--s2) var(--s4); border-radius:999px; border:1px solid var(--line-2);
  background:var(--surface); color:var(--ink); font:inherit; font-weight:600;
  font-size:.92rem; cursor:pointer; text-decoration:none;
  transition:background .18s ease, border-color .18s ease}
.btn:hover{background:var(--surface-2); border-color:var(--accent)}
.btn-primary{background:var(--accent); color:var(--accent-ink); border-color:var(--accent)}
/* 🚨 בלי זה .btn:hover צובע את הכפתור הראשי בהיר, והטקסט הבהיר נעלם עליו */
.btn-primary:hover{background:var(--accent); color:var(--accent-ink); border-color:var(--accent); filter:brightness(.9)}
@media (prefers-color-scheme:dark){ .btn-primary:hover{filter:brightness(1.1)} }
.btn[aria-disabled=true]{opacity:.5; pointer-events:none}
.btn svg{width:18px; height:18px; flex:none}

/* הפס הדביק: חיפוש + «מבנה הספר», ומתחתיו «איפה אני» */
.ctl-row{display:flex; gap:var(--s2); align-items:center}
.ctl-row .search{flex:1; min-width:0}
.toc-btn{flex:none; display:inline-flex; align-items:center; gap:6px; min-height:48px;
  padding:0 var(--s3); border:1px solid var(--line-2); border-radius:var(--r);
  background:var(--surface); color:var(--ink); font:inherit; font-size:.88rem;
  font-weight:600; cursor:pointer; white-space:nowrap}
.toc-btn:hover{border-color:var(--accent)}
.toc-btn svg{width:18px; height:18px; color:var(--accent)}
.where{position:absolute; inset-inline:0; top:100%; height:var(--where-h);
  background:var(--bg); border-bottom:1px solid var(--line);
  box-shadow:0 6px 14px -10px rgba(36,31,23,.25)}
.where ol{list-style:none; margin:0; padding:0; display:flex; align-items:center;
  gap:6px; height:var(--where-h); overflow:hidden; white-space:nowrap; font-size:.84rem}
.where li{display:flex; align-items:center; gap:6px; min-width:2.5em; flex:0 1 auto}
.where li:last-child{flex-shrink:0; max-width:62%}
.where a{display:flex; align-items:center; height:var(--where-h); min-width:0;
  color:var(--ink-3); font-weight:600; text-decoration:none}
.where a > *, .where a{overflow:hidden; text-overflow:ellipsis}
.where a:hover{color:var(--accent)}
.where a[aria-current]{color:var(--ink)}

/* העמוד: מבנה הספר בצד (מסך רחב) והעץ */
.tree-bar{display:flex; align-items:center; justify-content:space-between;
  gap:var(--s2) var(--s3); flex-wrap:wrap; margin-bottom:var(--s3)}
.tree-h{margin:0; font-size:1.15rem; font-weight:700; line-height:1.3; color:var(--ink)}
.tree-btns{display:flex; gap:var(--s1)}
.txt-btn{min-height:44px; padding:0 var(--s3); border:0; background:none;
  color:var(--accent-text); font:inherit; font-size:.88rem; font-weight:600;
  border-radius:999px; cursor:pointer}
.txt-btn:hover{background:var(--surface-2)}
.tree-status{margin:0 0 var(--s3)}
.tree-status:empty{display:none}

.toc-h{margin:0 0 var(--s3); font-size:.8rem; font-weight:700; color:var(--ink-3);
  letter-spacing:.06em}
.toc-l{list-style:none; margin:0; padding:0}
.toc-l .toc-l{margin-inline-start:var(--s3); padding-inline-start:var(--s2);
  border-inline-start:1px solid var(--line)}
.toc-a{display:block; padding:5px var(--s2); border-radius:8px;
  border-inline-start:3px solid transparent; text-decoration:none; color:var(--ink-2);
  font-size:.86rem; line-height:1.45}
.toc-a:hover{background:var(--surface-2); color:var(--ink)}
.toc-a.t1{margin-top:var(--s2); padding-block:7px; color:var(--ink); font-size:.94rem; font-weight:600}
.toc-l > li:first-child > .toc-a.t1{margin-top:0}
.toc-lbl{font-weight:700; color:var(--accent-text); margin-inline-end:5px}
.toc-a.t1 .toc-lbl{display:block; margin:0; font-size:.76rem}
.toc-n{display:block; font-size:.76rem; font-weight:500; color:var(--ink-3);
  font-variant-numeric:tabular-nums}
.toc-a.on-path{color:var(--ink); font-weight:600}
.toc-a[aria-current]{background:var(--accent-soft); border-inline-start-color:var(--accent)}

.toc-side{display:none}
@media (min-width:1100px){
  .has-toc .wrap{max-width:1240px}
  .has-toc .player-inner{max-width:1240px}
  .has-toc .s-body{display:grid; grid-template-columns:300px minmax(0,1fr);
    gap:var(--s6); align-items:start}
  .toc-side{display:block; position:sticky; top:var(--sticky-h);
    max-height:calc(100vh - var(--sticky-h) - var(--player-h));
    overflow:auto; overscroll-behavior:contain; scrollbar-width:thin;
    padding:var(--s6) 0 var(--s5)}
  .toc-btn{display:none!important}
  /* החיפוש ופס המיקום יושבים מעל עמודת השיעורים, לא מעל מבנה הספר */
  .has-toc .ctl-row{padding-inline-start:calc(var(--s4) + 300px + var(--s6))}
  .has-toc .where ol{margin-inline-start:calc(300px + var(--s6))}
  .has-toc .where{background:none; border:0; box-shadow:none; pointer-events:none}
  .has-toc .where ol{pointer-events:auto; padding-inline:var(--s4); background:var(--bg); border-bottom:1px solid var(--line);
    box-shadow:0 6px 14px -10px rgba(36,31,23,.25)}
}

/* חלון «מבנה הספר» בטלפון ובטאבלט */
.toc-dlg{position:fixed; inset:0; width:100%; height:100%; max-width:none; max-height:none;
  margin:0; padding:0; border:0; background:var(--bg); color:var(--ink);
  overscroll-behavior:contain}
.toc-dlg::backdrop{background:rgba(20,16,10,.5)}
.toc-dlg-head{position:sticky; top:0; z-index:1; display:flex; align-items:center;
  justify-content:space-between; gap:var(--s3); padding:var(--s2) var(--s4);
  background:var(--bg); border-bottom:1px solid var(--line)}
.toc-dlg-head .toc-h{margin:0; font-size:1rem; color:var(--ink); letter-spacing:0}
.toc-dlg nav{padding:var(--s4) var(--s4) var(--s7)}
.toc-dlg .toc-a{padding-block:8px; font-size:.92rem}
.toc-dlg .toc-a.t1{font-size:1rem}
@media (min-width:600px){
  .toc-dlg{inset-inline-start:0; inset-inline-end:auto; width:440px;
    box-shadow:var(--shadow)}
}

/* ---- העץ ---- */
.node-hd{margin:0; font-size:inherit; font-weight:inherit; line-height:inherit}
.node-h{display:grid; grid-template-columns:20px minmax(0,1fr) auto;
  grid-template-areas:"chev lbl meta" "chev topic topic" "chev peek peek";
  column-gap:var(--s3); align-items:baseline; width:100%; padding:var(--s3) var(--s2);
  border:0; background:none; color:inherit; font:inherit; text-align:start;
  cursor:pointer; border-radius:10px; transition:background .15s ease}
/* בלי תווית: הנושא עולה לשורה הראשונה, וההיקף לצידו */
.node-h.no-lbl{grid-template-areas:"chev topic meta" "chev peek peek"}
.node-h:hover, .node-h:active{background:var(--surface-2)}
.node-h, .play, .txt-btn, .toc-a, .work-h, .work-parts a{-webkit-tap-highlight-color:transparent}
.chev{grid-area:chev; align-self:start; width:20px; height:20px; margin-top:2px; color:var(--accent);
  transition:transform .2s cubic-bezier(.22,1,.36,1)}
.node.is-open > .node-hd .chev{transform:rotate(-90deg)}
.node-lbl{grid-area:lbl; min-width:0; font-size:.78rem; font-weight:700; color:var(--accent-text); line-height:1.5; letter-spacing:.02em}
.node-topic{grid-area:topic; min-width:0; font-weight:600; line-height:1.45; text-wrap:pretty}
.node-meta{grid-area:meta; font-size:.78rem; color:var(--ink-3); white-space:nowrap;
  font-variant-numeric:tabular-nums}
.node-peek{grid-area:peek; margin-top:4px; font-size:.8rem; color:var(--ink-3); line-height:1.5;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.node.is-open > .node-hd .node-peek{display:none}

/* רמה ראשונה: כרטיס לכל חלק גדול של הספר */
.node.d1{background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg);
  box-shadow:var(--shadow); margin-bottom:var(--s3)}
.node.d1 > .node-hd .node-h{padding:var(--s4); border-radius:calc(var(--r-lg) - 1px)}
.node.d1 > .node-hd .node-topic{font-size:1.14rem; font-weight:700; line-height:1.38; text-wrap:balance}
.node.d1.is-open{border-color:var(--line-2)}
.node.d1.is-open > .node-hd .node-h{border-end-start-radius:0; border-end-end-radius:0}
.node.d1 > .node-b > .node-in{padding:0 var(--s4) var(--s3)}

/* רמות פנימיות: שורות עם קו מנחה שיורד מתחת לחץ */
.node:not(.d1){border-top:1px solid var(--line)}
.node:not(.d1) > .node-hd .node-topic{font-size:1rem; font-weight:700}
.node:not(.d1) > .node-b > .node-in{margin-inline-start:var(--s4);
  padding-inline-start:var(--s3); border-inline-start:2px solid var(--line-2);
  margin-bottom:var(--s3)}
.node.d3 > .node-hd .node-topic, .node.d4 > .node-hd .node-topic{font-size:.95rem; font-weight:600}
.node.is-open > .node-b > .node-in{animation:reveal .2s cubic-bezier(.22,1,.36,1)}
@keyframes reveal{from{opacity:0; transform:translateY(-4px)}to{opacity:1; transform:none}}

/* שיעור */
.eps{list-style:none; margin:0; padding:0}
.ep{display:grid; grid-template-columns:auto minmax(0,1fr); gap:var(--s3); align-items:start;
  padding:var(--s3) var(--s2); border-top:1px solid var(--line)}
.node-in > .eps:first-child > .ep:first-child{border-top-color:var(--line)}
.ep.is-playing{background:var(--accent-soft); border-top-color:transparent; border-radius:10px}
.ep.is-playing + .ep{border-top-color:transparent}
.ep.is-target{box-shadow:inset 0 0 0 2px var(--accent); border-radius:10px; animation:flash 2.4s ease-out}
@keyframes flash{0%,35%{background:var(--accent-soft)}100%{background:transparent}}
/* סדרה בלי מבנה: כל השיעורים בכרטיס אחד */
#out > .eps{background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg);
  box-shadow:var(--shadow); padding:var(--s1) var(--s3); margin-bottom:var(--s3)}
#out > .eps > .ep:first-child{border-top:0}
.play{width:44px; height:44px; flex:none; border-radius:50%; border:1px solid var(--line-2);
  background:var(--surface-2); color:var(--accent); cursor:pointer; display:grid;
  place-items:center; transition:background .18s ease, transform .18s ease}
.play:hover{background:var(--accent); color:var(--accent-ink)}
.play:active{transform:scale(.94)}
.play svg{width:20px; height:20px}
.ep-main{min-width:0}
.ep-title{margin:0; padding-top:2px; font-size:.98rem; font-weight:500; line-height:1.5;
  overflow-wrap:anywhere; text-wrap:pretty}
.ep-num{display:inline-block; min-width:2.3em; padding:0 6px; margin-inline-end:4px;
  border-radius:6px; background:var(--surface-2); border:1px solid var(--line);
  color:var(--ink-3); font-size:.74rem; font-weight:600; line-height:1.55;
  text-align:center; vertical-align:2px; font-variant-numeric:tabular-nums}
.ep-meta{margin:2px 0 0; font-size:.82rem; color:var(--ink-3);
  display:flex; flex-wrap:wrap; align-items:center; gap:var(--s1) var(--s3);
  font-variant-numeric:tabular-nums}
.dl{display:inline-flex; align-items:center; gap:4px; color:var(--accent-text);
  text-decoration:none; font-weight:600; min-height:32px}
.dl:hover{text-decoration:underline}
/* אזור לחיצה של 44 פיקסלים בלי להגדיל את השורה */
.dl, .desc-more{position:relative}
.dl::after, .desc-more::after{content:""; position:absolute; inset:-6px -6px}
.dl svg{width:15px; height:15px; flex:none}
.soon{color:var(--ink-3)}
.ep-desc{margin:var(--s1) 0 0; font-size:.88rem; color:var(--ink-2); line-height:1.6}
.ep-desc p{margin:0 0 var(--s1)}
.ep-desc p:last-child{margin-bottom:0}
.ep-desc.is-clamped{display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden}
.desc-more{margin-top:2px; min-height:32px; padding:0; border:0; background:none;
  color:var(--accent-text); font:inherit; font-size:.82rem; font-weight:600; cursor:pointer}
.desc-more:hover{text-decoration:underline}
.empty{padding:var(--s5); text-align:center; color:var(--ink-3)}

/* טלפון: פחות הזחה לכל רמה, כדי שגם רמה חמישית לא תידחס לפס צר */
@media (max-width:640px){
  .node.d1 > .node-hd .node-topic{font-size:1.06rem}
  .node-h{grid-template-columns:18px minmax(0,1fr) auto; column-gap:var(--s2)}
  .node-h.no-lbl{grid-template-areas:"chev topic topic" "chev meta meta" "chev peek peek"}
  .node-h.no-lbl .node-meta{margin-top:2px}
  .chev{width:18px; height:18px}
  .node.d1 > .node-hd .node-h{padding:var(--s3)}
  .node.d1 > .node-b > .node-in{padding:0 var(--s3) var(--s2)}
  .node:not(.d1) > .node-hd .node-h{padding-inline:var(--s1)}
  .node:not(.d1) > .node-b > .node-in{margin-inline-start:12px; padding-inline-start:8px}
  .node.d3 > .node-b > .node-in, .node.d4 > .node-b > .node-in{margin-inline-start:6px; padding-inline-start:6px}
  .ep{gap:var(--s2); padding-inline:var(--s1)}
}

/* ---- עמוד אוסף: החיבורים כרמה העליונה של אותו עץ ---- */
.works-h{margin:0 0 var(--s4)}
.works{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:var(--s3)}
.work{background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg);
  box-shadow:var(--shadow)}
.work-h{display:flex; align-items:center; gap:var(--s4); padding:var(--s4);
  border-radius:calc(var(--r-lg) - 1px); color:inherit; text-decoration:none; transition:background .15s ease}
.work-h:hover{background:var(--surface-2)}
.work-h .cover{width:72px; height:72px}
.work-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:2px}
.work-name{font-size:1.12rem; font-weight:700; line-height:1.35; text-wrap:balance}
.work-h:hover .work-name{color:var(--accent)}
.go{width:20px; height:20px; flex:none; color:var(--accent)}
.work-parts{list-style:none; margin:0 var(--s4) var(--s3); margin-inline-start:calc(var(--s4) + 8px);
  padding:0; padding-inline-start:var(--s2); border-inline-start:2px solid var(--line-2)}
.work-parts a{display:flex; align-items:baseline; justify-content:space-between; gap:var(--s3);
  min-height:44px; padding:10px var(--s2); border-radius:8px; color:var(--ink);
  text-decoration:none; font-size:.94rem; line-height:1.45}
.work-parts a:hover{background:var(--surface-2)}
.work-parts a:hover .wp-topic{color:var(--accent)}
.wp-txt{min-width:0}
.wp-topic{font-weight:600}
.work-parts .node-lbl{margin-inline-end:4px}
@media (max-width:520px){
  .work-h{gap:var(--s3); padding:var(--s3)}
  .work-h .cover{width:60px; height:60px}
  .work-parts{margin-inline:var(--s2) var(--s3)}
  .work-parts a{flex-direction:column; align-items:flex-start; gap:0}
}

.player{position:fixed; inset-inline:0; bottom:0; z-index:40; background:var(--surface);
  border-top:1px solid var(--line-2);
  padding:var(--s3) var(--s4) calc(var(--s3) + env(safe-area-inset-bottom));
  box-shadow:0 -6px 24px rgba(36,31,23,.10); transform:translateY(110%);
  transition:transform .24s cubic-bezier(.22,1,.36,1)}
.player:not(.open){visibility:hidden; transition:transform .24s cubic-bezier(.22,1,.36,1), visibility 0s .24s}
.player.open{transform:translateY(0)}
.player-inner{max-width:960px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"text top" "aut aut" "row row" "tools tools"; column-gap:var(--s2); align-items:center}
.player-text{grid-area:text; min-width:0}
.player-title{margin:0; font-size:.92rem; font-weight:600; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis}
.player audio{flex:1; min-width:0; width:100%; height:36px}
.close{width:44px; height:44px; flex:none; border:0; background:none; color:var(--ink-3);
  cursor:pointer; border-radius:50%; display:grid; place-items:center}
.close:hover{background:var(--surface-2); color:var(--ink)}
.close svg{width:18px; height:18px}

@media (max-width:520px){
  /* כרטיס סדרה בטלפון: עטיפה קטנה יותר, יותר מקום לשם */
  .card-link{gap:var(--s3); padding:var(--s3)}
  .card-link .cover{width:76px; height:76px}
  .stats{gap:var(--s5)}
  .stats dd{font-size:1.3rem}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important; transition:none!important}}

/* ---- דף הבית: הכותרת המזמינה (17/9/2026) ---- */
/* המספרים ירדו מהכותרת לתחתית. 3,475 שיעורים הם עדות לעומק אחרי שהחלטת
   להיכנס, לא סיבה להיכנס — בראש עומד ספר אחד שאפשר להתחיל בו היום. */
.lede{margin:0 0 var(--s4); font-size:clamp(1.05rem,2.6vw,1.35rem);
  font-weight:600; color:var(--ink)}
.hook{margin:0 0 var(--s6); padding-inline-start:var(--s4);
  border-inline-start:3px solid var(--accent); color:var(--ink-2)}
.hook strong{color:var(--ink)}
.blurb strong{color:var(--ink)}

.how{display:grid; gap:var(--s4); margin:0; padding:0; list-style:none;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); counter-reset:how}
.how li{counter-increment:how; padding:var(--s4); background:var(--surface);
  border:1px solid var(--line); border-radius:var(--r-lg)}
/* 🚨 המספר בזרימה ולא ממוקם אבסולוטית: ב-RTL הוא ישב בפינה הימנית-עליונה
   בדיוק במקום שבו מתחילה הכותרת, ו«או פשוט מקשיבים» נקרא «אי פשוט». */
.how li::before{content:counter(how); display:grid; place-items:center;
  width:26px; height:26px; margin-block-end:var(--s3); border-radius:50%;
  background:var(--accent-soft); color:var(--accent);
  font-size:.8rem; font-weight:700}
.how b{display:block; margin-block-end:var(--s1); font-size:1.02rem}
.how span{color:var(--ink-2); font-size:.94rem}

footer .stats{margin-block-end:var(--s4)}

/* כמה האזינו לשיעור — עדין בכוונה: מידע, לא הישג */
.plays{display:inline-flex; align-items:center; gap:4px; color:var(--ink-3);
  font-variant-numeric:tabular-nums; cursor:default}
.plays svg{width:15px; height:15px; flex:none}

/* חלק שהרב כבר הגדיר בדרייב ועוד לא נלמד — נראה, אבל בשקט */
.node-ahead{margin:4px 0 8px; font-size:.88rem; color:var(--ink-3)}

/* ---- שבירת שורות בשם (site.js → Site.name) ----
   יחידה שצריכה להישאר שלמה — «לרבינו יהודה הלוי», «על חכמים ומשנתם —» —
   עוברת שלמה לשורה הבאה, ונשברת בתוכה רק אם היא ארוכה משורה שלמה. */
.nm{display:inline-block; max-width:100%}
/* קו תחתון לא עובר לתוך inline-block */
.trail a:hover .nm{text-decoration:underline}

/* ---- פס עליון: המקום באתר, ומולו התרומה ---- */
/* align-items:flex-start — כששרשרת ארוכה נשברת לשתי שורות, התרומה נשארת
   מול השורה הראשונה ולא צפה באמצע */
.topbar{display:flex; align-items:flex-start; justify-content:space-between; gap:var(--s2) var(--s3);
  min-height:52px; padding-block:var(--s1)}
.topbar-home{align-items:center}
.topbar-home .top-act{margin-block:0}
.topbar .trail{flex:1 1 auto; min-width:0; padding-top:0}
/* ב-RTL זה דוחף שמאלה — אל הצד שמול תחילת הקריאה. בכוונה, ובדוק בעין.
   התרומה והכניסה לחשבון יושבות יחד בקבוצה אחת בקצה. */
.top-act{flex:none; margin-inline-start:auto; margin-block:4px; display:flex; align-items:center; gap:var(--s2)}
.donate{position:relative; flex:none; display:inline-flex; align-items:center;
  gap:6px; min-height:36px; padding:0 14px 0 12px; border-radius:999px;
  border:1px solid var(--line-2); background:var(--surface); color:var(--accent-text);
  font-size:.86rem; font-weight:600; line-height:1; text-decoration:none; white-space:nowrap;
  -webkit-tap-highlight-color:transparent; transition:border-color .18s ease, background .18s ease}
.donate::after{content:""; position:absolute; inset:-4px -2px}
.donate:hover{border-color:var(--accent); background:var(--accent-soft)}
.donate svg{width:16px; height:16px; flex:none; color:var(--accent)}
/* מסך צר מאוד: «תרומה» בלבד, כדי ששרשרת המקום תישאר בשורה אחת */
@media (max-width:380px){ .dn-x{display:none} }
/* כשיש גם כפתור כניסה — «תרומה» בלבד כבר מתחת ל-480, כדי שהפס יישאר שורה אחת */
@media (max-width:480px){ .acct-on .dn-x{display:none} }

/* ---- תחתית: יצירת קשר ---- */
.site-foot{margin-top:var(--s6)}
.contact{margin-bottom:var(--s6); color:var(--ink-2); font-size:.95rem}
.contact-grid{display:grid; gap:var(--s3); grid-template-columns:repeat(auto-fit,minmax(270px,1fr));
  margin-bottom:var(--s4)}
.contact-g{padding:var(--s3) var(--s4) var(--s2); background:var(--surface);
  border:1px solid var(--line); border-radius:var(--r-lg)}
.contact-g h3{margin:0 0 2px; font-size:1rem; font-weight:700; color:var(--ink)}
.contact-g ul{list-style:none; margin:0; padding:0}
.contact-g a{display:flex; align-items:center; gap:var(--s2); min-height:44px;
  color:var(--ink); text-decoration:none; font-weight:500}
.contact-g a svg{width:18px; height:18px; flex:none; color:var(--accent)}
.contact-g a:hover .c-val{text-decoration:underline; color:var(--accent-text)}
.c-val{overflow-wrap:anywhere; font-variant-numeric:tabular-nums}
.wa svg, .contact-g a.wa svg{color:#1F9E50}
@media (prefers-color-scheme:dark){ .wa svg, .contact-g a.wa svg{color:#3CCB6E} }

/* ---- דף הבית: ממשיכים ללמוד ---- */
.cont{margin:var(--s5) 0 var(--s6)}
.cont-list{list-style:none; margin:0; padding:0; display:grid; gap:var(--s3);
  grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}
.cont-link{display:flex; align-items:center; gap:var(--s3); height:100%; padding:var(--s3);
  background:var(--surface); border:1px solid var(--line-2); border-radius:var(--r-lg);
  box-shadow:var(--shadow); color:inherit; text-decoration:none;
  -webkit-tap-highlight-color:transparent; transition:border-color .18s ease}
.cont-link:hover{border-color:var(--accent)}
.cont-link:active{background:var(--surface-2)}
.cont-link .cover{width:56px; height:56px}
.cont-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:3px}
.cont-name{font-weight:700; line-height:1.3}
.cont-next{font-size:.86rem; color:var(--ink-2); line-height:1.45;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.cont-next b{color:var(--accent-text); font-weight:600}
.cont-go{flex:none; width:44px; height:44px; border-radius:50%; display:grid; place-items:center;
  background:var(--accent); color:var(--accent-ink)}
.cont-go svg{width:20px; height:20px}
.cont-note{margin:var(--s2) 0 0; font-size:.8rem; color:var(--ink-3)}
@media (max-width:520px){
  .cont-link{gap:var(--s2) var(--s3); padding:var(--s3) var(--s3) var(--s3) var(--s2)}
  .cont-link .cover{width:48px; height:48px; align-self:flex-start}
  .cont-name{font-size:.96rem}
  .cont-next{font-size:.84rem}
  .cont-go{width:40px; height:40px}
}

/* ---- עמוד סדרה: המשך מאיפה שעצרת ---- */
.resume{margin-top:var(--s4); max-width:560px}
.resume-btn{display:flex; align-items:center; gap:var(--s3); width:100%; padding:var(--s3) var(--s4);
  border:1px solid var(--accent); border-radius:var(--r-lg); background:var(--surface);
  box-shadow:var(--shadow); color:inherit; font:inherit; text-align:start; cursor:pointer;
  -webkit-tap-highlight-color:transparent; transition:background .18s ease}
.resume-btn:hover{background:var(--accent-soft)}
.resume-btn:active{background:var(--surface-2)}
.resume-ic{flex:none; width:44px; height:44px; border-radius:50%; display:grid; place-items:center;
  background:var(--accent); color:var(--accent-ink)}
.resume-ic svg{width:20px; height:20px}
.resume-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:1px}
.resume-k{font-size:.84rem; font-weight:700; color:var(--accent-text)}
.resume-t{font-weight:600; line-height:1.4;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.resume-m{font-size:.8rem; color:var(--ink-3); font-variant-numeric:tabular-nums}
.resume-note{margin:var(--s2) 0 0; font-size:.8rem; color:var(--ink-3); font-variant-numeric:tabular-nums}

/* שורת שיעור: «שמעתי» ו«נעצר ב־» */
.mark{position:relative; display:inline-flex; align-items:center; gap:5px; min-height:32px;
  padding:0; border:0; background:none; color:var(--ink-3); font:inherit; font-size:.82rem;
  font-weight:600; cursor:pointer; -webkit-tap-highlight-color:transparent}
.mark::after{content:""; position:absolute; inset:-6px -6px}
.mark svg{width:18px; height:18px; flex:none}
.mark .ck-on{display:none}
.mark:hover{color:var(--ink-2)}
.mark[aria-pressed="true"]{color:var(--accent-text)}
.mark[aria-pressed="true"] .ck-off{display:none}
.mark[aria-pressed="true"] .ck-on{display:block}
.ep.is-heard .ep-t{color:var(--ink-3)}
.ep-at{color:var(--accent-text); font-weight:600}
.node-meta .heard{color:var(--accent-text); font-weight:600}

/* הנגן: «המשך מ־12:34 · להתחיל מההתחלה» */
.p-resume{margin:2px 0 0; font-size:.82rem; color:var(--ink-3); font-variant-numeric:tabular-nums}
.p-restart{position:relative; margin-inline-start:var(--s2); padding:0; border:0; background:none;
  color:var(--accent-text); font:inherit; font-weight:600; cursor:pointer; text-decoration:underline;
  text-underline-offset:3px}
.p-restart::after{content:""; position:absolute; inset:-12px -8px}

/* ==== חשבון, סנכרון ורשימות השמעה (9/10/2026) ==== */

/* מה שהמקלדת מגיעה אליו לא נעלם מאחורי הנגן שבתחתית */
html{scroll-padding-bottom:calc(var(--player-h) + var(--s2))}

/* כל מה ששייך לחשבון מופיע רק כשיש חשבונות באתר (account.js מוסיף acct-on) */
html:not(.acct-on) .addl, html:not(.acct-on) .p-add{display:none!important}

/* כפתור כמו קישור — בתוך משפט */
.link{display:inline; padding:0; border:0; background:none; font:inherit; font-weight:600;
  color:var(--accent-text); text-decoration:underline; text-underline-offset:3px; cursor:pointer}
.link:hover{color:var(--ink)}

/* ראש העמוד: כניסה / החשבון שלי, ליד התרומה */
.acct{position:relative; flex:none; display:inline-flex; align-items:center; gap:6px; min-height:36px;
  padding:0 12px 0 10px; border-radius:999px; border:1px solid var(--line-2); background:var(--surface);
  color:var(--ink); font:inherit; font-size:.86rem; font-weight:600; line-height:1; white-space:nowrap;
  text-decoration:none; cursor:pointer; -webkit-tap-highlight-color:transparent;
  transition:border-color .18s ease, background .18s ease}
.acct::after{content:""; position:absolute; inset:-4px -2px}
.acct:hover{border-color:var(--accent); background:var(--accent-soft)}
.acct svg{width:17px; height:17px; flex:none; color:var(--accent)}
.acct-av{display:grid; place-items:center; width:24px; height:24px; margin-inline-start:-4px; border-radius:50%;
  background:var(--accent); color:var(--accent-ink); font-size:.78rem; font-weight:700}
.acct[aria-current]{border-color:var(--accent)}
/* טלפון: «החשבון» בלבד (כמו «תרומה» בלי «לפרויקט»), כדי שהפס יישאר שורה אחת.
   מתחת ל-360 — רק העיגול עם האות, והשם המלא נשאר לקורא המסך. */
@media (max-width:420px){ .acct-x{display:none} }
@media (max-width:359px){
  .acct.is-in .acct-l{position:absolute!important; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap}
  .acct.is-in{padding:0 5px}
  .acct.is-in .acct-av{margin:0}
}

/* חלונות: כניסה והוספה לרשימה. בטלפון — גיליון שעולה מלמטה */
.dlg{width:min(440px, calc(100% - 32px)); max-height:calc(100dvh - 32px); margin:auto; padding:0;
  border:1px solid var(--line-2); border-radius:var(--r-lg); background:var(--surface); color:var(--ink);
  box-shadow:0 20px 50px rgba(20,16,10,.25); overscroll-behavior:contain}
.dlg::backdrop{background:rgba(20,16,10,.5)}
.dlg[open]{animation:dlg-in .22s cubic-bezier(.22,1,.36,1)}
@keyframes dlg-in{from{opacity:0; transform:translateY(12px)}to{opacity:1; transform:none}}
@media (max-width:520px){
  .dlg{width:100%; max-width:none; margin:auto 0 0; border-radius:var(--r-lg) var(--r-lg) 0 0;
    border-inline:0; border-bottom:0; max-height:92dvh}
}
.dlg-in{display:flex; flex-direction:column; gap:var(--s3); padding:var(--s3) var(--s5) calc(var(--s5) + env(safe-area-inset-bottom))}
@media (max-width:520px){ .dlg-in{padding-inline:var(--s4)} }
.dlg-head{display:flex; align-items:center; justify-content:space-between; gap:var(--s3); margin-inline-end:calc(-1 * var(--s2))}
.dlg-head h2{margin:0; font-size:1.2rem; font-weight:700}
.dlg-why{margin:0; padding:var(--s2) var(--s3); border-radius:var(--r); background:var(--accent-soft);
  color:var(--ink); font-weight:600; font-size:.92rem}
.dlg-lead{margin:0; color:var(--ink-2); font-size:.92rem; line-height:1.55}
.dlg-what{margin:0; color:var(--ink-2); font-size:.9rem; font-weight:600; line-height:1.5}
.dlg-what:empty{display:none}
.dlg-err{margin:0; color:#A3321F; font-weight:600; font-size:.9rem}
.dlg-err:empty{display:none}
@media (prefers-color-scheme:dark){ .dlg-err{color:#FF9C85} }
.dlg-status{margin:0; min-height:1.4em; color:var(--accent-text); font-weight:600; font-size:.9rem}
.dlg-switch{margin:0; text-align:center; color:var(--ink-2); font-size:.92rem}
.dlg-switch .link{min-height:44px; display:inline-flex; align-items:center}
.btn-wide{width:100%; justify-content:center; min-height:48px; font-size:1rem}
.btn:disabled{opacity:.6; cursor:progress}

/* שדות */
.fld{display:flex; flex-direction:column; gap:4px}
.fld label, .new-list label{font-weight:600; font-size:.92rem}
.opt{font-weight:400; color:var(--ink-3)}
.fld input, .new-list input, .pl-rename input{width:100%; min-height:48px; padding:var(--s2) var(--s3); font:inherit; font-size:16px;
  color:var(--ink); background:var(--bg); border:1px solid var(--line-2); border-radius:var(--r); -webkit-appearance:none}
.fld input:focus-visible, .new-list input:focus-visible, .pl-rename input:focus-visible{outline:3px solid var(--ring); outline-offset:1px}
.fld input[dir=ltr]{text-align:left}
.hint{margin:0; color:var(--ink-3); font-size:.82rem}
.pw{position:relative}
/* השדה נכתב משמאל לימין, ולכן העין בצד ימין שלו — בסוף השדה, לא על הטקסט */
.pw input{padding-right:52px}
.pw-eye{position:absolute; inset-block:2px; right:2px; width:44px; border:0; border-radius:var(--r);
  background:none; color:var(--ink-3); cursor:pointer; display:grid; place-items:center}
.pw-eye svg{width:20px; height:20px}
.pw-eye[aria-pressed=true]{color:var(--accent)}
.forgot{font-size:.9rem; color:var(--ink-2); border-top:1px solid var(--line); padding-top:var(--s2)}
.forgot summary{min-height:44px; display:flex; align-items:center; justify-content:center; cursor:pointer;
  color:var(--accent-text); font-weight:600}
.forgot p{margin:0 0 var(--s2)}
.forgot-l{display:flex; gap:var(--s2); flex-wrap:wrap; justify-content:center}
/* כניסה עם Google — נוסף לחלון רק כשהיא מופעלת (account.js). הכפתור עצמו של Google */
.gsi{display:flex; flex-direction:column; gap:var(--s3)}
.gsi-btn{display:flex; justify-content:center; min-height:44px}
.gsi-st{margin:0; color:var(--ink-2); font-size:.9rem; font-weight:600; text-align:center}
.gsi-st:empty{display:none}
.gsi-or{display:flex; align-items:center; gap:var(--s3); margin:0; color:var(--ink-3); font-size:.85rem}
.gsi-or::before, .gsi-or::after{content:""; flex:1; border-top:1px solid var(--line)}

/* הוספה לרשימה: כל רשימה היא מתג */
.pick{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:var(--s2);
  max-height:min(40dvh, 320px); overflow:auto}
.pick-b{display:flex; align-items:center; gap:var(--s3); width:100%; min-height:52px; padding:var(--s2) var(--s3);
  border:1px solid var(--line-2); border-radius:var(--r); background:var(--surface); color:var(--ink);
  font:inherit; text-align:start; cursor:pointer; transition:background .15s ease, border-color .15s ease}
.pick-b:hover{border-color:var(--accent)}
.pick-ck{flex:none; width:24px; height:24px; border-radius:6px; border:2px solid var(--line-2); display:grid; place-items:center; color:transparent}
.pick-ck svg{width:16px; height:16px; stroke-width:3}
.pick-b[aria-pressed=true]{background:var(--accent-soft); border-color:var(--accent)}
.pick-b[aria-pressed=true] .pick-ck{background:var(--accent); border-color:var(--accent); color:var(--accent-ink)}
.pick-n{flex:1; min-width:0; font-weight:600; overflow-wrap:anywhere}
.pick-c{flex:none; color:var(--ink-3); font-size:.82rem; font-variant-numeric:tabular-nums}
.new-list{display:flex; flex-direction:column; gap:4px}
.nl-row{display:flex; gap:var(--s2)}
.nl-row input{flex:1; min-width:0}
.nl-row .btn{flex:none; min-height:48px}
@media (max-width:420px){ .nl-row{flex-direction:column} .nl-row .btn{justify-content:center} }

/* הודעה קצרה בתחתית, מעל הנגן */
.toast{position:fixed; inset-inline:var(--s4); bottom:calc(var(--player-h) + var(--s4) + env(safe-area-inset-bottom));
  z-index:60; margin:0 auto; max-width:480px; padding:var(--s3) var(--s4); border-radius:var(--r);
  background:var(--ink); color:var(--bg); font-weight:600; font-size:.92rem; line-height:1.5;
  box-shadow:var(--shadow); opacity:0; transform:translateY(8px); pointer-events:none;
  transition:opacity .2s ease, transform .2s ease}
.toast.show{opacity:1; transform:none; pointer-events:auto}
.toast-undo{display:flex; align-items:center; justify-content:space-between; gap:var(--s3)}
.toast-undo .link{color:var(--bg); min-height:44px}

/* ---- דף הבית: המקום שבו עצרת ---- */
.last-card{display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-areas:"cover txt" "acts acts";
  gap:var(--s3) var(--s4); padding:var(--s4); margin-bottom:var(--s3);
  background:var(--surface); border:1px solid var(--accent); border-radius:var(--r-lg); box-shadow:var(--shadow)}
.last-card .cover{grid-area:cover; width:96px; height:96px}
.last-txt{grid-area:txt; min-width:0; display:flex; flex-direction:column; gap:2px}
.last-k{margin:0; font-size:.8rem; font-weight:700; letter-spacing:.04em; color:var(--accent-text)}
.last-s{margin:0; font-size:.88rem; font-weight:600; color:var(--ink-2); line-height:1.4}
.last-t{margin:0; font-size:1.12rem; font-weight:700; line-height:1.4; text-wrap:pretty}
.last-at{margin:2px 0 0; font-size:.9rem; color:var(--ink-2); font-variant-numeric:tabular-nums}
.last-at b{color:var(--ink); font-weight:700}
.bar{display:block; height:6px; margin-top:6px; border-radius:999px; background:var(--surface-2);
  border:1px solid var(--line); overflow:hidden}
.bar > span{display:block; height:100%; background:var(--accent); border-radius:999px}
.last-acts{grid-area:acts; display:flex; gap:var(--s2); flex-wrap:wrap}
.last-acts .btn{min-height:48px; font-size:.96rem}
.last-play{flex:1 1 180px; justify-content:center}
.last-open{flex:1 1 220px; justify-content:center}
@media (min-width:760px){
  .last-card{grid-template-columns:auto minmax(0,1fr) auto; grid-template-areas:"cover txt acts"; align-items:center}
  .last-acts{flex-direction:column; min-width:230px}
  .last-play, .last-open{flex:none}
}
@media (max-width:520px){
  .last-card{padding:var(--s3); gap:var(--s3)}
  .last-card .cover{width:68px; height:68px; align-self:start}
  .last-t{font-size:1.02rem}
}

/* שאר הסדרות שהתחילו: הכרטיס הוא קישור, והכפתור העגול מנגן כאן */
.cont-item{position:relative; display:flex; align-items:center}
.cont-item .cont-link{flex:1; min-width:0; padding-inline-end:calc(44px + var(--s4))}
.cont-item .cont-go{position:absolute; inset-inline-end:var(--s3); top:50%; transform:translateY(-50%);
  border:0; cursor:pointer; font:inherit}
.cont-go:hover{filter:brightness(1.08)}
@media (max-width:520px){ .cont-item .cont-link{padding-inline-end:calc(40px + var(--s3))} }

/* מה שלא רוצים לראות ב«ממשיכים ללמוד» (cont.js): X בפינת כל כרטיס, ו«הסתרה»
   שמקפלת את כל הקטע לשורת הכותרת */
.cont-head{display:flex; align-items:center; gap:var(--s2) var(--s3); margin:0 0 var(--s4)}
.cont-head .section-h{flex:1; min-width:0; margin:0}
.cont-head .section-h:focus{outline:none}
.cont-fold-n{color:var(--ink-3); font-size:.9rem; white-space:nowrap}
.cont-fold{min-height:44px; padding-inline:var(--s2); color:var(--ink-2); font-size:.92rem; cursor:pointer}
.cont.is-folded .wrap > :not(.cont-head){display:none}
.cont.is-folded .cont-head{margin:0}
.cont.band.is-folded{padding-block:var(--s3)}
.last-card{position:relative}
.cont-x{position:absolute; z-index:1; inset-block-start:-10px; inset-inline-end:-10px; width:30px; height:30px;
  display:grid; place-items:center; padding:0; border-radius:50%; border:1px solid var(--line-2);
  background:var(--surface); color:var(--ink-3); box-shadow:var(--shadow); cursor:pointer;
  -webkit-tap-highlight-color:transparent; transition:color .15s ease, border-color .15s ease}
.cont-x::before{content:""; position:absolute; inset:-7px}
.cont-x svg{width:15px; height:15px}
.cont-x:hover{color:var(--ink); border-color:var(--ink-3)}

/* ---- הנגן ---- */
.player-sub{margin:1px 0 0; font-size:.8rem; color:var(--ink-3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.p-row{grid-area:row; display:flex; align-items:center; gap:var(--s1); margin-top:var(--s1)}
.p-skip{flex:none; width:44px; height:44px; border:0; border-radius:50%; background:none; color:var(--ink-2);
  cursor:pointer; display:grid; place-items:center}
.p-skip:hover:not(:disabled){background:var(--surface-2); color:var(--ink)}
.p-skip:disabled{opacity:.35; cursor:default}
.p-skip svg{width:20px; height:20px}
.p-top{grid-area:top; align-self:start; justify-self:end; display:flex; align-items:center; gap:2px; margin-top:-6px; margin-inline-end:-8px}
.p-add{display:inline-flex; align-items:center; justify-content:center; gap:4px; min-width:44px; min-height:44px;
  padding:0 8px; border:0; border-radius:999px; background:none; color:var(--accent-text); font:inherit;
  font-size:.8rem; font-weight:600; cursor:pointer}
.p-add:hover{background:var(--surface-2)}
.p-add svg{width:20px; height:20px}
/* טלפון: סמל בלבד, והמילה נשארת שם הכפתור לקורא המסך ולשליטה בקול */
@media (max-width:520px){ .p-add-t{position:absolute!important; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap} }

/* שורת שיעור: «לרשימה» */
.addl{position:relative; display:inline-flex; align-items:center; gap:4px; min-height:32px; padding:0; border:0;
  background:none; color:var(--ink-3); font:inherit; font-size:.82rem; font-weight:600; cursor:pointer;
  -webkit-tap-highlight-color:transparent}
.addl::after{content:""; position:absolute; inset:-6px -6px}
.addl svg{width:17px; height:17px; flex:none}
.addl:hover{color:var(--ink-2)}
.addl.is-in{color:var(--accent-text)}

/* ---- עמוד החשבון ---- */
.me-head{padding-block:var(--s3) var(--s4)}
.me-head h1{margin:0 0 var(--s1); font-size:clamp(1.6rem,4vw,2.2rem)}
.me-who{margin:0; color:var(--ink-2); font-weight:500; overflow-wrap:anywhere}
.me-admin{margin:var(--s3) 0 0}
.me{padding-top:var(--s4)}
.me-wait{color:var(--ink-3)}
.me-sec{margin-bottom:var(--s7)}
.me-card{padding:var(--s4); background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg); box-shadow:var(--shadow)}
.me-card h2, .me-card h3{margin:0 0 var(--s2); font-size:1.08rem}
.me-card p{margin:0 0 var(--s3); color:var(--ink-2)}
#me-anon{max-width:560px; margin-bottom:var(--s6)}
.me-btns{display:flex; gap:var(--s2); flex-wrap:wrap}
.me-grid{display:grid; gap:var(--s3); grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); align-items:start}
.me-grid form{display:flex; flex-direction:column; gap:var(--s3)}
.me-grid form p{margin:0}
.me-grid .btn{align-self:flex-start}
.me-ok{color:var(--accent-text); font-weight:600}
.me-ok:empty{display:none}
.me-out{margin-top:var(--s5); display:flex; flex-direction:column; align-items:flex-start; gap:var(--s1)}
.me-danger{margin-top:var(--s5); padding-top:var(--s3); border-top:1px solid var(--line)}
.me-danger summary{min-height:44px; display:inline-flex; align-items:center; cursor:pointer; color:var(--ink-2); font-weight:600}
.me-danger form{display:flex; flex-direction:column; gap:var(--s3); max-width:420px; padding-top:var(--s2)}
.me-danger p{margin:0; color:var(--ink-2)}
.btn-danger{align-self:flex-start; background:#A3321F; border-color:#A3321F; color:#fff}
.btn-danger:hover{background:#8A2818; border-color:#8A2818}
.btn-quiet-danger{color:#A3321F}
@media (prefers-color-scheme:dark){ .btn-quiet-danger{color:#FF9C85} }
.me-empty{margin:0 0 var(--s3); color:var(--ink-3)}
#pl-new{margin-top:var(--s3); max-width:560px}

/* רשימת השמעה */
.pl{margin-bottom:var(--s4); background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg); box-shadow:var(--shadow)}
.pl > .me-empty{padding:0 var(--s4) var(--s4); margin:0}
.pl-head{display:grid; grid-template-columns:minmax(0,1fr) auto; gap:var(--s1) var(--s3); align-items:center;
  padding:var(--s4)}
.pl-name{margin:0; font-size:1.14rem; font-weight:700; overflow-wrap:anywhere}
.pl-meta{margin:0; grid-column:1; color:var(--ink-3); font-size:.86rem; font-variant-numeric:tabular-nums}
.pl-acts{grid-column:2; grid-row:1 / span 2; display:flex; gap:var(--s2); flex-wrap:wrap; justify-content:flex-end}
@media (max-width:640px){
  .pl-head{grid-template-columns:1fr}
  .pl-acts{grid-column:1; grid-row:auto; justify-content:flex-start; margin-top:var(--s2)}
}
.pl-rename{display:flex; gap:var(--s2); flex-wrap:wrap; align-items:center}
.pl-rename input{flex:1 1 200px; width:auto}
.pl-items{list-style:none; margin:0; padding:0 var(--s3) var(--s2); counter-reset:pl}
.pl-it{display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:var(--s3); align-items:center;
  padding:var(--s2) var(--s1); border-top:1px solid var(--line)}
.pl-it.is-playing{background:var(--accent-soft); border-radius:10px; border-top-color:transparent}
.pl-it.is-playing + .pl-it{border-top-color:transparent}
.pl-txt{min-width:0}
.pl-t{margin:0; font-weight:600; line-height:1.45; overflow-wrap:anywhere}
.pl-t a{color:inherit; text-decoration:none}
.pl-t a:hover{color:var(--accent); text-decoration:underline}
.pl-it.is-heard .pl-t{color:var(--ink-2)}
.pl-s{margin:2px 0 0; color:var(--ink-3); font-size:.82rem; line-height:1.45; font-variant-numeric:tabular-nums}
.pl-at{color:var(--accent-text); font-weight:600; white-space:nowrap}
.pl-heard{display:inline-flex; align-items:center; gap:3px; color:var(--accent-text); font-weight:600}
.pl-heard svg{width:14px; height:14px}
.pl-ord{display:flex; gap:2px}
.ic{width:44px; height:44px; border:0; border-radius:50%; background:none; color:var(--ink-3); cursor:pointer;
  display:grid; place-items:center}
.ic:hover:not(:disabled){background:var(--surface-2); color:var(--ink)}
.ic:disabled{opacity:.3; cursor:default}
.ic svg{width:20px; height:20px}
@media (max-width:520px){
  .pl-it{grid-template-columns:auto minmax(0,1fr); grid-template-areas:"play txt" "ord ord"; gap:var(--s1) var(--s2)}
  .pl-it .play{grid-area:play; align-self:start}
  .pl-txt{grid-area:txt}
  /* כפתורי הסדר מתחת לכותרת של אותו שיעור, לא בקצה השני של המסך */
  .pl-it{grid-template-areas:"play txt" ". ord"}
  .pl-ord{grid-area:ord; justify-content:flex-start; margin-top:-6px; margin-inline-start:-10px}
  .pl-items{padding-inline:var(--s2)}
}

/* ההתקדמות בכל הסדרות */
.prog{list-style:none; margin:0; padding:0; display:grid; gap:var(--s3); grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.prog-it{position:relative}
.prog-link{display:flex; gap:var(--s3); align-items:flex-start; height:100%; padding:var(--s3);
  padding-inline-end:calc(44px + var(--s4)); background:var(--surface); border:1px solid var(--line);
  border-radius:var(--r-lg); box-shadow:var(--shadow); color:inherit; text-decoration:none}
.prog-link:hover{border-color:var(--accent)}
.prog-link .cover{width:56px; height:56px}
.prog-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:3px}
.prog-n{font-size:.84rem; color:var(--accent-text); font-weight:600; font-variant-numeric:tabular-nums}
.prog-txt .bar{margin-top:2px}
.prog-it .cont-go{position:absolute; inset-inline-end:var(--s3); top:var(--s3); border:0; cursor:pointer}
@media (max-width:520px){ .prog{grid-template-columns:1fr} }

/* ==== מסלולי לימוד, «נשארו 12 דק׳», הפעלה אוטומטית (13/10/2026) ==== */

/* שורת שיעור: מה שנשאר לשמוע, עם פס דק. מתמלא מימין — כמו כל פסי ההתקדמות באתר */
.ep-time{display:inline-flex; align-items:center}
.ep-left{display:inline-flex; align-items:center; gap:6px; color:var(--accent-text); font-weight:600}
.mbar{display:inline-block; flex:none; width:40px; height:4px; border-radius:999px; background:var(--line-2); overflow:hidden}
.mbar > span{display:block; height:100%; background:var(--accent); border-radius:999px}
.ep-from:empty{display:none}
.from{position:relative; display:inline-flex; align-items:center; gap:4px; min-height:32px; padding:0; border:0;
  background:none; color:var(--ink-3); font:inherit; font-size:.82rem; font-weight:600; cursor:pointer;
  -webkit-tap-highlight-color:transparent}
.from::after{content:""; position:absolute; inset:-6px -6px}
.from svg{width:16px; height:16px; flex:none}
.from:hover{color:var(--ink)}
.from-x{display:none}
@media (min-width:900px){ .from-x{display:inline} }
.trk-here{display:inline-flex; align-items:center; gap:4px; min-height:24px; padding:0 8px; border-radius:999px;
  background:var(--accent-soft); color:var(--accent-text); font-size:.78rem; font-weight:700; white-space:nowrap}
.trk-here svg{width:14px; height:14px; flex:none}
/* שיעור שהושמע: הכותרת שקטה יותר, והמספר מסומן — רואים את זה גם בגלילה מהירה */
.ep.is-heard .ep-num{background:var(--accent-soft); border-color:transparent; color:var(--accent-text)}

/* ראש עמוד הסדרה: מסלול הלימוד */
.trk{max-width:560px; padding:var(--s3) var(--s4) var(--s3); background:var(--surface);
  border:1px solid var(--accent); border-radius:var(--r-lg); box-shadow:var(--shadow)}
.trk-h{display:flex; align-items:center; gap:6px; margin:0 0 var(--s1); font-size:.84rem; font-weight:700;
  color:var(--accent-text); letter-spacing:.02em}
.trk-h svg{width:16px; height:16px; flex:none}
.trk .resume-btn{padding:var(--s2); margin-inline:calc(-1 * var(--s2)); width:calc(100% + var(--s4));
  border:0; box-shadow:none; border-radius:var(--r)}
.trk-part{margin:0 0 var(--s1); padding-inline-start:calc(44px + var(--s3)); font-size:.82rem; color:var(--ink-3); line-height:1.45}
.trk .bar{margin-top:var(--s2)}
.trk-foot{display:flex; align-items:baseline; justify-content:space-between; gap:var(--s1) var(--s3); flex-wrap:wrap; margin-top:var(--s2)}
.trk-stat{margin:0; font-size:.86rem; font-weight:600; color:var(--ink-2); font-variant-numeric:tabular-nums}
.trk-del{position:relative; font-size:.82rem; color:var(--ink-3)}
.trk-del::after{content:""; position:absolute; inset:-12px -8px}
.trk .resume-note{margin-top:var(--s1)}
.trk-done{margin:var(--s1) 0 var(--s2); font-weight:600; line-height:1.5}
.trk.is-done .btn{margin-bottom:var(--s1)}
.trk-cta{max-width:560px; margin-top:var(--s3); padding:var(--s3) var(--s4); border:1px dashed var(--line-2);
  border-radius:var(--r-lg); background:var(--surface)}
.resume > .trk-cta:first-child{margin-top:0}
.trk-cta p{margin:0 0 var(--s2); font-size:.9rem; color:var(--ink-2); line-height:1.55}
.trk-cta b{color:var(--ink)}
.trk-cta .btn svg, .trk .btn svg{color:var(--accent)}

/* ---- הנגן: «הבא בתור» ושורת הכלים ---- */
.p-autorow{grid-area:aut; display:flex; align-items:center; gap:var(--s2); min-width:0; margin-top:var(--s1)}
/* עד שתי שורות לצד המתג — בטלפון אין מקום לשם השיעור בשורה אחת */
.p-up{flex:1; min-width:0; margin:0; font-size:.78rem; line-height:1.35; color:var(--ink-2);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere}
.p-up b{color:var(--accent-text); font-weight:700}
.p-tools{grid-area:tools; display:flex; align-items:center; gap:var(--s2); margin-top:var(--s1)}
@media (min-width:900px){
  /* מסך רחב: השמע וכל הכפתורים באותה שורה */
  .player-inner{grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"text top" "aut aut" "row tools"; column-gap:var(--s4)}
  .p-tools{margin-top:var(--s1)}
}
.p-auto, .p-chip{position:relative; flex:none; display:inline-flex; align-items:center; gap:6px; min-height:40px;
  padding:0 12px; border:1px solid var(--line-2); border-radius:999px; background:var(--surface);
  color:var(--ink-2); font:inherit; font-size:.8rem; font-weight:600; line-height:1; white-space:nowrap;
  cursor:pointer; -webkit-tap-highlight-color:transparent; transition:border-color .18s ease, background .18s ease}
.p-auto:hover, .p-chip:hover{border-color:var(--accent)}
.p-auto{min-height:36px; padding-inline:6px 12px}
.p-auto::after{content:""; position:absolute; inset:-4px -2px}
.sw{position:relative; flex:none; width:30px; height:18px; border-radius:999px; background:var(--line-2);
  transition:background .18s ease}
.sw::after{content:""; position:absolute; top:2px; inset-inline-start:2px; width:14px; height:14px; border-radius:50%;
  background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.3); transition:transform .18s cubic-bezier(.22,1,.36,1)}
.p-auto[aria-checked=true]{color:var(--ink); border-color:var(--accent)}
.p-auto[aria-checked=true] .sw{background:var(--accent)}
/* RTL: כבוי — העיגול בהתחלה (ימין), דולק — בסוף (שמאל) */
.p-auto[aria-checked=true] .sw::after{transform:translateX(-12px)}
.p-chip svg{width:16px; height:16px; flex:none; color:var(--accent)}
/* הבחירה עצמה שקופה מעל הכפתור, כדי שהרשימה שנפתחת תהיה של המכשיר. צבעים מפורשים —
   בלעדיהם הרשימה שנפתחת ב-Windows במצב כהה יוצאת לבן על לבן */
.p-chip select{position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer;
  font-size:16px; border:0; background-color:var(--surface); color:var(--ink); -webkit-appearance:none; appearance:none}
.p-chip:has(select:focus-visible){outline:3px solid var(--ring); outline-offset:2px}
.p-chip.is-on{border-color:var(--accent); background:var(--accent-soft); color:var(--ink)}
.p-chip-t{font-variant-numeric:tabular-nums}
.p-jumps{display:flex; align-items:center; gap:2px; margin-inline-end:auto}
.p-jumps .p-skip{width:40px}
.p-jump{position:relative; width:44px; height:44px; border:0; border-radius:50%; background:none; color:var(--ink-2);
  cursor:pointer; display:grid; place-items:center}
.p-jump:hover{background:var(--surface-2); color:var(--ink)}
.p-jump svg{grid-area:1/1; width:30px; height:30px; stroke-width:1.6}
.p-jump span{grid-area:1/1; font-size:.62rem; font-weight:700; font-variant-numeric:tabular-nums; padding-top:1px}
@media (max-width:440px){
  .p-tools{gap:6px}
  .p-chip{padding-inline:10px}
  #p-rate-c > svg{display:none}
  .p-jump{width:40px}
}
@media (max-width:370px){
  /* הטיימר בלי מילה כשהוא כבוי — הירח מספיק, והשם המלא לקורא המסך */
  #p-sleep-c:not(.is-on) .p-chip-t{display:none}
  .p-jumps .p-skip, .p-jump{width:38px}
}
/* כהה: עיגול כהה על הזהב כשדולק — בהיר על בהיר כמעט לא נראה */
@media (prefers-color-scheme:dark){ .sw::after{background:#F2ECE0} .p-auto[aria-checked=true] .sw::after{background:var(--accent-ink)} }

/* דף הבית: מסלול לימוד ב«ממשיכים ללמוד» */
.last-trk{margin:var(--s1) 0 0; font-size:.84rem; font-weight:600; color:var(--accent-text); font-variant-numeric:tabular-nums}
.cont-trk{display:flex; align-items:center; gap:6px; font-size:.8rem; font-weight:600; color:var(--accent-text);
  font-variant-numeric:tabular-nums}
.cont-trk .mbar{width:48px}

/* עמוד החשבון: מסלולי הלימוד */
.trk-it{display:flex; flex-direction:column}
.trk-it .prog-link{flex:1; padding-bottom:calc(var(--s3) + 32px)}
.trk-it .trk-del{position:absolute; inset-inline-start:calc(56px + var(--s3) * 2); bottom:var(--s3); font-size:.82rem; color:var(--ink-3)}
.trk-part-s{font-size:.78rem; color:var(--ink-3); line-height:1.4}

/* הנגן מוקטן: הכותרת והשמע בלבד */
.p-min svg{transition:transform .2s ease}
.player.is-min .p-min svg{transform:rotate(180deg)}
.player.is-min .p-autorow, .player.is-min .p-tools, .player.is-min .p-resume, .player.is-min .player-sub{display:none!important}
.player.is-min .player-inner{grid-template-areas:"text top" "row row"}
@media (min-width:900px){ .player.is-min .player-inner{grid-template-areas:"text top" "row row"} }

/* טלפון: «הורדה» כסמל בלבד (המילה נשארת לקורא המסך), כדי ש«התחל מכאן» ייכנס
   בלי להוסיף שורה לכל שיעור */
@media (max-width:520px){
  .dl-t{position:absolute!important; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap}
  .dl svg{width:17px; height:17px}
  .ep-meta{column-gap:10px}
}
/* בשורה שמתנגנת הרקע כבר בצבע של התג — התג מקבל את רקע הכרטיס, כדי שלא ייבלע */
.ep.is-playing .trk-here{background:var(--surface)}

/* ציורי עזר לשיעור — התמונה הקטנה, והחלון שנפתח בלחיצה */
.ep-aids{list-style:none; margin:var(--s2) 0 0; padding:0; display:flex; flex-wrap:wrap; gap:var(--s2)}
.aid{display:flex; flex-direction:column; gap:4px; width:120px; padding:6px; border-radius:10px;
  background:var(--surface); border:1px solid var(--line); color:var(--accent-text);
  text-decoration:none; font-size:.8rem; font-weight:600; line-height:1.3}
.aid:hover{border-color:var(--accent-text)}
.aid:focus-visible{outline:2px solid var(--accent-text); outline-offset:2px}
.aid img{display:block; width:100%; height:58px; object-fit:contain; background:#fff; border-radius:6px}
.aid-t{display:inline-flex; align-items:center; gap:4px}
.aid-t svg{width:14px; height:14px; flex:none}

.aid-dlg{position:fixed; inset:0; width:100%; height:100%; max-width:none; max-height:none;
  margin:0; padding:0; border:0; background:var(--bg); color:var(--ink);
  display:flex; flex-direction:column; overscroll-behavior:contain}
.aid-dlg:not([open]){display:none}
.aid-dlg::backdrop{background:rgba(20,16,10,.6)}
.aid-head{display:flex; align-items:center; gap:var(--s3); padding:var(--s2) var(--s4);
  border-bottom:1px solid var(--line); background:var(--bg)}
.aid-hd{flex:1; min-width:0}
.aid-h{margin:0; font-size:1rem; color:var(--ink); letter-spacing:0}
.aid-sub{margin:0; font-size:.82rem; color:var(--ink-3); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.aid-pdf{flex:none; color:var(--accent-text); font-weight:600; font-size:.88rem; text-decoration:none;
  min-height:44px; display:inline-flex; align-items:center}
.aid-pdf:hover{text-decoration:underline}
.aid-body{flex:1; min-height:0; overflow:auto; direction:ltr; background:#fff;
  display:flex; align-items:center; justify-content:center}
.aid-zoom{display:block; margin:auto; padding:0; border:0; background:none; cursor:zoom-in}
.aid-zoom img{display:block; max-width:100%; max-height:calc(100dvh - 110px); width:auto; height:auto}
.aid-body.is-zoom{display:block}
.aid-body.is-zoom .aid-zoom{cursor:zoom-out}
.aid-body.is-zoom .aid-zoom img{max-width:none; max-height:none; width:2000px}
.aid-hint{margin:0; padding:6px var(--s4); font-size:.8rem; color:var(--ink-3); text-align:center;
  border-top:1px solid var(--line)}
@media (min-width:900px){
  .aid-dlg{inset:4vh 4vw; width:auto; height:auto; border-radius:14px; box-shadow:var(--shadow)}
  .aid-zoom img{max-height:calc(92vh - 110px)}
}

/* ==== שיתוף (14/10/2026) — share.js ==== */
/* בשורת השיעור: כמו «לרשימה» */
.shr{position:relative; display:inline-flex; align-items:center; gap:4px; min-height:32px; padding:0; border:0;
  background:none; color:var(--ink-3); font:inherit; font-size:.82rem; font-weight:600; cursor:pointer;
  -webkit-tap-highlight-color:transparent}
.shr::after{content:""; position:absolute; inset:-6px -6px}
.shr svg{width:16px; height:16px; flex:none}
.shr:hover{color:var(--ink-2)}
/* בנגן: כמו «לרשימה» שלידו */
.p-share{display:inline-flex; align-items:center; justify-content:center; gap:4px; min-width:44px; min-height:44px;
  padding:0 var(--s2); border:0; border-radius:var(--r); background:none; color:var(--ink-2);
  font:inherit; font-size:.85rem; font-weight:600; cursor:pointer}
.p-share:hover{background:var(--surface-2)}
.p-share svg{width:19px; height:19px}
@media (max-width:520px){ .p-share-t{position:absolute!important; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap} }

/* ==== הספר לצד השיעור (16/10/2026) — «בספר» בשורת השיעור ובנגן; הקורא עצמו ב-reader.css ==== */
.bk{position:relative; display:inline-flex; align-items:center; gap:4px; min-height:32px; padding:0; border:0;
  background:none; color:var(--accent-text); font:inherit; font-size:.82rem; font-weight:600; cursor:pointer;
  text-decoration:none; -webkit-tap-highlight-color:transparent}
.bk::after{content:""; position:absolute; inset:-6px -6px}
.bk svg{width:16px; height:16px; flex:none}
.bk:hover{text-decoration:underline}
.p-book{display:inline-flex; align-items:center; justify-content:center; gap:4px; min-width:44px; min-height:44px;
  padding:0 var(--s2); border:0; border-radius:var(--r); background:none; color:var(--accent-text);
  font:inherit; font-size:.85rem; font-weight:600; cursor:pointer}
.p-book[hidden]{display:none}
.p-book:hover{background:var(--surface-2)}
.p-book svg{width:19px; height:19px}
/* טלפון צר: סמל בלבד (השם נשאר לקורא המסך), כדי שכותרת השיעור בנגן לא תיבלע */
@media (max-width:400px){ .p-book-t{position:absolute!important; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap} }

/* החלון */
.sh-what{margin:0; display:flex; flex-direction:column; gap:2px; line-height:1.5}
.sh-what b{font-weight:700; overflow-wrap:anywhere}
.sh-what span{color:var(--ink-3); font-size:.88rem}
.sh-when{margin:0; padding:0; border:0; display:flex; flex-direction:column; gap:2px}
.sh-opt{display:flex; align-items:center; flex-wrap:wrap; gap:var(--s2); min-height:44px; cursor:pointer; font-size:.95rem}
.sh-opt input[type=radio]{width:20px; height:20px; margin:0; accent-color:var(--accent); flex:none}
.sh-time{width:6.5em; min-height:40px; padding:4px var(--s2); font:inherit; font-size:16px; text-align:center;
  font-variant-numeric:tabular-nums; color:var(--ink); background:var(--bg); border:1px solid var(--line-2); border-radius:var(--r)}
.sh-time:focus-visible{outline:3px solid var(--ring); outline-offset:1px}
.sh-acts{display:flex; flex-direction:column; gap:var(--s2); padding-top:var(--s3); border-top:1px solid var(--line)}
.sh-h{margin:0; font-weight:700; font-size:.92rem}
.sh-row{display:flex; flex-wrap:wrap; gap:var(--s2)}
.sh-row .btn{flex:1 1 auto; justify-content:center}
.sh-fbtn{justify-content:center; font-variant-numeric:tabular-nums}
.sh-size{color:var(--ink-3); font-weight:400}
.btn-primary .sh-size{color:inherit; opacity:.85}
.sh-desc{font-size:.88rem; color:var(--ink-2)}
.sh-desc summary{min-height:36px; display:flex; align-items:center; cursor:pointer; color:var(--accent-text); font-weight:600}
.sh-desc p{margin:var(--s1) 0 0; padding:var(--s2) var(--s3); white-space:pre-line; overflow-wrap:anywhere;
  border-radius:var(--r); background:var(--surface-2); line-height:1.55}

/* ==== מהירות השמעה (14/10/2026) — player.js ==== */
.p-chip:focus-visible{outline:3px solid var(--ring); outline-offset:2px}
.sp-main{display:flex; align-items:center; justify-content:space-between; gap:var(--s3);
  padding:var(--s3) var(--s4); border:1px solid var(--line-2); border-radius:var(--r-lg); background:var(--bg)}
.sp-pm{flex:none; width:52px; height:52px; border-radius:50%; border:1px solid var(--line-2); background:var(--surface);
  color:var(--ink); display:grid; place-items:center; cursor:pointer; -webkit-tap-highlight-color:transparent;
  transition:border-color .18s ease, background .18s ease}
.sp-pm:hover{border-color:var(--accent)}
.sp-pm:active{background:var(--accent-soft)}
.sp-pm:disabled{opacity:.35; cursor:default}
.sp-pm svg{width:22px; height:22px; stroke-width:2.4}
.sp-val{font-size:2.6rem; font-weight:700; line-height:1; color:var(--accent-text); font-variant-numeric:tabular-nums; letter-spacing:-.01em}
.sp-k{margin:-4px 0 0; text-align:center; color:var(--ink-3); font-size:.82rem}
.sp-chips{display:flex; flex-wrap:wrap; justify-content:center; gap:var(--s2)}
.sp-chip{min-width:56px; min-height:40px; padding:0 12px; border:1px solid var(--line-2); border-radius:999px;
  background:var(--surface); color:var(--ink-2); font:inherit; font-size:.9rem; font-weight:600;
  font-variant-numeric:tabular-nums; cursor:pointer; -webkit-tap-highlight-color:transparent}
.sp-chip:hover{border-color:var(--accent)}
.sp-chip[aria-pressed=true]{background:var(--accent); border-color:var(--accent); color:var(--accent-ink)}
.sp-adv-t{display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; padding:0; border:0;
  border-top:1px solid var(--line); background:none; color:var(--accent-text); font:inherit; font-size:.92rem; font-weight:600; cursor:pointer}
.sp-adv-t svg{width:18px; height:18px; transition:transform .2s ease}
.sp-adv-t[aria-expanded=true] svg{transform:rotate(180deg)}
.sp-adv{display:flex; flex-direction:column; gap:var(--s3)}
.sp-range input{--fill:11%; width:100%; height:28px; margin:0; background:none; -webkit-appearance:none; appearance:none; cursor:pointer}
.sp-range input::-webkit-slider-runnable-track{height:6px; border-radius:999px;
  background:linear-gradient(to right, var(--accent) var(--fill), var(--line-2) var(--fill))}
.sp-range input::-moz-range-track{height:6px; border-radius:999px; background:var(--line-2)}
.sp-range input::-moz-range-progress{height:6px; border-radius:999px; background:var(--accent)}
.sp-range input::-webkit-slider-thumb{-webkit-appearance:none; width:24px; height:24px; margin-top:-9px; border-radius:50%;
  background:var(--accent); border:3px solid var(--surface); box-shadow:0 1px 4px rgba(20,16,10,.35)}
.sp-range input::-moz-range-thumb{width:18px; height:18px; border-radius:50%; background:var(--accent);
  border:3px solid var(--surface); box-shadow:0 1px 4px rgba(20,16,10,.35)}
.sp-range input:focus-visible{outline:3px solid var(--ring); outline-offset:4px; border-radius:6px}
.sp-ends{display:flex; justify-content:space-between; color:var(--ink-3); font-size:.8rem; font-variant-numeric:tabular-nums}
.sp-row{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--s2); font-size:.92rem; font-weight:600}
.sp-recent-row{flex-direction:column; align-items:stretch}
.sp-seg{display:inline-flex; padding:3px; border-radius:999px; background:var(--surface-2); border:1px solid var(--line)}
.sp-seg button{min-width:60px; min-height:36px; padding:0 12px; border:0; border-radius:999px; background:none;
  color:var(--ink-2); font:inherit; font-size:.88rem; font-weight:600; font-variant-numeric:tabular-nums; cursor:pointer}
.sp-seg button[aria-pressed=true]{background:var(--surface); color:var(--accent-text); box-shadow:0 1px 3px rgba(20,16,10,.15)}

/* ---- תפריט התרומה: פייבוקס וביט זה לצד זה (רועי, 22/10/2026) ----
   נפתח מתחת לכפתור שנלחץ; site.js ממקם אותו (fixed) ומכוון את החץ לאמצע הכפתור.
   הופעה: דהייה, ירידה קלה וגדילה מ-97%, והאפליקציות נכנסות זו אחר זו. */
.dn-pop{position:fixed; z-index:1000; width:min(300px, calc(100vw - 24px)); padding:16px;
  background:var(--surface); color:var(--ink); border:1px solid var(--line-2); border-radius:22px;
  box-shadow:0 24px 48px -16px rgba(36,31,23,.32), 0 4px 12px rgba(36,31,23,.08);
  opacity:0; transform:translateY(-8px) scale(.97); transform-origin:var(--dn-arrow,50%) 0;
  transition:opacity .18s ease, transform .26s cubic-bezier(.22,1.2,.36,1)}
.dn-pop.is-open{opacity:1; transform:none}
.dn-pop::before{content:""; position:absolute; top:-7px; left:var(--dn-arrow,50%); width:12px; height:12px;
  margin-left:-6px; background:inherit; border:1px solid var(--line-2); border-right:0; border-bottom:0;
  border-radius:3px 0 0 0; transform:rotate(45deg)}
.dn-pop-h{margin:0 0 12px; text-align:center; font-weight:700; font-size:.95rem; color:var(--ink-2)}
.dn-apps{display:grid; grid-template-columns:1fr 1fr; gap:10px}
.dn-app{display:flex; flex-direction:column; align-items:center; gap:8px; padding:14px 8px 12px;
  border:1px solid var(--line); border-radius:16px; background:var(--bg); color:var(--ink);
  font-weight:700; font-size:1rem; text-decoration:none; -webkit-tap-highlight-color:transparent;
  opacity:0; transform:translateY(6px);
  transition:opacity .22s ease, transform .3s cubic-bezier(.22,1.2,.36,1), border-color .18s ease, box-shadow .18s ease}
.dn-pop.is-open .dn-app{opacity:1; transform:none}
.dn-pop.is-open .dn-app:nth-child(1){transition-delay:.05s, .05s, 0s, 0s}
.dn-pop.is-open .dn-app:nth-child(2){transition-delay:.1s, .1s, 0s, 0s}
.dn-app img{width:48px; height:48px; border-radius:13px; box-shadow:0 4px 10px -4px rgba(0,0,0,.35)}
.dn-pop.is-open .dn-app:hover{border-color:var(--accent); transform:translateY(-2px);
  box-shadow:0 10px 20px -12px rgba(36,31,23,.35); transition-delay:0s}
.dn-app:active{transform:scale(.97)}
@media (prefers-color-scheme:dark){
  .dn-pop{box-shadow:0 24px 48px -16px rgba(0,0,0,.7), 0 4px 12px rgba(0,0,0,.4)}
}
@media (prefers-reduced-motion:reduce){
  .dn-pop, .dn-app{transform:none!important; transition:opacity .15s ease!important}
}
