.m-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:22px;align-items:start}
@media(max-width:860px){.m-grid{grid-template-columns:1fr}}
.search{display:flex;gap:12px;flex-wrap:wrap}.search input{flex:1 1 220px}
.results{display:grid;gap:14px;margin-top:20px}
.track{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;background:var(--white);border:var(--bd);border-radius:12px;padding:10px;box-shadow:var(--sh-s);cursor:pointer;text-align:left;font:inherit;width:100%;transition:transform .08s,box-shadow .08s}
.track:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.track img{width:64px;height:64px;object-fit:cover;border:var(--bd);border-radius:8px;background:var(--lemon)}
.track b,.track small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.track.now{background:var(--lemon)}
.empty{border:3px dashed var(--ink);border-radius:12px;padding:26px;text-align:center;font-weight:700}
.tabs{display:flex;gap:8px;margin-bottom:14px}
.tabs .chip{flex:1}
.panel{max-height:460px;overflow-y:auto;padding-right:4px}
.q-item{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:2px dashed var(--ink)}
.q-item img{width:44px;height:44px;border:2px solid var(--ink);border-radius:6px;object-fit:cover}
.q-item b,.q-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lyrics p{font-size:1.25rem;font-weight:700;padding:5px 0;opacity:.4;transition:opacity .2s}
.lyrics p.on{opacity:1;background:var(--lemon);border-left:6px solid var(--pink);padding-left:10px}

.dock{position:fixed;inset:auto 0 0 0;z-index:70;background:var(--sky);border-top:var(--bd);padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px))}
.dock .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;align-items:center}
.dock .meta{display:flex;gap:12px;align-items:center;min-width:0}
.dock .meta img{width:52px;height:52px;border:var(--bd);border-radius:8px;object-fit:cover;background:var(--lemon)}
.dock .meta b,.dock .meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ctrl{display:flex;gap:8px;align-items:center}
.bar{grid-column:1/-1;display:flex;gap:10px;align-items:center;font-weight:700;font-size:.85rem}
.bar input[type=range]{flex:1;padding:0;height:18px;box-shadow:none;accent-color:var(--ink);background:transparent;border:0}
