:root{--mol-player-h:108px}
body.mol-player-active{padding-bottom:calc(var(--mol-player-h) + 18px)}
.mol-player{position:fixed;z-index:1000;left:14px;right:14px;bottom:10px;min-height:var(--mol-player-h);background:rgba(255,255,255,.98);border:2px solid #222;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.22);display:grid;grid-template-columns:minmax(210px,.9fr) minmax(360px,1.35fr) minmax(380px,1.2fr) auto;align-items:center;gap:12px;padding:10px 12px;font-family:Arial,sans-serif;color:#111}
.mol-player button,.mol-player input{font:inherit}.mol-player button{background:#fff;border:1px solid #777;border-radius:9px;min-height:36px;padding:6px 9px;cursor:pointer}.mol-player button[aria-pressed="true"]{background:#dcecff;border-color:#2f6fbe}
.mol-player-current{display:grid;grid-template-columns:58px minmax(0,1fr);gap:9px;align-items:center}.mol-player-art{width:58px;height:58px;border:1px solid #777;background:linear-gradient(135deg,#eee,#fff);display:grid;place-items:center;font-size:10px}.mol-player-meta{min-width:0}.mol-player-label{font-size:10px;font-weight:700;letter-spacing:.08em;color:#555}.mol-player-title{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mol-player-sub{font-size:12px;color:#666;margin-top:2px}
.mol-player-center{display:grid;gap:5px}.mol-player-controls{display:flex;align-items:center;justify-content:center;gap:7px}.mol-player-play{width:46px;height:46px;border-radius:50%!important;font-size:20px!important;padding:0!important}.mol-player-timeline{display:grid;grid-template-columns:36px 1fr 36px;gap:7px;align-items:center;font-size:10px;color:#555}.mol-player-timeline input,.mol-player-volume input{width:100%}
.mol-player-modes{display:grid;grid-template-columns:repeat(4,max-content);gap:5px;justify-content:end;align-items:center}.mol-player-volume{grid-column:1 / -1;display:grid;grid-template-columns:auto 1fr;gap:7px;align-items:center;font-size:11px}.mol-player-explore{align-self:stretch;display:flex;align-items:center}.mol-explore{min-width:104px;font-weight:800}.mol-expand{width:38px;padding:0!important;font-size:18px!important}
.mol-player-status{grid-column:1/-1;font-size:10px;color:#555;text-align:right;min-height:12px}
.mol-player-panel{position:absolute;right:0;bottom:calc(100% + 8px);width:min(520px,calc(100vw - 20px));background:#fff;border:2px solid #222;border-radius:14px;padding:10px;box-shadow:0 10px 30px rgba(0,0,0,.25)}.mol-player-panel[hidden]{display:none}.mol-panel-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:9px}.mol-panel-tabs button{min-height:34px}.mol-panel-view[hidden]{display:none}.mol-panel-view h3{margin:0 0 7px;font-size:14px}.mol-tracklist .mol-player-trackrow{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border-top:1px solid #ddd;padding:7px 0}.mol-upnext-empty{color:#777;font-size:12px;padding:8px 0}.mol-now-grid{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:13px}.mol-muted{color:#666;font-size:12px}
.mol-queue-select{position:fixed;z-index:950;top:14px;left:50%;transform:translateX(-50%);width:min(560px,calc(100vw - 24px));background:rgba(255,255,255,.98);border:2px solid #222;border-radius:14px;box-shadow:0 10px 32px rgba(0,0,0,.24);padding:12px;font-family:Arial,sans-serif;color:#111}.mol-queue-select h2{margin:0 0 4px;font-size:18px}.mol-queue-select p{margin:0 0 10px;font-size:13px;color:#555}.mol-queue-choice{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border-top:1px solid #ddd;padding:8px 0}.mol-queue-choice button{background:#fff;border:1px solid #555;border-radius:8px;padding:7px 10px;font-weight:700}.mol-queue-current{font-size:12px;color:#777}.mol-queue-cancel{margin-top:8px;background:#fff;border:1px solid #777;border-radius:8px;padding:7px 10px}
@media(max-width:820px) and (orientation:portrait){:root{--mol-player-h:118px}body.mol-player-active{padding-bottom:calc(var(--mol-player-h) + 12px)}.mol-player{left:7px;right:7px;bottom:7px;min-height:118px;grid-template-columns:minmax(110px,1fr) auto auto;grid-template-areas:"current transport explore" "modes modes expand";gap:6px;padding:7px}.mol-player-current{grid-area:current;grid-template-columns:38px minmax(0,1fr);gap:6px}.mol-player-art{width:38px;height:38px}.mol-player-label,.mol-player-sub{display:none}.mol-player-center{grid-area:transport;display:block}.mol-player-timeline{display:none}.mol-player-controls{gap:3px}.mol-player-controls .mol-prev,.mol-player-controls .mol-next{min-width:30px;padding:3px}.mol-player-play{width:40px;height:40px}.mol-player-modes{grid-area:modes;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.mol-player-modes button{font-size:10px;min-height:31px;padding:4px}.mol-player-volume,.mol-player-status,.mol-eq{display:none}.mol-player-explore{grid-area:explore}.mol-explore{min-width:84px;font-size:10px!important;min-height:40px!important}.mol-expand{grid-area:expand;width:36px;height:31px;align-self:end}.mol-player-panel{right:-1px;bottom:calc(100% + 7px);width:calc(100vw - 14px)}.mol-queue-select{top:8px;width:calc(100vw - 16px);padding:10px}.mol-queue-select h2{font-size:16px}.mol-queue-choice{padding:7px 0}}

@media(orientation:landscape) and (max-width:1200px) and (max-height:600px){
  :root{--mol-player-h:68px}
  body.mol-player-active{padding-bottom:76px}
  .mol-player{
    left:8px;right:8px;bottom:6px;
    min-height:68px;
    grid-template-columns:minmax(150px,.85fr) minmax(220px,1.15fr) minmax(300px,1.4fr) auto;
    gap:7px;
    padding:6px 8px;
    border-radius:12px
  }
  .mol-player button{min-height:28px;padding:3px 6px;font-size:11px;border-radius:7px}
  .mol-player-current{grid-template-columns:38px minmax(0,1fr);gap:6px}
  .mol-player-art{width:38px;height:38px;font-size:8px}
  .mol-player-label{font-size:8px}
  .mol-player-title{font-size:12px}
  .mol-player-sub{display:none}
  .mol-player-center{gap:2px}
  .mol-player-controls{gap:4px}
  .mol-player-play{width:34px;height:34px;font-size:15px!important}
  .mol-player-timeline{grid-template-columns:28px 1fr 28px;gap:4px;font-size:8px}
  .mol-player-modes{grid-template-columns:repeat(5,max-content);gap:3px}
  .mol-player-volume{display:none}
  .mol-player-status{display:none}
  .mol-player-explore{align-self:center}
  .mol-explore{min-width:78px;font-size:10px!important}
  .mol-expand{width:30px;height:30px;font-size:14px!important}
  .mol-player-panel{
    width:min(430px,calc(100vw - 16px));
    max-height:62vh;
    overflow:auto;
    bottom:calc(100% + 5px);
    padding:7px;
    border-radius:11px
  }
  .mol-panel-tabs{gap:3px;margin-bottom:6px}
  .mol-panel-tabs button{min-height:28px;font-size:10px}
  .mol-panel-view h3{font-size:12px;margin-bottom:4px}
  .mol-now-grid{font-size:11px}
  .mol-muted{font-size:10px}
  .mol-tracklist .mol-player-trackrow{padding:4px 0;font-size:11px}
  .mol-queue-select{top:6px;width:min(500px,calc(100vw - 16px));padding:8px}
}
