/* DJPORT v28.36.20 — visual-only reference catalogue skin */
:root{--ref-side:256px;--ref-player:168px;--ref-orange:#ff7900;--ref-bg:#080b0e;--ref-panel:#101419;--ref-line:#252b32;--ref-muted:#8d96a3}
html{overflow-x:hidden!important;background:var(--ref-bg)!important}
body.dp4-body{overflow-x:hidden!important;min-width:0!important;background:radial-gradient(circle at 57% -25%,#1a2025 0,transparent 38%),linear-gradient(135deg,#080b0e,#0b0f12 52%,#080a0d)!important;color:#f5f7f8!important}
body.dp4-body *{box-sizing:border-box}
.dp4-shell{width:100%!important;max-width:100vw!important;min-width:0!important}

/* fixed left rail */
.dp4-sidebar{position:fixed!important;inset:0 auto 0 0!important;z-index:9990!important;width:var(--ref-side)!important;height:100vh!important;padding:28px 18px 190px!important;overflow:hidden auto!important;border:0!important;border-right:1px solid #22272d!important;background:linear-gradient(180deg,#0b0e11 0,#0a0d10 72%,#080a0c 100%)!important;box-shadow:18px 0 45px rgba(0,0,0,.22)!important}
.dp4-logo{display:flex!important;align-items:center!important;width:178px!important;height:54px!important;margin:0 10px 29px!important;overflow:hidden!important}
.dp4-logo img{width:174px!important;height:auto!important;max-height:46px!important;object-fit:contain!important;object-position:left center!important;filter:brightness(1.22) contrast(1.05)!important}
.dp4-side-label{margin:24px 18px 8px!important;color:#5f6874!important;font-size:9px!important;font-weight:800!important;letter-spacing:.22em!important}
.dp4-side-nav{display:grid!important;gap:6px!important;margin:0!important}
.dp4-side-nav a{position:relative!important;display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;min-height:49px!important;padding:8px 14px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#aeb6c2!important;text-decoration:none!important;box-shadow:none!important;transition:background .16s,color .16s!important}
.dp4-side-nav a:hover,.dp4-side-nav a:focus,.dp4-side-nav a:first-child{background:linear-gradient(90deg,#171b20,#14181c)!important;color:#fff!important}
.dp4-side-nav a:first-child:before{content:"";position:absolute;left:-18px;top:0;bottom:0;width:3px;background:var(--ref-orange)}
.dp4-side-nav a:first-child span,.dp4-side-nav a:hover span{color:var(--ref-orange)!important}
.dp4-side-nav a span{display:grid!important;place-items:center!important;width:25px!important;color:#8993a1!important;font-size:22px!important;font-weight:400!important}
.dp4-side-nav a b{overflow:hidden!important;color:inherit!important;font-size:14px!important;font-weight:500!important;letter-spacing:0!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.dp4-side-spacer{display:block!important;min-height:70px!important;border-top:1px solid #242a30!important;margin:24px 18px 0!important}

/* workspace and top search */
.dp4-workspace{width:calc(100% - var(--ref-side))!important;max-width:calc(100vw - var(--ref-side))!important;min-width:0!important;margin-left:var(--ref-side)!important;padding:0!important}
.dp4-commandbar{position:sticky!important;top:0!important;z-index:9970!important;display:grid!important;grid-template-columns:minmax(300px,650px) minmax(280px,1fr) auto!important;align-items:center!important;gap:26px!important;width:100%!important;min-width:0!important;min-height:100px!important;padding:22px 30px!important;border:0!important;background:linear-gradient(180deg,rgba(10,13,16,.98),rgba(10,13,16,.91))!important;backdrop-filter:blur(20px)!important}
.dp4-global-search{height:58px!important;min-width:0!important;border:1px solid #303740!important;border-radius:12px!important;background:#0c1014!important;box-shadow:inset 0 1px rgba(255,255,255,.02)!important}
.dp4-global-search span{color:#929ca9!important;font-size:29px!important}
.dp4-global-search input{min-width:0!important;color:#fff!important;font-size:15px!important}
.dp4-global-search input::placeholder{color:#707984!important}
.dp4-global-search kbd{display:none!important}
.dp-market-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:36px!important;min-width:0!important}
.dp-market-nav a{padding:10px 0!important;border:0!important;background:transparent!important;color:#aeb6c1!important;font-size:12px!important;font-weight:600!important;letter-spacing:.03em!important;white-space:nowrap!important}
.dp-market-nav a:hover{color:var(--ref-orange)!important}
.dp4-catalog-drawer{display:block!important;position:absolute!important;z-index:10030!important;width:0!important;height:0!important;min-width:0!important;overflow:visible!important}
.dp4-catalog-drawer>.dp4-catalog-trigger{display:none!important}
.dp4-command-actions{display:flex!important;gap:8px!important;justify-content:flex-end!important;min-width:0!important}
.dp4-command-actions a{height:44px!important;padding:0 15px!important;border:1px solid #353c45!important;border-radius:9px!important;background:#0d1115!important;color:#d3d8de!important;font-size:10px!important;white-space:nowrap!important}
.dp4-command-actions .dp4-account{border-color:#7d430f!important;color:#ff983b!important}

/* content canvas */
.dp4-content{width:100%!important;max-width:100%!important;min-width:0!important;padding:0 24px calc(var(--ref-player) + 30px)!important;overflow:clip!important;background:transparent!important}
.dp4-homegrid,.dp4-homegrid-wide,.dp4-dashboard-main{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important}
.dp4-dashboard-main{display:grid!important;gap:22px!important}
.dp4-hero{min-height:390px!important;margin:0!important;border:1px solid #292f36!important;border-radius:12px!important;background:#0d1115!important;box-shadow:0 22px 60px rgba(0,0,0,.25)!important;overflow:hidden!important}
.dp4-hero-copy{z-index:2!important;padding:60px 56px!important}
.dp4-hero h1{font-size:clamp(48px,5vw,78px)!important;line-height:.9!important;letter-spacing:-.055em!important}
.dp4-hero h1 em{color:var(--ref-orange)!important}
.dp4-hero p{color:#a8b0bb!important;font-size:15px!important}
.dp4-hero-actions a{border-radius:8px!important}
.dp4-hero-art{width:48%!important}
.dp4-hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0d1115 0,transparent 62%),linear-gradient(0deg,rgba(8,10,13,.35),transparent)}
.dp4-quickdeck{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1px!important;margin:0!important;overflow:hidden!important;border:1px solid var(--ref-line)!important;border-radius:10px!important;background:var(--ref-line)!important}
.dp4-quickdeck a{min-width:0!important;min-height:98px!important;padding:20px!important;border:0!important;border-radius:0!important;background:#0f1317!important}
.dp4-quickdeck a:hover{background:#171c21!important}
.dp4-quickdeck a span{color:var(--ref-orange)!important}.dp4-quickdeck a b{font-size:16px!important}.dp4-quickdeck a small{color:#7f8894!important}
.dp4-panel,.dp-section,.dp4-stats-center,.dp4-feature-jumps,.dp4-pricing-home{max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important}
.dp4-panel{border:1px solid var(--ref-line)!important;border-radius:10px!important;background:rgba(12,16,19,.9)!important;overflow:hidden!important}
.dp4-panel-head{padding:24px 26px!important;border-bottom:1px solid var(--ref-line)!important}
.dp4-panel-head h2{font-size:28px!important}.dp4-panel-head>div>span{color:var(--ref-orange)!important}

/* catalogue rows matching reference */
.dp4-tracklist{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
.dp4-tracklist .dp-table{width:100%!important;max-width:100%!important;table-layout:fixed!important;border-collapse:collapse!important}
.dp4-tracklist .dp-table thead{background:#090c0f!important}
.dp4-tracklist .dp-table th{height:42px!important;padding:0 11px!important;border-bottom:1px solid #242a30!important;color:#78818d!important;font-size:10px!important;font-weight:600!important;text-transform:uppercase!important}
.dp4-tracklist .dp-table td{height:73px!important;padding:7px 11px!important;border-bottom:1px solid #252b31!important;background:transparent!important;color:#cbd0d6!important;font-size:12px!important;overflow:hidden!important;text-overflow:ellipsis!important}
.dp4-tracklist .dp-table tbody tr{background:transparent!important;transition:background .15s!important}
.dp4-tracklist .dp-table tbody tr:hover,.dp4-tracklist .dp-table tbody tr:first-child{background:linear-gradient(90deg,#1c2126,#171c20)!important}
.dp4-tracklist .dp-table th:first-child,.dp4-tracklist .dp-table td:first-child{width:74px!important}
.dp4-tracklist .dp-table th:nth-child(2),.dp4-tracklist .dp-table td:nth-child(2){width:32%!important}
.dp4-tracklist img{width:58px!important;height:58px!important;border-radius:3px!important;object-fit:cover!important}
.dp4-tracklist .dp-play,.dp4-tracklist button{border-color:#4a535d!important;background:#101419!important}

/* full-width bottom deck, preserving existing controls */
.dp-global-player{position:fixed!important;z-index:9998!important;left:var(--ref-side)!important;right:0!important;bottom:0!important;width:auto!important;max-width:none!important;min-width:0!important;min-height:var(--ref-player)!important;border:0!important;border-top:1px solid #262c32!important;border-radius:0!important;background:linear-gradient(110deg,rgba(12,16,19,.99),rgba(8,11,14,.99))!important;box-shadow:0 -20px 50px rgba(0,0,0,.34)!important;backdrop-filter:blur(22px)!important}
.dp-global-inner{width:100%!important;max-width:none!important;min-width:0!important;min-height:var(--ref-player)!important;grid-template-columns:108px 142px minmax(220px,1fr) 82px minmax(160px,220px)!important;gap:22px!important;padding:18px 30px!important}
.dp-global-cover{width:104px!important;height:104px!important;border:1px solid #343a41!important;border-radius:50%!important;box-shadow:0 0 0 5px #080a0d,0 0 0 6px #333a42,0 0 28px rgba(255,112,0,.24)!important}
.dp-global-play{width:66px!important;height:66px!important;border:1px solid var(--ref-orange)!important;border-radius:50%!important;background:#101419!important;color:#fff!important;box-shadow:0 0 24px rgba(255,121,0,.18)!important}
.dp-global-skip{border:0!important;background:transparent!important;font-size:30px!important}
.dp-global-title{font-size:19px!important}.dp-global-meta{color:#8e97a2!important}
.dp-global-wave{height:52px!important;border:0!important;background:transparent!important}
.dp-global-actions{min-width:0!important}

.dp-footer,.dp-desktop-help-legal{display:none!important}

@media (max-width:1450px){
  :root{--ref-side:226px}
  .dp4-commandbar{grid-template-columns:minmax(270px,1fr) auto!important;gap:18px!important}.dp-market-nav{display:none!important}
  .dp4-command-actions .dp4-upload{display:none!important}
  .dp-global-inner{grid-template-columns:86px 128px minmax(180px,1fr) 74px 150px!important;gap:14px!important;padding-inline:20px!important}.dp-global-cover{width:82px!important;height:82px!important}
}
@media (max-width:1100px) and (min-width:901px){
  :root{--ref-side:190px;--ref-player:132px}
  .dp4-sidebar{padding-inline:12px!important}.dp4-logo{width:150px!important}.dp4-side-nav a{grid-template-columns:30px minmax(0,1fr)!important;padding-inline:10px!important}.dp4-side-nav a b{font-size:12px!important}
  .dp4-commandbar{padding:16px 20px!important;min-height:84px!important}.dp4-content{padding-inline:16px!important}.dp4-hero-copy{padding:44px 36px!important}.dp4-quickdeck{grid-template-columns:1fr 1fr!important}
  .dp-global-inner{min-height:132px!important;grid-template-columns:70px 98px minmax(150px,1fr) 120px!important}.dp-global-cover{width:66px!important;height:66px!important}.dp-global-time{display:none!important}
}
@media (max-width:900px){
  :root{--ref-side:0px;--ref-player:104px}
  html,body.dp4-body{max-width:100vw!important;overflow-x:hidden!important}
  .dp4-workspace{width:100%!important;max-width:100%!important;margin-left:0!important}
  .dp4-content{padding:10px 10px 184px!important;overflow:hidden!important}
  .dp4-commandbar{grid-template-columns:minmax(0,1fr) auto!important;min-height:62px!important;padding:8px 10px!important}.dp4-global-search{height:46px!important}.dp4-command-actions .dp4-account,.dp4-command-actions .dp4-upload{display:none!important}
  .dp4-hero{min-height:0!important}.dp4-hero-copy{padding:30px 20px!important}.dp4-hero h1{font-size:42px!important}.dp4-hero-art{position:relative!important;width:100%!important;height:190px!important}.dp4-quickdeck{grid-template-columns:1fr 1fr!important}
  .dp-global-player{left:0!important;bottom:64px!important;width:100%!important;min-height:96px!important}.dp-global-inner{min-height:96px!important;grid-template-columns:54px 48px minmax(0,1fr) auto!important;gap:9px!important;padding:10px!important}.dp-global-cover{width:52px!important;height:52px!important}.dp-global-transport{display:block!important}.dp-global-skip{display:none!important}.dp-global-play{width:44px!important;height:44px!important}.dp-global-wave{height:24px!important}.dp-global-time{display:none!important}.dp-global-actions{width:auto!important}.dp-global-action-label{display:none!important}
  .dp4-tracklist{overflow-x:auto!important;overscroll-behavior-x:contain!important}.dp4-tracklist .dp-table{min-width:760px!important}
}
@media (max-width:560px){.dp4-hero h1{font-size:35px!important}.dp4-hero-actions{grid-template-columns:1fr!important}.dp4-quickdeck{grid-template-columns:1fr!important}.dp4-feature-jumps{grid-template-columns:1fr!important}.dp4-global-actions{display:none!important}.dp-global-inner{grid-template-columns:48px 44px minmax(0,1fr)!important}.dp4-command-actions .dp4-lang{padding:0 10px!important}}

/* v28.36.22 — desktop fit correction: no clipped content, no sidebar scrollbar */
@media (min-width:901px){
  :root{--ref-player:118px}
  .dp4-sidebar{
    padding:14px 12px 126px!important;
    overflow:hidden!important;
    scrollbar-width:none!important;
  }
  .dp4-sidebar::-webkit-scrollbar{display:none!important}
  .dp4-logo{
    position:relative!important;
    width:auto!important;
    height:44px!important;
    margin:0 10px 10px!important;
    overflow:visible!important;
  }
  .dp4-logo img{display:none!important}
  .dp4-logo:before{
    content:"DJ"!important;
    color:#f5f6f7!important;
    font-size:29px!important;
    line-height:44px!important;
    font-weight:950!important;
    letter-spacing:-1.8px!important;
  }
  .dp4-logo:after{
    content:"PORT"!important;
    color:var(--ref-orange)!important;
    font-size:29px!important;
    line-height:44px!important;
    font-weight:950!important;
    letter-spacing:-1.8px!important;
    margin-left:2px!important;
  }
  .dp4-side-label{margin:11px 13px 4px!important;font-size:8px!important;line-height:12px!important}
  .dp4-side-nav{gap:2px!important}
  .dp4-side-nav a{
    min-height:40px!important;
    height:40px!important;
    padding:4px 10px!important;
    grid-template-columns:29px minmax(0,1fr)!important;
  }
  .dp4-side-nav a span{width:22px!important;font-size:17px!important}
  .dp4-side-nav a b{font-size:12px!important}
  .dp4-side-spacer{min-height:12px!important;margin:11px 13px 0!important}
  .dp4-commandbar{min-height:82px!important;padding:12px 24px!important}
  .dp4-global-search{height:52px!important}
  .dp4-content{
    min-height:calc(100vh - 82px)!important;
    padding:0 20px 142px!important;
    overflow:visible!important;
  }
  .dp4-homegrid,.dp4-homegrid-wide,.dp4-dashboard-main,.dp4-panel,.dp-section{
    overflow:visible!important;
  }
  .dp4-hero{min-height:330px!important}
  .dp4-hero-copy{padding:42px 44px!important}
  .dp4-hero-art{height:330px!important;min-height:330px!important}
  .dp-global-player{min-height:118px!important;height:118px!important;overflow:hidden!important}
  .dp-global-inner{
    min-height:118px!important;
    height:118px!important;
    grid-template-columns:74px 130px minmax(230px,1fr) 78px minmax(145px,200px)!important;
    gap:14px!important;
    padding:10px 22px!important;
  }
  .dp-global-cover{width:70px!important;height:70px!important}
  .dp-global-play{width:54px!important;height:54px!important}
  .dp-global-wave{height:38px!important}
  .dp4-tracklist{overflow:hidden!important}
  .dp4-tracklist .dp-table{min-width:0!important;width:100%!important;table-layout:fixed!important}
  .dp4-tracklist .dp-table th,.dp4-tracklist .dp-table td{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .dp4-tracklist .dp-table td{height:64px!important;padding-top:5px!important;padding-bottom:5px!important}
  .dp4-tracklist img{width:50px!important;height:50px!important}
}
@media (min-width:901px) and (max-height:760px){
  .dp4-sidebar{padding-top:8px!important}
  .dp4-logo{height:36px!important;margin-bottom:4px!important}
  .dp4-logo:before,.dp4-logo:after{font-size:25px!important;line-height:36px!important}
  .dp4-side-label{margin-top:5px!important;margin-bottom:2px!important}
  .dp4-side-nav a{height:34px!important;min-height:34px!important}
  .dp4-side-spacer{display:none!important}
}

/* v28.36.23 — keep emoji tiny and protect the complete right side of track rows */
img.emoji,img.wp-smiley,.emoji{
  display:inline-block!important;
  width:1em!important;
  min-width:0!important;
  max-width:1em!important;
  height:1em!important;
  min-height:0!important;
  max-height:1em!important;
  margin:0 .08em!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
  vertical-align:-.12em!important;
}
@media (min-width:901px){
  .dp4-tracklist .dp-table th:nth-child(1),.dp4-tracklist .dp-table td:nth-child(1){width:6%!important;min-width:0!important;max-width:none!important}
  .dp4-tracklist .dp-table th:nth-child(2),.dp4-tracklist .dp-table td:nth-child(2){width:27%!important;min-width:0!important;max-width:none!important}
  .dp4-tracklist .dp-table th:nth-child(3),.dp4-tracklist .dp-table td:nth-child(3){width:10%!important;min-width:0!important;max-width:none!important}
  .dp4-tracklist .dp-table th:nth-child(4),.dp4-tracklist .dp-table td:nth-child(4){width:8%!important;min-width:0!important;max-width:none!important}
  .dp4-tracklist .dp-table th:nth-child(5),.dp4-tracklist .dp-table td:nth-child(5){width:10%!important;min-width:0!important;max-width:none!important}
  .dp4-tracklist .dp-table th:nth-child(6),.dp4-tracklist .dp-table td:nth-child(6){width:21%!important;min-width:0!important;max-width:none!important}
  .dp4-tracklist .dp-table th:nth-child(7),.dp4-tracklist .dp-table td:nth-child(7){width:18%!important;min-width:0!important;max-width:none!important}
  .dp4-tracklist .dp-table .dp-tech-cell{width:21%!important;min-width:0!important;max-width:none!important;padding:5px!important;overflow:visible!important}
  .dp4-tracklist .dp-track-tech-panel{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:3px!important;width:100%!important;min-width:0!important}
  .dp4-tracklist .dp-track-tech-panel>span{min-width:0!important;padding:4px 3px!important}
  .dp4-tracklist .dp-track-tech-panel small{font-size:6px!important;letter-spacing:0!important}
  .dp4-tracklist .dp-track-tech-panel strong{font-size:10px!important}
  .dp4-tracklist .dp-download-cell{width:18%!important;min-width:0!important;max-width:none!important;padding:5px!important;overflow:visible!important}
  .dp4-tracklist .dp-download-cell .dp-downloads,.dp4-tracklist .dp-download-cell .dp-download-stack{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(48px,1fr))!important;
    align-items:stretch!important;
    gap:4px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    overflow:visible!important;
  }
  .dp4-tracklist .dp-download-cell .dp-download-stack>*{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:34px!important;
    padding:4px 2px!important;
    overflow:hidden!important;
    font-size:7px!important;
    white-space:normal!important;
  }
}
@media (min-width:901px) and (max-width:1250px){
  .dp4-tracklist .dp-table th:nth-child(3),.dp4-tracklist .dp-table td:nth-child(3),
  .dp4-tracklist .dp-table th:nth-child(4),.dp4-tracklist .dp-table td:nth-child(4),
  .dp4-tracklist .dp-table th:nth-child(5),.dp4-tracklist .dp-table td:nth-child(5){display:none!important}
  .dp4-tracklist .dp-table th:nth-child(1),.dp4-tracklist .dp-table td:nth-child(1){width:8%!important}
  .dp4-tracklist .dp-table th:nth-child(2),.dp4-tracklist .dp-table td:nth-child(2){width:36%!important}
  .dp4-tracklist .dp-table th:nth-child(6),.dp4-tracklist .dp-table td:nth-child(6){width:32%!important}
  .dp4-tracklist .dp-table th:nth-child(7),.dp4-tracklist .dp-table td:nth-child(7){width:24%!important}
  .dp4-tracklist .dp-table .dp-tech-cell{width:32%!important}
  .dp4-tracklist .dp-download-cell{width:24%!important}
}

/* v28.36.24 — homepage only: never let intrinsic card width expand the main grid */
body.home .dp4-content.dp4-home,
body.home .dp4-homegrid,
body.home .dp4-homegrid-wide,
body.home .dp4-dashboard-main{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.home .dp4-dashboard-main{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-columns:minmax(0,1fr)!important;
}
body.home .dp4-dashboard-main>*{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.home .dp4-hero,
body.home .dp4-quickdeck,
body.home .dp4-stats-center,
body.home .dp4-feature-jumps,
body.home .dp4-panel,
body.home .dp-section,
body.home .dp4-artist-collections,
body.home .dp4-smart-packs,
body.home .dp-trend-section{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.home .dp4-hero{
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
}
body.home .dp4-quickdeck{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
body.home .dp4-stats-center>*{min-width:0!important}
@media (max-width:1100px) and (min-width:901px){
  body.home .dp4-quickdeck{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.home .dp4-hero{grid-template-columns:minmax(0,1fr)!important}
}
