.player-context-row{display:flex;justify-content:flex-end;min-height:22px;margin-top:6px}.player-context-row .section-link{margin-top:0;font-size:12px}.player-context-row a[hidden]{display:none}.mini-play.is-current{background:linear-gradient(145deg,#d6a7a3,#c88f8b);color:#fff;border-color:#bd8985;box-shadow:0 7px 16px rgba(185,119,113,.16)}.player-controls button,.mini-play{touch-action:manipulation}.player-controls button:focus-visible,.mini-play:focus-visible,.player-context-row a:focus-visible{outline:3px solid rgba(200,143,139,.28);outline-offset:3px}@media (max-width:850px){.player-shell{margin:-24px 4vw 0;padding:18px}.player-main{grid-template-columns:62px 1fr 56px;gap:12px}.cover-art{width:62px;height:62px;border-radius:16px}.play-button{width:56px;height:56px}.track-meta strong{font-size:17px}.player-controls{gap:8px}.player-controls button{min-width:38px;min-height:38px;padding:7px 5px}.player-context-row{justify-content:flex-start;margin-top:4px}.player-context-row .section-link{font-size:12px}}@media (max-width:520px){.player-controls{gap:4px}.player-controls button{font-size:10px;min-width:34px}.fake-progress{min-width:45px}.player-context-row .section-link{font-size:11px}}

/* HIT SIGNATURE — flagship player */
.player-shell{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:22px;
  background:
    radial-gradient(circle at 92% 12%,rgba(112,76,255,.09),transparent 25%),
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(250,245,249,.94));
  box-shadow:0 24px 60px rgba(55,42,34,.12);
}
.player-shell:after{
  height:2px;
  opacity:.75;
}
.player-main{position:relative;z-index:1}
.player-shell.is-playing .cover-art{
  animation:playerCoverFloat 3.2s ease-in-out infinite;
  box-shadow:0 14px 30px rgba(112,76,255,.18),0 0 0 5px rgba(255,61,129,.05);
}
.player-shell.is-playing .play-button{
  box-shadow:0 0 0 7px rgba(255,61,129,.08),0 14px 32px rgba(255,61,129,.24);
}
.player-shell.is-loading .play-button{animation:playerLoading 1.1s ease-in-out infinite}
.player-shell.is-error{box-shadow:0 24px 60px rgba(180,70,70,.10)}
.player-shell .live-badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.player-shell .live-badge:before{
  content:"";
  width:6px;height:6px;border-radius:50%;
  background:#ff3d81;
  box-shadow:0 0 0 4px rgba(255,61,129,.10);
}
.player-shell .fake-progress{
  position:relative;
  height:7px;
  border-radius:99px;
  overflow:hidden;
}
.player-shell .fake-progress span{
  position:relative;
  overflow:hidden;
}
.player-shell .fake-progress span:after{
  content:"";
  position:absolute;right:0;top:0;width:18px;height:100%;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 10px rgba(112,76,255,.5);
}
.player-controls button{
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease;
}
.player-controls button:hover{
  transform:translateY(-2px);
  color:#704cff;
}
.player-controls button[aria-pressed="true"]{
  background:rgba(112,76,255,.09);
  color:#704cff;
}
@keyframes playerCoverFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-3px) rotate(1deg)}}
@keyframes playerLoading{0%,100%{transform:scale(1)}50%{transform:scale(.94)}}
@media(max-width:600px){
  .player-shell{border-radius:24px;padding:17px}
  .player-main{gap:10px}
  .player-controls{padding-top:4px}
}
@media(prefers-reduced-motion:reduce){
  .player-shell.is-playing .cover-art,.player-shell.is-loading .play-button{animation:none}
}

/* HIT MOBILE STABILITY — player */
.player-shell,.player-main,.player-controls,.player-context-row,.track-meta,.fake-progress{min-width:0;max-width:100%}
.player-shell .track-meta strong,.player-shell .track-meta span{overflow-wrap:anywhere}
@media(max-width:520px){
  .player-shell{margin-left:0;margin-right:0;max-width:100%;padding:16px}
  .player-main{grid-template-columns:52px minmax(0,1fr) 48px;gap:9px}
  .cover-art{width:52px;height:52px}
  .play-button{width:48px;height:48px}
  .player-controls{width:100%;display:flex;flex-wrap:wrap}
  .player-controls button{min-width:34px;max-width:100%;flex:0 1 auto}
  .fake-progress{width:100%;min-width:0}
}

/* HIT MOBILE TRACK CARD CONTROLS — refined play/pause and details buttons */
.orh-card-actions{
  display:flex;
  align-items:stretch;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
  min-width:0;
}
.orh-card-actions:has(.orh-text-link){
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.orh-card-actions .orh-track-player{
  display:flex;
  flex:1 1 100%;
  min-width:0;
  width:100%;
}
.orh-card-actions:has(.orh-text-link) .orh-track-player{
  flex:initial;
}
.orh-card-actions .orh-track-player button{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:100%;
  min-width:0;
  min-height:64px;
  padding:8px 16px;
  border:1px solid #cfe2ff;
  border-radius:999px;
  background:linear-gradient(135deg,#f5faff,#eaf3ff);
  color:#0878ee;
  box-shadow:0 8px 22px rgba(20,112,230,.10),inset 0 1px 0 rgba(255,255,255,.95);
  font-size:16px;
  font-weight:800;
  line-height:1.2;
  white-space:normal;
  text-align:left;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.orh-card-actions .orh-track-player button:before{
  content:"▶";
  display:inline-grid;
  place-items:center;
  flex:0 0 44px;
  width:44px;
  height:44px;
  border-radius:50%;
  background:#1478ed;
  color:#fff;
  font-size:15px;
  line-height:1;
  box-shadow:0 4px 10px rgba(20,120,237,.18);
}
.orh-card-actions .orh-track-player button[aria-pressed="true"]:before{
  content:"Ⅱ";
  font-size:17px;
  letter-spacing:-2px;
  padding-right:2px;
}
.orh-card-actions .orh-track-player button:hover{
  transform:translateY(-1px);
  box-shadow:0 11px 26px rgba(20,112,230,.15),inset 0 1px 0 rgba(255,255,255,.95);
}
.orh-card-actions .orh-track-player button:focus-visible,
.orh-card-actions .orh-text-link:focus-visible{
  outline:3px solid rgba(20,120,237,.22);
  outline-offset:3px;
}
.orh-card-actions .orh-text-link{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  min-width:0;
  min-height:64px;
  padding:8px 16px;
  border:1px solid rgba(54,47,43,.13);
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:#20202a;
  box-shadow:0 5px 16px rgba(55,42,34,.035);
  font-size:16px;
  font-weight:750;
  line-height:1.2;
  text-decoration:none;
  overflow-wrap:anywhere;
}
.orh-card-actions .orh-text-link:before{
  content:"i";
  display:inline-grid;
  place-items:center;
  flex:0 0 40px;
  width:40px;
  height:40px;
  border:2px solid #252631;
  border-radius:50%;
  color:#252631;
  font-family:Georgia,serif;
  font-size:25px;
  font-weight:700;
  line-height:1;
}
.orh-card-actions audio{display:none}
@media(max-width:520px){
  .orh-card-actions{gap:10px;margin-top:16px}
  .orh-card-actions:has(.orh-text-link){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .orh-card-actions .orh-track-player button,
  .orh-card-actions .orh-text-link{min-height:58px;padding:7px 10px;gap:8px;font-size:13px}
  .orh-card-actions .orh-track-player button:before{flex-basis:36px;width:36px;height:36px;font-size:13px}
  .orh-card-actions .orh-text-link:before{flex-basis:34px;width:34px;height:34px;font-size:22px}
}
@media(prefers-reduced-motion:reduce){.orh-card-actions .orh-track-player button{transition:none}}



/* TRACK LISTEN BUTTON — unified red/purple listen/stop component */
.orh-listen-button,
.orh-track-player button[data-track-play]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  box-sizing:border-box!important;
  width:auto!important;
  min-width:220px!important;
  max-width:100%!important;
  min-height:58px!important;
  margin:0!important;
  padding:0 30px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(100deg,#d92d8a 0%,#8b39d7 48%,#f05a3c 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(181,49,133,.20)!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  cursor:pointer;
  touch-action:manipulation;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important;
}
.orh-listen-icon,
.orh-track-player button[data-track-play] .orh-listen-icon{
  display:none!important;
}
.orh-listen-label,
.orh-track-player button[data-track-play] .orh-listen-label{
  display:block!important;
  min-width:0!important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.orh-listen-button.is-playing,
.orh-listen-button[aria-pressed="true"],
.orh-track-player button[data-track-play].is-playing,
.orh-track-player button[data-track-play][aria-pressed="true"]{
  background:linear-gradient(100deg,#c72572 0%,#7430bd 50%,#e44935 100%)!important;
  box-shadow:0 11px 28px rgba(149,40,111,.24)!important;
}
.orh-listen-button:hover,
.orh-track-player button[data-track-play]:hover{
  transform:translateY(-1px);
  filter:saturate(1.06);
  box-shadow:0 13px 30px rgba(181,49,133,.25)!important;
}
.orh-listen-button:focus-visible,
.orh-track-player button[data-track-play]:focus-visible{
  outline:3px solid rgba(181,49,133,.25);
  outline-offset:3px;
}
.orh-listen-button:disabled,
.orh-track-player button[data-track-play]:disabled{
  opacity:.65;
  cursor:wait;
}
@media(max-width:520px){
  .orh-listen-button,
  .orh-track-player button[data-track-play]{
    min-width:180px!important;
    width:180px!important;
    max-width:180px!important;
    min-height:46px!important;
    padding:0 20px!important;
    margin-inline:auto!important;
    font-size:14px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .orh-listen-button,
  .orh-track-player button[data-track-play]{transition:none!important}
}


/* Desktop catalog actions must fit their grid cells. Mobile alignment is defined below. */
@media(min-width:701px){
  .orh-card-actions .orh-track-player button[data-track-play]{
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    padding:0 16px!important;
    font-size:14px!important;
  }
  .orh-card-actions .orh-track-player button[data-track-play]:before{
    content:none;
    display:none;
  }
  .orh-card-actions .orh-text-link{
    justify-content:center;
    min-height:48px;
    padding:0 12px;
    gap:8px;
    font-size:13px;
    white-space:nowrap;
    overflow-wrap:normal;
  }
  .orh-card-actions .orh-text-link:before{
    flex-basis:26px;
    width:26px;
    height:26px;
    font-size:18px;
  }
  .chart-row .orh-track-player button[data-track-play],
  .chart-row>.orh-listen-button{
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    padding:0 16px!important;
    font-size:14px!important;
  }
}

/* MOBILE PLAYER V2 — compact flagship layout */
@media(max-width:700px){
  .player-shell{
    margin:-18px 18px 0;
    padding:16px;
    border-radius:22px;
    overflow:hidden;
  }
  .player-main{
    display:grid;
    grid-template-columns:58px minmax(0,1fr) 50px;
    align-items:center;
    gap:11px;
  }
  .cover-art{
    width:58px;
    height:58px;
    border-radius:15px;
  }
  .track-meta{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
  }
  .track-meta .live-badge{
    margin-bottom:4px;
    font-size:9px;
    line-height:1;
  }
  .track-meta strong{
    display:block;
    width:100%;
    max-width:100%;
    font-size:16px;
    line-height:1.18;
    white-space:nowrap;
    overflow:hidden!important;
    text-overflow:ellipsis;
  }
  .track-meta>span:not(.live-badge){
    display:block;
    width:100%;
    max-width:100%;
    margin-top:3px;
    font-size:12px;
    line-height:1.25;
    white-space:nowrap;
    overflow:hidden!important;
    text-overflow:ellipsis;
  }
  .play-button{
    width:50px;
    height:50px;
    min-width:50px;
    min-height:50px;
    border-radius:50%;
    touch-action:manipulation;
  }
  .player-controls{
    display:grid;
    grid-template-columns:40px 40px 40px minmax(70px,1fr) 40px;
    align-items:center;
    gap:7px;
    width:100%;
    margin-top:13px;
  }
  .player-controls button{
    width:40px;
    min-width:40px;
    height:40px;
    min-height:40px;
    padding:0;
    border-radius:12px;
  }
  .player-shell .fake-progress{
    width:100%;
    min-width:0;
    height:8px;
  }
  .player-context-row{
    justify-content:flex-start;
    min-height:0;
    margin-top:9px;
  }
  .player-context-row .section-link{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    max-width:100%;
    font-size:12px;
    line-height:1.25;
  }
}
@media(max-width:520px){
  .player-shell{
    margin:-12px 14px 0;
    padding:14px;
    border-radius:20px;
  }
  .player-main{
    grid-template-columns:52px minmax(0,1fr) 46px;
    gap:9px;
  }
  .cover-art{
    width:52px;
    height:52px;
    border-radius:13px;
  }
  .track-meta strong{font-size:15px}
  .track-meta>span:not(.live-badge){font-size:11px}
  .play-button{
    width:46px;
    height:46px;
    min-width:46px;
    min-height:46px;
  }
  .player-controls{
    grid-template-columns:38px 38px 38px minmax(54px,1fr) 38px;
    gap:5px;
    margin-top:12px;
  }
  .player-controls button{
    width:38px;
    min-width:38px;
    height:38px;
    min-height:38px;
    font-size:9px;
  }
  .player-context-row{margin-top:7px}
  .player-context-row .section-link{
    min-height:34px;
    font-size:11px;
  }
}
@media(max-width:360px){
  .player-shell{margin-left:10px;margin-right:10px;padding:12px}
  .player-controls{
    grid-template-columns:36px 36px 36px minmax(44px,1fr) 36px;
    gap:4px;
  }
  .player-controls button{
    width:36px;
    min-width:36px;
    height:36px;
    min-height:36px;
  }
}

/* MOBILE LISTEN BUTTON — align to the right edge for easier thumb access */
@media(max-width:520px){
  .orh-listen-button,
  .orh-track-player button[data-track-play]{
    margin-left:auto!important;
    margin-right:0!important;
  }
}

/* MOBILE LISTEN BUTTONS — final right alignment */
@media(max-width:520px){
  .orh-card-actions{
    justify-content:flex-end!important;
  }
  .orh-card-actions .orh-track-player{
    width:100%!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .orh-card-actions .orh-track-player .orh-listen-button,
  .orh-card-actions .orh-track-player button[data-track-play]{
    flex:0 0 104px!important;
    width:104px!important;
    min-width:104px!important;
    max-width:104px!important;
    margin-left:auto!important;
    margin-right:0!important;
  }
}
@media(max-width:380px){
  .orh-card-actions .orh-track-player .orh-listen-button,
  .orh-card-actions .orh-track-player button[data-track-play]{
    flex-basis:96px!important;
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
  }
}

/* MOBILE LISTEN BUTTONS — real rendered containers */
@media(max-width:520px){
  .orh-listen-button,
  .orh-track-player button[data-track-play]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:auto!important;
    margin-right:0!important;
  }
  .orh-card-actions .orh-track-player{
    display:block!important;
    width:100%!important;
    margin:0!important;
    text-align:right!important;
  }
  .orh-card-actions .orh-track-player .orh-listen-button,
  .orh-card-actions .orh-track-player button[data-track-play]{
    width:104px!important;
    min-width:104px!important;
    max-width:104px!important;
  }
}
@media(max-width:380px){
  .orh-card-actions .orh-track-player .orh-listen-button,
  .orh-card-actions .orh-track-player button[data-track-play]{
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
  }
}