.lmdlv-app{
  --lmdlv-navy:#16223f;
  --lmdlv-navy-2:#1f3158;
  --lmdlv-gold:#f0a63c;
  --lmdlv-gold-dim:rgba(240,166,60,.16);
  --lmdlv-paper:#faf6ec;
  --lmdlv-card:#ffffff;
  --lmdlv-line:#e8e0cf;
  --lmdlv-text-hi:#1c2333;
  --lmdlv-text-mid:#5c6479;
  --lmdlv-text-low:#9298a6;

  max-width:900px;
  margin:0 auto;
  padding:0 0 100px;
  font-family:-apple-system,BlinkMacSystemFont,'Inter',sans-serif;
  box-sizing:border-box;
}
.lmdlv-app *{box-sizing:border-box;}

.lmdlv-header{
  display:flex; align-items:center; justify-content:flex-end; gap:16px; flex-wrap:wrap;
  margin-bottom:16px;
}
.lmdlv-title{
  font-family:Georgia,'Times New Roman',serif; font-weight:700; font-size:26px; color:var(--lmdlv-navy);
  margin:0;
}
.lmdlv-search input{
  padding:10px 14px; border-radius:20px; border:1.5px solid var(--lmdlv-line);
  font-size:13.5px; min-width:220px; background:var(--lmdlv-card); color:var(--lmdlv-text-hi);
}
.lmdlv-search input:focus{outline:none; border-color:var(--lmdlv-gold);}

.lmdlv-categories{
  display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px;
}
.lmdlv-cat-pill{
  font-size:12.5px; font-weight:600; padding:7px 14px; border-radius:20px; cursor:pointer;
  background:var(--lmdlv-card); border:1.5px solid var(--lmdlv-line); color:var(--lmdlv-text-mid);
  transition:all .15s;
}
.lmdlv-cat-pill:hover{border-color:var(--lmdlv-gold);}
.lmdlv-cat-pill.active{background:var(--lmdlv-navy); color:#fff; border-color:var(--lmdlv-navy);}

.lmdlv-resume{
  display:flex; align-items:center; gap:14px; background:var(--lmdlv-gold-dim);
  border:1.5px solid rgba(240,166,60,.4); border-radius:14px; padding:12px 16px; margin-bottom:16px;
}
.lmdlv-resume-icon{
  width:38px; height:38px; border-radius:50%; background:var(--lmdlv-gold); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:15px; flex-shrink:0; cursor:pointer;
}
.lmdlv-resume-info{flex:1; min-width:0;}
.lmdlv-resume-label{font-size:11px; color:#b6791a; font-weight:700; text-transform:uppercase; letter-spacing:.04em;}
.lmdlv-resume-title{font-size:13.5px; color:var(--lmdlv-text-hi); font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.lmdlv-resume-time{font-size:11.5px; color:var(--lmdlv-text-mid); margin-top:1px;}
.lmdlv-resume-close{background:none; border:none; color:var(--lmdlv-text-low); font-size:16px; cursor:pointer; flex-shrink:0;}

.lmdlv-item-cats{display:flex; gap:4px; flex-wrap:wrap; margin-top:4px;}
.lmdlv-item-cat-tag{
  font-size:10px; font-weight:600; padding:2px 8px; border-radius:10px;
  background:var(--lmdlv-gold-dim); color:#b6791a;
}
.lmdlv-item-progress{
  height:3px; background:var(--lmdlv-line); border-radius:3px; margin-top:6px; overflow:hidden;
}
.lmdlv-item-progress-fill{height:100%; background:var(--lmdlv-gold);}

.lmdlv-list{display:flex; flex-direction:column; gap:10px;}
.lmdlv-loading, .lmdlv-empty{
  text-align:center; padding:40px 16px; color:var(--lmdlv-text-low); font-size:14px;
}

.lmdlv-item{
  display:flex; align-items:center; gap:14px; background:var(--lmdlv-card);
  border:1.5px solid var(--lmdlv-line); border-radius:14px; padding:12px 14px;
  cursor:pointer; transition:all .15s;
}
.lmdlv-item:hover{border-color:var(--lmdlv-gold); transform:translateY(-1px); box-shadow:0 6px 16px rgba(22,34,63,.08);}
.lmdlv-item.playing{border-color:var(--lmdlv-gold); background:linear-gradient(155deg, var(--lmdlv-gold-dim), var(--lmdlv-card) 70%);}

.lmdlv-item-art{
  width:52px; height:52px; border-radius:10px; flex-shrink:0; object-fit:cover;
  background:linear-gradient(155deg, var(--lmdlv-navy-2), var(--lmdlv-navy));
}
.lmdlv-item-play{
  width:52px; height:52px; border-radius:10px; flex-shrink:0; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(155deg, var(--lmdlv-navy-2), var(--lmdlv-navy)); color:#fff; font-size:18px;
}
.lmdlv-item.playing .lmdlv-item-play, .lmdlv-item.playing .lmdlv-item-art{
  background:linear-gradient(155deg, #ffd98a, var(--lmdlv-gold)); color:var(--lmdlv-navy);
}
.lmdlv-item-info{flex:1; min-width:0;}
.lmdlv-item-title{
  font-weight:600; font-size:14.5px; color:var(--lmdlv-text-hi); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.lmdlv-item-date{font-size:12px; color:var(--lmdlv-text-low); margin-top:3px;}
.lmdlv-item-desc{font-size:12.5px; color:var(--lmdlv-text-mid); margin-top:3px; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden;}
.lmdlv-item-eq{
  display:flex; gap:2px; align-items:flex-end; height:14px; flex-shrink:0; margin-right:2px;
}
.lmdlv-item-eq span{width:3px; background:var(--lmdlv-gold); border-radius:2px; animation:lmdlv-eq 1s ease-in-out infinite;}
.lmdlv-item-eq span:nth-child(2){animation-delay:.15s;}
.lmdlv-item-eq span:nth-child(3){animation-delay:.3s;}
@keyframes lmdlv-eq{0%,100%{height:3px;}50%{height:14px;}}

.lmdlv-load-more{
  display:block; margin:20px auto 0; padding:11px 26px; border-radius:20px; cursor:pointer;
  background:var(--lmdlv-navy); color:#fff; border:none; font-weight:600; font-size:13px;
}
.lmdlv-load-more:hover{background:var(--lmdlv-navy-2);}

/* ---------- barra de reproducción fija ---------- */
.lmdlv-player-bar{
  position:fixed; left:0; right:0; bottom:0; z-index:9999;
  display:none; align-items:center; gap:14px;
  background:#16223f; color:#fff;
  padding:10px 18px; box-shadow:0 -8px 24px rgba(0,0,0,.2);
  font-family:-apple-system,BlinkMacSystemFont,'Inter',sans-serif;
}
.lmdlv-player-bar.show{display:flex;}
.lmdlv-pb-art{
  width:44px; height:44px; border-radius:8px; object-fit:cover; flex-shrink:0;
  background:linear-gradient(155deg,#28406f,#16223f);
}
.lmdlv-pb-info{flex:1; min-width:0;}
.lmdlv-pb-title{
  font-size:13px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-bottom:4px;
}
.lmdlv-pb-progress{display:flex; align-items:center; gap:8px;}
.lmdlv-pb-time{font-size:10.5px; font-family:'Courier New',monospace; color:rgba(255,255,255,.65); width:34px; flex-shrink:0;}
.lmdlv-pb-time:last-child{text-align:right;}
.lmdlv-player-bar input[type="range"]{
  flex:1; height:4px; -webkit-appearance:none; appearance:none; background:rgba(255,255,255,.2); border-radius:4px; outline:none;
}
.lmdlv-player-bar input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none; width:12px; height:12px; border-radius:50%; background:#f0a63c; cursor:pointer;
}
.lmdlv-player-bar input[type="range"]::-moz-range-thumb{
  width:12px; height:12px; border-radius:50%; background:#f0a63c; border:none; cursor:pointer;
}
.lmdlv-pb-controls{display:flex; align-items:center; gap:14px; flex-shrink:0;}
.lmdlv-pb-controls button{
  width:38px; height:38px; border-radius:50%; border:none; cursor:pointer;
  background:linear-gradient(155deg,#ffd98a,#f0a63c); color:#16223f; font-size:15px;
}
.lmdlv-pb-vol{display:flex; align-items:center; gap:6px;}
.lmdlv-pb-vol input{width:70px;}

@media(max-width:640px){
  .lmdlv-pb-vol{display:none;}
  .lmdlv-pb-info{max-width:none;}
  .lmdlv-player-bar{padding:8px 12px; gap:10px;}
}
