/* ── Pink Radio Podcast Archive — scoped to .pcast-masthead and .pcast ── */

.post-type-archive-podcast .dhrk-ajax-content,
.post-type-archive-podcast .qw-content-wrapper { background: #0d0d0d; }

.post-type-archive-podcast #qwFixedHeader { overflow: visible; }
.post-type-archive-podcast #qwFixedHeader::after {
    content: '';
    position: absolute; bottom: -2px; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, #e8005a 0%, rgba(232,0,90,0.3) 50%, transparent 100%);
    z-index: 1; pointer-events: none;
}

/* ── VARIABLES ── */
.pcast-masthead, .pcast {
    --pcast-teal:   #0891b2;
    --pcast-teal-d: rgba(8,145,178,0.11);
    --pcast-pink:   #e8005a;
    --pcast-bg:     #0d0d0d;
    --pcast-s1:     #141414;
    --pcast-s2:     #1c1c1c;
    --pcast-border: rgba(255,255,255,0.07);
    --pcast-bh:     rgba(255,255,255,0.14);
    --pcast-text:   #f0f0f0;
    --pcast-muted:  #888;
    --pcast-dim:    #555;
}

/* ── MASTHEAD — ghost top-right, title lower-left (mirrors editorial) ── */
.pcast-masthead {
    position: relative;
    width: 100%;
    padding: 5.5rem 0 3.5rem;
    background: linear-gradient(115deg, rgba(8,145,178,0.10) 0%, rgba(8,145,178,0.03) 42%, transparent 66%);
    border-bottom: 1px solid var(--pcast-border);
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
}
.pcast-masthead::after {
    content: 'LISTEN';
    position: absolute;
    right: 1%; top: 50%;
    transform: translateY(-65%);
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(140px, 18vw, 230px);
    letter-spacing: 12px;
    color: transparent;
    -webkit-text-stroke: 1px rgba(255,255,255,0.055);
    line-height: 1; pointer-events: none; user-select: none; white-space: nowrap;
}
.pcast-masthead__inner {
    max-width: 1180px;
    margin: 0 2.5rem auto;
    padding: 0 2rem;
    position: relative; z-index: 1;
}
.pcast-masthead__eyebrow { display:flex; align-items:center; gap:8px; margin-bottom:0.5rem; }
.pcast-masthead__label {
    font-family: 'DM Sans', sans-serif; font-size: 10px; font-weight: 500;
    letter-spacing: 3px; text-transform: uppercase; color: var(--pcast-teal);
}
.pcast-masthead__dot { width:3px; height:3px; border-radius:50%; background:var(--pcast-dim); flex-shrink:0; }
.pcast-count { font-size:11px; color:var(--pcast-dim); font-weight:300; }
.post-type-archive-podcast .pcast-masthead__title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(90px, 13vw, 170px);
    letter-spacing: 8px; line-height: 0.88; margin: 0 0 0.9rem;
    background: linear-gradient(95deg, #ffffff 30%, var(--pcast-teal) 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.pcast-masthead__sub { font-size:13px; color:var(--pcast-muted); font-weight:300; margin:0; }

/* ── MAIN CONTAINER ── */
.pcast {
    font-family: 'DM Sans', sans-serif;
    background: var(--pcast-bg); color: var(--pcast-text);
    padding: 0 2rem 5rem;
    max-width: 1180px; margin: 0 auto;
    -webkit-font-smoothing: antialiased;
}

/* ── SHOW STRIP ── */
.pcast-show-strip {
    display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none;
    padding: 1.5rem 0 1rem;
    border-bottom: 1px solid var(--pcast-border);
    margin-bottom: 1.25rem;
}
.pcast-show-strip::-webkit-scrollbar { display: none; }
.pcast-show-pill {
    background: rgba(255,255,255,0.04);
    display: flex; flex-direction: column; align-items: center; gap: 7px;
    padding: 0.6rem 0.5rem; cursor: pointer; flex-shrink: 0;
    border-radius: 8px; transition: background 0.15s;
    border: 1px solid transparent;
    width: 88px; /* fixed — prevents name from stretching pill */
}
.pcast-show-pill:hover { background: rgba(var(--pcast-pink), 0.3); border-color: var(--pcast-pink); }
.pcast-show-pill.active { background: var(--pcast-teal-d); border-color: rgba(8,145,178,0.3); }

/* Image wrapper clips white artwork padding */
.pcast-pill-thumb-wrap {
    width: 56px; height: 56px; border-radius: 10px;
    background: var(--pcast-s2); overflow: hidden; flex-shrink: 0;
}
.pcast-show-pill img {
    width: 100%; height: 100%; object-fit: cover; display: block;
}
.pcast-pill-all {
    width: 56px; height: 56px; border-radius: 10px;
    background: var(--pcast-s2); border: 1px solid var(--pcast-border);
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.pcast-pill-all svg { width: 20px; height: 20px; stroke: var(--pcast-dim); fill: none; }
.pcast-show-pill.active .pcast-pill-all svg { stroke: var(--pcast-teal); }
.pcast-show-pill-name {
    font-family: 'DM Sans', sans-serif; font-size: 10px; font-weight: 400;
    color: var(--pcast-muted); text-align: center;
    width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.pcast-show-pill.active .pcast-show-pill-name { color: var(--pcast-teal); }

/* ── CONTROLS ROW ── */
.pcast-controls-row {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 1.5rem;
}
.pcast-results {
    font-family: 'DM Sans', sans-serif; font-size: 12px; color: var(--pcast-dim);
}
.pcast-results span { color: var(--pcast-muted); }
.pcast-view-btns { display: flex; gap: 4px; }
.pcast-vbtn {
    width: 34px; height: 34px; border-radius: 5px;
    border: 1px solid var(--pcast-border); background: transparent; color: var(--pcast-dim);
    cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.15s;
}
.pcast-vbtn svg { width: 14px; height: 14px; stroke: currentColor; fill: none; }
.pcast-vbtn:hover { border-color: var(--pcast-bh); color: var(--pcast-muted); }
.pcast-vbtn.active { border-color: var(--pcast-teal); color: var(--pcast-teal); background: var(--pcast-teal-d); }

/* ── FEATURED EPISODE ── */
.pcast-featured {
    display: flex; align-items: stretch;
    background: var(--pcast-s1); border-radius: 10px;
    overflow: hidden; margin-bottom: 12px;
    text-decoration: none; color: inherit; min-height: 300px;
    transition: background 0.2s; animation: pcastFadeUp 0.4s ease both;
}
.pcast-featured:hover { background: var(--pcast-s2); }
.pcast-featured:hover .pcast-fep-img { transform: scale(1.04); }
.pcast-fep-art { width: 300px; flex-shrink: 0; overflow: hidden; background: var(--pcast-s2); }
.pcast-fep-img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s; }
.pcast-fep-body {
    flex:1; padding:2.5rem;
    display:flex; flex-direction:column; justify-content:center;
    border-left: 1px solid var(--pcast-border);
}
.pcast-fep-tag {
    font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 600;
    letter-spacing: 0.2px; color: var(--pcast-teal);
    margin-bottom: 0.9rem; display: flex; align-items: center; gap: 10px;
}
.pcast-fep-tag::before { content:''; display:inline-block; width:16px; height:1px; background:var(--pcast-teal); }
.pcast-fep-body h2 {
    font-family: 'Bebas Neue', sans-serif; font-size: 34px; letter-spacing: 1px;
    line-height: 1.05; color: var(--pcast-text); margin: 0 0 0.85rem;
}
.pcast-fep-meta {
    font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 300;
    color: var(--pcast-dim); margin-bottom: 1.1rem; display: flex; gap: 14px;
}
.pcast-fep-desc {
    font-size: 14px; line-height: 1.7; color: var(--pcast-muted); font-weight: 300;
    margin-bottom: 1.75rem;
    display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.pcast-play-btn {
    display: inline-flex; align-items: center; gap: 10px;
    background: var(--pcast-teal); border: none; padding: 11px 22px; border-radius: 4px;
    font-family: 'Bebas Neue', sans-serif; font-size: 14px; letter-spacing: 2px;
    color: #fff; cursor: pointer; width: fit-content; text-decoration: none;
    transition: opacity 0.2s;
}
.pcast-play-btn:hover { opacity: 0.85; }
.pcast-play-btn svg { width: 13px; height: 13px; fill: #fff; flex-shrink: 0; }

/* ── GRID ── */
.pcast-grid {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 12px; margin-bottom: 12px;
}

/* ── EPISODE CARD ── */
.pcast-card {
    background: var(--pcast-s1); border-radius: 8px;
    border: 1px solid var(--pcast-border); overflow: hidden;
    text-decoration: none; color: inherit;
    display: flex; flex-direction: column;
    transition: border-color 0.2s, transform 0.2s;
    animation: pcastFadeUp 0.4s ease both;
}
.pcast-card:hover { border-color: rgba(8,145,178,0.35); transform: translateY(-3px); }
.pcast-card:hover .pcast-ec-img { transform: scale(1.05); }

.pcast-ec-art { position:relative; aspect-ratio:1; overflow:hidden; background:var(--pcast-s2); flex-shrink:0; }
.pcast-ec-img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.4s; }

/* Colour tint cycles teal → violet → pink → amber */
.pcast-ec-tint {
    position:absolute; inset:0;
    opacity: 0.38; mix-blend-mode: color; pointer-events:none; transition: opacity 0.3s;
}
.pcast-card:hover .pcast-ec-tint { opacity: 0.2; }
.pcast-c1 .pcast-ec-tint { background: #0891b2; }
.pcast-c2 .pcast-ec-tint { background: #7c3aed; }
.pcast-c3 .pcast-ec-tint { background: #e8005a; }
.pcast-c4 .pcast-ec-tint { background: #d97706; }

.pcast-ec-overlay {
    position:absolute; inset:0; background:rgba(0,0,0,0);
    display:flex; align-items:center; justify-content:center; transition:background 0.2s;
}
.pcast-card:hover .pcast-ec-overlay { background: rgba(0,0,0,0.45); }
.pcast-ec-play {
    width:50px; height:50px; border-radius:50%;
    background:rgba(255,255,255,0.92); display:flex; align-items:center; justify-content:center;
    opacity:0; transform:translateY(8px); transition:opacity 0.25s, transform 0.25s;
}
.pcast-card:hover .pcast-ec-play { opacity:1; transform:translateY(0); }
.pcast-ec-play svg { width:15px; height:15px; fill:#0d0d0d; margin-left:2px; }

.pcast-ec-body { padding:0.85rem 1rem 1rem; flex:1; display:flex; flex-direction:column; gap:0.4rem; }
.pcast-ec-top { display:flex; align-items:center; justify-content:space-between; gap:6px; }
.pcast-ec-show {
    font-family:'DM Sans',sans-serif; font-size:11px; font-weight:600;
    color:var(--pcast-teal); letter-spacing:0.2px;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.pcast-ec-date {
    font-family:'DM Sans',sans-serif; font-size:11px; font-weight:300;
    color:var(--pcast-dim); white-space:nowrap; flex-shrink:0;
}
.pcast-card h3 {
    font-family:'Bebas Neue',sans-serif; font-size:19px; letter-spacing:0.5px;
    line-height:1.15; color:var(--pcast-text);
    display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.pcast-ec-artist { font-family:'DM Sans',sans-serif; font-size:11px; font-weight:300; color:var(--pcast-muted); margin-top:auto; }

/* ── LIST VIEW ── */
.pcast-list { display:flex; flex-direction:column; gap:2px; }
.pcast-list-item {
    display:grid; grid-template-columns:80px 1fr auto;
    background:var(--pcast-s1); overflow:hidden;
    text-decoration:none; color:inherit; transition:background 0.15s; align-items:center;
}
.pcast-list-item:hover { background: var(--pcast-s2); }
.pcast-list-item:hover .pcast-li-img { transform: scale(1.06); }
.pcast-li-art { overflow:hidden; background:var(--pcast-s2); flex-shrink:0; }
.pcast-li-img { width:80px; height:80px; object-fit:cover; display:block; transition:transform 0.3s; }
.pcast-li-body { padding:1rem 1.25rem; border-left:2px solid var(--pcast-teal); }
.pcast-li-show { font-family:'DM Sans',sans-serif; font-size:11px; font-weight:600; color:var(--pcast-teal); margin-bottom:2px; }
.pcast-li-title { font-family:'Bebas Neue',sans-serif; font-size:18px; letter-spacing:0.5px; line-height:1.1; color:var(--pcast-text); margin-bottom:2px; }
.pcast-li-meta { font-family:'DM Sans',sans-serif; font-size:11px; font-weight:300; color:var(--pcast-dim); }
.pcast-li-action { padding:0 1.25rem; }
.pcast-li-play {
    width:36px; height:36px; border-radius:50%;
    border:1px solid var(--pcast-border); background:transparent;
    display:flex; align-items:center; justify-content:center; transition:all 0.2s;
}
.pcast-list-item:hover .pcast-li-play { background:var(--pcast-teal); border-color:var(--pcast-teal); }
.pcast-li-play svg { width:12px; height:12px; fill:var(--pcast-muted); margin-left:1px; }
.pcast-list-item:hover .pcast-li-play svg { fill:#fff; }

/* ── EMPTY ── */
.pcast-empty { grid-column:1/-1; padding:4rem 2rem; text-align:center; color:var(--pcast-dim); }
.pcast-empty p { font-size:14px; margin:8px 0 0; }

/* ── PAGINATION ── */
.pcast-pagination { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:2.5rem; }
.pcast-pbtn {
    height:36px; min-width:36px; padding:0 10px;
    border:1px solid var(--pcast-border); background:transparent; color:var(--pcast-muted);
    font-family:'DM Sans',sans-serif; font-size:13px;
    cursor:pointer; border-radius:4px;
    display:flex; align-items:center; justify-content:center; transition:all 0.15s;
}
.pcast-pbtn:hover:not(:disabled) { border-color:var(--pcast-bh); color:var(--pcast-text); }
.pcast-pbtn.active { background:var(--pcast-teal); border-color:var(--pcast-teal); color:#fff; }
.pcast-pbtn:disabled { opacity:0.3; cursor:default; }
.pcast-pbtn svg { width:13px; height:13px; stroke:currentColor; fill:none; }
.pcast-pdots { color:var(--pcast-dim); font-size:13px; padding:0 4px; }

/* ── ANIMATION ── */
@keyframes pcastFadeUp {
    from { opacity:0; transform:translateY(12px); }
    to   { opacity:1; transform:translateY(0); }
}

/* ── RESPONSIVE ── */
@media (max-width: 960px) {
    .pcast-grid { grid-template-columns: repeat(3,1fr); }
    .pcast-featured { flex-direction: column; }
    .pcast-fep-art { width: 100%; height: 240px; }
    .pcast-fep-body { border-left: none; border-top: 1px solid var(--pcast-border); }
}
@media (max-width: 600px) {
    .pcast { padding: 0 1rem 4rem; }
    .pcast-masthead { padding: 3rem 0 2.5rem; }
    .pcast-masthead__inner { padding: 0 1rem; }
    .pcast-masthead::after { font-size: 110px; }
    .pcast-grid { grid-template-columns: repeat(2,1fr); gap: 8px; }
}
