.pmp-player { border:1px solid #2f2f35; background:#18181b; color:#efeff1; }
.pmp-record-spin{width:240px;height:240px;margin:auto;}
.pmp-record-spin svg{width:100%;height:100%;transform-origin:50% 50%;fill:#efeff1;}
.pmp-record-spin.pmp-spinning svg{animation:pmpspin 3s linear infinite;}
.pmp-center-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;border:none;font-size:20px;line-height:52px;text-align:center;cursor:pointer;z-index:3;}
.pmp-center-btn.black{background:#000;color:#fff;}
.pmp-center-btn.white{background:#fff;color:#000;}
@keyframes pmpspin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.pmp-track-row{position:relative;overflow:hidden;margin-bottom:6px;border-radius:6px;}
.pmp-progress{position:absolute;top:0;left:0;bottom:0;width:0%;background:var(--pmp-accent,rgba(255,255,255,.15));opacity:.25;transition:width .2s linear;}
.pmp-track-content{position:relative;z-index:2;padding:6px 8px;}
/* Embeds v1.0.3 */
.pmp-cover-wrap{position:relative;display:inline-block;}
.pmp-record-wrap{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;height:240px;}
.pmp-record-spin,.pmp-center-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
.pmp-compact-bar{position:absolute;left:10px;right:10px;bottom:20px;display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:rgba(0,0,0,.55);color:#fff;font-size:12px;border-radius:6px;}
.pmp-compact-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%;}
.pmp-compact-progress{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.15);}
.pmp-compact-progress-fill{height:100%;width:0;background:var(--pmp-accent,#0ea5e9);}
.pmp-embed-large .pmp-list{list-style:none;padding:0;margin:0;}
.pmp-embed-large .pmp-track-row{position:relative;padding:6px 8px;margin-bottom:4px;background:#1f2026;border-radius:6px;overflow:hidden;}
.pmp-embed-large .pmp-track-row .pmp-progress{position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(255,255,255,.12);}
.pmp-embed-large .pmp-track-row .pmp-track-content{position:relative;z-index:2;color:#efeff1;display:flex;gap:8px;align-items:center;}
.pmp-embed-large .pmp-play{padding:2px 6px;font-size:12px;}
/* Share modal (embed) */
.pmp-share-modal{position:fixed;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:99999;}
.pmp-share-dialog{background:#16181d;color:#fff;border:1px solid #2a2d34;border-radius:8px;min-width:300px;max-width:640px;width:90%;}
.pmp-share-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #2a2d34;}
.pmp-share-body{padding:12px;}
.pmp-share-row{display:flex;gap:8px;align-items:center;margin-bottom:10px;flex-wrap:wrap;}
.pmp-share-row textarea{width:100%;min-height:70px;background:#0f1115;color:#fff;border:1px solid #2a2d34;border-radius:6px;padding:8px;}
.pmp-share-modal[hidden]{display:none;}


/* v1.0.3.2 updates */
.pmp-action-btn{
  background:rgba(255,255,255,0.65);
  color:#000;
  border:none;
  border-radius:4px;
  font-size:12px;
  padding:2px 6px;
  cursor:pointer;
  transition:background .2s;
}
.pmp-action-btn:hover{ background:rgba(255,255,255,0.9); }

.pmp-embed-compact .pmp-compact-bar,
.pmp-embed-compact .pmp-compact-progress,
.pmp-embed-compact .pmp-compact-title{ opacity:0; transition:opacity .3s; }
.pmp-embed-compact:hover .pmp-compact-bar,
.pmp-embed-compact:hover .pmp-compact-progress,
.pmp-embed-compact:hover .pmp-compact-title{ opacity:1; }


/* v1.0.3.3.7 Vinyl image-based animation */
.pmp-record-spin { width:120px; height:120px; margin:auto; opacity:0; transition:opacity .6s ease-in-out; }
.pmp-record-spin img { width:100%; height:100%; transform-origin:50% 50%; pointer-events:none; display:block; filter:drop-shadow(0 2px 8px rgba(0,0,0,.35)); }
.pmp-record-spin.pmp-visible { opacity:1; }
.pmp-record-spin.pmp-spinning img { animation:pmpspin 3s linear infinite; }
.pmp-record-spin.pmp-decel img { animation:pmpspin 3s linear infinite; animation-play-state:paused; }
@keyframes pmpspin { from{ transform:rotate(0deg); } to{ transform:rotate(360deg); } }
