/* Small additions on top of the demo's own styles: sheets, toast, Today banner, calendar, books, notes. */
.hv-sheet-wrap{position:fixed;inset:0;z-index:200;background:rgba(20,18,14,.38);display:flex;align-items:flex-end;justify-content:center}
.hv-sheet-wrap[hidden]{display:none}
.hv-sheet{width:100%;max-width:520px;max-height:82dvh;overflow-y:auto;background:#FFFDF8;border-radius:22px 22px 0 0;padding:10px 18px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(0,0,0,.18);font-family:"DM Sans",system-ui,sans-serif;color:#1A1A1A}
.hv-grab{width:38px;height:5px;border-radius:3px;background:rgba(0,0,0,.15);margin:2px auto 12px}
.hv-sheet h4{font-size:17px;font-weight:700;margin:0 0 12px;display:flex;align-items:center;gap:8px}
.hv-sheet h4 img{width:26px;height:26px;border-radius:50%;background:#fff}
.hv-sheet h4 span{font-size:12px;opacity:.6}
.hv-sitem{display:flex;align-items:center;gap:10px;width:100%;text-align:start;padding:12px 6px;border-bottom:1px solid rgba(0,0,0,.06);font-size:15px;font-family:"Noto Sans Hebrew","DM Sans",sans-serif}
.hv-sitem small{margin-inline-start:auto;color:#8A7E6E;font-size:12px}
.hv-sitem .pi{width:30px;height:30px;border-radius:9px;background:#F1EDE4;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.hv-sitem .pi img{width:22px;height:22px;border-radius:50%;background:#fff}
.hv-sbtn{display:block;width:100%;margin-top:12px;padding:13px;border-radius:14px;background:#1F6B6B;color:#fff;font-weight:700;font-size:15px}
.hv-sbtn.ghost{background:rgba(31,107,107,.08);color:#1F6B6B}
.hv-input,.hv-sheet textarea,.hv-filters select,.hv-clip input{width:100%;padding:11px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.12);background:#fff;font-size:16px;font-family:"Noto Sans Hebrew","DM Sans",sans-serif}
.hv-sheet textarea{min-height:110px;resize:vertical}
.hv-filters{display:grid;gap:10px}.hv-filters label,.hv-clip label{display:grid;gap:4px;font-size:12px;font-weight:600;color:#5A5040}
.hv-clip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.hv-speeds{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hv-speeds button{padding:12px;border-radius:12px;background:#F1EDE4;font-weight:700}.hv-speeds button.on{background:#1F6B6B;color:#fff}
.hv-nextsw{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-weight:600}
.hv-sw2{width:46px;height:28px;border-radius:14px;background:#D9D2C4;position:relative;transition:background .2s}.hv-sw2::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.hv-sw2.on{background:#1F6B6B}.hv-sw2.on::after{left:21px}
.hv-colors{display:flex;gap:10px;margin:12px 0}.hv-colors button{width:32px;height:32px;border-radius:50%;border:3px solid transparent}.hv-colors button.on{border-color:#1A1A1A}
.hv-toast{position:fixed;left:50%;bottom:calc(150px + env(safe-area-inset-bottom));transform:translate(-50%,20px);background:rgba(26,26,26,.92);color:#fff;padding:10px 16px;border-radius:999px;font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:all .25s;z-index:300;font-family:"DM Sans",sans-serif;white-space:nowrap}
.hv-toast.on{opacity:1;transform:translate(-50%,0)}
.hv-empty{padding:28px 10px;text-align:center;color:#8A7E6E;font-size:14px}
.hv-sub{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#1F6B6B;margin:14px 2px 8px;display:flex;align-items:center;justify-content:space-between}
.hv-sw{font-size:11px;letter-spacing:0;text-transform:none;color:#5A5040;display:flex;gap:6px;align-items:center}
.hv-search input{width:100%;padding:10px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.1);background:#fff;font-size:16px;margin-bottom:10px}
.hv-note{background:#fff;border:1px solid rgba(0,0,0,.07);border-inline-start:4px solid var(--nc);border-radius:14px;padding:10px 12px;margin-bottom:8px}
.hv-note-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hv-note-top b{font-size:13px;flex:1;min-width:0;font-family:"Noto Sans Hebrew",sans-serif}
.hv-fp{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px}
.hv-tm{font-size:12px;font-weight:700;color:var(--nc);background:rgba(0,0,0,.04);padding:4px 8px;border-radius:999px}
.hv-tx{margin-top:6px;font-size:14px;font-family:"Noto Sans Hebrew",sans-serif;white-space:pre-wrap}.hv-tx.muted{color:#A89F90;font-size:12px}
.hv-nrow{display:flex;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid rgba(0,0,0,.06)}.hv-nrow span{flex:1}.hv-x{font-size:18px;color:#A89F90;padding:0 6px}
.hv-plcard{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:16px;padding:12px;margin-top:10px}
.hv-plcard .pi{width:46px;height:46px;border-radius:12px;background:var(--plc);display:flex;align-items:center;justify-content:center}.hv-plcard .pi img{width:32px;height:32px;border-radius:50%;background:#fff}
.hv-plcard b{display:block;font-size:15px}.hv-plcard small{color:#8A7E6E;font-size:12px}
.hv-pltools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.hv-pltools button{padding:8px 12px;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.08);font-size:13px;font-weight:600}.hv-pltools button:first-child{background:var(--plc);color:#fff;border-color:transparent}
.hv-ro{display:grid;gap:6px}.hv-roi{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:10px;touch-action:none;font-size:14px}.hv-roi.drag{box-shadow:0 6px 18px rgba(0,0,0,.18)}.hv-roi .g{color:#A89F90}
.hv-banner{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:22px;padding:22px 18px;text-align:center;font-family:"Noto Sans Hebrew",sans-serif;direction:rtl;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.hv-banner .bdate{display:block;font-size:12px;color:#8A7E6E;margin-bottom:10px}
.hv-banner .bico{width:48px;height:48px;border-radius:50%;margin:0 auto 10px;background:rgba(31,107,107,.1);color:#1F6B6B;display:flex;align-items:center;justify-content:center}.hv-banner .bico svg{width:26px;height:26px}
.hv-banner.shabbos .bico{background:rgba(200,146,42,.14);color:#B7791F}
.hv-banner h3{font-size:19px;font-weight:700;margin:0 0 6px;font-family:"Frank Ruhl Libre",serif}.hv-banner p{font-size:14px;color:#5A5040;line-height:1.55;margin:0}.hv-banner small{display:block;margin-top:10px;font-size:12px;color:#8A7E6E}
.hv-cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.hv-cal-h button{width:36px;height:36px;border-radius:50%;background:#F1EDE4;font-size:20px}.hv-cal-h b{font-size:16px}
.hv-cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.hv-cal-g i{font-style:normal;font-size:11px;text-align:center;color:#8A7E6E;font-weight:700}
.hv-cal-g button{display:flex;flex-direction:column;align-items:center;padding:5px 0;border-radius:10px;min-height:54px;font-family:"Noto Sans Hebrew",sans-serif}.hv-cal-g button b{font-size:14px}.hv-cal-g button em{font-style:normal;font-size:10px;color:#8A7E6E}.hv-cal-g button small{font-size:8px;color:#1F6B6B;line-height:1.1;text-align:center}
.hv-cal-g button.has{background:rgba(31,107,107,.06)}.hv-cal-g button.td b{color:#1F6B6B}.hv-cal-g button.on{background:#1F6B6B}.hv-cal-g button.on *{color:#fff!important}.hv-cal-g button:disabled{opacity:.3}
.hv-books{padding:0 16px 120px;margin-top:-90px}.hv-books-h{display:flex;align-items:center;gap:8px;margin:6px 0 10px}.hv-books-h b{font-size:15px;font-family:"Noto Sans Hebrew",sans-serif}.hv-books-h.sm b{font-size:13px;color:#5A5040}
.hv-books-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}
.hv-book{flex-shrink:0;width:100px;display:flex;flex-direction:column;gap:5px;text-align:center}.hv-book img{width:100px;height:134px;object-fit:cover;border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.14);background:#eee}.hv-book span{font-size:10px;font-weight:600;color:#5A5040;line-height:1.25}.hv-book em{font-style:normal;font-size:9px;color:#1F6B6B;font-weight:700}
.hv-books-all{display:block;margin-top:12px;text-align:center;font-size:13px;font-weight:700;color:#1F6B6B;padding:12px;border-radius:14px;background:rgba(31,107,107,.07)}
.hv-spl{margin:-2px auto 8px;background:#FFF8EA;border:1px solid rgba(200,146,42,.4);border-radius:14px;padding:8px 14px;font-size:13px;color:#8B5A2B;text-align:center;position:relative;max-width:300px;font-family:"Noto Sans Hebrew",sans-serif}.hv-spl div{padding:2px 0}.hv-spl-x{position:absolute;top:2px;left:8px;color:#8B5A2B}
.hv-refs{display:grid;gap:10px}.hv-refs img{width:100%;border-radius:12px}.hv-p{font-size:14px;color:#5A5040;margin:6px 0}
.hv-lock{position:fixed;inset:0;z-index:400;background:rgba(0,0,0,.01);display:flex;align-items:flex-end;justify-content:center;padding-bottom:60px}.hv-lock button{background:rgba(26,26,26,.85);color:#fff;padding:12px 18px;border-radius:999px;font-weight:700}
.hv6-tag.on{background:var(--x119ac,#1F6B6B)!important;color:#fff!important;border-color:transparent!important}
[data-dm-id]{transition:transform .15s}

.hv-tok{font-size:9px!important;padding:0 5px!important;line-height:16px;flex-shrink:0}

/* round הבינני symbol (feed / playlist) — wraps its label, never truncates */
.hvsym{position:relative;flex-shrink:0;border-radius:999px;background:rgba(255,255,255,.95);box-sizing:border-box;border:2px solid var(--sc,#7E1F3A);box-shadow:0 0 0 2px var(--sh,rgba(126,31,58,.14)),0 2px 5px rgba(0,0,0,.10);padding:calc(var(--u,1px)*4)}
.hvsym>img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;user-select:none}
.hvsym>.hvsl{position:absolute;left:8%;right:8%;bottom:9%;box-sizing:border-box;border-radius:.75em;padding:calc(var(--u,1px)*2) calc(var(--u,1px)*3);text-align:center;font-family:"DM Sans",sans-serif;font-weight:800;font-size:calc(var(--u,1px)*8);line-height:1.08;letter-spacing:-.03em;word-spacing:.18em;white-space:nowrap;overflow:visible;color:#075B70;background:rgba(255,255,255,.94);border:1px solid rgba(227,155,40,.62);box-shadow:0 1px 3px rgba(0,0,0,.10);text-rendering:geometricPrecision}
#plsheet section{width:calc(100% - 28px);max-width:420px;margin-bottom:10px;border-radius:28px}

/* David Nov 11 6:15 PM: playing row — no green frame / tinted tile; play button in the feed colour; bars dance on the symbol */
div[data-dm-id].x76-now,.x76-now{background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:rgba(0,0,0,.05) 0 2px 8px!important}
.x76-now .x76-t{font-weight:inherit!important;color:inherit!important}
.x76-now .x15-play{background:var(--x76c)!important;color:#fff!important}
.hv-eq{position:absolute;left:50%;top:30%;transform:translate(-50%,-50%);display:flex;align-items:flex-end;gap:2px;height:16px;padding:3px 5px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 1px 3px rgba(0,0,0,.15);pointer-events:none}
.hv-eq i{display:block;width:3px;height:40%;border-radius:2px;background:var(--x76c);transform-origin:bottom;animation:hvEq .55s ease-in-out infinite alternate}
.hv-eq i:nth-child(2){animation-duration:.45s;animation-delay:.15s}.hv-eq i:nth-child(3){animation-duration:.6s;animation-delay:.3s}
.hv-eq.paused i{animation:none;height:45%}
@keyframes hvEq{0%{height:25%}100%{height:100%}}

/* David 6:21 PM: progress line along the whole bottom of every tile, in the feed colour */
.hv-tl{position:absolute;left:0;right:0;bottom:0;height:3px;background:color-mix(in srgb,var(--tlc) 22%,transparent);pointer-events:none;z-index:2}
.hv-tl i{display:block;height:100%;background:var(--tlc);border-radius:0 2px 2px 0;transition:width .3s linear}

.hvsym>.hvsl{left:6%;right:6%;border-radius:999px;line-height:1;padding:calc(var(--u,1px)*2.5) calc(var(--u,1px)*2)}

/* banners (David Nov 11): white card, icon on top, English line, Browse Shiurim */
.hv-banner{background:#fff !important;border:1px solid rgba(0,0,0,.06) !important;border-radius:24px !important;padding:28px 22px 24px !important;box-shadow:0 6px 24px rgba(0,0,0,.06),0 1px 3px rgba(0,0,0,.04) !important}
.hv-banner .bico{width:60px !important;height:60px !important;margin:0 auto 14px !important;background:#fff !important;border:1.5px solid rgba(31,107,107,.25);box-shadow:0 0 0 6px rgba(31,107,107,.06)}
.hv-banner .bico svg{width:30px !important;height:30px !important}
.hv-banner.shabbos .bico{background:#fff !important;border-color:rgba(200,146,42,.35);box-shadow:0 0 0 6px rgba(200,146,42,.08)}
.hv-banner h3{font-size:22px !important;color:#1A1A1A;margin-bottom:10px !important}
.hv-banner .en{direction:ltr;font-family:"DM Sans",sans-serif !important}
.hv-banner p.en{font-size:14.5px;color:#5A5040;line-height:1.6}
.hv-banner small.en{margin-top:12px;font-size:12px;color:#8A7E6E}
.hv-bbtn{display:inline-block;margin-top:18px;padding:11px 22px;border-radius:999px;background:#1F6B6B;color:#fff;font:600 14px "DM Sans",sans-serif;border:0;box-shadow:0 2px 8px rgba(31,107,107,.25);cursor:pointer}
.hv-bbtn:active{transform:scale(.97)}
.hv-bbtn{direction:ltr}
.hv-banner small.en{unicode-bidi:plaintext}

/* David #16 + 6:22 PM: 'Today' a bit bigger; Hebrew date bluish, havineini.org font */
html body .x69-day .x69-d1{font-size:20px!important;line-height:1.1!important}
html body .x69-day .x69-d2{font-size:12.5px!important;color:#075B70!important}
html body .x69-day .x69-d2 .hv-hd{color:#075B70!important;font-weight:700;font-size:13.5px;font-family:"Frank Ruhl Libre","Noto Sans Hebrew",serif}

/* nicer now-playing: 4 rounded bars in a soft feed-tinted pill, smooth wave */
.hv-eq{top:32%;height:18px;gap:2.5px;padding:3px 6px;background:color-mix(in srgb,var(--x76c) 12%,#fff);border:1px solid color-mix(in srgb,var(--x76c) 35%,transparent);box-shadow:0 2px 6px color-mix(in srgb,var(--x76c) 25%,transparent)}
.hv-eq i{width:2.5px;border-radius:3px;background:linear-gradient(to top,var(--x76c),color-mix(in srgb,var(--x76c) 55%,#fff));animation:hvEq2 1.1s cubic-bezier(.45,0,.55,1) infinite}
.hv-eq i:nth-child(1){animation-delay:-.2s}.hv-eq i:nth-child(2){animation-delay:-.55s;animation-duration:.9s}.hv-eq i:nth-child(3){animation-delay:-.35s;animation-duration:1.25s}.hv-eq i:nth-child(4){animation-delay:-.8s;animation-duration:1s}
.hv-eq.paused i{animation:none;height:35%}
@keyframes hvEq2{0%,100%{height:28%}50%{height:100%}}

.hv-cnt{position:absolute;top:2px;right:6px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;color:#fff;font:700 9px/15px 'DM Sans',sans-serif;text-align:center;pointer-events:none}

#x14-auto{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin:-4px 0 12px;padding:10px 12px;border:0;border-radius:14px;background:rgba(0,0,0,.035);cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:"DM Sans",sans-serif;text-align:left}
#x14-auto .t{font-size:13px;font-weight:600;color:#1A1A1A}
#x14-auto .k{position:relative;flex-shrink:0;width:42px;height:25px;border-radius:999px;background:#D9D3C7;transition:background .18s}
#x14-auto .k i{position:absolute;top:2.5px;left:2.5px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .18s}
#x14-auto[aria-checked="true"] .k{background:#1F6B6B}
#x14-auto[aria-checked="true"] .k i{transform:translateX(17px)}
#x14-auto[aria-checked="true"] .k{background:var(--x14on,#1F6B6B)}

/* clip dual slider */
.hv-dr{position:relative;height:34px}
.hv-dr .tr{position:absolute;left:10px;right:10px;top:12px;height:10px;border-radius:999px;background:rgba(0,0,0,.1)}
.hv-dr .rg{position:absolute;top:0;bottom:0;background:var(--a);border-radius:999px}
.hv-dr .nw{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:#1A1A1A;opacity:.5}
.hv-dr input{position:absolute;left:0;right:0;top:7px;width:100%;margin:0;height:20px;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.hv-dr input::-webkit-slider-thumb{pointer-events:auto;-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid var(--a);box-shadow:0 2px 6px rgba(0,0,0,.2)}
.hv-dr input::-moz-range-thumb{pointer-events:auto;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid var(--a)}
.hv-dr input::-webkit-slider-runnable-track{background:none}

/* attachment sheet (demo look) */
#x6b-sheet{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:12px;background:rgba(30,27,20,.44);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
#x6b-sheet section{width:100%;max-width:42rem;border-radius:26px;overflow:hidden;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);background:#FFFEFA;border:1px solid rgba(31,107,107,.16)}
#x6b-sheet .hd{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.08)}
#x6b-sheet .tt{font-size:14px;font-weight:700;color:#2C2416}
#x6b-sheet .cl{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:9999px;padding:8px 12px;font:700 11px/1 inherit;font-family:inherit;background:rgba(31,107,107,.08);color:#1F6B6B;cursor:pointer}
#x6b-sheet .cl svg{width:14px;height:14px}
#x6b-sheet .bd{padding:22px 18px 22px;text-align:center}
#x6b-sheet .wt{margin:12px 0 0;font-size:12px;line-height:1.4;color:#8A7E6E}
#x6b-sheet .add{display:inline-flex;align-items:center;justify-content:center;min-width:180px;height:44px;border:0;border-radius:9999px;padding:0 22px;font:700 14px/1 inherit;font-family:inherit;background:#1F6B6B;color:#fff;cursor:pointer}
#x6b-sheet .add:active{transform:scale(.97)}
#x6b-sheet .add[hidden]{display:none}
#x6b-sheet .st{margin:12px 0 0;font-size:12px;color:#8A7E6E}
#x6b-sheet .st.ok{color:#1F6B6B}
#x6b-sheet .st.err{color:#C0563B}
#x6b-sheet .mn{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}
#x6b-sheet .mn li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-radius:14px;background:rgba(31,107,107,.06);border:1px solid rgba(31,107,107,.12)}
#x6b-sheet .mn .nm{font-size:13px;font-weight:600;color:#1A1A1A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
#x6b-sheet .mn .wt{font-size:11px;color:#8A7E6E;white-space:nowrap;flex-shrink:0}
#x6b-sheet .pb{height:4px;border-radius:4px;background:rgba(31,107,107,.12);overflow:hidden;margin:0 0 10px}
#x6b-sheet .pb i{display:block;height:100%;width:0;background:#1F6B6B;transition:width .15s}
#x6b-sheet .add:disabled{opacity:.5}
#x6b-sheet .mn li{flex-wrap:wrap}
#x6b-sheet .mn a.nm{text-decoration:none;color:#1F6B6B}
#x6b-sheet .mn .wt{white-space:normal;flex-basis:100%;font-size:11px}
#x6b-sheet .x6b-ask{margin:12px 0 2px;padding:12px;border-radius:14px;background:rgba(31,107,107,.06);border:1px solid rgba(31,107,107,.14);text-align:center}
#x6b-sheet .x6b-ask p{margin:0 0 10px;font-size:14px;font-weight:600;color:#1A1A1A}
#x6b-sheet .x6b-ask .bt{display:flex;gap:10px;justify-content:center}
#x6b-sheet .x6b-ask button{min-width:92px;height:36px;border-radius:999px;border:1px solid rgba(31,107,107,.35);background:#fff;color:#1F6B6B;font-size:14px;font-weight:600}
#x6b-sheet .x6b-ask button.y{background:#1F6B6B;color:#fff;border-color:#1F6B6B}
#x6b-sheet .x6b-ask .sub{display:block;margin:-6px 0 10px;font-size:11.5px;color:#8A8A8A;font-weight:400}
#x6b-sheet .mn .x6b-th{width:40px;height:40px;object-fit:cover;border-radius:8px;flex-shrink:0;border:1px solid rgba(0,0,0,.08)}
#x6b-sheet .mn li .nm{flex:1}
#x6b-sheet .mn .x6b-del{flex-shrink:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:transparent;color:#9CA3AF;cursor:pointer;padding:0;margin-left:auto}
#x6b-sheet .mn .x6b-del:active{background:rgba(0,0,0,.06)}
#x6b-sheet .mn .x6b-cf{flex-basis:100%;display:flex;align-items:center;gap:8px;font-size:12px;color:#1A1A1A;padding-top:6px}
#x6b-sheet .mn .x6b-cf span{flex:1}
#x6b-sheet .mn .x6b-cf button{min-height:28px;padding:4px 12px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#fff;font-size:12px;font-weight:600;cursor:pointer}
#x6b-sheet .mn .x6b-cf button.y{background:#B91C1C;border-color:#B91C1C;color:#fff}
#x6b-sheet .mn .x6b-pv{flex-basis:100%;display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 0 2px;position:relative}
#x6b-sheet .mn .x6b-pv img{flex:0 0 100%;max-width:100%;max-height:min(46vh,380px);object-fit:contain;border-radius:10px;background:#f4f4f2;border:1px solid rgba(0,0,0,.08);scroll-snap-align:center;cursor:zoom-in}
#x6b-sheet .mn .x6b-pv .x6b-pg{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.55);color:#fff;font-size:11px;padding:2px 8px;border-radius:999px}
#x6b-sheet .mn .x6b-pv-wait{font-size:12px;color:#8A7E6E;padding:18px 0;justify-content:center}
#x6b-sheet .mn li{flex-wrap:wrap}
#x6b-sheet .x120-al{margin:7px 0 0;font-size:11px;line-height:1.35;color:#9A9A9A;font-weight:500}
#x6b-sheet .x6b-pdf{display:inline-block;padding:10px 16px;border-radius:12px;background:rgba(31,107,107,.08);color:#1F6B6B;font-weight:700;font-size:13px}
#x6b-sheet .mn{list-style:none;margin:0 0 14px;padding:0;text-align:left}
#x6b-sheet .mn li{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.06)}
#x6b-sheet .mn .wt{flex-basis:100%;margin:2px 0 0}
#x6b-sheet .pb{height:4px;border-radius:9px;background:rgba(31,107,107,.12);margin:0 0 14px;overflow:hidden}
#x6b-sheet .pb i{display:block;height:100%;background:#1F6B6B;transition:width .1s}
#x6b-sheet .x6b-ask{margin-top:16px}

/* #110 + David 7:21: small attachment pop-up, not a huge box */
#x6b-sheet section{max-width:290px!important;border-radius:20px}
#x6b-sheet .hd{padding:9px 12px}
#x6b-sheet .tt{font-size:13px}
#x6b-sheet .cl{padding:6px 10px;font-size:10.5px}
#x6b-sheet .bd{padding:14px 14px 16px}
#x6b-sheet .add{min-width:0;height:34px;padding:0 16px;font-size:12.5px}
#x6b-sheet .x120-al{font-size:10.5px;color:#9A9A9A}

#hv-attv .x22-wait{display:block;font-size:11px;color:#9A9A9A;margin-top:2px}
#hv-attv .x22-wait[hidden]{display:none}
#x22-addatt span{display:inline!important}
#x22-addatt{display:none!important}
#x22-addatt{padding-left:10px!important;padding-right:12px!important;gap:4px;white-space:nowrap}
.x6b-fs .x{position:absolute;top:calc(12px + env(safe-area-inset-top));right:12px;width:36px;height:36px;border-radius:999px;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:18px}
.x6b-fs img{max-width:100vw;max-height:100vh;object-fit:contain}
.x6b-fs{position:fixed;inset:0;z-index:2147483647;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center}

/* David 7:19: the whole date line in havineini.org's own blue (#075B70, Frank Ruhl Libre — read from havineini.org) */
html:not(.dark) .x69-d2,html:not(.dark) .x69-d2 *{color:#075B70!important}
.x69-d2{font-family:"Frank Ruhl Libre",Georgia,serif!important;font-weight:700!important}
.hv-hd{color:#075B70!important;font-weight:700}

.x69-d2,.x69-d2 *{letter-spacing:0!important;word-spacing:normal!important}

 David 11/11 bottom player: Now playing centred, bigger symbol, tight %, played/left times */
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role]{height:78px !important;padding:0 !important;display:block !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .hvnp{position:absolute;top:7px;left:0;right:0;text-align:center;font:700 10px "DM Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--x25pp,#1F6B6B);pointer-events:none}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .tx{position:absolute !important;top:20px !important;left:66px !important;right:66px !important;width:auto !important;align-items:center !important;text-align:center !important;display:block !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .tx b{display:block !important;text-align:center !important;font-size:13.5px !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .tx span{display:none !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .ctl{position:absolute !important;left:50% !important;bottom:3px !important;top:auto !important;transform:translateX(-50%) !important;margin:0 !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .pic{position:absolute !important;left:12px !important;top:9px !important;bottom:auto !important;width:44px !important;height:44px !important;transform:none !important;border-radius:12px !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .x48c-p{position:absolute !important;left:12px !important;top:55px !important;width:44px !important;text-align:center !important;font-size:11px !important;line-height:14px !important;font-weight:700 !important;color:var(--x25pp,#1F6B6B) !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .x48c-t{position:absolute !important;right:10px !important;left:auto !important;top:auto !important;bottom:9px !important;width:52px !important;display:flex !important;flex-direction:column !important;align-items:flex-end !important;gap:1px;font:600 10.5px/13px "DM Sans",sans-serif !important;color:var(--x25pp,#1F6B6B) !important;font-variant-numeric:tabular-nums}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .x48c-t span:last-child{color:#8A7E6E;font-weight:500}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .cx{position:absolute !important;right:8px !important;top:6px !important;left:auto !important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .up{position:absolute !important;right:34px !important;top:6px !important;left:auto !important}


html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role] .tx::before{content:none!important;display:none!important;height:0!important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar[id][role]{min-height:78px!important}


/* David 7:30: only the full-width line at the bottom of the tile; no small line under the symbol */
.x54-i{display:none!important}

#hv-attv .av-del{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:999px;border:0;background:rgba(255,255,255,.92);color:#6B7280;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.15)}
#hv-attv .av-del[hidden],#hv-attv .av-cf[hidden],#hv-attv .av-add[hidden]{display:none!important}
#hv-attv .av-cf{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.18);font-size:12.5px;color:#1A1A1A}
#hv-attv .av-cf span{flex:1}
#hv-attv .av-cf button{min-height:30px;padding:4px 12px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#fff;font-size:12px;font-weight:600}
#hv-attv .av-cf button.y{background:#B91C1C;border-color:#B91C1C;color:#fff}

#hv-fv{position:fixed;right:12px;bottom:170px;width:184px;aspect-ratio:16/9;z-index:150;border-radius:14px;overflow:hidden;background:#11161f;box-shadow:0 10px 28px rgba(0,0,0,.35);touch-action:none;cursor:grab}
#hv-fv .fvw,#hv-fv video{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}
#hv-fv button{position:absolute;top:6px;width:26px;height:26px;border-radius:999px;border:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center}
#hv-fv .fvx{right:6px}#hv-fv .fvf{left:6px}

/* David: bigger video play button */


/* David 7:55: the Attachments box is only as big as the attachment */
#hv-attv section{width:auto!important;max-width:min(92vw,560px)!important;display:inline-flex;flex-direction:column}
#hv-attv .av-st{height:auto!important;min-height:0!important;padding:6px!important}
#hv-attv .av-i{max-height:min(62svh,600px)!important;max-width:100%!important;width:auto;height:auto}
#hv-attv .px-4.pt-3.pb-4{padding-top:8px!important;padding-bottom:10px!important}

@keyframes playerArtworkRing{0%,to{opacity:.34;transform:scale(.98)}50%{opacity:.9;transform:scale(1.025)}}
.player-artwork-ring{border:2px solid;animation:1.9s cubic-bezier(.23,1,.32,1) infinite playerArtworkRing}
/* David 8:09: bigger symbol in the audio player */
html:not(#z1) body .player-mobile-artwork{width:224px!important;height:224px!important}
/* David 8:09: video big, full width 16:9, cover fades only once playing */


html:not(#z1):not(#z2) body .havineini-player-page .player-mobile-artwork{--x52s:224px;zoom:1!important;width:224px!important;height:224px!important}
.hv-ringw{position:absolute;inset:-8px;pointer-events:none;border-radius:999px;display:block}
.hv-ringw .player-artwork-ring{position:absolute;inset:0;border-radius:999px;display:block}

/* David 8:16: bottom player times side by side, no colour */
html:not(#z1):not(#z2):not(#z3) body #x9-bar .x48c-t{display:flex!important;flex-direction:row!important;gap:5px!important;align-items:baseline!important;white-space:nowrap!important;justify-content:flex-end!important}
html:not(#z1):not(#z2):not(#z3) body #x9-bar .x48c-t span{color:#6B6B6B!important;font-weight:600!important;font-size:10.5px!important;margin:0!important}

html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5) body #x9-bar[id][role] .x48c-t{display:flex!important;flex-direction:row!important;gap:6px!important;align-items:center!important;white-space:nowrap!important;width:auto!important}
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5) body #x9-bar[id][role] .x48c-t span{color:#6B6B6B!important;font-weight:600!important;font-size:10.5px!important;margin:0!important}

/* TorahAnytime mark covered at the video's own bottom-left corner, at every size */
html body #dm-vid .x52-logo{left:0!important;top:auto!important;bottom:0!important;width:13.7%!important;height:21.7%!important}
#hv-fv .x52-logo{position:absolute;z-index:2;pointer-events:none;left:0;bottom:0;width:13.7%;height:21.7%;background:#F7F6F2;border-radius:0 9px 0 0;display:flex;align-items:center;justify-content:center}
#hv-fv .x52-logo i{display:block;width:72%;height:72%;-webkit-mask:url("img/havineini-track-mark-256_ffd43e7f.png") center/contain no-repeat;mask:url("img/havineini-track-mark-256_ffd43e7f.png") center/contain no-repeat;background:var(--fvc,#1F6B6B)}
#hv-fv video{object-fit:contain!important;background:#000}


/* v6 (Nov 12): Add-to-playlist sheet narrower, floating like the attachment pop-up */
.hv-plsec{width:calc(100% - 24px);max-width:400px;max-height:78svh;margin:0 12px 12px;border-radius:24px}
/* v6 (Nov 12): Today empty box (clock) — English title, real-site line, lighter button */
.hv-banner.hv-soon h3{direction:ltr;font-family:"DM Sans",sans-serif;font-size:17px !important;font-weight:700;color:#1A1A1A}
.hv-banner.hv-soon p{direction:ltr}
.hv-banner.hv-soon .hv-bbtn{background:#E3EFEC;color:#1F6B6B;border:1px solid rgba(31,107,107,.25);box-shadow:none}

/* v13 Favorites label sheet */
.hv-fl-s{margin:0 0 12px;font-size:12px;color:#5A5040;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hv-fl-in{width:100%;height:46px;border-radius:14px;border:1px solid rgba(126,31,58,.33);padding:0 12px;font:inherit;font-size:14px;background:#fff;color:#1A1A1A;box-sizing:border-box}
.hv-fl-b{display:flex;gap:8px;margin-top:12px}
.hv-fl-b button{flex:1;height:44px;border:0;border-radius:14px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.hv-fl-ok{color:#fff}
.hv-fl-g{background:rgba(0,0,0,.06);color:#5A5040}
.hv-fl-del{background:rgba(185,28,28,.09);color:#B91C1C}
/* v13: a Favorites row with a label is taller, so the label gets its own line (design.css fixes rows at 96px) */
html body div.x68-r.x127q.ma-hasl{height:118px !important}

/* v16: swipe-to-complete label behind the row */
.hv-swbg{position:absolute;z-index:0;display:flex;align-items:center;padding:0 18px;border-radius:16px;background:rgba(22,163,74,.12);color:#16A34A;font:700 14px/1 "DM Sans",system-ui,sans-serif;pointer-events:none;transition:background .15s,opacity .2s;box-sizing:border-box}
.hv-swbg.go{background:#16A34A;color:#fff}
.hv-swbg.undo{background:rgba(90,80,64,.12);color:#5A5040}
.hv-swbg.undo.go{background:#5A5040;color:#fff}
.hv-swrow{position:relative;z-index:1}
/* v16: the label sheet sits at the top, so a tablet keyboard does not push it */
.hv-sheet-wrap.hv-top{align-items:flex-start;padding-top:max(10vh,env(safe-area-inset-top))}
.hv-sheet-wrap.hv-top .hv-sheet{border-radius:24px;margin:0 12px}

/* v17 My Feeds (copied from the old demo's Following box and Today line) */
#hv-myf{background:rgba(200,146,42,.09);border:1px solid rgba(200,146,42,.27)}
#hv-myf .hv-myf-ic{background:rgba(200,146,42,.13);color:#C8922A}
#hv-myf .hv-myf-t{color:#8A641E}
#hv-myf .hv-myf-n{color:#8A641E;opacity:.75}
#hv-myf .hv-myf-ch{color:#C8922A}
.hv-mfb{margin-bottom:10px;display:flex;align-items:center;gap:8px;border-radius:12px;padding:8px 12px;background:rgba(31,107,107,.05);border:1px solid rgba(31,107,107,.13)}
.hv-mfb span{width:6px;height:6px;border-radius:999px;flex:none;background:#1F6B6B}
.hv-mfb p{margin:0;font-size:11px;font-weight:600;color:#1F6B6B}

/* v18 player: note and mark dots on the bar, at their exact time */
.player-mobile-timeline > div.relative > .hv-bdot{position:absolute;top:50%;z-index:12;padding:0;border:0;border-radius:999px;transform:translate(-50%,-50%);cursor:pointer}
.player-mobile-timeline > div.relative > .hv-bdot.mk{width:9px;height:9px;background:#E8890C;box-shadow:0 0 0 2px #F7F5F0}
.player-mobile-timeline > div.relative > .hv-bdot.nt{width:7px;height:7px;background:var(--nc,#1F6B6B);box-shadow:0 0 0 2px #F7F5F0}
.player-mobile-timeline > div.relative > .hv-bdot::after{content:"";position:absolute;inset:-9px}
.hv-ned textarea,.hv-ned input{width:100%;box-sizing:border-box;border:1px solid rgba(0,0,0,.14);border-radius:10px;padding:6px 9px;font:inherit;font-size:13px;line-height:1.4;background:#fff;color:#1A1A1A;outline:0;resize:none}
.hv-ned-b{display:flex;justify-content:flex-end;gap:6px;margin-top:6px}
.hv-ned-b button{border:0;border-radius:9px;padding:5px 12px;font-size:12px;font-weight:700}
.hv-ned-b .c{background:rgba(0,0,0,.06);color:#5A5040}.hv-ned-b .s{background:#1F6B6B;color:#fff}
.hv-dr .tr .pl{position:absolute;left:0;top:0;bottom:0;background:rgba(120,110,95,.35);border-radius:inherit;pointer-events:none}

/* v22 player playlist button filled when saved */
button.hv-plon[aria-label="Add to playlist"]{background:color-mix(in srgb,var(--plc) 14%,transparent);color:var(--plc)}
button.hv-plon[aria-label="Add to playlist"] svg{color:var(--plc);stroke:var(--plc)}
button.hv-plon[aria-label="Add to playlist"] .dm-lbl{color:var(--plc)}

/* v23 Download: progress ring, filled when downloaded, Downloads page */
#x14-dl{position:relative}
#x14-dl .hv-dlr{position:absolute;left:50%;top:2px;width:30px;height:30px;margin-left:-15px;pointer-events:none}
#x14-dl .hv-dlr .bg{stroke:rgba(0,0,0,.1)}#x14-dl .hv-dlr .fg{stroke:var(--dlc,#1F6B6B);transition:stroke-dashoffset .2s}
#x14-dl .hv-dlr.spin{animation:hvspin 1s linear infinite}@keyframes hvspin{to{transform:rotate(360deg)}}
#x14-dl.hv-dlon .dm-lbl{color:#1F6B6B;font-weight:700}#x14-dl.hv-dling .dm-lbl{color:var(--dlc)}
.hv-dl-n{margin:6px 0 12px;font-size:13px;color:#5A5040}
.hv-dl-b{display:flex;gap:8px}.hv-dl-b button{flex:1;border:0;border-radius:12px;padding:10px 0;font-size:13px;font-weight:700}
.hv-dl-b .c{background:rgba(0,0,0,.06);color:#5A5040}.hv-dl-b .r{background:rgba(185,28,28,.09);color:#B91C1C}
.hv-dlp{padding:12px 16px 120px}
.hv-dlh{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.hv-dlh h2{margin:0;font:700 20px/26px "DM Serif Display",Georgia,serif;color:#1A1A1A}.hv-dlh p{margin:0;font-size:11px;color:#5A5040}
.hv-dlbk{width:32px;height:32px;border:0;border-radius:999px;background:rgba(0,0,0,.06);font-size:22px;line-height:30px;color:#1A1A1A}
.hv-dlt{display:flex;justify-content:space-between;align-items:center;padding:4px 6px 0;font-size:11px;color:#5A5040}
.hv-dlt button{border:0;background:none;color:#B91C1C;font-size:11px;font-weight:700}
.hv-dle{text-align:center;padding:40px 10px;color:#5A5040}.hv-dle p{margin:0 0 4px;font-weight:700}

/* v24 clip sheet like the old demo: times under the two markers, Start here / End here, live current time */
.hv-dr .hv-lab{position:absolute;left:0;right:0;top:30px;height:14px;pointer-events:none}
.hv-dr .hv-lab b{position:absolute;top:0;transform:translateX(-50%);font:700 10px/14px 'DM Sans',sans-serif;font-variant-numeric:tabular-nums;color:var(--a);padding:0 3px;border-radius:4px;white-space:nowrap}
.hv-sets{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.hv-set{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:38px;padding:4px 8px;border-radius:12px;background:rgba(255,255,255,.85);color:var(--a);border:1.5px solid rgba(var(--ar),.45);font:700 12.5px/16px 'DM Sans',sans-serif}
.hv-set .t{display:flex;align-items:center;gap:5px}.hv-set .n{font:500 10px/12px 'DM Sans',sans-serif;opacity:.75;font-variant-numeric:tabular-nums}
.hv-set:active{transform:scale(.97);background:rgba(var(--ar),.12)}
