/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 12 2026 | 18:02:22 */
/* ===== 2026 - Player and Favorites CSS (merged Nov 12 2026, group 5: player, favorites, recently played, lightboxes) =====
   Sources in print order (highest ID first, same as before): 91226, 91221, 91202, 91183, 91179, 91175, 91169, 90581, 88669, 76650
   Old items stay OFF, not deleted. Undo: switch this item OFF and switch the old items ON. ===== */
/* ---- SOURCE #91226 ---- */
/* ===== 2026 - Audio Help Page Button CSS (Recently Played & Favorites page only, front end) =====
   Adds the Help button (white card, top right, level with SELECT) and the Help window on the page /recently-played-favorites/ (page id 90527).
   The window has the same look as the Audio Help lightbox ("2026 - Protected Lightbox Audio Help CSS"); this copy is scoped to this page because the page has no Thrive lightbox. Built by "2026 - Audio Help Page Button JS". */
html.fx-hpm-lock { overflow: hidden !important; }
html body.page-id-90527 .fx-rp-card:not(#fx) { position: relative; }
html body.page-id-90527 .fx-rp-help:not(#fx) {
  position: absolute; top: 44px; right: 40px; z-index: 3; display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 16px 0 12px; border-radius: 48px;
  background: #fff !important; border: 1.5px solid #bccdee !important; color: #1f4fa3 !important; box-shadow: none !important;
  font: 600 14px 'Open Sans', sans-serif !important; letter-spacing: .03em !important; text-transform: none !important; cursor: pointer; transition: background-color .15s, border-color .15s, color .15s;
}
html body.page-id-90527 .fx-rp-help:not(#fx) svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rp-help:not(#fx):hover, html body.page-id-90527 .fx-rp-help:not(#fx):focus-visible { background: #E0B02D !important; border-color: #E0B02D !important; color: #fff !important; }
@media (max-width: 700px) {
  html body.page-id-90527 .fx-rp-help:not(#fx) { top: 8px; right: 10px; height: 32px; padding: 0 12px 0 9px; font-size: 13px !important; gap: 6px; }
  html body.page-id-90527 .fx-rp-help:not(#fx) svg { width: 16px; height: 16px; }
}
/* the Help window */
html body.page-id-90527 .fx-hpm:not(#fx) { display: none; position: fixed; inset: 0; z-index: 2147483000; }
html body.page-id-90527 .fx-hpm.on:not(#fx) { display: block; }
html body.page-id-90527 .fx-hpm-ov:not(#fx) {
  position: absolute; inset: 0; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 48px 12px;
  background: radial-gradient(ellipse at center, rgba(46, 74, 102, .94) 0%, rgba(31, 53, 80, .96) 70%, rgba(20, 36, 56, .98) 100%) !important;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
html body.page-id-90527 .fx-hpm .tve_p_lb_content:not(#fx) { position: relative; width: 100%; }
html body.page-id-90527 .fx-hpm .tve_p_lb_close:not(#fx) { position: absolute !important; display: block; cursor: pointer; padding: 0 !important; }
@media (max-width: 700px) { html body.page-id-90527 .fx-hpm-ov:not(#fx) { padding: 20px 8px; } }
/* ---- same look as the lightbox ---- */
html body.page-id-90527 .fx-hpm-ov:not(#fx) {
  background: radial-gradient(ellipse at center, rgba(46, 74, 102, .94) 0%, rgba(31, 53, 80, .96) 70%, rgba(20, 36, 56, .98) 100%) !important;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
html body.page-id-90527 .fx-lbhp .tve_p_lb_content:not(#fx) {
  background: #fff !important; border: 0 !important; border-radius: 16px !important; box-shadow: 0 18px 60px rgba(0, 0, 0, .45) !important;
  max-width: min(860px, calc(100vw - 24px)) !important; margin-left: auto !important; margin-right: auto !important;
}
html body.page-id-90527 .fx-lbhp .tve_p_lb_content .tve_p_lb_inner:not(#fx) { border-radius: 16px !important; padding: 0 !important; }
html body.page-id-90527 .fx-lbhp .tve_p_lb_content .tve_p_lb_inner > article:not(#fx) { display: none !important; }

/* close X */
html body.page-id-90527 .fx-lbhp .tve_p_lb_close:not(#fx) {
  top: 14px !important; right: 14px !important; width: 40px !important; height: 40px !important; border-radius: 50% !important; box-sizing: border-box !important;
  background: #2e4a66 !important; border: 0 !important; box-shadow: 0 2px 10px rgba(31, 53, 80, .35) !important;
  font-size: 0 !important; line-height: 0 !important; color: transparent !important; text-indent: -999px; overflow: hidden; z-index: 5;
  transition: background-color .15s, transform .15s !important; text-decoration: none !important;
}
html body.page-id-90527 .fx-lbhp .tve_p_lb_close:not(#fx)::before, html body.page-id-90527 .fx-lbhp .tve_p_lb_close:not(#fx)::after {
  content: ''; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; margin: -1px 0 0 -8px; background: #fff; border-radius: 2px; text-indent: 0;
}
html body.page-id-90527 .fx-lbhp .tve_p_lb_close:not(#fx)::before { transform: rotate(45deg); }
html body.page-id-90527 .fx-lbhp .tve_p_lb_close:not(#fx)::after { transform: rotate(-45deg); }
html body.page-id-90527 .fx-lbhp .tve_p_lb_close:not(#fx):hover { background: #E0B02D !important; transform: scale(1.06); }

/* the new content */
html body.page-id-90527 .fx-lbhp .fx-hp:not(#fx) { box-sizing: border-box; padding: 34px 34px 30px; font-family: 'Open Sans', sans-serif; color: #2e4a66; text-align: left; }
html body.page-id-90527 .fx-lbhp .fx-hp *:not(#fx) { box-sizing: border-box; }
html body.page-id-90527 .fx-lbhp .fx-hp-title:not(#fx) {
  font-family: 'Playfair Display', serif !important; font-weight: 600 !important; font-size: 24px !important; line-height: 1.25 !important; letter-spacing: .14em !important;
  text-transform: uppercase !important; color: #1f3550 !important; margin: 0 56px 0 0 !important; padding: 0 0 14px !important; border: 0 !important; border-bottom: 2px solid #E0B02D !important; display: inline-block; background: none !important;
}
html body.page-id-90527 .fx-lbhp .fx-hp-intro:not(#fx) { margin: 16px 0 22px !important; padding: 0 !important; font: 400 16px/1.55 'Open Sans', sans-serif !important; color: #2e4a66 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-tabs:not(#fx) { display: flex; gap: 10px; margin: 0 0 24px; }
html body.page-id-90527 .fx-lbhp .fx-hp-tab:not(#fx) {
  flex: 1 1 0; display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 10px 12px; border-radius: 48px; border: 2px solid; background: #fff !important; box-shadow: none !important;
  font: 600 15px 'Open Sans', sans-serif !important; letter-spacing: .02em !important; text-transform: none !important; cursor: pointer; transition: background-color .15s, color .15s;
}
html body.page-id-90527 .fx-lbhp .fx-hp-tab svg:not(#fx) { width: 18px; height: 18px; fill: currentColor; flex: none; }
html body.page-id-90527 .fx-lbhp .fx-hp-tab.r:not(#fx) { color: #1f4fa3 !important; border-color: #bccdee !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-tab.f:not(#fx) { color: #1f86d6 !important; border-color: #bcdcf5 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-tab.r:not(#fx):hover { background: #eff3fb !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-tab.f:not(#fx):hover { background: #eef6fd !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-tab.r[aria-selected="true"]:not(#fx) { background: #1f4fa3 !important; color: #fff !important; border-color: #1f4fa3 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-tab.f[aria-selected="true"]:not(#fx) { background: #1f86d6 !important; color: #fff !important; border-color: #1f86d6 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-pane:not(#fx) { display: none; }
html body.page-id-90527 .fx-lbhp .fx-hp-pane.on:not(#fx) { display: block; }
html body.page-id-90527 .fx-lbhp .fx-hp-h:not(#fx) { font: 600 17px 'Playfair Display', serif !important; letter-spacing: .12em !important; text-transform: uppercase !important; margin: 0 0 8px !important; padding: 0 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-pane.r .fx-hp-h:not(#fx) { color: #1f4fa3 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-pane.f .fx-hp-h:not(#fx) { color: #1f86d6 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-p:not(#fx) { font: 400 15.5px/1.6 'Open Sans', sans-serif !important; color: #2e4a66 !important; margin: 0 0 14px !important; padding: 0 !important; }
html body.page-id-90527 .fx-lbhp .fx-hp-step:not(#fx) { display: flex; gap: 14px; margin: 22px 0 8px; }
html body.page-id-90527 .fx-lbhp .fx-hp-n:not(#fx) { flex: none; width: 30px; height: 30px; border-radius: 50%; background: #E0B02D; color: #1f3550; font: 700 15px 'Open Sans', sans-serif; display: flex; align-items: center; justify-content: center; margin-top: 1px; }
html body.page-id-90527 .fx-lbhp .fx-hp-step b:not(#fx) { display: block; font: 600 15.5px 'Open Sans', sans-serif; color: #1f3550; margin-bottom: 3px; }
html body.page-id-90527 .fx-lbhp .fx-hp-step span:not(#fx) { font: 400 15.5px/1.55 'Open Sans', sans-serif; color: #2e4a66; }
html body.page-id-90527 .fx-lbhp .fx-hp-step span b:not(#fx) { display: inline; font-weight: 600; margin: 0; }
html body.page-id-90527 .fx-lbhp .fx-hp-fig:not(#fx) { margin: 12px 0 6px; background: #f3f5fb; border: 1px solid #dfe4f2; border-radius: 12px; padding: 8px; overflow-x: auto; }
html body.page-id-90527 .fx-lbhp .fx-hp-fig img:not(#fx) { display: block; width: 100%; height: auto; max-width: none; border-radius: 8px; margin: 0; }
html body.page-id-90527 .fx-lbhp .fx-hp-note:not(#fx) { margin-top: 22px; background: #fbf4df; border: 1px solid #ecd89a; border-left: 5px solid #E0B02D; border-radius: 10px; padding: 16px 20px; font: 400 15px/1.55 'Open Sans', sans-serif; color: #000; }
html body.page-id-90527 .fx-lbhp .fx-hp-note b:not(#fx) { display: block; font: 600 14px 'Playfair Display', serif; letter-spacing: .12em; text-transform: uppercase; color: #1f3550; margin-bottom: 4px; }
html body.page-id-90527 .fx-lbhp .fx-hp-close:not(#fx) {
  display: flex; align-items: center; justify-content: center; margin: 26px auto 0; background: #2e4a66 !important; color: #fff !important; border: 0 !important; border-radius: 8px !important; height: 48px; padding: 0 44px;
  font: 500 15px 'Open Sans', sans-serif !important; letter-spacing: .03em !important; text-transform: none !important; cursor: pointer; transition: background-color .15s;
}
html body.page-id-90527 .fx-lbhp .fx-hp-close:not(#fx):hover { background: #E0B02D !important; color: #fff !important; }
@media (max-width: 700px) {
  html body.page-id-90527 .fx-lbhp .fx-hp:not(#fx) { padding: 26px 16px 22px; }
  html body.page-id-90527 .fx-lbhp .fx-hp-title:not(#fx) { font-size: 19px !important; letter-spacing: .1em !important; margin-right: 44px !important; }
  html body.page-id-90527 .fx-lbhp .fx-hp-tab:not(#fx) { font-size: 14px !important; padding: 10px 6px; gap: 6px; }
  html body.page-id-90527 .fx-lbhp .fx-hp-tab svg:not(#fx) { width: 16px; height: 16px; }
  html body.page-id-90527 .fx-lbhp .fx-hp-fig:not(#fx) { padding: 5px; }
}
/* ===== END 2026 - Audio Help Page Button CSS ===== */

/* ---- SOURCE #91221 ---- */
/* ===== 2026 - Protected Lightbox Audio Help CSS (protected pages only, whole site, front end) =====
   New look for the Thrive lightbox "Recently Played & Favorites" (Thrive lightbox id 79601, the Help lightbox on the Audio pages).
   Only that lightbox, marked class fx-lbhp by "2026 - Protected Lightbox Audio Help JS", gets this look; every other lightbox is NOT touched.
   The JS builds the new content (two pill tabs: Recently Played sapphire, Favorites azure; numbered steps; pictures; gold Please Note box) and hides the old Thrive tabs. */
html.fx-lbhp-open body.ppp-protected .tve_p_lb_overlay:not(#fx) {
  background: radial-gradient(ellipse at center, rgba(46, 74, 102, .94) 0%, rgba(31, 53, 80, .96) 70%, rgba(20, 36, 56, .98) 100%) !important;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
html body.ppp-protected .fx-lbhp .tve_p_lb_content:not(#fx) {
  background: #fff !important; border: 0 !important; border-radius: 16px !important; box-shadow: 0 18px 60px rgba(0, 0, 0, .45) !important;
  max-width: min(860px, calc(100vw - 24px)) !important; margin-left: auto !important; margin-right: auto !important;
}
html body.ppp-protected .fx-lbhp .tve_p_lb_content .tve_p_lb_inner:not(#fx) { border-radius: 16px !important; padding: 0 !important; }
html body.ppp-protected .fx-lbhp .tve_p_lb_content .tve_p_lb_inner > article:not(#fx) { display: none !important; }

/* close X */
html body.ppp-protected .fx-lbhp .tve_p_lb_close:not(#fx) {
  top: 14px !important; right: 14px !important; width: 40px !important; height: 40px !important; border-radius: 50% !important; box-sizing: border-box !important;
  background: #2e4a66 !important; border: 0 !important; box-shadow: 0 2px 10px rgba(31, 53, 80, .35) !important;
  font-size: 0 !important; line-height: 0 !important; color: transparent !important; text-indent: -999px; overflow: hidden; z-index: 5;
  transition: background-color .15s, transform .15s !important; text-decoration: none !important;
}
html body.ppp-protected .fx-lbhp .tve_p_lb_close:not(#fx)::before, html body.ppp-protected .fx-lbhp .tve_p_lb_close:not(#fx)::after {
  content: ''; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; margin: -1px 0 0 -8px; background: #fff; border-radius: 2px; text-indent: 0;
}
html body.ppp-protected .fx-lbhp .tve_p_lb_close:not(#fx)::before { transform: rotate(45deg); }
html body.ppp-protected .fx-lbhp .tve_p_lb_close:not(#fx)::after { transform: rotate(-45deg); }
html body.ppp-protected .fx-lbhp .tve_p_lb_close:not(#fx):hover { background: #E0B02D !important; transform: scale(1.06); }

/* the new content */
html body.ppp-protected .fx-lbhp .fx-hp:not(#fx) { box-sizing: border-box; padding: 34px 34px 30px; font-family: 'Open Sans', sans-serif; color: #2e4a66; text-align: left; }
html body.ppp-protected .fx-lbhp .fx-hp *:not(#fx) { box-sizing: border-box; }
html body.ppp-protected .fx-lbhp .fx-hp-title:not(#fx) {
  font-family: 'Playfair Display', serif !important; font-weight: 600 !important; font-size: 24px !important; line-height: 1.25 !important; letter-spacing: .14em !important;
  text-transform: uppercase !important; color: #1f3550 !important; margin: 0 56px 0 0 !important; padding: 0 0 14px !important; border: 0 !important; border-bottom: 2px solid #E0B02D !important; display: inline-block; background: none !important;
}
html body.ppp-protected .fx-lbhp .fx-hp-intro:not(#fx) { margin: 16px 0 22px !important; padding: 0 !important; font: 400 16px/1.55 'Open Sans', sans-serif !important; color: #2e4a66 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-tabs:not(#fx) { display: flex; gap: 10px; margin: 0 0 24px; }
html body.ppp-protected .fx-lbhp .fx-hp-tab:not(#fx) {
  flex: 1 1 0; display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 10px 12px; border-radius: 48px; border: 2px solid; background: #fff !important; box-shadow: none !important;
  font: 600 15px 'Open Sans', sans-serif !important; letter-spacing: .02em !important; text-transform: none !important; cursor: pointer; transition: background-color .15s, color .15s;
}
html body.ppp-protected .fx-lbhp .fx-hp-tab svg:not(#fx) { width: 18px; height: 18px; fill: currentColor; flex: none; }
html body.ppp-protected .fx-lbhp .fx-hp-tab.r:not(#fx) { color: #1f4fa3 !important; border-color: #bccdee !important; }
html body.ppp-protected .fx-lbhp .fx-hp-tab.f:not(#fx) { color: #1f86d6 !important; border-color: #bcdcf5 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-tab.r:not(#fx):hover { background: #eff3fb !important; }
html body.ppp-protected .fx-lbhp .fx-hp-tab.f:not(#fx):hover { background: #eef6fd !important; }
html body.ppp-protected .fx-lbhp .fx-hp-tab.r[aria-selected="true"]:not(#fx) { background: #1f4fa3 !important; color: #fff !important; border-color: #1f4fa3 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-tab.f[aria-selected="true"]:not(#fx) { background: #1f86d6 !important; color: #fff !important; border-color: #1f86d6 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-pane:not(#fx) { display: none; }
html body.ppp-protected .fx-lbhp .fx-hp-pane.on:not(#fx) { display: block; }
html body.ppp-protected .fx-lbhp .fx-hp-h:not(#fx) { font: 600 17px 'Playfair Display', serif !important; letter-spacing: .12em !important; text-transform: uppercase !important; margin: 0 0 8px !important; padding: 0 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-pane.r .fx-hp-h:not(#fx) { color: #1f4fa3 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-pane.f .fx-hp-h:not(#fx) { color: #1f86d6 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-p:not(#fx) { font: 400 15.5px/1.6 'Open Sans', sans-serif !important; color: #2e4a66 !important; margin: 0 0 14px !important; padding: 0 !important; }
html body.ppp-protected .fx-lbhp .fx-hp-step:not(#fx) { display: flex; gap: 14px; margin: 22px 0 8px; }
html body.ppp-protected .fx-lbhp .fx-hp-n:not(#fx) { flex: none; width: 30px; height: 30px; border-radius: 50%; background: #E0B02D; color: #1f3550; font: 700 15px 'Open Sans', sans-serif; display: flex; align-items: center; justify-content: center; margin-top: 1px; }
html body.ppp-protected .fx-lbhp .fx-hp-step b:not(#fx) { display: block; font: 600 15.5px 'Open Sans', sans-serif; color: #1f3550; margin-bottom: 3px; }
html body.ppp-protected .fx-lbhp .fx-hp-step span:not(#fx) { font: 400 15.5px/1.55 'Open Sans', sans-serif; color: #2e4a66; }
html body.ppp-protected .fx-lbhp .fx-hp-step span b:not(#fx) { display: inline; font-weight: 600; margin: 0; }
html body.ppp-protected .fx-lbhp .fx-hp-fig:not(#fx) { margin: 12px 0 6px; background: #f3f5fb; border: 1px solid #dfe4f2; border-radius: 12px; padding: 8px; overflow-x: auto; }
html body.ppp-protected .fx-lbhp .fx-hp-fig img:not(#fx) { display: block; width: 100%; height: auto; max-width: none; border-radius: 8px; margin: 0; }
html body.ppp-protected .fx-lbhp .fx-hp-note:not(#fx) { margin-top: 22px; background: #fbf4df; border: 1px solid #ecd89a; border-left: 5px solid #E0B02D; border-radius: 10px; padding: 16px 20px; font: 400 15px/1.55 'Open Sans', sans-serif; color: #000; }
html body.ppp-protected .fx-lbhp .fx-hp-note b:not(#fx) { display: block; font: 600 14px 'Playfair Display', serif; letter-spacing: .12em; text-transform: uppercase; color: #1f3550; margin-bottom: 4px; }
html body.ppp-protected .fx-lbhp .fx-hp-close:not(#fx) {
  display: flex; align-items: center; justify-content: center; margin: 26px auto 0; background: #2e4a66 !important; color: #fff !important; border: 0 !important; border-radius: 8px !important; height: 48px; padding: 0 44px;
  font: 500 15px 'Open Sans', sans-serif !important; letter-spacing: .03em !important; text-transform: none !important; cursor: pointer; transition: background-color .15s;
}
html body.ppp-protected .fx-lbhp .fx-hp-close:not(#fx):hover { background: #E0B02D !important; color: #fff !important; }
@media (max-width: 700px) {
  html body.ppp-protected .fx-lbhp .fx-hp:not(#fx) { padding: 26px 16px 22px; }
  html body.ppp-protected .fx-lbhp .fx-hp-title:not(#fx) { font-size: 19px !important; letter-spacing: .1em !important; margin-right: 44px !important; }
  html body.ppp-protected .fx-lbhp .fx-hp-tab:not(#fx) { font-size: 14px !important; padding: 10px 6px; gap: 6px; }
  html body.ppp-protected .fx-lbhp .fx-hp-tab svg:not(#fx) { width: 16px; height: 16px; }
  html body.ppp-protected .fx-lbhp .fx-hp-fig:not(#fx) { padding: 5px; }
}
/* ===== END 2026 - Protected Lightbox Audio Help CSS ===== */

/* ---- SOURCE #91202 ---- */
/* ===== 2026 - Recently Played Page Look CSS (page /recently-played-favorites/, body class page-id-90527; front end) =====
   Gives the Recently Played & Favorites page the same look as the Recent and Favorites lightboxes:
   - SELECT label with lines, and the two buttons as one rounded switch with an icon each (Recently Played sapphire #1f4fa3, Favorites azure #1f86d6; selected = filled, hover = white)
   - each pane: Playfair caps heading with a round icon badge, the new player (Program Title, Track description, play button with a pulsing ring, bar progress bar, skip / speed / volume / heart),
     restyled track rows, "picks up where you left off" note, Remove All Favorites button centred under the list (outlined, fills on hover)
   - Back to Streaming / Dashboard buttons and the gold up arrow are NOT touched; there is no Close button on the page
   Pair with "2026 - Recently Played Page Look JS". Keep the older "2026 - Dashboard Recently Played" CSS / JS and "2026 - Favorites Playlist" (they still do the banner, tabs behaviour and layout). */

/* ---- fx-rpr ---- */
html body.page-id-90527 .fx-rpr { --m: #1f4fa3; --dk: #17397a; --t: #d9e3f6; --l: #eff3fb; --s: #bccdee; --bar: #aebfe3; --ring: rgba(31,79,163,.45); --ring0: rgba(31,79,163,0); }
html body.page-id-90527 .fx-rpr .fx-rpr-ic:not(#fx) { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: var(--m); display: flex; align-items: center; justify-content: center; box-shadow: 0 3px 10px rgba(31, 53, 80, .22); }
html body.page-id-90527 .fx-rpr .fx-rpr-ic svg:not(#fx) { width: 22px; height: 22px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpr .fx-rpr-ic svg .f:not(#fx) { fill: #fff; }
html body.page-id-90527 .fx-rpr .fx-rpr-src:not(#fx) { position: absolute !important; left: -9999px !important; top: 0 !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
html body.page-id-90527 .fx-rpr .fx-rpr-pl:not(#fx) { background: var(--t); border: 1px solid var(--s); border-radius: 14px; padding: 18px 22px 12px; margin: 0 0 18px; color: #1f3550; font-family: 'Open Sans', sans-serif; box-sizing: border-box; }
html body.page-id-90527 .fx-rpr .fx-rpr-pl[hidden]:not(#fx) { display: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-prog:not(#fx) { font-family: 'Playfair Display', serif; font-weight: 600; font-size: 21px; line-height: 1.25; color: #1f3550; }
html body.page-id-90527 .fx-rpr .fx-rpr-desc:not(#fx) { font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--dk); margin: 4px 0 8px; }
html body.page-id-90527 .fx-rpr .fx-rpr-meta:not(#fx) { display: flex; align-items: center; gap: 4px 14px; flex-wrap: wrap; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #52667c; }
html body.page-id-90527 .fx-rpr .fx-rpr-time:not(#fx) { margin-left: auto; font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: #1f3550; font-variant-numeric: tabular-nums; white-space: nowrap; }
html body.page-id-90527 .fx-rpr .fx-rpr-main:not(#fx) { display: flex; align-items: center; gap: 16px; margin-top: 12px; }
html body.page-id-90527 .fx-rpr .fx-rpr-btn:not(#fx) { flex: 0 0 60px; width: 60px; height: 60px; border-radius: 50%; border: 0; background: var(--m); display: flex; align-items: center; justify-content: center; padding: 0; margin: 0; cursor: pointer; transition: background .2s; box-shadow: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-btn:not(#fx):hover, html body.page-id-90527 .fx-rpr .fx-rpr-btn:not(#fx):focus-visible { background: var(--dk); outline: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-btn svg { width: 24px; height: 24px; fill: #fff; }
html body.page-id-90527 .fx-rpr .fx-rpr-btn .fx-i-pause { display: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-pl.fx-playing .fx-rpr-btn .fx-i-play { display: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-pl.fx-playing .fx-rpr-btn .fx-i-pause { display: block; }
html body.page-id-90527 .fx-rpr .fx-rpr-pl.fx-playing .fx-rpr-btn:not(#fx) { animation: fx-rprring 1.4s ease-out infinite; }
@keyframes fx-rprring { 0% { box-shadow: 0 0 0 0 var(--ring); } 100% { box-shadow: 0 0 0 16px var(--ring0); } }
html body.page-id-90527 .fx-rpr .fx-rpr-wave { position: relative; flex: 1 1 auto; min-width: 0; height: 60px; overflow: hidden; max-width: 100%; }
html body.page-id-90527 .fx-rpr .fx-rpr-bars { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; overflow: hidden; max-width: 100%; }
html body.page-id-90527 .fx-rpr .fx-rpr-bars span { flex: 0 0 3px; width: 3px; border-radius: 2px; background: var(--bar); }
html body.page-id-90527 .fx-rpr .fx-rpr-bars span.on { background: var(--m); }
html body.page-id-90527 .fx-rpr .fx-rpr-head { position: absolute; top: 2px; width: 2px; height: 56px; margin-left: -1px; border-radius: 1px; background: var(--dk); pointer-events: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-seek:not(#fx) { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
html body.page-id-90527 .fx-rpr .fx-rpr-ctl { display: flex; align-items: center; justify-content: space-between; gap: 6px 12px; flex-wrap: wrap; margin-top: 4px; }
html body.page-id-90527 .fx-rpr .fx-rpr-skips { display: flex; gap: 4px; }
html body.page-id-90527 .fx-rpr .fx-rpr-ic2:not(#fx) { width: 40px; height: 40px; border-radius: 50%; border: 0; background: transparent; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; margin: 0; box-shadow: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-ic2 svg { width: 26px; height: 26px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpr .fx-rpr-ic2 svg text { font-family: 'Open Sans', sans-serif; font-size: 8.5px; font-weight: 700; fill: #1f3550; stroke: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-ic2:hover svg { stroke: var(--m); }
html body.page-id-90527 .fx-rpr .fx-rpr-ic2:hover svg text { fill: var(--m); }
html body.page-id-90527 .fx-rpr .fx-rpr-fav svg { width: 29px; height: 29px; stroke: var(--m); }
html body.page-id-90527 .fx-rpr .fx-rpr-fav.on svg { fill: var(--m); stroke: var(--m); }
html body.page-id-90527 .fx-rpr .fx-rpr-fav[hidden] { display: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-speed:not(#fx) { min-width: 64px; height: 36px; padding: 0 14px; margin: 0; border-radius: 18px; border: 1.5px solid var(--m); background: #fff; color: var(--dk); font-family: 'Open Sans', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-speed:not(#fx):hover { background: var(--m); border-color: var(--m); color: #fff; }
html body.page-id-90527 .fx-rpr .fx-rpr-vol { display: flex; align-items: center; gap: 8px; }
html body.page-id-90527 .fx-rpr .fx-rpr-vol svg { width: 20px; height: 20px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpr .fx-rpr-vs:not(#fx) { --v: 70%; -webkit-appearance: none; appearance: none; width: 110px; height: 6px; margin: 0; padding: 0; border-radius: 3px; background: linear-gradient(to right, var(--m) var(--v), var(--bar) var(--v)); outline: none; cursor: pointer; border: 0; }
html body.page-id-90527 .fx-rpr .fx-rpr-vs::-webkit-slider-thumb { -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: var(--m); border: 2px solid #fff; box-shadow: 0 0 0 1px var(--m); }
html body.page-id-90527 .fx-rpr .fx-rpr-vs::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--m); border: 2px solid #fff; }
html body.page-id-90527 .fx-rpr .playlist:not(#fx) { background: var(--l) !important; border: 1px solid var(--s); border-radius: 14px; padding: 6px 0 8px !important; margin: 0 !important; width: 100% !important; max-width: none !important; box-sizing: border-box; }
html body.page-id-90527 .fx-rpr .srp_tracklist:not(#fx), html body.page-id-90527 .fx-rpr .srp_tracklist .srp_list:not(#fx) { background: transparent !important; }
html body.page-id-90527 .fx-rpr ul.srp_list:not(#fx) { margin: 0 !important; padding: 0 !important; height: auto !important; max-height: 276px !important; overflow-x: hidden !important; overflow-y: auto !important; scrollbar-width: thin; scrollbar-color: var(--m) var(--s); }
html body.page-id-90527 .fx-rpr ul.srp_list::-webkit-scrollbar { width: 8px; }
html body.page-id-90527 .fx-rpr ul.srp_list::-webkit-scrollbar-track { background: var(--s); border-radius: 999px; }
html body.page-id-90527 .fx-rpr ul.srp_list::-webkit-scrollbar-thumb { background: var(--m); border-radius: 999px; }
html body.page-id-90527 .fx-rpr .ps__rail-y:not(#fx), html body.page-id-90527 .fx-rpr .ps__rail-x:not(#fx) { display: none !important; }
html body.page-id-90527 .fx-rpr .sr-playlist-item:not(#fx) { margin: 0 10px !important; padding: 5px 16px 5px 14px !important; min-height: 46px; box-sizing: border-box; border-radius: 8px; border-left: 4px solid transparent; font-family: 'Open Sans', sans-serif; background: transparent !important; }
html body.page-id-90527 .fx-rpr .sr-playlist-item:hover:not(#fx) { background: #fff !important; }
html body.page-id-90527 .fx-rpr .sr-playlist-item.current:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.page-id-90527 .fx-rpr .sr-playlist-item.current:not(#fx) .tracklist-item-title { font-weight: 700 !important; }
html body.page-id-90527 .fx-rpr .track-number .number:not(#fx) { display: none !important; }
html body.page-id-90527 .fx-rpr .track-number:not(#fx) { min-width: 0 !important; width: auto !important; }
html body.page-id-90527 .fx-rpr .track-number i:not(#fx) { color: var(--m) !important; }
html body.page-id-90527 .fx-rpr .tracklist-item-title:not(#fx), html body.page-id-90527 .fx-rpr .tracklist-item-title *:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 14px !important; line-height: 1.35 !important; font-weight: 500 !important; color: #1f3550 !important; white-space: normal !important; overflow: visible !important; text-overflow: clip !important; }
html body.page-id-90527 .fx-rpr .tracklist-item-time:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; color: #52667c !important; font-variant-numeric: tabular-nums; }
html body.page-id-90527 .fx-rpr .srp-fav-bt:not(#fx), html body.page-id-90527 .fx-rpr .srp-fav-bt i:not(#fx) { font-size: 22px !important; color: var(--m) !important; }
html body.page-id-90527 .fx-rpr .srp-fav-bt:not(#fx):hover, html body.page-id-90527 .fx-rpr .srp-fav-bt:not(#fx):hover i { color: var(--dk) !important; }
html body.page-id-90527 .fx-rpr .srp-fav-notfound:not(#fx) { font-family: 'Open Sans', sans-serif; font-size: 15px; color: #1f3550; padding: 18px 22px; background: var(--l); border: 1px solid var(--s); border-radius: 14px; margin: 0 0 18px; }
html body.page-id-90527 .fx-rpr .srp-fav-notfound:not(#fx) i { color: var(--m) !important; }
html body.page-id-90527 .fx-rpr .fx-rpr-resume:not(#fx) { display: flex; align-items: center; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--s); font-family: 'Open Sans', sans-serif; font-size: 13px; color: #52667c; }
html body.page-id-90527 .fx-rpr .fx-rpr-resume[hidden]:not(#fx) { display: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-resume svg { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke: var(--m); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpr .sr-playlist-item.fx-rest:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.page-id-90527 .fx-rpr .sr-playlist-item.fx-rest:not(#fx) .tracklist-item-title { font-weight: 700 !important; }
@media (max-width: 700px) {
html body.page-id-90527 .fx-rpr .fx-rpr-ic:not(#fx) { flex-basis: 34px; width: 34px; height: 34px; }
html body.page-id-90527 .fx-rpr .fx-rpr-ic svg:not(#fx) { width: 18px; height: 18px; }
html body.page-id-90527 .fx-rpr .fx-rpr-pl:not(#fx) { padding: 14px 14px 8px; }
html body.page-id-90527 .fx-rpr .fx-rpr-prog:not(#fx) { font-size: 18px; }
html body.page-id-90527 .fx-rpr .fx-rpr-main:not(#fx) { gap: 12px; }
html body.page-id-90527 .fx-rpr .fx-rpr-ctl { gap: 4px; flex-wrap: nowrap; }
html body.page-id-90527 .fx-rpr .fx-rpr-speed:not(#fx) { min-width: 52px; padding: 0 8px; }
html body.page-id-90527 .fx-rpr .fx-rpr-vs:not(#fx) { width: 56px; }
html body.page-id-90527 .fx-rpr .fx-rpr-vol { gap: 6px; }
html body.page-id-90527 .fx-rpr .sr-playlist-item:not(#fx) { margin: 0 6px !important; padding: 5px 8px 5px 10px !important; }
html body.page-id-90527 .fx-rpr ul.srp_list:not(#fx) { max-height: 250px !important; }
html body.page-id-90527 .fx-rpr .fx-rpr-bars span:nth-child(2n):not(#fx) { display: none; }
}

/* ---- fx-rpf ---- */
html body.page-id-90527 .fx-rpf { --m: #1f86d6; --dk: #14609b; --t: #d6eafa; --l: #eef6fd; --s: #bcdcf5; --bar: #a9cdec; --ring: rgba(31,134,214,.5); --ring0: rgba(31,134,214,0); }
html body.page-id-90527 .fx-rpf .fx-rpf-ic:not(#fx) { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: var(--m); display: flex; align-items: center; justify-content: center; box-shadow: 0 3px 10px rgba(31, 53, 80, .22); }
html body.page-id-90527 .fx-rpf .fx-rpf-ic svg:not(#fx) { width: 22px; height: 22px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpf .fx-rpf-ic svg .f:not(#fx) { fill: #fff; }
html body.page-id-90527 .fx-rpf .fx-rpf-src:not(#fx) { position: absolute !important; left: -9999px !important; top: 0 !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
html body.page-id-90527 .fx-rpf .fx-rpf-pl:not(#fx) { background: var(--t); border: 1px solid var(--s); border-radius: 14px; padding: 18px 22px 12px; margin: 0 0 18px; color: #1f3550; font-family: 'Open Sans', sans-serif; box-sizing: border-box; }
html body.page-id-90527 .fx-rpf .fx-rpf-pl[hidden]:not(#fx) { display: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-prog:not(#fx) { font-family: 'Playfair Display', serif; font-weight: 600; font-size: 21px; line-height: 1.25; color: #1f3550; }
html body.page-id-90527 .fx-rpf .fx-rpf-desc:not(#fx) { font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--dk); margin: 4px 0 8px; }
html body.page-id-90527 .fx-rpf .fx-rpf-meta:not(#fx) { display: flex; align-items: center; gap: 4px 14px; flex-wrap: wrap; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #52667c; }
html body.page-id-90527 .fx-rpf .fx-rpf-time:not(#fx) { margin-left: auto; font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: #1f3550; font-variant-numeric: tabular-nums; white-space: nowrap; }
html body.page-id-90527 .fx-rpf .fx-rpf-main:not(#fx) { display: flex; align-items: center; gap: 16px; margin-top: 12px; }
html body.page-id-90527 .fx-rpf .fx-rpf-btn:not(#fx) { flex: 0 0 60px; width: 60px; height: 60px; border-radius: 50%; border: 0; background: var(--m); display: flex; align-items: center; justify-content: center; padding: 0; margin: 0; cursor: pointer; transition: background .2s; box-shadow: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-btn:not(#fx):hover, html body.page-id-90527 .fx-rpf .fx-rpf-btn:not(#fx):focus-visible { background: var(--dk); outline: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-btn svg { width: 24px; height: 24px; fill: #fff; }
html body.page-id-90527 .fx-rpf .fx-rpf-btn .fx-i-pause { display: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-pl.fx-playing .fx-rpf-btn .fx-i-play { display: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-pl.fx-playing .fx-rpf-btn .fx-i-pause { display: block; }
html body.page-id-90527 .fx-rpf .fx-rpf-pl.fx-playing .fx-rpf-btn:not(#fx) { animation: fx-rpfring 1.4s ease-out infinite; }
@keyframes fx-rpfring { 0% { box-shadow: 0 0 0 0 var(--ring); } 100% { box-shadow: 0 0 0 16px var(--ring0); } }
html body.page-id-90527 .fx-rpf .fx-rpf-wave { position: relative; flex: 1 1 auto; min-width: 0; height: 60px; overflow: hidden; max-width: 100%; }
html body.page-id-90527 .fx-rpf .fx-rpf-bars { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; overflow: hidden; max-width: 100%; }
html body.page-id-90527 .fx-rpf .fx-rpf-bars span { flex: 0 0 3px; width: 3px; border-radius: 2px; background: var(--bar); }
html body.page-id-90527 .fx-rpf .fx-rpf-bars span.on { background: var(--m); }
html body.page-id-90527 .fx-rpf .fx-rpf-head { position: absolute; top: 2px; width: 2px; height: 56px; margin-left: -1px; border-radius: 1px; background: var(--dk); pointer-events: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-seek:not(#fx) { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
html body.page-id-90527 .fx-rpf .fx-rpf-ctl { display: flex; align-items: center; justify-content: space-between; gap: 6px 12px; flex-wrap: wrap; margin-top: 4px; }
html body.page-id-90527 .fx-rpf .fx-rpf-skips { display: flex; gap: 4px; }
html body.page-id-90527 .fx-rpf .fx-rpf-ic2:not(#fx) { width: 40px; height: 40px; border-radius: 50%; border: 0; background: transparent; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; margin: 0; box-shadow: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-ic2 svg { width: 26px; height: 26px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpf .fx-rpf-ic2 svg text { font-family: 'Open Sans', sans-serif; font-size: 8.5px; font-weight: 700; fill: #1f3550; stroke: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-ic2:hover svg { stroke: var(--m); }
html body.page-id-90527 .fx-rpf .fx-rpf-ic2:hover svg text { fill: var(--m); }
html body.page-id-90527 .fx-rpf .fx-rpf-fav svg { width: 29px; height: 29px; stroke: var(--m); }
html body.page-id-90527 .fx-rpf .fx-rpf-fav.on svg { fill: var(--m); stroke: var(--m); }
html body.page-id-90527 .fx-rpf .fx-rpf-fav[hidden] { display: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-speed:not(#fx) { min-width: 64px; height: 36px; padding: 0 14px; margin: 0; border-radius: 18px; border: 1.5px solid var(--m); background: #fff; color: var(--dk); font-family: 'Open Sans', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-speed:not(#fx):hover { background: var(--m); border-color: var(--m); color: #fff; }
html body.page-id-90527 .fx-rpf .fx-rpf-vol { display: flex; align-items: center; gap: 8px; }
html body.page-id-90527 .fx-rpf .fx-rpf-vol svg { width: 20px; height: 20px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpf .fx-rpf-vs:not(#fx) { --v: 70%; -webkit-appearance: none; appearance: none; width: 110px; height: 6px; margin: 0; padding: 0; border-radius: 3px; background: linear-gradient(to right, var(--m) var(--v), var(--bar) var(--v)); outline: none; cursor: pointer; border: 0; }
html body.page-id-90527 .fx-rpf .fx-rpf-vs::-webkit-slider-thumb { -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: var(--m); border: 2px solid #fff; box-shadow: 0 0 0 1px var(--m); }
html body.page-id-90527 .fx-rpf .fx-rpf-vs::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--m); border: 2px solid #fff; }
html body.page-id-90527 .fx-rpf .playlist:not(#fx) { background: var(--l) !important; border: 1px solid var(--s); border-radius: 14px; padding: 6px 0 8px !important; margin: 0 !important; width: 100% !important; max-width: none !important; box-sizing: border-box; }
html body.page-id-90527 .fx-rpf .srp_tracklist:not(#fx), html body.page-id-90527 .fx-rpf .srp_tracklist .srp_list:not(#fx) { background: transparent !important; }
html body.page-id-90527 .fx-rpf ul.srp_list:not(#fx) { margin: 0 !important; padding: 0 !important; height: auto !important; max-height: 276px !important; overflow-x: hidden !important; overflow-y: auto !important; scrollbar-width: thin; scrollbar-color: var(--m) var(--s); }
html body.page-id-90527 .fx-rpf ul.srp_list::-webkit-scrollbar { width: 8px; }
html body.page-id-90527 .fx-rpf ul.srp_list::-webkit-scrollbar-track { background: var(--s); border-radius: 999px; }
html body.page-id-90527 .fx-rpf ul.srp_list::-webkit-scrollbar-thumb { background: var(--m); border-radius: 999px; }
html body.page-id-90527 .fx-rpf .ps__rail-y:not(#fx), html body.page-id-90527 .fx-rpf .ps__rail-x:not(#fx) { display: none !important; }
html body.page-id-90527 .fx-rpf .sr-playlist-item:not(#fx) { margin: 0 10px !important; padding: 5px 16px 5px 14px !important; min-height: 46px; box-sizing: border-box; border-radius: 8px; border-left: 4px solid transparent; font-family: 'Open Sans', sans-serif; background: transparent !important; }
html body.page-id-90527 .fx-rpf .sr-playlist-item:hover:not(#fx) { background: #fff !important; }
html body.page-id-90527 .fx-rpf .sr-playlist-item.current:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.page-id-90527 .fx-rpf .sr-playlist-item.current:not(#fx) .tracklist-item-title { font-weight: 700 !important; }
html body.page-id-90527 .fx-rpf .track-number .number:not(#fx) { display: none !important; }
html body.page-id-90527 .fx-rpf .track-number:not(#fx) { min-width: 0 !important; width: auto !important; }
html body.page-id-90527 .fx-rpf .track-number i:not(#fx) { color: var(--m) !important; }
html body.page-id-90527 .fx-rpf .tracklist-item-title:not(#fx), html body.page-id-90527 .fx-rpf .tracklist-item-title *:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 14px !important; line-height: 1.35 !important; font-weight: 500 !important; color: #1f3550 !important; white-space: normal !important; overflow: visible !important; text-overflow: clip !important; }
html body.page-id-90527 .fx-rpf .tracklist-item-time:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; color: #52667c !important; font-variant-numeric: tabular-nums; }
html body.page-id-90527 .fx-rpf .srp-fav-bt:not(#fx), html body.page-id-90527 .fx-rpf .srp-fav-bt i:not(#fx) { font-size: 22px !important; color: var(--m) !important; }
html body.page-id-90527 .fx-rpf .srp-fav-bt:not(#fx):hover, html body.page-id-90527 .fx-rpf .srp-fav-bt:not(#fx):hover i { color: var(--dk) !important; }
html body.page-id-90527 .fx-rpf .srp-fav-notfound:not(#fx) { font-family: 'Open Sans', sans-serif; font-size: 15px; color: #1f3550; padding: 18px 22px; background: var(--l); border: 1px solid var(--s); border-radius: 14px; margin: 0 0 18px; }
html body.page-id-90527 .fx-rpf .srp-fav-notfound:not(#fx) i { color: var(--m) !important; }
html body.page-id-90527 .fx-rpf .fx-rpf-resume:not(#fx) { display: flex; align-items: center; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--s); font-family: 'Open Sans', sans-serif; font-size: 13px; color: #52667c; }
html body.page-id-90527 .fx-rpf .fx-rpf-resume[hidden]:not(#fx) { display: none; }
html body.page-id-90527 .fx-rpf .fx-rpf-resume svg { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke: var(--m); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rpf .sr-playlist-item.fx-rest:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.page-id-90527 .fx-rpf .sr-playlist-item.fx-rest:not(#fx) .tracklist-item-title { font-weight: 700 !important; }
@media (max-width: 700px) {
html body.page-id-90527 .fx-rpf .fx-rpf-ic:not(#fx) { flex-basis: 34px; width: 34px; height: 34px; }
html body.page-id-90527 .fx-rpf .fx-rpf-ic svg:not(#fx) { width: 18px; height: 18px; }
html body.page-id-90527 .fx-rpf .fx-rpf-pl:not(#fx) { padding: 14px 14px 8px; }
html body.page-id-90527 .fx-rpf .fx-rpf-prog:not(#fx) { font-size: 18px; }
html body.page-id-90527 .fx-rpf .fx-rpf-main:not(#fx) { gap: 12px; }
html body.page-id-90527 .fx-rpf .fx-rpf-ctl { gap: 4px; flex-wrap: nowrap; }
html body.page-id-90527 .fx-rpf .fx-rpf-speed:not(#fx) { min-width: 52px; padding: 0 8px; }
html body.page-id-90527 .fx-rpf .fx-rpf-vs:not(#fx) { width: 56px; }
html body.page-id-90527 .fx-rpf .fx-rpf-vol { gap: 6px; }
html body.page-id-90527 .fx-rpf .sr-playlist-item:not(#fx) { margin: 0 6px !important; padding: 5px 8px 5px 10px !important; }
html body.page-id-90527 .fx-rpf ul.srp_list:not(#fx) { max-height: 250px !important; }
html body.page-id-90527 .fx-rpf .fx-rpf-bars span:nth-child(2n):not(#fx) { display: none; }
}

/* ===== page pieces: SELECT label, the two pill buttons, pane heading, bottom row ===== */
html body.page-id-90527 .fx-rp-select:not(#fx) { display: flex; align-items: center; justify-content: center; gap: 16px; font-family: 'Open Sans', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .26em; text-transform: uppercase; color: #52667c; margin: 0 0 18px; }
html body.page-id-90527 .fx-rp-select:not(#fx)::before, html body.page-id-90527 .fx-rp-select:not(#fx)::after { content: ''; flex: 0 0 44px; height: 2px; border-radius: 2px; background: #dfe4f2; }
html body.page-id-90527 .fx-rp-tabs:not(#fx) { display: flex; flex-wrap: nowrap; justify-content: center; gap: 6px; width: fit-content; max-width: 100%; margin: 0 auto; padding: 6px; background: #eef2fa; border: 1px solid #dfe4f2; border-radius: 999px; box-sizing: border-box; }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab:not(#fx) { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 52px; min-width: 0; padding: 0 28px; margin: 0; border: 0 !important; border-radius: 999px; background: transparent !important; box-shadow: none; font-family: 'Open Sans', sans-serif; font-size: 16px; font-weight: 600; letter-spacing: .01em; cursor: pointer; white-space: nowrap; transition: background-color .18s, color .18s, box-shadow .18s, transform .18s; }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab:not(#fx) svg { flex: 0 0 22px; width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab:not(#fx) svg .f { fill: currentColor; }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab[data-tab="recent"]:not(#fx) { color: #1f4fa3 !important; }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab[data-tab="fav"]:not(#fx) { color: #1f86d6 !important; }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab[data-tab="recent"]:not(#fx):hover { background: #fff !important; box-shadow: 0 2px 10px rgba(31, 79, 163, .22); }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab[data-tab="fav"]:not(#fx):hover { background: #fff !important; box-shadow: 0 2px 10px rgba(31, 134, 214, .25); }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab[data-tab="recent"][aria-selected="true"]:not(#fx) { background: #1f4fa3 !important; color: #fff !important; box-shadow: 0 4px 14px rgba(31, 79, 163, .4); }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab[data-tab="fav"][aria-selected="true"]:not(#fx) { background: #1f86d6 !important; color: #fff !important; box-shadow: 0 4px 14px rgba(31, 134, 214, .42); }
html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab:not(#fx):focus-visible { outline: 3px solid #E0B02D; outline-offset: 2px; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rp-icon:not(#fx) { display: none !important; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rp-player:not(#fx) { max-width: 800px; margin: 0 auto; padding: 0; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rp-player:not(#fx) > p { display: none; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpr-ttl:not(#fx) { display: flex; align-items: center; justify-content: center; gap: 14px; position: relative; margin: 30px 0 26px; padding: 0 0 18px; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpf-ttl:not(#fx) { display: flex; align-items: center; justify-content: center; gap: 14px; position: relative; margin: 30px 0 26px; padding: 0 0 18px; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpr-ttl:not(#fx)::after { content: ''; position: absolute; left: 50%; bottom: 0; width: 64px; height: 2px; margin-left: -32px; background: var(--m); }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpf-ttl:not(#fx)::after { content: ''; position: absolute; left: 50%; bottom: 0; width: 64px; height: 2px; margin-left: -32px; background: var(--m); }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpr-ttl:not(#fx) > span:first-child { font-family: 'Playfair Display', serif; font-weight: 600; font-size: 24px; line-height: 1.25; letter-spacing: .14em; text-transform: uppercase; color: #1f3550; text-align: center; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpf-ttl:not(#fx) > span:first-child { font-family: 'Playfair Display', serif; font-weight: 600; font-size: 24px; line-height: 1.25; letter-spacing: .14em; text-transform: uppercase; color: #1f3550; text-align: center; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpr-foot:not(#fx) { display: flex; justify-content: center; margin: 22px 0 4px; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpf-foot:not(#fx) { display: flex; justify-content: center; margin: 22px 0 4px; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpr-foot:empty:not(#fx) { display: none; }
html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpf-foot:empty:not(#fx) { display: none; }
html body.page-id-90527 .fx-rpr .fx-rpr-foot .srp-fav-removeall-wrapper:not(#fx) { margin: 0 !important; display: block; }
html body.page-id-90527 .fx-rpf .fx-rpf-foot .srp-fav-removeall-wrapper:not(#fx) { margin: 0 !important; display: block; }
html body.page-id-90527 .fx-rpr .fx-rpr-foot .srp-fav-removeall-bt:not(#fx) { height: 48px; padding: 0 26px !important; margin: 0 !important; box-sizing: border-box; display: inline-flex !important; align-items: center; border-radius: 8px !important; border: 1.5px solid var(--m) !important; background: #fff !important; color: var(--dk) !important; font-family: 'Open Sans', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: .02em; cursor: pointer; white-space: nowrap; transition: background .15s, color .15s; }
html body.page-id-90527 .fx-rpf .fx-rpf-foot .srp-fav-removeall-bt:not(#fx) { height: 48px; padding: 0 26px !important; margin: 0 !important; box-sizing: border-box; display: inline-flex !important; align-items: center; border-radius: 8px !important; border: 1.5px solid var(--m) !important; background: #fff !important; color: var(--dk) !important; font-family: 'Open Sans', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: .02em; cursor: pointer; white-space: nowrap; transition: background .15s, color .15s; }
html body.page-id-90527 .fx-rpr .fx-rpr-foot .srp-fav-removeall-bt:not(#fx):hover, html body.page-id-90527 .fx-rpr .fx-rpr-foot .srp-fav-removeall-bt:not(#fx):focus { background: var(--m) !important; color: #fff !important; }
html body.page-id-90527 .fx-rpf .fx-rpf-foot .srp-fav-removeall-bt:not(#fx):hover, html body.page-id-90527 .fx-rpf .fx-rpf-foot .srp-fav-removeall-bt:not(#fx):focus { background: var(--m) !important; color: #fff !important; }
html body.page-id-90527 .fx-rpr ul.srp_list.ps:not(#fx) { scrollbar-color: var(--m) var(--s) !important; }
html body.page-id-90527 .fx-rpf ul.srp_list.ps:not(#fx) { scrollbar-color: var(--m) var(--s) !important; }
html body.page-id-90527 .fx-rpr ul.srp_list.ps:not(#fx)::-webkit-scrollbar-track { background: var(--s) !important; }
html body.page-id-90527 .fx-rpf ul.srp_list.ps:not(#fx)::-webkit-scrollbar-track { background: var(--s) !important; }
html body.page-id-90527 .fx-rpr ul.srp_list.ps:not(#fx)::-webkit-scrollbar-thumb { background: var(--m) !important; }
html body.page-id-90527 .fx-rpf ul.srp_list.ps:not(#fx)::-webkit-scrollbar-thumb { background: var(--m) !important; }
html body.page-id-90527 .fx-rpr ul.srp_list.ps:not(#fx)::-webkit-scrollbar-thumb:hover { background: var(--dk) !important; }
html body.page-id-90527 .fx-rpf ul.srp_list.ps:not(#fx)::-webkit-scrollbar-thumb:hover { background: var(--dk) !important; }
html body.page-id-90527 .fx-rpr ul.srp_list:not(#fx) { max-height: 300px !important; }
html body.page-id-90527 .fx-rpf ul.srp_list:not(#fx), html body.page-id-90527 .fx-rpf ul.srp_list.ps:not(#fx) { height: auto !important; max-height: 460px !important; }
html body.page-id-90527 .fx-rpf .playlist:not(#fx) { padding-bottom: 8px !important; }
@media (max-width: 700px) {
  html body.page-id-90527 .fx-rp-tabs:not(#fx) { width: 100%; }
  html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab:not(#fx) { flex: 1 1 0; padding: 0 10px; gap: 7px; font-size: 14.5px; height: 48px; }
  html body.page-id-90527 .fx-rp-tabs:not(#fx) .fx-rp-tab:not(#fx) svg { flex-basis: 19px; width: 19px; height: 19px; }
  html body.page-id-90527 .fx-rp-select:not(#fx) { font-size: 13px; letter-spacing: .22em; margin-bottom: 14px; }
  html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpr-ttl:not(#fx) { gap: 10px; margin: 22px 0 20px; }
  html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpf-ttl:not(#fx) { gap: 10px; margin: 22px 0 20px; }
  html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpr-ttl:not(#fx) > span:first-child { font-size: 17px; letter-spacing: .08em; }
  html body.page-id-90527 .fx-rp-pane:not(#fx) .fx-rpf-ttl:not(#fx) > span:first-child { font-size: 17px; letter-spacing: .08em; }
  html body.page-id-90527 .fx-rpr ul.srp_list:not(#fx) { max-height: 270px !important; }
  html body.page-id-90527 .fx-rpf ul.srp_list:not(#fx), html body.page-id-90527 .fx-rpf ul.srp_list.ps:not(#fx) { max-height: 330px !important; }
}

/* empty Favorites: solid heart in the message; Remove All Favorites hidden while the list is empty */
html body.page-id-90527 .fx-rpf .srp-fav-notfound:not(#fx) i { display: inline-block !important; width: 16px; height: 16px; margin-right: 8px; vertical-align: -2px; font-size: 0 !important; line-height: 0 !important; background: var(--m) !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-5.2-8-11a4.6 4.6 0 0 1 8-3 4.6 4.6 0 0 1 8 3c0 5.8-8 11-8 11z'/%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'%3E%3Cpath d='M12 21s-8-5.2-8-11a4.6 4.6 0 0 1 8-3 4.6 4.6 0 0 1 8 3c0 5.8-8 11-8 11z'/%3E%3C/svg%3E") center / contain no-repeat; }
html body.page-id-90527 .fx-rpf.fx-empty .srp-fav-removeall-wrapper:not(#fx) { display: none !important; }
/* ===== END 2026 - Recently Played Page Look CSS ===== */

/* ---- SOURCE #91183 ---- */
/* ===== 2026 - Favorites Colour CSS (front end, whole site) =====
   ONE place for the Favorites colour everywhere the audio players show it. Was gold, now azure blue #1f86d6 (darker #14609b for hover and small text).
   - heart on a playlist row that IS a favorite (playlists on the protected pages, Recently Played & Favorites page): azure instead of gold #F5C842 (the plugin's own colour setting)
   - every heart in the Favorites player (page and lightbox): azure
   - the filled heart on the single-track player of the protected Audio and Podcast pages (the round heart button under the player): azure instead of gold
   - the message that fades in at the bottom of the screen: "Added to your Favorites" azure, "Removed from your Favorites" coral red #c8453b (class set by "2026 - Favorites Colour JS")
   To change the Favorites colour later, replace #1f86d6 / #14609b in this one file. */

/* ---- hearts on playlist rows: a favorite is the icon sricon-heart (a track that is not a favorite is sricon-heart-fill, navy: unchanged) ---- */
html body .iron-audioplayer .playlist a.song-store.srp-fav-bt i.sricon-heart:not(#fx) { color: #1f86d6 !important; }
html body .iron-audioplayer .playlist a.song-store.srp-fav-bt:hover i.sricon-heart:not(#fx) { color: #14609b !important; }
/* ---- the Favorites player (every heart in it is a favorite) ---- */
html body .sr-tmpl-facim-favorites .iron-audioplayer .playlist a.song-store:not(.sr_store_wc_round_bt):not(#fx),
html body .sr-tmpl-facim-favorites .iron-audioplayer .playlist a.song-store:not(.sr_store_wc_round_bt) i:not(#fx),
html body .sr-tmpl-facim-favorites .iron-audioplayer .playlist a.song-store:not(.sr_store_wc_round_bt) svg:not(#fx),
html body .sr-tmpl-facim-favorites .iron-audioplayer .playlist a.song-store:not(.sr_store_wc_round_bt) path:not(#fx) { color: #1f86d6 !important; fill: #1f86d6 !important; }
html body .sr-tmpl-facim-favorites .iron-audioplayer .playlist a.song-store:not(.sr_store_wc_round_bt):hover i:not(#fx) { color: #14609b !important; }

/* ---- the round heart button under the single-track player (protected Audio and Podcast pages) ---- */
html body .fx-pl-fav.on:not(#fx) svg { fill: #1f86d6 !important; stroke: #1f86d6 !important; }
html body .fx-pl-fav:not(#fx):hover svg { stroke: #14609b !important; }
html body .fx-pl-fav.on:not(#fx):hover svg { fill: #14609b !important; }

/* ---- the message that fades in at the bottom of the screen ---- */
html body .srp-fav-notification:not(#fx) {
  background-color: #1f86d6 !important; color: #fff !important; border-radius: 999px !important; font-family: 'Open Sans', sans-serif !important; font-size: 15px !important; font-weight: 600 !important;
  letter-spacing: .02em; box-shadow: 0 8px 24px rgba(20, 50, 80, .28);
}
html body .srp-fav-notification.fx-fav-removed:not(#fx) { background-color: #c8453b !important; }
/* ===== END 2026 - Favorites Colour CSS ===== */

/* ---- SOURCE #91179 ---- */
/* ===== 2026 - Protected Lightbox Favorites CSS (protected pages only, whole site, front end) =====
   New look for the Thrive lightbox "Favorites" (Thrive lightbox id 76703). Only that lightbox, marked class fx-lbfv by "2026 - Protected Lightbox Favorites JS", gets this look; every other lightbox is NOT touched.
   Same family as the Smart Resume lightbox (navy glass background, white 16px panel, Playfair caps title, round X, Close button) and the same player design as the protected Audio pages
   (round play button with a pulsing ring, bar-style progress bar, skip / speed / volume / heart controls, restyled track rows).
   Bottom row: Remove All Favorites on the left, Close in the centre. Colour set: Favorites = azure blue (E2), light sky panels. */
html.fx-lbfv-open body.ppp-protected .tve_p_lb_overlay:not(#fx) {
  background: radial-gradient(ellipse at center, rgba(46, 74, 102, .94) 0%, rgba(31, 53, 80, .96) 70%, rgba(20, 36, 56, .98) 100%) !important;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
html body.ppp-protected .fx-lbfv { --m: #1f86d6; --dk: #14609b; --t: #d6eafa; --l: #eef6fd; --s: #bcdcf5; --bar: #a9cdec; --ring: rgba(31,134,214,.5); --ring0: rgba(31,134,214,0); }
html body.ppp-protected .fx-lbfv .tve_p_lb_content:not(#fx) {
  background: #fff !important; border: 0 !important; border-radius: 16px !important; box-shadow: 0 18px 60px rgba(0, 0, 0, .45) !important;
  max-width: min(800px, calc(100vw - 24px)) !important; margin-left: auto !important; margin-right: auto !important;
}
html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve_p_lb_inner:not(#fx) { border-radius: 16px !important; padding-top: 14px !important; padding-bottom: 18px !important; }

/* title: Playfair caps, a round icon badge to its right, underline in the colour set */
html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child:not(#fx),
html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve-cb > .thrv_text_element:first-child:not(#fx) {
  background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; display: flex !important; align-items: center; justify-content: center; gap: 14px;
  width: auto !important; max-width: none !important; margin: 18px 64px 24px !important; padding: 0 0 18px !important; text-align: center !important; position: relative;
}
html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child *:not(#fx):not(.fx-lbfv-ic):not(.fx-lbfv-ic *),
html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve-cb > .thrv_text_element:first-child *:not(#fx):not(.fx-lbfv-ic):not(.fx-lbfv-ic *) {
  font-family: 'Playfair Display', serif !important; font-weight: 600 !important; font-size: 24px !important; line-height: 1.25 !important; letter-spacing: .14em !important;
  text-transform: uppercase !important; color: #1f3550 !important; text-align: center !important; margin: 0 !important; background: none !important; padding: 0 !important;
}
html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child::after,
html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve-cb > .thrv_text_element:first-child::after {
  content: ''; position: absolute; left: 50%; bottom: 0; width: 64px; height: 2px; margin-left: -32px; background: var(--m);
}
html body.ppp-protected .fx-lbfv .fx-lbfv-ic:not(#fx) { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: var(--m); display: flex; align-items: center; justify-content: center; box-shadow: 0 3px 10px rgba(31, 53, 80, .22); }
html body.ppp-protected .fx-lbfv .fx-lbfv-ic svg:not(#fx) { width: 22px; height: 22px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbfv .fx-lbfv-ic svg .f:not(#fx) { fill: #fff; }

/* the original Sonaar player stays (it does the playing) but sits off screen; the new player below is what you see */
html body.ppp-protected .fx-lbfv .fx-lbfv-src:not(#fx) { position: absolute !important; left: -9999px !important; top: 0 !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
html body.ppp-protected .fx-lbfv .tve_p_lb_content .thrv_custom_html_shortcode:not(#fx) { padding: 0 28px !important; margin: 0 !important; }
html body.ppp-protected .fx-lbfv .tve_p_lb_content .thrv_custom_html_shortcode > p:not(#fx) { display: none; }

/* ---- the player card ---- */
html body.ppp-protected .fx-lbfv .fx-lbfv-pl:not(#fx) { background: var(--t); border: 1px solid var(--s); border-radius: 14px; padding: 18px 22px 12px; margin: 0 0 18px; color: #1f3550; font-family: 'Open Sans', sans-serif; box-sizing: border-box; }
html body.ppp-protected .fx-lbfv .fx-lbfv-pl[hidden]:not(#fx) { display: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-prog:not(#fx) { font-family: 'Playfair Display', serif; font-weight: 600; font-size: 21px; line-height: 1.25; color: #1f3550; }
html body.ppp-protected .fx-lbfv .fx-lbfv-desc:not(#fx) { font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--dk); margin: 4px 0 8px; }
html body.ppp-protected .fx-lbfv .fx-lbfv-meta:not(#fx) { display: flex; align-items: center; gap: 4px 14px; flex-wrap: wrap; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #52667c; }
html body.ppp-protected .fx-lbfv .fx-lbfv-time:not(#fx) { margin-left: auto; font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: #1f3550; font-variant-numeric: tabular-nums; white-space: nowrap; }
html body.ppp-protected .fx-lbfv .fx-lbfv-main:not(#fx) { display: flex; align-items: center; gap: 16px; margin-top: 12px; }
html body.ppp-protected .fx-lbfv .fx-lbfv-btn:not(#fx) { flex: 0 0 60px; width: 60px; height: 60px; border-radius: 50%; border: 0; background: var(--m); display: flex; align-items: center; justify-content: center; padding: 0; margin: 0; cursor: pointer; transition: background .2s; box-shadow: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-btn:not(#fx):hover, html body.ppp-protected .fx-lbfv .fx-lbfv-btn:not(#fx):focus-visible { background: var(--dk); outline: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-btn svg { width: 24px; height: 24px; fill: #fff; }
html body.ppp-protected .fx-lbfv .fx-lbfv-btn .fx-i-pause { display: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-pl.fx-playing .fx-lbfv-btn .fx-i-play { display: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-pl.fx-playing .fx-lbfv-btn .fx-i-pause { display: block; }
html body.ppp-protected .fx-lbfv .fx-lbfv-pl.fx-playing .fx-lbfv-btn:not(#fx) { animation: fx-lbfvring 1.4s ease-out infinite; }
@keyframes fx-lbfvring { 0% { box-shadow: 0 0 0 0 var(--ring); } 100% { box-shadow: 0 0 0 16px var(--ring0); } }
html body.ppp-protected .fx-lbfv .fx-lbfv-wave { position: relative; flex: 1 1 auto; min-width: 0; height: 60px; overflow: hidden; max-width: 100%; }
html body.ppp-protected .fx-lbfv .fx-lbfv-bars { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; overflow: hidden; max-width: 100%; }
html body.ppp-protected .fx-lbfv .fx-lbfv-bars span { flex: 0 0 3px; width: 3px; border-radius: 2px; background: var(--bar); }
html body.ppp-protected .fx-lbfv .fx-lbfv-bars span.on { background: var(--m); }
html body.ppp-protected .fx-lbfv .fx-lbfv-head { position: absolute; top: 2px; width: 2px; height: 56px; margin-left: -1px; border-radius: 1px; background: var(--dk); pointer-events: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-seek:not(#fx) { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
html body.ppp-protected .fx-lbfv .fx-lbfv-ctl { display: flex; align-items: center; justify-content: space-between; gap: 6px 12px; flex-wrap: wrap; margin-top: 4px; }
html body.ppp-protected .fx-lbfv .fx-lbfv-skips { display: flex; gap: 4px; }
html body.ppp-protected .fx-lbfv .fx-lbfv-ic2:not(#fx) { width: 40px; height: 40px; border-radius: 50%; border: 0; background: transparent; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; margin: 0; box-shadow: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-ic2 svg { width: 26px; height: 26px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbfv .fx-lbfv-ic2 svg text { font-family: 'Open Sans', sans-serif; font-size: 8.5px; font-weight: 700; fill: #1f3550; stroke: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-ic2:hover svg { stroke: var(--m); }
html body.ppp-protected .fx-lbfv .fx-lbfv-ic2:hover svg text { fill: var(--m); }
html body.ppp-protected .fx-lbfv .fx-lbfv-fav svg { width: 29px; height: 29px; stroke: var(--m); }
html body.ppp-protected .fx-lbfv .fx-lbfv-fav.on svg { fill: var(--m); stroke: var(--m); }
html body.ppp-protected .fx-lbfv .fx-lbfv-fav[hidden] { display: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-speed:not(#fx) { min-width: 64px; height: 36px; padding: 0 14px; margin: 0; border-radius: 18px; border: 1.5px solid var(--m); background: #fff; color: var(--dk); font-family: 'Open Sans', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-speed:not(#fx):hover { background: var(--m); border-color: var(--m); color: #fff; }
html body.ppp-protected .fx-lbfv .fx-lbfv-vol { display: flex; align-items: center; gap: 8px; }
html body.ppp-protected .fx-lbfv .fx-lbfv-vol svg { width: 20px; height: 20px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbfv .fx-lbfv-vs:not(#fx) { --v: 70%; -webkit-appearance: none; appearance: none; width: 110px; height: 6px; margin: 0; padding: 0; border-radius: 3px; background: linear-gradient(to right, var(--m) var(--v), var(--bar) var(--v)); outline: none; cursor: pointer; border: 0; }
html body.ppp-protected .fx-lbfv .fx-lbfv-vs::-webkit-slider-thumb { -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: var(--m); border: 2px solid #fff; box-shadow: 0 0 0 1px var(--m); }
html body.ppp-protected .fx-lbfv .fx-lbfv-vs::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--m); border: 2px solid #fff; }

/* ---- the track list (the original Sonaar rows, restyled) ---- */
html body.ppp-protected .fx-lbfv .playlist:not(#fx) { background: var(--l) !important; border: 1px solid var(--s); border-radius: 14px; padding: 6px 0 8px !important; margin: 0 !important; width: 100% !important; max-width: none !important; box-sizing: border-box; }
html body.ppp-protected .fx-lbfv .srp_tracklist:not(#fx), html body.ppp-protected .fx-lbfv .srp_tracklist .srp_list:not(#fx) { background: transparent !important; }
html body.ppp-protected .fx-lbfv ul.srp_list:not(#fx) { margin: 0 !important; padding: 0 !important; height: auto !important; max-height: 276px !important; overflow-x: hidden !important; overflow-y: auto !important; scrollbar-width: thin; scrollbar-color: var(--m) var(--s); }
html body.ppp-protected .fx-lbfv ul.srp_list::-webkit-scrollbar { width: 8px; }
html body.ppp-protected .fx-lbfv ul.srp_list::-webkit-scrollbar-track { background: var(--s); border-radius: 999px; }
html body.ppp-protected .fx-lbfv ul.srp_list::-webkit-scrollbar-thumb { background: var(--m); border-radius: 999px; }
html body.ppp-protected .fx-lbfv .ps__rail-y:not(#fx), html body.ppp-protected .fx-lbfv .ps__rail-x:not(#fx) { display: none !important; }
html body.ppp-protected .fx-lbfv .sr-playlist-item:not(#fx) { margin: 0 10px !important; padding: 5px 16px 5px 14px !important; min-height: 46px; box-sizing: border-box; border-radius: 8px; border-left: 4px solid transparent; font-family: 'Open Sans', sans-serif; background: transparent !important; }
html body.ppp-protected .fx-lbfv .sr-playlist-item:hover:not(#fx) { background: #fff !important; }
html body.ppp-protected .fx-lbfv .sr-playlist-item.current:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.ppp-protected .fx-lbfv .sr-playlist-item.current:not(#fx) .tracklist-item-title { font-weight: 700 !important; }
html body.ppp-protected .fx-lbfv .track-number .number:not(#fx) { display: none !important; }
html body.ppp-protected .fx-lbfv .track-number:not(#fx) { min-width: 0 !important; width: auto !important; }
html body.ppp-protected .fx-lbfv .track-number i:not(#fx) { color: var(--m) !important; }
html body.ppp-protected .fx-lbfv .tracklist-item-title:not(#fx), html body.ppp-protected .fx-lbfv .tracklist-item-title *:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 14px !important; line-height: 1.35 !important; font-weight: 500 !important; color: #1f3550 !important; white-space: normal !important; overflow: visible !important; text-overflow: clip !important; }
html body.ppp-protected .fx-lbfv .tracklist-item-time:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; color: #52667c !important; font-variant-numeric: tabular-nums; }
html body.ppp-protected .fx-lbfv .srp-fav-bt:not(#fx), html body.ppp-protected .fx-lbfv .srp-fav-bt i:not(#fx) { font-size: 22px !important; color: var(--m) !important; }
html body.ppp-protected .fx-lbfv .srp-fav-bt:not(#fx):hover, html body.ppp-protected .fx-lbfv .srp-fav-bt:not(#fx):hover i { color: var(--dk) !important; }
html body.ppp-protected .fx-lbfv .srp-fav-notfound:not(#fx) { font-family: 'Open Sans', sans-serif; font-size: 15px; color: #1f3550; padding: 18px 22px; background: var(--l); border: 1px solid var(--s); border-radius: 14px; margin: 0 0 18px; }
html body.ppp-protected .fx-lbfv .srp-fav-notfound:not(#fx) i { color: var(--m) !important; }

/* ---- bottom row: Remove All Favorites on the left (Favorites lightbox only), Close in the centre; Thrive's own Close row is hidden ---- */
html body.ppp-protected .fx-lbfv .fx-lbfv-old:not(#fx) { display: none !important; }
html body.ppp-protected .fx-lbfv .fx-lbfv-foot:not(#fx) { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; column-gap: 12px; row-gap: 12px; margin: 24px 0 12px; }
html body.ppp-protected .fx-lbfv .fx-lbfv-foot .srp-fav-removeall-wrapper:not(#fx) { grid-column: 1; grid-row: 1; justify-self: start; margin: 0 !important; display: block; }
html body.ppp-protected .fx-lbfv .fx-lbfv-foot .srp-fav-removeall-bt:not(#fx) { height: 48px; padding: 0 22px !important; margin: 0 !important; box-sizing: border-box; display: inline-flex !important; align-items: center; border-radius: 8px !important; border: 1.5px solid var(--m) !important; background: #fff !important; color: var(--dk) !important; font-family: 'Open Sans', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: .02em; cursor: pointer; white-space: nowrap; transition: background .15s, color .15s; }
html body.ppp-protected .fx-lbfv .fx-lbfv-foot .srp-fav-removeall-bt:not(#fx):hover, html body.ppp-protected .fx-lbfv .fx-lbfv-foot .srp-fav-removeall-bt:not(#fx):focus { background: var(--m) !important; color: #fff !important; }
html body.ppp-protected .fx-lbfv .fx-lbfv-close:not(#fx) { grid-column: 2; grid-row: 1; height: 48px; padding: 0 34px; border: 0; border-radius: 8px; background: #2e4a66; color: #fff; font-family: 'Open Sans', sans-serif; font-size: 15px; font-weight: 500; letter-spacing: .03em; cursor: pointer; transition: background-color .15s; box-shadow: none; margin: 0; }
html body.ppp-protected .fx-lbfv .fx-lbfv-close:not(#fx):hover, html body.ppp-protected .fx-lbfv .fx-lbfv-close:not(#fx):focus-visible { background: #E0B02D; color: #fff; outline: none; }

/* ---- "picks up where you left off" note and the remembered row ---- */
html body.ppp-protected .fx-lbfv .fx-lbfv-resume:not(#fx) { display: flex; align-items: center; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--s); font-family: 'Open Sans', sans-serif; font-size: 13px; color: #52667c; }
html body.ppp-protected .fx-lbfv .fx-lbfv-resume[hidden]:not(#fx) { display: none; }
html body.ppp-protected .fx-lbfv .fx-lbfv-resume svg { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke: var(--m); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbfv .sr-playlist-item.fx-rest:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.ppp-protected .fx-lbfv .sr-playlist-item.fx-rest:not(#fx) .tracklist-item-title { font-weight: 700 !important; }

/* close X (top right, inside the panel) */
html body.ppp-protected .fx-lbfv .tve_p_lb_close:not(#fx) {
  top: 14px !important; right: 14px !important; width: 40px !important; height: 40px !important; border-radius: 50% !important; box-sizing: border-box !important;
  background: #2e4a66 !important; border: 0 !important; box-shadow: 0 2px 10px rgba(31, 53, 80, .35) !important;
  font-size: 0 !important; line-height: 0 !important; color: transparent !important; text-indent: -999px; overflow: hidden; z-index: 5;
  transition: background-color .15s, transform .15s !important; text-decoration: none !important;
}
html body.ppp-protected .fx-lbfv .tve_p_lb_close:not(#fx)::before, html body.ppp-protected .fx-lbfv .tve_p_lb_close:not(#fx)::after {
  content: ''; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; margin: -1px 0 0 -8px; background: #fff; border-radius: 2px; text-indent: 0;
}
html body.ppp-protected .fx-lbfv .tve_p_lb_close:not(#fx)::before { transform: rotate(45deg); }
html body.ppp-protected .fx-lbfv .tve_p_lb_close:not(#fx)::after { transform: rotate(-45deg); }
html body.ppp-protected .fx-lbfv .tve_p_lb_close:not(#fx):hover { background: var(--m) !important; transform: scale(1.06); }

@media (max-width: 700px) {
  html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child:not(#fx), html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve-cb > .thrv_text_element:first-child:not(#fx) { margin: 20px 52px 22px !important; gap: 10px; }
  html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child *:not(#fx):not(.fx-lbfv-ic):not(.fx-lbfv-ic *), html body.ppp-protected .fx-lbfv .tve_p_lb_content .tve-cb > .thrv_text_element:first-child *:not(#fx):not(.fx-lbfv-ic):not(.fx-lbfv-ic *) { font-size: 17px !important; letter-spacing: .08em !important; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-ic:not(#fx) { flex-basis: 34px; width: 34px; height: 34px; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-ic svg:not(#fx) { width: 18px; height: 18px; }
  html body.ppp-protected .fx-lbfv .tve_p_lb_content .thrv_custom_html_shortcode:not(#fx) { padding: 0 14px !important; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-pl:not(#fx) { padding: 14px 14px 8px; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-prog:not(#fx) { font-size: 18px; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-main:not(#fx) { gap: 12px; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-ctl { gap: 4px; flex-wrap: nowrap; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-speed:not(#fx) { min-width: 52px; padding: 0 8px; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-vs:not(#fx) { width: 56px; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-vol { gap: 6px; }
  html body.ppp-protected .fx-lbfv .sr-playlist-item:not(#fx) { margin: 0 6px !important; padding: 5px 8px 5px 10px !important; }
  html body.ppp-protected .fx-lbfv ul.srp_list:not(#fx) { max-height: 250px !important; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-foot:not(#fx) { grid-template-columns: 1fr; justify-items: center; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-foot .srp-fav-removeall-wrapper:not(#fx), html body.ppp-protected .fx-lbfv .fx-lbfv-close:not(#fx) { grid-column: 1; justify-self: center; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-foot .srp-fav-removeall-wrapper:not(#fx) { grid-row: 1; }
  html body.ppp-protected .fx-lbfv .fx-lbfv-close:not(#fx) { grid-row: 2; }
  /* narrow screens: every second progress bar is skipped so the bars do not run together */
  html body.ppp-protected .fx-lbfv .fx-lbfv-bars span:nth-child(2n):not(#fx) { display: none; }
}
/* empty Favorites: solid heart in the message; Remove All Favorites hidden while the list is empty */
html body.ppp-protected .fx-lbfv .srp-fav-notfound:not(#fx) i { display: inline-block !important; width: 16px; height: 16px; margin-right: 8px; vertical-align: -2px; font-size: 0 !important; line-height: 0 !important; background: var(--m) !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-5.2-8-11a4.6 4.6 0 0 1 8-3 4.6 4.6 0 0 1 8 3c0 5.8-8 11-8 11z'/%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'%3E%3Cpath d='M12 21s-8-5.2-8-11a4.6 4.6 0 0 1 8-3 4.6 4.6 0 0 1 8 3c0 5.8-8 11-8 11z'/%3E%3C/svg%3E") center / contain no-repeat; }
html body.ppp-protected .fx-lbfv.fx-empty .srp-fav-removeall-wrapper:not(#fx) { display: none !important; }
/* ===== END 2026 - Protected Lightbox Favorites CSS ===== */

/* ---- SOURCE #91175 ---- */
/* ===== 2026 - Protected Lightbox Recent CSS (protected pages only, whole site, front end) =====
   New look for the Thrive lightbox "Recent" (Thrive lightbox id 76926). Only that lightbox, marked class fx-lbrc by "2026 - Protected Lightbox Recent JS", gets this look; every other lightbox is NOT touched.
   Same family as the Smart Resume lightbox (navy glass background, white 16px panel, Playfair caps title, round X, Close button) and the same player design as the protected Audio pages
   (round play button with a pulsing ring, bar-style progress bar, skip / speed / volume / heart controls, restyled track rows).
   Bottom row: Remove All Favorites on the left, Close in the centre. Colour set: Recent = sapphire blue (E2), light blue-grey panels. */
html.fx-lbrc-open body.ppp-protected .tve_p_lb_overlay:not(#fx) {
  background: radial-gradient(ellipse at center, rgba(46, 74, 102, .94) 0%, rgba(31, 53, 80, .96) 70%, rgba(20, 36, 56, .98) 100%) !important;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
html body.ppp-protected .fx-lbrc { --m: #1f4fa3; --dk: #17397a; --t: #d9e3f6; --l: #eff3fb; --s: #bccdee; --bar: #aebfe3; --ring: rgba(31,79,163,.45); --ring0: rgba(31,79,163,0); }
html body.ppp-protected .fx-lbrc .tve_p_lb_content:not(#fx) {
  background: #fff !important; border: 0 !important; border-radius: 16px !important; box-shadow: 0 18px 60px rgba(0, 0, 0, .45) !important;
  max-width: min(800px, calc(100vw - 24px)) !important; margin-left: auto !important; margin-right: auto !important;
}
html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve_p_lb_inner:not(#fx) { border-radius: 16px !important; padding-top: 14px !important; padding-bottom: 18px !important; }

/* title: Playfair caps, a round icon badge to its right, underline in the colour set */
html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child:not(#fx),
html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve-cb > .thrv_text_element:first-child:not(#fx) {
  background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; display: flex !important; align-items: center; justify-content: center; gap: 14px;
  width: auto !important; max-width: none !important; margin: 18px 64px 24px !important; padding: 0 0 18px !important; text-align: center !important; position: relative;
}
html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child *:not(#fx):not(.fx-lbrc-ic):not(.fx-lbrc-ic *),
html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve-cb > .thrv_text_element:first-child *:not(#fx):not(.fx-lbrc-ic):not(.fx-lbrc-ic *) {
  font-family: 'Playfair Display', serif !important; font-weight: 600 !important; font-size: 24px !important; line-height: 1.25 !important; letter-spacing: .14em !important;
  text-transform: uppercase !important; color: #1f3550 !important; text-align: center !important; margin: 0 !important; background: none !important; padding: 0 !important;
}
html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child::after,
html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve-cb > .thrv_text_element:first-child::after {
  content: ''; position: absolute; left: 50%; bottom: 0; width: 64px; height: 2px; margin-left: -32px; background: var(--m);
}
html body.ppp-protected .fx-lbrc .fx-lbrc-ic:not(#fx) { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: var(--m); display: flex; align-items: center; justify-content: center; box-shadow: 0 3px 10px rgba(31, 53, 80, .22); }
html body.ppp-protected .fx-lbrc .fx-lbrc-ic svg:not(#fx) { width: 22px; height: 22px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbrc .fx-lbrc-ic svg .f:not(#fx) { fill: #fff; }

/* the original Sonaar player stays (it does the playing) but sits off screen; the new player below is what you see */
html body.ppp-protected .fx-lbrc .fx-lbrc-src:not(#fx) { position: absolute !important; left: -9999px !important; top: 0 !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
html body.ppp-protected .fx-lbrc .tve_p_lb_content .thrv_custom_html_shortcode:not(#fx) { padding: 0 28px !important; margin: 0 !important; }
html body.ppp-protected .fx-lbrc .tve_p_lb_content .thrv_custom_html_shortcode > p:not(#fx) { display: none; }

/* ---- the player card ---- */
html body.ppp-protected .fx-lbrc .fx-lbrc-pl:not(#fx) { background: var(--t); border: 1px solid var(--s); border-radius: 14px; padding: 18px 22px 12px; margin: 0 0 18px; color: #1f3550; font-family: 'Open Sans', sans-serif; box-sizing: border-box; }
html body.ppp-protected .fx-lbrc .fx-lbrc-pl[hidden]:not(#fx) { display: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-prog:not(#fx) { font-family: 'Playfair Display', serif; font-weight: 600; font-size: 21px; line-height: 1.25; color: #1f3550; }
html body.ppp-protected .fx-lbrc .fx-lbrc-desc:not(#fx) { font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--dk); margin: 4px 0 8px; }
html body.ppp-protected .fx-lbrc .fx-lbrc-meta:not(#fx) { display: flex; align-items: center; gap: 4px 14px; flex-wrap: wrap; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #52667c; }
html body.ppp-protected .fx-lbrc .fx-lbrc-time:not(#fx) { margin-left: auto; font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: #1f3550; font-variant-numeric: tabular-nums; white-space: nowrap; }
html body.ppp-protected .fx-lbrc .fx-lbrc-main:not(#fx) { display: flex; align-items: center; gap: 16px; margin-top: 12px; }
html body.ppp-protected .fx-lbrc .fx-lbrc-btn:not(#fx) { flex: 0 0 60px; width: 60px; height: 60px; border-radius: 50%; border: 0; background: var(--m); display: flex; align-items: center; justify-content: center; padding: 0; margin: 0; cursor: pointer; transition: background .2s; box-shadow: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-btn:not(#fx):hover, html body.ppp-protected .fx-lbrc .fx-lbrc-btn:not(#fx):focus-visible { background: var(--dk); outline: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-btn svg { width: 24px; height: 24px; fill: #fff; }
html body.ppp-protected .fx-lbrc .fx-lbrc-btn .fx-i-pause { display: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-pl.fx-playing .fx-lbrc-btn .fx-i-play { display: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-pl.fx-playing .fx-lbrc-btn .fx-i-pause { display: block; }
html body.ppp-protected .fx-lbrc .fx-lbrc-pl.fx-playing .fx-lbrc-btn:not(#fx) { animation: fx-lbrcring 1.4s ease-out infinite; }
@keyframes fx-lbrcring { 0% { box-shadow: 0 0 0 0 var(--ring); } 100% { box-shadow: 0 0 0 16px var(--ring0); } }
html body.ppp-protected .fx-lbrc .fx-lbrc-wave { position: relative; flex: 1 1 auto; min-width: 0; height: 60px; overflow: hidden; max-width: 100%; }
html body.ppp-protected .fx-lbrc .fx-lbrc-bars { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; overflow: hidden; max-width: 100%; }
html body.ppp-protected .fx-lbrc .fx-lbrc-bars span { flex: 0 0 3px; width: 3px; border-radius: 2px; background: var(--bar); }
html body.ppp-protected .fx-lbrc .fx-lbrc-bars span.on { background: var(--m); }
html body.ppp-protected .fx-lbrc .fx-lbrc-head { position: absolute; top: 2px; width: 2px; height: 56px; margin-left: -1px; border-radius: 1px; background: var(--dk); pointer-events: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-seek:not(#fx) { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
html body.ppp-protected .fx-lbrc .fx-lbrc-ctl { display: flex; align-items: center; justify-content: space-between; gap: 6px 12px; flex-wrap: wrap; margin-top: 4px; }
html body.ppp-protected .fx-lbrc .fx-lbrc-skips { display: flex; gap: 4px; }
html body.ppp-protected .fx-lbrc .fx-lbrc-ic2:not(#fx) { width: 40px; height: 40px; border-radius: 50%; border: 0; background: transparent; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; margin: 0; box-shadow: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-ic2 svg { width: 26px; height: 26px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbrc .fx-lbrc-ic2 svg text { font-family: 'Open Sans', sans-serif; font-size: 8.5px; font-weight: 700; fill: #1f3550; stroke: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-ic2:hover svg { stroke: var(--m); }
html body.ppp-protected .fx-lbrc .fx-lbrc-ic2:hover svg text { fill: var(--m); }
html body.ppp-protected .fx-lbrc .fx-lbrc-fav svg { width: 29px; height: 29px; stroke: var(--m); }
html body.ppp-protected .fx-lbrc .fx-lbrc-fav.on svg { fill: var(--m); stroke: var(--m); }
html body.ppp-protected .fx-lbrc .fx-lbrc-fav[hidden] { display: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-speed:not(#fx) { min-width: 64px; height: 36px; padding: 0 14px; margin: 0; border-radius: 18px; border: 1.5px solid var(--m); background: #fff; color: var(--dk); font-family: 'Open Sans', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-speed:not(#fx):hover { background: var(--m); border-color: var(--m); color: #fff; }
html body.ppp-protected .fx-lbrc .fx-lbrc-vol { display: flex; align-items: center; gap: 8px; }
html body.ppp-protected .fx-lbrc .fx-lbrc-vol svg { width: 20px; height: 20px; fill: none; stroke: #1f3550; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbrc .fx-lbrc-vs:not(#fx) { --v: 70%; -webkit-appearance: none; appearance: none; width: 110px; height: 6px; margin: 0; padding: 0; border-radius: 3px; background: linear-gradient(to right, var(--m) var(--v), var(--bar) var(--v)); outline: none; cursor: pointer; border: 0; }
html body.ppp-protected .fx-lbrc .fx-lbrc-vs::-webkit-slider-thumb { -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: var(--m); border: 2px solid #fff; box-shadow: 0 0 0 1px var(--m); }
html body.ppp-protected .fx-lbrc .fx-lbrc-vs::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--m); border: 2px solid #fff; }

/* ---- the track list (the original Sonaar rows, restyled) ---- */
html body.ppp-protected .fx-lbrc .playlist:not(#fx) { background: var(--l) !important; border: 1px solid var(--s); border-radius: 14px; padding: 6px 0 8px !important; margin: 0 !important; width: 100% !important; max-width: none !important; box-sizing: border-box; }
html body.ppp-protected .fx-lbrc .srp_tracklist:not(#fx), html body.ppp-protected .fx-lbrc .srp_tracklist .srp_list:not(#fx) { background: transparent !important; }
html body.ppp-protected .fx-lbrc ul.srp_list:not(#fx) { margin: 0 !important; padding: 0 !important; height: auto !important; max-height: 276px !important; overflow-x: hidden !important; overflow-y: auto !important; scrollbar-width: thin; scrollbar-color: var(--m) var(--s); }
html body.ppp-protected .fx-lbrc ul.srp_list::-webkit-scrollbar { width: 8px; }
html body.ppp-protected .fx-lbrc ul.srp_list::-webkit-scrollbar-track { background: var(--s); border-radius: 999px; }
html body.ppp-protected .fx-lbrc ul.srp_list::-webkit-scrollbar-thumb { background: var(--m); border-radius: 999px; }
html body.ppp-protected .fx-lbrc .ps__rail-y:not(#fx), html body.ppp-protected .fx-lbrc .ps__rail-x:not(#fx) { display: none !important; }
html body.ppp-protected .fx-lbrc .sr-playlist-item:not(#fx) { margin: 0 10px !important; padding: 5px 16px 5px 14px !important; min-height: 46px; box-sizing: border-box; border-radius: 8px; border-left: 4px solid transparent; font-family: 'Open Sans', sans-serif; background: transparent !important; }
html body.ppp-protected .fx-lbrc .sr-playlist-item:hover:not(#fx) { background: #fff !important; }
html body.ppp-protected .fx-lbrc .sr-playlist-item.current:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.ppp-protected .fx-lbrc .sr-playlist-item.current:not(#fx) .tracklist-item-title { font-weight: 700 !important; }
html body.ppp-protected .fx-lbrc .track-number .number:not(#fx) { display: none !important; }
html body.ppp-protected .fx-lbrc .track-number:not(#fx) { min-width: 0 !important; width: auto !important; }
html body.ppp-protected .fx-lbrc .track-number i:not(#fx) { color: var(--m) !important; }
html body.ppp-protected .fx-lbrc .tracklist-item-title:not(#fx), html body.ppp-protected .fx-lbrc .tracklist-item-title *:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 14px !important; line-height: 1.35 !important; font-weight: 500 !important; color: #1f3550 !important; white-space: normal !important; overflow: visible !important; text-overflow: clip !important; }
html body.ppp-protected .fx-lbrc .tracklist-item-time:not(#fx) { font-family: 'Open Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; color: #52667c !important; font-variant-numeric: tabular-nums; }
html body.ppp-protected .fx-lbrc .srp-fav-bt:not(#fx), html body.ppp-protected .fx-lbrc .srp-fav-bt i:not(#fx) { font-size: 22px !important; color: var(--m) !important; }
html body.ppp-protected .fx-lbrc .srp-fav-bt:not(#fx):hover, html body.ppp-protected .fx-lbrc .srp-fav-bt:not(#fx):hover i { color: var(--dk) !important; }
html body.ppp-protected .fx-lbrc .srp-fav-notfound:not(#fx) { font-family: 'Open Sans', sans-serif; font-size: 15px; color: #1f3550; padding: 18px 22px; background: var(--l); border: 1px solid var(--s); border-radius: 14px; margin: 0 0 18px; }
html body.ppp-protected .fx-lbrc .srp-fav-notfound:not(#fx) i { color: var(--m) !important; }

/* ---- bottom row: Remove All Favorites on the left (Favorites lightbox only), Close in the centre; Thrive's own Close row is hidden ---- */
html body.ppp-protected .fx-lbrc .fx-lbrc-old:not(#fx) { display: none !important; }
html body.ppp-protected .fx-lbrc .fx-lbrc-foot:not(#fx) { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; column-gap: 12px; row-gap: 12px; margin: 24px 0 12px; }
html body.ppp-protected .fx-lbrc .fx-lbrc-foot .srp-fav-removeall-wrapper:not(#fx) { grid-column: 1; grid-row: 1; justify-self: start; margin: 0 !important; display: block; }
html body.ppp-protected .fx-lbrc .fx-lbrc-foot .srp-fav-removeall-bt:not(#fx) { height: 48px; padding: 0 22px !important; margin: 0 !important; box-sizing: border-box; display: inline-flex !important; align-items: center; border-radius: 8px !important; border: 1.5px solid var(--m) !important; background: #fff !important; color: var(--dk) !important; font-family: 'Open Sans', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: .02em; cursor: pointer; white-space: nowrap; transition: background .15s, color .15s; }
html body.ppp-protected .fx-lbrc .fx-lbrc-foot .srp-fav-removeall-bt:not(#fx):hover, html body.ppp-protected .fx-lbrc .fx-lbrc-foot .srp-fav-removeall-bt:not(#fx):focus { background: var(--m) !important; color: #fff !important; }
html body.ppp-protected .fx-lbrc .fx-lbrc-close:not(#fx) { grid-column: 2; grid-row: 1; height: 48px; padding: 0 34px; border: 0; border-radius: 8px; background: #2e4a66; color: #fff; font-family: 'Open Sans', sans-serif; font-size: 15px; font-weight: 500; letter-spacing: .03em; cursor: pointer; transition: background-color .15s; box-shadow: none; margin: 0; }
html body.ppp-protected .fx-lbrc .fx-lbrc-close:not(#fx):hover, html body.ppp-protected .fx-lbrc .fx-lbrc-close:not(#fx):focus-visible { background: #E0B02D; color: #fff; outline: none; }

/* ---- "picks up where you left off" note and the remembered row ---- */
html body.ppp-protected .fx-lbrc .fx-lbrc-resume:not(#fx) { display: flex; align-items: center; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--s); font-family: 'Open Sans', sans-serif; font-size: 13px; color: #52667c; }
html body.ppp-protected .fx-lbrc .fx-lbrc-resume[hidden]:not(#fx) { display: none; }
html body.ppp-protected .fx-lbrc .fx-lbrc-resume svg { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke: var(--m); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbrc .sr-playlist-item.fx-rest:not(#fx) { background: var(--s) !important; border-left-color: var(--m); }
html body.ppp-protected .fx-lbrc .sr-playlist-item.fx-rest:not(#fx) .tracklist-item-title { font-weight: 700 !important; }

/* close X (top right, inside the panel) */
html body.ppp-protected .fx-lbrc .tve_p_lb_close:not(#fx) {
  top: 14px !important; right: 14px !important; width: 40px !important; height: 40px !important; border-radius: 50% !important; box-sizing: border-box !important;
  background: #2e4a66 !important; border: 0 !important; box-shadow: 0 2px 10px rgba(31, 53, 80, .35) !important;
  font-size: 0 !important; line-height: 0 !important; color: transparent !important; text-indent: -999px; overflow: hidden; z-index: 5;
  transition: background-color .15s, transform .15s !important; text-decoration: none !important;
}
html body.ppp-protected .fx-lbrc .tve_p_lb_close:not(#fx)::before, html body.ppp-protected .fx-lbrc .tve_p_lb_close:not(#fx)::after {
  content: ''; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; margin: -1px 0 0 -8px; background: #fff; border-radius: 2px; text-indent: 0;
}
html body.ppp-protected .fx-lbrc .tve_p_lb_close:not(#fx)::before { transform: rotate(45deg); }
html body.ppp-protected .fx-lbrc .tve_p_lb_close:not(#fx)::after { transform: rotate(-45deg); }
html body.ppp-protected .fx-lbrc .tve_p_lb_close:not(#fx):hover { background: var(--m) !important; transform: scale(1.06); }

@media (max-width: 700px) {
  html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child:not(#fx), html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve-cb > .thrv_text_element:first-child:not(#fx) { margin: 20px 52px 22px !important; gap: 10px; }
  html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child *:not(#fx):not(.fx-lbrc-ic):not(.fx-lbrc-ic *), html body.ppp-protected .fx-lbrc .tve_p_lb_content .tve-cb > .thrv_text_element:first-child *:not(#fx):not(.fx-lbrc-ic):not(.fx-lbrc-ic *) { font-size: 17px !important; letter-spacing: .08em !important; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-ic:not(#fx) { flex-basis: 34px; width: 34px; height: 34px; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-ic svg:not(#fx) { width: 18px; height: 18px; }
  html body.ppp-protected .fx-lbrc .tve_p_lb_content .thrv_custom_html_shortcode:not(#fx) { padding: 0 14px !important; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-pl:not(#fx) { padding: 14px 14px 8px; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-prog:not(#fx) { font-size: 18px; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-main:not(#fx) { gap: 12px; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-ctl { gap: 4px; flex-wrap: nowrap; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-speed:not(#fx) { min-width: 52px; padding: 0 8px; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-vs:not(#fx) { width: 56px; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-vol { gap: 6px; }
  html body.ppp-protected .fx-lbrc .sr-playlist-item:not(#fx) { margin: 0 6px !important; padding: 5px 8px 5px 10px !important; }
  html body.ppp-protected .fx-lbrc ul.srp_list:not(#fx) { max-height: 250px !important; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-foot:not(#fx) { grid-template-columns: 1fr; justify-items: center; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-foot .srp-fav-removeall-wrapper:not(#fx), html body.ppp-protected .fx-lbrc .fx-lbrc-close:not(#fx) { grid-column: 1; justify-self: center; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-foot .srp-fav-removeall-wrapper:not(#fx) { grid-row: 1; }
  html body.ppp-protected .fx-lbrc .fx-lbrc-close:not(#fx) { grid-row: 2; }
  /* narrow screens: every second progress bar is skipped so the bars do not run together */
  html body.ppp-protected .fx-lbrc .fx-lbrc-bars span:nth-child(2n):not(#fx) { display: none; }
}
/* ===== END 2026 - Protected Lightbox Recent CSS ===== */

/* ---- SOURCE #91169 ---- */
/* ===== 2026 - Protected Lightbox Smart Resume CSS (protected pages only, whole site, front end) =====
   New look for the Thrive lightbox "Help - Smart Resume Play" (the Help button on the video pages, Thrive lightbox id 76942).
   Only that lightbox, marked class fx-lbsr by "2026 - Protected Lightbox Smart Resume JS", gets this look; every other lightbox (Recent, Favorites, the other Help ones, login) is NOT touched. Each further lightbox gets its own CSS + JS pair.
   - background behind it: the same deep navy glass as the cover picture pop-up (2026 - Lightbox CSS), slightly see-through, softly blurred
   - panel: white, 16px corners, soft shadow, no border
   - title: Playfair Display, capitals, spaced, gold underline (same as the "About this ..." heading); the old orange pill is removed
   - text: Open Sans 15px black; links navy with a gold underline; bold words navy
   - pictures: thin light border, 10px corners, centered
   - close X: round navy button inside the top right corner, gold on hover; the Close button at the bottom is the standard navy 48px button (gold hover, white text) */
html.fx-lbsr-open body.ppp-protected .tve_p_lb_overlay:not(#fx) {
  background: radial-gradient(ellipse at center, rgba(46, 74, 102, .94) 0%, rgba(31, 53, 80, .96) 70%, rgba(20, 36, 56, .98) 100%) !important;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
html body.ppp-protected .fx-lbsr .tve_p_lb_content:not(#fx) {
  background: #fff !important; border: 0 !important; border-radius: 16px !important; box-shadow: 0 18px 60px rgba(0, 0, 0, .45) !important;
  max-width: min(800px, calc(100vw - 24px)) !important; margin-left: auto !important; margin-right: auto !important;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_p_lb_inner:not(#fx) { border-radius: 16px !important; padding-top: 14px !important; padding-bottom: 16px !important; }

/* title (the first text block in the lightbox: it was an orange / navy pill) */
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child:not(#fx),
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve-cb > .thrv_text_element:first-child:not(#fx) {
  background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  width: auto !important; max-width: none !important; margin: 26px 56px 30px !important; padding: 0 0 18px !important; text-align: center !important; position: relative;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child *:not(#fx),
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve-cb > .thrv_text_element:first-child *:not(#fx) {
  font-family: 'Playfair Display', serif !important; font-weight: 600 !important; font-size: 24px !important; line-height: 1.25 !important; letter-spacing: .14em !important;
  text-transform: uppercase !important; color: #1f3550 !important; text-align: center !important; margin: 0 !important; background: none !important; padding: 0 !important;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child::after,
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve-cb > .thrv_text_element:first-child::after {
  content: ''; position: absolute; left: 50%; bottom: 0; width: 64px; height: 2px; margin-left: -32px; background: #E0B02D;
}

/* text */
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element:not(:first-child) *:not(#fx) {
  font-family: 'Open Sans', sans-serif !important; font-size: 15px !important; line-height: 1.65 !important; letter-spacing: 0 !important;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element:not(:first-child):not(#fx) { color: #000 !important; }
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:not(:first-child):not(#fx), html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve-cb > .thrv_text_element:not(:first-child):not(#fx) { padding-left: 40px; padding-right: 40px; }
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element:not(:first-child) :is(strong, b):not(#fx) { color: #2e4a66 !important; font-weight: 700 !important; }
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element a:not(#fx), html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element a *:not(#fx) { color: #2e4a66 !important; font-weight: 600 !important; text-decoration: none !important; }
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element a:not(#fx) { border-bottom: 1px solid #E0B02D; }
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element a:not(#fx):hover, html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element a:not(#fx):hover * { color: #0d1b3e !important; }

/* pictures */
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_wrapper.tve_image_caption:not(#fx) {
  border: 1px solid #dfe4f2 !important; border-radius: 10px !important; box-shadow: 0 2px 14px rgba(46, 74, 102, .12) !important; overflow: hidden;
  margin: 8px auto 24px !important; max-width: calc(100% - 80px) !important; float: none !important;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_wrapper.tve_image_caption img:not(#fx) { border-radius: 0 !important; }

/* close X (top right, inside the panel) */
html body.ppp-protected .fx-lbsr .tve_p_lb_close:not(#fx) {
  top: 14px !important; right: 14px !important; width: 40px !important; height: 40px !important; border-radius: 50% !important; box-sizing: border-box !important;
  background: #2e4a66 !important; border: 0 !important; box-shadow: 0 2px 10px rgba(31, 53, 80, .35) !important;
  font-size: 0 !important; line-height: 0 !important; color: transparent !important; text-indent: -999px; overflow: hidden; z-index: 5;
  transition: background-color .15s, transform .15s !important; text-decoration: none !important;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_close:not(#fx)::before, html body.ppp-protected .fx-lbsr .tve_p_lb_close:not(#fx)::after {
  content: ''; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; margin: -1px 0 0 -8px; background: #fff; border-radius: 2px; text-indent: 0;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_close:not(#fx)::before { transform: rotate(45deg); }
html body.ppp-protected .fx-lbsr .tve_p_lb_close:not(#fx)::after { transform: rotate(-45deg); }
html body.ppp-protected .fx-lbsr .tve_p_lb_close:not(#fx):hover { background: #E0B02D !important; transform: scale(1.06); }

/* the Close button at the bottom: navy 48px, 8px corners, gold with white text on hover */
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_ea_close_lightbox .tcb-button-link:not(#fx) {
  background: #2e4a66 !important; background-image: none !important; border: 0 !important; border-radius: 8px !important; min-height: 48px !important; padding: 0 34px !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important; box-shadow: none !important; transition: background-color .15s !important;
}
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_ea_close_lightbox .tcb-button-link:not(#fx):hover { background: #E0B02D !important; }
html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_ea_close_lightbox .tcb-button-link *:not(#fx) {
  font-family: 'Open Sans', sans-serif !important; font-size: 15px !important; font-weight: 500 !important; letter-spacing: .03em !important; text-transform: none !important; color: #fff !important;
}
/* the gold note box ("Please Note:"), built by the JS from the Note sentence: same look as the Please Note boxes on the pages */
html body.ppp-protected .fx-lbsr .fx-lbsr-note:not(#fx) {
  display: flex; align-items: center; gap: 16px; box-sizing: border-box; background: #fbf4df; border: 1px solid #ecd89a; border-left: 5px solid #E0B02D; border-radius: 10px;
  padding: 18px 22px; margin: 22px 0 24px; text-align: left;
}
html body.ppp-protected .fx-lbsr .fx-lbsr-note-ico:not(#fx) { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: #fff; display: flex; align-items: center; justify-content: center; }
html body.ppp-protected .fx-lbsr .fx-lbsr-note-ico:not(#fx) svg { width: 22px; height: 22px; fill: none; stroke: #a8761a; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
html body.ppp-protected .fx-lbsr .fx-lbsr-note-body:not(#fx) { flex: 1 1 auto; min-width: 0; }
html body.ppp-protected .fx-lbsr .fx-lbsr-note p:not(#fx), html body.ppp-protected .fx-lbsr .fx-lbsr-note p *:not(#fx) { margin: 0 !important; padding: 0 !important; text-align: left !important; font-style: normal !important; color: #000 !important; }
html body.ppp-protected .fx-lbsr .fx-lbsr-note strong:not(#fx) { color: #000 !important; font-weight: 700 !important; }
html body.ppp-protected .fx-lbsr .fx-lbsr-note a:not(#fx), html body.ppp-protected .fx-lbsr .fx-lbsr-note a *:not(#fx) { color: #2e4a66 !important; }
@media (max-width: 700px) { html body.ppp-protected .fx-lbsr .fx-lbsr-note:not(#fx) { padding: 16px 16px; gap: 12px; align-items: flex-start; } html body.ppp-protected .fx-lbsr .fx-lbsr-note-ico:not(#fx) { flex: 0 0 34px; width: 34px; height: 34px; } }
@media (max-width: 700px) {
  html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child:not(#fx), html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve-cb > .thrv_text_element:first-child:not(#fx) { margin: 22px 52px 24px !important; }
  html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve_shortcode_editor > .thrv_text_element:first-child *:not(#fx), html body.ppp-protected .fx-lbsr .tve_p_lb_content .tve-cb > .thrv_text_element:first-child *:not(#fx) { font-size: 20px !important; letter-spacing: .1em !important; }
  html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_text_element:not(:first-child):not(#fx) { padding-left: 20px; padding-right: 20px; }
  html body.ppp-protected .fx-lbsr .tve_p_lb_content .thrv_wrapper.tve_image_caption:not(#fx) { max-width: calc(100% - 40px) !important; }
}
/* ===== END 2026 - Protected Lightbox Smart Resume CSS ===== */

/* ---- SOURCE #90581 ---- */
/* ===== 2026 - Favorites Playlist ===== */
/* Recently Played & Favorites page: the Favorites playlist shows 10 tracks (the 11th stays hidden),
   a little space under the 10th track, and a navy scrollbar that is always visible when there are more than 10 tracks. */
html body .fx-rp-pane[data-pane="fav"] .srp_tracklist ul.srp_list.ps {
  height: 400px !important; max-height: none !important;
  overflow-x: hidden !important; overflow-y: auto !important;
  scrollbar-width: thin; scrollbar-color: #2e4a66 rgba(46,74,102,.12);
}
html body .fx-rp-pane[data-pane="fav"] .playlist { padding-bottom: 16px !important; }
html body .fx-rp-pane[data-pane="fav"] .srp_tracklist .ps__rail-y,
html body .fx-rp-pane[data-pane="fav"] .srp_tracklist .ps__rail-x { display: none !important; }
html body .fx-rp-pane[data-pane="fav"] .srp_tracklist ul.srp_list.ps::-webkit-scrollbar { width: 10px; }
html body .fx-rp-pane[data-pane="fav"] .srp_tracklist ul.srp_list.ps::-webkit-scrollbar-track { background: rgba(46,74,102,.12); border-radius: 999px; }
html body .fx-rp-pane[data-pane="fav"] .srp_tracklist ul.srp_list.ps::-webkit-scrollbar-thumb { background: #2e4a66; border-radius: 999px; }
html body .fx-rp-pane[data-pane="fav"] .srp_tracklist ul.srp_list.ps::-webkit-scrollbar-thumb:hover { background: #E0B02D; }
/* ===== END 2026 - Favorites Playlist ===== */

/* ---- SOURCE #88669 ---- */
/* ==========================================================================
   Global CSS for every Sonaar/Iron Audioplayer instance sitewide —
   tabbed pages (audio-tabs-widget.html) AND plain single-player pages
   ==========================================================================
   Paste this ONCE into your site's global CSS field (the same one that
   already holds the "Always display white vertical Scrollbar" rule shown
   at the bottom of this file — that existing rule is left in place below,
   not duplicated). Every fix in this file was verified live before
   delivery; see Audio-Tabs-Favorite-Heart-Debug-Notes.md in the project
   for the full history of why each one exists.

   THIS FILE REPLACES three previously-separate pieces:
     1. The <style> block that used to be pasted into every tabbed page's
        Thrive Custom HTML widget (audio-tabs-section.html) — now consolidated
        here so a future fix only needs to happen in ONE place, not on every
        page that has a tabbed player.
     2. global-single-player-fix.css
     3. sonaar-font-open-sans.css
   Do not paste those older files anywhere — this one file covers
   everything they covered, using the broadest selector that's safe for
   each fix so it applies correctly on both page types automatically.

   NOTHING here depends on a page-specific ID or unique markup — every
   selector is a class name, so this same CSS works unchanged on every
   page, whether it has one plain player or a tabbed section with several.
   ========================================================================== */


/* ==========================================================================
   PART 1 — Tabbed-section layout (eyebrow label, tab pills, panels)
   ==========================================================================
   Only matches on pages using audio-tabs-widget.html (the .ap-section
   wrapper) — a no-op everywhere else, so it's safe to have sitewide.
   ========================================================================== */
.ap-section {
  --ap-bg: #F4F4FC;
  --ap-blue: #1a3f8f;
  --ap-active: #2e4a66;
  --ap-tab-border: #d9d7ef;
  --ap-tab-text: #5a5e82;

  width: 100%;
  box-sizing: border-box;
  background: var(--ap-bg);
  padding: 0;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.ap-section *, .ap-section *::before, .ap-section *::after { box-sizing: border-box; }

.ap-wrap {
  --ap-wrap-pad: 24px;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 var(--ap-wrap-pad);
}

.ap-eyebrow {
  text-align: center;
  color: #14336f;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-weight: 800;
  -webkit-text-stroke: 1.1px currentColor;
  text-stroke: 1.1px currentColor;
  font-size: 19px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin: 0 0 18px;
}

/* Tab bar: plain centered, wrapping row. */
.ap-tabbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 12px;
  margin-bottom: 19px;
}

.ap-tab {
  flex: 0 1 auto;
  max-width: 100%;
  background: #ffffff;
  border: 1px solid var(--ap-tab-border);
  color: var(--ap-tab-text);
  font-family: inherit;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  padding: 14px 26px;
  border-radius: 999px;
  cursor: pointer;
  text-align: center;
  /* Long titles wrap onto a second line inside the pill instead of being
     truncated — the label always stays fully readable. */
  white-space: normal;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.12s ease;
}
.ap-tab:hover {
  border-color: var(--ap-blue);
  color: var(--ap-blue);
}
.ap-tab:active { transform: scale(0.98); }
.ap-tab:focus-visible {
  outline: none;
}
.ap-tab.is-active {
  background: var(--ap-active);
  border-color: var(--ap-active);
  color: #ffffff;
}

/* Panels / audio card */
.ap-panels { width: 100%; }
.ap-panel { animation: apFadeIn 0.25s ease; }
@keyframes apFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

.ap-player {
  position: relative;
  /* Breaks out of .ap-wrap's side padding so the player's own white card
     lines up edge-to-edge with the page's other full-column white boxes,
     instead of sitting inset by .ap-wrap's 24px padding on each side. */
  width: calc(100% + (var(--ap-wrap-pad) * 2));
  margin: 0 calc(var(--ap-wrap-pad) * -1);
  min-height: 200px; /* keeps the panel from collapsing while editing, before a real pidn renders content */
  color: var(--ap-tab-text);
  font-size: 14px;
}
.ap-player .tve_iframe_cover {
  display: none !important;
}
.ap-player img,
.ap-player iframe {
  max-width: 100%;
}

/* Tablet */
@media (max-width: 900px) {
  .ap-section { padding: 0; }
  .ap-wrap { --ap-wrap-pad: 18px; padding: 0 var(--ap-wrap-pad); }
  .ap-tab { padding: 12px 20px; font-size: 14px; }
}

/* Phone */
@media (max-width: 560px) {
  .ap-eyebrow { font-size: 15px; letter-spacing: 1px; }
  .ap-tabbar { gap: 10px; }
  .ap-tab { padding: 12px 18px; font-size: 13px; }
}


/* ==========================================================================
   PART 2 — Sonaar playlist row spacing (verified live, applies to every
   player instance sitewide — tabbed and single-player alike)
   ==========================================================================
   Root cause: the Sonaar shortcode's own css="..." attribute tries to
   reserve extra right-side clearance for the vertical scrollbar with a
   rule scoped to the player's unique "#arbitrary-instance-XXXXX" ID
   (auto-prepended by the plugin). On this site that ID gets a random
   suffix added at render time that the plugin's own generated CSS doesn't
   account for, so the ID selector never actually matches and that
   clearance rule silently never applies. The track row itself only had
   5px of right padding (and 0 left padding) by default, so the scrollbar
   thumb sits almost on top of the favorite-heart icon — which is why it
   looked like hearts had disappeared on the tabbed page, and why row
   content looked unevenly gapped left vs. right everywhere.
   Fixed here off the stable ".sr-tmpl-facim-default-1" class from the
   shortcode's own "class" attribute (not the fragile instance ID), scoped
   to nothing else — this is what makes it apply correctly and identically
   on both single-player pages and every tab of the tabbed page.
   ========================================================================== */
.sr-tmpl-facim-default-1 .sr-playlist-item {
  padding-left: 16px !important;
  padding-right: 30px !important;
  box-sizing: border-box !important;
}
.sr-tmpl-facim-default-1 .srp_tracklist .ps--active-y,
.sr-tmpl-facim-default-1 .srp_list.ps--active-y {
  padding-left: 0 !important;
  padding-right: 30px !important;
}
/* No scrollbar showing (short playlist) — a little less right padding
   since there's no 15px rail to clear. Checks .srp_list specifically
   (that's the element the "ps--active-y" class actually lands on) rather
   than its .srp_tracklist wrapper, which never carries that class and
   would otherwise always match here. */
.sr-tmpl-facim-default-1 .srp_list:not(.ps--active-y) .sr-playlist-item {
  padding-right: 16px !important;
}

/* Tablet/phone: same fix, tightened a bit to match the narrower column. */
@media (max-width: 600px) {
  .sr-tmpl-facim-default-1 .sr-playlist-item {
    padding-left: 10px !important;
    padding-right: 26px !important;
  }
  .sr-tmpl-facim-default-1 .srp_list:not(.ps--active-y) .sr-playlist-item {
    padding-right: 12px !important;
  }
}


/* ==========================================================================
   PART 3 — Favorite-heart visibility / clickability (verified live)
   ==========================================================================
   These two rules were originally needed only on the tabbed page (a tab
   panel that starts hidden measures 0px wide/tall at load, which is what
   triggers Sonaar's own broken "collapsed icons" / "never fades in" state
   — see Audio-Tabs-Favorite-Heart-Debug-Notes.md bugs #1 and the
   "hearts vanish on the tab you switch TO" note for the full mechanism).
   Confirmed live that on single-player pages neither ".song-store-list-
   container" nor ".fa-ellipsis-v" is even present in the DOM (Sonaar
   already renders icons inline there, no hidden-panel measurement problem
   to begin with) — so these two rules are a pure no-op on single-player
   pages, not just "probably harmless." Left unscoped so a future page with
   a hidden-at-load player (e.g. inside an accordion, a second tab set,
   etc.) is automatically covered without needing a new rule.
   ========================================================================== */
.song-store-list-container {
  display: flex !important;
  opacity: 1 !important;
  position: relative !important;
  right: 0 !important;
  background: none !important;
  padding: 0 !important;
  pointer-events: initial !important;
}
.fa-ellipsis-v {
  opacity: 0 !important;
  position: absolute !important;
  pointer-events: none !important;
}

/* --------------------------------------------------------------------
   Fix: the favorite heart is completely unclickable on some layouts
   --------------------------------------------------------------------
   Root cause (verified live with getBoundingClientRect and
   elementFromPoint, not guessed): Sonaar's own stylesheet sizes the
   heart/download/share icon column with ".store-list { flex: 0 0 0px }"
   by default, and only overrides that to a real width via a Sonaar PRO
   rule scoped to ".iron-audioplayer.srp_has_customfields ...", which this
   site's players don't carry. On the tabbed page this left ".store-list"
   as a genuine 0×0 pixel box on every row — the heart glyph still
   visually painted, so it looked clickable, but a real click landed on
   the track row underneath instead.

   On single-player pages this does NOT reproduce (confirmed live —
   ".store-list" already sizes to its own content there), so this rule is
   a safety net for that page type: harmless when the column is already
   sized correctly, and it prevents the same 0-width collapse from
   silently breaking the heart if some other page's surrounding CSS
   context causes it. Uses "auto" (not a fixed width) so it sizes to just
   the heart itself rather than reserving Sonaar's PRO-tier space for a
   row of several icons — that fixed-width version left a large empty gap
   between the time and the heart on this player, which only ever shows
   one icon.
   -------------------------------------------------------------------- */
.store-list {
  flex: 0 0 auto !important;
}


/* ==========================================================================
   PART 4 — Font: Montserrat → Open Sans
   ==========================================================================
   Two separate sources both set Montserrat for player text: Sonaar's own
   bundled stylesheet (broadly), and the shortcode's own generated inline
   CSS (the same per-instance "#arbitrary-instance-XXXXX" mechanism as the
   row-padding fix above, scoped to ".srp_player_boxed .track-title/.album-
   title"). This overrides both at once. Open Sans is already loaded on
   this site as a real webfont (confirmed live via document.fonts, weights
   400/500/600 present) — no @font-face or Google Fonts <link> needed.
   ========================================================================== */
.iron-audioplayer,
.iron-audioplayer .playlist .audio-track,
.iron-audioplayer .srp_notfound,
.iron-audioplayer .sr-playlist-cf-container,
.iron-audioplayer .track-title,
.iron-audioplayer .album-store,
.iron-audioplayer .album-title,
.iron-audioplayer .playlist .track-number,
.iron-audioplayer .sr_it-playlist-title,
.iron-audioplayer .srp_player_boxed .track-title,
.iron-audioplayer .srp_player_boxed .album-title {
  font-family: 'Open Sans', sans-serif !important;
}


/* ==========================================================================
   PART 5 — Scrollbar always visible (verified live)
   ==========================================================================
   By default Perfect Scrollbar (the plugin's scrollbar library) keeps its
   custom scrollbar track invisible (opacity: 0) until you hover over the
   list or start scrolling it, and only shows it at all once its container
   gets Perfect Scrollbar's own "ps--active-y" class. Since these
   playlists routinely run past 12 tracks and are basically always
   scrollable, there's no reason to hide it; this keeps it visibly present
   all the time instead.

   This site already had a global rule doing the opacity part before this
   project started (comment from that rule: "Always display white
   vertical Scrollbar on right in Playlist", rule body:
   ".ps__rail-y { opacity: 0.8 !important; }").
   The tabbed page's own version (below) additionally forces "display:
   block" — needed there because a tab panel that starts hidden measures
   0px at load, which can leave Perfect Scrollbar's rail stuck at
   "display:none" even once the tab becomes visible (see Part 3's note on
   the same hidden-at-load measurement issue) — plus a subtle background
   tint so the track is visible even at rest, not just the thumb. This
   consolidated version keeps the stronger, tabbed-page rule sitewide:
   confirmed live it's a safe superset (display:block/opacity/background
   render identically to the simpler version wherever the simpler version
   was already sufficient), so there's no need to keep both rules
   separately. This one rule replaces both the old sitewide rule and the
   old ".ap-player"-scoped one — do not paste the old sitewide rule
   anywhere else once this file is in place, to avoid keeping two copies
   in sync.
   ========================================================================== */
.ps__rail-y {
  display: block !important;
  opacity: 0.75 !important;
  background-color: rgba(13, 27, 62, 0.06) !important;
}

/* ---- SOURCE #76650 ---- */
/* Center Message that No Favorites Found */
.srp-fav-notfound {
	justify-content: center;
}

/* Change foont size of Remove All Favorites button */
.srp-fav-removeall-wrapper .srp-fav-removeall-bt {
	font-size: 15px;
	font-family: 'Open Sans', sans-serif;
}

.srp_notfound .srp_notfound--subtitle {
	color: #ffffff;
}

/* Change the color of the eharts in the favorites to gold */
.iron-audioplayer .playlist a.song-store:not(.sr_store_wc_round_bt) {
	color: #e0b02d;
}

.iron-audioplayer .playlist a.song-store:not(.sr_store_wc_round_bt):hover {
	color:#0D1B3E;
}

/* Change the Remove All Favorites button color to dark blue */
.srp-fav-removeall-wrapper .srp-fav-removeall-bt:not(#tve-x1){
  background:#0D1B3E !important;
  color:#ffffff !important;
}
.srp-fav-removeall-wrapper .srp-fav-removeall-bt:not(#tve-x1):hover,
.srp-fav-removeall-wrapper .srp-fav-removeall-bt:not(#tve-x1):focus{
  background:#0D1B3E !important;
  color:#ffffff !important;
}
}
