/* BPM 370 R18 — navigation, lecteur latéral et enrichissement visuel. */

/* Lecteur personnel interactif dans le menu de droite */
.bpm-r18-player-nav{position:relative}.bpm-r18-player-live-dot{position:absolute;right:5px;bottom:5px;width:7px;height:7px;border-radius:50%;background:#64748b;border:2px solid #070a13;transition:.2s}.bpm-r18-player-nav.is-playing .bpm-r18-player-live-dot{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.14);animation:bpmR18Pulse 1.4s ease-in-out infinite}.bpm-r18-player-nav.is-playing .bpm-r18-player-toggle{color:#dfffee;border-color:rgba(34,197,94,.38);background:rgba(34,197,94,.12)}
.bpm-r18-player-panel{width:min(430px,calc(100vw - 18px));max-height:min(720px,calc(100vh - 78px));overflow:hidden}.bpm-r18-player-head{flex:0 0 auto}.bpm-r18-now{display:grid;grid-template-columns:74px minmax(0,1fr) 38px;gap:12px;align-items:center;padding:14px 15px 8px;background:radial-gradient(circle at 8% 0,rgba(14,165,255,.18),transparent 38%),linear-gradient(180deg,rgba(11,17,31,.98),rgba(7,10,19,.98))}.bpm-r18-now-cover{width:74px;height:74px;border:1px solid rgba(255,255,255,.12);border-radius:20px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,rgba(14,165,255,.22),rgba(45,212,191,.08));color:#9ddcff;cursor:pointer;position:relative}.bpm-r18-now-cover img{width:100%;height:100%;object-fit:cover}.bpm-r18-now-cover i{font-size:34px}.bpm-r18-player-panel.is-playing .bpm-r18-now-cover:after{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.28);border-radius:15px;animation:bpmR18Pulse 1.6s ease-in-out infinite}.bpm-r18-now-copy{min-width:0}.bpm-r18-now-copy>span{display:block;color:#60a5fa;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:900}.bpm-r18-now-copy strong{display:block;color:#fff;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.bpm-r18-now-copy small{display:block;color:#91a0b8;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.bpm-r18-icon-btn{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.05);color:#cbd5e1;display:grid;place-items:center;cursor:pointer}.bpm-r18-icon-btn.active{color:#fb7185;border-color:rgba(251,113,133,.38);background:rgba(251,113,133,.12)}.bpm-r18-icon-btn:disabled{opacity:.35;cursor:not-allowed}
.bpm-r18-timeline{padding:8px 16px 0;background:#070a13}.bpm-r18-timeline input,.bpm-r18-volume-row input{width:100%;accent-color:#0ea5ff;cursor:pointer}.bpm-r18-timeline div{display:flex;justify-content:space-between;color:#7e8ba3;font-size:10px;font-variant-numeric:tabular-nums;margin-top:1px}.bpm-r18-player-controls{display:grid;grid-template-columns:repeat(5,44px);justify-content:center;align-items:center;gap:7px;padding:8px 14px;background:#070a13}.bpm-r18-player-controls button,.bpm-r18-volume-row button{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);color:#cbd5e1;border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:.15s}.bpm-r18-player-controls button{width:42px;height:42px}.bpm-r18-player-controls button:hover,.bpm-r18-volume-row button:hover{color:#fff;background:rgba(14,165,255,.14);border-color:rgba(14,165,255,.35)}.bpm-r18-player-controls button.active{color:#7dd3fc;background:rgba(14,165,255,.14);border-color:rgba(14,165,255,.38)}.bpm-r18-player-controls .bpm-r18-primary-play{width:48px;height:48px;border:0;background:linear-gradient(135deg,#0ea5ff,#2563eb);color:#fff;box-shadow:0 12px 28px rgba(14,165,255,.28);font-size:20px}.bpm-r18-volume-row{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;padding:0 16px 11px;background:#070a13}.bpm-r18-volume-row button{width:32px;height:32px}
.bpm-r18-player-tabs{display:grid;grid-template-columns:repeat(4,1fr);padding:7px;background:#0a0e19;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07);gap:5px}.bpm-r18-player-tabs button{border:0;background:transparent;color:#8390a8;border-radius:11px;padding:9px 4px;font-size:10px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px}.bpm-r18-player-tabs button.active{color:#fff;background:rgba(14,165,255,.13)}.bpm-r18-player-tabs b{min-width:18px;border-radius:999px;padding:2px 5px;background:rgba(255,255,255,.08);font-size:9px}.bpm-r18-player-screens{min-height:205px;max-height:290px;overflow:auto;background:#070a13}.bpm-r18-player-screen{padding:11px}.bpm-r18-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.bpm-r18-quick-actions a,.bpm-r18-quick-actions button{min-width:0;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:15px;color:#cbd5e1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:11px 5px;font-size:10px;text-align:center;cursor:pointer;text-decoration:none}.bpm-r18-quick-actions a:hover,.bpm-r18-quick-actions button:hover{border-color:rgba(14,165,255,.34);background:rgba(14,165,255,.11);color:#fff}.bpm-r18-quick-actions i{font-size:21px;color:#60a5fa}.bpm-r18-player-message{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 15px 12px;color:#8290a7}.bpm-r18-player-message i{font-size:30px;color:#38bdf8}.bpm-r18-player-message strong{color:#fff;margin:7px 0 3px}.bpm-r18-player-message span{font-size:11px;line-height:1.45;max-width:320px}.bpm-r18-screen-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.bpm-r18-screen-head strong{color:#fff;font-size:12px}.bpm-r18-screen-head a,.bpm-r18-screen-head button{border:0;background:transparent;color:#60a5fa;font-size:10px;cursor:pointer;text-decoration:none}.bpm-r18-mini-list,.bpm-r18-library-list{display:grid;gap:6px}.bpm-r18-queue-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.025);overflow:hidden}.bpm-r18-queue-row.active{border-color:rgba(14,165,255,.34);background:rgba(14,165,255,.08)}.bpm-r18-queue-main{border:0;background:transparent;color:inherit;display:grid;grid-template-columns:38px minmax(0,1fr) 22px;gap:8px;align-items:center;text-align:left;padding:6px;cursor:pointer;min-width:0}.bpm-r18-queue-cover{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;overflow:hidden;background:rgba(255,255,255,.06);color:#60a5fa}.bpm-r18-queue-cover img{width:100%;height:100%;object-fit:cover}.bpm-r18-queue-main span:nth-child(2){min-width:0}.bpm-r18-queue-main strong,.bpm-r18-queue-main small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bpm-r18-queue-main strong{color:#fff;font-size:11px}.bpm-r18-queue-main small{color:#7f8da4;font-size:10px;margin-top:2px}.bpm-r18-queue-main>i{color:#60a5fa}.bpm-r18-remove{width:30px;height:30px;border:0;background:transparent;color:#64748b;cursor:pointer}.bpm-r18-remove:hover{color:#fb7185}.bpm-r18-history-row .bpm-r18-remove{color:#60a5fa}.bpm-r18-history-row .bpm-r18-remove:hover{color:#fff;background:rgba(14,165,255,.13)}.bpm-r18-list-empty,.bpm-r18-library-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:118px;color:#7f8da4;padding:15px}.bpm-r18-list-empty i,.bpm-r18-library-empty i{font-size:28px;color:#475569}.bpm-r18-list-empty strong{color:#fff;margin:6px 0 2px}.bpm-r18-list-empty span,.bpm-r18-library-empty span{font-size:11px;line-height:1.4}.bpm-r18-create-playlist{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:7px;margin-bottom:10px}.bpm-r18-create-playlist input{height:38px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:#fff;border-radius:12px;padding:0 11px;outline:0}.bpm-r18-create-playlist input:focus{border-color:rgba(14,165,255,.45)}.bpm-r18-create-playlist button{height:38px;border:0;border-radius:12px;background:linear-gradient(135deg,#0ea5ff,#2563eb);color:#fff;cursor:pointer}.bpm-r18-library-status{font-size:10px;color:#93c5fd;border:1px solid rgba(14,165,255,.18);background:rgba(14,165,255,.07);border-radius:10px;padding:7px 9px;margin-bottom:9px}.bpm-r18-library-block+.bpm-r18-library-block{margin-top:12px}.bpm-r18-library-list a{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);border-radius:12px;padding:7px 8px;color:inherit;text-decoration:none}.bpm-r18-library-list a:hover{border-color:rgba(14,165,255,.33);background:rgba(14,165,255,.08)}.bpm-r18-library-list a>i:first-child{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(14,165,255,.10);color:#60a5fa}.bpm-r18-library-list a span{min-width:0}.bpm-r18-library-list a strong,.bpm-r18-library-list a small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bpm-r18-library-list a strong{color:#fff;font-size:11px}.bpm-r18-library-list a small{color:#7f8da4;font-size:9px;margin-top:2px}.bpm-r18-library-list a>i:last-child{color:#536176}.bpm-r18-player-footer{flex:0 0 auto}.bpm-r18-player-footer a{display:inline-flex;align-items:center;gap:4px}

/* Accueil connecté : plus vivant, sans dupliquer les fonctions personnelles */
.bpm-r18-pulse{grid-column:2/4;display:grid;grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(210px,.75fr));gap:12px;margin-top:-2px}.bpm-r18-pulse-card{position:relative;min-height:190px;border:1px solid rgba(255,255,255,.09);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,rgba(13,20,36,.96),rgba(5,9,18,.94));box-shadow:0 20px 58px rgba(0,0,0,.25);padding:18px;display:flex;flex-direction:column;justify-content:flex-end}.bpm-r18-pulse-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0,rgba(14,165,255,.24),transparent 42%);pointer-events:none}.bpm-r18-pulse-card>*{position:relative;z-index:1}.bpm-r18-pulse-card.featured{min-height:250px;background-size:cover;background-position:center}.bpm-r18-pulse-card.featured:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,7,18,.96) 0%,rgba(3,7,18,.82) 45%,rgba(3,7,18,.3) 100%)}.bpm-r18-pulse-card .bpm-r18-kicker{display:inline-flex;align-items:center;gap:5px;width:max-content;color:#7dd3fc;text-transform:uppercase;letter-spacing:.11em;font-size:10px;font-weight:900;margin-bottom:8px}.bpm-r18-pulse-card h2,.bpm-r18-pulse-card h3{color:#fff;margin:0;line-height:1.05}.bpm-r18-pulse-card h2{font-family:var(--head);font-size:clamp(34px,4vw,56px);letter-spacing:.02em}.bpm-r18-pulse-card h3{font-size:19px}.bpm-r18-pulse-card p{color:#a2aec1;font-size:12px;line-height:1.45;margin:7px 0 13px;max-width:560px}.bpm-r18-pulse-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bpm-r18-pulse-actions .btn{min-height:38px}.bpm-r18-mini-visual{position:absolute!important;right:15px;top:15px;width:72px;height:72px;border-radius:19px;display:grid;place-items:center;overflow:hidden;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#60a5fa}.bpm-r18-mini-visual img{width:100%;height:100%;object-fit:cover}.bpm-r18-mini-visual i{font-size:30px}.bpm-r18-pulse-stat{display:flex;gap:12px;margin-top:7px}.bpm-r18-pulse-stat span{display:flex;flex-direction:column}.bpm-r18-pulse-stat strong{color:#fff;font-size:18px}.bpm-r18-pulse-stat small{color:#7f8da4;font-size:9px;text-transform:uppercase;letter-spacing:.08em}

/* Mon BPM : séparation nette auditeur / professionnel */
.bpm-r18-space-sections{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:14px;margin:14px 0}.bpm-r18-space-card{border:1px solid var(--bdr);border-radius:23px;background:linear-gradient(145deg,rgba(8,14,27,.92),rgba(4,8,17,.88));padding:15px;box-shadow:0 18px 50px rgba(0,0,0,.2)}.bpm-r18-space-card.artist{background:radial-gradient(circle at 100% 0,rgba(168,85,247,.18),transparent 38%),linear-gradient(145deg,rgba(15,13,31,.94),rgba(5,8,17,.9))}.bpm-r18-space-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.bpm-r18-space-head span{display:flex;align-items:center;gap:6px;color:#60a5fa;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:900}.bpm-r18-space-card.artist .bpm-r18-space-head span{color:#c084fc}.bpm-r18-space-head h2{color:#fff;margin:3px 0 0;font-size:21px}.bpm-r18-space-head p{color:#8492a8;font-size:11px;line-height:1.4;margin:5px 0 0}.bpm-r18-space-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bpm-r18-space-links a{min-height:82px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);border-radius:16px;padding:10px;display:flex;flex-direction:column;gap:5px;color:#cbd5e1;text-decoration:none;transition:.16s}.bpm-r18-space-links a:hover{transform:translateY(-2px);border-color:rgba(14,165,255,.38);background:rgba(14,165,255,.09);color:#fff}.bpm-r18-space-card.artist .bpm-r18-space-links a:hover{border-color:rgba(168,85,247,.42);background:rgba(168,85,247,.09)}.bpm-r18-space-links i{font-size:23px;color:#60a5fa}.bpm-r18-space-card.artist .bpm-r18-space-links i{color:#c084fc}.bpm-r18-space-links strong{font-size:12px;color:#fff}.bpm-r18-space-links small{font-size:9px;color:#7f8da4;line-height:1.3}.bpm-r18-space-cta{display:flex;flex-direction:column;justify-content:space-between;min-height:100%;border:1px dashed rgba(168,85,247,.28);border-radius:17px;padding:13px;background:rgba(168,85,247,.05)}.bpm-r18-space-cta strong{color:#fff}.bpm-r18-space-cta p{color:#8e9bb0;font-size:11px;line-height:1.45}.bpm-r18-space-cta a{width:max-content}

@keyframes bpmR18Pulse{0%,100%{opacity:.55;transform:scale(.98)}50%{opacity:1;transform:scale(1.02)}}
@media(max-width:1200px){.bpm-r18-pulse{grid-column:1/-1;grid-template-columns:1fr 1fr}.bpm-r18-pulse-card.featured{grid-column:1/-1}.bpm-r18-space-sections{grid-template-columns:1fr}.bpm-r18-space-links{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.bpm-r18-player-panel{position:fixed;left:8px;right:8px;top:60px;width:auto;max-height:calc(100vh - 72px);border-radius:20px}.bpm-r18-player-screens{max-height:calc(100vh - 438px);min-height:190px}.bpm-r18-quick-actions{grid-template-columns:repeat(4,1fr)}.bpm-r18-pulse{grid-template-columns:1fr;margin:8px}.bpm-r18-pulse-card.featured{grid-column:auto;min-height:270px}.bpm-r18-space-sections{margin:10px 0}.bpm-r18-space-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.bpm-r18-now{grid-template-columns:62px minmax(0,1fr) 34px}.bpm-r18-now-cover{width:62px;height:62px;border-radius:17px}.bpm-r18-player-controls{grid-template-columns:repeat(5,40px);gap:4px}.bpm-r18-player-controls button{width:39px;height:39px}.bpm-r18-quick-actions{grid-template-columns:repeat(2,1fr)}.bpm-r18-player-screens{max-height:calc(100vh - 425px)}.bpm-r18-space-links{grid-template-columns:1fr 1fr}}

/* BPM 371 - accueil membre: navigation plus nette et filtres mieux places. */
body.page-index .bpm184-side-menu{
  display:grid!important;
  gap:7px!important;
  padding:11px!important;
  border:1px solid rgba(96,165,250,.14)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(12,18,31,.88),rgba(5,9,18,.82))!important;
  box-shadow:0 18px 48px rgba(0,0,0,.22)!important;
}
body.page-index .bpm184-side-menu a{
  position:relative!important;
  min-height:52px!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  gap:11px!important;
  padding:7px 12px!important;
  border-radius:16px!important;
  color:#d8e2f3!important;
  font-weight:850!important;
  letter-spacing:0!important;
  background:rgba(255,255,255,.018)!important;
  border:1px solid transparent!important;
}
body.page-index .bpm184-side-menu a i{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  background:rgba(148,163,184,.10)!important;
  color:#b8c7df!important;
  font-size:20px!important;
}
body.page-index .bpm184-side-menu a span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body.page-index .bpm184-side-menu a:hover,
body.page-index .bpm184-side-menu a.active{
  color:#fff!important;
  border-color:rgba(14,165,255,.38)!important;
  background:linear-gradient(135deg,rgba(14,165,255,.20),rgba(59,130,246,.10))!important;
  box-shadow:inset 0 0 0 1px rgba(14,165,255,.12),0 10px 24px rgba(2,8,23,.18)!important;
}
body.page-index .bpm184-side-menu a:hover i,
body.page-index .bpm184-side-menu a.active i{
  color:#fff!important;
  background:linear-gradient(135deg,#0ea5ff,#2563eb)!important;
  box-shadow:0 10px 22px rgba(14,165,255,.26)!important;
}
body.page-index .bpm184-side-menu a.active:before{
  content:"";
  position:absolute;
  left:0;
  top:14px;
  bottom:14px;
  width:3px;
  border-radius:999px;
  background:#38bdf8;
}

body.page-index .bpm183-feed-tabs{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;
  gap:10px!important;
  padding:0 20px 18px!important;
  overflow:visible!important;
}
body.page-index .bpm183-feed-tabs button{
  min-width:0!important;
  height:44px!important;
  padding:0 12px!important;
  border-radius:14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border:1px solid rgba(148,163,184,.16)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;
  color:#aeb9cc!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.page-index .bpm183-feed-tabs button i{
  flex:0 0 18px!important;
  width:18px!important;
  display:grid!important;
  place-items:center!important;
  color:#8fb5da!important;
  font-size:16px!important;
}
body.page-index .bpm183-feed-tabs button span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.page-index .bpm183-feed-tabs button:hover,
body.page-index .bpm183-feed-tabs button.active{
  color:#fff!important;
  border-color:rgba(14,165,255,.42)!important;
  background:linear-gradient(135deg,rgba(14,165,255,.80),rgba(37,99,235,.54))!important;
  box-shadow:0 12px 26px rgba(14,165,255,.18)!important;
}
body.page-index .bpm183-feed-tabs button:hover i,
body.page-index .bpm183-feed-tabs button.active i{color:#fff!important}

body.page-index .bpm217-composer-status{
  margin:10px 0 12px 62px!important;
  padding:8px 10px!important;
  border:1px solid rgba(69,201,149,.16)!important;
  border-radius:12px!important;
  background:rgba(69,201,149,.045)!important;
}

@media(max-width:1040px){
  body.page-index .bpm183-feed-tabs{
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;
  }
}
@media(max-width:700px){
  body.page-index .bpm183-feed-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    padding-inline:12px!important;
  }
  body.page-index .bpm183-feed-tabs button{
    height:45px!important;
    padding-inline:8px!important;
  }
  body.page-index .bpm217-composer-status{
    margin-left:0!important;
  }
}
@media(max-width:390px){
  body.page-index .bpm183-feed-tabs{gap:7px!important}
  body.page-index .bpm183-feed-tabs button{
    gap:6px!important;
    font-size:11px!important;
  }
}
