/* Playlist surface palette. Geometry stays in playlists.css / playlist-dock.css.
   Opaque faces make text contrast independent of artwork passing underneath.
   Tone Deck, VJ hardware, vinyl, photographs and visualizer pixels keep their
   own materials. No new listener, observer or theme state lives in this file. */

html[data-playlist-custom] body.playlists-page{
  --playlist-surface-ink:var(--playlist-theme-base-ink);
  --playlist-surface-muted:var(--playlist-theme-base-muted);
  --playlist-surface-boundary:var(--playlist-theme-base-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  --playlist-card:var(--playlist-theme-shell);
  --playlist-muted:var(--playlist-surface-muted);
  background:var(--playlist-theme-base);color:var(--playlist-surface-ink);
}

html[data-playlist-custom] body.playlists-page :is(.playlists-intro,
  .playlist-module:not(.playlist-module--aside),
  .playlist-module--aside.is-detail,
  .playlist-module__aSideBox,
  .playlist-support,
  .playlist-archiveHook,
  .playlist-yngfBuilder,
  .playlist-yngfBar,
  .playlist-supportModal__dialog,
  .playlist-harlemGateway){
  --playlist-surface-ink:var(--playlist-theme-shell-ink);
  --playlist-surface-muted:var(--playlist-theme-shell-muted);
  --playlist-surface-boundary:var(--playlist-theme-shell-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-shell);
  border-color:var(--playlist-theme-shell-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableControls){
  --playlist-surface-ink:var(--playlist-theme-shell-ink);
  --playlist-surface-muted:var(--playlist-theme-shell-muted);
  --playlist-surface-boundary:var(--playlist-theme-shell-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-shell);
  background-image:linear-gradient(180deg,var(--playlist-theme-shell-top),var(--playlist-theme-shell));
  border-color:var(--playlist-theme-shell-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableControls__nowSpinning,
  .playlist-turntableDeck__monitor){
  --playlist-surface-ink:var(--playlist-theme-raised-ink);
  --playlist-surface-muted:var(--playlist-theme-raised-muted);
  --playlist-surface-boundary:var(--playlist-theme-raised-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-raised);
  background-image:linear-gradient(180deg,var(--playlist-theme-raised-top),var(--playlist-theme-raised));
  border-color:var(--playlist-theme-raised-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableControls__volume,
  .playlist-turntableQueue,
  .playlist-scWrap__hint,
  .playlist-yngfCoverEdit,
  .playlist-supportForm__preview){
  --playlist-surface-ink:var(--playlist-theme-recessed-ink);
  --playlist-surface-muted:var(--playlist-theme-recessed-muted);
  --playlist-surface-boundary:var(--playlist-theme-recessed-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-recessed);
  border-color:var(--playlist-theme-recessed-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableQueue__card,
  .playlist-supportCard,
  .playlist-providerActions){
  --playlist-surface-ink:var(--playlist-theme-raised-ink);
  --playlist-surface-muted:var(--playlist-theme-raised-muted);
  --playlist-surface-boundary:var(--playlist-theme-raised-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-raised);
  background-image:linear-gradient(180deg,var(--playlist-theme-raised-top),var(--playlist-theme-raised));
  border-color:var(--playlist-theme-raised-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableQueue__card--previous,
  .playlist-turntableQueue__card--upcoming){
  background:transparent;--playlist-surface-ink:var(--playlist-theme-recessed-ink);--playlist-surface-muted:var(--playlist-theme-recessed-muted);border-color:transparent;
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableQueue__item--current .playlist-turntableQueue__card){
  --playlist-surface-ink:var(--playlist-theme-selected-ink);
  --playlist-surface-muted:var(--playlist-theme-selected-muted);
  --playlist-surface-boundary:var(--playlist-theme-selected-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-selected);
  border-color:var(--playlist-theme-selected-edge);
}

html[data-playlist-custom] body.playlists-page .playlist-turntableQueue__item--current .playlist-turntableQueue__card{
  --playlist-queue-ink:var(--playlist-theme-selected-ink);--playlist-queue-muted:var(--playlist-theme-selected-muted);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableQueue__badge){
  --playlist-surface-ink:var(--playlist-theme-recessed-ink);
  --playlist-surface-muted:var(--playlist-theme-recessed-muted);
  --playlist-surface-boundary:var(--playlist-theme-recessed-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-recessed);
  border-color:var(--playlist-theme-recessed-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-modeBar,
  .playlist-playerShell,
  .playlist-colorPanel){
  --playlist-surface-ink:var(--playlist-theme-menu-ink);
  --playlist-surface-muted:var(--playlist-theme-menu-muted);
  --playlist-surface-boundary:var(--playlist-theme-menu-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-menu);
  border-color:var(--playlist-theme-menu-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-dockChoices){
  --playlist-surface-ink:var(--playlist-theme-raised-ink);
  --playlist-surface-muted:var(--playlist-theme-raised-muted);
  --playlist-surface-boundary:var(--playlist-theme-raised-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-raised);
  border-color:var(--playlist-theme-raised-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-modeBar__btn,
  .playlist-dockToggle,
  .playlist-dockGrip){
  background:transparent;color:var(--playlist-theme-menu-ink);border-color:transparent;
}

html[data-playlist-custom] body.playlists-page :is(.playlist-modeBar__btn--mode.is-active){
  --playlist-surface-ink:var(--playlist-theme-selected-ink);
  --playlist-surface-muted:var(--playlist-theme-selected-muted);
  --playlist-surface-boundary:var(--playlist-theme-selected-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-selected);
  border-color:var(--playlist-theme-selected-edge);
}

html[data-playlist-custom] body.playlists-page .playlist-modeBar__btn--mode.is-active{
  box-shadow:none;
}

html[data-playlist-custom] body.playlists-page :is(.playlist-modeBar__btn--mode:not(.is-active):hover,
  .playlist-modeBar__btn--theme:hover){
  background:var(--playlist-theme-control);color:var(--playlist-theme-control-ink);
}

html[data-playlist-custom] body.playlists-page .playlist-modeBar__sep{
  color:var(--playlist-theme-menu-muted);
}

html[data-playlist-custom] body.playlists-page .playlist-modeBar__divider:not(.playlist-dockGrip){
  background:var(--playlist-theme-menu-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableControls__button,
  .playlist-controlShell button,
  .playlist-playerShell__button,
  .playlist-colorPanel button,
  .playlist-colorPanel input,
  .playlist-dockChoices button,
  .playlist-detailBack,
  .playlist-detailLinks a,
  .playlist-providerActions a,
  .playlist-providerActions button:not(.playlist-providerBadge),
  .playlist-support__button,
  .playlist-archiveHook__button,
  .playlist-yngfInput__field,
  .playlist-yngfInput__btn,
  .playlist-yngfManual input,
  .playlist-yngfDetailsEdit input,
  .playlist-yngfCoverEdit__pick,
  .playlist-yngfCoverTools label,
  .playlist-yngfCoverTools button,
  .playlist-yngfMeta__replaceBtn,
  .playlist-yngfMeta__clearBtn,
  .playlist-yngfBar__clearBtn,
  .playlist-yngfBuilder__clearBtn,
  .playlist-supportModal__close,
  .playlist-supportForm__field input,
  .playlist-supportForm__field select,
  .playlist-supportForm__field textarea,
  .playlist-supportForm__secondary,
  .playlist-module__yngfPortraitUpload,
  .playlists-yngfHeaderUpload,
  .playlist-coverButton--empty){
  --playlist-surface-ink:var(--playlist-theme-control-ink);
  --playlist-surface-muted:var(--playlist-theme-control-muted);
  --playlist-surface-boundary:var(--playlist-theme-control-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-control);
  background-image:linear-gradient(180deg,var(--playlist-theme-control-top),var(--playlist-theme-control));
  border-color:var(--playlist-theme-control-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableControls__button,
  .playlist-controlShell button,
  .playlist-playerShell__button,
  .playlist-colorPanel button,
  .playlist-colorPanel input,
  .playlist-dockChoices button,
  .playlist-detailBack,
  .playlist-detailLinks a,
  .playlist-providerActions a,
  .playlist-providerActions button:not(.playlist-providerBadge),
  .playlist-support__button,
  .playlist-archiveHook__button,
  .playlist-yngfInput__field,
  .playlist-yngfInput__btn,
  .playlist-yngfManual input,
  .playlist-yngfDetailsEdit input,
  .playlist-yngfCoverEdit__pick,
  .playlist-yngfCoverTools label,
  .playlist-yngfCoverTools button,
  .playlist-yngfMeta__replaceBtn,
  .playlist-yngfMeta__clearBtn,
  .playlist-yngfBar__clearBtn,
  .playlist-yngfBuilder__clearBtn,
  .playlist-supportModal__close,
  .playlist-supportForm__field input,
  .playlist-supportForm__field select,
  .playlist-supportForm__field textarea,
  .playlist-supportForm__secondary,
  .playlist-module__yngfPortraitUpload,
  .playlists-yngfHeaderUpload,
  .playlist-coverButton--empty){
  border-color:var(--playlist-theme-control-boundary);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-playerShell__button.is-playing,
  .playlist-playerShell__button.is-scrubbing,
  .playlist-turntableControls__button--play.is-playing,
  .playlist-turntableControls__button.is-scrubbing,
  .playlist-supportForm__submit,
  .playlist-yngfMeta__playBtn){
  --playlist-surface-ink:var(--playlist-theme-selected-ink);
  --playlist-surface-muted:var(--playlist-theme-selected-muted);
  --playlist-surface-boundary:var(--playlist-theme-selected-boundary);
  --playlist-surface-focus:var(--playlist-theme-focus);
  color:var(--playlist-surface-ink);
  background:var(--playlist-theme-selected);
  border-color:var(--playlist-theme-selected-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-playerShell__button.is-playing,
  .playlist-playerShell__button.is-scrubbing,
  .playlist-turntableControls__button--play.is-playing,
  .playlist-turntableControls__button.is-scrubbing,
  .playlist-supportForm__submit,
  .playlist-yngfMeta__playBtn){
  border-color:var(--playlist-theme-selected);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-detailLinks a:hover,
  .playlist-detailBack:hover,
  .playlist-providerActions a:hover,
  .playlist-providerActions a:active,
  .playlist-support__button:hover,
  .playlist-archiveHook__button:hover,
  .playlist-yngfInput__btn:hover,
  .playlist-supportForm__secondary:hover,
  .playlist-yngfBuilder__clearBtn:hover:not(:disabled)){
  background:var(--playlist-theme-selected);color:var(--playlist-theme-selected-ink);border-color:var(--playlist-theme-selected);
}

html[data-playlist-custom] body.playlists-page .playlist-providerActions a:visited{
  color:var(--playlist-theme-link-visited);
}

html[data-playlist-custom] body.playlists-page .playlist-providerActions a:visited:is(:hover,:active){
  color:var(--playlist-theme-link-hover);
}

html[data-playlist-custom] body.playlists-page :is(.playlists-intro h1,
  .playlist-module h2,
  .playlist-archiveHook h2,
  .playlist-support__header h2,
  .playlists-copy--lead,
  .playlist-detailCard__body h3,
  .playlist-turntableDeck__monitorTitle,
  .playlist-turntableQueue__title,
  .playlist-yngfMeta__title,
  .playlist-yngfBuilder__copy,
  .playlist-yngfBuilder__steps li,
  .playlist-yngfBuilder__count,
  .playlist-yngfBar__count,
  .playlist-supportCard__username,
  .playlist-supportModal__copy,
  .playlists-yngfHeaderMaker,
  .playlist-module__yngfPortraitName,
  .playlist-yngfInput__cancel,
  .playlist-yngfNoteLink,
  .playlist-yngfMeta__link,
  .playlist-harlemGateway__copy h3,
  .playlist-harlemGateway__copy>p){
  color:var(--playlist-surface-ink);
}

html[data-playlist-custom] body.playlists-page :is(.playlists-kicker,
  .playlist-module__eyebrow,
  .playlist-module__note,
  .playlists-copy--detail,
  .playlists-yngfHeaderStatus,
  .playlist-detailCard__subhead,
  .playlist-detailCard__copy,
  .playlist-turntableDeck__monitorEyebrow,
  .playlist-turntableDeck__monitorSide,
  .playlist-turntableControls__eyebrow,
  .playlist-turntableControls__volumeLabel,
  .playlist-turntableControls__volumeValue,
  .playlist-turntableQueue__label,
  .playlist-turntableQueue__eyebrow,
  .playlist-turntableQueue__artist,
  .playlist-turntableQueue__item--current .playlist-turntableQueue__eyebrow,
  .playlist-turntableQueue__item--current .playlist-turntableQueue__artist,
  .playlist-providerState,
  .playlist-playerShell__status,
  .playlist-playerShell__time,
  .playlist-support__copy,
  .playlist-support__label,
  .playlist-support__finePrint,
  .playlist-supportCard__meta,
  .playlist-supportForm__field,
  .playlist-supportForm__hint,
  .playlist-supportForm__field small,
  .playlist-supportForm__previewFallback,
  .playlist-archiveHook__meta,
  .playlist-yngfBuilder__helper,
  .playlist-yngfBuilder__total,
  .playlist-yngfBar__total,
  .playlist-yngfNote,
  .playlist-yngfDetected,
  .playlist-yngfKeepCover,
  .playlist-yngfMeta__state,
  .playlist-yngfMeta__artist,
  .playlist-yngfManual label,
  .playlist-yngfDetailsEdit label,
  .playlist-harlemGateway__progress,
  .playlist-coverButton__emptyIcon){
  color:var(--playlist-surface-muted);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-yngfInput__field,.playlist-supportForm input,.playlist-supportForm textarea,.playlist-yngfManual input,.playlist-yngfDetailsEdit input)::placeholder{
  color:var(--playlist-surface-muted);opacity:1;
}
html[data-playlist-custom] body.playlists-page .playlist-module__yngfPortraitName:empty::before{
  color:var(--playlist-surface-muted);opacity:1;
}

html[data-playlist-custom] body.playlists-page .playlist-turntableDeck__badge{
  background:var(--playlist-theme-control);color:var(--playlist-theme-control-muted);border-color:var(--playlist-theme-control-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-support__empty,
  .playlist-playerShell__timeSlash){
  color:var(--playlist-surface-muted);opacity:1;
}

html[data-playlist-custom] body.playlists-page .playlist-supportForm__footer{
  background:linear-gradient(180deg,transparent,var(--playlist-theme-shell) 22%,var(--playlist-theme-shell));border-color:var(--playlist-theme-shell-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-detailCard__coverWrap,
  .playlist-yngfMeta__art,
  .playlist-yngfCoverEdit__preview,
  .playlist-supportCard__avatar,
  .playlist-coverButton:not(.playlist-coverButton--empty)){
  background:var(--playlist-theme-recessed);border-color:var(--playlist-theme-recessed-edge);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-module__note,
  .playlist-scWrap,
  .playlist-yngfBuilder,
  .playlist-support__grid){
  border-color:var(--playlist-theme-shell-edge);
}

html[data-playlist-custom] body.playlists-page .playlist-yngfBuilder__steps li::before{
  background:var(--playlist-theme-shell-ink);
}

html[data-playlist-custom] body.playlists-page > .playlists-topRow .nav a{
  color:var(--playlist-theme-base-ink);
}

html[data-playlist-custom] body.playlists-page .playlists-intro{
  box-shadow:0 14px 34px var(--playlist-theme-shadow-soft);
}

html[data-playlist-custom] body.playlists-page .playlist-modeBar{
  box-shadow:0 4px 14px var(--playlist-theme-shadow-soft),inset 0 1px 0 var(--playlist-theme-menu-highlight);
}

html[data-playlist-custom] body.playlists-page .playlist-turntableControls__nowSpinning{
  box-shadow:0 10px 18px var(--playlist-theme-shadow-soft),inset 0 1px 0 var(--playlist-theme-raised-highlight);
}

html[data-playlist-custom] body.playlists-page .playlist-turntableDeck__monitor{
  box-shadow:0 12px 22px var(--playlist-theme-shadow-soft),inset 0 1px 0 var(--playlist-theme-raised-highlight);
}

html[data-playlist-custom] body.playlists-page .playlist-turntableControls__button{
  box-shadow:inset 0 1px 0 var(--playlist-theme-control-highlight);
}

html[data-playlist-custom] body.playlists-page .playlist-turntableQueue__card{
  box-shadow:0 10px 24px var(--playlist-theme-shadow-soft);
}

html[data-playlist-custom] body.playlists-page .playlist-turntableQueue__item--current .playlist-turntableQueue__card{
  box-shadow:0 16px 34px var(--playlist-theme-shadow);
}

html[data-playlist-custom] body.playlists-page .playlist-providerActions{
  box-shadow:0 9px 28px var(--playlist-theme-shadow-soft);
}

html[data-playlist-custom] body.playlists-page .playlist-supportModal__dialog{
  box-shadow:0 18px 50px var(--playlist-theme-shadow);
}

html[data-playlist-custom] body.playlists-page .playlist-yngfBuilder{
  box-shadow:0 10px 26px var(--playlist-theme-shadow-soft);
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableQueue__card--previous,
  .playlist-turntableQueue__card--upcoming){
  box-shadow:none;
}

html[data-playlist-custom] body.playlists-page button.playlist-turntableQueue__card:is(:hover,:focus-visible){
  border-color:var(--playlist-surface-boundary);
}

/* The expanded galaxy is an image surface shared by every theme. */
html[data-playlist-custom] body.playlists-page :is(.playlist-harlemGateway:is([data-galaxy-state=expanding],[data-galaxy-state=expanded],[data-galaxy-state=recoiling]) .playlist-harlemGateway__copy){
  --playlist-surface-ink:#f6f8ff;
  --playlist-surface-muted:#dce5ef;
  color:var(--playlist-surface-ink);
  background:var(--gateway-copy-backing,rgba(2,5,10,.86));
  border-color:transparent;
}

html[data-playlist-custom] body.playlists-page :is(.playlist-turntableControls__button,.playlist-controlShell button,.playlist-playerShell__button,.playlist-colorPanel button,.playlist-colorPanel input,.playlist-dockChoices button,.playlist-detailBack,.playlist-detailLinks a,.playlist-providerActions a,.playlist-providerActions button:not(.playlist-providerBadge),.playlist-support__button,.playlist-archiveHook__button,.playlist-yngfInput__field,.playlist-yngfInput__btn,.playlist-yngfManual input,.playlist-yngfDetailsEdit input,.playlist-yngfCoverEdit__pick,.playlist-yngfCoverTools label,.playlist-yngfCoverTools button,.playlist-yngfMeta__replaceBtn,.playlist-yngfMeta__clearBtn,.playlist-yngfBar__clearBtn,.playlist-yngfBuilder__clearBtn,.playlist-supportModal__close,.playlist-supportForm__field input,.playlist-supportForm__field select,.playlist-supportForm__field textarea,.playlist-supportForm__secondary,.playlist-module__yngfPortraitUpload,.playlists-yngfHeaderUpload,.playlist-coverButton--empty,.playlist-playerShell__button.is-playing,.playlist-playerShell__button.is-scrubbing,.playlist-turntableControls__button--play.is-playing,.playlist-turntableControls__button.is-scrubbing,.playlist-supportForm__submit,.playlist-yngfMeta__playBtn,.playlist-modeBar button,.playlist-dockToggle,.playlist-dockGrip,button.playlist-turntableQueue__card):focus-visible{
  outline:2px solid var(--playlist-surface-focus);outline-offset:2px;
}

html[data-playlist-custom] body.playlists-page :is(#playlistVolumeRange,
  .playlist-dockRange input){
  accent-color:var(--playlist-surface-ink);
}

/* Respect system contrast colors without changing geometry or media pixels. */
@media (forced-colors:active){
  html[data-playlist-custom] body.playlists-page{background:Canvas;color:CanvasText;}
  body.playlists-page :is(.playlist-playerShell,.playlist-modeBar,.playlist-colorPanel,.playlist-dockChoices){forced-color-adjust:auto;}
  body.playlists-page :is(button,a,input,select,textarea):focus-visible{outline-color:Highlight;}
}

html[data-playlist-custom] body.playlists-page > .playlists-topRow .nav a{opacity:1;}

/* Lazy supporter notes, creator summaries and their arrow pseudo-elements. */
html[data-playlist-custom] body.playlists-page :is(.playlist-supportThumb__tooltip,.playlist-supportNoteBubble,.playlist-yngfSummary__stat,.playlist-yngfSummary__tile){
  --playlist-surface-ink:var(--playlist-theme-raised-ink);
  --playlist-surface-muted:var(--playlist-theme-raised-muted);
  background:var(--playlist-theme-raised);color:var(--playlist-surface-ink);border-color:var(--playlist-theme-raised-edge);
}
html[data-playlist-custom] body.playlists-page .playlist-supportNoteBubble::after{background:var(--playlist-theme-raised);border-color:var(--playlist-theme-raised-edge);}
html[data-playlist-custom] body.playlists-page :is(.playlist-yngfSummary__label,.playlist-supportForm__noteLabel output){color:var(--playlist-surface-muted);}
html[data-playlist-custom] body.playlists-page :is(.playlist-yngfSummary__value,.playlist-supportForm__fieldError,.playlist-supportForm__hint.is-error){color:var(--playlist-surface-ink);}
html[data-playlist-custom] body.playlists-page .playlist-supportForm__previewAvatar{background:var(--playlist-theme-recessed);border-color:var(--playlist-theme-recessed-edge);}
html[data-playlist-custom] body.playlists-page .playlist-support__overflowToggle{background:var(--playlist-theme-control);color:var(--playlist-theme-control-ink);border-color:var(--playlist-theme-control-boundary);}
html[data-playlist-custom] body.playlists-page .playlist-support__overflowToggle:is(:hover,:focus-visible){background:var(--playlist-theme-selected);color:var(--playlist-theme-selected-ink);}
html[data-playlist-custom] body.playlists-page :is(.playlist-support__overflowToggle,.playlist-supportNoteTrigger):focus-visible{outline:2px solid var(--playlist-theme-focus);outline-offset:3px;}
html[data-playlist-custom] body.playlists-page .playlist-supportNoteBubble{box-shadow:0 8px 22px var(--playlist-theme-shadow);}
html[data-playlist-custom] body.playlists-page .playlist-supportThumb__tooltip{box-shadow:0 10px 24px var(--playlist-theme-shadow);}

/* Paint controls receive a themed face; their actual paint swatches/output keep
   --paint-color, exactly as the independent deck/VJ palettes keep their values. */
html[data-playlist-custom] body.playlists-page :is(.playlist-paintDock__launcher,.playlist-paintDock__status){background:var(--playlist-theme-control);color:var(--playlist-theme-control-ink);border-color:var(--playlist-theme-control-boundary);}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__wheel::before{background:radial-gradient(circle at 34% 28%,var(--playlist-theme-raised-top),var(--playlist-theme-raised) 44%,var(--playlist-theme-shell) 72%);border-color:var(--playlist-theme-raised-edge);box-shadow:0 16px 30px var(--playlist-theme-shadow),inset 0 1px 0 var(--playlist-theme-raised-highlight);}
@media(max-width:720px){html[data-playlist-custom] body.playlists-page .playlist-paintDock__wheel{background:var(--playlist-theme-raised);border-color:var(--playlist-theme-raised-edge);}}
html[data-playlist-custom] body.playlists-page .playlist-yngfSummary__empty{color:var(--playlist-surface-muted);}
html[data-playlist-custom] body.playlists-page .playlist-goHomeLink__label{color:var(--playlist-theme-base-ink);}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__action{background:var(--playlist-theme-control);color:var(--playlist-theme-control-ink);border-color:var(--playlist-theme-control-boundary);transition-property:transform,opacity;}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__action:is(.is-active,:hover,:focus-visible){background:var(--playlist-theme-selected);color:var(--playlist-theme-selected-ink);}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__action:focus-visible{outline:2px solid var(--playlist-theme-focus);outline-offset:2px;}
html[data-playlist-custom] body.playlists-page :is(.playlist-paintGuidePanel,.playlist-paintDock__sizeControl){color:var(--playlist-theme-base-ink);}
html[data-playlist-custom] body.playlists-page :is(.playlist-supportForm__previewAvatar,.playlist-supportCard__avatar){
  --playlist-surface-ink:var(--playlist-theme-recessed-ink);
  --playlist-surface-muted:var(--playlist-theme-recessed-muted);
  color:var(--playlist-surface-ink);
}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__sizeControl{color:var(--playlist-theme-raised-ink);}

html[data-playlist-custom]{background:var(--playlist-theme-base);}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__launcher{box-shadow:0 4px 14px var(--playlist-theme-shadow-soft),inset 0 1px 0 var(--playlist-theme-control-highlight);transition-property:transform,opacity;}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__action{box-shadow:0 8px 18px var(--playlist-theme-shadow-soft);}
html[data-playlist-custom] body.playlists-page .playlist-paintDock__status{box-shadow:0 8px 18px var(--playlist-theme-shadow-soft);}
