/* ---- self-hosted Heebo + Spectral (replaces Google Fonts) ---- */
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-hebrew-400-normal.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-latin-ext-400-normal.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-latin-400-normal.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-hebrew-500-normal.woff2") format("woff2"); font-weight:500; font-style:normal; font-display:swap; unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-latin-ext-500-normal.woff2") format("woff2"); font-weight:500; font-style:normal; font-display:swap; unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-latin-500-normal.woff2") format("woff2"); font-weight:500; font-style:normal; font-display:swap; unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-hebrew-700-normal.woff2") format("woff2"); font-weight:700; font-style:normal; font-display:swap; unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-latin-ext-700-normal.woff2") format("woff2"); font-weight:700; font-style:normal; font-display:swap; unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"Heebo"; src:url("../fonts/heebo-latin-700-normal.woff2") format("woff2"); font-weight:700; font-style:normal; font-display:swap; unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Spectral"; src:url("../fonts/spectral-latin-ext-400-normal.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"Spectral"; src:url("../fonts/spectral-latin-400-normal.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Spectral"; src:url("../fonts/spectral-latin-ext-500-normal.woff2") format("woff2"); font-weight:500; font-style:normal; font-display:swap; unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"Spectral"; src:url("../fonts/spectral-latin-500-normal.woff2") format("woff2"); font-weight:500; font-style:normal; font-display:swap; unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Spectral"; src:url("../fonts/spectral-latin-ext-400-italic.woff2") format("woff2"); font-weight:400; font-style:italic; font-display:swap; unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"Spectral"; src:url("../fonts/spectral-latin-400-italic.woff2") format("woff2"); font-weight:400; font-style:italic; font-display:swap; unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

/* CARE · Dvar Torah reader — re-skinned to the CARE design system (light) */
.dv-shell{--dv-maxw:840px;padding:0 0 140px}
.dv-serif{font-family:"Spectral",Georgia,serif}
.dv-he{font-family:"Heebo",sans-serif}

/* toolbar under site header */
.dv-bar2{position:sticky;top:80px;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.dv-bar2-in{max-width:var(--dv-maxw);margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dv-bar2 .sp{flex:1}
.dv-seg{display:flex;border:1px solid var(--line);border-radius:100px;overflow:hidden;background:#fff}
.dv-seg button{padding:7px 15px;font-family:var(--care-sans);font-size:12.5px;letter-spacing:.04em;color:var(--muted);font-weight:700;background:none;border:0;cursor:pointer;transition:background .15s,color .15s}
.dv-seg button[aria-pressed=true]{background:var(--accent);color:#fff}
.dv-lang{display:flex;gap:4px}
.dv-lang button{padding:7px 12px;font-family:var(--care-sans);font-size:12.5px;font-weight:700;letter-spacing:.03em;color:var(--muted);background:none;border:1px solid transparent;border-radius:100px;cursor:pointer;transition:background .15s,color .15s}
.dv-lang button[aria-pressed=true]{background:var(--accent-tint);color:var(--accent-deep)}
.dv-lang button:hover{color:var(--accent-deep)}
.dv-tbtn{padding:8px 16px;font-family:var(--care-sans);font-size:12.5px;font-weight:700;letter-spacing:.04em;border:1.5px solid var(--accent);border-radius:100px;color:var(--accent);background:none;cursor:pointer;transition:background .15s,color .15s}
.dv-tbtn:hover{background:var(--accent);color:#fff}
.dv-pickrow{padding-top:0;gap:10px}
.dv-pick-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted);flex:none}
.dv-pick-wrap{position:relative;flex:1;min-width:0}
.dv-pick{width:100%;appearance:none;-webkit-appearance:none;font-family:var(--care-sans);font-size:13.5px;font-weight:600;color:var(--deep);background:#fff;border:1px solid var(--line);border-radius:100px;padding:9px 40px 9px 16px;cursor:pointer;transition:border-color .15s}
.dv-pick:hover{border-color:var(--accent-soft)}
.dv-pick:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dv-pick-wrap svg{position:absolute;right:15px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--muted);pointer-events:none}
[dir=rtl] .dv-pick{padding:9px 16px 9px 40px}
[dir=rtl] .dv-pick-wrap svg{right:auto;left:15px}

.dv-main{max-width:var(--dv-maxw);margin:0 auto;padding:40px 24px 0}
.dv-eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:700}

/* hero */
.dv-hero{border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:8px}
.dv-when{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:18px}
.dv-pill{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;padding:5px 11px;border-radius:100px;border:1px solid var(--line);color:var(--muted);background:#fff}
.dv-pill.now{background:var(--accent);border-color:var(--accent);color:#fff}
.dv-hero h1{font-size:clamp(38px,7vw,64px);line-height:1.02;margin:0;font-weight:700;letter-spacing:-.03em;color:var(--deep)}
.dv-hero h1 em{font-style:normal;color:var(--accent);font-weight:700;font-size:.34em;letter-spacing:.02em;display:block;margin-bottom:12px;text-transform:none}

/* pasuk */
.dv-pasuk{margin:24px 0 0;padding:26px 28px;background:var(--tint);border-radius:6px;border-left:4px solid var(--accent)}
.dv-pasuk .he{font-family:"Heebo",sans-serif;direction:rtl;text-align:right;font-size:clamp(23px,5vw,32px);line-height:1.7;font-weight:700;color:var(--deep);margin-bottom:14px}
.dv-pasuk .tl{font-size:14px;color:var(--accent-deep);letter-spacing:.01em;font-weight:700;margin-bottom:10px}
.dv-pasuk .pt{font-family:"Spectral",Georgia,serif;font-size:clamp(18px,3.4vw,22px);line-height:1.5;color:var(--ink)}
.dv-pasuk .ref{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:14px;font-weight:700}

/* chips */
.dv-chips{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 0}
.dv-chip{font-size:12px;letter-spacing:.03em;padding:7px 13px;border-radius:100px;border:1px solid var(--line);color:var(--muted);font-weight:600;background:#fff}
.dv-chip b{color:var(--deep);font-weight:700}

/* warn */
.dv-warn{margin:26px 0 0;background:var(--amber-bg);border:1px solid #F3D9B0;border-radius:6px;padding:16px 18px;font-size:14px;line-height:1.6;color:#7A4708}
.dv-warn b{color:#7A4708;font-weight:700}

/* stations */
.dv-stations{counter-reset:st;margin-top:6px}
.dv-st{padding:28px 0;border-bottom:1px solid var(--line)}
.dv-st-h{display:flex;align-items:center;gap:12px;margin-bottom:13px}
.dv-st-n{counter-increment:st;font-size:12px;font-weight:700;color:var(--accent);border:1.5px solid var(--accent-soft);border-radius:50%;width:26px;height:26px;display:grid;place-items:center;flex:none}
.dv-st-n::before{content:counter(st)}
.dv-st-t{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.dv-st p{margin:0;font-size:clamp(17px,3.4vw,19px);line-height:1.72;color:var(--ink);text-wrap:pretty}
.dv-st.close p{font-family:"Spectral",Georgia,serif;font-size:clamp(18px,3.6vw,21px)}
.dv-st.action{background:var(--tint);border-radius:6px;padding:24px;border-bottom:0;margin:12px 0}
.dv-st.action p{font-weight:500}

/* index */
.dv-idx{display:none;max-width:var(--dv-maxw);margin:0 auto;padding:40px 24px 0}
.dv-idx.on{display:block}
.dv-view.off{display:none}
.dv-idx h1,.dv-idx h2{font-size:clamp(32px,4vw,46px);margin:6px 0;color:var(--deep);letter-spacing:-.02em}
.dv-idx .lead{color:var(--muted);font-size:16px;margin:0 0 8px}
.dv-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:24px 0}
.dv-stat{background:var(--tint);border-radius:6px;padding:16px 18px}
.dv-stat b{display:block;font-size:26px;font-weight:700;color:var(--accent);letter-spacing:-.02em}
.dv-stat span{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:700}
.dv-filters{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 24px}
.dv-filters button{font-size:12px;letter-spacing:.03em;padding:7px 14px;border:1px solid var(--line);border-radius:100px;color:var(--muted);font-weight:700;background:#fff;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.dv-filters button[aria-pressed=true]{background:var(--accent-tint);border-color:var(--accent-soft);color:var(--accent-deep)}
.dv-book-h{margin:32px 0 6px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:700}
.dv-row{display:grid;grid-template-columns:38px 1fr auto;gap:16px;align-items:center;padding:15px 6px;border-bottom:1px solid var(--line);width:100%;text-align:left;background:none;border-left:0;border-right:0;border-top:0;cursor:pointer;font-family:inherit}
.dv-row:hover{background:var(--tint)}
.dv-row .n{font-size:12px;color:var(--muted);font-weight:700}
.dv-row .nm{font-size:17px;font-weight:700;color:var(--deep);display:block}
.dv-row .sb{font-size:11.5px;color:var(--muted);letter-spacing:.04em;margin-top:2px;display:block}
.dv-row .dot{width:10px;height:10px;border-radius:50%;background:#fff;border:1.5px solid var(--line)}
.dv-row .dot.done{background:var(--accent);border-color:var(--accent)}

/* fixed action bar */
.dv-abar{position:fixed;bottom:0;left:0;right:0;z-index:70;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
.dv-abar-in{max-width:var(--dv-maxw);margin:0 auto;padding:12px 24px;display:flex;gap:10px;align-items:center}
.dv-abar .grow{flex:1}
.dv-nav{display:flex;gap:7px}
.dv-nav button{width:42px;height:42px;border:1px solid var(--line);border-radius:6px;display:grid;place-items:center;font-size:18px;color:var(--deep);background:#fff;cursor:pointer;transition:border-color .15s,color .15s}
.dv-nav button:hover{border-color:var(--accent);color:var(--accent)}
.dv-abtn{padding:11px 18px;border-radius:2px;font-family:var(--care-sans);font-size:13px;font-weight:700;letter-spacing:.03em;border:1.5px solid var(--line);color:var(--deep);background:#fff;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
.dv-abtn:hover{border-color:var(--accent);color:var(--accent)}
.dv-abtn.pri{background:var(--accent);color:#fff;border-color:var(--accent)}
.dv-abtn.pri:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff}

/* stage mode */
.dv-stage{position:fixed;inset:0;z-index:120;background:var(--deep);color:#fff;display:none;flex-direction:column}
.dv-stage.on{display:flex}
.dv-stage-h{padding:18px 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.14)}
.dv-stage-h .t{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-soft);font-weight:700;margin-right:auto}
.dv-stage-h .dv-tbtn{border-color:rgba(255,255,255,.4);color:#fff}
.dv-stage-h .dv-tbtn:hover{background:#fff;color:var(--deep)}
.dv-stage-b{flex:1;overflow-y:auto;padding:40px 26px;display:flex;align-items:center;justify-content:center}
.dv-stage-b .w{max-width:680px;width:100%}
.dv-stage-b .lbl{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-soft);font-weight:700;margin-bottom:20px}
.dv-stage-b .tx{font-size:clamp(24px,5vw,34px);line-height:1.5;font-weight:500}
.dv-stage-b .tx.he{font-family:"Heebo",sans-serif;direction:rtl;text-align:right;font-weight:700;line-height:1.7}
.dv-stage-b .tx.se{font-family:"Spectral",Georgia,serif}
.dv-stage-f{padding:16px 22px;display:flex;gap:12px;align-items:center;border-top:1px solid rgba(255,255,255,.14)}
.dv-prog{flex:1;display:flex;gap:5px}
.dv-prog i{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.22)}
.dv-prog i.on{background:var(--accent-soft)}
.dv-clock{font-size:14px;font-variant-numeric:tabular-nums;color:#C6D7E6;font-weight:700;letter-spacing:.04em}
.dv-clock.warn{color:var(--accent-soft)}
.dv-stage-f .dv-nav button{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28);color:#fff}
.dv-stage-f .dv-nav button:hover{background:rgba(255,255,255,.2);border-color:#fff}

/* RTL */
[dir=rtl] .dv-pasuk{border-left:0;border-right:4px solid var(--accent)}
[dir=rtl] .dv-hero h1,[dir=rtl] .dv-st p,[dir=rtl] .dv-idx h1,[dir=rtl] .dv-idx h2,[dir=rtl] .dv-eyebrow,[dir=rtl] .dv-row{text-align:right}
[dir=rtl] .dv-row{grid-template-columns:auto 1fr 38px}
[dir=rtl] .dv-nav button{transform:scaleX(-1)}

@media (prefers-reduced-motion:no-preference){
  .dv-view,.dv-stage-b .w{animation:dvfade .3s ease}
  @keyframes dvfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
}
@media (max-width:600px){
  .dv-bar2{top:64px}
  .dv-pasuk{padding:20px 20px}
  .dv-abar-in{padding:10px 16px}
  .dv-abtn{padding:11px 13px}
}
