.pcfe-show{
    --pcfe-surface:rgba(8,10,14,.82);
    --pcfe-text:#fff;
    --pcfe-muted:rgba(255,255,255,.68);
    --pcfe-border:rgba(255,255,255,.12);
    --pcfe-shadow:0 14px 36px rgba(0,0,0,.28);
    --pcfe-shadow-hover:0 22px 54px rgba(0,0,0,.42);
    --pcfe-radius:18px;
    --pcfe-accent:#77154A;
    width:100%;
    color:var(--pcfe-text);
}

.pcfe-episode-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:30px;
}

.pcfe-episode{
    min-width:0;
    overflow:hidden;
    border:1px solid var(--pcfe-border);
    border-radius:var(--pcfe-radius);
    background:var(--pcfe-surface);
    box-shadow:var(--pcfe-shadow);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.pcfe-episode:hover{
    transform:translateY(-4px);
    border-color:rgba(255,255,255,.22);
    box-shadow:var(--pcfe-shadow-hover);
}

.pcfe-episode-play{
    display:block;
    width:100%;
    padding:0;
    border:0;
    background:transparent;
    cursor:pointer;
    text-align:left;
}

.pcfe-episode-play:focus-visible{
    outline:3px solid var(--pcfe-accent);
    outline-offset:-3px;
}

.pcfe-episode-image-wrap{
    position:relative;
    display:block;
    aspect-ratio:16/9;
    overflow:hidden;
    background:#111;
}

.pcfe-episode-image{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}

.pcfe-image-shade{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.5) 100%);
    transition:background .25s ease;
}

.pcfe-episode-play:hover .pcfe-episode-image,
.pcfe-episode-play:focus-visible .pcfe-episode-image{
    transform:scale(1.045);
}

.pcfe-episode-play:hover .pcfe-image-shade,
.pcfe-episode-play:focus-visible .pcfe-image-shade{
    background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.6));
}

.pcfe-play-icon{
    position:absolute;
    left:50%;
    top:50%;
    width:70px;
    height:50px;
    border-radius:15px;
    background:var(--pcfe-accent);
    box-shadow:0 10px 28px rgba(0,0,0,.34);
    transform:translate(-50%,-50%);
    transition:transform .22s ease,filter .22s ease;
}

.pcfe-episode-play:hover .pcfe-play-icon,
.pcfe-episode-play:focus-visible .pcfe-play-icon{
    transform:translate(-50%,-50%) scale(1.08);
    filter:brightness(1.16);
}

.pcfe-play-icon::after{
    content:"";
    position:absolute;
    left:29px;
    top:13px;
    border-top:12px solid transparent;
    border-bottom:12px solid transparent;
    border-left:19px solid #fff;
}

.pcfe-duration{
    position:absolute;
    right:10px;
    bottom:10px;
    padding:4px 7px;
    border-radius:6px;
    background:rgba(0,0,0,.84);
    color:#fff;
    font-size:12px;
    font-weight:700;
    line-height:1.2;
    letter-spacing:.02em;
}

.pcfe-episode-content{
    padding:22px 22px 24px;
}

.pcfe-episode-meta{
    display:flex;
    align-items:center;
    min-height:18px;
    margin-bottom:8px;
}

.pcfe-episode-date{
    color:var(--pcfe-muted);
    font-size:12px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.pcfe-episode-title{
    margin:0;
    color:var(--pcfe-text);
    font-size:clamp(19px,1.5vw,23px);
    font-weight:750;
    line-height:1.25;
    letter-spacing:-.02em;
}

.pcfe-episode-description{
    margin-top:14px;
    color:rgba(255,255,255,.84);
    font-size:14.5px;
    line-height:1.65;
}

.pcfe-episode-description p{
    margin:0 0 12px;
}

.pcfe-episode-description p:last-child{
    margin-bottom:0;
}

.pcfe-upcoming{
    margin-top:34px;
}

.pcfe-upcoming-heading{
    margin:0 0 14px;
    color:#000;
    font-size:clamp(24px,2vw,30px);
    font-weight:780;
    line-height:1.2;
    letter-spacing:-.02em;
}

.pcfe-episode--upcoming:hover{
    transform:none;
    border-color:var(--pcfe-border);
    box-shadow:var(--pcfe-shadow);
}

.pcfe-episode-upcoming-media{
    display:block;
}

.pcfe-upcoming-time,
.pcfe-upcoming-countdown{
    margin:8px 0 0;
    color:rgba(255,255,255,.84);
    font-size:14px;
    line-height:1.5;
}

.pcfe-upcoming-countdown{
    color:var(--pcfe-accent);
    font-weight:750;
}

.pcfe-episode-description a:not(.pcfe-timestamp){
    color:var(--pcfe-accent);
    font-weight:700;
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:3px;
}

.pcfe-episode-description a:not(.pcfe-timestamp):hover,
.pcfe-episode-description a:not(.pcfe-timestamp):focus-visible{
    filter:brightness(1.25);
}

.pcfe-timestamp{
    display:inline-flex;
    align-items:center;
    padding:1px 7px;
    border:1px solid color-mix(in srgb,var(--pcfe-accent) 58%,transparent);
    border-radius:999px;
    background:color-mix(in srgb,var(--pcfe-accent) 18%,transparent);
    color:color-mix(in srgb,var(--pcfe-accent) 72%,white);
    font-weight:750;
    text-decoration:none;
    white-space:nowrap;
    transition:background .18s ease,color .18s ease,transform .18s ease;
}

.pcfe-timestamp:hover,
.pcfe-timestamp:focus-visible{
    background:var(--pcfe-accent);
    color:#fff;
    transform:translateY(-1px);
    outline:none;
}

.pcfe-read-more{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-top:4px;
    padding:0;
    border:0;
    background:transparent;
    color:var(--pcfe-accent);
    font:inherit;
    font-weight:750;
    cursor:pointer;
}

.pcfe-read-more:hover,
.pcfe-read-more:focus-visible{
    filter:brightness(1.2);
}

.pcfe-read-more-icon{
    display:grid;
    width:22px;
    height:22px;
    place-items:center;
    border-radius:50%;
    background:color-mix(in srgb,var(--pcfe-accent) 28%,transparent);
    color:#fff;
    font-size:16px;
    line-height:1;
}

.pcfe-show-message{
    padding:22px 24px;
    border:1px solid var(--pcfe-border);
    border-radius:14px;
    background:var(--pcfe-surface);
    color:#fff;
    box-shadow:var(--pcfe-shadow);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

.pcfe-video-modal[hidden]{display:none;}
.pcfe-video-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:34px;}
.pcfe-video-backdrop{position:absolute;inset:0;background:rgba(5,7,10,.96);backdrop-filter:blur(8px);}
.pcfe-video-dialog{position:relative;z-index:1;width:min(94vw,1500px);}
.pcfe-video-frame-wrap{position:relative;width:100%;overflow:hidden;aspect-ratio:16/9;border-radius:16px;background:#000;box-shadow:0 28px 90px rgba(0,0,0,.55);}
.pcfe-video-frame-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.pcfe-video-close{position:absolute;right:0;bottom:calc(100% + 12px);z-index:2;display:grid;width:46px;height:46px;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:31px;line-height:1;cursor:pointer;backdrop-filter:blur(8px);}
.pcfe-video-close:hover,.pcfe-video-close:focus-visible{background:#fff;color:#000;outline:none;}
body.pcfe-modal-open{overflow:hidden;}

@media (max-width:1024px){.pcfe-episode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}}
@media (max-width:640px){
    .pcfe-episode-grid{grid-template-columns:1fr;gap:24px;}
    .pcfe-episode{background:var(--pcfe-surface);color:#fff;}
    .pcfe-episode-content{padding:19px 18px 21px;}
    .pcfe-episode-title{color:#fff;}
    .pcfe-episode-description{color:rgba(255,255,255,.84);}
    .pcfe-video-modal{padding:0;}
    .pcfe-video-dialog{width:100vw;}
    .pcfe-video-frame-wrap{border-radius:0;}
    .pcfe-video-close{position:fixed;top:max(12px,env(safe-area-inset-top));right:12px;bottom:auto;background:rgba(0,0,0,.68);}
}
