
  :root{--bg:#0a0e15;--bg2:#101622;--card:#141d2b;--line:#26344a;--text:#eef3f9;--muted:#8a9bb0;--accent:#3ad7c8;--accent2:#6a8dff;--accent3:#9b6cff;--star:#ffcb3d;--danger:#ff5a72;--r-sm:8px;--r-md:12px;--r-lg:14px;--r-xl:20px;--r-pill:999px;--sh1:0 6px 22px rgba(0,0,0,.22);--sh2:0 14px 40px rgba(0,0,0,.35);--sh3:0 24px 60px rgba(0,0,0,.5)}
  [data-theme="light"]{--bg:#eaeef5;--bg2:#fff;--card:#fff;--line:#e3e9f2;--text:#0f1b2a;--muted:#566780;--accent:#0d9488;--accent2:#3358d4;--accent3:#6d47f0;--star:#f5a623}
  /* ==== מצב בהיר: כותרת בהירה אמיתית (סבב UX 10.7) — עד עכשיו ה-header נשאר כהה והדף נראה חצוי ==== */
  [data-theme="light"] header{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 76%,#fff),color-mix(in srgb,var(--accent2) 64%,#fff) 50%,color-mix(in srgb,var(--accent3) 72%,#fff))}
  [data-theme="light"] header::before{background:radial-gradient(circle at 80% -10%,rgba(255,255,255,.16),transparent 45%),radial-gradient(circle at 0% 120%,rgba(255,255,255,.1),transparent 40%)}
  [data-theme="light"] header h1,[data-theme="light"] header .brandtitle{color:#122036;text-shadow:none}
  [data-theme="light"] header .brand small{color:#3c4c63}
  [data-theme="light"] .brand .lg4eq,[data-theme="light"] .brand .lg4arr{fill:var(--accent2)}
  [data-theme="light"] .brand .lg4arr path{stroke:var(--accent2)}
  [data-theme="light"] .brandlink:focus-visible{outline-color:var(--accent)}
  [data-theme="light"] header .infobar{background:transparent;border-color:transparent;color:#33425a}
  [data-theme="light"] header .infobar .ib-strong{color:#122036}
  [data-theme="light"] .online{background:rgba(18,32,54,.1);border-color:rgba(18,32,54,.12);color:#122036}
  [data-theme="light"] .cornericon{background:rgba(255,255,255,.5);color:#2a3648;border-color:rgba(255,255,255,.7)}
  [data-theme="light"] .cornericon:hover{background:rgba(255,255,255,.85)}
  [data-theme="light"] .notes span{color:rgba(30,54,92,.16);text-shadow:none}
  /* פינה תחתונה: ההרמה-מעל-העוגיות / הנגן / פס "המשך" נעשית ב-placePops (ראו .floatstack) */
  [data-accent="purple"]{--accent:#b06bff;--accent2:#ec4899;--accent3:#f472b6}
  [data-accent="gold"]{--accent:#f6b53d;--accent2:#ff7a59;--accent3:#ff5e7a}
  [data-accent="green"]{--accent:#34d399;--accent2:#3b82f6;--accent3:#22d3ee}
  [data-accent="rose"]{--accent:#ff6b9d;--accent2:#a855f7;--accent3:#7c5cff}
  *{box-sizing:border-box}
  :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  /* אזור-הכרזה לקורא-מסך: חייב להישאר בעץ הנגישות, ולכן לא display:none ולא visibility (16.8) */
  .visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
  /* ===== כיוון: כל הכללים הפיזיים למטה נכתבו לעברית בלבד (היה כלל אחד ויחיד מותנה-כיוון
     בכל הקובץ), ולכן באנגלית הכותרת נחתכה באמצע מילה ב-162px. אלה העקיפות ל-LTR. ===== */
  [dir="ltr"] header{text-align:left}
  [dir="ltr"] .brand{margin-left:0;margin-right:auto}
  /* הסלוגן העברי נמתח בטריק width:0 + min-width:100% + justify. באנגלית הוא ארוך יותר
     מהכותרת, ועם nowrap הוא פשוט נחתך באמצע מילה (נמדד 350px לתוך 171px). ב-LTR נותנים לו
     לרדת שורה במקום להיחתך. */
  [dir="ltr"] .brand small{text-align:start;text-align-last:auto;white-space:normal;width:auto;min-width:0;max-width:min(92vw,430px)}
  [dir="ltr"] .bmpop{right:auto;left:12px}
  .skiplink{position:absolute;top:0;inset-inline-start:0;transform:translateY(-120%);background:var(--accent);color:#fff;padding:10px 18px;border-radius:0 0 12px 0;font-weight:700;z-index:1000;transition:transform .15s;text-decoration:none}
  .skiplink:focus{transform:translateY(0)}
  @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
  /* 🕊️ מצב רגוע (בקשה #17 בפורום: "מדי עמוס וקופצני"; נמדד: 67 אנימציות רצות במנוחה) —
     עוצר כל אנימציה מתמשכת (רקע-הכותרת, פס-הרדיו, באנר-ההתקנה, צ'יפ-LIVE, שלד-הטעינה,
     סימן-האקולייזר) ומצניע את המשני: שורת-המידע שבכותרת, כפתור "נגן הבא בתור" וכפתור
     🎬-מהאריח (הקליפ עדיין נפתח בלחיצה על התמונה). נגן/הורדה/לב/⋯ נשארים. מעבר-רך
     (transition) נשאר — הוא משוב, לא קישוט. הכפתור בהגדרות-עיצוב; ההעדפה מסונכרנת. */
  html.calm *,html.calm *::before,html.calm *::after{animation-duration:.01ms!important;animation-iteration-count:1!important}
  html.calm .song .qadd,html.calm .song .clipwatch,html.calm .eqbadge,html.calm .rb-waves,html.calm .infobar{display:none!important}
  html.calm header{background-size:100% 100%}
  .catpop,.tplist,.acbox,.menu-wide,.artistlist,.radiolist,.mylist,.bmlist,.admmlist,.admtabbody{scrollbar-width:thin;scrollbar-color:var(--line) transparent}
  .catpop::-webkit-scrollbar,.tplist::-webkit-scrollbar,.acbox::-webkit-scrollbar,.menu-wide::-webkit-scrollbar,.artistlist::-webkit-scrollbar,.radiolist::-webkit-scrollbar,.mylist::-webkit-scrollbar,.bmlist::-webkit-scrollbar,.admmlist::-webkit-scrollbar,.admtabbody::-webkit-scrollbar{width:8px;height:8px}
  .catpop::-webkit-scrollbar-track,.tplist::-webkit-scrollbar-track,.acbox::-webkit-scrollbar-track,.menu-wide::-webkit-scrollbar-track,.artistlist::-webkit-scrollbar-track,.radiolist::-webkit-scrollbar-track,.mylist::-webkit-scrollbar-track,.bmlist::-webkit-scrollbar-track,.admmlist::-webkit-scrollbar-track,.admtabbody::-webkit-scrollbar-track{background:transparent}
  .catpop::-webkit-scrollbar-thumb,.tplist::-webkit-scrollbar-thumb,.acbox::-webkit-scrollbar-thumb,.menu-wide::-webkit-scrollbar-thumb,.artistlist::-webkit-scrollbar-thumb,.radiolist::-webkit-scrollbar-thumb,.mylist::-webkit-scrollbar-thumb,.bmlist::-webkit-scrollbar-thumb,.admmlist::-webkit-scrollbar-thumb,.admtabbody::-webkit-scrollbar-thumb{background:var(--line);border-radius:var(--r-sm)}
  .catpop::-webkit-scrollbar-thumb:hover,.tplist::-webkit-scrollbar-thumb:hover,.acbox::-webkit-scrollbar-thumb:hover,.menu-wide::-webkit-scrollbar-thumb:hover,.artistlist::-webkit-scrollbar-thumb:hover,.radiolist::-webkit-scrollbar-thumb:hover,.mylist::-webkit-scrollbar-thumb:hover,.bmlist::-webkit-scrollbar-thumb:hover,.admmlist::-webkit-scrollbar-thumb:hover,.admtabbody::-webkit-scrollbar-thumb:hover{background:var(--accent)}
  body{margin:0;font-family:'Rubik','Segoe UI',system-ui,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;padding-bottom:0;overflow-x:clip;transition:background-color .25s,color .25s}
  body.playing{padding-bottom:100px}
  /* 19.10 (הדמיה 5, אושרה): ראש דף שקט — רקע קבוע (בלי התנועה ובלי התווים המרחפים), כהה = סגול-עמוק אחיד */
  header{background:linear-gradient(120deg,#26305f 0%,#33285e 100%);padding:8px 16px 6px;text-align:right;color:#fff;position:relative;overflow:hidden}
  header::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% -10%,rgba(255,255,255,.28),transparent 45%),radial-gradient(circle at 0% 120%,rgba(255,255,255,.2),transparent 40%)}
  @keyframes meshmove{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
  .brand{display:flex;flex-direction:column;width:fit-content;margin-left:auto;margin-right:0;position:relative}
  /* לוגו חדש: אקולייזר + חץ הורדה */
  .bv4row{display:flex;align-items:center;gap:12px;padding:4px 2px}
  /* לחיצה על הלוגו = חזרה/רענון לדף הבית */
  .brandlink{text-decoration:none;color:inherit;cursor:pointer;transition:transform .12s}
  .brandlink:active{transform:scale(.98)}
  .brandlink:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:var(--r-md)}
  .lg4{width:58px;height:62px;display:flex;align-items:center;justify-content:center;flex:none}
  .lg4 svg{width:50px;height:56px;overflow:visible}
  .lg4eq rect{transform-box:fill-box;transform-origin:50% 50%;animation:lg4eqb 2s ease-in-out infinite}
  .lg4eq rect:nth-of-type(1){animation-delay:-.25s}
  .lg4eq rect:nth-of-type(2){animation-delay:-.8s;animation-duration:2.15s}
  .lg4eq rect:nth-of-type(3){animation-delay:-1.3s;animation-duration:1.75s}
  .lg4eq rect:nth-of-type(4){animation-delay:-.55s;animation-duration:2.3s}
  @keyframes lg4eqb{0%,100%{transform:scaleY(.55)}50%{transform:scaleY(1)}}
  .lg4arr{animation:lg4bob 1.7s ease-in-out infinite}
  @keyframes lg4bob{0%,100%{transform:translateY(-1px)}50%{transform:translateY(5px)}}
  .bv4txt{display:flex;flex-direction:column;align-items:stretch;gap:0}
  /* מותג קטן בסרגל הדביק — נשאר תמיד למעלה */
  .toolbrand{display:none;align-items:center;gap:8px;text-decoration:none;color:var(--text);font-weight:800;font-size:1.05rem;white-space:nowrap;animation:fadein .3s ease}
  .toolbrand.show{display:inline-flex}
  @keyframes fadein{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
  .lg4.mini{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 50%,transparent)}
  .lg4.mini svg{width:24px;height:27px}
  header h1,header .brandtitle{margin:0;font-size:2rem;font-weight:800;letter-spacing:0;line-height:1.05;color:#fff;font-family:'Rubik','Segoe UI',sans-serif;text-shadow:0 2px 0 rgba(0,0,0,.12),0 6px 16px rgba(0,0,0,.3)}
  .toolbrand{font-family:'Rubik','Segoe UI',sans-serif}
  .brand small{display:block;font-size:13.1px;font-weight:700;letter-spacing:0;opacity:.96;color:#fff;margin:3px 0 0;white-space:nowrap;width:0;min-width:100%;max-width:100%;text-align:justify;text-align-last:justify}
  header p{margin:10px 0 0;opacity:.96;font-size:1.02rem;position:relative;font-weight:500}
  /* ===== שלב 2 (15.10): ראש הדף = שורה עליונה אחת (מותג | מחוברים + אייקונים) + פס מידע אחד דק ===== */
  .hdtop{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:2}
  .hdtop .brand{margin:0;flex:0 1 auto;min-width:0}
  .onlinewrap{display:flex;align-items:center;gap:8px;flex:none}
  .online{height:28px;box-sizing:border-box;padding:0 11px;border-radius:var(--r-pill);font-size:.74rem;font-weight:500;display:flex;align-items:center;gap:6px;white-space:nowrap;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.22)}
  .online b{font-weight:700}
  .onl-short{display:none}
  .cornericons{display:flex;gap:6px;align-items:center}
  .cornericon{all:unset;box-sizing:border-box;cursor:pointer;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;transition:background .15s}
  .cornericon:hover{background:rgba(255,255,255,.28)}
  .cornericon svg{width:17px;height:17px;flex:none}
  #syncBtn.cornericon.on{background:#34d399;border-color:#fff;color:#fff}
  /* פס המידע: שורה אחת שנגללת לצד (בלי חצים ובלי פס גלילה); הנקודות בין הפריטים מצוירות ב-CSS */
  .infobar{display:flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;font-size:.76rem;line-height:1.5}
  .infobar::-webkit-scrollbar{display:none}
  .ib-item{display:inline-flex;align-items:center;gap:5px;flex:none}
  .ib-item+.ib-item::before{content:"";width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.55;margin:0 9px}
  /* 22.10 (משתמש): הודעת זכויות-יוצרים "במקום שתמיד רואים" — תחתית הכותרת הדביקה (גם במצב רגוע), מחשב וטלפון */
  .online.onlw{visibility:hidden}
  .cpyline{clear:both;text-align:center;font-size:.68rem;line-height:1.35;padding:2px 8px 4px;opacity:.78;white-space:normal}
  .cpyline a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}
  @media(max-width:560px){.cpyline{font-size:.62rem;padding:1px 4px 3px}}
  .ib-strong{font-weight:600}
  .infobar .liwrap,.infobar .e3d{width:15px;height:15px}
  header .infobar{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;max-width:min(720px,calc(100% - 720px));padding:4px 14px;border-radius:var(--r-pill);background:transparent;border:0;color:rgba(255,255,255,.88)}
  header .infobar .ib-strong{color:#fff}
  /* מסך בינוני: אין מקום באמצע — הפס יורד מתחת לשורה העליונה, עדיין שורה אחת */
  @media(max-width:1300px){header .infobar{position:relative;top:auto;left:auto;transform:none;width:fit-content;max-width:100%;margin:6px auto 2px}}
  /* באנגלית הסלוגן רחב יותר ונוגע בפס — הפס יורד מתחת לשורה העליונה עד מסך רחב מאוד */
  @media(max-width:1640px) and (min-width:561px){[dir="ltr"] header .infobar{position:relative;top:auto;left:auto;transform:none;width:fit-content;max-width:100%;margin:6px auto 2px}}
  /* טלפון: שורה עליונה קומפקטית; פס המידע ברוחב מלא, שקוף, נמוג בקצה */
  @media(max-width:560px){
    header{padding:9px 12px 0}
    .hdtop{gap:8px}
    .bv4row{gap:7px;padding:0}
    .lg4{width:32px;height:36px}
    .lg4 svg{width:27px;height:31px}
    header h1,header .brandtitle{font-size:1.12rem;white-space:nowrap}
    .brand small{display:none}
    .onlinewrap{gap:2px}
    .online{height:26px;padding:0 9px;font-size:.7rem;gap:5px}
    .onl-long{display:none}
    .onl-short{display:inline}
    .cornericons{gap:0}
    .cornericon,[data-theme="light"] .cornericon{width:40px;height:40px;background:transparent;border-color:transparent}
    .cornericon:active{background:rgba(255,255,255,.22)}
    header .infobar,[data-theme="light"] header .infobar{position:static;transform:none;width:auto;max-width:none;margin:5px -12px 0;padding:0 12px;height:30px;background:transparent;border:0;border-radius:0;font-size:.74rem;-webkit-mask-image:linear-gradient(to left,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to left,#000 calc(100% - 28px),transparent)}
    [dir="ltr"] header .infobar{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 28px),transparent)}
    .infobar .ib-item:last-child{padding-inline-end:24px}
  }
  .dot{width:9px;height:9px;border-radius:50%;background:#4ade80;box-shadow:0 0 10px #4ade80;animation:pulse 1.6s infinite}
  /* ‼️ 16.8 — קישוטי-הכותרת (הנקודה הפועמת, התווים המרחפים) רצו ללא הפסקה גם כשהכותרת
     גוללה מזמן מחוץ למסך: 1,227ms של חישוב-סגנון על 10 שניות של חוסר-מעש במובייל, ~15%
     מעבד ברציפות. עכשיו הן קופאות כשהן לא נראות וכשהלשונית ברקע. */
  .anpause,.anpause *{animation-play-state:paused!important}
  /* חיווי "טיימר שינה פעיל" — מחלקה נפרדת מ-.on, שמסמנת "החלון פתוח" ונמחקת בסגירתו (16.8) */
  .chip.timing{border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
  /* "שירים נוספים" בעמוד-שיר — קישורים פנימיים אמיתיים ב-HTML (גילוי-זחילה), לא רק בלקוח */
  .related{max-width:1100px;margin:26px auto 8px;padding:0 16px}
  .related h2{font-size:1.05rem;margin:0 0 10px}
  .related ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
  .related li a{display:inline-block;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:7px 13px;font-size:.85rem;color:var(--text);text-decoration:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .related li a:hover{border-color:var(--accent);color:var(--accent)}
  .relmore{margin:12px 0 0;font-size:.85rem}
  .relmore a{color:var(--accent)}
  @keyframes pulse{50%{opacity:.35}}
  /* ‼️ סולם השכבות (16.8) — כל z-index באתר נמצא כאן, בסדר עולה:
     20 נגן-צף · 21 פס "המשך" · 30 פס-הסכמה · 60 תפריטי-כרטיס · 110 ערימת-הצפים (#floatstack: פרומו + כפתורים) ·
     150 סרגל-הניווט · 155 השלמה-אוטומטית · 160 פופאפי-סרגל · 190 נגן-מסך-מלא · 200 מודלים ·
     260 הוספה-לפלייליסט · 300 טוסט · 400 סיור.
     מה שהשתנה ולמה: הסרגל היה 5 — הוא כל התפריט במובייל, והפרומו (140) כיסה 7 מ-16 הפריטים
     ב-390px ו-12 מ-16 ב-360px. הפרומו ירד מתחת לסרגל ומתחת לפופאפים, כי ב-140 מול 120 הוא
     בלע לחיצות: "סיור באתר" ו"כיבוי טיימר שינה" לא נפתחו עד שסגרו את הבאנר (נמדד בלחיצות אמיתיות). */
  /* סרגל פעולות — שלב 2: שורה אחת שקטה (בורר סוג, מיון, קבוצות) ו"מיוזיק חי" הבולט היחיד; בטלפון חלונית מלמטה */
  .toolbar{position:sticky;top:0;z-index:150;background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid var(--line);display:flex;gap:8px;padding:6px 20px;flex-wrap:wrap;align-items:center;justify-content:center}
  /* ‼️ 25.8 (בקשות #134,#137 — יאיר אלייצור: "חיפוש שיעבוד גם באמצע הדף") — נמדד: אחרי
     גלילה תיבת-החיפוש הייתה ב-y=-2262, מחוץ למסך, והדרך היחידה אליה הייתה "↑ למעלה".
     עכשיו השורה דביקה מתחת לטולבר. הגובה של הטולבר משתנה (שבירת-שורות בדסקטופ, כיווץ
     במובייל) ולכן top מגיע ממשתנה --tbh שמתעדכן ב-ResizeObserver ליד toolToggle. */
  /* שלב 2: שורה אחת — במחשב [זמרים][שירים] תיבה [כיוון][תאריך]; בטלפון [תפריט] תיבה [4 אייקונים] */
  .searchrow{display:flex;justify-content:center;align-items:center;gap:8px;padding:7px max(20px,calc((100% - 860px)/2));flex-wrap:nowrap;position:sticky;top:var(--tbh,52px);z-index:149;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}
  /* 13.7 בקשת משתמש: חיפוש בולט יותר — אבל עדין, בלי לחרוג משפת-העיצוב ("לא חריג") */
  #q{width:100%;height:42px;box-sizing:border-box;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:var(--r-pill);padding:0 14px;padding-inline-start:42px;font-size:.92rem;line-height:1.2;font-family:inherit;outline:none;box-shadow:0 1px 2px rgba(0,0,0,.04);transition:border-color .15s,box-shadow .15s}
  #q:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}
  .chip{cursor:pointer;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:var(--r-pill);padding:8px 14px;min-width:112px;justify-content:center;text-align:center;font-size:.85rem;font-weight:700;font-family:inherit;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;transition:transform .12s,box-shadow .12s,border-color .12s,color .12s;user-select:none}
  .chip:hover{transform:scale(1.06);border-color:var(--accent);color:var(--accent)}
  /* סבב UX 10.7: קיבוץ ניווט בדסקטופ — "שלי" (אישי) ו"כלים" (הגדרות) בתפריטים; שלב 2: גם "מיון".
     בטלפון שקוף (display:contents) — הפריטים יושבים ישר בחלונית, תחת כותרות */
  .navgrp{position:relative;display:inline-flex}
  .grpmenu{position:absolute;top:calc(100% + 6px);inset-inline-start:0;background:var(--card);border:0;border-radius:14px;padding:6px;box-shadow:0 12px 32px rgba(0,0,0,.16),0 0 0 1px var(--line);display:none;flex-direction:column;gap:2px;z-index:110;min-width:210px}
  .navgrp.open .grpmenu{display:flex;animation:fadein .18s ease}
  /* הכפתור עצמו נצבע (.on) ומציג את שם-הפריט הנבחר ("מיון · החמים") — ראו paintGrpSel */
  .grpbtn .gsel{font-weight:600;margin-inline-start:-4px;max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:pre}
  .gcaret{flex:none;opacity:.6;transition:transform .15s}
  .navgrp.open .gcaret{transform:rotate(180deg)}
  .toolToggle{position:relative;display:none}
  .toolToggle.hason::after{content:'';position:absolute;top:6px;inset-inline-end:6px;width:8px;height:8px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 2px #fff}
  @media(max-width:560px){.grpbtn{display:none}.navgrp,.grpmenu{display:contents}}
  /* min-height 40: הצ'יפים נמדדו 31–32px גובה במובייל — מתחת לכל תקן מגע מקובל (16.8) */
  @media(max-width:560px){.chip{padding:7px 11px;font-size:.8rem;gap:6px;min-width:92px;min-height:40px}}
  /* ===== שלב 2 (15.10): הסרגל, שורת החיפוש והחלונית בטלפון ===== */
  :root{--s2soft:color-mix(in srgb,var(--text) 5%,var(--card));--s2tint:color-mix(in srgb,var(--accent) 12%,var(--card))}
  #toolbar .chip{height:36px;min-height:0;min-width:0;padding:0 14px;gap:7px;border-radius:var(--r-pill);background:transparent;border:1px solid transparent;color:var(--text);font-weight:500;font-size:.86rem;box-shadow:none;transform:none;transition:background .15s,border-color .15s,color .15s}
  #toolbar .chip>svg{width:16px;height:16px;color:var(--muted);flex:none}
  #toolbar .chip:hover{background:var(--s2soft);color:var(--text);border-color:transparent}
  #toolbar .chip.on,#toolbar .chip.on:hover,body.plmode #toolbar #plChip{background:var(--s2tint);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,transparent);font-weight:600;box-shadow:none}
  #toolbar .chip.on>svg,body.plmode #toolbar #plChip>svg{color:var(--accent)}
  #toolbar .chip.timing{border-color:var(--accent);color:var(--accent)}
  #toolbar .navgrp.open .grpbtn{background:var(--s2soft);color:var(--text);border-color:transparent}
  .tbsep{width:1px;height:20px;background:var(--line);margin:0 3px;flex:none}
  .tbsheethead,.tbhd,#installChip{display:none}
  .toolbrand{margin-inline-end:6px;font-size:.98rem;font-weight:700;gap:9px}
  .toolbrand .lg4.mini{width:32px;height:32px;border-radius:9px;box-shadow:none}
  .toolbrand .lg4.mini svg{width:20px;height:23px}
  /* בורר מחובר: הכל · סינגלים · קליפים */
  .fseg{display:inline-flex;align-items:center;gap:2px;padding:3px;height:36px;box-sizing:border-box;border-radius:var(--r-pill);background:var(--s2soft);border:1px solid var(--line)}
  #toolbar .fseg .chip{height:28px;padding:0 13px;border:0;color:var(--muted)}
  #toolbar .fseg .chip>svg{width:15px;height:15px;color:currentColor}
  #toolbar .fseg .chip:hover{background:transparent;color:var(--text)}
  #toolbar .fseg .chip.on{background:var(--card);color:var(--text);font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.12),0 0 0 1px var(--line)}
  #toolbar .fseg .chip.on>svg{color:var(--accent)}
  /* תפריטים נפתחים: שורות אחידות; סימן ליד הבחירה הפעילה ("חדש" כשאין מיון אחר) */
  #toolbar .grpmenu .chip{width:100%;justify-content:flex-start;height:40px;border-radius:10px;padding:0 12px;gap:10px}
  #toolbar .grpmenu .chip.on::after,#toolbar #sortNew.cur::after{content:"";width:14px;height:14px;margin-inline-start:auto;flex:none;background:var(--accent);-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='M5 12l5 5 9-10'/%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='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/contain no-repeat}
  #toolbar #sortNew.cur{color:var(--accent);font-weight:600}
  #toolbar #sortNew.cur>svg{color:var(--accent)}
  /* מסך בינוני: מרווחים צפופים יותר כדי שהסרגל יישאר בשורה אחת; כשהוא בכל זאת נשבר — בלי קווי הפרדה תלויים */
  @media(max-width:1180px) and (min-width:561px){#toolbar{padding:6px 10px;gap:4px}#toolbar .chip{padding:0 10px}#toolbar .fseg .chip{padding:0 10px}.tbsep{margin:0 1px}}
  @media(max-width:1100px) and (min-width:561px){#toolbar .chip,#toolbar .fseg .chip{padding:0 9px;font-size:.82rem;gap:6px}#toolbar #radio{padding:0 14px}}
  @media(max-width:1000px) and (min-width:561px){.tbsep{display:none}}
  /* "מיוזיק חי" — הבולט היחיד בסרגל, עם נקודה חיה */
  #toolbar #radio{height:40px;padding:0 18px;gap:8px;font-weight:700;font-size:.9rem;color:#fff;border:0;background:linear-gradient(120deg,#ff3b5c,#ff6a3d);box-shadow:0 4px 14px rgba(255,59,92,.35);animation:none}
  #toolbar #radio>svg{color:#fff;width:17px;height:17px}
  #toolbar #radio:hover{background:linear-gradient(120deg,#f72f52,#ff5a2b);box-shadow:0 6px 18px rgba(255,59,92,.45)}
  .livedot{width:7px;height:7px;border-radius:50%;background:#fff;flex:none;order:-1;animation:s2live 1.8s ease-out infinite}
  @keyframes s2live{0%{box-shadow:0 0 0 0 rgba(255,255,255,.75)}70%{box-shadow:0 0 0 7px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
  /* שורת החיפוש */
  .qwrap{order:2;flex:1 1 auto;min-width:0;position:relative;display:flex;align-items:center;margin:0}
  .qico{position:absolute;inset-inline-start:14px;color:var(--muted);pointer-events:none}
  .qbtns{display:contents}
  .qbtn{order:3;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:42px;box-sizing:border-box;padding:0 15px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card);color:var(--text);font-family:inherit;font-weight:500;font-size:.86rem;white-space:nowrap;flex:none;transition:border-color .15s,background .15s,color .15s}
  #artists,#songsBtn{order:1;text-decoration:none}
  .qbtn>svg{color:var(--muted);flex:none;transition:transform .2s}
  .qbtn:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
  .qbtn.on{background:var(--s2tint);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}
  .qbtn.on>svg{color:var(--accent)}
  #sortToggle.old .sdir{transform:scaleY(-1)}
  /* מסך צר שאינו טלפון: הכפתורים שליד התיבה הופכים לאייקונים עגולים, כדי שהתיבה לא תימעך */
  @media(max-width:760px) and (min-width:561px){.qbtn{width:42px;padding:0}.qbtn .qlbl{display:none}header h1,header .brandtitle{font-size:1.5rem;white-space:nowrap}}
  /* במצב פודקאסטים לשורה אין תפקיד (למדור חיפוש משלו) — בטלפון נשאר רק כפתור התפריט */
  body.podmode .searchrow>:not(.toolToggle){display:none}
  @media(min-width:561px){body.podmode .searchrow{display:none}}
  /* טלפון: שורה דביקה אחת = תפריט + תיבה + 4 אייקונים (זמרים, שירים, כיוון, תאריך) */
  @media(max-width:560px){
    .searchrow{padding:8px 10px;gap:6px;background:color-mix(in srgb,var(--bg) 92%,transparent)}
    .toolToggle{display:inline-flex;order:0;width:44px;height:44px;padding:0;align-items:center;justify-content:center;flex:none;border:0;border-radius:13px;cursor:pointer;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 3px 10px color-mix(in srgb,var(--accent) 35%,transparent)}
    .qwrap{order:1}
    #q{height:44px;font-size:.88rem;padding:0 10px;padding-inline-start:38px}
    .qico{inset-inline-start:12px;width:17px;height:17px}
    .qbtns{display:flex;order:2;flex:none;height:44px;box-sizing:border-box;border:1px solid var(--line);border-radius:13px;background:var(--card);overflow:hidden}
    .qbtn,#artists,#songsBtn{order:0;width:40px;height:42px;padding:0;gap:0;border:0;border-radius:0;background:transparent}
    .qbtn+.qbtn{border-inline-start:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
    .qbtn .qlbl{display:none}
    .qbtn>svg{width:18px;height:18px;color:var(--text)}
    .qbtn:hover{background:var(--s2soft)}
    .qbtn.on,#artists.on,#songsBtn.on{background:var(--s2tint)}
  }
  /* טלפון: התפריט = חלונית מלמטה. למעלה "מיוזיק חי" ו"פודקאסטים", ואחריהם כותרות:
     סינון · מיון · שלי · שמיעה · עיצוב · עוד. הסדר נקבע ב-order (המבנה ב-HTML הוא של המחשב) */
  @media(max-width:560px){
    html.tbopen{overflow:hidden}
    html.tbopen body::before{content:"";position:fixed;inset:0;z-index:179;background:rgba(10,12,20,.45);animation:s2fade .2s ease}
    @keyframes s2fade{from{opacity:0}to{opacity:1}}
    @keyframes s2sheet{from{transform:translateY(30px);opacity:.4}to{transform:none;opacity:1}}
    #toolbar.collapsed{display:none}
    #toolbar:not(.collapsed){position:fixed;left:0;right:0;bottom:0;top:auto;z-index:180;max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-content:start;padding:0 14px calc(18px + env(safe-area-inset-bottom));background:var(--card);border:0;border-radius:22px 22px 0 0;backdrop-filter:none;box-shadow:0 -8px 30px rgba(0,0,0,.18);animation:s2sheet .22s ease}
    #toolbar .toolbrand,#toolbar .tbsep{display:none}
    #toolbar .tbsheethead{display:flex;order:0;grid-column:1/-1;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:2;background:var(--card);padding:16px 2px 8px;margin-bottom:2px}
    .tbsheethead::before{content:"";position:absolute;top:6px;left:50%;width:38px;height:4px;margin-left:-19px;border-radius:4px;background:var(--line)}
    .tbsheethead b{font-size:1.08rem;font-weight:700;color:var(--text)}
    .tbx{cursor:pointer;width:40px;height:40px;border:0;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--s2soft);color:var(--text)}
    #toolbar .tbhd{display:block;grid-column:1/-1;font-size:.74rem;font-weight:600;color:var(--muted);padding:10px 4px 0}
    .tbhd-f{order:10} .tbhd-s{order:20} .tbhd-m{order:30} .tbhd-l{order:40} .tbhd-d{order:50} .tbhd-r{order:60}
    #radio{order:2} #podChip{order:3}
    #fseg{order:11;grid-column:1/-1} #catChip{order:12} #surprise{order:13}
    #sortNew{order:21} .sortchip[data-s="hot"]{order:22} .sortchip[data-s="plays"]{order:23} .sortchip[data-s="rating"]{order:24}
    #toolbar .chip[data-f="fav"]{order:31} #recoChip{order:32} #mychip{order:33} #plChip{order:34}
    #listenChip{order:41} #sleepChip{order:42}
    #designChip{order:51;grid-column:1/-1}
    #hiddenBtn{order:61} #suggestChip{order:62} #installChip{order:63}
    #toolbar:not(.collapsed) #installChip:not([hidden]){display:flex}
    header #installBtn{display:none!important}
    /* כל פריט: שורה אחידה של אייקון ושם, 46px — יעד מגע נוח */
    #toolbar .chip,#toolbar .grpmenu .chip{width:auto;height:46px;justify-content:flex-start;padding:0 12px;gap:10px;border-radius:12px;background:var(--s2soft);border:1px solid transparent;font-size:.9rem;font-weight:500;color:var(--text);overflow:hidden}
    #toolbar .chip>span{overflow:hidden;text-overflow:ellipsis}
    #toolbar .chip>svg{width:18px;height:18px;color:var(--accent)}
    #toolbar .chip.on,#toolbar .chip.on:hover,#toolbar #sortNew.cur{background:var(--s2tint);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent);font-weight:600}
    #toolbar .grpmenu .chip.on::after,#toolbar #sortNew.cur::after{display:none}
    #toolbar .fseg{height:50px;width:100%;padding:4px}
    #toolbar .fseg .chip{flex:1 1 0;justify-content:center;height:40px;padding:0 8px;background:transparent;border:0;color:var(--muted)}
    #toolbar .fseg .chip>svg{color:currentColor}
    #toolbar .fseg .chip.on{background:var(--card);color:var(--text);border:0}
    #toolbar .fseg .chip.on>svg{color:var(--accent)}
    #toolbar #radio,#toolbar #podChip{height:52px;font-size:.95rem}
    #toolbar #radio{font-weight:700;color:#fff;border:0;background:linear-gradient(120deg,#ff3b5c,#ff6a3d);box-shadow:0 3px 8px rgba(255,59,92,.22)}
    #toolbar #radio>svg{color:#fff;width:20px;height:20px}
    #toolbar #podChip{font-weight:600}
    #toolbar #podChip>svg{width:20px;height:20px}
    #toolbar .livedot{order:9;margin-inline-start:auto}
  }
  /* ===== סוף שלב 2 ===== */
  /* פופאפ קטן לכפתורי שמיעה/טיימר/עיצוב (במקום תפריט נגלל שנחתך) */
  /* תבנית אחידה לכל פאנל נפתח: כותרת + תיאור + ✕ */
  .pophead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 2px}
  .pophead b{font-size:.95rem}
  .popx{flex:0 0 auto;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg2);color:var(--muted);border:1px solid var(--line);cursor:pointer;font-size:.8rem;font-weight:700;transition:color .12s,border-color .12s,background .12s}
  .popx:hover{color:#fff;background:var(--accent);border-color:var(--accent)}
  .popdesc{margin:0 0 10px;color:var(--muted);font-size:.78rem;line-height:1.5}
  /* max-height+גלילה: ב-360×640 חלק מהפופאפים חרגו מתחת לקצה המסך ולא היה איך להגיע לתחתיתם (16.8) */
  .toolpop{position:fixed;top:104px;left:50%;transform:translateX(-50%);background:var(--card);border:1px solid var(--line);border-radius:16px;padding:9px;box-shadow:0 16px 44px rgba(0,0,0,.42);z-index:160;display:none;flex-direction:column;gap:3px;min-width:238px;max-width:92vw;max-height:calc(100dvh - 118px);overflow-y:auto;overscroll-behavior:contain;animation:fadein .18s ease}
  .toolpop.show{display:flex}
  .toolpop>button{background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:11px 13px;font-size:.92rem;font-family:inherit;cursor:pointer;text-align:start;font-weight:600}
  .toolpop>button:hover{border-color:var(--accent)}
  .toolpop>button.m_radio{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,var(--bg2)),var(--bg2));font-weight:700}
  .toolpop>button.m_radio.on{background:linear-gradient(135deg,#ff3b5c,#9b6cff);color:#fff;border-color:transparent}
  /* 📅 סינון לפי שנה — select בסגנון צ'יפ */
  /* 🎯 כפתור רדיו אישי בתוך התערובת היומית */
  /* ✍️ הצעת תיקון-כתיב בהשלמה האוטומטית */
  .acrow.acfuzzy{color:var(--muted)}
  .acfz{font-size:.68rem;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);padding:1px 8px;border-radius:var(--r-pill);margin-inline-start:7px}
  /* === שלב 0 (15.10): חלונות "הגדרות שמיעה" ו"עיצוב" — שורות מקובצות עם מתגים ובוררים אמיתיים.
     מתג = button[role=switch] עם aria-checked; בורר = role=radiogroup של כפתורי role=radio.
     המצב נצבע ב-paintSettings() מתוך אותם מפתחות localStorage / משתנים שהכפתורים הישנים כתבו. */
  .toolpop.setpop{width:400px;max-width:calc(100vw - 24px);min-width:0;padding:16px 16px 18px;gap:0;border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.22),0 2px 8px rgba(0,0,0,.08)}
  .setpop .pophead{gap:10px}
  .setpop .pophead b{flex:1;display:flex;align-items:center;gap:9px;font-size:1.08rem;font-weight:800}
  .phico{flex:0 0 auto;width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent)}
  .setpop .popx{width:36px;height:36px;background:transparent;border:0}
  .setpop .popx:hover{background:var(--bg2);color:var(--text)}
  .setpop .popdesc{margin:2px 0 14px;font-size:.8rem;padding-inline-start:41px}
  .setpop .setall{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:46px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font:inherit;font-weight:700;font-size:.95rem;cursor:pointer;margin:0 0 6px;padding:0 16px;box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 32%,transparent)}
  .setpop .setall:hover{filter:brightness(1.06);border:0}
  .setsec{font-size:.76rem;font-weight:700;color:var(--muted);letter-spacing:.02em;margin:14px 4px 6px}
  .setgrp{background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:0 14px}
  .setgrp-act{margin-top:12px}
  .setrow{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;min-height:54px;padding:9px 0;cursor:pointer;color:var(--text);font-family:inherit}
  .setgrp>*+*{border-top:1px solid var(--line)}
  .setcol{display:flex;flex-direction:column;align-items:stretch;gap:9px;padding:12px 0 13px}
  .sethd{display:flex;align-items:center;gap:12px}
  .setcol.inl{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;min-height:54px}
  .setcol.inl .sethd{flex:1 1 auto;min-width:0}
  .setico{flex:0 0 auto;width:20px;height:20px;color:var(--muted);display:inline-flex}
  .setlbl{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:start}
  .setlbl b{font-size:.92rem;font-weight:600;line-height:1.3}
  .setlbl small{font-size:.75rem;color:var(--muted);line-height:1.35;font-weight:400}
  .setrow:focus-visible,.seg button:focus-visible,.swatches button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:10px}
  .sw{position:relative;flex:0 0 auto;width:46px;height:28px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--text) 20%,transparent);transition:background .2s ease}
  .sw::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:inset-inline-start .2s ease}
  .setrow[aria-checked="true"] .sw{background:var(--accent)}
  .setrow[aria-checked="true"] .sw::after{inset-inline-start:21px}
  .setrow[aria-checked="true"] .setico{color:var(--accent)}
  .chev{flex:0 0 auto;width:18px;height:18px;color:var(--muted);display:inline-flex}
  [dir="ltr"] .chev svg{transform:scaleX(-1)}
  .seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:3px;border-radius:11px;background:color-mix(in srgb,var(--text) 7%,transparent)}
  .seg button{all:unset;box-sizing:border-box;height:34px;padding:0 6px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:.82rem;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;font-family:inherit;transition:background .15s,color .15s}
  .seg button:hover{color:var(--text)}
  .seg button[aria-checked="true"]{background:var(--card);color:var(--accent);box-shadow:0 1px 3px rgba(0,0,0,.12),0 0 0 1px color-mix(in srgb,var(--text) 6%,transparent)}
  .setcol.inl .seg{flex:0 0 auto;grid-auto-columns:auto}
  .setcol.inl .seg button{padding:0 12px}
  .swatches{flex:0 0 auto;display:flex;gap:2px}
  .swatches button{all:unset;box-sizing:border-box;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;border:2px solid transparent;transition:border-color .15s}
  .swatches button i{display:block;width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
  .swatches button[aria-checked="true"]{border-color:var(--text)}
  .swatches .swa0{background:linear-gradient(135deg,#0d9488,#3358d4)}
  .swatches .swa1{background:linear-gradient(135deg,#b06bff,#ec4899)}
  .swatches .swa2{background:linear-gradient(135deg,#f6b53d,#ff7a59)}
  .swatches .swa3{background:linear-gradient(135deg,#34d399,#3b82f6)}
  .swatches .swa4{background:linear-gradient(135deg,#ff6b9d,#a855f7)}
  @media(max-width:640px){.seg button{height:40px}.setpop .popx{width:42px;height:42px}}
  @media(forced-colors:active){.sw{border:1px solid CanvasText;background:Canvas}.sw::after{background:CanvasText}.setrow[aria-checked="true"] .sw{background:Highlight}.seg button[aria-checked="true"],.swatches button[aria-checked="true"]{outline:2px solid Highlight}}
  /* ===== שלב 4-5 (15.10): "מרכז שמיעה" (#listenPop), כפתור "שמיעה" בנגן, מצב ריק / שגיאה, פוקוס ומעברים =====
     במחשב: חלון אחד ברוחב 760 בשתי עמודות (נגינה | טיימר שינה + צליל). מהנגן (lcdock) הוא יושב מעל הנגן.
     בטלפון: חלונית מלמטה עם ידית. html.lcopen מחשיך את הרקע (body::after). */
  #listenPop.lcpop{width:760px;max-width:calc(100vw - 32px);padding:0;overflow:hidden;border-radius:22px;z-index:170;box-shadow:0 28px 70px rgba(15,27,42,.24),0 2px 6px rgba(15,27,42,.06);animation:lcin .2s cubic-bezier(.2,.8,.2,1)}
  #listenPop.lcpop.lcdock{top:auto!important;bottom:calc(var(--botoff,0px) + 14px);max-height:calc(100dvh - var(--botoff,0px) - 40px)!important}
  html.lcopen body::after{content:"";position:fixed;inset:0;z-index:169;background:rgba(10,16,28,.42);animation:lcfade .2s ease}
  @keyframes lcfade{from{opacity:0}to{opacity:1}}
  @keyframes lcin{from{opacity:0;translate:0 -8px;scale:.985}to{opacity:1;translate:0 0;scale:1}}
  @keyframes lcup{from{opacity:.4;translate:0 40px}to{opacity:1;translate:0 0}}
  @keyframes lcfadeup{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}
  .lcgrab{display:none}
  .lcpop .pophead{padding:18px 20px 14px;margin:0;gap:12px;flex-shrink:0}
  .lcpop .pophead b{gap:12px;min-width:0}
  .lcpop .phico{width:40px;height:40px;border-radius:12px}
  .lcht{display:flex;flex-direction:column;min-width:0;font-size:1.125rem;font-weight:700;line-height:1.3}
  .lcht small{font-size:.8125rem;font-weight:400;color:var(--muted);margin-top:2px}
  .lcpop .popx{width:40px;height:40px}
  .lcscroll{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 20px 20px;scrollbar-width:thin}
  .lcpop .setall{height:50px;border-radius:14px;font-size:1rem;margin:2px 0 20px;background:var(--accent);box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 32%,transparent)}
  [data-theme="dark"] .lcpop .setall{color:var(--bg)}
  .lccols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 24px;align-items:start}
  .lcpop .setsec{display:flex;align-items:center;gap:8px;font-size:.8125rem;margin:22px 4px 8px}
  .lccol>.setsec:first-child,.lccol>.lcsleep:first-child>.setsec{margin-top:0}
  .lcbadge{display:none;margin-inline-start:auto;font-size:.75rem;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:999px;padding:2px 9px}
  .lcsleep.active .lcbadge{display:inline-flex}
  .lctbox{padding:12px}
  .lctbox>*+*{border-top:0}
  .lclive{display:none;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent2) 14%,var(--bg2)),color-mix(in srgb,var(--accent) 10%,var(--bg2)));border:1px solid color-mix(in srgb,var(--accent2) 30%,var(--line))}
  .lcsleep.active .lclive{display:flex}
  .lcsleep.active .lcidle{display:none}
  .lcmoon{width:44px;height:44px;border-radius:50%;background:var(--card);color:var(--accent2);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px rgba(15,27,42,.1)}
  .lcltx{flex:1;min-width:0;font-size:.875rem;color:var(--muted);line-height:1.35}
  .lcltx b{display:block;font-size:1.5rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.5px;line-height:1.2}
  .lcltx b.word{font-size:1.125rem;letter-spacing:0}
  .lcoff{height:40px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-size:.875rem;font-weight:700;padding:0 16px;cursor:pointer;display:flex;align-items:center;gap:6px;flex-shrink:0}
  .lcoff:hover{border-color:#e5484d;color:#e5484d}
  .lcchips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .lcchips.lc2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:8px}
  .lcchip{height:44px;min-width:0;box-sizing:border-box;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;transition:border-color .15s,background .15s}
  .lcchip>span{font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lcchip small{font-size:.75rem;font-weight:500;color:var(--muted)}
  .lcchip svg{flex-shrink:0;color:var(--muted)}
  .lcchip:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
  .lcchip:disabled{opacity:.45;cursor:not-allowed}
  .lcchip[aria-expanded="true"]{border-color:var(--accent);color:var(--accent)}
  .lcclock{display:flex;gap:8px;margin-top:8px}
  .lcclock[hidden]{display:none}
  .lcclock input{flex:1;min-width:0;height:44px;box-sizing:border-box;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-size:1rem;padding:0 12px}
  .lcclock button{height:44px;border-radius:12px;border:0;background:var(--accent);color:#fff;font:inherit;font-weight:700;padding:0 18px;cursor:pointer}
  [data-theme="dark"] .lcclock button{color:var(--bg)}
  .lcsleep.lcflash .lctbox{animation:lcflash 1.5s ease}
  @keyframes lcflash{0%,60%{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 45%,transparent)}100%{box-shadow:0 0 0 0 transparent}}
  .seg.lcnum button{font-variant-numeric:tabular-nums;padding:0 4px}
  .lcvolrow{gap:12px}
  .lcvolrow .sethd{flex:0 0 auto}
  /* עוצמה: בעברית הפס מתמלא מימין לשמאל (שמאלה = חזק יותר), באנגלית משמאל לימין */
  #m_vol{-webkit-appearance:none;appearance:none;flex:1 1 auto;min-width:0;height:6px;margin:0 4px;border-radius:999px;cursor:pointer;background:linear-gradient(to left,var(--accent) var(--p,100%),color-mix(in srgb,var(--muted) 30%,var(--line)) var(--p,100%))}
  [dir="ltr"] #m_vol{background:linear-gradient(to right,var(--accent) var(--p,100%),color-mix(in srgb,var(--muted) 30%,var(--line)) var(--p,100%))}
  #m_vol::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:0;box-shadow:0 1px 4px rgba(0,0,0,.3),0 0 0 1px rgba(0,0,0,.06)}
  #m_vol::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:0;box-shadow:0 1px 4px rgba(0,0,0,.3),0 0 0 1px rgba(0,0,0,.06)}
  #m_volv{min-width:42px;text-align:end;font-size:.875rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
  /* כפתור "שמיעה" בנגן התחתון: במחשב עם שם, בטלפון אייקון בלבד (בשורה הקומפקטית, אחרי "הבא") */
  .dock .dright .dlisten{width:auto;height:34px;padding:0 12px;gap:6px;border:1px solid var(--line);border-radius:999px;font-size:.8125rem;font-weight:700;color:var(--text)}
  .dock .dright .dlisten.on{border-color:color-mix(in srgb,var(--accent) 35%,transparent)}
  .dock .dright .dlisten.on{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
  @media(max-width:760px){.dock .dright{display:flex;flex:0 0 auto;gap:0}.dock .dright>:not(.dlisten){display:none}.dock .dright .dlisten{width:44px;height:44px;padding:0;border:0;border-radius:50%;color:var(--text)}.dock .dright .dlisten span{display:none}}
  @media(max-width:640px){
    #listenPop.lcpop,#listenPop.lcpop.lcdock{top:auto!important;bottom:0;left:0;right:0;transform:none;width:100%;max-width:100%;max-height:88dvh!important;border-radius:22px 22px 0 0;border-bottom:0;animation:lcup .24s cubic-bezier(.2,.8,.2,1)}
    .lcgrab{display:block;width:40px;height:5px;border-radius:3px;background:color-mix(in srgb,var(--muted) 40%,transparent);margin:8px auto 0;flex-shrink:0}
    .lcpop .pophead{padding:10px 18px 12px}
    .lcscroll{padding:2px 16px calc(20px + env(safe-area-inset-bottom))}
    .lccols{grid-template-columns:minmax(0,1fr)}
    .lccol+.lccol>.lcsleep:first-child>.setsec{margin-top:20px}
    .lcpop .popx{width:44px;height:44px}
    .lcpop .seg button{height:42px}
    #radioClose{min-width:44px;min-height:44px}
  }
  /* מצב ריק ושגיאת טעינה (#list>.estate, נבנה ב-showEmpty / ב-catch של loadMore) */
  #list>.estate{grid-column:1/-1;box-sizing:border-box;width:calc(100% - 32px);max-width:540px;margin:40px auto;padding:36px 28px 32px;background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 10px 30px rgba(15,27,42,.08);display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--text);animation:lcfadeup .25s ease backwards}
  .estate .eico{width:68px;height:68px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}
  .estate.eerr .eico{background:rgba(229,72,77,.12);color:#d23c42}
  .estate h3{margin:18px 0 8px;font-size:1.25rem;font-weight:800;line-height:1.3;color:var(--text);text-wrap:balance}
  .estate p{margin:16px 0 0;max-width:420px;font-size:.9375rem;line-height:1.65;color:var(--muted);text-wrap:balance}
  .estate h3+p{margin-top:0}
  .estate p b{color:var(--text);font-weight:700;unicode-bidi:isolate}
  .etags{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;max-width:100%}
  .etags:empty{display:none}
  .etag{height:34px;max-width:100%;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;padding:0 12px;padding-inline-end:9px;border-radius:999px;border:1px solid var(--line);background:var(--bg2);color:var(--text);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}
  .etag span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .etag svg{flex-shrink:0;color:var(--muted)}
  .etag:hover{border-color:var(--accent)}
  .eacts{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px}
  .estate .ebtn{height:46px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 20px;margin:0;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-size:.9375rem;font-weight:700;cursor:pointer}
  .estate .ebtn.pri{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 30%,transparent)}
  [data-theme="dark"] .estate .ebtn.pri{color:var(--bg)}
  .estate .ebtn.sec:hover{border-color:var(--accent);color:var(--accent)}
  .estate .efund{display:block;margin:12px 0 0;color:var(--accent);font-weight:600}
  @media(max-width:640px){#list>.estate{margin:20px auto;padding:28px 18px 24px}.eacts{flex-direction:column;align-self:stretch}.estate .ebtn{width:100%}.etag{height:40px}}
  /* פוקוס מקלדת: מסגרת עבה בצבע האתר והילה רכה (רק בניווט מקלדת — :focus-visible) */
  :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
  button:focus-visible,a:focus-visible,[role="button"]:focus-visible,.chip:focus-visible{box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 18%,transparent)}
  .setrow:focus-visible,.seg button:focus-visible,.swatches button:focus-visible{outline-width:3px}
  input:focus-visible{outline-offset:1px}
  .qbtns .qbtn:focus-visible{outline-offset:-4px;box-shadow:none} /* בקבוצת האייקונים (גזורה) — המסגרת בפנים, שלא תיחתך */
  /* מעברים רכים: חלונות נפתחים בעלייה קלה, כרטיסים חדשים מתבהרים */
  .modal.show .modalbox{animation:lcin .22s cubic-bezier(.2,.8,.2,1)}
  #list>.song{animation:lcfade .22s ease backwards} /* שקיפות בלבד, ובלי מילוי אחרי הסוף: translate היה הופך את הכרטיס לבסיס של position:fixed (תפריט ⋯ בטלפון) */
  @media(prefers-reduced-motion:reduce){
    #listenPop.lcpop,html.lcopen body::after,.modal.show,.modal.show .modalbox,.toolpop.show,#list>.song,#list>.estate,.lcsleep.lcflash .lctbox{animation:none!important}
    .rteq i{animation:none!important;height:10px}
    .toast,#popdock{transition:none!important}
  }
  /* ===== סוף שלב 4-5 ===== */
  .chip.on{background:linear-gradient(135deg,var(--accent),var(--accent2),var(--accent3));border-color:transparent;color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 45%,transparent)}
  /* בעמוד פלייליסט כפתור "פלייליסטים" נראה לחוץ (CSS — כדי שסנכרון מצב-לחוץ של המודל לא ידרוס) */
  body.plmode #plChip{background:linear-gradient(135deg,var(--accent),var(--accent2),var(--accent3));border-color:transparent;color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 45%,transparent)}
  .chip.on:hover{color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent2),var(--accent3));border-color:transparent}
  /* באנר "חזרה לכל השירים" (עמוד שיר) — מרחף תחתון, באותו סגנון של פס סינון פעיל */
  /* "לכל השירים" בדף שיר — תיבה רגילה מעל הכרטיס, לא כפתור מרחף */
  .banner{margin:14px auto 0;padding:0;max-width:92%;display:flex;align-items:center;justify-content:center}
  .banner a{display:inline-flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--accent);border-radius:var(--r-pill);padding:9px 18px;box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 24%,transparent);color:var(--accent);font-weight:700;text-decoration:none}
  /* פס הסינון הפעיל (זמר/קטגוריה) — באנר מרחף שנשאר עם המשתמש בגלילה */
  /* פס זמר/קטגוריה — תיבה רגילה מעל הכרטיסים (כמו תיבת פלייליסט), לא כפתור מרחף */
  .artistbar{margin:14px auto 0;padding:0;max-width:92%;display:none;align-items:center;justify-content:center}
  .artistbar.show{display:flex}
  .fpill{display:inline-flex;align-items:center;gap:9px;background:var(--card);border:1px solid var(--accent);border-radius:var(--r-pill);padding:6px 7px 6px 15px;box-shadow:0 6px 22px color-mix(in srgb,var(--accent) 28%,transparent);max-width:92vw}
  .fpill b{font-size:.98rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .fpx{flex:0 0 auto;width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg2);color:var(--muted);text-decoration:none;font-size:.82rem;font-weight:700;border:1px solid var(--line);transition:color .12s,border-color .12s,background .12s}
  .fpx:hover{color:#fff;background:var(--accent);border-color:var(--accent)}
  /* --- תגיות על כרטיס --- */
  .tags{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 11px}
  .tagchip{font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform .1s,background .12s}
  .tagchip:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);transform:translateY(-1px)}
  /* --- לוח קטגוריות --- */
  .catpop{min-width:300px;max-width:94vw;width:540px;max-height:72vh;overflow:auto}
  .catpop .catpophead{font-weight:800;font-size:.95rem;text-align:center;padding:2px 4px 9px;color:var(--text)}
  .catpop #catSearch{width:100%;box-sizing:border-box;background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:11px;padding:9px 13px;font-family:inherit;font-size:.9rem;outline:none;margin-bottom:11px}
  .catpop #catSearch:focus{border-color:var(--accent)}
  .catgroups{display:flex;flex-direction:column;gap:14px}
  .catgrp{display:flex;flex-direction:column;gap:7px}
  .catgname{font-size:.78rem;font-weight:800;color:var(--muted);letter-spacing:.3px}
  /* ‼️ 18.8 (משוב גולש: "שיפתח סרגל רשת מעוצב של כל הקטגוריות") — היה עטיפת-גלולות
     בשורות משתנות, וקשה היה לסרוק בעין 68 קטגוריות. עכשיו רשת אחידה: אריח לכל קטגוריה,
     אימוג'י גדול למעלה, שם, ומונה. auto-fill כדי שמספר העמודות ייגזר מרוחב החלון.
     ‼️ נשמר בדיוק אותו class ואותו data-tag — paintTagbar וההאזנה המואצלת נשענים עליהם. */
  /* 28.10 (משתמש: "האיקונים לא יפים וגדול מדי", נבחרה הדגמה א'): כפתורי-גלולה קטנים — אייקון קטן, שם, (מספר) */
  .catgname{margin:14px 0 8px}
  .catchips{display:flex;flex-wrap:wrap;gap:8px}
  .catchip{cursor:pointer;font-size:.95rem;font-weight:600;padding:8px 14px;border-radius:var(--r-pill);background:var(--bg2);color:var(--text);border:1px solid var(--line);display:inline-flex;align-items:center;gap:6px;line-height:1.2;transition:transform .1s,border-color .12s,background .12s}
  .catchip .liwrap,.catchip .e3d,.catchip .e3d svg{width:17px;height:17px;min-width:17px;font-size:17px;flex:none;margin:0}
  .catchip i{font-style:normal;font-size:.78rem;font-weight:600;color:var(--muted)}
  .catchip i::before{content:"("}.catchip i::after{content:")"}
  .catchip:hover{border-color:var(--accent);transform:translateY(-1px)}
  .catchip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
  .catchip.on i{color:#fff;opacity:.85}
  /* ‏28.10 (בקשת משתמש): קריאה לשתף את האתר — במסך רחב באנר קבוע בכל צד; במסך צר/טלפון כרטיס בתוך הרשימה (לא קופץ, לא מסתיר) */
  .sidesh{position:fixed;top:128px;width:210px;z-index:40;display:none;box-sizing:border-box;padding:18px 16px 16px;border-radius:18px;background:var(--card);border:1px solid var(--line);box-shadow:0 10px 30px rgba(15,27,42,.10);text-align:center;color:var(--text);overflow:hidden}
  .sidesh::before,.shinl::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--accent),var(--accent2),var(--accent3))}
  .sidesh.r{right:24px}.sidesh.l{left:24px}
  @media(min-width:1380px){.sidesh{display:block}#list>.shinl{display:none}}
  html.hp .sidesh{display:none!important}
  .shico{width:54px;height:54px;margin:4px auto 10px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
  .sidesh h3,.shinl h3{margin:0 0 8px;font-size:1.12rem;line-height:1.3}
  .sidesh p,.shinl p{margin:0 0 14px;font-size:.88rem;line-height:1.55;color:var(--muted)}
  .sidesh p b,.shinl p b{color:var(--text)}
  .shbtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 10px;border:0;border-radius:999px;cursor:pointer;font:700 .98rem inherit;font-family:inherit;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 6px 16px color-mix(in srgb,var(--accent2) 35%,transparent);transition:transform .12s}
  .shbtn:hover{transform:translateY(-1px)}
  .shcopy{margin-top:8px;background:none;border:1px solid var(--line);color:var(--text);border-radius:999px;padding:8px 10px;width:100%;cursor:pointer;font:600 .88rem inherit;font-family:inherit}
  .shsmall{margin:12px 0 0!important;font-size:.78rem!important;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:5px}
  .shheart{color:var(--accent);flex:none}
  #list>.shinl{position:relative;overflow:hidden;box-sizing:border-box;grid-column:1/-1;margin:12px 0;padding:18px 18px 16px;border-radius:var(--r-xl);background:var(--card);border:1px solid var(--line);box-shadow:0 6px 22px rgba(15,27,42,.10);text-align:center;color:var(--text)}
  .shinl .shico{width:46px;height:46px;margin:2px auto 8px}
  .shinl .shbtns{display:flex;gap:10px;max-width:420px;margin:0 auto}
  .shinl .shbtns>*{flex:1;margin:0}
  @media(max-width:420px){.shinl .shbtns{flex-direction:column;gap:8px}}
  .catload{color:var(--muted);font-size:.85rem;text-align:center;padding:6px}
  /* --- בורר קטגוריה לשיר --- */
  #tagPick input[type=search],#tagPick input[type=text]{width:100%;background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:11px;padding:10px 14px;font-family:inherit;font-size:.9rem;outline:none;margin-bottom:8px}
  .tpctx{font-size:.85rem;color:var(--muted);font-weight:600;margin-bottom:8px;min-height:1px}
  .tplist{display:flex;flex-direction:column;gap:0;max-height:46vh;overflow:auto;border:1px solid var(--line);border-radius:var(--r-md)}
  .tprow{display:flex;align-items:center;gap:9px;padding:11px 14px;border-bottom:1px solid var(--line);cursor:pointer;font-size:.92rem;font-weight:600;transition:background .1s}
  .tprow:last-child{border-bottom:0}
  .tprow:hover{background:color-mix(in srgb,var(--accent) 13%,transparent)}
  .tprow .tpe{font-size:1.1rem}
  .tprow .tpg{margin-inline-start:auto;font-size:.7rem;color:var(--muted)}
  .tphead{font-size:.72rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin:8px 4px 2px}
  .tprow.tpcur{background:color-mix(in srgb,#ff5a7a 7%,transparent)}
  .tprow.tpcur .tpx{margin-inline-start:auto;color:#ff5a7a;font-weight:800;font-size:.95rem}
  .tprow.tpcur:hover{background:color-mix(in srgb,#ff5a7a 16%,transparent)}
  .tpnewrow{display:flex;gap:8px;margin-top:10px}
  .tpnewrow input{flex:1;min-width:0;margin-bottom:0!important}
  .tpnewrow button{flex:0 0 auto;cursor:pointer;font-family:inherit;font-weight:700;padding:10px 16px;border-radius:11px;border:1px solid var(--accent);background:var(--accent);color:#fff;white-space:nowrap}
  .tpnote{font-size:.78rem;color:var(--muted);text-align:center;margin:9px 0 0}
  /* --- השלמה אוטומטית --- */
  /* (‏25.8 — position:relative הוסר: השורה עכשיו sticky, שהוא בעצמו הקשר-מיקום ל-acbox) */
  .acbox{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);width:min(520px,92%);max-height:340px;overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 14px 40px rgba(0,0,0,.35);z-index:155;display:none;padding:5px}
  .acbox.show{display:block}
  .acrow{padding:9px 12px;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .acrow .ack{flex-shrink:0;font-size:.7rem;color:var(--muted);font-weight:700;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--text) 6%,transparent)}
  /* 18.10: כותרות קבוצה, שם שנחתך בתוך השורה, והזמר באפור אחרי שם השיר */
  .achd{padding:8px 12px 4px;font-size:.7rem;font-weight:800;color:var(--muted);letter-spacing:.02em}
  .achd:not(:first-child){margin-top:4px;border-top:1px solid var(--line);padding-top:10px}
  .acrow .acl{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .acrow .acico{flex-shrink:0;display:inline-flex}
  .acsub{margin-inline-start:8px;font-weight:500;color:var(--muted);font-size:.84em}
  .acrow.actag{color:var(--accent)}
  .acrow:hover,.acrow.sel{background:color-mix(in srgb,var(--accent) 14%,transparent)}
  /* --- המלצות --- */
  .recorow{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
  .recorow .song{flex:0 0 270px;max-width:270px;margin:0;scroll-snap-align:start;flex-direction:column}
  .recorow .song .cover-wrap{width:100%;aspect-ratio:16/10}
  /* --- הסתרת שירים אישית --- */
  .song.uhidden{display:none!important}
  /* --- עמוד פלייליסט --- */
  .plhead{max-width:860px;margin:14px auto 0;padding:14px 18px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 22px rgba(0,0,0,.18)}
  .plh-top{display:flex;align-items:center;justify-content:center;gap:9px;font-size:1.3rem;font-weight:800}
  .plhead{text-align:center}
  .plh-top .plh-ic{font-size:1.5rem}
  .plh-sub{color:var(--muted);font-size:.84rem;margin:5px 0 11px;display:flex;gap:6px;flex-wrap:wrap;align-items:center;justify-content:center}
  .plh-sub a{color:var(--accent);text-decoration:none;font-weight:600}
  .plh-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
  .plh-actions button{cursor:pointer;font-family:inherit;font-weight:700;font-size:.85rem;padding:9px 15px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--bg2);color:var(--text);transition:transform .1s,border-color .12s}
  .plh-actions button:hover{border-color:var(--accent);transform:translateY(-1px)}
  .plh-actions #plhPlay{background:var(--accent);color:#fff;border-color:var(--accent)}
  /* עמוד פלייליסט נראה כמו האתר הרגיל — הסרגל וכל הכפתורים נשארים; רק תיבת הפלייליסט נוספת */
  /* --- פלייליסטים: רשימה ופירוט --- */
  .plnewrow{display:flex;gap:8px;margin:4px 0 8px}
  .plnewrow input{flex:1;min-width:0;padding:9px 13px;border-radius:11px;border:1px solid var(--line);background:var(--bg2);color:var(--text);font-family:inherit;font-size:.9rem}
  .plnewrow button{cursor:pointer;font-family:inherit;font-weight:700;padding:9px 16px;border-radius:11px;border:1px solid var(--accent);background:var(--accent);color:#fff;white-space:nowrap}
  .plpubopt{display:flex;align-items:center;gap:7px;margin:0 2px 9px;font-size:.82rem;color:var(--muted);cursor:pointer;user-select:none}
  .plpubopt input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}
  .plvisbtn{margin-inline-start:auto;margin-inline-end:8px;cursor:pointer;font-family:inherit;font-weight:700;font-size:.78rem;padding:5px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--bg2);color:var(--muted);white-space:nowrap;transition:all .12s}
  .plvisbtn.on{background:var(--accent);color:#fff;border-color:var(--accent)}
  .plminor{cursor:pointer;font-family:inherit;font-size:.82rem;font-weight:600;color:var(--accent);background:none;border:none;text-decoration:none;padding:2px}
  .plrow{cursor:pointer}
  .pldetacts{display:flex;gap:7px;flex-wrap:wrap;margin:2px 0 12px}
  #myModal .pldetacts{justify-content:center}
  .pldetacts button{cursor:pointer;font-family:inherit;font-weight:700;font-size:.8rem;padding:7px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--bg2);color:var(--text);transition:border-color .12s}
  .pldetacts button:hover{border-color:var(--accent)}
  .pldetacts #plDetPlay,.pldetacts #myPlayAll{background:var(--accent);color:#fff;border-color:var(--accent)}
  .pldetacts .admdel{border-color:var(--danger);color:var(--danger)}
  /* --- פופאפ הוספה לפלייליסט --- */
  .addplpop{position:absolute;z-index:60;width:min(280px,86vw);background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 16px 44px rgba(0,0,0,.4);padding:10px;display:none}
  .addplpop.centered{position:fixed;top:15vh;left:50%;transform:translateX(-50%);z-index:260}
  .addplpop.show{display:block}
  .addpltitle{font-weight:800;font-size:.86rem;margin-bottom:7px}
  .addplitem{display:flex;align-items:center;gap:6px;width:100%;text-align:start;cursor:pointer;font-family:inherit;font-weight:600;font-size:.86rem;padding:8px 10px;border-radius:9px;border:none;background:none;color:var(--text)}
  .addplitem:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}
  .addplitem i{margin-inline-start:auto;font-style:normal;font-size:.72rem;color:var(--muted)}
  .addplempty{color:var(--muted);font-size:.82rem;padding:4px 8px 8px}
  /* --- דיווח/בקשה + עזרת מקלדת --- */
  .repctx{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-size:.85rem;color:var(--accent);font-weight:600;margin-bottom:8px;unicode-bidi:plaintext}
  select.adminput{cursor:pointer}
  .kbdtbl{width:100%;border-collapse:collapse}
  .kbdtbl td{padding:7px 10px;border-bottom:1px solid var(--line);font-size:.9rem}
  .kbdtbl td:first-child{width:90px;text-align:center}
  .kbdtbl kbd{background:var(--bg2);border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;padding:2px 9px;font-family:inherit;font-weight:700;font-size:.82rem;white-space:nowrap}
  main{max-width:860px;margin:0 auto;padding:6px 16px 40px}
  .song{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);margin:12px 0;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.22);display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s,background-color .25s,border-color .25s;content-visibility:auto;contain-intrinsic-size:auto 300px}
  .song:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.30)}
  .cover-wrap{position:relative;width:100%;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--muted)}
  /* התמונה נגישה ללחיצה רק כשיש בכרטיס מה לנגן (18.8) */
  article.song:has(.pp,.podpp) .cover-wrap{cursor:pointer}
  .cover-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(26px) brightness(.7) saturate(1.12);transform:scale(1.18)}
  .cover{position:relative;max-width:100%;max-height:100%;width:auto;height:100%;object-fit:contain;z-index:1;transition:transform .35s ease}
  .song:hover .cover{transform:scale(1.06)}
  .song.playing-card{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 12px 36px color-mix(in srgb,var(--accent) 32%,transparent)}
  .eqbadge{display:none}
  .song.playing-card .eqbadge{display:flex;position:absolute;bottom:8px;inset-inline-end:8px;z-index:3;align-items:flex-end;gap:2px;height:15px;padding:4px 5px;box-sizing:content-box;background:rgba(0,0,0,.5);border-radius:6px;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
  .song.playing-card .eqbadge i{width:3px;height:100%;background:#fff;border-radius:2px;transform-origin:50% 100%;animation:eqbar 1s ease-in-out infinite}
  .song.playing-card .eqbadge i:nth-child(2){animation-delay:-.5s;animation-duration:1.25s}
  .song.playing-card .eqbadge i:nth-child(3){animation-delay:-.35s;animation-duration:.9s}
  @keyframes eqbar{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
  .badge{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#ff5d6c,#ff3b5c);color:#fff;font-size:.74rem;font-weight:800;padding:5px 12px;border-radius:var(--r-pill);z-index:2;box-shadow:0 4px 12px rgba(255,59,92,.5)}
  .song-body{padding:12px 16px;flex:1;min-width:0}
  .song h1,.song h2{margin:0 0 5px;font-size:1.24rem;line-height:1.3;font-weight:800;letter-spacing:0}
  .song h1 a,.song h2 a{color:inherit;text-decoration:none}
  /* 18.10: המשך כותרת בנוסח "שם | פרטים | פרטים" — שורה קטנה ואפורה מתחת לשם (paintTitles) */
  .song .songlink .tsub{display:block;margin-top:2px;font-size:.8em;font-weight:600;line-height:1.35;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .song.hero .songlink .tsub{font-size:.62em;margin-top:4px;white-space:normal}
  .song h1 a:hover,.song h2 a:hover{color:var(--accent)}
  .meta{display:flex;gap:13px;color:var(--muted);font-size:.79rem;margin-bottom:7px;flex-wrap:wrap;align-items:center;font-variant-numeric:tabular-nums}
  .meta b{color:var(--text)}
  /* בורר תצוגת-תאריך (משוב 23.8): ברירת-מחדל=הכל; heb=עברי+פרשה, greg=לועזי, par=פרשה.
     המפרידים ב-::before כדי שחלק מוסתר לא ישאיר מקף/נקודה יתומים */
  .meta .d-heb::before{content:' - '}
  .meta .d-par::before{content:' · '}
  html[data-datemode="heb"] .meta .d-greg,html[data-datemode="par"] .meta .d-greg{display:none}
  html[data-datemode="heb"] .meta .d-heb::before,html[data-datemode="par"] .meta .d-par::before{content:''}
  html[data-datemode="greg"] .meta .d-heb,html[data-datemode="greg"] .meta .d-par{display:none}
  html[data-datemode="par"] .meta .d-heb{display:none}
  /* ===== שלב 1 (15.10): כרטיס השיר — התוכן (משותף לרשימה, לדף השיר ולריבועים) =====
     זמרים בשורה משלהם, ושורת פרטים אחת: תאריך · השמעות · משך · איכות · דירוג · (קליפ).
     רק לכרטיסי שירים (.dmeta קיים רק בהם) — שורת הפרטים של פודקאסטים לא מושפעת. */
  .arts{font-size:.86rem;font-weight:600;line-height:1.45;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  .arts a.artist{background:none;padding:0;border-radius:0;color:var(--accent);font-weight:700}
  .arts a.artist:hover{text-decoration:underline;text-underline-offset:3px}
  .arts .artsep{opacity:.7}
  .meta:has(>.dmeta){flex-wrap:nowrap;gap:0;white-space:nowrap;overflow:hidden;margin:2px 0 0;font-size:.78rem;line-height:22px;min-width:0}
  .meta>.dmeta,.meta>.dmeta~*{flex:none;unicode-bidi:isolate}
  .meta>.dmeta~*::before{content:'·';margin:0 7px;color:var(--muted);opacity:.65;font-weight:700}
  .meta>.dmeta~.zero{display:none}
  .plays{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}
  .meta>.dmeta~.plays::before,.meta>.dmeta~.mrt::before,.meta>.dmeta~.cliponly::before{margin-inline-end:3px}
  .plico{display:none;flex:none;opacity:.8}
  .plays b.pc{color:var(--text);font-weight:700}
  .plays .pl-1,.plays.one .pl-n,.plays.one .pc{display:none}
  .plays.one .pl-1{display:inline}
  .mrt{display:inline-flex;align-items:center;gap:3px;color:var(--text)}
  .mrt svg{fill:var(--star);stroke:var(--star);flex:none}
  .mrt b{font-weight:700}
  .mrt .mrc{color:var(--muted);font-size:.92em}
  .meta .kbps{font-weight:700}
  .meta>.cliponly{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;font-size:inherit;color:var(--muted);font-weight:600;border-radius:0}
  /* כשאין מקום (נמדד ב-fitMeta): קודם יורדת הפרשה, ואחריה התאריך העברי; הלועזי נשאר */
  html:not([data-datemode="par"]) .meta.np .d-par,html:not([data-datemode]) .meta.nh .d-heb{display:none}
  .meta.nc .mrc,.meta.nk>.kbps,.meta.nk>.msz{display:none}
  .row2{display:flex;align-items:center;gap:10px;margin-top:6px;min-width:0;overflow:hidden}
  .row2>.tags{display:flex;flex-wrap:nowrap;gap:5px;margin:0;overflow:hidden;flex:0 1 auto;min-width:0}
  .song .tagchip{flex:none;font-size:.7rem;font-weight:600;padding:0 8px;height:21px;display:inline-flex;align-items:center;gap:4px;border:0;background:var(--bg);color:var(--muted);border-radius:6px}
  html[data-theme="dark"] .song .tagchip{background:color-mix(in srgb,var(--text) 8%,transparent)}
  .song .tagchip:hover{color:var(--accent);transform:none;background:var(--bg)}
  .song .tagchip .liwrap{width:12px;height:12px}
  .crdlink{flex:none;display:inline-flex;align-items:center;gap:3px;height:21px;border:0;background:none;padding:0 2px;font:inherit;font-size:.74rem;font-weight:700;color:var(--accent);cursor:pointer}
  .crdlink svg{width:13px;height:13px;transform:rotate(-90deg);transition:transform .2s}
  .credopen .crdlink svg{transform:rotate(90deg)}
  .crdlink:hover{text-decoration:underline;text-underline-offset:3px}
  .durchip{display:none}
  .song .hrate{display:none}
  .artist{color:var(--accent);text-decoration:none;font-weight:700;background:color-mix(in srgb,var(--accent) 14%,transparent);padding:2px 10px;border-radius:var(--r-pill)}
  /* סבב UX 10.7: קרדיטים/מילים-ולחן בשורה אחת עם ...; לחיצה פותחת את הטקסט המלא */
  .desc{color:var(--muted);font-size:.84rem;line-height:1.6;margin:0 0 9px;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer}
  .desc.open{display:block;overflow:visible}
  .actions{display:flex;align-items:center;gap:10px;margin-top:4px}
  .pp{border:0;border-radius:var(--r-pill);background:linear-gradient(135deg,var(--accent),var(--accent2),var(--accent3));color:#fff;font-size:.95rem;font-weight:700;cursor:pointer;padding:11px 22px;display:inline-flex;align-items:center;gap:7px;box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 45%,transparent);transition:transform .18s,box-shadow .18s}
  .pp:hover{transform:scale(1.09);box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 60%,transparent)}
  .pp:active{transform:scale(.95)}
  @keyframes grad{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
  .iconbtn{width:44px;height:44px;border:1px solid var(--line);background:var(--bg2);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;color:var(--muted);cursor:pointer;text-decoration:none;box-shadow:0 1px 4px rgba(0,0,0,.07);transition:color .12s,border-color .12s,box-shadow .12s,transform .12s}
  .iconbtn:hover{color:var(--accent);border-color:var(--accent);box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 20%,transparent);transform:translateY(-1px)}
  .iconbtn:active{transform:scale(.88)}
  .pp:hover svg{transform:scale(1.12)}
  .pp svg{transition:transform .15s}
  /* שלב 0 (15.10): מצב טעינה — מהלחיצה ועד שהשמע באמת מתחיל (אירוע playing / קליפ PLAYING / רדיו playing),
     עם נפילה בשגיאה או אחרי 15 שניות. כפתור הכרטיס: עיגול מסתובב + "טוען"; כפתור הנגן התחתון: עיגול. */
  .ppspin,.ppld{display:none}
  .pp.loading{cursor:progress;transform:none}
  .pp.loading>svg,.pp.loading>span{display:none}
  .pp.loading>.ppspin{display:inline-block;flex:0 0 auto;width:14px;height:14px;box-sizing:border-box;border-radius:50%;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;animation:ppspin .75s linear infinite}
  .pp.loading>span.ppld{display:inline}
  @keyframes ppspin{to{transform:rotate(360deg)}}
  .dock .dpp{position:relative}
  .dock.loading .dpp>svg{opacity:0}
  .dock.loading .dpp::after{content:"";position:absolute;inset:0;margin:auto;width:20px;height:20px;box-sizing:border-box;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:ppspin .75s linear infinite}
  @media(prefers-reduced-motion:reduce){.pp.loading>.ppspin,.dock.loading .dpp::after{animation-duration:1.6s!important;animation-iteration-count:infinite!important}}
  html.calm .pp.loading>.ppspin,html.calm .dock.loading .dpp::after{animation-duration:.75s!important;animation-iteration-count:infinite!important}
  .cliponly{font-size:.82rem;color:var(--muted);background:var(--bg2);border:1px dashed var(--line);padding:9px 15px;border-radius:var(--r-pill);font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
  /* כפתור "הורד מהקליפ" — נסתר תמיד, נחשף רק באפליקציה שיודעת להוריד (body.candl) */
  .dlclip{display:none!important}
  body.candl .dlclip{display:inline-flex!important;color:var(--accent);border-color:var(--accent)}
  body.candl .cliponly{display:none}
  .fav.on{color:#ff4d6d;border-color:#ff4d6d}
  .fav.on svg{fill:currentColor}
  /* סבב UX 10.7: תפריט "⋯" לפעולות משניות בכרטיס — התוויות נשאבות מ-title (מתעדכן ב-i18n) */
  /* ‼️ 18.8 מאוחר (משוב משתמש: "⋯ רחוק בסוף שמאל") — ה-auto שדחף אותו לקצה השורה בוטל.
     עכשיו הוא צמוד לשאר הכפתורים, וכל הקבוצה יושבת ברצף אחד בתחילת השורה. */
  .morewrap{position:relative;display:inline-flex}
  .moremenu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:6px;box-shadow:0 14px 34px rgba(0,0,0,.28);display:none;flex-direction:column;gap:2px;z-index:60;min-width:190px}
  .morewrap.open .moremenu{display:flex;animation:fadein .18s ease}
  .morewrap.open .morebtn{color:var(--accent);border-color:var(--accent)}
  /* שלב 1 (15.10): תפריט מסודר — לכל פעולה אייקון קו ושם, שורות בגובה 38px, קו לפני "הסתר" ו"דיווח" */
  .moremenu{min-width:236px;padding:6px;border-radius:14px;gap:0;box-shadow:0 2px 6px rgba(15,27,42,.06),0 16px 40px rgba(15,27,42,.16)}
  html[data-theme="dark"] .moremenu{box-shadow:0 16px 40px rgba(0,0,0,.5)}
  .morewrap.up .moremenu{top:auto;bottom:calc(100% + 6px)}
  .moremenu .iconbtn{width:100%;height:38px;border:0;background:transparent;border-radius:9px;box-shadow:none;justify-content:flex-start;gap:12px;padding:0 10px;font-size:.87rem;color:var(--text);flex:none}
  .moremenu .iconbtn svg{width:18px;height:18px;color:var(--muted);flex:none}
  .moremenu .iconbtn:hover{background:color-mix(in srgb,var(--accent) 11%,transparent);transform:none;color:var(--accent);box-shadow:none}
  .moremenu .iconbtn:hover svg{color:var(--accent)}
  .moremenu .iconbtn::after{content:attr(title);font-weight:600;white-space:nowrap}
  .moremenu .report,.moremenu .report svg{color:var(--danger,#e5484d)}
  .msep{display:block;height:1px;background:var(--line);margin:5px 8px;flex:none}
  .mrate{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px 0 6px;min-height:40px;flex:none}
  .mlbl{font-size:.87rem;font-weight:600;color:var(--text);display:inline-flex;align-items:center;gap:12px;padding-inline-start:4px}
  .mlbl svg{width:18px;height:18px;color:var(--muted)}
  .mrate .rate{margin:0;gap:6px;flex-wrap:nowrap}
  .mrate .stars{font-size:1.15rem;letter-spacing:0}
  .mrate .star{padding:4px 2px}
  .mrate .rinfo,.mrate .rhint{display:none}
  .mmh{display:none}
  /* הכרטיס חתוך (overflow:hidden + content-visibility:auto = paint-containment) —
     כשהתפריט פתוח משחררים את שניהם, ומרימים את הכרטיס מעל הבא (האחים הם stacking contexts);
     עדיין מתחת לשורת החיפוש הדביקה (149), כך שהתפריט לא מכסה אותה */
  .song:has(.morewrap.open){overflow:visible;content-visibility:visible;position:relative;z-index:6;transform:none}
  .song:has(.morewrap.open) .cover-wrap{border-radius:inherit}
  /* ‏23.10 (SEO, גרסאות ה'+ו'): פרטים על השיר בדף השיר + ראש דף-זמר */
  .songinfo{margin-top:10px;font-size:.88rem}
  .songinfo summary{cursor:pointer;opacity:.7;list-style:none;display:inline-block}
  .songinfo summary::-webkit-details-marker{display:none}
  .songinfo summary:hover{opacity:1}
  .songinfo p{margin:8px 0 0;line-height:1.7;opacity:.9}
  .songinfo a{color:inherit;text-decoration:underline}
  .morelink{margin-top:8px;font-size:.88rem}
  .morelink a{text-decoration:none;opacity:.8}
  .morelink a:hover{opacity:1;text-decoration:underline}
  .artisthead{max-width:880px;margin:14px auto 4px;padding:0 16px;text-align:start}
  .artisthead h1,.artisthead h2{margin:0;font-size:1.35rem;line-height:1.3}
  .artisthead p{margin:4px 0 0;opacity:.7;font-size:.92rem}
  body.podmode .artisthead,body.plmode .artisthead{display:none}
  /* סבב UX 10.7: "0% · 0 מדרגים" = רעש — מוסתר עד הדירוג הראשון */
  .rinfo.zero{display:none}
  /* ===== 🎙️ פודקאסטים (דמו) — מצב מבודד: פיד-פרקים באותה שפת-כרטיסים, ניזון מטבלאות pod_* בלבד ===== */
  body.podmode #list,body.podmode #loader,body.podmode #sentinel{display:none}
  #podlist{display:none;max-width:860px;margin:0 auto;padding:6px 16px 40px}
  body.podmode #podlist{display:block}
  /* אריח-עטיפה אחיד לפודקאסטים (בקשת משתמש 13.7 "שיהיה לכולם סימטרי"): ריבוע מלא לכולם —
     עטיפות-פודקאסט ריבועיות ימלאו אותו בדיוק, ותמונת-יוטיוב 16:9 מוצגת שלמה (contain) על הרקע
     המטושטש .cover-bg — החיתוך אכל לה את הצדדים (בקשת משתמש 27.7). שירים לא מושפעים. */
  body.podmode .song .cover-wrap{aspect-ratio:1/1}
  body.podmode .song .cover{width:100%;height:100%;object-fit:contain}
  @media(min-width:600px){body.podmode .song .cover-wrap{width:200px;aspect-ratio:1/1}}
  /* רצועת תוכניות — סינון "לפי תוכנית" בולט, נגלל אופקית */
  .podshows{display:flex;gap:7px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
  .podshowchip{flex:none;display:inline-flex;align-items:center;gap:7px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 12px;cursor:pointer;font-family:inherit;font-size:.82rem;font-weight:700;color:var(--text);transition:border-color .12s,color .12s}
  .podshowchip img{width:26px;height:26px;border-radius:50%;object-fit:cover;background:var(--bg2);flex:none}
  .podshowchip:hover{border-color:var(--accent);color:var(--accent)}
  .podshowchip.on{background:linear-gradient(135deg,var(--accent),var(--accent2),var(--accent3));border-color:transparent;color:#fff}
  .podbar{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin:10px 0 4px}
  .podbar input{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:var(--r-md);padding:8px 14px;font-size:.85rem;font-family:inherit;outline:none;width:min(230px,60vw)}
  .podbar input:focus{border-color:var(--accent)}
  .podpp{border:0;border-radius:var(--r-pill);background:linear-gradient(135deg,var(--accent),var(--accent2),var(--accent3));color:#fff;font-size:.95rem;font-weight:700;cursor:pointer;padding:11px 22px;display:inline-flex;align-items:center;gap:7px;box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 45%,transparent);transition:transform .18s,box-shadow .18s;font-family:inherit}
  #podslist .artistrow img{width:34px;height:34px;border-radius:8px;object-fit:cover;vertical-align:middle;margin-inline-end:9px;background:var(--card)}
  .podpp:hover{transform:scale(1.07)}
  .podshowtag{color:var(--accent);text-decoration:none;font-weight:700;background:color-mix(in srgb,var(--accent) 14%,transparent);padding:2px 10px;border-radius:var(--r-pill);border:0;cursor:pointer;font-family:inherit;font-size:inherit}
  .podshowtag:hover{background:color-mix(in srgb,var(--accent) 24%,transparent)}
  .podmore{display:block;margin:18px auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--text);padding:10px 26px;font-weight:700;cursor:pointer;font-family:inherit}
  .podmorelbl{margin:20px 4px 4px;font-weight:800;color:var(--muted);font-size:.98rem}
  .podmore:hover{border-color:var(--accent);color:var(--accent)}
  .podpick{position:fixed;top:120px;left:50%;transform:translateX(-50%);background:var(--card);border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:0 16px 44px rgba(0,0,0,.42);z-index:130;display:none;flex-direction:column;gap:4px;min-width:260px;max-width:92vw;max-height:60vh;overflow:auto;scrollbar-width:thin}
  .podpick.show{display:flex;animation:fadein .18s ease}
  .podpick button{background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:.9rem;font-family:inherit;cursor:pointer;text-align:start;font-weight:600;display:flex;align-items:center;gap:9px}
  .podpick button:hover{border-color:var(--accent)}
  .podpick img{width:34px;height:34px;border-radius:8px;object-fit:cover;flex:none;background:var(--bg2)}
  .menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:6px;box-shadow:0 14px 34px rgba(0,0,0,.28);display:none;flex-direction:column;gap:2px;z-index:60;min-width:200px}
  .menu.open{display:flex;animation:fadein .18s ease}
  .menu button{all:unset;cursor:pointer;padding:11px 14px;border-radius:10px;font-size:.92rem;font-weight:600;color:var(--text);display:flex;gap:9px;align-items:center}
  .menu button:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
  .menu button.on{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);font-weight:700}
  .menu-wide{min-width:242px;max-height:72vh;overflow-y:auto}
  .menu-sec{font-size:.72rem;font-weight:800;color:var(--muted);padding:9px 12px 3px;border-top:1px solid var(--line);margin-top:4px}
  /* 📅 חלונית סינון תאריך */
  .datepop{min-width:266px}
  .dpcal{display:flex;gap:6px;margin-bottom:4px}
  .dpcalbtn{flex:1;background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:9px;font-family:inherit;font-weight:700;font-size:.86rem;cursor:pointer}
  .dpcalbtn.on{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}
  .dpview{display:flex;flex-direction:column;gap:7px;margin-top:4px}
  .dprow{display:flex;align-items:center;gap:8px}
  .dprow label{flex:0 0 42px;font-size:.82rem;color:var(--muted);font-weight:700}
  .dprow select,.dprow input{flex:1;min-width:0;background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-family:inherit;outline:none}
  .dpor{text-align:center;font-size:.76rem;color:var(--muted);margin:2px 0}
  .dpacts{display:flex;gap:6px;margin-top:9px}
  .dpacts button{flex:1;border:0;border-radius:10px;padding:9px;font-weight:700;font-family:inherit;cursor:pointer}
  #dpApply{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}
  #dpClear{background:var(--bg2);color:var(--text);border:1px solid var(--line)}
  .stat{font-size:.84rem;color:var(--muted);font-weight:600}
  /* === שלב 0 (15.10): "המשך מאיפה שעצרת" יושב באזור הנגן — פס תחתון באותו מקום ובאותו סגנון של הנגן,
     רק כשהנגן סגור. ‏#resumepop עדיין מנוהל ע"י __POP (on = מוצג) ומוסתר תמיד כשהנגן פתוח. */
  .resumeslot{position:fixed;left:0;right:0;bottom:0;z-index:21;display:none;justify-content:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg2) 97%,transparent);backdrop-filter:blur(14px);box-shadow:0 -6px 24px rgba(0,0,0,.12);animation:slotup .3s ease both}
  .resumeslot.on{display:flex}
  body.playing .resumeslot{display:none}
  body:not(.playing):has(.resumeslot.on){padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  @keyframes slotup{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .rsin{display:flex;align-items:center;gap:12px;width:100%;max-width:760px}
  .resumebar{all:unset;box-sizing:border-box;flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:12px;cursor:pointer;padding:2px 0;border-radius:12px;color:var(--text);font-family:inherit}
  .resumebar:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
  .rscover{flex:0 0 auto;width:48px;height:48px;border-radius:10px;object-fit:cover;background:var(--card);box-shadow:0 2px 8px rgba(0,0,0,.18)}
  .rscover:not([src]),.rscover[src=""]{visibility:hidden}
  .rstxt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px;line-height:1.25;text-align:start}
  .rslbl{font-size:.74rem;font-weight:700;color:var(--accent)}
  .rstitle{font-size:.93rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;text-align:start}
  .rstime{flex:0 0 auto;font-size:.78rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:3px 10px;direction:ltr}
  .rsplay{flex:0 0 auto;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 40%,transparent);transition:transform .15s}
  .resumebar:hover .rsplay{transform:scale(1.05)}
  .rsin .resumex{flex:0 0 auto}
  /* "שירים חדשים מאז ביקורך" — באנר מרחף תחתון עם X, באותו סגנון של "המשך האזנה" */
  .newpop{display:flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 6px 5px 8px;box-shadow:0 12px 32px rgba(0,0,0,.32);animation:fadein .3s ease;max-width:88vw}
  .newpill{cursor:pointer;border:0;background:#ff4d6d;color:#fff;font-weight:700;font-size:.82rem;font-family:inherit;padding:8px 14px;border-radius:var(--r-pill);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:74vw}
  .updatebar{border:0;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:700;font-size:.9rem;padding:11px 18px;border-radius:var(--r-pill);box-shadow:0 8px 28px rgba(0,0,0,.35);display:inline-flex;align-items:center;gap:9px;animation:fadein .3s ease}
  .updatebar:hover{transform:scale(1.04)}
  .updatebar svg{width:18px;height:18px;flex:none}
  /* שלב 1 (15.10): "חדש מאז ביקורך" — נקודה קטנה ליד השם, במקום טבעת אדומה ואימוג'י */
  .song.fresh .song-body>h1::after,.song.fresh .song-body>h2::after{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#ff4d6d;margin-inline-start:7px;vertical-align:middle}
  .loader{text-align:center;padding:22px 12px;color:var(--muted);font-size:.95rem}
  /* שלד טעינה (skeleton) — מוצג בזמן שינוי סינון/חיפוש */
  .song.skel{pointer-events:none}
  .song.skel:hover{transform:none;box-shadow:0 6px 22px rgba(0,0,0,.22)}
  .skel-cover{width:100%;aspect-ratio:16/10;background:var(--bg2)}
  .skel-line{height:14px;border-radius:6px;background:var(--bg2);margin:10px 0}
  .skel-title{width:62%;height:20px}
  .skel-meta{width:42%}
  .skel-actions{display:flex;gap:10px;margin-top:16px}
  .skel-pill{width:96px;height:42px;border-radius:var(--r-pill);background:var(--bg2)}
  .skel-dot{width:44px;height:44px;border-radius:50%;background:var(--bg2)}
  /* ▦ תצוגת-ריבועים (סבב-הבהרות 15.7, סופי: 2 מצבים בלבד — רגיל ⇄ ריבועים, לפי צילום-הרפרנס של
     המשתמש: תמונה רחבה למעלה, שם מתחת, כמה אריחים בשורה. מצב-השורות בוטל לבקשתו.)
     העטיפה נשארת contain+רקע-מטושטש כמו בכרטיס הרגיל — עטיפות מרובעות לא נחתכות.
     scoped ל-#list; ילד שאינו כרטיס (recorow וכו') פרוש על כל השורה. */
  /* ‼️ 18.8 (משוב גולש "מעלה ומוריד") — main מוגבל ל-860px, וזה נכון לרשימה בטור אחד אבל
     אבסורדי לרשת: על מסך רחב נכנסו 4 ריבועים ונשארו שוליים ריקים ענקיים משני הצדדים.
     בתצוגת-ריבועים בלבד מרחיבים ל-1400px → 6 ריבועים במסך 1440, בלי לגעת בתצוגה הרגילה. */
  body.gridview main{max-width:1400px}
  body.gridview #list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
  /* ‼️ 20.8 — עמוד-שיר-בודד כבר לא מבטל את הריבועים; במקום זה כרטיס-ההירו (היחיד עם h1)
     נפרש על כל רוחב הרשת ונשאר בפריסת-הירו, ורק שאר השירים מוצגים כאריחים */
  body.gridview #list article.song:has(h1){grid-column:1/-1}
  body.gridview #list>:not(article.song){grid-column:1/-1}
  /* שלב 1 (15.10): האריח באותו סדר מידע כמו הרשימה — שם (בלי הזמר), זמר בשורה משלו, שורת פרטים אחת
     (תאריך · השמעות · משך; בלי איכות), ושורת פעולות שקטה שצמודה לתחתית. כרטיס-הגיבור (דף שיר) לא מושפע.
     בלי overflow:hidden על הכרטיס — כדי שתפריט "⋯" ייפתח (הכלל :has הקיים עושה את השאר) */
  body.gridview #list>.song:not(.hero){flex-direction:column;padding:0 0 10px;margin:0}
  body.gridview #list>.song:not(.hero) .cover-wrap{width:100%;aspect-ratio:16/10;flex-shrink:0;border-radius:var(--r-xl) var(--r-xl) 0 0}
  body.gridview #list>.song:not(.hero) .song-body{padding:8px 10px 0;gap:3px;display:flex;flex-direction:column;flex:none}
  body.gridview #list>.song:not(.hero) .song-body h2{font-size:.9rem;line-height:1.35;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em}
  body.gridview #list>.song:not(.hero) .arts{font-size:.78rem;font-weight:700}
  body.gridview #list>.song:not(.hero) .meta{font-size:.72rem;line-height:20px;margin:0}
  body.gridview #list>.song:not(.hero) .meta>.dmeta~*::before{margin:0 5px}
  body.gridview #list>.song:not(.hero) .meta>.dmeta~.plays::before,body.gridview #list>.song:not(.hero) .meta>.dmeta~.mrt::before{margin-inline-end:1px}
  body.gridview #list>.song:not(.hero) :is(.meta .kbps,.meta .msz,.meta>.cliponly,.row2,.hrate,.durchip),body.gridview #list>.song:not(.hero)>.desc{display:none}
  html:not([data-datemode]) body.gridview #list>.song .meta .d-heb,html:not([data-datemode]) body.gridview #list>.song .meta .d-par{display:none}
  body.gridview #list>.song:not(.hero)>.side{margin-top:auto;padding:8px 10px 0;display:flex}
  body.gridview #list>.song:not(.hero) .actions{margin:0;padding:0;gap:4px;flex-wrap:nowrap;flex:1;min-width:0;align-items:center}
  /* ‼️ 16.8: כפתור ההורדה נשאר באריח; רק "הבא בתור" מוסתרת (היא קיימת גם בנגן) */
  body.gridview #list .actions .qadd{display:none}
  body.gridview #list>.song:not(.hero) .actions>.iconbtn,body.gridview #list>.song:not(.hero) .actions .morebtn{width:34px;height:34px;flex:none;border:0;background:transparent;box-shadow:none;color:var(--muted)}
  body.gridview #list>.song:not(.hero) .actions>.iconbtn:hover,body.gridview #list>.song:not(.hero) .actions .morebtn:hover{background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--accent);transform:none}
  body.gridview #list>.song:not(.hero) .actions .morewrap{margin-inline-start:auto}
  body.gridview #list>.song:not(.hero) .pp{height:36px;padding:0 14px;font-size:.88rem;flex-shrink:1;min-width:49px;overflow:hidden;box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 30%,transparent)}
  body.gridview #list>.song:not(.hero) .pp:hover{transform:none;filter:brightness(1.07)}
  body.gridview #list>.song:not(.hero) .pp svg{width:14px;height:14px}
  body.gridview #list>.song:not(.hero) .badge{top:8px;right:8px;left:auto;font-size:.66rem;line-height:1;padding:4px 8px;border-radius:6px;box-shadow:none}
  body.gridview #list>.song:not(.hero) .badge:not(.pinbadge){background:#ff3b5c}
  body.gridview #list>.song:not(.hero) .badge.pinbadge{right:auto;left:8px}
  /* 🎬 צפייה בקליפ — מ-18.8 הכפתור גלוי בשתי התצוגות (ה-summary מוסתר בתוך העטיפה). לחיצה נוספת סוגרת. */
  .clipwatch{display:inline-flex}
  /* 18.10: משבצת ריקה בשורת הפעולות (שומרת על עמודות אחידות בין הכרטיסים) — תופסת מקום, לא נראית ולא לחיצה.
     מתבטלת כשאין עמודות להשוות: אריחים, דף שיר, מצב רגוע/בלי-קליפים (שמסתירים את כפתור הקליפ), ובאפליקציה
     כש"הורד מהקליפ" תופס את המשבצת */
  .actions .actgap{visibility:hidden;pointer-events:none;box-shadow:none!important;background:none!important}
  body.gridview .actions .actgap,#list>.song.hero .actions .actgap,html.calm .actions .gclip,body.noclips .actions .gclip,body.candl .actions .dlclip+.gdl{display:none!important}
  @media(max-width:560px){body.gridview #list{grid-template-columns:repeat(2,1fr);gap:9px}
  /* באריח צר: כל הפעולות בשורה אחת בגודל אצבע, "נגן" כעיגול, וההשמעות כמשולש קטן + מספר */
  body.gridview #list>.song:not(.hero)>.side{padding:6px 6px 0}
  body.gridview #list>.song:not(.hero) .actions{gap:0;justify-content:space-between}
  body.gridview #list>.song:not(.hero) .pp{width:40px;height:40px;min-width:0;padding:0;justify-content:center;border-radius:50%;flex:none}
  body.gridview #list>.song:not(.hero) .pp>span{display:none}
  body.gridview #list>.song:not(.hero) .actions>.iconbtn,body.gridview #list>.song:not(.hero) .actions .morebtn{width:36px;height:40px}
  body.gridview #list>.song:not(.hero) .actions .morewrap{margin-inline-start:0}
  /* 18.10: שיר עם MP3 וגם קליפ = 5 כפתורים באריח של ~150px — הכפתורים מתכווצים (עד 24px) רק כשאין מקום */
  body.gridview #list>.song:not(.hero) .actions>.iconbtn,body.gridview #list>.song:not(.hero) .actions .morewrap{flex:0 1 36px;min-width:24px}
  body.gridview #list>.song:not(.hero) .actions .morebtn{width:100%}
  body.gridview #list>.song:not(.hero) .plays .plw{display:none}
  body.gridview #list>.song:not(.hero) .plays .plico{display:inline-block}
  body.gridview #list>.song:not(.hero) .plays.one .pc{display:inline}}
  /* ‼️ 18.8 מאוחר (בקשת משתמש: "גם בפודקאסטים") — כל מצב-הריבועים נכתב על #list, ולכן במצב
     פודקאסטים המתג ▦ פשוט לא עשה כלום. אלה אותם כללים, מכוונים אל .podfeed (עוטף-הפרקים
     שבתוך #podlist). נכתב כבלוק נפרד ולא כהרחבת-הסלקטורים הקיימים — כדי שיהיה הפיך בבת אחת,
     ובלי לגעת בספציפיות של כללי-השירים (ראו הלקח על :has ב-clipbig).
     ‏(0,3,1) גובר על body.podmode .song .cover-wrap שהוא (0,3,0) — כולל זה שבתוך המדיה. */
  body.gridview #podlist{max-width:1400px}
  body.gridview .podfeed{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
  body.gridview .podfeed>:not(article.song){grid-column:1/-1}
  body.gridview .podfeed .song{flex-direction:column;padding:0 0 10px;margin:0}
  body.gridview .podfeed .cover-wrap{width:100%;aspect-ratio:1/1;flex-shrink:0;border-radius:var(--r-xl) var(--r-xl) 0 0}
  body.gridview .podfeed .song-body{padding:8px 10px 0;gap:4px;display:flex;flex-direction:column}
  body.gridview .podfeed .song-body h2{font-size:.86rem;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
  body.gridview .podfeed .meta{font-size:.72rem;margin:0;gap:4px 6px;align-content:flex-start}
  body.gridview .podfeed .meta>span:last-child{flex-basis:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  body.gridview .podfeed .desc{display:none}
  body.gridview .podfeed .actions{margin:auto 0 0;padding-top:4px;gap:5px;flex-wrap:nowrap}
  body.gridview .podfeed .actions .qadd{display:none}
  body.gridview .podfeed .actions>.iconbtn,body.gridview .podfeed .actions .morebtn{width:34px;height:34px;font-size:.95rem;flex-shrink:0}
  body.gridview .podfeed .podpp{padding:9px 14px;font-size:.88rem;flex-shrink:1;min-width:49px;overflow:hidden;white-space:nowrap}
  body.gridview .podfeed article.song.clipbig{grid-column:span 2}
  @media(max-width:560px){body.gridview .podfeed{grid-template-columns:repeat(2,1fr);gap:9px}
  body.gridview .podfeed .actions{gap:5px;flex-wrap:wrap;justify-content:center}
  body.gridview .podfeed .actions>.iconbtn,body.gridview .podfeed .actions .morebtn{width:40px;height:40px;font-size:1rem}
  body.gridview .podfeed .podpp{padding:11px 13px;font-size:.82rem}
  body.gridview .podfeed article.song.clipbig{grid-column:1/-1}}
  /* 🎁 טופס "הצע שיר" + ❤ כפתור פלייליסט-מהמועדפים */
  .sginp{background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-family:inherit;font-size:.88rem;outline:none;width:100%;box-sizing:border-box;resize:vertical}
  .sginp:focus{border-color:var(--accent)}
  .plfromfav{width:100%;margin:0 0 9px;padding:10px;border-radius:11px;border:1px dashed var(--line);background:var(--bg2);color:var(--text);font-family:inherit;font-weight:700;font-size:.88rem;cursor:pointer;transition:border-color .12s,color .12s}
  .plfromfav:hover{border-color:var(--accent);color:var(--accent)}
  .skel-cover,.skel-line,.skel-pill,.skel-dot{position:relative;overflow:hidden}
  .skel-cover::after,.skel-line::after,.skel-pill::after,.skel-dot::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text) 9%,transparent),transparent);animation:shimmer 1.4s infinite}
  @keyframes shimmer{100%{transform:translateX(100%)}}
  /* משוב לחיצה מוחשי (press feedback) */
  .iconbtn:active,.dctl:active,.dclose:active,.popx:active{transform:scale(.88)}
  .chip:active{transform:scale(.96)}
  .empty{text-align:center;color:var(--muted);padding:40px 16px}
  .endcap{text-align:center;color:var(--muted);font-size:.82rem;padding:20px 0 8px;letter-spacing:.5px}
  .retrybtn{margin-top:14px;cursor:pointer;font-family:inherit;font-weight:700;font-size:.9rem;padding:10px 22px;border-radius:var(--r-pill);border:1px solid var(--accent);background:var(--accent);color:#fff;transition:transform .12s}
  .retrybtn:active{transform:scale(.95)}
  .recolearn{text-align:center;color:var(--muted);padding:46px 20px;max-width:440px;margin:0 auto}
  .recolearn .rlemoji{font-size:3rem;margin-bottom:10px;line-height:1}
  .recolearn h3{margin:0 0 8px;color:var(--text);font-size:1.15rem}
  .recolearn p{margin:0;line-height:1.65;font-size:.95rem}
  #syncBody{display:flex;flex-direction:column;gap:13px}
  .syncintro{color:var(--muted);font-size:.92rem;line-height:1.6;margin:0}
  .syncintro b{color:var(--text)}
  .synccodebox{background:var(--bg2);border:1px dashed var(--accent);border-radius:var(--r-lg);padding:16px;text-align:center}
  .synccode{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:1.7rem;font-weight:800;letter-spacing:3px;color:var(--accent);direction:ltr;user-select:all}
  .synclbl{display:block;color:var(--muted);font-size:.8rem;margin-bottom:6px}
  .syncbtn{all:unset;cursor:pointer;text-align:center;box-sizing:border-box;background:var(--accent);color:#fff;font-weight:700;font-family:inherit;font-size:.95rem;padding:12px 14px;border-radius:var(--r-md);transition:filter .12s}
  .syncbtn:hover{filter:brightness(1.08)}
  .syncbtn.alt{background:var(--bg2);color:var(--text);border:1px solid var(--line)}
  .syncbtn.danger{background:transparent;color:var(--muted);border:1px solid var(--line);font-weight:600;font-size:.85rem;padding:8px}
  .syncor{text-align:center;color:var(--muted);font-size:.82rem;position:relative}
  .syncin{width:100%;box-sizing:border-box;padding:11px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg2);color:var(--text);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:1.05rem;letter-spacing:2px;text-align:center;text-transform:uppercase;outline:none;direction:ltr}
  .syncin:focus{border-color:var(--accent)}
  .syncnote{color:var(--muted);font-size:.8rem;line-height:1.5;margin:0}
  .syncok{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--accent)}
  .syncrow2{display:flex;gap:8px}
  .syncrow2 .syncbtn{flex:1;min-width:0}
  .modal{position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:200;display:none;align-items:flex-start;justify-content:center;padding:6vh 16px}
  #radioModal{align-items:center;padding:16px}
  .modal.show{display:flex;animation:fadein .2s ease}
  /* 20.10 (בדיקת תפריטים): הדף שמאחורי חלון פתוח לא נגלל (נמדד: 1500px גלילה מאחורי חלון הרדיו) */
  html:has(.modal.show){overflow:hidden}
  .modalbox{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);width:min(560px,100%);max-height:84vh;display:flex;flex-direction:column;padding:18px;box-shadow:0 24px 60px rgba(0,0,0,.4)}
  .modalhead{display:flex;justify-content:space-between;align-items:center;font-size:1.2rem;margin-bottom:12px}
  .modalhead button{all:unset;cursor:pointer;font-size:1.2rem;color:var(--muted);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}
  .modalhead button:hover{background:var(--bg2);color:var(--accent)}
  #artistq,#songq,#podsq{width:100%;box-sizing:border-box;padding:11px 15px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg2);color:var(--text);font-size:.95rem;font-family:inherit;outline:none;margin-bottom:12px}
  #artistq:focus,#songq:focus,#podsq:focus{border-color:var(--accent)}
  .artistsortbar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}
  .pltabs{display:flex;gap:6px;margin:2px 0 12px}
  .pltab{flex:1;background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:11px;padding:10px;font-family:inherit;font-weight:700;font-size:.9rem;cursor:pointer;transition:background .12s,color .12s}
  .pltab.on{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}
  .repchips{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 8px}
  .repchip{background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:var(--r-pill);padding:7px 13px;font-family:inherit;font-size:.84rem;font-weight:600;cursor:pointer;transition:transform .1s,border-color .12s}
  .repchip:hover{border-color:var(--accent);transform:translateY(-1px)}
  .repchip.on{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}
  .iconbtn.report:hover{color:#ff5a7a;border-color:#ff5a7a}
  .asortbtn,.ssortbtn,.psortbtn{flex:1;min-width:110px;cursor:pointer;border:1px solid var(--line);background:var(--bg2);color:var(--muted);font-weight:700;font-size:.82rem;font-family:inherit;padding:9px 10px;border-radius:10px;transition:all .12s}
  .asortbtn.on,.ssortbtn.on,.psortbtn.on{background:var(--accent);color:#fff;border-color:var(--accent)}
  .artistlist{overflow-y:auto;display:flex;flex-direction:column;gap:4px}
  .artistrow{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:var(--r-md);cursor:pointer;font-weight:600;transition:background .12s}
  .artistrow:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
  .artistrow .cnt{font-size:.8rem;color:var(--muted);background:var(--bg2);padding:3px 10px;border-radius:var(--r-pill)}
  /* 20.10 (בקשת משתמש: "לא רואים הכל"): הרשימה נגללת בתוך החלון — קודם .pllist בלי גלילה, 14 מתוך 21 נראו */
  #plModal .pltabview{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
  #plModal .pllist{flex:1 1 auto;min-height:120px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:8px;padding:2px}
  .pltab .pln{font-weight:600;opacity:.8;margin-inline-start:5px;font-size:.82rem}
  .plq{width:100%;box-sizing:border-box;padding:10px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg2);color:var(--text);font-size:.92rem;font-family:inherit;outline:none;margin:0 0 10px;flex:none}
  .plq:focus{border-color:var(--accent)}
  .plvis{display:flex;align-items:center;gap:6px;flex:none}
  .plvislbl{font-size:.95rem;line-height:1}
  .plswitch{position:relative;width:42px;height:23px;border-radius:var(--r-pill);background:var(--line);border:0;cursor:pointer;flex:none;padding:0;transition:background .15s}
  .plswitch::after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:inset-inline-start .15s}
  .plswitch.on{background:linear-gradient(135deg,var(--accent),var(--accent2))}
  .plswitch.on::after{inset-inline-start:21px}
  .chip-live{background:linear-gradient(120deg,#ff3b5c,#ff7849,#ffd166,#ff3b5c,#c81d4e);background-size:300% 300%;color:#fff;border-color:transparent;font-weight:800;box-shadow:0 4px 14px rgba(255,59,92,.45);animation:livegrad 4s ease infinite,livepulse 2s ease infinite}
  .chip-live:hover{color:#fff;transform:scale(1.07)}
  @keyframes livegrad{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
  @keyframes livepulse{0%,100%{box-shadow:0 4px 14px rgba(255,59,92,.4)}50%{box-shadow:0 4px 24px rgba(255,59,92,.75)}}
  .radiocard img{background:#fff;object-fit:cover}
  .radiobanner{margin:0 0 14px;height:66px;border-radius:16px;background:linear-gradient(120deg,#ff3b5c,#ff7849,#9b6cff,#ff3b5c);background-size:300% 300%;display:flex;align-items:center;justify-content:center;gap:16px;color:#fff;font-weight:800;font-size:1.05rem;box-shadow:0 12px 30px rgba(255,59,92,.4);animation:livegrad 5s ease infinite,rbfloat 4.5s ease-in-out infinite}
  @keyframes rbfloat{0%,100%{transform:perspective(600px) rotateX(7deg) rotateY(-7deg) translateY(0)}50%{transform:perspective(600px) rotateX(-5deg) rotateY(7deg) translateY(-7px)}}
  .rb-text{text-shadow:0 2px 6px rgba(0,0,0,.32);letter-spacing:.4px}
  .rb-waves{display:inline-flex;align-items:flex-end;gap:3px;height:26px}
  .rb-waves i{width:4px;height:8px;background:#fff;border-radius:2px;animation:rbw 1s ease-in-out infinite}
  .rb-waves i:nth-child(2){animation-delay:.15s}.rb-waves i:nth-child(3){animation-delay:.3s}.rb-waves i:nth-child(4){animation-delay:.45s}.rb-waves i:nth-child(5){animation-delay:.6s}
  @keyframes rbw{0%,100%{height:7px}50%{height:24px}}
  .radionote{font-size:.82rem;color:var(--muted);margin:0 0 12px;line-height:1.5}
  .radiolist{overflow-y:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .radiocard{display:flex;align-items:center;gap:11px;padding:10px;border-radius:var(--r-lg);cursor:pointer;border:1px solid var(--line);background:var(--bg2);transition:transform .12s,border-color .12s}
  .radiocard:hover{transform:translateY(-2px);border-color:var(--accent)}
  .radiocard img{width:46px;height:46px;border-radius:var(--r-md);flex-shrink:0}
  .radiocard .rn{font-weight:700;font-size:.88rem;line-height:1.2}
  .radiocard .rlive{font-size:.72rem;color:#ff4d6d;font-weight:700;margin-top:2px}
  @media(max-width:520px){.radiolist{grid-template-columns:1fr}}
  body.radio .dock-seek{display:none}
  body.radio #dspeed,body.radio #ddl,body.radio #dback,body.radio #dfwd{display:none}
  body.radio #dshuffle,body.radio #drepone,body.radio #drepall{display:none}
  .radiocard{position:relative}
  /* 13.10 v2 — רדיו חי: אריחים, "משודר עכשיו", רשת ערוצים, שיר מתנגן */
  #radioModal .modalbox.radiobox{width:min(880px,100%);max-height:88vh}
  #radioModal .modalbox.radiobox.rvch{height:88vh}
  .radiobox .radionote{margin:0 0 12px}
  .rvch .radionote,.rvch .rhero{display:none!important}
  #radiolist.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;align-content:start;padding:6px 4px 10px}
  .rvch #radiolist.rgrid{grid-template-columns:repeat(auto-fill,minmax(136px,1fr))}
  @media(max-width:520px){#radiolist.rgrid,.rvch #radiolist.rgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
  .rtile{position:relative;cursor:pointer;border-radius:18px;padding:8px 8px 10px;background:var(--bg2);border:1px solid var(--line);transition:transform .16s,border-color .16s,box-shadow .16s;min-width:0;outline:none}
  .rtile:hover,.rtile:focus-visible{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 60%,var(--line));box-shadow:var(--sh1)}
  .rtart{position:relative;aspect-ratio:1/1;border-radius:13px;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 0 rgba(0,0,0,.04) inset}
  .rtart img{width:100%;height:100%;object-fit:cover;display:block}
  .rtart.fav img{width:58%;height:58%;object-fit:contain}
  .rtart.app img,.rhimg.app img,.rvlogo.app img{object-fit:contain}
  .rtart.gen{background:linear-gradient(140deg,hsl(var(--h),66%,52%),hsl(calc(var(--h) + 26),62%,24%));padding:12px;text-align:center}
  .rvch .rtlive{display:none}
  .rvch .rtile.cur .rtlive{display:flex}
  .rtart.gen::after{content:"♫";position:absolute;bottom:-18px;inset-inline-end:-6px;font-size:5.4rem;line-height:1;color:rgba(255,255,255,.12);pointer-events:none}
  .rtgen{position:relative;z-index:1;color:#fff;font-weight:800;font-size:1.05rem;line-height:1.22;text-shadow:0 2px 10px rgba(0,0,0,.35);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
  .rtgen small{display:block;font-size:.64rem;font-weight:700;opacity:.82;margin-top:7px;letter-spacing:.2px}
  .rtlive{position:absolute;top:8px;inset-inline-start:8px;z-index:2;background:#ff3b5c;color:#fff;font-size:.6rem;font-weight:800;letter-spacing:.6px;padding:3px 7px 3px 8px;border-radius:999px;display:flex;align-items:center;gap:4px;box-shadow:0 2px 8px rgba(255,59,92,.45);direction:ltr}
  .rtlive::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;animation:rtpulse 1.4s ease-in-out infinite}
  @keyframes rtpulse{0%,100%{opacity:1}50%{opacity:.25}}
  /* שלב 4 (15.10): על האריח המתנגן — אקולייזר קטן בפינה (גלולה בצבע האתר) במקום שכבה כהה על כל הלוגו */
  .rteq{position:absolute;bottom:8px;inset-inline-start:8px;z-index:2;height:26px;padding:0 8px;box-sizing:border-box;border-radius:999px;background:var(--accent);display:none;align-items:center;justify-content:center;gap:3px;box-shadow:0 4px 12px rgba(0,0,0,.25)}
  .rteq i{width:3px;height:6px;background:#fff;border-radius:2px;animation:rteqb .9s ease-in-out infinite}
  .rteq i:nth-child(2){animation-delay:.22s}.rteq i:nth-child(3){animation-delay:.44s}.rteq i:nth-child(4){animation-delay:.11s}
  @keyframes rteqb{0%,100%{height:5px}50%{height:14px}}
  .rtile.cur{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent),0 8px 22px color-mix(in srgb,var(--accent) 22%,transparent)}
  .rtile.cur .rteq{display:flex}
  .rtile.cur.paused .rteq i{animation-play-state:paused;opacity:.6}
  .rtile.cur .rtname{color:var(--accent)}
  .rtplay{position:absolute;bottom:8px;inset-inline-end:8px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:var(--accent);color:var(--bg);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.35);opacity:0;transform:translateY(6px) scale(.92);transition:opacity .16s,transform .16s}
  .rtplay svg{width:18px;height:18px}
  .rtile:hover .rtplay,.rtplay:focus-visible,.rtile.cur .rtplay{opacity:1;transform:none}
  @media(hover:none){.rtplay{opacity:1;transform:none}}
  .rtile .rlink{top:8px;left:auto;inset-inline-end:8px;z-index:3;opacity:0;transition:opacity .16s}
  .rtile:hover .rlink{opacity:.9}
  @media(hover:none){.rtile .rlink{display:none}}
  .rtname{font-weight:800;font-size:.9rem;margin-top:9px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 2px}
  .rtmeta{margin-top:4px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:0 2px}
  .rtcnt{font-size:.7rem;font-weight:800;color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,transparent);padding:2px 9px;border-radius:999px}
  .rtsub{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .rtnow{font-size:.73rem;color:var(--muted);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1.15em;padding:0 2px;unicode-bidi:plaintext;text-align:start}
  /* "משודר עכשיו" / "האזנת לאחרונה" */
  /* שלב 4 (15.10): כרטיס גדול — לוגו 88, שם, השיר המשודר, ותחנה קודמת / נגן / הבאה (או "המשך להאזין") */
  .rhero{display:flex;align-items:center;gap:18px;padding:16px 18px;border-radius:20px;margin:0 0 14px;background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 18%,var(--bg2)),color-mix(in srgb,var(--accent2) 8%,var(--bg2)) 80%);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 12%,transparent)}
  .rhero[hidden]{display:none}
  .rhero:not(.live){background:var(--bg2);border-color:var(--line);box-shadow:none}
  .rhimg{width:88px;height:88px;border-radius:16px;overflow:hidden;flex-shrink:0;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(15,27,42,.16)}
  .rhimg img{width:100%;height:100%;object-fit:cover}
  .rhimg.fav img{width:64%;height:64%;object-fit:contain}
  .rhtx{flex:1;min-width:0}
  .rhlab{font-size:.72rem;font-weight:800;color:var(--muted);display:flex;align-items:center;gap:6px}
  .rhero.live .rhlab{color:#ff4d6d}
  .rhlab.on::before{content:"";width:8px;height:8px;border-radius:50%;background:#ff3b5c;box-shadow:0 0 0 3px rgba(255,59,92,.25);animation:rtpulse 1.4s ease-in-out infinite}
  .rhname{font-weight:800;font-size:1.25rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}
  .rhsong{font-size:.875rem;color:color-mix(in srgb,var(--text) 70%,var(--muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px;unicode-bidi:plaintext;text-align:start}
  .rhsong:empty{display:none}
  .rhctl{display:flex;align-items:center;gap:10px;flex-shrink:0}
  .rhstep{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:border-color .15s,color .15s}
  .rhstep:hover{border-color:var(--accent);color:var(--accent)}
  .rhero:not(.live) .rhstep{display:none}
  .rhbtn{width:56px;height:56px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;flex-shrink:0;font:inherit;font-size:.94rem;font-weight:700;box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 40%,transparent);transition:transform .14s}
  .rhbtn:hover{transform:scale(1.05)}
  .rhero:not(.live) .rhbtn{width:auto;height:48px;padding:0 20px;padding-inline-start:16px;border-radius:999px}
  .rhero:not(.live) .rhbtn svg{width:18px;height:18px}
  [data-theme="dark"] .rhbtn{color:var(--bg)}
  /* רשת ערוצים — כותרת, חיפוש, קבוצות */
  .rvbar[hidden],.rvsearch[hidden],.rvchips[hidden],.rvsite[hidden]{display:none}
  .rvhead{display:flex;align-items:center;gap:12px;margin:0 0 12px}
  .rvback{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--bg2);color:var(--text);font:inherit;font-size:1.35rem;line-height:1;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
  .rvback:hover{border-color:var(--accent);color:var(--accent)}
  .rvlogo{width:46px;height:46px;border-radius:12px;overflow:hidden;background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;box-shadow:var(--sh1)}
  .rvlogo img{width:100%;height:100%;object-fit:cover}
  .rvlogo.fav img{width:66%;height:66%;object-fit:contain}
  .rvtx{display:flex;flex-direction:column;min-width:0;flex:1}
  .rvtitle{font-size:1.08rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .rvn{font-size:.76rem;color:var(--muted)}
  .rvsite{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);text-decoration:none;flex-shrink:0}
  .rvsite:hover{color:var(--accent);border-color:var(--accent)}
  .rvsearch{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--bg2);color:var(--text);border-radius:999px;padding:10px 16px;font:inherit;font-size:.92rem;margin:0 0 10px}
  .rvsearch:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
  .rvchips{display:flex;gap:7px;overflow-x:auto;margin:0 0 10px;padding-bottom:2px;scrollbar-width:none}
  .rvchips::-webkit-scrollbar{display:none}
  .rvchip{border:1px solid var(--line);background:var(--bg2);color:var(--text);border-radius:999px;padding:6px 13px;font:inherit;font-size:.8rem;cursor:pointer;white-space:nowrap;flex-shrink:0}
  .rvchip:hover{border-color:var(--accent)}
  .rvchip.on{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:800}
  .rvempty{grid-column:1/-1;text-align:center;color:var(--muted);padding:28px 0;font-size:.9rem}
  /* v3 (14.10): תצוגה אחת — 10 תחנות גדולות, מתחתיהן כל הערוצים באריחים קטנים לפי תחנה וקבוצה */
  #radioModal .modalbox.radiobox{height:88vh}
  #radiolist.rlist{display:block;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;padding:0 4px 14px;position:relative;scroll-padding-top:120px}
  .rlist .rgrid{display:grid;gap:14px}
  .rlist .rbig{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));padding-top:4px}
  .rlist .rsm{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}
  @media(max-width:520px){.rlist .rbig{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rlist .rsm{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}
  .rlist [hidden],.rvchips[hidden],.rvempty[hidden]{display:none!important}
  .rtop{position:sticky;top:0;z-index:6;background:var(--card);padding:6px 0 10px;margin-bottom:4px;box-shadow:0 10px 12px -12px rgba(15,27,42,.35)}
  /* שלב 4: חיפוש עם אייקון, וכפתורי קפיצה גדולים יותר */
  .rvsw{position:relative;display:block;margin:0 0 10px}
  .rvsico{position:absolute;top:50%;inset-inline-start:15px;transform:translateY(-50%);width:18px;height:18px;color:var(--muted);pointer-events:none;display:flex}
  .rtop .rvsearch{margin:0;height:46px;padding:0 16px;padding-inline-start:44px;border-radius:14px;font-size:.94rem}
  .rtop .rvchips{margin:0;padding-bottom:2px}
  .rvchip{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;padding-inline-start:8px;font-size:.8125rem;font-weight:600;box-sizing:border-box}
  .rvchipimg{width:24px;height:24px;border-radius:7px;overflow:hidden;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
  .rvchipimg img{width:100%;height:100%;object-fit:cover}
  .rvchipimg.app img,.rvchipimg.fav img{object-fit:contain}
  .rtcnt{border:0;font:inherit;font-size:.7rem;cursor:pointer}
  .rtcnt:hover{background:var(--accent);color:var(--bg)}
  .rsec{margin-top:26px}
  .rsech{display:flex;align-items:center;gap:10px;padding:14px 4px 4px;border-top:1px solid var(--line)}
  .rseclogo{width:40px;height:40px;border-radius:11px;overflow:hidden;background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;box-shadow:var(--sh1)}
  .rseclogo img{width:100%;height:100%;object-fit:cover}
  .rseclogo.app img{object-fit:contain}.rseclogo.fav img{width:66%;height:66%;object-fit:contain}
  .rsech b{font-size:1.06rem;font-weight:800}
  .rsecn{font-size:.76rem;color:var(--muted)}
  .rgrph{font-size:.8rem;font-weight:800;color:var(--muted);margin:14px 4px 8px;display:flex;align-items:center;gap:8px}
  .rgrph::after{content:"";flex:1;height:1px;background:var(--line)}
  .rgrp:first-of-type .rgrph{margin-top:8px}
  .rsec>.rgrp:only-of-type{margin-top:10px}
  .rtile.sm{padding:5px 5px 7px;border-radius:14px}
  .rtile.sm .rtart{border-radius:10px}
  .rtile.sm .rtname{font-size:.76rem;margin-top:6px}
  .rtile.sm .rtnow{font-size:.64rem;margin-top:2px}
  .rtile.sm .rtgen{font-size:.82rem;line-height:1.18}
  .rtile.sm .rtart.gen{padding:7px}
  .rtile.sm .rtart.gen::after{font-size:3.6rem;bottom:-12px}
  .rtile.sm .rtlive{display:none;top:5px;inset-inline-start:5px;font-size:.52rem;padding:2px 5px 2px 6px}
  .rtile.sm.cur .rtlive{display:flex}
  .rtile.sm .rteq{height:20px;padding:0 6px;bottom:5px;inset-inline-start:5px}
  .rtile.sm .rteq i{width:2.5px}
  .rtile.sm:hover{transform:translateY(-2px)}
  .rtile .rlink{inset-inline-end:auto;inset-inline-start:auto;top:auto;bottom:8px;left:8px;right:auto}
  @media(max-width:520px){
    .radiobox .radionote{display:none}
    /* שלב 4: כפתורי התחנה בשורה מתחת לשם, כדי שהשם והשיר לא ייחתכו */
    .rhero{display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-areas:"img tx" "img ctl";column-gap:12px;row-gap:8px;align-items:start;padding:12px;margin-bottom:10px;border-radius:18px}
    .rhimg{grid-area:img;width:64px;height:64px;border-radius:13px}
    .rhtx{grid-area:tx;padding-top:2px}
    .rhctl{grid-area:ctl;gap:6px;justify-content:flex-start}
    .rhstep{width:40px;height:40px}
    .rhbtn{width:48px;height:48px}
    .rhero:not(.live) .rhbtn{height:44px;font-size:.875rem}
    .rhname{font-size:1.05rem}
    .rvchip{height:40px}
  }
  /* רשימה שלי — הכי מושמעים */
  .mylist{overflow-y:auto;display:flex;flex-direction:column;gap:8px;max-height:62vh}
  .myrow{display:flex;align-items:center;gap:11px;padding:9px;border-radius:var(--r-lg);cursor:pointer;border:1px solid var(--line);background:var(--bg2);transition:transform .12s,border-color .12s}
  .myrow:hover{transform:translateY(-2px);border-color:var(--accent)}
  .myrow img{width:46px;height:46px;border-radius:var(--r-md);flex-shrink:0;object-fit:cover;background:var(--card)}
  .myrow .mrank{font-weight:800;color:var(--muted);width:1.5em;text-align:center;flex-shrink:0;font-size:.95rem}
  .myrow .mn{font-weight:700;font-size:.9rem;line-height:1.25;flex:1;min-width:0}
  .myrow .mn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .myrow .mn.mnwrap{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;overflow-wrap:anywhere}
  .myrow:has(.mnwrap){align-items:flex-start}
  .myrow .mcount{font-size:.78rem;color:var(--accent);font-weight:800;white-space:nowrap}
  .myctl{display:flex;gap:3px;flex-shrink:0}
  .myb{width:25px;height:25px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card);color:var(--text);cursor:pointer;font-size:.66rem;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}
  .myb:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
  .myb:disabled{opacity:.28;cursor:default}
  .myx:hover{border-color:#ff4d6d;color:#ff4d6d}
  .myempty{color:var(--muted);text-align:center;padding:34px 12px;font-size:.95rem;line-height:1.6}
  /* סימניות בתוך שיר */
  .npmarks{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:540px}
  .npmark{display:inline-flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 11px;font-size:.8rem;font-weight:700;cursor:pointer;color:var(--text)}
  .npmark:hover{border-color:var(--accent)}
  .npmark b{color:var(--accent)}
  .npmark .x{opacity:.45;font-weight:800;margin-inline-start:1px}
  .npbar,.dbar{position:relative}
  .nptick{position:absolute;top:-2px;bottom:-2px;width:3px;background:var(--accent);opacity:.85;border-radius:2px;pointer-events:none}
  /* פופאפ סימניות (נפתח מכפתור 🔖 בנגן) */
  .bmpop{position:fixed;z-index:45;right:12px;bottom:104px;width:min(290px,88vw);background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 14px 44px rgba(0,0,0,.45);padding:13px;display:none;animation:fadein .2s ease}
  .bmpop.show{display:block}
  /* ‏12.10 (בקשת גולש): דירוג השיר שמתנגן מתוך הנגן — אותו חלון כמו הסימניות */
  .ratepop .rate{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:4px 0 2px}
  .ratepop .stars{font-size:1.7rem}
  .ratepop .rnote{font-size:.8rem;color:var(--muted);text-align:center;margin-top:8px}
  /* מספר-הריחוף נכנס לשורה הממורכזת ומזיז את הכוכבים באמצע הלחיצה (נמדד: הלחיצה נחתה על .rate ולא על כוכב) */
  .ratepop .rhint{display:none!important}
  .ratepop{z-index:120}
  body.radio #drate{display:none!important}
  .bmpop h4{margin:0 0 9px;font-size:.95rem;font-weight:800;display:flex;justify-content:space-between;align-items:center;gap:8px}
  .bmpop h4 button{background:none;border:0;color:var(--muted);font-size:1.15rem;cursor:pointer;line-height:1;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:background .12s,color .12s}
  .bmadd{width:100%;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border:0;border-radius:11px;padding:10px;font-weight:800;cursor:pointer;font-size:.92rem;margin-bottom:9px;font-family:inherit}
  .bmadd:active{transform:scale(.98)}
  .bmlist{display:flex;flex-direction:column;gap:6px;max-height:42vh;overflow-y:auto}
  .bmitem{display:flex;align-items:center;gap:9px;background:var(--bg2);border:1px solid var(--line);border-radius:11px;padding:9px 11px;cursor:pointer;transition:border-color .12s}
  .bmitem:hover{border-color:var(--accent)}
  .bmitem .bt{font-weight:800;color:var(--accent);flex:1}
  .bmitem .bj{font-size:.78rem;color:var(--muted)}
  .bmitem .bx{opacity:.5;font-weight:800;padding:2px 5px;border-radius:6px}
  .bmitem .bx:hover{opacity:1;background:var(--line)}
  .bmempty{color:var(--muted);text-align:center;padding:18px 8px;font-size:.85rem;line-height:1.6}
  /* סיור/הדרכה למשתמש חדש (זרקור על אלמנטים) */
  .tour{position:fixed;inset:0;z-index:400;display:none}
  .tour.show{display:block}
  .tour-ring{position:absolute;border-radius:var(--r-lg);box-shadow:0 0 0 9999px rgba(0,0,0,.72);transition:left .3s ease,top .3s ease,width .3s ease,height .3s ease;pointer-events:none;display:none}
  .tour-box{position:absolute;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px 17px;width:min(312px,88vw);box-shadow:0 16px 50px rgba(0,0,0,.5);transition:left .3s ease,top .3s ease}
  .tour-t{font-weight:800;font-size:1.06rem;margin-bottom:6px}
  .tour-d{font-size:.9rem;color:var(--muted);line-height:1.5;margin-bottom:13px}
  .tour-nav{display:flex;align-items:center;gap:8px}
  .tour-dots{display:flex;gap:4px;flex:1;justify-content:center}
  .tour-dot{width:6px;height:6px;border-radius:50%;background:var(--line)}
  .tour-dot.on{background:var(--accent)}
  .tour-btn{background:var(--bg2);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:8px 14px;font-weight:700;cursor:pointer;font-family:inherit;font-size:.88rem}
  .tour-next{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border:0}
  .tour-skip{background:none;border:0;color:var(--muted);cursor:pointer;font-size:.82rem;font-family:inherit;padding:4px}
  .rlink{position:absolute;top:6px;left:6px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--card);border:1px solid var(--line);color:var(--muted);font-size:.78rem;text-decoration:none;opacity:.7}
  .rlink:hover{opacity:1;color:var(--accent);border-color:var(--accent)}
  .resumepop{display:flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 6px 5px 12px;box-shadow:0 12px 32px rgba(0,0,0,.32);animation:fadein .3s ease}
  /* ‼️ 25.8 (בקשה #104 — DHOC979, "אחידות עיצובית להודעות הקופצות") — באנר-העדכון עבר לאותה
     גלולת-כרטיס של "המשך האזנה" ו"שירים חדשים": עטיפת .resumepop + ✕ עגול, במקום כפתור-גרדיאנט
     צף בסגנון משלו. האייקון נשאר, הצבע עובר לטקסט רגיל עם הדגשת-מונה בצבע-המבטא. */
  .resumepop .updatebar{box-shadow:none;padding:7px 4px;background:none;color:var(--text);font-size:.86rem}
  .resumepop .updatebar #upCount{color:var(--accent)}
  .resumepop .updatebar:hover{transform:none}
  /* === שלב 0 (15.10): "מנהל תנועה" — כל מה שצף יושב בערימה אחת (#floatstack) מעל הנגן / פס "המשך".
     הודעות (popdock) בצד ההתחלה, הכפתורים העגולים (למעלה / ניהול) בצד הסוף. הגובה נקבע ב-placePops
     לפי הנגן / פס "המשך" / פס-ההסכמה בפועל, כך ששום דבר לא עולה על שום דבר. */
  .floatstack{position:fixed;left:0;right:0;bottom:16px;z-index:110;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:0 16px;pointer-events:none;transition:bottom .25s ease}
  .floatstack>*{pointer-events:auto}
  .popdock{flex:0 1 auto;min-width:0;max-width:min(620px,calc(100% - 76px));display:flex;flex-direction:column-reverse;gap:10px;align-items:flex-start;pointer-events:none}
  .popdock>.popitem{display:none!important;pointer-events:auto;max-width:100%}
  .popdock>.popitem.on{display:flex!important}
  .fabs{display:flex;flex-direction:column;align-items:center;gap:10px;flex:0 0 auto;margin-inline-start:auto}
  .fab{width:46px;height:46px;border-radius:50%;background:var(--card);color:var(--text);border:1px solid var(--line);box-shadow:0 6px 18px rgba(0,0,0,.14),0 1px 3px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font-family:inherit;transition:color .15s,border-color .15s,transform .15s}
  .fab:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-1px)}
  /* חץ "למעלה" — רק אחרי גלילה של יותר משני מסכים (.show נקבע במאזין-הגלילה) */
  .fab.top{display:none}
  .fab.top.show{display:flex}
  .adminpanelbtn{display:none}
  body.admin .adminpanelbtn{display:flex}
  @media(max-width:640px){
    .floatstack{flex-direction:column-reverse;align-items:stretch;gap:10px;padding:0 12px}
    .popdock{max-width:none;width:100%;align-items:stretch}
    .fabs{align-self:flex-end;margin:0}
    .fab{width:44px;height:44px}
  }
  .resumex{all:unset;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--muted);transition:background .12s,color .12s}
  .resumex:hover{background:var(--bg2);color:var(--accent)}
  /* שלב 5 (15.10): הודעה — מקום אחד (באמצע, מעל הנגן / פס "המשך": --botoff מ-placePops) וסגנון אחד */
  .toast{position:fixed;bottom:calc(var(--botoff,0px) + 18px);left:50%;transform:translateX(-50%) translateY(14px);display:flex;align-items:center;gap:12px;box-sizing:border-box;min-height:52px;width:max-content;max-width:min(460px,calc(100vw - 32px));padding:10px 18px;padding-inline-start:10px;background:#1d2534;color:#fff;border:1px solid rgba(255,255,255,.06);border-radius:16px;font-weight:600;font-size:.94rem;line-height:1.45;text-align:start;box-shadow:0 16px 40px rgba(10,16,28,.3);z-index:300;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s cubic-bezier(.2,.8,.2,1)}
  .toast .tico{flex:0 0 auto;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff}
  .toast.ok .tico{background:#1f9d57}
  .toast.err .tico{background:#e5484d}
  .toast .ttx{min-width:0}
  .toast .tundo{flex:0 0 auto;margin-inline-start:4px;height:36px;padding:0 14px;border-radius:999px;border:0;background:rgba(255,255,255,.13);color:#9ee6dc;font:inherit;font-size:.875rem;font-weight:700;cursor:pointer}
  .toast .tundo:hover{background:rgba(255,255,255,.22)}
  .toast .tclose{flex:0 0 auto;width:36px;height:36px;border-radius:50%;border:0;background:transparent;color:rgba(255,255,255,.75);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
  .toast .tclose:hover{background:rgba(255,255,255,.13);color:#fff}
  .toast.hasundo{padding-inline-end:8px}
  .toast.show.hasundo{pointer-events:auto}
  [data-theme="dark"] .toast{background:#2a3446;border-color:rgba(255,255,255,.1)}
  @media(max-width:640px){.toast{width:calc(100vw - 32px);max-width:none}}
  #popdock{transition:opacity .2s ease,visibility .2s}
  html.toasting #popdock{opacity:0;visibility:hidden}
  /* === שלב 0 (15.10): באנר ההתקנה / העונתי = פס דק אחד — אייקון קו בתוך ריבוע מעוגל, כותרת, תיאור קצר
     (במחשב), כפתור פעולה ו-✕. בלי אימוג'י, בלי תלת-ממד. הצבע העונתי נשאר רק באייקון ובכפתור. */
  .installbanner{display:flex;align-items:center;gap:10px;width:max-content;max-width:100%;min-height:48px;box-sizing:border-box;padding:4px;padding-inline-start:8px;border-radius:14px;background:var(--card);color:var(--text);border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.14),0 1px 3px rgba(0,0,0,.08);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .28s ease,transform .28s ease}
  .installbanner.show{opacity:1;pointer-events:auto;transform:none}
  .installbanner .ib-ico{flex:0 0 auto;width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--ibc,var(--accent)) 14%,transparent);color:var(--ibc,var(--accent))}
  .installbanner .ib-msg{display:flex;flex:1 1 auto;min-width:0;align-items:baseline;gap:4px 10px;flex-wrap:wrap;line-height:1.3}
  .installbanner .ib-msg b{flex:0 0 auto;font-size:.9rem;font-weight:700}
  .installbanner .ib-sub{flex:1 1 auto;min-width:0;font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .installbanner .ib-install{flex:0 0 auto;height:36px;padding:0 16px;border-radius:10px;background:var(--ibc,var(--accent));color:#fff;border:0;font-weight:700;font-size:.84rem;font-family:inherit;cursor:pointer;white-space:nowrap}
  .installbanner .ib-install:hover{filter:brightness(1.07)}
  /* היעד הקטן ביותר בעמוד היה כאן: 28×27 (נמדד 16.8) — סגירת באנר שאי-אפשר לפגוע בה באצבע */
  .installbanner .ib-x{flex:0 0 auto;width:40px;height:40px;border-radius:10px;background:transparent;border:0;color:var(--muted);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}
  .installbanner .ib-x:hover{background:var(--bg2);color:var(--text)}
  /* השתקה קבועה של הפופאפ העונתי (משוב גולש 23.8) — קישור-טקסט צנוע ליד התיאור */
  .installbanner .ib-never{background:transparent;border:0;padding:0;color:var(--muted);font-size:.74rem;text-decoration:underline;cursor:pointer;font-family:inherit;white-space:nowrap}
  .installbanner .ib-never:hover{color:var(--text)}
  .installbanner.seasonpop{--ibc:var(--sp2,var(--accent))}
  /* ‏23.10 בקשת שיתוף: בצבע האתר; הנימוק ("חינם ועובד בנטפרי") נשאר גם בטלפון — הוא מה שמשכנע */
  @media(max-width:640px){.installbanner{width:100%}.installbanner .ib-sub{display:none}
    .installbanner.sharepop .ib-msg{flex-direction:column;align-items:flex-start;gap:2px}
    .installbanner.sharepop .ib-sub{display:block;white-space:normal;font-size:.76rem}}
  .bannertoggles{display:flex;flex-wrap:wrap;gap:7px}
  .bntgl{background:var(--bg2);border:1px solid var(--line);border-radius:var(--r-pill);padding:6px 12px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}
  .bntgl.on{background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:var(--accent)}
  .e3d{height:1.15em;width:1.15em;vertical-align:-0.18em;display:inline-block;margin:0 .03em;object-fit:contain}
  .liwrap{display:inline-flex;align-items:center;justify-content:center}
  .liwrap svg{width:100%;height:100%;display:block}
  .e3d.etext{display:inline;width:auto;height:auto}
  /* על רקע צבעוני האייקון יורש את צבע הטקסט של הכפתור (כמו הגליף המקורי) — אחרת כחול-על-כחול נעלם.
     הרשימה = כל הסלקטורים בקובץ שמגדירים color:#fff + הנגן כולו. כלל לעתיד: כפתור צבעוני חדש → להוסיף לכאן. */
  #dock .liwrap svg,#npfull .liwrap svg,
  .chip.on .liwrap svg,.chip.on:hover .liwrap svg,.sortchip.on .liwrap svg,.catchip.on .liwrap svg,.pp .liwrap svg,.nppp .liwrap svg,
  .chip-live .liwrap svg,.chip-live:hover .liwrap svg,.updatebar .liwrap svg,.syncbtn .liwrap svg,
  .asortbtn.on .liwrap svg,.ssortbtn.on .liwrap svg,.psortbtn.on .liwrap svg,.badge .liwrap svg,
  .adminedit .liwrap svg,.admmbtn .liwrap svg,.admsave .liwrap svg,.admtgl.on .liwrap svg,
  .admact .liwrap svg,.admtab.on .liwrap svg,body.plmode #plChip .liwrap svg,
  .bmadd .liwrap svg,.consent button .liwrap svg,.cornericon .liwrap svg,.dctls .dctl.on .liwrap svg,.dock .dpp .liwrap svg,
  .dpcalbtn.on .liwrap svg,.installbanner .liwrap svg,
  .newpill .liwrap svg,.pldetacts #plDetPlay .liwrap svg,.pldetacts #myPlayAll .liwrap svg,.plh-actions #plhPlay .liwrap svg,.plnewrow button .liwrap svg,
  .plvisbtn.on .liwrap svg,.radiobanner .liwrap svg,.repchip.on .liwrap svg,.resumebar .liwrap svg,
  .toast .liwrap svg,.toolToggle .liwrap svg,.tour-next .liwrap svg,.tpnewrow button .liwrap svg,
  .fpx:hover .liwrap svg
  {stroke:currentColor}
  .pinbadge .liwrap svg{stroke:#3a2a00}
  .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
  .dclose:hover,.npclose:hover,.resumex:hover,.bmpop h4 button:hover{background:color-mix(in srgb,var(--text) 12%,transparent);color:var(--text)}
  .rate{display:flex;align-items:center;gap:11px;margin-top:9px;flex-wrap:wrap}
  .stars{font-size:1.4rem;letter-spacing:3px;cursor:pointer;color:var(--line);display:inline-flex}
  /* לכוכב לא היה שום ריפוד — אזור הפגיעה היה רוחב הגליף בלבד (16.8) */
  .star{transition:color .1s,transform .1s;padding:5px 3px;line-height:1}.star.on,.star.hov{color:var(--star)}.star:hover{color:var(--star);transform:scale(1.15)}
  .rhint{display:none;align-items:center;justify-content:center;min-width:1.5em;height:1.5em;padding:0 .25em;background:var(--star);color:#1a1a1a;border-radius:.6em;font-size:.82rem;font-weight:800}.rhint.show{display:inline-flex}
  .rinfo{font-size:.82rem;color:var(--muted)}.rinfo b{color:var(--star)}
  /* 🎬 הקליפ (18.8, משוב גולש) — יושב בתוך .cover-wrap ונפתח *במקום התמונה* במקום לרדת
     כשורה נפרדת בתחתית הכרטיס. ה-summary מוסתר; הטריגר הוא כפתור .clipwatch בשורת הפעולות,
     ולחיצה נוספת סוגרת. ‼️ pointer-events:none כשסגור — ה-details פרוש inset:0 ובלי זה
     הוא היה בולע כל לחיצה על התמונה (וממילא חוסם את "לחיצה על התמונה מנגנת"). */
  /* ‼️ 18.8 (בקשת משתמש, סבב ב') — הקליפ נפתח בגודל התמונה, וההגדלה היא צעד שני:
     ⤢ בפינת הווידאו מוסיף .clipbig לכרטיס, ורק אז הכרטיס עובר לטור והווידאו נפרש
     ב-16:9 (באריחים — נפרש לשתי עמודות). הצמצום חוזר באותו כפתור, וסגירת הקליפ
     מנקה את המחלקה כדי שהפתיחה הבאה תתחיל שוב קטנה. */
  #list article.song.clipbig .cover-wrap{width:100%;aspect-ratio:16/9;flex-shrink:1;align-self:stretch}
  /* (שלב 1: כרטיס-הרשימה פורש את הקליפ לכל הרוחב כבר בפתיחה — ראו בלוק "כרטיס השיר" בסוף; כאן רק דף השיר) */
  @media(min-width:600px){body:not(.gridview) #list article.song.hero.clipbig{flex-direction:column}}
  body.gridview #list article.song.clipbig{grid-column:span 2}
  @media(max-width:560px){body.gridview #list article.song.clipbig{grid-column:1/-1}}
  /* ‼️ 18.8 מאוחר (בקשת משתמש: "גם בפודקאסטים") — כל כללי-ההגדלה נכתבו על #list בלבד, ופיד
     הפודקאסטים יושב ב-#podlist. בלעדי הכלל הזה הקליפ בפודקאסט היה נפתח אבל ⤢ לא היה עושה כלום.
     ‏(1,3,1) גובר על body.podmode .song .cover-wrap{width:200px;aspect-ratio:1/1} שהוא (0,3,0)
     — גם זה שבתוך מדיה, כי ספציפיות גוברת על סדר-מקור. הכרטיס כבר column, אז אין מה להפוך. */
  #podlist article.song.clipbig .cover-wrap{width:100%;aspect-ratio:16/9;flex-shrink:1;align-self:stretch}
  /* כפתור-השכבה עצמו — z-index מעל ה-details (5), ומופיע רק כשהקליפ פתוח */
  /* ‼️ 18.8 (משוב משתמש: "כפתור ההגדלה לא ברור") — היה ריבוע 30px עם חיצי-פינות בלבד, כהה על
     וידאו כהה, ודומה מדי לכפתור המסך-המלא של יוטיוב עצמו. עכשיו: כדור עם *מילה* ("הגדל"/"הקטן"),
     רקע אטום וצל — קריא, ואי-אפשר לבלבל אותו עם פקדי הנגן של יוטיוב שיושבים בתחתית. */
  .cover-wrap .clipzoom{position:absolute;z-index:6;top:6px;inset-inline-end:6px;display:none;height:30px;padding:0 11px 0 9px;gap:5px;border:0;border-radius:var(--r-pill);background:rgba(0,0,0,.82);color:#fff;font-family:inherit;font-size:.79rem;font-weight:700;line-height:1;cursor:pointer;align-items:center;justify-content:center;backdrop-filter:blur(2px);box-shadow:0 2px 10px rgba(0,0,0,.4)}
  .cover-wrap .clipzoom .czt{display:inline}
  .cover-wrap:has(.ytd[open]) .clipzoom{display:inline-flex}
  .cover-wrap .clipzoom:hover{background:rgba(0,0,0,.85)}
  .cover-wrap .clipzoom .zout{display:none}
  article.song.clipbig .clipzoom .zin{display:none}
  article.song.clipbig .clipzoom .zout{display:inline}
  .cover-wrap .ytd{position:absolute;inset:0;z-index:5;margin:0}
  .cover-wrap .ytd:not([open]){pointer-events:none;visibility:hidden}
  .cover-wrap .ytd>summary{display:none}
  /* ‼️ 20.8 — margin:0 חובה. הכלל הבסיסי של .yt נושא margin-top:11px מהימים שהקליפ היה
     שורה נפרדת מתחת לכרטיס. העקיפה כאן דרסה position/inset/padding/height אבל **לא את
     ה-margin**, ולכן הווידאו נדחף 11px מטה: נשאר פס של תמונת-הרקע למעלה וגלישה של 11px
     למטה. נמדד: gapTop=11, gapBottom=-11, גם בקטן וגם במוגדל (דיווח משתמש). */
  .cover-wrap .ytd .yt{position:absolute;inset:0;margin:0;padding:0;height:100%;background:#000}
  .cover-wrap .ytd .yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
  .ytd summary{cursor:pointer;color:var(--accent);font-size:.92rem;font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:6px}
  /* 15.7 בקשת משתמש: "צפייה בקליפ" באותה שורה עם הדירוג (בצד שמאל) — לא שורה נפרדת,
     וכך כרטיסים עם/בלי קליפ באותו גובה בדיוק. בפתיחה הסרטון יורד לרוחב מלא */
  /* ‼️ .clipzoom חייב להיכלל: הוא נשלט ב-:has(.ytd[open]) וה-details נשאר "פתוח" בעץ גם
     כשהוא display:none — בלי זה היה מרחף כפתור-הגדלה מעל תמונה בלי וידאו במצב "בלי קליפים" */
  body.noclips .ytd,body.noclips .cliponly,body.noclips .chip[data-f="yt"],body.noclips .clipwatch,body.noclips .clipzoom{display:none!important}
  .yt{position:relative;padding-bottom:56.25%;height:0;margin-top:11px;border-radius:var(--r-lg);overflow:hidden}
  .yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
  .empty{text-align:center;color:var(--muted);padding:50px}
  footer{text-align:center;color:var(--muted);padding:28px;font-size:.82rem}
  footer a{color:var(--muted);text-decoration:none}
  footer a:hover{color:var(--accent)}
  .morehead{max-width:860px;margin:22px auto 2px;padding:0 18px;font-size:1.12rem;font-weight:800}
  .related{max-width:900px;margin:8px auto 26px;padding:18px 16px}
  .related h2{font-size:1.06rem;margin:20px 0 10px;font-weight:800;display:flex;align-items:center;gap:7px}
  .relgrid{display:flex;flex-direction:column;gap:8px}
  .relitem{display:flex;align-items:center;gap:10px;width:100%;padding:13px 16px;border-radius:13px;background:var(--bg2);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:transform .12s,border-color .12s,color .12s,box-shadow .12s}
  .relitem>span:last-child{overflow:hidden;text-overflow:ellipsis}
  .relitem:hover{transform:translateX(-3px);border-color:var(--accent);color:var(--accent);box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 22%,transparent)}
  .relitem .ri-ico{flex-shrink:0;opacity:.8}
  .admindot{cursor:pointer;opacity:.4;padding:0 10px;font-weight:800;user-select:none}
  .admlbl{display:block;font-size:.8rem;color:var(--muted);font-weight:700;margin:10px 2px 5px}
  .adminput{width:100%;box-sizing:border-box;padding:11px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg2);color:var(--text);font-size:.95rem;font-family:inherit}
  .adminput:focus{border-color:var(--accent);outline:none}
  .admarea{resize:vertical;min-height:90px}
  .admbtns{display:flex;gap:10px;margin-top:16px}
  .admsave{flex:1;cursor:pointer;border:0;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:800;font-size:.95rem;padding:12px;border-radius:var(--r-md)}
  .admdel{cursor:pointer;border:1px solid #ff4d6d;background:transparent;color:#ff4d6d;font-weight:700;font-size:.9rem;padding:12px 16px;border-radius:var(--r-md)}
  .admsave:hover{transform:scale(1.02)}
  body.admin .song{position:relative}
  .adminedit{position:absolute;top:8px;inset-inline-start:8px;z-index:6;cursor:pointer;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:1rem;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.3)}
  .adminedit:hover{background:var(--accent)}
  [dir="ltr"] .adminedit{top:48px} /* ב-LTR הפינה העליונה תפוסה ע"י תג 📌 — מורידים את כפתור העריכה מתחתיו */
  .admtoggles{display:flex;gap:10px;margin-top:10px}
  .admtgl{flex:1;cursor:pointer;border:1px solid var(--line);background:var(--bg2);color:var(--text);font-weight:700;font-size:.85rem;padding:10px;border-radius:10px}
  /* ‏22.10: קובץ שמע לשיר (העלאה / המרה מהקליפ / הסרה) */
  .admaudio{margin-top:12px;padding:10px 12px;border:1px dashed var(--line);border-radius:12px;background:var(--bg2)}
  .admaudio .admlbl{margin-top:0}
  #admAudSt{display:block;font-size:.88rem;line-height:1.45;margin:2px 0 0}
  .admaudio .admtoggles{flex-wrap:wrap}
  .admaudio .admtgl{background:var(--bg);text-align:center}
  .admtgl.on{background:var(--accent);color:#fff;border-color:var(--accent)}
  body.admin .song[data-hidden="1"]{opacity:.5;outline:2px dashed #ff4d6d;outline-offset:-2px}
  .pinbadge{left:12px;right:auto;background:linear-gradient(135deg,#ffcb3d,#ffa62e);color:#3a2a00;box-shadow:0 4px 12px rgba(255,170,40,.5)}
  .admmlist{display:flex;flex-direction:column;gap:6px;max-height:62vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .admgroup{font-size:.74rem;font-weight:800;letter-spacing:.02em;color:var(--muted);text-transform:uppercase;margin:6px 2px 7px;opacity:.85}
  .admsec{border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:9px;background:var(--bg2);overflow:hidden}
  .admsec>summary{cursor:pointer;list-style:none;padding:11px 14px;font-weight:700;font-size:.9rem;color:var(--text);display:flex;align-items:center;gap:7px}
  .admsec>summary::-webkit-details-marker{display:none}
  .admsec>summary::after{content:"▾";margin-inline-start:auto;color:var(--muted);transition:transform .15s}
  .admsec[open]>summary::after{transform:rotate(180deg)}
  .admsec>summary:hover{color:var(--accent)}
  .admsec .admmlist,.admsec .bannertoggles{padding:0 12px 12px;max-height:60vh}
  .admmrow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;background:var(--bg2);border:1px solid var(--line);font-size:.86rem}
  .admmrow.empty{justify-content:center;color:var(--muted);font-weight:600}
  .admmrow span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .admmbtn{flex:none;cursor:pointer;border:0;background:var(--accent);color:#fff;font-weight:700;font-size:.8rem;padding:6px 12px;border-radius:var(--r-sm)}
  #adminPanel .modalbox{max-width:760px;width:96vw;max-height:90vh;display:flex;flex-direction:column}
  .admtabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px;flex:none}
  .admtab{cursor:pointer;border:1px solid var(--line);background:var(--bg2);color:var(--text);font-weight:700;font-size:.82rem;padding:7px 13px;border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:6px}
  .admtab.on{background:var(--accent);color:#fff;border-color:var(--accent)}
  /* ‏22.10 סידור הניהול: רמזורים בלשונית "מצב", קבוצות מקופלות ("טופלו", "כלים מסוכנים") */
  .admlights{display:flex;flex-direction:column;gap:6px;margin:0 0 10px}
  .admlight{display:flex;gap:10px;align-items:flex-start;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:var(--bg2)}
  .admlight>i{flex:none;width:12px;height:12px;border-radius:50%;margin-top:4px;background:#22c55e;box-shadow:0 0 0 3px color-mix(in srgb,#22c55e 22%,transparent)}
  .admlight.y>i{background:#eab308;box-shadow:0 0 0 3px color-mix(in srgb,#eab308 22%,transparent)}
  .admlight.r>i{background:#ef4444;box-shadow:0 0 0 3px color-mix(in srgb,#ef4444 22%,transparent)}
  .admlight b{display:block;font-size:.88rem;line-height:1.35}
  .admlight span{display:block;font-size:.78rem;line-height:1.45;color:var(--muted)}
  .admsec.admdanger>summary{color:#dc2626}
  .admsec.admdone{opacity:.8;margin-top:8px}
  .admtabbody{overflow-y:auto;flex:1;min-height:0;-webkit-overflow-scrolling:touch}
  .admbadge{background:#e33;color:#fff;border-radius:var(--r-pill);font-size:.68rem;padding:1px 7px;font-weight:800;display:none}
  /* שורת-שגיאה בפאנל: מנהל חייב להבחין בין "אין נתונים" לבין "לא הצלחנו לטעון" (16.8) */
  .admerr{color:#c62828;background:rgba(230,60,60,.09);border:1px solid rgba(230,60,60,.35);border-radius:10px;padding:14px 12px;font-weight:600}
  /* חיווי איכות הקובץ (18.8) — נגזר מגודל+משך שהסורק כבר שמר, בלי בקשה נוספת */
  .kbps{font-weight:800;color:var(--muted)}
  .kbps.hi{color:var(--accent)}
  /* === תצוגת שמות שירים (18.8, משוב גולש) ===
     ללא-אייקונים: __emoji3d מחליף כל אימוג'י בטקסט באייקון (.liwrap/.e3d). מסתירים אותם
     רק בשמות ובכרטיסים — לא בכל האתר, אחרת כפתורים שכל תוכנם אימוג'י מתרוקנים.
     שמות-לועזיים-מימין-לשמאל: ‼️ unicode-bidi:plaintext על שמות הנגן *גובר* על dir ומחזיר
     זיהוי-לפי-תו-ראשון — בלי לבטל אותו כאן, ה-dir שנוסיף לא היה משנה כלום. */
  html[data-noicons="1"] #list .liwrap,html[data-noicons="1"] #list .e3d,
  html[data-noicons="1"] .songlink .liwrap,html[data-noicons="1"] .songlink .e3d,
  html[data-noicons="1"] .dtitle .liwrap,html[data-noicons="1"] .dtitle .e3d,
  html[data-noicons="1"] .nptitle .liwrap,html[data-noicons="1"] .nptitle .e3d{display:none}
  /* 18.10 (בקשת משתמש): שמות לועזיים מימין = ברירת המחדל; רק מי שכיבה בהגדרות מקבל data-rtlnames="0" */
  html:not([data-rtlnames="0"]) .songlink,html:not([data-rtlnames="0"]) #list .song-body h1,
  html:not([data-rtlnames="0"]) #list .song-body h2{direction:rtl;text-align:right;unicode-bidi:isolate}
  html:not([data-rtlnames="0"]) .dock .dtitle,html:not([data-rtlnames="0"]) .nptitle{direction:rtl;unicode-bidi:isolate}
  /* שורת-בריאות הריצות האוטומטיות (18.8) — כישלון שקט היה עד היום בלתי-נראה בפאנל */
  .admhealth{font-size:.78rem;color:var(--muted);font-weight:600;line-height:1.7;margin:-6px 2px 14px;white-space:normal}
  .admhealth:empty{display:none}
  .admhealth.bad{color:#c62828;background:rgba(230,60,60,.09);border:1px solid rgba(230,60,60,.35);border-radius:10px;padding:10px 12px;margin-top:0}
  /* לשונית "כלים" (18.8) — כרטיס לכל פעולת-ניהול: שם, הסבר, שדות, כפתורים, ותוצאה במקום */
  .admtool{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg2);padding:12px 13px;margin-bottom:9px}
  .admtool.danger{border-color:rgba(230,60,60,.45)}
  .admtool>b{display:block;font-size:.92rem;margin-bottom:3px}
  .admtool>.admmeta{margin-bottom:2px;line-height:1.5;white-space:normal}
  .admtool .admbtns{margin-top:11px;flex-wrap:wrap}
  .admtool .admarea{min-height:70px}
  .admtool input[type=file]{margin-top:8px;font-size:.8rem;padding:8px}
  .admtool details>summary{cursor:pointer;color:var(--muted);font-size:.78rem;font-weight:700;margin-top:9px;list-style:none}
  .admtool details>summary::-webkit-details-marker{display:none}
  .admtoolout{margin-top:11px;font-size:.85rem;line-height:1.6;word-break:break-word}
  .admtoolout:empty{display:none}
  .admtoolrows{max-height:230px;overflow-y:auto;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:8px 10px;margin:6px 0;font-size:.8rem;line-height:1.75}
  .admtoolraw{max-height:220px;overflow:auto;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:8px 10px;font-size:.72rem;white-space:pre-wrap;word-break:break-all;margin:6px 0 0}
  .dimrow{opacity:.55}
  .admrefresh{background:none;border:0;font-size:1.05rem;cursor:pointer;padding:2px 6px;margin-inline-start:auto;line-height:1}
  .admrefresh.spin{animation:admspin .9s linear}
  @keyframes admspin{to{transform:rotate(360deg)}}
  .admtab.on .admbadge{background:rgba(255,255,255,.3)}
  .admcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-bottom:14px}
  .admcard{background:var(--bg2);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 8px;text-align:center}
  .admcard b{display:block;font-size:1.15rem;color:var(--accent)}
  .admcard span{font-size:.7rem;color:var(--muted);font-weight:700}
  .admmeta{display:block;font-size:.72rem;color:var(--muted);font-weight:600;white-space:normal}
  .mn2{flex:1;min-width:0;overflow:hidden}
  .mn2 b{display:block;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .admactions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
  .admact{cursor:pointer;border:0;background:var(--accent);color:#fff;font-weight:700;font-size:.84rem;padding:9px 14px;border-radius:10px;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
  .admact.alt{background:var(--bg2);color:var(--text);border:1px solid var(--line)}
  .admact:disabled{opacity:.6;cursor:wait}
  #admSearch{margin-bottom:10px;width:100%;box-sizing:border-box}
  .admsongrow{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:10px;background:var(--bg2);border:1px solid var(--line)}
  .admsongrow.hid{opacity:.55}
  .admsbtn{flex:none;cursor:pointer;border:1px solid var(--line);background:var(--bg);color:var(--text);font-size:.82rem;padding:5px 8px;border-radius:var(--r-sm);text-decoration:none;line-height:1}
  .admsbtn.warn{color:#e33;border-color:#e33}
  /* תווים מרחפים בכותרת */
  .notes{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
  .notes span{position:absolute;bottom:-30px;color:rgba(255,255,255,.32);animation:floatNote linear infinite;text-shadow:0 0 8px rgba(255,255,255,.3)}
  .notes span:nth-child(1){left:6%;font-size:1.3rem;animation-duration:9s}
  .notes span:nth-child(2){left:20%;font-size:1rem;animation-duration:11s;animation-delay:2s}
  .notes span:nth-child(3){left:38%;font-size:1.7rem;animation-duration:8s;animation-delay:1s}
  .notes span:nth-child(4){left:55%;font-size:1.1rem;animation-duration:12s;animation-delay:3s}
  .notes span:nth-child(5){left:70%;font-size:1.4rem;animation-duration:10s;animation-delay:.5s}
  .notes span:nth-child(6){left:84%;font-size:1rem;animation-duration:13s;animation-delay:2.5s}
  .notes span:nth-child(7){left:92%;font-size:1.5rem;animation-duration:9.5s;animation-delay:1.5s}
  .notes span:nth-child(5){font-size:2rem}
  .notes span:nth-child(8){left:13%;font-size:1.65rem;animation-duration:10.5s;animation-delay:4s;color:rgba(255,203,61,.42)}
  .notes span:nth-child(9){left:29%;font-size:.95rem;animation-duration:12.5s;animation-delay:5.5s}
  .notes span:nth-child(10){left:47%;font-size:1.25rem;animation-duration:9.3s;animation-delay:4.2s;color:rgba(255,203,61,.36)}
  .notes span:nth-child(11){left:63%;font-size:1.9rem;animation-duration:11.5s;animation-delay:6s}
  .notes span:nth-child(12){left:77%;font-size:1.1rem;animation-duration:13.5s;animation-delay:3.6s}
  .notes span:nth-child(13){left:89%;font-size:1.4rem;animation-duration:8.8s;animation-delay:5s;color:rgba(255,203,61,.4)}
  .notes span:nth-child(14){left:97%;font-size:1rem;animation-duration:12.2s;animation-delay:7s}
  .notes span:nth-child(15){left:3%;font-size:1.2rem;animation-duration:8.4s;animation-delay:.6s}
  .notes span:nth-child(16){left:16%;font-size:1rem;animation-duration:10.2s;animation-delay:2.2s;color:rgba(255,203,61,.38)}
  .notes span:nth-child(17){left:24%;font-size:1.55rem;animation-duration:9.6s;animation-delay:.3s}
  .notes span:nth-child(18){left:33%;font-size:1.85rem;animation-duration:11.8s;animation-delay:1.8s}
  .notes span:nth-child(19){left:43%;font-size:1.05rem;animation-duration:8.9s;animation-delay:2.8s}
  .notes span:nth-child(20){left:52%;font-size:1.45rem;animation-duration:10.8s;animation-delay:.9s;color:rgba(255,203,61,.42)}
  .notes span:nth-child(21){left:60%;font-size:1.15rem;animation-duration:9.1s;animation-delay:2.4s}
  .notes span:nth-child(22){left:74%;font-size:1.7rem;animation-duration:12.6s;animation-delay:1.2s}
  .notes span:nth-child(23){left:81%;font-size:1rem;animation-duration:8.2s;animation-delay:3.1s;color:rgba(255,203,61,.36)}
  .notes span:nth-child(24){left:95%;font-size:1.3rem;animation-duration:10.4s;animation-delay:1.6s}
  @keyframes floatNote{0%{transform:translateY(0) rotate(0);opacity:0}15%{opacity:1}85%{opacity:1}100%{transform:translateY(-210px) rotate(35deg);opacity:0}}
  @media(max-width:560px){
    .actions{flex-wrap:wrap;gap:8px}
    .song-body .iconbtn{width:40px;height:40px;font-size:1.02rem}
    .actions .pp{padding:10px 18px;font-size:.9rem}
    .popx{width:40px;height:40px;font-size:.9rem}
    /* === פאנל הניהול במובייל (18.8) ===
       לשונית "שירים" הייתה שורת-פלקס של 6 עמודות בשורה אחת. ב-360px נשארו לכותרת ~85px
       (חתוכה ב-ellipsis) והכפתורים ירדו ל-~28px — מתחת לרף ה-40px של שאר המובייל בקובץ.
       עכשיו: הכותרת בשורה מלאה, הפעולות בשורה שנייה, יעדי-מגע 40px. אותם onclick בדיוק. */
    #adminPanel{padding:2vh 8px}
    #adminPanel .modalbox{width:100%;max-width:none;max-height:96vh;padding:14px 12px}
    .admsongrow{flex-wrap:wrap;gap:7px}
    .admsongrow .mn2{flex:1 1 100%}
    .admsongrow .mn2 b{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.35}
    .admsongrow .admsbtn{flex:1 1 0;min-width:44px;height:40px;padding:0;font-size:1rem;display:inline-flex;align-items:center;justify-content:center}
    .admmrow{flex-wrap:wrap}
    .admmrow span{white-space:normal;flex:1 1 100%}
    .admmbtn{min-height:38px;padding:8px 14px}
    .admtab{min-height:40px;padding:8px 13px}
    /* גלילה אחת (admtabbody) במקום שתיים מקוננות — בנייד המקוננת לוכדת את האצבע */
    .admmlist,.admsec .admmlist,.admsec .bannertoggles{max-height:none}
  }
  /* ===== שלב 3 (15.10): הנגן התחתון — שלושה אזורים: עטיפה+שם+זמר · פקדים+פס · כלים ===== */
  .dock{position:fixed;bottom:0;left:0;right:0;z-index:20;display:none;padding:10px 20px 12px;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-top:1px solid var(--line);box-shadow:0 -10px 34px rgba(0,0,0,.45)}
  [data-theme="light"] .dock{box-shadow:0 -10px 34px rgba(15,27,42,.09)}
  .dock.show{display:block}
  .dock-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,600px) minmax(0,1fr);align-items:center;gap:28px}
  .dinfo{display:flex;align-items:center;gap:12px;min-width:0}
  /* ‼️ 16.10 (משוב משתמש: "בנגן התמונה נחתכת"): כמו בכרטיס — עטיפות השירים הן תמונות יוטיוב רחבות, ובריבוע עם
     cover נחתכו הצדדים. מסגרת 16:9 והתמונה כולה (contain). ברדיו נשאר ריבוע — הלוגואים של התחנות ריבועיים */
  .nowart{width:88px;height:50px;flex-shrink:0;cursor:pointer}
  .dcover{display:block;width:88px;height:50px;border-radius:9px;object-fit:contain;background:var(--bg2);box-shadow:0 4px 14px rgba(15,27,42,.18),0 0 0 1px rgba(0,0,0,.05)}
  body.radio .nowart,body.radio .dcover{width:56px;height:56px}
  body.radio .dcover{border-radius:10px;object-fit:cover}
  .dmid{display:flex;flex-direction:column;gap:2px;min-width:0;flex:0 1 auto}
  .dtrow{display:flex;align-items:center;gap:8px;min-width:0}
  .dock .dtitle{font-weight:800;font-size:.95rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;cursor:pointer;min-width:0}
  .dartist{font-size:.82rem;font-weight:600;color:var(--muted);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;align-self:flex-start;max-width:100%}
  .dartist:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
  .dartist[hidden],body.radio .dartist{display:none}
  .dock .dnow{display:none;font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;line-height:1.3;max-width:100%}
  body.radio .dock .dnow{display:block}
  .dock .dnow.hasnp{color:color-mix(in srgb,var(--text) 78%,transparent)}
  .dlive,.nplive{direction:ltr;display:inline-flex;align-items:center;gap:5px;flex-shrink:0;background:#e5383b;color:#fff;font-weight:800;font-size:.64rem;letter-spacing:.06em;line-height:1;padding:4px 8px 4px 7px;border-radius:999px}
  .dlive{display:none}
  body.radio .dlive{display:inline-flex}
  .dlive i,.nplive i{width:6px;height:6px;border-radius:50%;background:#fff;animation:rtpulse 1.4s ease-in-out infinite}
  .dexp{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin-inline-start:2px;transition:background .12s,color .12s,border-color .12s}
  .dexp:hover{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}
  .dcenter{display:flex;flex-direction:column;gap:8px;min-width:0}
  .dctls{display:flex;align-items:center;justify-content:center;gap:10px}
  .dctl{background:none;border:0;color:var(--muted);cursor:pointer;padding:0;flex-shrink:0;text-decoration:none;line-height:1;font-family:inherit}
  .dctls .dctl,.dright .dctl,.dock .dclose{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:background .12s,color .12s}
  .dctls .dctl:hover,.dright .dctl:hover,.dock .dclose:hover{color:var(--text);background:color-mix(in srgb,var(--text) 7%,transparent)}
  .dctls .dctl.on,.dctls #drepall.r1{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent)}
  .dright .dctl.on{color:var(--accent)}
  /* 18.10: כפתור חזרה אחד (drepall, 3 מצבים) — "חזרה על שיר" הנפרד מוסתר */
  .dock #drepone{display:none}
  .dock .dpp{width:44px;height:44px;margin:0 6px;border:0;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 16px color-mix(in srgb,var(--accent2) 35%,transparent);transition:transform .12s}
  .dock .dpp:hover{transform:scale(1.05)}
  #dqueue{position:relative}
  .dctl[data-n]:not([data-n="0"])::after{content:attr(data-n);position:absolute;top:-4px;inset-inline-end:-4px;min-width:15px;height:15px;border-radius:var(--r-pill);background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-size:.6rem;font-weight:800;line-height:15px;text-align:center;padding:0 3px;box-sizing:border-box;pointer-events:none}
  body.radio #dqueue,body.radio #dbm{display:none}
  /* פס התקדמות (נגן תחתון + נגן מלא): עבה יותר, ידית, החלק שנטען, וזמן במעבר עכבר */
  .dock-seek{display:flex;align-items:center;gap:10px}
  .dock .dtime{font-size:.72rem;font-weight:600;color:var(--muted);min-width:34px;text-align:center;font-variant-numeric:tabular-nums}
  .dbar,.npbar{position:relative;flex:1;height:6px;border-radius:3px;background:color-mix(in srgb,var(--text) 11%,transparent);cursor:pointer;min-width:60px}
  .dbar::before,.npbar::before{content:"";position:absolute;inset:-8px 0}
  .dfill,.npfill{position:relative;z-index:3;height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,var(--accent2),var(--accent));pointer-events:none}
  .dfill::after,.npfill::after{content:"";position:absolute;top:50%;inset-inline-end:-7px;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.3),0 0 0 3px var(--accent);opacity:0;transition:opacity .15s}
  .dbar.hovering .dfill::after,.npfill::after{opacity:1}
  .pbuf,.phov{position:absolute;top:0;bottom:0;inset-inline-start:0;width:0;border-radius:3px;pointer-events:none}
  .pbuf{z-index:1;background:color-mix(in srgb,var(--text) 17%,transparent)}
  .phov{z-index:2;background:color-mix(in srgb,var(--accent) 30%,transparent);opacity:0}
  .ptip{position:absolute;bottom:14px;inset-inline-start:0;transform:translateX(50%);z-index:5;background:var(--text);color:var(--bg2);font-size:.7rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;padding:4px 7px;border-radius:7px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s;box-shadow:0 4px 12px rgba(0,0,0,.2)}
  .ptip::after{content:"";position:absolute;top:100%;left:50%;margin-left:-4px;border:4px solid transparent;border-top-color:var(--text)}
  .hovering .phov,.hovering .ptip{opacity:1}
  [dir="ltr"] .ptip{transform:translateX(-50%)}
  .dbar .nptick,.npbar .nptick{z-index:4}
  /* כלים בצד */
  .dright{display:flex;align-items:center;justify-content:flex-end;gap:2px;min-width:0}
  .dock #dspeed{width:auto;min-width:40px;height:30px;padding:0 9px;border:1px solid var(--line);border-radius:999px;font-size:.78rem;font-weight:700;color:var(--text)}
  /* ‼️ 18.10 (משוב משתמש: "אין עניין להראות את העוצמה, רק אם לוחץ"): בנגן התחתון רק אייקון רמקול;
     לחיצה פותחת חלונית קטנה עם הסרגל מעליו. לחיצה בחוץ או Esc סוגרות */
  .dvol{position:relative;display:flex;align-items:center;color:var(--muted)}
  .dvol.open .dvolbtn{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent)}
  .dvolpop{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);z-index:6;display:none;align-items:center;padding:12px 16px;border-radius:14px;background:var(--card);border:1px solid var(--line);box-shadow:0 10px 30px rgba(15,27,42,.18)}
  .dvol.open .dvolpop{display:flex}
  .dvolpop input{width:140px;accent-color:var(--accent);cursor:pointer}
  /* ‼️ 18.10 (משוב משתמש: "הכפתורים עולים אחד על השני"): בין 1101 ל-1365 פיקסלים כלי הצד (עוצמה, מהירות,
     "שמיעה", 15 שניות...) רחבים מהשליש שלהם וגלשו על כפתורי האמצע. כאן עמודת הצד ברוחב התוכן שלה (auto) */
  @media(max-width:1365px) and (min-width:1101px){
    .dock-main{grid-template-columns:minmax(200px,1fr) minmax(320px,480px) auto;gap:18px}
    .dctls{gap:6px}
  }
  @media(max-width:1100px) and (min-width:761px){
    .dock-main{grid-template-columns:minmax(0,1fr) minmax(300px,380px) auto;gap:14px}
    .dctls{gap:4px}
    .dock #dback,.dock #dfwd{display:none}
  }
  /* טלפון: שורה אחת — עטיפה, שם וזמר, "נגן" ו"הבא"; פס התקדמות דק בראש הנגן. כל השאר בנגן המלא */
  @media(max-width:760px){
    .dock{padding:9px 10px calc(9px + env(safe-area-inset-bottom)) 12px}
    .dock-main{display:flex;align-items:center;gap:4px}
    .dinfo{flex:1 1 auto;gap:11px}
    .nowart,.dcover{width:76px;height:43px;border-radius:8px}
body.radio .nowart,body.radio .dcover{width:48px;height:48px;border-radius:9px}
    .dmid{flex:1 1 auto}
    .dock .dtitle{font-size:.92rem}
    .dartist{font-size:.8rem;pointer-events:none}
    .dexp,.dright{display:none}
    .dcenter{flex:0 0 auto;flex-direction:row;align-items:center}
    .dctls{gap:2px}
    .dctls .dctl:not(#dnext){display:none}
    .dctls #dnext{width:44px;height:44px;color:var(--text)}
    .dock .dpp{width:46px;height:46px;margin:0}
    .dock-seek{position:absolute;top:-1px;left:0;right:0;height:3px;gap:0}
    .dock .dtime{display:none}
    .dock .dbar{height:3px;border-radius:0;min-width:0}
    .dock .dbar::before{inset:-6px 0}
    .dock .dfill{border-radius:0}
    .dock .dfill::after,.dock .ptip,.dock .phov{display:none}
    body.playing{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
  }
  /* ===== שלב 3: הנגן המלא — רקע מצבעי העטיפה (--nph/--nps מחושבים בדפדפן), עטיפה ריבועית גדולה ===== */
  /* z=190: מעל הפרומו (110) והסרגל (150); החלונות שנפתחים ממנו (תור, דיווח, קטגוריה) הם 200+ */
  .npfull{--nph:215;--nps:14%;position:fixed;inset:0;z-index:190;display:none;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;color:var(--text);background:var(--bg) radial-gradient(120% 75% at 50% -8%,hsl(var(--nph) var(--nps) 30%) 0%,hsl(var(--nph) var(--nps) 15%) 45%,var(--bg) 92%) fixed;animation:fadein .25s ease}
  [data-theme="light"] .npfull{background:var(--bg) radial-gradient(120% 75% at 50% -8%,hsl(var(--nph) var(--nps) 82%) 0%,hsl(var(--nph) var(--nps) 91%) 42%,var(--bg) 92%) fixed}
  .npfull.show{display:block}
  .npwrap{max-width:1040px;margin:0 auto;padding:14px 40px 44px;min-height:100%;box-sizing:border-box}
  .nptop{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;min-height:52px}
  .npclose,.npstop{width:44px;height:44px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);background:color-mix(in srgb,var(--card) 55%,transparent);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;backdrop-filter:blur(8px);transition:background .12s}
  .npclose:hover,.npstop:hover{background:var(--card)}
  .nplbl{text-align:center;font-size:.82rem;font-weight:800;color:var(--muted);letter-spacing:.02em}
  /* ‼️ 18.10 (סקירת UI): העטיפות הן תמונות יוטיוב 16:9 — במסגרת ריבועית נשארו פסים מטושטשים מעל ומתחת.
     המסגרת רחבה (16:9) כמו בכרטיס ובנגן התחתון; הרדיו (.nprart) נשאר ריבוע */
  .npmain{display:grid;grid-template-columns:420px minmax(0,1fr);gap:48px;align-items:center;margin-top:22px}
  .npart{width:420px;height:auto;aspect-ratio:16/9}
  /* איחוד (15.10): העטיפה כולה נראית (contain) על עותק מטושטש שלה — כמו בכרטיסי הרשימה (cover חתך עטיפות רחבות/עם טקסט).
     --npcv נקבע ב-setCovers */
  .npart{position:relative;border-radius:22px;overflow:hidden;background:var(--card);box-shadow:0 30px 60px -16px hsl(var(--nph) 45% 18% / .55),0 0 0 1px rgba(0,0,0,.05)}
  .npart::before{content:'';position:absolute;inset:0;background:var(--npcv,none) center/cover no-repeat;filter:blur(18px) brightness(.85) saturate(1.1);transform:scale(1.25)}
  .npcov{position:relative;display:block;width:100%;height:100%;object-fit:contain}
  .npbody{display:flex;flex-direction:column;gap:20px;min-width:0;max-width:560px}
  .nphead{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
  .nptitle{max-width:100%;font-size:2rem;font-weight:800;line-height:1.2;letter-spacing:-.01em;unicode-bidi:plaintext;text-align:right;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .npartist{max-width:100%;margin-top:6px;font-size:1.12rem;font-weight:700;color:var(--accent);text-decoration:none;unicode-bidi:plaintext;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .npartist:hover{text-decoration:underline;text-underline-offset:4px}
  .npmeta{margin-top:6px;font-size:.84rem;color:var(--muted);font-variant-numeric:tabular-nums}
  .npartist[hidden],.npmeta[hidden]{display:none}
  [dir="ltr"] .nptitle{text-align:left}
  .npbar{width:100%;flex:none}
  .nptime{display:flex;justify-content:space-between;margin-top:9px;font-size:.78rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
  .npmarks:empty{display:none}
  .npmarks{justify-content:flex-start;margin-top:-6px}
  .npctls,.nprctls{display:flex;align-items:center;justify-content:center;gap:22px}
  .npctls .dctl,.nprctls .dctl{width:52px;height:52px;border-radius:50%;border:0;background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:background .12s,color .12s}
  .npctls #npshuf,.npctls #nprepall{color:var(--muted)}
  .npctls .dctl:hover,.nprctls .dctl:hover{background:color-mix(in srgb,var(--text) 7%,transparent)}
  .npctls .dctl.on,.npctls #npshuf.on,.npctls #nprepall.on{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent)}
  .nppp{width:76px;height:76px;border:0;border-radius:50%;color:#fff;cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 12px 28px -6px color-mix(in srgb,var(--accent2) 55%,transparent);transition:transform .12s}
  .nppp:hover{transform:scale(1.04)}
  .nppp svg{width:32px;height:32px}
  /* שורה משנית: מה שירד מהנגן התחתון (15 שניות, מהירות, סימנייה, חזרה על שיר, תור, עוצמה) */
  .npsec{display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--card) 55%,transparent);border:1px solid color-mix(in srgb,var(--text) 8%,transparent);align-self:center;backdrop-filter:blur(8px);max-width:100%;box-sizing:border-box}
  .npsec .dctl{position:relative;width:40px;height:40px;border-radius:50%;background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;font-family:inherit;transition:background .12s,color .12s}
  .npsec .dctl:hover{background:color-mix(in srgb,var(--text) 8%,transparent)}
  .npsec .dctl.on{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent)}
  .npsec #nprepone{display:none} /* 18.10: החזרה על שיר אחד עברה לכפתור החזרה שבשורה הראשית (מחזור של 3 מצבים) */
  .npsec #npspeed{width:auto;min-width:46px;padding:0 10px;border-radius:999px;font-size:.84rem;font-weight:800}
  .npsep{width:1px;height:20px;background:color-mix(in srgb,var(--text) 14%,transparent);margin:0 6px;flex-shrink:0}
  .npsec .npvolw{display:flex;align-items:center;gap:7px;color:var(--muted);margin:0;padding:0 8px 0 4px}
  .npsec .npvolw input{width:110px}
  /* שורת פעולות — שם מתחת לכל אייקון */
  .npacts{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:2px;margin:2px 0 0;padding:0}
  .npact{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;padding:4px 0;margin:0;border:0;border-radius:12px;background:none;color:var(--text);text-decoration:none;cursor:pointer;font-family:inherit}
  .npact>svg{width:46px;height:46px;padding:12px;box-sizing:border-box;border-radius:50%;background:color-mix(in srgb,var(--card) 62%,transparent);border:1px solid color-mix(in srgb,var(--text) 9%,transparent);flex-shrink:0;transition:background .12s,color .12s,border-color .12s}
  .npact:hover>svg{background:var(--card);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
  .npact>span{max-width:100%;font-size:.74rem;font-weight:700;line-height:1.1;color:color-mix(in srgb,var(--text) 82%,transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .npact.fav.on{color:var(--text);border-color:transparent}
  .npact.fav.on>svg{color:#ff4d6d;border-color:color-mix(in srgb,#ff4d6d 45%,transparent)}
  .npact[hidden]{display:none}
  /* "הבא בתור" ו"עוד מהאמן" — במחשב מתחת לנגן, בטלפון בגלילה למטה */
  .nplists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px;align-items:start}
  .npsecl{min-width:0;padding:14px 12px 10px;border-radius:18px;background:color-mix(in srgb,var(--card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 8%,transparent);backdrop-filter:blur(10px)}
  .npsecl[hidden]{display:none}
  .npsech{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 6px 8px;min-width:0}
  .npsect{margin:0;padding:0;font-size:1rem;font-weight:800;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  .nplinks{display:flex;align-items:center;gap:14px;flex-shrink:0}
  .nplink{font:inherit;font-size:.8rem;font-weight:700;color:var(--accent);text-decoration:none;background:none;border:0;padding:8px 2px;cursor:pointer;flex-shrink:0}
  .nplink:hover{text-decoration:underline;text-underline-offset:3px}
  .nprows{display:flex;flex-direction:column}
  .nprow{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:7px 6px;border:0;border-radius:12px;background:none;color:var(--text);text-align:start;text-decoration:none;cursor:pointer;font-family:inherit;box-sizing:border-box}
  .nprow:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}
  .nprow>img{width:46px;height:46px;border-radius:9px;object-fit:cover;flex-shrink:0;background:color-mix(in srgb,var(--text) 8%,transparent)}
  .nprt{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
  .nprt b{font-size:.9rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;text-align:right}
  .nprt small{font-size:.78rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;text-align:right}
  [dir="ltr"] .nprt b,[dir="ltr"] .nprt small,[dir="ltr"] .nprname,[dir="ltr"] .nprnowt b{text-align:left}
  .nprd{font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}
  .npempty{margin:6px;color:var(--muted);font-size:.85rem}
  /* רדיו בנגן המלא: לוגו גדול עם LIVE, "משודר עכשיו", תחנה קודמת/הבאה, פעולות עם שמות, תחנות נוספות */
  .npradio{display:none}
  body.radio .npmain,body.radio .nplists{display:none}
  body.radio .npradio{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px 56px;align-items:center;margin-top:22px}
  .nprart{position:relative;width:300px;height:300px;border-radius:26px;background:#fff;box-shadow:0 30px 60px -16px hsl(var(--nph) 45% 18% / .45),0 0 0 1px rgba(0,0,0,.06);display:flex;align-items:center;justify-content:center;padding:30px;box-sizing:border-box}
  .nprart img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px}
  .nplive{position:absolute;top:16px;inset-inline-start:16px;font-size:.78rem;padding:6px 11px 6px 10px;box-shadow:0 4px 12px rgba(229,56,59,.35)}
  .nplive i{width:7px;height:7px}
  .nprbody{display:flex;flex-direction:column;gap:18px;min-width:0;max-width:560px}
  .nprkind{display:flex;align-items:center;gap:7px;font-size:.84rem;font-weight:700;color:var(--muted)}
  .nprkind svg{color:#e5383b}
  .nprname{font-size:2.1rem;font-weight:800;line-height:1.15;margin-top:-8px;unicode-bidi:plaintext;text-align:right}
  .nprnow{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:color-mix(in srgb,var(--card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 8%,transparent);backdrop-filter:blur(8px)}
  .npreq{display:flex;align-items:flex-end;gap:3px;height:20px;flex-shrink:0}
  .npreq i{width:4px;border-radius:2px;background:var(--accent);transform-origin:bottom;animation:npeq 1s ease-in-out infinite}
  .npreq i:nth-child(1){height:60%}
  .npreq i:nth-child(2){height:100%;animation-delay:-.4s}
  .npreq i:nth-child(3){height:45%;animation-delay:-.7s}
  .nprnow.idle .npreq i{animation-play-state:paused;opacity:.5}
  @keyframes npeq{50%{transform:scaleY(.4)}}
  .nprnowt{display:flex;flex-direction:column;gap:3px;min-width:0}
  .nprnowt small{font-size:.72rem;font-weight:700;color:var(--muted)}
  .nprnowt b{font-size:1.02rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;text-align:right}
  .nprctls{gap:26px}
  .nprmore{grid-column:1/-1;margin-top:22px}
  .nprgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .nprlogo{width:52px;height:52px;border-radius:10px;overflow:hidden;background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px rgba(0,0,0,.06)}
  .nprlogo img{width:100%;height:100%;object-fit:cover}
  .nprlogo.app img{object-fit:contain}
  .nprlogo.fav img{width:66%;height:66%;object-fit:contain}
  .nprtile small[hidden]{display:none}
  /* מסך בינוני */
  @media(max-width:1000px) and (min-width:761px){
    .npwrap{padding:14px 24px 40px}
    .npmain{grid-template-columns:300px minmax(0,1fr);gap:32px}
    .npart{width:300px;height:auto}
    body.radio .npradio{grid-template-columns:240px minmax(0,1fr);gap:20px 32px}
    .nprart{width:240px;height:240px}
    .nprgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  }
  /* טלפון: עטיפה גדולה למעלה, הכל בעמודה אחת; "הבא בתור" ו"עוד מהאמן" בגלילה */
  @media(max-width:760px){
    .npwrap{padding:8px 16px 32px}
    .npmain{grid-template-columns:minmax(0,1fr);gap:22px;margin-top:10px;justify-items:center}
    .npart{width:100%;max-width:520px;height:auto}
    .npbody{width:100%;max-width:none;gap:18px}
    .nptitle{font-size:1.42rem}
    .npartist{font-size:1rem;margin-top:4px}
    .npmeta{font-size:.78rem;margin-top:4px}
    .npctls{justify-content:space-between;gap:0;padding:0 4px}
    .nppp{width:72px;height:72px}
    .npsec{align-self:stretch;justify-content:space-between;padding:2px 6px}
    .npsec .npdsk,.npsec .npvolw{display:none}
    .npsec .dctl{width:44px;height:44px}
    .npsep{margin:0}
    .npacts{gap:0;margin-inline:-6px}
    .npact>svg{width:44px;height:44px;padding:11px}
    .npact>span{font-size:.7rem}
    .nplists{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:30px}
    body.radio .npradio{grid-template-columns:minmax(0,1fr);justify-items:center;gap:22px;margin-top:10px}
    .nprart{width:min(66vw,250px);height:min(66vw,250px);padding:24px}
    .nprbody{width:100%;max-width:none;gap:16px}
    .nprkind{justify-content:center}
    .nprname,[dir="ltr"] .nprname{font-size:1.6rem;margin-top:-6px;text-align:center}
    .nprmore{margin-top:8px;width:100%;box-sizing:border-box}
    .nprgrid{grid-template-columns:minmax(0,1fr)}
  }
  /* כפתור "עוד מהאמן" בחלון התור (#qMore) */
  .npmore{cursor:pointer;border:1px solid var(--line);background:var(--bg2);color:var(--text);font-weight:700;font-size:.9rem;padding:9px 18px;border-radius:var(--r-pill);font-family:inherit}
  .npmore:hover{border-color:var(--accent);color:var(--accent)}
  /* אנימציית כניסת כרטיס */
  /* אנימציית fadeup הוסרה — גרמה לכרטיסים להופיע "דהויים ואז מתחדדים" (הבהוב) בכל טעינה/רענון */
  /* באנר הסכמה */
  .consent{position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--bg2);border-top:1px solid var(--line);padding:13px 16px;display:none;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;font-size:.88rem;box-shadow:0 -4px 20px rgba(0,0,0,.3)}
  .consent.show{display:flex}
  /* כשהנגן פתוח — באנר ההסכמה יושב מעליו ולא מכסה אותו */
  body.playing .consent{bottom:96px}
  @media(max-width:560px){body.playing .consent{bottom:calc(178px + env(safe-area-inset-bottom))}}
  .consent a{color:var(--accent)}
  .consent button{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border:0;border-radius:10px;padding:9px 22px;min-height:40px;font-weight:700;cursor:pointer;font-family:inherit}
  @media(min-width:600px){.song{flex-direction:row}.cover-wrap{width:230px;aspect-ratio:auto;flex-shrink:0}}
  /* (כרטיס-הרשימה בתצוגה הרגילה — שלב 1, בבלוק "כרטיס השיר" בסוף) */
  /* === סבב UX 11.10 (בקשת משתמש "תתקן חי הכל") — CSS בלבד, אפס שאילתות === */
  /* (1) דף-שיר במובייל זז 43px הצידה: פריט ב"שירים קשורים" עם שם ארוך — פריט-flex נמתח לרוחב-התוכן
     (min-width:auto) ולכן ה-ellipsis של ה-<a> מעולם לא נכנס לפעולה */
  .related li{max-width:100%;min-width:0}
  /* (6) "קליפ" (= יש רק קליפ, אין אודיו) נראה ככפתור מושבת-מקווקו — עכשיו תווית שקטה */
  .cliponly{border:0;background:transparent;padding:4px 6px;font-size:.78rem}
  @media(max-width:560px){
    /* (4) ריווח בסוף הרשימה כדי שהצפים לא יסתירו את הכרטיס האחרון */
    main{padding-bottom:92px}
    /* (2) הכרטיס הקומפקטי בטלפון — מ-15.10 בבלוק "כרטיס השיר" (שלב 1) שבסוף */
  }
  /* (5) שתי עמודות במסך רחב — הוסר 11.10 לבקשת המשתמש ("לא סימטרי וצפוף"); המחשב נשאר בעמודה אחת */
  /* ===== שלב 1 (15.10): כרטיס השיר בתצוגת רשימה — עטיפה | שם + זמרים + שורת פרטים | פעולות =====
     מחשב: שורה אחת (~138px), עמודה אחת ברוחב 920px. טלפון: עטיפה 84px, ומתחת לטקסט שורת אייקונים בגודל אצבע.
     הכרטיס נבנה כך בשרת (renderCard) — אין שכבה ואין הזזת רכיבים בלקוח. דף השיר (.hero) וריבועים — בנפרד. */
  body:not(.gridview) #list>.song:not(.hero){display:grid;align-items:center;margin:0 0 8px;border-radius:16px;border:1px solid var(--line);box-shadow:0 1px 2px rgba(15,27,42,.04),0 2px 10px rgba(15,27,42,.05);transition:border-color .15s,box-shadow .15s,background-color .2s;contain-intrinsic-size:auto 138px}
  body:not(.gridview) #list>.song:not(.hero):hover{transform:none;border-color:color-mix(in srgb,var(--accent) 35%,var(--line));box-shadow:0 2px 4px rgba(15,27,42,.05),0 8px 22px rgba(15,27,42,.08)}
  html[data-theme="dark"] body:not(.gridview) #list>.song:not(.hero){box-shadow:0 1px 2px rgba(0,0,0,.25),0 4px 14px rgba(0,0,0,.22)}
  body:not(.gridview) #list>.song:not(.hero) .song-body{display:flex;flex-direction:column;justify-content:center;padding:0;min-width:0;grid-column:2;grid-row:1}
  body:not(.gridview) #list>.song:not(.hero)>.side{position:relative;min-width:0;display:flex;align-items:center}
  /* עטיפה ריבועית. ‼️ 15.10 (משוב משתמש): object-fit:cover חתך עטיפות רחבות (תמונות יוטיוב, עטיפות עם טקסט כמו "שבת שלום").
     עכשיו התמונה כולה נראית (contain), והשוליים מתמלאים בעותק מטושטש שלה — עדין יותר מהפסים הישנים.
     ‼️ 16.10 (משוב משתמש: "למה לא רואים את כל התמונה"): כמעט כל העטיפות הן תמונות יוטיוב 320×180, ובמסגרת
     ריבועית הן התכווצו לאמצע עם פסים מטושטשים מעל ומתחת. המסגרת עברה ל-16:9 — התמונה ממלאת אותה בדיוק */
  body:not(.gridview) #list>.song:not(.hero) .cover-wrap{grid-column:1;grid-row:1;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--bg2);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);margin:0}
  body:not(.gridview) #list>.song:not(.hero) .cover-bg{filter:blur(12px) brightness(.85) saturate(1.1);transform:scale(1.25)}
  body:not(.gridview) #list>.song:not(.hero) .cover,body:not(.gridview) #list>.song:not(.hero):hover .cover{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;transform:none}
  body:not(.gridview) #list>.song:not(.hero) .cover-wrap.nocover{background:color-mix(in srgb,var(--accent) 10%,var(--bg2));color:var(--accent)}
  body:not(.gridview) #list>.song:not(.hero) .cover-wrap.nocover>svg{width:40px;height:40px;opacity:.7}
  /* ריחוף על העטיפה (מחשב): כפתור נגן מעליה — לחיצה על העטיפה כבר מנגנת */
  body:not(.gridview) #list>.song:not(.hero) .cover-wrap::after{content:'';position:absolute;inset:0;z-index:2;background:rgba(10,14,21,.38) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='white'/%3E%3Cpath d='M10 8.2v7.6c0 .5.5.8.9.5l5.6-3.8c.4-.2.4-.8 0-1l-5.6-3.8c-.4-.3-.9 0-.9.5z' fill='%230f1b2a'/%3E%3C/svg%3E") center/38px no-repeat;opacity:0;transition:opacity .15s;pointer-events:none}
  @media(hover:hover){body:not(.gridview) #list>.song:not(.hero):has(.pp):not(.playing-card):not(:has(.ytd[open])) .cover-wrap:hover::after{opacity:1}}
  /* תגיות "חדש" / "מומלץ": קטנות, בלי אייקון */
  body:not(.gridview) #list>.song:not(.hero) .badge{top:6px;right:6px;left:auto;font-size:.62rem;line-height:1;padding:3px 7px;border-radius:6px;box-shadow:none;letter-spacing:.2px}
  body:not(.gridview) #list>.song:not(.hero) .badge:not(.pinbadge){background:#ff3b5c}
  body:not(.gridview) #list>.song:not(.hero) .badge.pinbadge{right:auto;left:6px}
  /* שם (עד 2 שורות), זמרים, שורת פרטים */
  body:not(.gridview) #list>.song:not(.hero) .song-body>h2{font-size:1.04rem;line-height:1.35;font-weight:800;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  body:not(.gridview) #list>.song:not(.hero) .arts{margin-top:1px}
  /* באנגלית (דף משמאל לימין) השם מיושר לתחילת העמודה גם כשהוא בעברית — כמו הזמרים ושורת הפרטים */
  html[dir="ltr"] #list>.song .song-body>h2{text-align:left}
  /* קרדיטים: נפתחים בתחתית הכרטיס (מחשב: הקישור "קרדיטים"; טלפון: מתוך ⋯) */
  body:not(.gridview) #list>.song:not(.hero)>.desc{display:none}
  body:not(.gridview) #list>.song.credopen:not(.hero)>.desc{display:block;grid-column:2/-1;grid-row:2;-webkit-line-clamp:unset;margin:10px 0 0;padding:10px 14px;border-radius:10px;background:var(--bg);color:var(--text);font-size:.82rem;line-height:1.65;overflow:visible;cursor:auto}
  html[data-theme="dark"] body:not(.gridview) #list>.song.credopen:not(.hero)>.desc{background:color-mix(in srgb,var(--text) 6%,transparent)}
  /* פעולות: נגן בולט, ואחריו אייקונים שקטים — נגן · הורדה (או קליפ) · מועדף · הבא בתור · ⋯ */
  body:not(.gridview) #list>.song:not(.hero) .actions{display:flex;align-items:center;flex-wrap:nowrap;gap:4px;margin:0}
  body:not(.gridview) #list>.song:not(.hero) .actions .pp{height:38px;padding:0 16px 0 18px;font-size:.88rem;gap:7px;flex:none;margin-inline-end:6px;box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 35%,transparent);transition:filter .15s,box-shadow .15s}
  body:not(.gridview) #list>.song:not(.hero) .actions .pp:hover{transform:none;filter:brightness(1.07);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 45%,transparent)}
  body:not(.gridview) #list>.song:not(.hero) .actions .pp svg{width:15px;height:15px}
  body:not(.gridview) #list>.song:not(.hero) .actions>.iconbtn,body:not(.gridview) #list>.song:not(.hero) .actions .morebtn{width:38px;height:38px;flex:none;border:0;background:transparent;box-shadow:none;color:var(--muted);border-radius:50%;padding:0}
  body:not(.gridview) #list>.song:not(.hero) .actions>.iconbtn:hover,body:not(.gridview) #list>.song:not(.hero) .actions .morebtn:hover,body:not(.gridview) #list>.song:not(.hero) .morewrap.open .morebtn{background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--accent);transform:none;box-shadow:none}
  body:not(.gridview) #list>.song:not(.hero) .actions>.iconbtn svg,body:not(.gridview) #list>.song:not(.hero) .actions .morebtn svg{width:20px;height:20px}
  body:not(.gridview) #list>.song:not(.hero) .actions .fav.on{color:#ff4d6d}
  body:not(.gridview) #list>.song:not(.hero) .actions .morewrap{flex:none}
  /* הקליפ נפתח בכרטיס ברוחב מלא (בלי שלב "הגדל"), השם והפעולות יורדים מתחתיו */
  body:not(.gridview) #list>.song:not(.hero) .clipzoom{display:none}
  body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]) .cover-wrap{grid-column:1/-1;grid-row:1;width:100%;height:auto;aspect-ratio:16/9;margin-bottom:12px}
  body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]) :is(.durchip,.badge,.eqbadge){display:none}
  body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]) .actions .clipwatch{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
  body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]) .song-body{grid-column:1/3;grid-row:2;min-height:0}
  body:not(.gridview) #list>.song:not(.hero):has(.ytd[open])>.side{grid-column:3;grid-row:2}
  body:not(.gridview) #list>.song.credopen:not(.hero):has(.ytd[open])>.desc{grid-row:3;grid-column:1/-1}
  /* השיר שמתנגן: מסגרת צבעונית, שם בצבע, ואקולייזר קטן על העטיפה */
  body:not(.gridview) #list>.song.playing-card:not(.hero){border-color:color-mix(in srgb,var(--accent) 70%,transparent);background:color-mix(in srgb,var(--accent) 5%,var(--card));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 70%,transparent),0 6px 20px color-mix(in srgb,var(--accent) 16%,transparent)}
  body:not(.gridview) #list>.song.playing-card:not(.hero) h2 a{color:var(--accent)}
  body:not(.gridview) #list>.song.playing-card:not(.hero):not(:has(.ytd[open])) .cover-wrap::before{content:'';position:absolute;inset:0;z-index:2;background:rgba(10,14,21,.42)}
  body:not(.gridview) #list>.song.playing-card:not(.hero) .eqbadge{inset-inline-end:auto;inset-inline-start:auto;bottom:auto;right:auto;top:50%;left:50%;transform:translate(-50%,-50%);height:22px;padding:0;gap:3px;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:3}
  body:not(.gridview) #list>.song.playing-card:not(.hero) .eqbadge i{width:4px}
  /* ===== מחשב: עטיפה | טקסט | פעולות ===== */
  @media(min-width:860px){
    /* הרשימה מעט רחבה יותר (860→920), כדי ששורת הפרטים המלאה תיכנס ליד עמודת הפעולות */
    body:not(.gridview) main#list{max-width:920px}
    body:not(.gridview) #list>.song:not(.hero){grid-template-columns:184px minmax(0,1fr) auto;column-gap:18px;padding:12px 14px 12px 12px}
    body:not(.gridview) #list>.song:not(.hero) .cover-wrap{width:184px;height:104px;align-self:center}
    body:not(.gridview) #list>.song:not(.hero) .song-body{min-height:104px}
    /* "נגן" ו"השהה" (וגם "טוען") באותו רוחב, כדי שהאייקונים שלידם לא יזוזו */
    body:not(.gridview) #list>.song:not(.hero) .actions .pp{min-width:96px;justify-content:center}
    body:not(.gridview) #list>.song.playing-card:not(.hero) .eqbadge{height:30px;gap:4px}
    body:not(.gridview) #list>.song.playing-card:not(.hero) .eqbadge i{width:5px}
    body:not(.gridview) #list>.song:not(.hero)>.side{grid-column:3;grid-row:1;align-self:center;justify-self:end}
    /* דירוג בריחוף: כוכבים קטנים מתחת לפעולות, בלי לתפוס מקום (הדירוג המלא — ב-⋯) */
    body:not(.gridview) #list>.song:not(.hero)>.side>.hrate{display:flex;position:absolute;top:calc(100% + 6px);inset-inline-end:4px;margin:0;gap:0;opacity:0;visibility:hidden;transition:opacity .15s}
    body:not(.gridview) #list>.song:not(.hero) .hrate .stars{font-size:1.05rem;letter-spacing:0}
    body:not(.gridview) #list>.song:not(.hero) .hrate .star{padding:2px}
  }
  @media(min-width:860px) and (hover:hover){
    body:not(.gridview) #list>.song:not(.hero):hover>.side>.hrate{opacity:1;visibility:visible}
    body:not(.gridview) #list>.song:not(.hero):has(.morewrap.open)>.side>.hrate{opacity:0;visibility:hidden}
  }
  /* ===== טלפון וטאבלט צר: עטיפה 84px | טקסט, ומתחת לטקסט שורת פעולות אחת בגודל אצבע ===== */
  @media(max-width:859px){
    /* 16.10: עטיפה רחבה 128×72 (16:9) — שורת הפעולות עוברת לרוחב מלא מתחת לעטיפה ולטקסט */
    body:not(.gridview) #list>.song:not(.hero){grid-template-columns:128px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:0;align-items:start;padding:10px;border-radius:14px;contain-intrinsic-size:auto 150px}
    body:not(.gridview) #list>.song:not(.hero) .cover-wrap{grid-row:1;width:128px;height:72px;border-radius:10px;align-self:start}
    body:not(.gridview) #list>.song:not(.hero) .cover-wrap::after{display:none}
    body:not(.gridview) #list>.song:not(.hero) .song-body{align-self:start;justify-content:flex-start}
    body:not(.gridview) #list>.song:not(.hero)>.side{grid-column:1/-1;grid-row:2;align-self:end;margin-top:8px}
    /* עמודת הטקסט צרה יותר ליד העטיפה הרחבה — "קליפ" בשורת הפרטים נחתך ל"ק"; נשאר רק האייקון */
    body:not(.gridview) #list>.song:not(.hero) .meta>.cliponly>span{display:none}
    body:not(.gridview) #list>.song:not(.hero)>.side>.actions{flex:1;gap:6px}
    body:not(.gridview) #list>.song:not(.hero) .song-body>h2{font-size:.95rem;line-height:1.3}
    body:not(.gridview) #list>.song:not(.hero) .arts{font-size:.8rem;line-height:1.4;margin-top:0}
    body:not(.gridview) #list>.song:not(.hero) .meta{font-size:.72rem;line-height:17px;margin-top:1px}
    body:not(.gridview) #list>.song:not(.hero) .meta>.dmeta~*::before{margin:0 5px}
    body:not(.gridview) #list>.song:not(.hero) .meta>.dmeta~.plays::before,body:not(.gridview) #list>.song:not(.hero) .meta>.dmeta~.mrt::before,body:not(.gridview) #list>.song:not(.hero) .meta>.dmeta~.cliponly::before{margin-inline-end:1px}
    body:not(.gridview) #list>.song:not(.hero) .row2,body:not(.gridview) #list>.song:not(.hero) .meta .mdur{display:none}
    /* המשך עובר לתג קטן על פינת העטיפה, וההשמעות למשולש + מספר — כך השורה לא נחתכת */
    body:not(.gridview) #list>.song:not(.hero) .durchip{display:block;position:absolute;left:4px;bottom:4px;z-index:3;padding:1px 5px;border-radius:5px;background:rgba(10,14,21,.7);color:#fff;font-size:.62rem;font-weight:700;line-height:15px;letter-spacing:.2px;pointer-events:none}
    body:not(.gridview) #list>.song:not(.hero) .plays .plw{display:none}
    body:not(.gridview) #list>.song:not(.hero) .plays .plico{display:inline-block}
    body:not(.gridview) #list>.song:not(.hero) .plays.one .pc{display:inline}
    html:not([data-datemode]) body:not(.gridview) #list>.song:not(.hero) .meta .d-heb,html:not([data-datemode]) body:not(.gridview) #list>.song:not(.hero) .meta .d-par{display:none}
    /* "נגן" = עיגול עם משולש, בלי המילה (גם בטעינה — רק העיגול המסתובב) */
    body:not(.gridview) #list>.song:not(.hero) .actions .pp{width:40px;height:40px;min-width:0;padding:0;justify-content:center;border-radius:50%;margin:0;margin-inline-end:2px}
    body:not(.gridview) #list>.song:not(.hero) .actions .pp>span{display:none}
    body:not(.gridview) #list>.song:not(.hero) .actions .pp svg{width:17px;height:17px}
    body:not(.gridview) #list>.song:not(.hero) .actions>.iconbtn,body:not(.gridview) #list>.song:not(.hero) .actions .morebtn{width:40px;height:40px}
    body:not(.gridview) #list>.song:not(.hero) .actions>.iconbtn svg,body:not(.gridview) #list>.song:not(.hero) .actions .morebtn svg{width:21px;height:21px}
    body:not(.gridview) #list>.song:not(.hero) .actions .morewrap{margin-inline-start:auto;margin-inline-end:-6px}
    body:not(.gridview) #list>.song:not(.hero) .badge{top:4px;right:4px;font-size:.58rem;padding:2px 6px}
    body:not(.gridview) #list>.song:not(.hero) .badge.pinbadge{right:auto;left:4px}
    /* עטיפה של 84px צרה לשתי תגיות זו ליד זו (באנגלית "Featured" נחתך) — "מומלץ" יורד מתחת ל"חדש" */
    body:not(.gridview) #list>.song:not(.hero) .badge.pinbadge:has(+.badge){left:auto;right:4px;top:22px}
    body:not(.gridview) #list>.song.credopen:not(.hero)>.desc{grid-column:1/-1;grid-row:3;margin-top:10px;padding:8px 12px}
    body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]) .song-body{grid-column:1/-1}
    body:not(.gridview) #list>.song:not(.hero):has(.ytd[open])>.side{grid-column:1/-1;grid-row:3}
    body:not(.gridview) #list>.song.credopen:not(.hero):has(.ytd[open])>.desc{grid-row:4}
  }
  /* ===== טלפון: ה-⋯ כחלונית שעולה מלמטה (כותרת עם עטיפה ושם; שורות גדולות לאצבע) ===== */
  @media(max-width:599px){
    /* איחוד (15.10): הכרטיס לא מורם (z-index:auto — לא stacking context), אחרת הוא עלה מעל שורת החיפוש הדביקה;
       הרקע המוחשך והחלונית (fixed, 9001/9002) עולים מעל הכול בעצמם. אותה חלונית גם לכרטיסי הפרקים בפודקאסטים */
    :is(#list,#podlist .podfeed)>.song:has(.morewrap.open){z-index:auto}
    :is(#list,#podlist .podfeed)>.song .morewrap.open::before{content:'';position:fixed;inset:0;z-index:9001;background:rgba(10,14,21,.48);animation:fadein .18s ease}
    :is(#list,#podlist .podfeed)>.song .morewrap.open .moremenu{position:fixed;top:auto;bottom:0;left:0;right:0;inset-inline-end:0;z-index:9002;min-width:0;width:100%;max-height:82vh;overflow-y:auto;box-sizing:border-box;border:0;border-radius:22px 22px 0 0;padding:8px 10px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -10px 40px rgba(0,0,0,.25);animation:sheetup .24s cubic-bezier(.2,.8,.2,1)}
    :is(#list,#podlist .podfeed)>.song .morewrap.open .moremenu::before{content:'';display:block;width:40px;height:4px;border-radius:4px;background:var(--line);margin:2px auto 6px;flex:none}
    :is(#list,#podlist .podfeed)>.song .mmh{display:flex;align-items:center;gap:12px;padding:6px 8px 12px;border-bottom:1px solid var(--line);margin-bottom:6px;flex:none}
    :is(#list,#podlist .podfeed)>.song .mmh-cv{width:56px;height:56px;border-radius:10px;object-fit:contain;flex:none;background:var(--bg2)}
    :is(#list,#podlist .podfeed)>.song .mmh-tx{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
    :is(#list,#podlist .podfeed)>.song .mmh-t{font-size:1rem;font-weight:800;line-height:1.3;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
    :is(#list,#podlist .podfeed)>.song .mmh-a{font-size:.84rem;font-weight:600;color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    :is(#list,#podlist .podfeed)>.song .mmh-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}
    :is(#list,#podlist .podfeed)>.song .moremenu .iconbtn{height:50px;font-size:.97rem;gap:16px;padding:0 12px;border-radius:12px}
    :is(#list,#podlist .podfeed)>.song .moremenu .iconbtn svg{width:22px;height:22px}
    :is(#list,#podlist .podfeed)>.song .mrate{min-height:54px;padding:0 12px 0 6px}
    :is(#list,#podlist .podfeed)>.song .mlbl{font-size:.97rem;gap:16px}
    :is(#list,#podlist .podfeed)>.song .mlbl svg{width:22px;height:22px}
    :is(#list,#podlist .podfeed)>.song .mrate .stars{font-size:1.75rem}
    :is(#list,#podlist .podfeed)>.song .mrate .star{padding:6px 4px}
  }
  /* "קרדיטים" ב-⋯ רק בכרטיס-רשימה צר (במחשב יש קישור מתחת לפרטים; באריח הקרדיטים לא מוצגים) */
  #list>.song .moremenu .crdbtn{display:none}
  @media(max-width:859px){body:not(.gridview) #list>.song:not(.hero) .moremenu .crdbtn{display:inline-flex}}
  @keyframes sheetup{from{transform:translateY(100%)}to{transform:none}}
  /* ===== דף השיר (כרטיס-הגיבור, h1): אותו תוכן, פריסה גדולה — עטיפה בצד, שם/פרטים, פעולות, קרדיטים ===== */
  #list>.song.hero>.side{padding:0 16px 14px}
  #list>.song.hero>.desc{margin:0 16px 14px}
  #list>.song.hero .song-body{padding-bottom:8px}
  #list>.song.hero .row2{margin-top:8px}
  /* 18.10: בטלפון העטיפה ברוחב מלא, ביחס 16:9 בדיוק (בלי פסים מעל ומתחת) */
  @media(max-width:599px){#list>.song.hero:not(.clipbig) .cover-wrap{width:100%;height:auto;min-height:0;aspect-ratio:16/9}}
  @media(min-width:600px){
    body:not(.gridview) #list>.song.hero,body.gridview #list>.song.hero{display:grid;grid-template-columns:230px minmax(0,1fr);grid-template-rows:auto auto 1fr}
    #list>.song.hero .cover-wrap{grid-column:1;grid-row:1/4;width:230px;height:100%;min-height:200px}
    /* ‼️ 18.10 (סקירת UI): עטיפה 230px בגובה הכרטיס = פסים אפורים מעל ומתחת לתמונת יוטיוב, ושטח ריק מתחת לכפתורים.
       עכשיו מסגרת 16:9 (300×169) עם שוליים, כמו בכרטיסי הרשימה, והכרטיס בגובה התוכן */
    body:not(.gridview) #list>.song.hero,body.gridview #list>.song.hero{grid-template-columns:328px minmax(0,1fr);grid-template-rows:auto auto auto;align-items:start}
    #list>.song.hero:not(.clipbig) .cover-wrap{width:300px;height:auto;min-height:0;aspect-ratio:16/9;align-self:start;margin:14px;border-radius:12px}
    #list>.song.hero .song-body{padding-top:14px}
    #list>.song.hero .song-body{grid-column:2;grid-row:1}
    #list>.song.hero>.side{grid-column:2;grid-row:2}
    #list>.song.hero>.desc{grid-column:2;grid-row:3;align-self:start}
    #list>.song.hero.clipbig{grid-template-columns:minmax(0,1fr)}
    #list>.song.hero.clipbig .cover-wrap{grid-column:1;grid-row:1;width:100%;height:auto;min-height:0}
    #list>.song.hero.clipbig .song-body,#list>.song.hero.clipbig>.side,#list>.song.hero.clipbig>.desc{grid-column:1;grid-row:auto}
  }
  /* שלד הטעינה בצורת הכרטיס */
  body:not(.gridview) #list>.song.skel:not(.hero) .skel-cover{grid-column:1;grid-row:1/3;aspect-ratio:1/1;width:100%;border-radius:12px}
  body:not(.gridview) #list>.song.skel:not(.hero) .skel-actions{margin:0}
  body:not(.gridview) #list>.song.skel:not(.hero) .skel-line{margin:6px 0}
  @media(max-width:859px){body:not(.gridview) #list>.song.skel:not(.hero) .skel-actions .skel-pill{width:40px;height:40px;border-radius:50%}body:not(.gridview) #list>.song.skel:not(.hero) .skel-dot{width:40px;height:40px}}
  body.gridview #list>.song.skel>.side{padding:8px 10px 0}
  /* ===== איחוד (15.10): כרטיס פרק בפודקאסטים = אותו כרטיס כמו ברשימת השירים (שלב 1) =====
     עטיפה ריבועית שלמה (contain על רקע מטושטש) | שם + תוכנית + שורת פרטים | אותה שורת פעולות. בלוק נפרד כדי לא לגעת בכללי השירים. */
  body:not(.gridview) #podlist{max-width:920px}
  body:not(.gridview) #podlist .podfeed>.song{display:grid;align-items:center;margin:0 0 8px;border-radius:16px;border:1px solid var(--line);box-shadow:0 1px 2px rgba(15,27,42,.04),0 2px 10px rgba(15,27,42,.05);contain-intrinsic-size:auto 138px}
  body:not(.gridview) #podlist .podfeed>.song:hover{transform:none;border-color:color-mix(in srgb,var(--accent) 35%,var(--line));box-shadow:0 2px 4px rgba(15,27,42,.05),0 8px 22px rgba(15,27,42,.08)}
  html[data-theme="dark"] body:not(.gridview) #podlist .podfeed>.song{box-shadow:0 1px 2px rgba(0,0,0,.25),0 4px 14px rgba(0,0,0,.22)}
  body:not(.gridview) #podlist .podfeed>.song .song-body{display:flex;flex-direction:column;justify-content:center;padding:0;min-width:0;grid-column:2;grid-row:1}
  body:not(.gridview) #podlist .podfeed>.song>.side{position:relative;min-width:0;display:flex;align-items:center}
  body:not(.gridview) #podlist .podfeed>.song .cover-wrap{grid-column:1;grid-row:1;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--bg2);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);margin:0}
  body:not(.gridview) #podlist .podfeed>.song .cover-bg{filter:blur(12px) brightness(.85) saturate(1.1);transform:scale(1.25)}
  body:not(.gridview) #podlist .podfeed>.song .cover,body:not(.gridview) #podlist .podfeed>.song:hover .cover{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;transform:none}
  body:not(.gridview) #podlist .podfeed>.song .song-body>h2{font-size:1.04rem;line-height:1.35;font-weight:800;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  #podlist .arts .podshowtag{background:none;padding:0;border-radius:0;color:var(--accent);font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}
  #podlist .arts .podshowtag:hover{background:none;text-decoration:underline;text-underline-offset:3px}
  body:not(.gridview) #podlist .podfeed>.song>.desc{display:none}
  body:not(.gridview) #podlist .podfeed>.song.credopen>.desc{display:block;grid-column:2/-1;grid-row:2;-webkit-line-clamp:unset;margin:10px 0 0;padding:10px 14px;border-radius:10px;background:var(--bg);color:var(--text);font-size:.82rem;line-height:1.65;overflow:visible;cursor:auto}
  html[data-theme="dark"] body:not(.gridview) #podlist .podfeed>.song.credopen>.desc{background:color-mix(in srgb,var(--text) 6%,transparent)}
  body:not(.gridview) #podlist .podfeed>.song .actions{display:flex;align-items:center;flex-wrap:nowrap;gap:4px;margin:0}
  body:not(.gridview) #podlist .podfeed>.song .actions .podpp{height:38px;padding:0 16px 0 18px;font-size:.88rem;gap:7px;flex:none;margin-inline-end:6px;justify-content:center;box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 35%,transparent);transition:filter .15s,box-shadow .15s}
  body:not(.gridview) #podlist .podfeed>.song .actions .podpp:hover{transform:none;filter:brightness(1.07)}
  body:not(.gridview) #podlist .podfeed>.song .actions .podpp svg{width:15px;height:15px}
  body:not(.gridview) #podlist .podfeed>.song .actions>.iconbtn,body:not(.gridview) #podlist .podfeed>.song .actions .morebtn{width:38px;height:38px;flex:none;border:0;background:transparent;box-shadow:none;color:var(--muted);border-radius:50%;padding:0}
  body:not(.gridview) #podlist .podfeed>.song .actions>.iconbtn:hover,body:not(.gridview) #podlist .podfeed>.song .actions .morebtn:hover,body:not(.gridview) #podlist .podfeed>.song .morewrap.open .morebtn{background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--accent);transform:none;box-shadow:none}
  body:not(.gridview) #podlist .podfeed>.song .actions>.iconbtn svg,body:not(.gridview) #podlist .podfeed>.song .actions .morebtn svg{width:20px;height:20px}
  body:not(.gridview) #podlist .podfeed>.song .actions .fav.on{color:#ff4d6d}
  body:not(.gridview) #podlist .podfeed>.song .actions .morewrap{flex:none}
  body:not(.gridview) #podlist .podfeed>.song .clipzoom{display:none}
  body:not(.gridview) #podlist .podfeed>.song:has(.ytd[open]) .cover-wrap{grid-column:1/-1;grid-row:1;width:100%;height:auto;aspect-ratio:16/9;margin-bottom:12px}
  body:not(.gridview) #podlist .podfeed>.song:has(.ytd[open]) .eqbadge{display:none}
  body:not(.gridview) #podlist .podfeed>.song:has(.ytd[open]) .song-body{grid-column:1/3;grid-row:2;min-height:0}
  body:not(.gridview) #podlist .podfeed>.song:has(.ytd[open])>.side{grid-column:3;grid-row:2}
  body:not(.gridview) #podlist .podfeed>.song.credopen:has(.ytd[open])>.desc{grid-row:3;grid-column:1/-1}
  body:not(.gridview) #podlist .podfeed>.song.playing-card{border-color:color-mix(in srgb,var(--accent) 70%,transparent);background:color-mix(in srgb,var(--accent) 5%,var(--card));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 70%,transparent),0 6px 20px color-mix(in srgb,var(--accent) 16%,transparent)}
  body:not(.gridview) #podlist .podfeed>.song.playing-card h2 a{color:var(--accent)}
  body:not(.gridview) #podlist .podfeed>.song.playing-card:not(:has(.ytd[open])) .cover-wrap::before{content:'';position:absolute;inset:0;z-index:2;background:rgba(10,14,21,.42)}
  body:not(.gridview) #podlist .podfeed>.song.playing-card .eqbadge{inset-inline-end:auto;inset-inline-start:auto;bottom:auto;right:auto;top:50%;left:50%;transform:translate(-50%,-50%);height:22px;padding:0;gap:3px;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:3}
  body:not(.gridview) #podlist .podfeed>.song.playing-card .eqbadge i{width:4px}
  @media(min-width:860px){
    body:not(.gridview) #podlist .podfeed>.song{grid-template-columns:112px minmax(0,1fr) auto;column-gap:18px;padding:12px 14px 12px 12px}
    body:not(.gridview) #podlist .podfeed>.song .cover-wrap{width:112px;height:112px;align-self:center}
    body:not(.gridview) #podlist .podfeed>.song .song-body{min-height:112px}
    body:not(.gridview) #podlist .podfeed>.song .actions .podpp{min-width:96px}
    body:not(.gridview) #podlist .podfeed>.song.playing-card .eqbadge{height:30px;gap:4px}
    body:not(.gridview) #podlist .podfeed>.song.playing-card .eqbadge i{width:5px}
    body:not(.gridview) #podlist .podfeed>.song>.side{grid-column:3;grid-row:1;align-self:center;justify-self:end}
  }
  @media(max-width:859px){
    body:not(.gridview) #podlist .podfeed>.song{grid-template-columns:84px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:0;align-items:start;padding:10px;border-radius:14px;contain-intrinsic-size:auto 122px}
    body:not(.gridview) #podlist .podfeed>.song .cover-wrap{grid-row:1/3;width:84px;height:84px;border-radius:10px;align-self:start}
    body:not(.gridview) #podlist .podfeed>.song .song-body{align-self:start;justify-content:flex-start}
    body:not(.gridview) #podlist .podfeed>.song>.side{grid-column:2;grid-row:2;align-self:end;margin-top:4px}
    body:not(.gridview) #podlist .podfeed>.song>.side>.actions{flex:1;gap:6px}
    body:not(.gridview) #podlist .podfeed>.song .song-body>h2{font-size:.95rem;line-height:1.3}
    body:not(.gridview) #podlist .podfeed>.song .arts{font-size:.8rem;line-height:1.4}
    body:not(.gridview) #podlist .podfeed>.song .meta{font-size:.72rem;line-height:17px;margin-top:1px}
    body:not(.gridview) #podlist .podfeed>.song .meta>.dmeta~*::before{margin:0 5px}
    body:not(.gridview) #podlist .podfeed>.song .plays .plw{display:none}
    body:not(.gridview) #podlist .podfeed>.song .plays .plico{display:inline-block}
    body:not(.gridview) #podlist .podfeed>.song .plays.one .pc{display:inline}
    html:not([data-datemode]) body:not(.gridview) #podlist .podfeed>.song .meta .d-heb,html:not([data-datemode]) body:not(.gridview) #podlist .podfeed>.song .meta .d-par{display:none}
    body:not(.gridview) #podlist .podfeed>.song .actions .podpp{width:40px;height:40px;min-width:0;padding:0;border-radius:50%;margin:0;margin-inline-end:2px}
    body:not(.gridview) #podlist .podfeed>.song .actions .podpp>span{display:none}
    body:not(.gridview) #podlist .podfeed>.song .actions .podpp svg{width:17px;height:17px}
    body:not(.gridview) #podlist .podfeed>.song .actions>.iconbtn,body:not(.gridview) #podlist .podfeed>.song .actions .morebtn{width:40px;height:40px}
    body:not(.gridview) #podlist .podfeed>.song .actions>.iconbtn svg,body:not(.gridview) #podlist .podfeed>.song .actions .morebtn svg{width:21px;height:21px}
    body:not(.gridview) #podlist .podfeed>.song .actions .morewrap{margin-inline-start:auto;margin-inline-end:-6px}
    body:not(.gridview) #podlist .podfeed>.song.credopen>.desc{grid-column:1/-1;grid-row:3;margin-top:10px;padding:8px 12px}
    body:not(.gridview) #podlist .podfeed>.song:has(.ytd[open]) .song-body{grid-column:1/-1}
    body:not(.gridview) #podlist .podfeed>.song:has(.ytd[open])>.side{grid-column:1/-1;grid-row:3}
  }
  /* ריבועים בפודקאסטים: אותו מבנה חדש (.side, שורת פרטים אחת).
     ‼️ באג ותיק (גם בחי): body.gridview #list{display:grid} בא אחרי body.podmode #list{display:none} ובאותה ספציפיות —
     בריבועים + פודקאסטים רשת השירים נשארה גלויה מעל הפרקים */
  body.gridview.podmode #list{display:none}
  body.gridview .podfeed .song>.side{margin-top:auto;padding:8px 10px 0;display:flex}
  body.gridview .podfeed .song .actions{margin:0;padding:0;flex:1;min-width:0}
  body.gridview .podfeed .meta:has(>.dmeta)>span:last-child{flex-basis:auto}
  html:not([data-datemode]) body.gridview .podfeed .meta .d-heb,html:not([data-datemode]) body.gridview .podfeed .meta .d-par{display:none}
  body.gridview .podfeed .song>.desc,body.gridview .podfeed .row2,body.gridview .podfeed .meta>.cliponly{display:none}
  body.gridview .podfeed .arts{font-size:.78rem}
  body.gridview .podfeed .podpp svg{width:14px;height:14px}
  body.gridview .podfeed .song .actions>.iconbtn,body.gridview .podfeed .song .actions .morebtn{border:0;background:transparent;box-shadow:none;color:var(--muted)}
  body.gridview .podfeed .song .actions>.iconbtn:hover,body.gridview .podfeed .song .actions .morebtn:hover{background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--accent);transform:none}
  body.gridview .podfeed .song .actions .morewrap{margin-inline-start:auto}
  body.gridview .podfeed .song .podpp{height:36px;padding:0 14px;box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 30%,transparent)}
  @media(max-width:560px){
    body.gridview .podfeed .song>.side{padding:6px 6px 0}
    body.gridview .podfeed .song .actions{gap:0;flex-wrap:nowrap;justify-content:space-between}
    body.gridview .podfeed .song .podpp{width:40px;height:40px;min-width:0;padding:0;justify-content:center;border-radius:50%;flex:none}
    body.gridview .podfeed .song .podpp>span{display:none}
    body.gridview .podfeed .song .actions .morewrap{margin-inline-start:0}
    body.gridview .podfeed .song .actions>.iconbtn,body.gridview .podfeed .song .actions .morebtn{width:36px;height:40px;border:0;background:transparent;box-shadow:none}
    body.gridview .podfeed .plays .plw{display:none}
    body.gridview .podfeed .plays .plico{display:inline-block}
    body.gridview .podfeed .plays.one .pc{display:inline}
    body.gridview .podfeed .meta .mdur{display:none}
  }
  /* ===== סוף כרטיס הפרק ===== */
  /* stage 6 */
  /* שלב 6 (15.10) — ליטוש ועקביות: סקאלה אחת (טקסט/פינות/צללים), ניגודיות, סט אייקונים אחד.
     בלוק אחד בלבד; עריכות במקום רק כשאין ברירה. */
  :root{--fs-h:1.08rem;--fs-note:.82rem;--fs-row:.92rem;--fs-input:.92rem;--sh-pop:0 24px 60px rgba(0,0,0,.22),0 2px 8px rgba(0,0,0,.08);--accent-ink:var(--accent);--on-accent:#fff}
  [data-theme="dark"]{--sh-pop:0 24px 60px rgba(0,0,0,.5),0 2px 8px rgba(0,0,0,.3)}
  /* 1. כותרת אחידה לכל חלון: אייקון בריבוע צבעוני (.phico) + שם, באותו גודל ומשקל */
  .modalhead b,.toolpop .pophead b{flex:1;min-width:0;display:flex;align-items:center;gap:9px;font-size:var(--fs-h);font-weight:800;line-height:1.3}
  .modalhead b>span:not(.phico),.toolpop .pophead b>span:not(.phico){min-width:0;overflow:hidden;text-overflow:ellipsis}
  .modalhead{gap:8px}
  /* כפתור סגירה אחד: עיגול עם מסגרת, כמו ב"מרכז שמיעה" ו"עיצוב" */
  .modalhead button:not(.plvisbtn):not(.admrefresh),.popx{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg2);color:var(--muted);border:1px solid var(--line);box-sizing:border-box;transition:color .12s,border-color .12s,background .12s}
  .modalhead button:not(.plvisbtn):not(.admrefresh):hover,.popx:hover{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}
  @media(max-width:560px){.modalhead button:not(.plvisbtn):not(.admrefresh),.popx{width:40px;height:40px}}
  /* "פרטי / ציבורי" בכותרת הפלייליסט: היה נדחס לעיגול 36px של כפתור הסגירה (all:unset), והאייקון נחתך */
  .modalhead .plvisbtn{flex:none;width:auto;height:32px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--bg2);color:var(--muted);font-size:.8rem;font-weight:700;cursor:pointer}
  .modalhead .plvisbtn.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
  .popdesc,.radionote{font-size:var(--fs-note);line-height:1.5}
  /* פינות וצללים: כל החלונות הצפים באותה פינה (--r-xl) ובאותו צל */
  .toolpop:not(.lcpop),.modalbox{border-radius:var(--r-xl);box-shadow:var(--sh-pop)}
  /* שדות קלט, כפתורי בחירה ושורות ברשימות של החלונות: גודל אחד ופינה אחת (היו 10/11/12px ו-14.4–16px) */
  #artistq,#songq,#podsq,.catpop #catSearch,#tpSearch,#tpNewName,.sginp,.plnewrow input{font-size:var(--fs-input);border-radius:var(--r-md)}
  .asortbtn,.ssortbtn,.psortbtn,.pltab,.dpcalbtn,.dpacts button,.plnewrow button,.tpnewrow button,.plfromfav{border-radius:var(--r-md)}
  #artistlist>*,#songlist>*,#podslist>*,.myrow .mn,.acrow{font-size:var(--fs-row)}
  /* 2. סט אייקונים אחד: אייקוני-הקו שהומרו מסמלים (קטגוריות, מזג אוויר, טקסטים) מקבלים את צבע הטקסט,
     כמו אייקוני הספרייה (#i-…). סמלים בתוך *שמות שירים* הם תוכן — נשארים בצבעם (וההעדפה "בלי סמלים בשמות" חלה עליהם). */
  .liwrap:not(:is(.song h2,.song .title,.dtitle,.nptitle,.rstitle,.songlink,.mn,.nrt,.acrow,.tpctx,.repctx,#plhName,#plDetName,.rtnow,.rhsong,.dnow) .liwrap) svg{stroke:currentColor}
  .tagchip .liwrap,.catchip .liwrap,.tpe .liwrap,.repchip .liwrap,#tagName .liwrap,.infobar .liwrap{opacity:.85}
  /* כפתורים שקיבלו אייקון קו + טקסט במקום סמל */
  .pldetacts button,.plh-actions button,.pltab,.plnewrow button,.plfromfav,.plvisbtn,#repSend,#qMore,.syncbtn,.bmadd,.rtcnt,.addpltitle,#sgSend,.syncok{display:inline-flex;align-items:center;justify-content:center;gap:7px}
  .addpltitle{justify-content:flex-start}
  .syncbtn,.bmadd,#sgSend,.plfromfav,.pltab{display:flex}
  .syncbtn svg,.pldetacts svg,.plh-actions svg,.pltab svg,.plnewrow svg,.plfromfav svg,#repSend svg,#qMore svg,#sgSend svg,.bmadd svg{flex:none}
  #qMore{margin:0 auto 10px}
  #sgSend{margin-top:4px;justify-content:center;background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:700}
  #sgSend:hover{filter:brightness(1.06)}
  .fpill .fpico{flex:none;color:var(--accent-ink);margin-inline-start:2px}
  .plh-top .plh-ic{width:36px;height:36px;font-size:1rem}
  .acico{display:inline-flex;flex:none;color:var(--muted)}
  .recolearn .rlemoji{color:var(--accent-ink)}
  .mcount{display:inline-flex;align-items:center;gap:4px}
  .plvislbl{display:inline-flex;color:var(--muted)}
  .myb svg,.tpx svg,.rlink svg{pointer-events:none}
  .tprow.tpcur .tpx{display:inline-flex}
  .npmark svg,.bmitem svg{flex:none}
  .npmark .x{display:inline-flex;padding:2px}
  .bmitem .bt,.bmitem .bj{display:inline-flex;align-items:center;gap:5px}
  .bmitem .bx{display:inline-flex;align-items:center}
  .bmpop h4 .bmht{display:inline-flex;align-items:center;gap:8px;min-width:0}
  .bmpop h4 .bmht svg{color:var(--accent-ink);flex:none}
  .rtcnt svg{flex:none}
  #podlist .podbar .chip svg{flex:none}
  #podlist .podbar .chip.old svg{transform:scaleY(-1)}
  /* 3. ניגודיות (WCAG AA: 4.5 לטקסט, 3 לאייקונים). נמדד על הדף: הטורקיז הבהיר #0d9488 נתן 3.7 גם כטקסט על לבן
     וגם כרקע לטקסט לבן (כפתור "נגן", בוררים, שמות זמרים, kbps). גוון כהה במעט של אותו צבע עובר את שניהם. */
  [data-theme="light"]{--accent:#0f766e;--star:#d97706}
  [data-theme="light"][data-accent="purple"]{--accent:#8b3fd9;--accent2:#c0267a;--accent3:#a3307a}
  [data-theme="light"][data-accent="gold"]{--accent:#9a6700;--accent2:#c2410c;--accent3:#be123c}
  [data-theme="light"][data-accent="green"]{--accent:#047857;--accent2:#2563eb;--accent3:#0e7490}
  [data-theme="light"][data-accent="rose"]{--accent:#c2185b;--accent2:#7e22ce;--accent3:#6d47f0}
  /* ראש הדף בבהיר: אותו מראה, תערובת מעט בהירה יותר (הטורקיז נעשה כהה) + כתובית כהה יותר (היה 2.7–3.3) */
  [data-theme="light"] header{background-image:linear-gradient(135deg,color-mix(in srgb,var(--accent) 66%,#fff),color-mix(in srgb,var(--accent2) 64%,#fff) 50%,color-mix(in srgb,var(--accent3) 72%,#fff))}
  [data-theme="light"] header .brand small{color:#1b2638}
  [data-theme="light"] header .infobar{color:#1b2638}
  /* כהה: טקסט/אייקון לבן על הטורקיז הבהיר נתן 1.8. על מילוי בצבע האתר — דיו כהה (כמו "השמע הכל" משלב 4) */
  [data-theme="dark"]{--on-accent:#071016}
  [data-theme="dark"] :is(.pp,.podpp,.ebtn.pri,.asortbtn.on,.ssortbtn.on,.psortbtn.on,.dpcalbtn.on,#dpApply,.setall,#myPlayAll,#plDetPlay,#plhPlay,.plnewrow button,.tpnewrow button,.pltab.on,.admsave,.syncbtn:not(.alt):not(.danger),.tour-next,#sgSend,.dock .dpp,.nppp,.bmadd,.plvisbtn.on,.popx:hover,.fpx:hover,.toolToggle){color:var(--on-accent)}
  /* ראש הדף בכהה: שכבה כהה שקופה מעל הגרדיאנט (הטקסט הלבן היה 1.8–2.7 על הטורקיז) */
  /* 19.10 (ראש דף שקט): סגול-עמוק אחיד וקבוע; טקסט לבן ~11:1 */
  [data-theme="dark"] header{background:linear-gradient(120deg,#26305f 0%,#33285e 100%)}
  [data-theme="dark"] header .infobar{background:transparent;color:#fff}
  [data-theme="dark"] .online,[data-theme="dark"] .cornericon{background:rgba(0,0,0,.24)}
  /* אדום של "חדש", LIVE ו"מיוזיק חי": לבן על #ff3b5c נתן 3.5 (ועל הצהוב בפס המונפש — פחות מ-2) */
  html body #list>.song:not(.hero) .badge:not(.pinbadge):not(.x6),.badge:not(.pinbadge){background:#d61f45}
  /* ‼️ 18.10 (סקירת UI): "חדש" היה תווית אדומה בולטת על כמעט כל כרטיס בראש הרשימה — רעש. עכשיו רק 24 שעות
     (renderCard), ותווית לבנה שקטה עם טקסט אדום (ניגודיות 5.6) */
  html body:not(.x6) #list>.song:not(.x6) .badge:not(.pinbadge):not(.x6),html body .badge:not(.pinbadge){background:rgba(255,255,255,.94);color:#c81e3e;box-shadow:0 1px 3px rgba(0,0,0,.18)}
  .rtlive{background:#d61f45}
  .dlive,.nplive{background:#d61f45}
  .chip-live{background-image:linear-gradient(120deg,#e11d48,#c2410c,#b45309,#e11d48,#be123c)}
  html #toolbar #radio{background:linear-gradient(120deg,#d61f45,#c2410c)}
  html #toolbar #radio:hover{background:linear-gradient(120deg,#be123c,#b45309)}
  [data-theme="light"] .rtcnt{color:var(--accent-deep)}
  [data-theme="dark"] .npfull{--muted:#bfc9d6;background:var(--bg) radial-gradient(120% 75% at 50% -8%,hsl(var(--nph) var(--nps) 22%) 0%,hsl(var(--nph) var(--nps) 12%) 45%,var(--bg) 92%) fixed}
  [data-theme="dark"] .nprkind svg{color:#ff6b6b}
  .tprow.tpcur .tpx{color:#e11d48}
  /* הנגן המלא בבהיר: הרקע בגוון העטיפה כהה יותר מהדף, ולכן האפור והצבע של הטקסט שם כהים יותר (היה 2.4–3.8) */
  [data-theme="light"]{--accent-deep:color-mix(in srgb,var(--accent) 78%,#000)}
  [data-theme="light"] .npfull{--accent:var(--accent-deep);--muted:#414e63}
  /* כוכב ריק בדירוג: כמעט בלתי נראה (1.2–1.35) */
  .stars{color:color-mix(in srgb,var(--muted) 72%,var(--line))}
  /* 4. אנגלית ושמות בעברית: שם תחנה/שיר בעברית בתוך ממשק LTR נצמד לצד הלא נכון (dir=auto + start) */
  [dir="ltr"] :is(.rhname,.rhsong,.rhlab){text-align:left}
  html[dir="ltr"] :is(#list>.song .song-body>h1,.podfeed>.song .song-body>h2,.related .song .song-body>h2){text-align:left}
  /* מהירות "1×": בעברית הוצג "×1" */
  #dspeed,#npspeed{direction:ltr;unicode-bidi:isolate}
  /* "משודר עכשיו" ברדיו: אייקון תו (מסכה) במקום הסימן ♪ שהיה בתוך הטקסט */
  .rtnow:not(:empty)::before,.rhsong:not(:empty)::before{content:"";display:inline-block;width:1em;height:1em;margin-inline-end:4px;vertical-align:-.15em;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18V5l12-2v13'/><circle cx='6' cy='18' r='3'/><circle cx='18' cy='16' r='3'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18V5l12-2v13'/><circle cx='6' cy='18' r='3'/><circle cx='18' cy='16' r='3'/></svg>") center/contain no-repeat}
  /* end stage 6 */
  /* === ניגודיות גבוהה של ווינדוס (forced-colors) — 18.8 ===
     במצב הזה הדפדפן דורס color/background/border/fill/stroke לצבעי-מערכת ומוחק box-shadow לגמרי.
     כל מה שסימנו "פעיל/נבחר" רק ברקע-גרדיאנט או בצל פשוט נעלם — כוכב-מלא, צ'יפ-נבחר, לשונית
     פעילה, פס-התקדמות, הכרטיס-המתנגן. הבסיס: מכוונים מחדש את משתני :root לצבעי-מערכת (מכסה
     מאות כללים בבת-אחת), ואז מתקנים ביד רק את מה שנשען על צל/רקע-בלבד.
     ‼️ outline ו-text-decoration שורדים את המצב (ולכן :focus-visible כבר תקין) — הם סמן-הבחירה. */
  @media(forced-colors:active){
    :root,[data-theme="light"],[data-accent="purple"],[data-accent="gold"],[data-accent="green"],[data-accent="rose"]{--bg:Canvas;--bg2:Canvas;--card:Canvas;--line:CanvasText;--text:CanvasText;--muted:GrayText;--accent:Highlight;--accent2:Highlight;--accent3:Highlight;--star:CanvasText;--danger:CanvasText;--sh1:none;--sh2:none;--sh3:none}
    /* 1. כוכבים: מלא וריק הם אותו תו ★ ונבדלו רק בצבע. GrayText מול Highlight נבדלים גם כאן,
          וקו-תחתון מוסיף ערוץ שני שאינו תלוי בצבע בכלל. */
    .star{color:GrayText}
    .star.on,.star.hov{color:Highlight;text-decoration:underline}
    /* 2. כל משפחת ה"נבחר" — רקע-מערכת אמיתי במקום גרדיאנט שנמחק */
    .chip.on,.chip.on:hover,.catchip.on,.podshowchip.on,.menu button.on,.dpcalbtn.on,.pltab.on,.repchip.on,.asortbtn.on,.ssortbtn.on,.psortbtn.on,.admtgl.on,.admtab.on,.grpbtn.on,.dctl.on,.dctls .dctl.on,.dright .dctl.on{background:Highlight;color:HighlightText;border:1px solid Highlight}
    /* 3. מתג ההפעלה — היה מלבן ריק בלי מסלול ובלי ידית */
    .plswitch{background:Canvas;border:1px solid CanvasText;box-sizing:border-box}
    .plswitch::after{background:CanvasText}
    .plswitch.on{background:Highlight;border-color:Highlight}
    .plswitch.on::after{background:HighlightText}
    /* 4. פסי-התקדמות — מסלול ומילוי קרסו לאותו צבע, לא נותר שום חיווי מיקום */
    .dock .dbar,.npbar{background:Canvas;border:1px solid CanvasText;box-sizing:border-box}
    .dock .dfill,.npfill{background:Highlight}
    /* 5. הכרטיס המתנגן / החדש — הצל היה הסימן היחיד; outline שורד */
    .song.playing-card{outline:3px solid Highlight;outline-offset:-3px}
    .song.fresh{outline:3px dashed Highlight;outline-offset:-3px}
    .eqbadge{background:Canvas;border:1px solid CanvasText}
    .eqbadge i{background:CanvasText}
    /* 6. כפתורים בלי מסגרת (border:0 + גרדיאנט) — בלי גבול אין בכלל יעד-לחיצה נראה */
    .pp,.podpp,.resumebar,.updatebar,.bmadd,.installbanner .ib-install,.admsave,.adminedit,.fab,.admmbtn,.admact,.admsbtn,.dock .dpp,.nppp,.consent button,.tour-next{border:1px solid ButtonBorder;box-sizing:border-box}
    /* 7. שורה מסומנת בתפריט/השלמה — הרקע היה הסימן היחיד גם לניווט-מקלדת */
    .acrow:hover,.acrow.sel,.addplitem:hover,.grpmenu .chip:hover{background:Highlight;color:HighlightText}
    /* 8. נקודות-חיווי שצוירו כרקע בלבד */
    .dot,.nptick,.tour-dot{background:CanvasText}
    .tour-dot.on{background:Highlight}
    .toolToggle.hason::after{background:Highlight}
    #syncBtn.cornericon.on{background:Highlight;color:HighlightText}
    /* 9. עמעום שנשען על opacity — opacity לא נדרס, ולכן .28 הופך לבלתי-קריא במקום ל"מושבת" */
    .myb:disabled,.admact:disabled,.dimrow,.admsongrow.hid,.admindot,.rlink,.bmitem .bx,.npmark .x{opacity:1;color:GrayText}
    /* 10. חלוניות צפות — הצל היה ההפרדה מהדף שמאחור */
    .menu,.toolpop,.moremenu,.bmpop,.grpmenu,.acbox,.modalbox,.toast,.badge,.pinbadge,.newpill,.admbadge{border:1px solid CanvasText;box-sizing:border-box}
  }
  /* ===== 20.10 ראש-דף ד2 (מחשב בלבד, ≥861): לוגו | חיפוש | כל הכפתורים (אייקון ושם קטן מתחתיו) | סנכרון; מתחת פס-מידע דק.
     זמרים/שירים/מהחדש-לישן/תאריך בתוך "מיון"; שפה והתקנה בתוך "כלים". ה-DOM מוזז ע"י סקריפט קטן אחרי .searchrow (class hx על html). ===== */
  @media(min-width:861px){
  html.hx header{background:var(--card)!important;background-image:none!important;color:var(--text);box-shadow:none!important;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);overflow:visible!important;animation:none!important;position:sticky;top:0;z-index:160;padding:0 22px!important}
  html.hx header::before,html.hx header .notes{display:none!important}
  html.hx header h1,html.hx header .brandtitle{color:var(--text)!important;text-shadow:none!important;font-size:1.3rem}
  html.hx header .brand small{display:none}
  html.hx .lg4eq rect,html.hx .lg4arr{animation:none!important}
  html.hx .onlinewrap .online{flex-direction:column;justify-content:center;gap:2px;height:46px;min-width:50px;padding:0 6px;border-radius:12px;background:transparent!important;border:0!important;color:color-mix(in srgb,var(--text) 78%,transparent)!important;font-size:.64rem;font-weight:600;line-height:1.1}
  html.hx .online .hxonum{display:inline-flex;align-items:center;gap:4px;font-size:.95rem;line-height:18px}
  html.hx .online b{color:var(--text)}
  html.hx .onlinewrap .onl-long{display:none}
  html.hx .onlinewrap .onl-short{display:inline}
  html.hx .cornericons{display:none!important}
  html.hx .hdtop{height:60px;gap:12px;align-items:center}
  html.hx header .brand{flex:none}
  html.hx .lg4{width:36px;height:40px}
  html.hx .lg4 svg{width:28px;height:33px}
  /* החיפוש — בשורה העליונה, צר */
  html.hx .hxqbox{position:relative;flex:0 1 300px;min-width:150px;max-width:300px}
  html.hx .hxqbox .qwrap{width:100%!important;max-width:none!important;flex:none!important}
  html.hx .hxqbox #q{height:40px!important;background:color-mix(in srgb,var(--text) 5%,transparent)!important;border-color:transparent!important;box-shadow:none!important}
  html.hx .hxqbox #q:focus{background:var(--card)!important;border-color:var(--accent)!important}
  html.hx .hxqbox .acbox{width:max(100%,440px)!important;right:0!important;left:auto!important;transform:none!important}
  html.hx .searchrow{display:none!important}
  body.podmode .hxqbox{visibility:hidden}
  /* שורת הכפתורים */
  html.hx #toolbar.hxnav{position:static!important;flex:0 1 auto;display:flex!important;flex-wrap:nowrap!important;align-items:center;justify-content:center;gap:0;height:auto;padding:0!important;margin:0!important;background:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:visible!important;min-width:0}
  html.hx #toolbar.hxnav .toolbrand,html.hx #toolbar.hxnav .tbsheethead,html.hx #toolbar.hxnav .tbhd,html.hx #toolbar.hxnav .tbsep,html.hx #toolbar.hxnav>#installChip{display:none!important}
  html.hx #toolbar.hxnav>.chip,html.hx #toolbar.hxnav>.navgrp>.grpbtn,html.hx #fseg>.chip{flex-direction:column!important;justify-content:center!important;gap:2px!important;height:46px!important;min-width:46px!important;padding:0 5px!important;border:0!important;border-radius:12px!important;background:transparent!important;box-shadow:none!important;color:color-mix(in srgb,var(--text) 78%,transparent)!important;font-size:.64rem!important;font-weight:600!important;line-height:1.1!important}
  html.hx #toolbar.hxnav>.chip:hover,html.hx #toolbar.hxnav>.navgrp>.grpbtn:hover{background:color-mix(in srgb,var(--text) 6%,transparent)!important;color:var(--text)!important}
  html.hx #toolbar.hxnav>.chip svg,html.hx #toolbar.hxnav>.navgrp>.grpbtn>svg:first-child,html.hx #fseg>.chip svg{width:18px!important;height:18px!important}
  html.hx #toolbar.hxnav>.navgrp>.grpbtn .gcaret,html.hx #toolbar.hxnav>.navgrp>.grpbtn .gsel{display:none!important}
  html.hx #toolbar.hxnav>.navgrp.open>.grpbtn,html.hx #toolbar.hxnav>.chip.on{color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 11%,transparent)!important}
  /* הכל / סינגלים / קליפים — קבוצה אחת */
  html.hx #fseg{display:inline-flex!important;gap:2px;padding:3px!important;margin-inline-end:8px!important;border-radius:13px!important;background:color-mix(in srgb,var(--text) 5%,transparent)!important;border:0!important;height:auto!important}
  html.hx #fseg>.chip{height:42px!important;border-radius:10px!important;color:color-mix(in srgb,var(--text) 72%,transparent)!important}
  html.hx #fseg>.chip.on{background:var(--card)!important;color:var(--text)!important;box-shadow:0 1px 3px rgba(15,27,42,.14)!important}
  /* מיוזיק חי — ריבוע אדום */
  html.hx #toolbar.hxnav>#radio{position:relative!important;height:42px!important;min-width:54px!important;padding:0 10px!important;margin-inline-start:6px!important;color:#fff!important;background:linear-gradient(135deg,#e5383b,#c81e3e)!important;box-shadow:0 4px 12px rgba(229,56,59,.28)!important;border-radius:14px!important}
  /* 20.10 (בקשת משתמש): הנקודה המהבהבת במקום האייקון */
  html.hx #toolbar.hxnav>#radio>svg{display:none!important}
  html.hx #toolbar.hxnav>#radio .livedot{position:static;width:10px;height:10px;margin:4px 0}
  /* סנכרון — מודגש, עם שם, בקצה */
  html.hx .onlinewrap>.hxsync{display:inline-flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:46px;min-width:50px;padding:0 8px;margin:0;box-sizing:border-box;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent)!important;border-radius:12px!important;background:color-mix(in srgb,var(--accent) 9%,transparent)!important;color:var(--accent)!important;font:inherit;font-size:.64rem;font-weight:700;cursor:pointer;width:auto!important}
  html.hx .onlinewrap>.hxsync svg{width:18px;height:18px}
  html.hx .onlinewrap>.hxsync.on{background:var(--accent)!important;color:#fff!important}
  /* התפריטים */
  html.hx #toolbar.hxnav .navgrp .grpmenu{top:calc(100% + 8px)!important}
  html.hx #grpTools .grpmenu{min-width:220px}
  /* 20.10 שלב 2: הטיימר נמצא בתוך מרכז השמיעה (לא פריט נפרד); "סיור באתר" עבר ל"הגדרות" */
  html.hx #sleepChip,html.hx #designPop .setgrp-act{display:none!important}
  /* זמרים / תאריך ככפתורים בשורה (במקור כפתורי שורת-החיפוש) — השם מוצג; שם תאריך שנבחר מתקצר */
  html.hx #toolbar.hxnav>.chip .qlbl{display:inline!important}
  html.hx #toolbar.hxnav>#artists,html.hx #toolbar.hxnav>#songsBtn,html.hx #toolbar.hxnav>#dateChip{order:0!important} /* ה-order:1 הכללי של שורת-החיפוש הישנה זרק את "זמרים" לסוף */
  html.hx #toolbar.hxnav>#dateChip .qlbl{max-width:9ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.hx #grpSort .grpmenu{min-width:220px}
  html.hx #grpTools .grpmenu{inset-inline-start:auto!important;inset-inline-end:0!important}
  html.hx #toolbar.hxnav>#grpTools{margin-inline-start:6px}
  html.hx .hxmhd{padding:8px 12px 2px;font-size:.7rem;font-weight:800;color:var(--muted);letter-spacing:.02em}
  html.hx .hxmhd~.hxmhd{border-top:1px solid var(--line);margin-top:6px;padding-top:10px}
  html.hx .grpmenu .hxmenuitem{display:flex!important;width:100%;height:auto!important;border:0!important;background:none!important;font:inherit;padding:9px 12px!important;gap:10px!important;font-size:.9rem!important;color:var(--text)!important;cursor:pointer;justify-content:flex-start}
  html.hx .grpmenu .hxmenuitem .qlbl{display:inline!important}
  html.hx .grpmenu .hxmenuitem:hover{background:color-mix(in srgb,var(--text) 6%,transparent)!important}
  /* פס מידע דק מאוד */
  html.hx .hxstrip{position:static!important;transform:none!important;max-width:none!important;width:auto!important;margin:0 -22px!important;justify-content:center;height:24px;line-height:24px;padding:0 16px!important;font-size:.72rem!important;font-weight:500!important;color:var(--muted)!important;background:color-mix(in srgb,var(--text) 4%,transparent)!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)!important;border-radius:0!important;box-shadow:none!important;-webkit-mask-image:none!important;mask-image:none!important}
  html.hx .hxstrip .ib-strong{color:color-mix(in srgb,var(--text) 80%,transparent)!important;font-weight:600!important}
  html.hx .hxstrip svg,html.hx .hxstrip .liwrap{opacity:.7}
  }
  @media(min-width:861px) and (max-width:1300px){
  html.hx .onlinewrap .online{min-width:44px;padding:0 3px;font-size:.6rem}
  html.hx .hxqbox{flex:0 1 214px;min-width:130px}
  html.hx #toolbar.hxnav>.chip,html.hx #toolbar.hxnav>.navgrp>.grpbtn,html.hx #fseg>.chip{min-width:42px!important;padding:0 3px!important;font-size:.6rem!important}
  html.hx .onlinewrap>.hxsync{min-width:44px;padding:0 4px}
  html.hx header .brandtitle,html.hx header h1{font-size:1.1rem!important}
  }
  /* 20.10 נמדד: ב-861–1023 הכפתורים גלשו על החיפוש ועל "מחוברים" (גם בגרסה החיה) — שם האתר מוסתר ויזואלית, הלוגו נשאר.
     עד 1060 — כדי שהרמז "הקלד שם שיר או שם זמר" ייכנס במלואו בתיבה (נמדד 149px; גופן הרמז קטן מעט כאן) */
  /* 20.10 לילה: 3 כפתורים נוספו לשורה (זמרים, קטגוריות, פלייליסטים) — נמדד: עד 1180 צריך להסתיר את שם האתר */
  @media(min-width:861px) and (max-width:1180px){
  html.hx header .bv4txt{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  }
  @media(min-width:861px) and (max-width:1060px){
  html.hx .hxqbox #q::placeholder{font-size:.8rem}
  }
  /* ב-861–960 עוד צפוף: תיבת חיפוש צרה יותר (רמז קצר — paintQph), כפתורים ורווחים קטנים יותר */
  @media(min-width:861px) and (max-width:960px){
  html.hx .hdtop{gap:8px}
  html.hx .hxqbox{flex:0 1 150px;min-width:120px}
  html.hx #toolbar.hxnav>.chip,html.hx #toolbar.hxnav>.navgrp>.grpbtn,html.hx #fseg>.chip{min-width:38px!important;padding:0 2px!important}
  html.hx #toolbar.hxnav>#radio{min-width:46px!important;padding:0 6px!important;margin-inline-start:4px!important}
  html.hx .onlinewrap{gap:4px}
  html.hx .onlinewrap .online,html.hx .onlinewrap>.hxsync{min-width:40px}
  }
  /* ===== 21.10 ראש-דף טלפון (hp, עד 860px) — התאום של ד2: פס-מידע דק, שורה אחת (לוגו | חיפוש | מחוברים | סנכרון), סרגל תחתון קבוע.
     ה-DOM מוזז ע"י סקריפט קטן אחרי סקריפט ד2 (מחלקה hp על html). המחשב (861 ומעלה) לא מושפע. ===== */
  @media (max-width:860px){
  :root{--hptabh:60px;--hpdock:0px}
  /* ===== ראש הדף: רקע נקי כמו במחשב; פס-המידע נגלל החוצה, שורת הלוגו+חיפוש נשארת דבוקה ===== */
  html.hp header{background:var(--card)!important;background-image:none!important;color:var(--text);box-shadow:none!important;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);overflow:visible!important;animation:none!important;position:sticky;top:-24px;z-index:150;padding:0 12px!important;text-align:right}
  html.hp header::before,html.hp header .notes{display:none!important}
  html.hp header h1,html.hp header .brandtitle{color:var(--text)!important;text-shadow:none!important;font-size:1.02rem!important;white-space:nowrap}
  html.hp header .brand small{display:none!important}
  html.hp .lg4eq rect,html.hp .lg4arr{animation:none!important}
  html.hp .hdtop{height:56px;gap:6px;align-items:center;justify-content:flex-start;flex-wrap:nowrap}
  html.hp header .brand{flex:none;margin:0}
  html.hp header .bv4row{gap:8px;padding:0;min-height:44px}
  html.hp .lg4{width:34px;height:44px}
  html.hp .lg4 svg{width:26px;height:30px}
  /* שם האתר רק כשיש מקום (600 ומעלה); בטלפון — הלוגו בלבד */
  html.hp header .bv4txt{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  /* תיבת החיפוש */
  html.hp .hpq{position:static;flex:1 1 auto;min-width:0}
  html.hp .hpq .qwrap{width:100%!important;max-width:none!important;flex:none!important;order:0}
  html.hp .hpq #q{height:42px!important;font-size:.88rem!important;padding:0 10px!important;padding-inline-start:36px!important;border-radius:var(--r-pill)!important;background:color-mix(in srgb,var(--text) 6%,transparent)!important;border:1px solid transparent!important;box-shadow:none!important;color:var(--text)}
  html.hp .hpq #q:focus{background:var(--card)!important;border-color:var(--accent)!important}
  html.hp .hpq .qico{inset-inline-start:12px;width:17px;height:17px}
  html.hp .hpq .acbox{position:absolute!important;top:calc(100% + 4px)!important;left:-4px!important;right:-4px!important;width:auto!important;transform:none!important;max-height:min(60vh,420px)}
  html.hp .searchrow{display:none!important}
  /* מחוברים: המספר למעלה, המילה הקטנה מתחת */
  html.hp .onlinewrap{gap:2px;flex:none}
  html.hp .onlinewrap .online{flex-direction:column;justify-content:center;align-items:center;gap:2px;height:44px;min-width:44px;padding:0 3px;border-radius:12px;background:transparent!important;border:0!important;color:color-mix(in srgb,var(--text) 72%,transparent)!important;font-size:.62rem;font-weight:600;line-height:1.1}
  html.hp .online .hponum{display:inline-flex;align-items:center;gap:4px;font-size:.92rem;line-height:18px}
  html.hp .online .dot{width:7px;height:7px}
  html.hp .online b{color:var(--text)}
  html.hp .onlinewrap .onl-long{display:none}
  html.hp .onlinewrap .onl-short{display:inline}
  html.hp .cornericons{display:none!important}
  /* סנכרון: אייקון ושם קטן, מודגש בצבע האתר */
  html.hp .onlinewrap>.hpsync{all:unset;box-sizing:border-box;display:inline-flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:44px;min-width:46px;padding:0 6px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:12px;background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent);font-size:.62rem;font-weight:700;cursor:pointer;font-family:inherit;line-height:1.1}
  html.hp .onlinewrap>.hpsync svg{width:17px;height:17px}
  html.hp .onlinewrap>.hpsync.on{background:var(--accent);color:#fff}
  /* פס המידע הדק — שורה אחת, נגלל לצד, נמוג בקצה */
  html.hp .hpstrip{position:static!important;transform:none!important;max-width:none!important;width:auto!important;margin:0 -12px!important;display:flex;justify-content:flex-start;height:24px;line-height:24px;padding:0 12px!important;font-size:.7rem!important;font-weight:500!important;color:var(--muted)!important;background:color-mix(in srgb,var(--text) 4%,transparent)!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)!important;border-radius:0!important;box-shadow:none!important;white-space:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-mask-image:linear-gradient(to left,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(to left,#000 calc(100% - 24px),transparent)}
  html.hp .hpstrip .ib-strong{color:color-mix(in srgb,var(--text) 80%,transparent)!important;font-weight:600!important}
  html.hp .hpstrip svg,html.hp .hpstrip .liwrap{opacity:.7}
  html.hp .hpstrip .ib-item+.ib-item::before{margin:0 7px}
  html.hp .hpstrip .ib-item:last-child{padding-inline-end:22px}
  }
  @media (min-width:600px) and (max-width:860px){
  html.hp header{padding:0 18px!important}
  html.hp .hpstrip{margin:0 -18px!important;padding:0 18px!important;justify-content:center;-webkit-mask-image:none;mask-image:none}
  html.hp .hdtop{gap:12px}
  html.hp header .bv4txt{position:static!important;width:auto;height:auto;overflow:visible;clip:auto}
  html.hp .hpq{flex:1 1 auto;max-width:420px;margin-inline-start:auto;margin-inline-end:auto}
  }
  /* ===== סרגל תחתון קבוע (אייקון ושם קטן מתחתיו) ===== */
  @media (max-width:860px){
  html.hp .hptabs{position:fixed;left:0;right:0;bottom:0;z-index:150;display:flex;align-items:stretch;justify-content:space-around;gap:2px;padding:4px 6px env(safe-area-inset-bottom);background:color-mix(in srgb,var(--card) 95%,transparent);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent);box-shadow:0 -4px 18px rgba(15,27,42,.06)}
  html.hp .hptab{all:unset;box-sizing:border-box;flex:1 1 0;min-width:0;max-width:128px;height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:12px;color:color-mix(in srgb,var(--text) 68%,transparent);font-family:inherit;font-size:.68rem;font-weight:600;line-height:1.15;cursor:pointer;position:relative;-webkit-tap-highlight-color:transparent;text-align:center}
  html.hp .hptab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
  html.hp .hptab .hpic{display:flex;align-items:center;justify-content:center;width:48px;height:28px;border-radius:14px;position:relative;transition:background .15s,color .15s}
  html.hp .hptab .hpic svg{width:21px;height:21px}
  html.hp .hptab>span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.hp .hptab:active .hpic{background:color-mix(in srgb,var(--text) 8%,transparent)}
  html.hp .hptab.on{color:var(--accent)}
  html.hp .hptab.on .hpic{background:color-mix(in srgb,var(--accent) 14%,transparent)}
  /* מיוזיק חי — הבולט היחיד: ריבוע אדום כמו במחשב */
  html.hp #hpRadio{color:#d62839}
  html.hp #hpRadio .hpic{color:#fff;background:linear-gradient(135deg,#e5383b,#c81e3e);box-shadow:0 3px 10px rgba(229,56,59,.3)}
  html.hp #hpRadio .livedot{position:static;width:10px;height:10px;margin:0}
  html[data-theme="dark"].hp #hpRadio{color:#ff7b88}
  /* נקודה = יש סינון/מיון פעיל (כמו בכפתור התפריט הישן) */
  html.hp .hptab .hpdot{display:none;position:absolute;top:1px;inset-inline-end:4px;width:8px;height:8px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 2px var(--card)}
  html.hp .hptab.hason .hpdot{display:block}
  /* הנגן התחתון יושב מעל הסרגל; הרשימה מקבלת ריווח שלא תוסתר */
  html.hp .dock{bottom:var(--hptabh)!important;padding-bottom:10px!important}
  html.hp .resumeslot{bottom:var(--hptabh)!important;padding-bottom:10px!important}
  html.hp body{padding-bottom:calc(var(--hptabh) + 14px)!important}
  html.hp body.playing{padding-bottom:calc(var(--hptabh) + var(--hpdock) + 14px)!important}
  html.hp body:not(.playing):has(.resumeslot.on){padding-bottom:calc(var(--hptabh) + 90px)!important}
  html.hp body:not(.playing) .floatstack,html.hp body:not(.playing) .consent,html.hp body:not(.playing) .toast,html.hp body:not(.playing) .installbanner{margin-bottom:var(--hptabh)}
  /* "הפתעה" עוברת לקבוצת "שלי" (כמו במחשב), אחרי "מומלץ עבורך" */
  /* 21.10 (משוב משתמש): חלונית "תפריט" מסודרת כמו המחשב. למעלה הכפתורים הישירים (מיוזיק חי, פודקאסטים, קטגוריות,
     פלייליסטים); "שלי" (+הפתעה, מוסתרים); "הגדרות" (מרכז שמיעה, עיצוב, שפה, סיור באתר, התקנה); "עוד" (הצע שיר).
     סינון ומיון — רק בלשונית "מיון" (לא פעמיים); טיימר השינה — בתוך מרכז השמיעה (כמו במחשב). */
  html.hp #toolbar .tbhd-f,html.hp #toolbar .tbhd-s,html.hp #toolbar .tbhd-d,html.hp #toolbar #fseg,html.hp #toolbar #sortNew,html.hp #toolbar .sortchip,html.hp #sleepChip,html.hp #designPop .setgrp-act{display:none!important}
  html.hp #radio{order:2!important} html.hp #podChip{order:3!important} html.hp #catChip{order:4!important} html.hp #songsBtn{order:5!important}
  /* 28.10: "פלייליסטים" (אישיים בלבד) עבר ל"שלי", אחרי "הרשימה שלי" */
  html.hp .tbhd-m{order:30!important} html.hp #toolbar .chip[data-f="fav"]{order:31!important} html.hp #recoChip{order:32!important} html.hp #surprise{order:33!important} html.hp #mychip{order:34!important} html.hp #plChip{order:35!important} html.hp #hiddenBtn{order:36!important}
  html.hp .tbhd-l{order:40!important} html.hp #listenChip{order:41!important} html.hp #designChip{order:42!important;grid-column:auto!important} html.hp #hpLang{order:43!important} html.hp #hpTour{order:44!important} html.hp #installChip{order:45!important}
  html.hp .tbhd-r{order:60!important} html.hp #suggestChip{order:62!important}
  /* ===== רקע מוחשך + חלונית "מיון" ===== */
  html.hp .hpback{position:fixed;inset:0;z-index:179;background:rgba(10,12,20,.45);display:none}
  html.hp.hpsheet-on .hpback,html.hp.hptb-on:not(.tbopen) .hpback{display:block}
  html.hp.hpsheet-on,html.hp.hptb-on{overflow:hidden}
  html.hp .hpsheet{position:fixed;left:0;right:0;bottom:0;z-index:180;max-width:560px;margin:0 auto;max-height:calc(100dvh - 40px);box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;display:none;padding:0 14px calc(18px + env(safe-area-inset-bottom));background:var(--card);color:var(--text);border-radius:22px 22px 0 0;box-shadow:0 -8px 30px rgba(0,0,0,.18)}
  html.hp .hpsheet.open{display:block}
  html.hp .hpshead{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:2;background:var(--card);padding:16px 2px 6px}
  html.hp .hpshead::before{content:"";position:absolute;top:6px;left:50%;width:38px;height:4px;margin-left:-19px;border-radius:4px;background:var(--line)}
  html.hp .hpshead b{font-size:1.08rem;font-weight:700}
  html.hp .hpx{all:unset;box-sizing:border-box;cursor:pointer;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--s2soft);color:var(--text)}
  html.hp .hpsec{font-size:.74rem;font-weight:600;color:var(--muted);padding:12px 4px 6px}
  html.hp .hpgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
  html.hp .hppx{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;min-width:0;height:46px;padding:0 12px;border-radius:12px;background:var(--s2soft);border:1px solid transparent;font-family:inherit;font-size:.9rem;font-weight:500;color:var(--text);cursor:pointer;overflow:hidden}
  html.hp .hppx svg{width:18px;height:18px;color:var(--accent);flex:none}
  html.hp .hppx span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.hp .hppx.on{background:var(--s2tint);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent);font-weight:600}
  html.hp .hppx.wide{grid-column:1/-1}
  html.hp .hppx.old svg{transform:scaleY(-1)}
  html.hp .hpseg{display:flex;gap:2px;height:50px;padding:4px;box-sizing:border-box;border-radius:var(--r-pill);background:var(--s2soft);border:1px solid var(--line)}
  html.hp .hpseg .hppx{flex:1 1 0;justify-content:center;height:40px;padding:0 8px;background:transparent;border:0;border-radius:var(--r-pill);color:var(--muted)}
  html.hp .hpseg .hppx svg{color:currentColor}
  html.hp .hpseg .hppx.on{background:var(--card);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.12),0 0 0 1px var(--line)}
  html.hp .hpseg .hppx.on svg{color:var(--accent)}
  }
  /* ===== 561–860: הסרגל הישן (שורה עליונה) הופך לאותה חלונית-מלמטה של הטלפון; נפתח מ"תפריט" ===== */
  @media (min-width:561px) and (max-width:860px){
  html.hp .grpbtn{display:none!important}
  html.hp #toolbar .navgrp,html.hp #toolbar .grpmenu{display:contents!important}
  html.hp #toolbar.collapsed{display:none!important}
  html.hp #toolbar:not(.collapsed){position:fixed;left:0;right:0;bottom:0;top:auto;z-index:180;max-width:560px;margin:0 auto;max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-content:start;padding:0 14px calc(18px + env(safe-area-inset-bottom));background:var(--card);border:0;border-radius:22px 22px 0 0;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 -8px 30px rgba(0,0,0,.18)}
  html.hp #toolbar .toolbrand,html.hp #toolbar .tbsep{display:none!important}
  html.hp #toolbar .tbsheethead{display:flex;order:0;grid-column:1/-1;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:2;background:var(--card);padding:16px 2px 8px;margin-bottom:2px}
  html.hp .tbsheethead::before{content:"";position:absolute;top:6px;left:50%;width:38px;height:4px;margin-left:-19px;border-radius:4px;background:var(--line)}
  html.hp .tbsheethead b{font-size:1.08rem;font-weight:700;color:var(--text)}
  html.hp .tbx{cursor:pointer;width:40px;height:40px;border:0;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--s2soft);color:var(--text)}
  html.hp #toolbar .tbhd{display:block;grid-column:1/-1;font-size:.74rem;font-weight:600;color:var(--muted);padding:10px 4px 0}
  html.hp .tbhd-f{order:10} html.hp .tbhd-s{order:20} html.hp .tbhd-m{order:30} html.hp .tbhd-l{order:40} html.hp .tbhd-d{order:50} html.hp .tbhd-r{order:60}
  html.hp #radio{order:2} html.hp #podChip{order:3}
  html.hp #fseg{order:11;grid-column:1/-1} html.hp #catChip{order:12}
  html.hp #sortNew{order:21} html.hp .sortchip[data-s="hot"]{order:22} html.hp .sortchip[data-s="plays"]{order:23} html.hp .sortchip[data-s="rating"]{order:24}
  html.hp #toolbar .chip[data-f="fav"]{order:31} html.hp #recoChip{order:32}
  html.hp #listenChip{order:41} html.hp #sleepChip{order:42}
  html.hp #designChip{order:51;grid-column:1/-1}
  html.hp #hiddenBtn{order:61} html.hp #suggestChip{order:62} html.hp #installChip{order:63}
  html.hp #toolbar:not(.collapsed) #installChip:not([hidden]){display:flex}
  html.hp header #installBtn{display:none!important}
  html.hp #toolbar .chip,html.hp #toolbar .grpmenu .chip{width:auto;min-width:0;height:46px;justify-content:flex-start;padding:0 12px;gap:10px;border-radius:12px;background:var(--s2soft);border:1px solid transparent;font-size:.9rem;font-weight:500;color:var(--text);overflow:hidden;transform:none}
  html.hp #toolbar .chip>span{overflow:hidden;text-overflow:ellipsis}
  html.hp #toolbar .chip>svg{width:18px;height:18px;color:var(--accent)}
  html.hp #toolbar .chip.on,html.hp #toolbar #sortNew.cur{background:var(--s2tint);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent);font-weight:600}
  html.hp #toolbar .grpmenu .chip.on::after,html.hp #toolbar #sortNew.cur::after{display:none}
  html.hp #toolbar .fseg{height:50px;width:100%;padding:4px}
  html.hp #toolbar .fseg .chip{flex:1 1 0;justify-content:center;height:40px;padding:0 8px;background:transparent;border:0;color:var(--muted)}
  html.hp #toolbar .fseg .chip.on{background:var(--card);color:var(--text);border:0}
  html.hp #toolbar #radio,html.hp #toolbar #podChip{height:52px;font-size:.95rem}
  html.hp #toolbar #radio{font-weight:700;color:#fff;border:0;background:linear-gradient(120deg,#ff3b5c,#ff6a3d);box-shadow:0 3px 8px rgba(255,59,92,.22)}
  html.hp #toolbar #radio>svg{color:#fff;width:20px;height:20px}
  html.hp #toolbar .livedot{order:9;margin-inline-start:auto}
  }
  /* חלונות קטנים מהסרגל (תאריך, קטגוריות, הצע שיר...): popPlace מיקם אותם לפי שורת-החיפוש הישנה (שנעלמה) והם עלו על ראש הדף.
     כאן הם נצמדים מלמטה, מעל הסרגל התחתון (ומעל הנגן כשהוא פתוח) — קרוב לאגודל */
  @media (max-width:860px){
  html.hp .toolpop:not(.lcpop){top:auto!important;bottom:calc(var(--hptabh) + 10px)!important;max-height:calc(100dvh - var(--hptabh) - 96px)!important}
  html.hp body.playing .toolpop:not(.lcpop){bottom:calc(var(--hptabh) + var(--hpdock) + 10px)!important;max-height:calc(100dvh - var(--hptabh) - var(--hpdock) - 96px)!important}
  }
  @media (min-width:761px) and (max-width:860px){
  html.hp .toolpop.lcpop{top:auto!important;bottom:calc(var(--hptabh) + 10px)!important;max-height:calc(100dvh - var(--hptabh) - 96px)!important}
  html.hp body.playing .toolpop.lcpop{bottom:calc(var(--hptabh) + var(--hpdock) + 10px)!important;max-height:calc(100dvh - var(--hptabh) - var(--hpdock) - 96px)!important}
  }
  /* ===== 21.10 שורות קצרות בטלפון (html.cpt — ברירת מחדל; "רגילה" בהגדרות › עיצוב מבטל). מההדמיה של 19.10, גרסה 2.
     שורה = תמונה | שם+זמר+פרטים | כפתור אחד גלוי (הורדה; בלי קובץ — קליפ; באפליקציה — "הורד מהקליפ") | ⋯.
     לחיצה על השורה מנגנת; מועדפים, הבא בתור (והקליפ כשהכפתור הגלוי הוא הורדה) — בראש ה-⋯ (APP_JS). רק מתחת ל-600px. ===== */
  @media(max-width:599px){
  html.cpt body:not(.gridview) #list>.song:not(.hero){grid-template-columns:92px minmax(0,1fr) 80px!important;grid-template-rows:auto!important;align-items:center!important;column-gap:8px!important;row-gap:0!important;padding:8px 8px 8px 2px!important;margin:0 0 6px!important;border-radius:14px!important;contain-intrinsic-size:auto 72px!important;cursor:pointer}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .cover-wrap{grid-column:1!important;grid-row:1!important;width:92px!important;height:52px!important;border-radius:9px!important;align-self:center!important;margin:0!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .song-body{grid-column:2!important;grid-row:1!important;align-self:center!important;gap:1px;min-width:0}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .song-body>h2{font-size:.93rem!important;line-height:1.3!important;-webkit-line-clamp:1!important;margin:0!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .songlink .tsub{display:none}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .arts{font-size:.8rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  /* שורת הפרטים: שורה אחת; פריט שלא נכנס נעלם שלם. תאריך · השמעות · דירוג (המשך על התמונה; האיכות בדף השיר) */
  html.cpt body:not(.gridview) #list>.song:not(.hero) .meta{font-size:.7rem!important;line-height:17px!important;margin-top:1px!important;flex-wrap:wrap!important;white-space:nowrap;height:17px!important;max-height:17px!important;overflow:hidden!important;row-gap:0!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .meta>.dmeta~*::before{margin:0 3px!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .meta>:is(.plays,.mrt){gap:2px!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .meta>:is(.kbps,.msz,.mdur,.cliponly){display:none!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .meta .mrc{display:none!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .row2{display:none!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .badge{font-size:.55rem!important;padding:2px 5px!important;top:3px!important;right:3px!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .durchip{font-size:.58rem!important;line-height:13px!important;left:3px!important;bottom:3px!important}
  /* צד שמאל: [כפתור גלוי][⋯] ברשת קבועה 40+40 — באותו מקום בכל השורות */
  html.cpt body:not(.gridview) #list>.song:not(.hero)>.side{grid-column:3!important;grid-row:1!important;margin:0!important;padding:0!important;align-self:center!important;width:80px!important;min-width:0!important;border:0!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero)>.side>.hrate{display:none!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .side>.actions{display:grid!important;grid-template-columns:40px 40px!important;grid-auto-flow:column;gap:0!important;margin:0!important;padding:0!important;border:0!important;width:80px!important;justify-content:start!important;align-items:center!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .actions>:is(.pp,.fav,.qadd,.actgap,.dlclip,.clipwatch){display:none!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .actions>a.dl,
  html.cpt body:not(.gridview) #list>.song:not(.hero):not(:has(.actions>a.dl)) .actions>.clipwatch{display:inline-flex!important;grid-column:1!important;grid-row:1!important;width:40px!important;height:44px!important;margin:0!important;align-items:center;justify-content:center}
  /* באפליקציה (body.candl): בשיר קליפ-בלבד הכפתור הגלוי הוא "הורד מהקליפ" (שם ההורדה עובדת); הצפייה — ב-⋯ */
  html.cpt body.candl:not(.gridview) #list>.song:not(.hero):not(:has(.actions>a.dl)) .actions>.clipwatch{display:none!important}
  html.cpt body.candl:not(.gridview) #list>.song:not(.hero):not(:has(.actions>a.dl)) .actions>.dlclip{display:inline-flex!important;grid-column:1!important;grid-row:1!important;width:40px!important;height:44px!important;margin:0!important;align-items:center;justify-content:center}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .actions>.morewrap{grid-column:2!important;grid-row:1!important;margin:0!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero) .actions .morebtn{width:40px!important;height:44px!important}
  /* קליפ פתוח: הווידאו בשורה משלו ברוחב מלא, השם מתפרס במקום התמונה */
  html.cpt body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]){grid-template-rows:auto auto!important;contain-intrinsic-size:auto 300px!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]) .song-body{grid-column:1/3!important;padding-inline-start:4px}
  html.cpt body:not(.gridview) #list>.song:not(.hero):has(.ytd[open]) .cover-wrap{grid-column:1/-1!important;grid-row:2!important;width:auto!important;height:auto!important;aspect-ratio:16/9;margin:8px 0 0 6px!important;border-radius:10px!important}
  html.cpt body:not(.gridview) #list>.song:not(.hero).credopen>.desc{grid-column:1/-1!important;grid-row:2!important}
  }
  /* המתג "שורות קצרות" בעיצוב — רק בטלפון */
  @media(min-width:600px){#m_rows{display:none!important}}
