/* MeshMelo v143: strictly mobile presentation; keep existing PC design and data untouched. */
.mm143-track-add { display:none!important; }
@media (max-width:767px) {
  /* The account entry remains in the upper-right header. The left menu is navigation + language. */
  body.mm-shell-v19 #mmSidebar .mm-side-invite,
  body.mm-shell-v19 #mmSidebar .mm-side-login,
  body.mm-shell-v19 #mmSidebar .mm-side-join,
  body.mm-shell-v19 #mmSidebar .mm-side-member,
  body.mm-shell-v19 #mmSidebar .mm-side-account-links { display:none!important; }
  body.mm-shell-v19 #mmSidebar .mm-side-bottom { padding:8px 15px calc(8px + env(safe-area-inset-bottom))!important; }
  /* A visible right-hand drawer, above the fixed genres header and the bottom ad/player. */
  body.mm-shell-v19 #mmQueueDrawer.mm-queue-drawer {
    position:fixed!important;
    z-index:5600!important;
    top:0!important;
    bottom:0!important;
    right:0!important;
    left:auto!important;
    width:min(94vw,420px)!important;
    max-width:min(94vw,420px)!important;
    height:100dvh!important;
    max-height:none!important;
    min-height:0!important;
    padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)!important;
    border:0!important;
    border-left:1px solid var(--mm-mobile-border,#dfe1e8)!important;
    border-radius:18px 0 0 18px!important;
    box-shadow:-12px 0 42px rgba(13,21,40,.20)!important;
    transform:translateX(104%)!important;
    visibility:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    overscroll-behavior:contain;
    transition:transform .22s ease,visibility .22s!important;
  }
  body.mm-shell-v19 #mmQueueDrawer.mm-queue-drawer.is-open {
    transform:translateX(0)!important;
    visibility:visible!important;
  }
  body.mm-shell-v19 #mmQueueDrawer .mm-queue-head {
    position:sticky!important;
    top:0!important;
    flex-shrink:0!important;
    z-index:2!important;
    padding:12px 12px 10px!important;
    background:var(--mm-mobile-surface,var(--mm-site-surface,#fff))!important;
    box-shadow:0 2px 10px rgba(13,21,40,.05)!important;
  }
  body.mm-shell-v19 #mmQueueDrawer #mmPlaylistTabs {
    display:grid!important;
    grid-template-columns:repeat(10,minmax(0,1fr))!important;
    grid-template-rows:minmax(32px,auto)!important;
    gap:2px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.mm-shell-v19 #mmQueueDrawer #mmPlaylistTabs button {
    min-width:0!important;
    width:100%!important;
    height:34px!important;
    min-height:34px!important;
    padding:0!important;
    font-size:11px!important;
  }
  body.mm-shell-v19 #mmQueueDrawer .mm-queue-list {
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    padding-bottom:24px!important;
  }
  /* Tap outside the drawer to close, as with the existing mobile left-side menu. */
  body.mm-shell-v19 #mmQueueBackdrop.mm-queue-backdrop {
    z-index:5500!important;
    background:rgba(12,18,30,.32)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    pointer-events:none!important;
    opacity:0!important;
    visibility:hidden!important;
  }
  body.mm-shell-v19 #mmQueueBackdrop.mm-queue-backdrop.is-open {
    pointer-events:auto!important;
    opacity:1!important;
    visibility:visible!important;
  }
  /* Every mobile chart, album and artist row includes its own playlist + control. */
  body.mm-shell-v19 #container .mm143-track-add {
    appearance:none!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 38px!important;
    width:38px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    margin:0!important;
    font:inherit!important;
    font-size:26px!important;
    font-weight:400!important;
    line-height:1!important;
    border:1px solid var(--mm-mobile-control-border,#c9cad2)!important;
    border-radius:12px!important;
    background:var(--mm-mobile-soft,#f5f3fa)!important;
    color:var(--mm-mobile-text,#303036)!important;
    cursor:pointer!important;
    touch-action:manipulation;
  }
  body.mm-shell-v19 #container .mm143-track-add:active { transform:scale(.95); }
  body.mm-shell-v19 #container .mm-d23-track { grid-template-columns:31px 48px minmax(0,1fr) 38px!important; }
  body.mm-shell-v19 #container .mm-d23-track-unranked { grid-template-columns:48px minmax(0,1fr) 38px!important; }
  body.mm-shell-v19 #container .mm-av-row { grid-template-columns:30px 48px minmax(0,1fr) 38px!important; }
  body.mm-shell-v19 #container .mm-skin-track-card { grid-template-columns:48px minmax(0,1fr) 38px!important; }
  body.mm-shell-v19 #container :is(.mm-d23-track-copy,.mm-av-copy,.mm-skin-track-copy) { min-width:0!important; }
  body.mm-shell-v19 #container .mm143-track-add:focus-visible { outline:2px solid var(--mm-mobile-link,#664bd7)!important;outline-offset:2px!important; }
}
@media (max-width:360px) {
  body.mm-shell-v19 #mmQueueDrawer #mmPlaylistTabs { gap:1px!important; }
  body.mm-shell-v19 #mmQueueDrawer #mmPlaylistTabs button { height:32px!important;min-height:32px!important;font-size:10px!important; }
  body.mm-shell-v19 #container .mm-d23-track { grid-template-columns:28px 43px minmax(0,1fr) 36px!important;gap:6px!important; }
  body.mm-shell-v19 #container .mm-d23-track-unranked { grid-template-columns:43px minmax(0,1fr) 36px!important; }
  body.mm-shell-v19 #container .mm-av-row { grid-template-columns:25px 43px minmax(0,1fr) 36px!important;gap:6px!important; }
  body.mm-shell-v19 #container .mm143-track-add { width:36px!important;height:38px!important;min-height:38px!important; }
}
@media (max-width:767px) and (prefers-reduced-motion:reduce) {
  body.mm-shell-v19 #mmQueueDrawer { transition:none!important; }
}
