:root {
    --rdc-bg: #05070b;
    --rdc-panel: #0d121a;
    --rdc-panel-2: #111722;
    --rdc-border: rgba(255,255,255,0.12);
    --rdc-purple: #a020f0;
    --rdc-green: #39d100;
    --rdc-yellow: #ffc800;
    --rdc-red: #ff2020;
    --rdc-text: #f5f5f5;
    --rdc-muted: #a8b0bd;
}

body.rdc-show-on-demand-page #sidebar {
    display: none !important;
}

body.rdc-show-on-demand-page #maincontent .row > .col-lg-8.col-md-8 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}

body.rdc-show-on-demand-page #maincontent > .container,
body.rdc-show-on-demand-page #maincontent > .container-fluid {
    max-width: 1500px;
}

body.rdc-show-on-demand-page #maincontent > .container > h1,
body.rdc-show-on-demand-page #maincontent article > h1:first-child {
    color: var(--rdc-text) !important;
}

.rdc-show-on-demand {
    position: relative;
    width: 100%;
    margin: 0 0 48px;
    padding: 24px;
    color: var(--rdc-text);
    background: var(--rdc-bg);
    border: 1px solid var(--rdc-border);
    border-radius: 18px;
    box-shadow: 0 18px 48px rgba(0,0,0,0.42);
}

.rdc-show-on-demand *,
.rdc-show-on-demand *::before,
.rdc-show-on-demand *::after {
    box-sizing: border-box;
}

.rdc-show-on-demand .rdc-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* RDC Shows UI 2.0.1: focus-safe skip link and compact player controls. */
.rdc-show-on-demand .rdc-portal-skip-link:not(:focus):not(:focus-visible) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.rdc-show-on-demand .rdc-portal-skip-link:focus,
.rdc-show-on-demand .rdc-portal-skip-link:focus-visible {
    position: absolute;
    z-index: 100;
    top: 8px;
    left: 8px;
    width: auto;
    height: auto;
    padding: 9px 13px;
    margin: 0;
    overflow: visible;
    clip: auto;
    clip-path: none;
    white-space: normal;
    color: #05070b;
    background: var(--rdc-yellow);
    border-radius: 7px;
    font-weight: 900;
}

body.rdc-show-on-demand-page .entry-header > .entry-title,
body.rdc-show-on-demand-page .page-header > .page-title,
body.rdc-show-on-demand-page #maincontent .post-title,
body.rdc-show-on-demand-page #maincontent .single-post-title,
body.rdc-show-on-demand-page #maincontent .entry-title,
body.rdc-show-on-demand-page #maincontent .page-title,
body.rdc-show-on-demand-page #maincontent .row > .col-lg-8.col-md-8 > h1:first-of-type {
    display: none !important;
}

.rdc-sod-header {
    margin-bottom: 20px;
    padding: 18px 20px;
    background: linear-gradient(145deg, var(--rdc-panel), var(--rdc-panel-2));
    border: 1px solid var(--rdc-border);
    border-radius: 14px;
}

.rdc-sod-header .rdc-public-kicker {
    display: block;
    margin-bottom: 5px;
    color: var(--rdc-purple);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

body .rdc-show-on-demand .rdc-sod-header h1 {
    margin: 0 0 6px;
    color: var(--rdc-text) !important;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 950;
    line-height: 1.05;
    text-shadow: none !important;
}

.rdc-sod-header p {
    margin: 0;
    color: var(--rdc-muted);
}

.rdc-sod-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 440px);
    gap: 20px;
    align-items: start;
}

.rdc-sod-browser,
.rdc-winamp-card {
    min-width: 0;
    padding: 18px;
    background: linear-gradient(145deg, var(--rdc-panel), var(--rdc-panel-2));
    border: 1px solid var(--rdc-border);
    border-radius: 14px;
    box-shadow: 0 12px 32px rgba(0,0,0,0.35);
}

body .rdc-show-on-demand .rdc-sod-browser > h2 {
    margin: 0 0 14px;
    color: var(--rdc-purple) !important;
    font-size: 15px;
    font-weight: 950;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-shadow: none !important;
}

.rdc-sod-empty {
    display: grid;
    gap: 5px;
    padding: 22px;
    color: var(--rdc-muted);
    background: #111722;
    border: 1px dashed rgba(255,255,255,0.2);
    border-radius: 10px;
}

.rdc-sod-empty strong {
    color: var(--rdc-text);
}

.rdc-sod-tree {
    display: grid;
    gap: 10px;
}

.rdc-sod-folder {
    overflow: hidden;
    background: #0a0e15;
    border: 1px solid var(--rdc-border);
    border-radius: 10px;
}

.rdc-sod-folder summary {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr) auto;
    gap: 9px;
    align-items: center;
    padding: 12px 14px;
    color: var(--rdc-text);
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.rdc-sod-folder summary::-webkit-details-marker {
    display: none;
}

.rdc-sod-folder summary:hover {
    background: rgba(160,32,240,0.12);
}

.rdc-sod-folder summary:focus-visible,
.rdc-sod-play:focus-visible {
    outline: 3px solid var(--rdc-yellow);
    outline-offset: -3px;
}

.rdc-sod-folder summary > span:last-child {
    color: var(--rdc-muted);
    font-size: 12px;
    white-space: nowrap;
}

.rdc-sod-folder-icon {
    color: var(--rdc-purple);
    font-size: 17px;
    transform-origin: center;
    transition: transform 160ms ease;
}

.rdc-sod-folder[open] > summary .rdc-sod-folder-icon {
    transform: rotate(90deg);
}

.rdc-sod-folder-children {
    display: grid;
    gap: 8px;
    padding: 0 10px 10px 28px;
}

.rdc-sod-show-folder {
    background: #111722;
}

.rdc-sod-recordings {
    display: grid;
    gap: 1px;
    margin: 0;
    padding: 0 10px 10px 28px;
    list-style: none;
}

.rdc-sod-recordings li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 10px 12px;
    background: #080b10;
    border-bottom: 1px solid var(--rdc-border);
}

.rdc-sod-recordings li:first-child {
    border-radius: 8px 8px 0 0;
}

.rdc-sod-recordings li:last-child {
    border-bottom: 0;
    border-radius: 0 0 8px 8px;
}

.rdc-sod-recordings li.is-current {
    background: rgba(160,32,240,0.16);
    box-shadow: inset 3px 0 var(--rdc-purple);
}

.rdc-sod-file-details {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.rdc-sod-file-details strong {
    color: var(--rdc-text);
    font-size: 14px;
}

.rdc-sod-file-details span {
    color: var(--rdc-muted);
    font-size: 12px;
}

.rdc-sod-play {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    padding: 7px 10px;
    color: #fff;
    background: var(--rdc-purple);
    border: 0;
    border-radius: 7px;
    font-weight: 900;
    cursor: pointer;
}

.rdc-sod-play:hover {
    filter: brightness(1.14);
}

.rdc-winamp-card {
    position: sticky;
    top: 18px;
}

.rdc-winamp-stage {
    width: 100%;
    min-height: 116px;
    overflow: hidden;
}

.rdc-winamp-shell {
    position: relative;
    width: 275px;
    height: 116px;
    color: #cfd3d7;
    /* RDC 2.0.3: locked classic Winamp blue-purple casing. */
    background:
        linear-gradient(90deg, rgba(255,255,255,0.055) 1px, transparent 1px) 0 0 / 3px 3px,
        linear-gradient(#494c7a 0%, #252849 52%, #3a3d68 100%);
    border: 2px ridge #9397bb;
    box-shadow:
        inset 0 0 0 1px #101126,
        0 2px 9px rgba(0,0,0,0.65);
    font-family: "Courier New", monospace;
    font-size: 7px;
    image-rendering: pixelated;
    transform-origin: top left;
}

.rdc-wa-titlebar {
    position: absolute;
    top: 2px;
    left: 3px;
    display: flex;
    width: 265px;
    height: 10px;
    align-items: center;
    padding: 0 3px;
    color: #e9e9ee;
    background: linear-gradient(90deg, #151833, #676d9c 48%, #1b1e3e);
    border-top: 1px solid #a8abca;
    border-bottom: 1px solid #0b0c20;
    font-family: Arial, sans-serif;
    font-size: 7px;
    font-weight: 900;
    letter-spacing: 0.7px;
    line-height: 8px;
}

.rdc-wa-bolt {
    margin-right: 4px;
    color: #ffc800;
}

.rdc-wa-titlebar-text {
    flex: 1;
    text-align: center;
}

.rdc-wa-window-buttons {
    color: #c7cad4;
    letter-spacing: 1px;
}

.rdc-wa-clock-panel {
    position: absolute;
    top: 17px;
    left: 8px;
    width: 96px;
    height: 43px;
    background: #010500;
    border: 2px inset #4b4e5b;
}

.rdc-wa-time {
    position: absolute;
    top: 1px;
    left: 2px;
    width: 48px;
    height: 22px;
    padding: 0;
    color: #00f400;
    background: transparent;
    border: 0;
    font-family: "Courier New", monospace;
    font-size: 19px;
    letter-spacing: 1px;
    line-height: 22px;
    text-align: right;
    cursor: pointer;
}

.rdc-wa-spectrum {
    position: absolute;
    left: 1px;
    bottom: 1px;
    width: 92px;
    height: 18px;
    background: #000;
}

.rdc-wa-information {
    position: absolute;
    top: 17px;
    left: 109px;
    width: 159px;
    height: 43px;
}

.rdc-wa-track-window {
    position: relative;
    width: 157px;
    height: 14px;
    overflow: hidden;
    color: #00f400;
    background: #020402;
    border: 2px inset #4b4e5b;
    font-size: 9px;
    line-height: 10px;
    white-space: nowrap;
}

.rdc-wa-track-window span {
    position: absolute;
    left: 3px;
    top: 1px;
    display: inline-block;
    min-width: max-content;
}

.rdc-wa-track-window.is-scrolling span {
    animation: rdc-wa-marquee 12s linear infinite;
}

@keyframes rdc-wa-marquee {
    0%, 12% { transform: translateX(0); }
    88%, 100% { transform: translateX(calc(-100% + 150px)); }
}

.rdc-wa-format-row {
    display: flex;
    width: 157px;
    height: 11px;
    align-items: center;
    gap: 3px;
    padding: 1px 2px 0;
    color: #a3a5ab;
    background: #050609;
}

.rdc-wa-format-row strong {
    color: #00f400;
    font-size: 8px;
}

.rdc-wa-mono {
    margin-left: auto;
    color: #5d605f;
}

.rdc-wa-stereo {
    color: #00f400 !important;
}

.rdc-wa-mini-controls {
    display: grid;
    grid-template-columns: 64px 46px 20px 20px;
    gap: 2px;
    align-items: center;
    margin-top: 2px;
}

.rdc-wa-mini-controls label {
    display: block;
    height: 9px;
}

.rdc-wa-mini-controls input,
.rdc-wa-seek {
    width: 100%;
    height: 8px;
    margin: 0;
    padding: 0;
    accent-color: #d5b73f;
    cursor: pointer;
}

/* Keep theme-level form styling from enlarging the Winamp slider handles. */
.rdc-winamp-shell input[type="range"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: block;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.rdc-winamp-shell input[type="range"]::-moz-range-track {
    height: 2px !important;
    background: #11131b !important;
    border: 1px inset #6d707b !important;
    border-radius: 0 !important;
}

.rdc-winamp-shell input[type="range"]::-moz-range-progress {
    height: 2px !important;
    background: #d0b23c !important;
    border: 0 !important;
    border-radius: 0 !important;
}

.rdc-winamp-shell input[type="range"]::-moz-range-thumb {
    width: 6px !important;
    height: 8px !important;
    background: #c7ccd1 !important;
    border: 1px outset #eceff1 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.rdc-winamp-shell input[type="range"]::-webkit-slider-runnable-track {
    height: 4px !important;
    background: #11131b !important;
    border: 1px inset #6d707b !important;
    border-radius: 0 !important;
}

.rdc-winamp-shell input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    width: 7px !important;
    height: 9px !important;
    margin-top: -4px !important;
    background: #c7ccd1 !important;
    border: 1px outset #eceff1 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.rdc-wa-mini-controls button {
    height: 10px;
    padding: 0;
    color: #99f89a;
    background: #33375e;
    border: 1px outset #9699b2;
    font-size: 6px;
    line-height: 8px;
    cursor: pointer;
}

.rdc-wa-mini-controls button[aria-pressed="true"] {
    color: #00ff00;
    border-style: inset;
}

.rdc-wa-seek-wrap {
    position: absolute;
    top: 65px;
    left: 15px;
    width: 244px;
    height: 11px;
    padding: 1px 3px;
    background: #0a0b12;
    border: 1px inset #676a76;
}

.rdc-wa-seek {
    height: 7px;
}

.rdc-wa-transport {
    position: absolute;
    left: 17px;
    top: 83px;
    display: grid;
    grid-template-columns: repeat(6, 22px);
    gap: 2px;
}

.rdc-wa-transport button {
    position: relative;
    width: 22px;
    height: 16px;
    padding: 0;
    color: #263447;
    background: linear-gradient(#e1e5e7, #828a94);
    border: 2px outset #cbd0d3;
    font-family: Arial, sans-serif;
    font-size: 9px;
    font-weight: 900;
    line-height: 11px;
    cursor: pointer;
    text-shadow: 0 1px #fff;
}

.rdc-wa-transport button:active {
    border-style: inset;
}

.rdc-wa-modes {
    position: absolute;
    left: 161px;
    top: 87px;
    display: flex;
    gap: 3px;
}

.rdc-wa-modes button {
    height: 10px;
    padding: 0 3px;
    color: #a9b0b7;
    background: #33375e;
    border: 1px outset #9699b2;
    font-size: 6px;
    line-height: 8px;
    cursor: pointer;
}

.rdc-wa-modes button[aria-pressed="true"] {
    color: #00f400;
    border-style: inset;
}

.rdc-wa-mute {
    position: absolute;
    right: 11px;
    top: 84px;
    width: 15px;
    height: 18px;
    padding: 0;
    color: #d6b72e;
    background: transparent;
    border: 0;
    font-size: 16px;
    font-weight: 900;
    line-height: 18px;
    cursor: pointer;
    text-shadow: 1px 1px #000;
}

.rdc-wa-mute[aria-pressed="true"] {
    color: #ff2020;
}

.rdc-winamp-shell button:focus-visible,
.rdc-winamp-shell input:focus-visible {
    outline: 2px solid #fff500;
    outline-offset: 1px;
}

.rdc-winamp-current {
    min-height: 42px;
    margin: 14px 0 0;
    padding: 10px 12px;
    color: var(--rdc-text);
    background: #080b10;
    border: 1px solid var(--rdc-border);
    border-radius: 8px;
    font-size: 13px;
}

@media (max-width: 1000px) {
    .rdc-sod-layout {
        grid-template-columns: 1fr;
    }

    .rdc-winamp-card {
        position: static;
        grid-row: 1;
    }

    .rdc-winamp-stage {
        max-width: 440px;
        margin: 0 auto;
    }
}

@media (max-width: 600px) {
    .rdc-show-on-demand {
        padding: 14px;
        border-radius: 14px;
    }

    .rdc-sod-header,
    .rdc-sod-browser,
    .rdc-winamp-card {
        padding: 14px;
    }

    .rdc-sod-folder-children,
    .rdc-sod-recordings {
        padding-left: 10px;
    }

    .rdc-sod-recordings li {
        grid-template-columns: 1fr;
    }

    .rdc-sod-play {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rdc-sod-folder-icon {
        transition: none;
    }

    .rdc-wa-track-window.is-scrolling span {
        animation: none;
    }
}

@media (forced-colors: active) {
    .rdc-show-on-demand,
    .rdc-sod-header,
    .rdc-sod-browser,
    .rdc-winamp-card,
    .rdc-sod-folder,
    .rdc-sod-recordings li {
        border: 2px solid CanvasText;
    }

    .rdc-sod-play,
    .rdc-sod-folder summary,
    .rdc-winamp-shell button,
    .rdc-winamp-shell input {
        forced-color-adjust: auto;
    }

    .rdc-winamp-shell,
    .rdc-wa-clock-panel,
    .rdc-wa-track-window,
    .rdc-wa-format-row,
    .rdc-wa-spectrum {
        forced-color-adjust: none;
    }
}
