/*
Theme Name: PrismFlix
Version: 1.4.8
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: prismflix
*/
:root {
    --pfx-bg: #080c13;
    --pfx-panel: #101824;
    --pfx-panel-2: #151f2d;
    --pfx-panel-3: #172233;
    --pfx-line: rgba(255,255,255,.085);
    --pfx-text: #f0f3f8;
    --pfx-muted: #aeb9ca;
    --pfx-accent: #e85d3f;
    --pfx-accent-2: #ff8067;
    --pfx-gold: #f1ce57;
    --pfx-max: 1280px;
}
* {
    box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}
body {
    margin: 0;
    background: radial-gradient(circle at 50% -20%, #1a2638 0, #0a1019 36%, #080c13 70%);
    color: var(--pfx-text);
    font: 15px/1.6 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    overflow-x: hidden;
}
a {
    color: inherit;
    text-decoration: none;
}
img {
    display: block;
    max-width: 100%;
    height: auto;
}
button, input, textarea, select {
    font: inherit;
}
.screen-reader-text {
    position: absolute!important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}
.pfx-container {
    width: min(calc(100% - 40px), var(--pfx-max));
    margin-inline: auto;
}
.pfx-main {
    min-height: 65vh;
}
.pfx-kicker {
    display: block;
    color: var(--pfx-accent-2);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}
.pfx-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 10px;
    background: linear-gradient(135deg, #ee6548, #d9482f);
    color: #fff;
    font-weight: 850;
    box-shadow: 0 10px 28px rgba(232,93,63,.22);
}
.pfx-skip {
    position: fixed;
    left: 12px;
    top: -80px;
    z-index: 1000;
    padding: 9px 13px;
    background: #fff;
    color: #111;
}
.pfx-skip:focus {
    top: 12px;
}
/* Header — PrismFlix streaming header system. */
.pfx-header {
    position: relative;
    z-index: 30;
    background: rgba(8,12,19,.95);
    border-bottom: 1px solid rgba(255,255,255,.06);
}
.pfx-header-top {
    min-height: 92px;
    display: grid;
    grid-template-columns: 260px minmax(280px,1fr) auto;
    align-items: center;
    gap: 28px;
}
.pfx-brand {
    display: flex;
    align-items: center;
    min-width: 0;
}
.pfx-brand span {
    font-size: 28px;
    font-weight: 950;
    letter-spacing: -.04em;
}
.pfx-brand img {
    max-width: 245px;
    max-height: 64px;
    width: auto;
    object-fit: contain;
}
.pfx-header-search {
    position: relative;
    display: flex;
    height: 48px;
    min-width: 0;
    border-radius: 12px;
    background: #f7f9fc;
    overflow: visible;
}
.pfx-header-search input {
    flex: 1;
    min-width: 0;
    padding: 0 16px;
    border: 0;
    outline: 0;
    border-radius: 12px 0 0 12px;
    background: transparent;
    color: #111827;
}
.pfx-header-search > button {
    width: 56px;
    border: 0;
    border-radius: 0 12px 12px 0;
    background: var(--pfx-accent);
    color: #fff;
    font-size: 23px;
    cursor: pointer;
}
.pfx-search-results {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    z-index: 80;
    max-height: 420px;
    overflow: auto;
    padding: 8px;
    border: 1px solid #30405a;
    border-radius: 12px;
    background: #0d141f;
    box-shadow: 0 24px 60px rgba(0,0,0,.48);
}
.pfx-quickitem {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 10px;
    align-items: center;
    padding: 7px;
    border-radius: 8px;
}
.pfx-quickitem:hover {
    background: #162234;
}
.pfx-quickitem img {
    width: 48px;
    height: 72px;
    object-fit: cover;
    border-radius: 6px;
}
.pfx-quickitem strong {
    display: block;
    font-size: 12px;
}
.pfx-quickitem small {
    color: var(--pfx-gold);
    font-size: 10px;
}
.pfx-quickempty {
    display: block;
    padding: 14px;
    color: var(--pfx-muted);
}
.pfx-random {
    padding: 10px 13px;
    border: 1px solid var(--pfx-line);
    border-radius: 9px;
    color: #d7deea;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}
.pfx-nav {
    background: #0d141f;
    border-top: 1px solid rgba(255,255,255,.04);
}
.pfx-nav-inner {
    min-height: 48px;
    display: flex;
    align-items: center;
    gap: 6px;
    overflow-x: auto;
    scrollbar-width: none;
}
.pfx-nav-inner::-webkit-scrollbar {
    display: none;
}
.pfx-nav-home, .pfx-nav-menu > li > a {
    display: flex;
    align-items: center;
    min-height: 34px;
    padding: 0 11px;
    border-radius: 8px;
    color: #c4cede;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}
.pfx-nav-home {
    background: #1a2637;
    color: #fff;
}
.pfx-nav-menu {
    display: flex;
    align-items: center;
    gap: 3px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.pfx-nav-menu li {
    position: relative;
    list-style: none;
}
.pfx-nav-menu .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 50;
    min-width: 210px;
    margin: 0;
    padding: 7px;
    list-style: none;
    background: #111926;
    border: 1px solid var(--pfx-line);
    border-radius: 10px;
    box-shadow: 0 18px 45px rgba(0,0,0,.3);
}
.pfx-nav-menu li:hover > .sub-menu {
    display: block;
}
.pfx-nav-menu .sub-menu a {
    display: block;
    padding: 8px 10px;
    border-radius: 7px;
    color: #b9c5d6;
    font-size: 12px;
}
.pfx-nav-menu a:hover {
    background: #182438;
    color: #fff;
}
/* Home */
.pfx-home-main-head {
    margin-top: 24px;
}
.pfx-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin: 0 0 15px;
}
.pfx-section-head h1, .pfx-section-head h2, .pfx-section-head .pfx-visual-heading {
    margin: 0;
    font-size: 26px;
    line-height: 1.2;
    letter-spacing: -.02em;
}
.pfx-section-head-small {
    margin-top: 32px;
}
.pfx-section-head-small h2 {
    font-size: 20px;
}
.pfx-section-head-small > a {
    color: var(--pfx-accent-2);
    font-size: 12px;
    font-weight: 850;
}
.pfx-hero {
    display: grid;
    grid-template-columns: minmax(0,1.6fr) 330px;
    gap: 14px;
    margin: 24px 0;
}
.pfx-hero-lead {
    position: relative;
    min-height: 430px;
    overflow: hidden;
    border: 1px solid var(--pfx-line);
    border-radius: 20px;
    background: linear-gradient(90deg,rgba(5,9,15,.98) 0,rgba(5,9,15,.76) 42%,rgba(5,9,15,.2) 76%), var(--pfx-hero-image) center/cover no-repeat;
    box-shadow: 0 26px 70px rgba(0,0,0,.28);
}
.pfx-hero-content {
    position: absolute;
    left: 0;
    bottom: 0;
    max-width: 620px;
    padding: 40px;
}
.pfx-hero-content h2 {
    margin: 5px 0 12px;
    font-size: clamp(30px,4vw,56px);
    line-height: 1.04;
    letter-spacing: -.04em;
}
.pfx-hero-content p {
    max-width: 520px;
    color: #c2cbd8;
}
.pfx-hero-facts {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 12px;
    color: #d8dfeb;
}
.pfx-hero-facts b {
    padding: 4px 7px;
    border-radius: 6px;
    background: var(--pfx-gold);
    color: #2b2407;
    font-size: 12px;
}
.pfx-hero-rail {
    display: grid;
    grid-template-rows: repeat(4,1fr);
    gap: 9px;
}
.pfx-hero-mini {
    display: grid;
    grid-template-columns: 78px 1fr;
    gap: 10px;
    align-items: center;
    min-height: 98px;
    padding: 8px;
    border: 1px solid var(--pfx-line);
    border-radius: 13px;
    background: var(--pfx-panel);
}
.pfx-hero-mini img {
    width: 78px;
    height: 98px;
    object-fit: cover;
    border-radius: 8px;
}
.pfx-hero-mini strong {
    display: block;
    font-size: 12px;
    line-height: 1.35;
}
.pfx-hero-mini small {
    display: inline-block;
    margin-top: 6px;
    color: var(--pfx-gold);
    font-size: 10px;
    font-weight: 850;
}
.pfx-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 290px;
    gap: 24px;
    align-items: start;
}
.pfx-content-column {
    min-width: 0;
}
.pfx-ranking-tabs {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}
.pfx-ranking-tabs a {
    padding: 7px 10px;
    border: 1px solid var(--pfx-line);
    border-radius: 8px;
    background: #111926;
    color: #b9c3d2;
    font-size: 11px;
    font-weight: 800;
}
.pfx-ranking-tabs a.is-active {
    border-color: var(--pfx-accent);
    background: var(--pfx-accent);
    color: #fff;
}
.pfx-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 16px;
}
.pfx-grid-six {
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap: 13px;
}
.pfx-home-row {
    margin-top: 32px;
}
/* Movie card */
.pfx-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--pfx-line);
    border-radius: 13px;
    background: var(--pfx-panel);
    transition: transform .18s ease, border-color .18s ease;
}
.pfx-card:hover {
    transform: translateY(-4px);
    border-color: #495d7e;
}
.pfx-card-poster {
    position: relative;
    display: block;
    aspect-ratio: 2/3;
    overflow: hidden;
    background: var(--pfx-panel-3);
}
.pfx-card-poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.pfx-card-shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,rgba(3,7,12,.7),transparent 45%);
}
.pfx-card-badges {
    position: absolute;
    left: 8px;
    right: 8px;
    top: 8px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 5px;
}
.pfx-badge {
    padding: 4px 6px;
    border-radius: 6px;
    font-size: 9px;
    line-height: 1;
    font-weight: 900;
}
.pfx-badge-imdb {
    background: var(--pfx-gold);
    color: #2b2407;
}
.pfx-badge-lang {
    margin-left: auto;
    background: rgba(9,16,27,.9);
    color: #f2f5f9;
}
.pfx-card-play {
    position: absolute;
    left: 50%;
    top: 50%;
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(232,93,63,.92);
    color: #fff;
    opacity: 0;
    transform: translate(-50%,-50%) scale(.86);
    transition: .18s;
}
.pfx-card:hover .pfx-card-play {
    opacity: 1;
    transform: translate(-50%,-50%) scale(1);
}
.pfx-card-body {
    padding: 10px;
}
.pfx-card-body h2, .pfx-card-body h3, .pfx-card-body .pfx-card-title {
    height: 38px;
    margin: 0 0 6px;
    overflow: hidden;
    font-size: 12px;
    line-height: 1.55;
}
.pfx-card-meta {
    display: flex;
    gap: 7px;
    color: var(--pfx-muted);
    font-size: 10px;
}
/* Sidebar */
.pfx-sidebar {
    display: grid;
    gap: 14px;
}
.pfx-sidebox {
    overflow: hidden;
    border: 1px solid var(--pfx-line);
    border-radius: 13px;
    background: var(--pfx-panel);
}
.pfx-sidebox > h2 {
    margin: 0;
    padding: 12px 13px;
    border-bottom: 1px solid var(--pfx-line);
    background: var(--pfx-panel-2);
    font-size: 12px;
}
.pfx-category-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin: 0;
    padding: 7px 12px 10px;
    list-style: none;
}
.pfx-category-list li {
    border-bottom: 1px solid rgba(255,255,255,.05);
    list-style: none;
}
.pfx-category-list a {
    display: block;
    padding: 7px 2px;
    color: #bac4d2;
    font-size: 10px;
}
.pfx-mini-list {
    padding: 6px 10px;
}
.pfx-mini {
    display: grid;
    grid-template-columns: 55px minmax(0,1fr);
    gap: 9px;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid rgba(255,255,255,.05);
}
.pfx-mini:last-child {
    border-bottom: 0;
}
.pfx-mini img {
    width: 55px;
    height: 78px;
    object-fit: cover;
    border-radius: 7px;
}
.pfx-mini strong {
    display: block;
    font-size: 10px;
    line-height: 1.4;
}
.pfx-mini small {
    display: inline-block;
    margin-top: 5px;
    color: var(--pfx-gold);
    font-size: 9px;
    font-weight: 850;
}
/* Pagination */
.pfx-pagination {
    margin: 24px 0;
}
.pfx-pagination .nav-links, .pfx-pager .page-numbers {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
}
.pfx-pagination a, .pfx-pagination span, .pfx-pager a, .pfx-pager span {
    display: grid;
    place-items: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border: 1px solid var(--pfx-line);
    border-radius: 8px;
    background: var(--pfx-panel);
    color: #c4cede;
}
.pfx-pagination .current, .pfx-pager .current {
    border-color: var(--pfx-accent);
    background: var(--pfx-accent);
    color: #fff;
}
/* Archive */
.pfx-library {
    width: min(calc(100% - 40px),var(--pfx-max));
    margin: 24px auto 0;
}
.pfx-library-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}
.pfx-library-head h1 {
    margin: 3px 0 0;
    font-size: 30px;
}
.pfx-library-note {
    max-width: 620px;
    color: var(--pfx-muted);
}
.pfx-library-grid {
    margin-bottom: 24px;
}
.pfx-library-empty, .pfx-empty {
    padding: 34px;
    border: 1px solid var(--pfx-line);
    border-radius: 12px;
    background: var(--pfx-panel);
    color: var(--pfx-muted);
}
/* Single — PrismFlix cinematic composition */
.pfx-single {
    width: min(calc(100% - 40px),var(--pfx-max));
    margin: 22px auto 0;
    padding-bottom: 42px;
}
.pfx-single-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 15px;
    padding: 17px 19px;
    border: 1px solid var(--pfx-line);
    border-radius: 14px;
    background: var(--pfx-panel);
}
.pfx-single-head h1 {
    margin: 3px 0 8px;
    font-size: clamp(26px,3vw,40px);
    line-height: 1.15;
}
.pfx-single-facts {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    color: #c2cbd8;
}
.pfx-single-facts b {
    padding: 4px 7px;
    border-radius: 6px;
    background: var(--pfx-gold);
    color: #2b2407;
}
.pfx-like {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid #40506c;
    border-radius: 9px;
    background: #172233;
    color: #f0f3f8;
    cursor: pointer;
}
.pfx-like.is-liked {
    background: #392034;
}
.pfx-player {
    width: 100%;
    min-height: 120px;
    margin-bottom: 18px;
    padding: 12px;
    overflow: hidden;
    border: 1px solid var(--pfx-line);
    border-radius: 15px;
    background: #05070a;
}
.pfx-player iframe, .pfx-player video, .pfx-player embed, .pfx-player object {
    display: block;
    width: 100%!important;
    max-width: 100%!important;
    height: auto!important;
    aspect-ratio: 16/9;
    border: 0!important;
    border-radius: 9px;
}
.pfx-movie-info {
    display: grid;
    grid-template-columns: 210px minmax(0,1fr);
    gap: 22px;
    padding: 18px;
    border: 1px solid var(--pfx-line);
    border-radius: 15px;
    background: var(--pfx-panel);
}
.pfx-movie-info-poster img {
    width: 210px;
    aspect-ratio: 2/3;
    object-fit: cover;
    border-radius: 10px;
}
.pfx-movie-info h2 {
    margin: 0 0 10px;
}
.pfx-description {
    color: #c4cdda;
}
.pfx-movie-facts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 18px;
    margin: 15px 0 0;
}
.pfx-movie-facts div {
    padding-top: 8px;
    border-top: 1px solid rgba(255,255,255,.06);
}
.pfx-movie-facts dt {
    color: #8794a8;
    font-size: 10px;
    text-transform: uppercase;
}
.pfx-movie-facts dd {
    margin: 3px 0 0;
    font-size: 12px;
}
.pfx-parts {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: -10px 0 18px;
    padding: 10px;
    border-radius: 10px;
    background: #111926;
}
.pfx-parts a, .pfx-parts span {
    padding: 7px 10px;
    border-radius: 7px;
    background: #1a2637;
    font-size: 11px;
}
.pfx-trailer {
    margin-top: 24px;
}
.pfx-trailer iframe {
    width: 100%;
    aspect-ratio: 16/9;
    border: 0;
    border-radius: 14px;
}

.pfx-trailer-launch {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16/9;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 14px;
    background: #070b11;
    cursor: pointer;
}
.pfx-trailer-launch img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .72;
}
.pfx-trailer-launch__play {
    position: absolute;
    left: 50%;
    top: 50%;
    display: grid;
    place-items: center;
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: var(--pfx-accent);
    color: #fff;
    font-size: 24px;
    transform: translate(-50%,-58%);
    box-shadow: 0 12px 32px rgba(0,0,0,.35);
}
.pfx-trailer-launch__text {
    position: absolute;
    left: 50%;
    top: calc(50% + 44px);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    transform: translateX(-50%);
    text-shadow: 0 2px 8px rgba(0,0,0,.7);
}
.pfx-related {
    margin-top: 34px;
}
.pfx-comments {
    margin-top: 30px;
    padding: 20px;
    border: 1px solid var(--pfx-line);
    border-radius: 14px;
    background: var(--pfx-panel);
}
/* Utility pages */
.pfx-systempage {
    width: min(calc(100% - 40px), 820px);
    margin: 28px auto;
    padding: 24px;
    border: 1px solid var(--pfx-line);
    border-radius: 14px;
    background: var(--pfx-panel);
}
.pfx-systempage input, .pfx-systempage textarea {
    width: 100%;
    margin-top: 6px;
    padding: 11px 12px;
    border: 1px solid #334158;
    border-radius: 9px;
    background: #0b111b;
    color: #fff;
}
.pfx-contactform {
    display: grid;
    gap: 12px;
}
.pfx-systembtn {
    display: inline-flex;
    width: max-content;
    padding: 10px 14px;
    border: 0;
    border-radius: 9px;
    background: var(--pfx-accent);
    color: #fff;
    font-weight: 800;
}
/* Footer */
.pfx-footer {
    width: min(calc(100% - 40px),var(--pfx-max));
    margin: 56px auto 0;
    padding: 28px 0 38px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 18px 28px;
    border-top: 1px solid var(--pfx-line);
    color: #8996aa;
}
.pfx-footer-mark {
    display: flex;
    align-items: center;
    gap: 10px;
}
.pfx-footer-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--pfx-accent);
    box-shadow: 0 0 0 5px rgba(232,93,63,.12);
}
.pfx-footer-mark strong {
    display: block;
    color: #e8edf5;
}
.pfx-footer-tabs ul {
    display: flex;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.pfx-footer-meta {
    grid-column: 1/-1;
    display: flex;
    justify-content: space-between;
    font-size: 11px;
}
@media (max-width: 1080px) {
    .pfx-header-top {
        grid-template-columns: 220px 1fr;
    }
    .pfx-random {
        display: none;
    }
    .pfx-hero {
        grid-template-columns: 1fr 290px;
    }
    .pfx-layout {
        grid-template-columns: minmax(0,1fr) 250px;
    }
    .pfx-grid {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }
    .pfx-grid-six {
        grid-template-columns: repeat(4,minmax(0,1fr));
    }
}
@media (max-width: 820px) {
    .pfx-header-top {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 14px 0;
    }
    .pfx-brand {
        justify-content: center;
    }
    .pfx-nav-inner {
        min-height: 44px;
    }
    .pfx-hero {
        grid-template-columns: 1fr;
    }
    .pfx-hero-rail {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: none;
    }
    .pfx-layout {
        display: block;
    }
    .pfx-sidebar {
        margin-top: 28px;
        grid-template-columns: 1fr 1fr;
    }
    .pfx-section-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .pfx-movie-info {
        grid-template-columns: 160px 1fr;
    }
    .pfx-movie-info-poster img {
        width: 160px;
    }
}
@media (max-width: 600px) {
    .pfx-container, .pfx-single, .pfx-library, .pfx-footer {
        width: min(calc(100% - 24px),var(--pfx-max));
    }
    .pfx-header-search {
        height: 44px;
    }
    .pfx-hero-lead {
        min-height: 390px;
    }
    .pfx-hero-content {
        padding: 26px;
    }
    .pfx-hero-rail {
        grid-template-columns: 1fr;
    }
    .pfx-grid, .pfx-grid-six {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 12px;
    }
    .pfx-sidebar {
        grid-template-columns: 1fr;
    }
    .pfx-single-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .pfx-movie-info {
        grid-template-columns: 1fr;
    }
    .pfx-movie-info-poster img {
        width: min(210px,60vw);
    }
    .pfx-movie-facts {
        grid-template-columns: 1fr;
    }
    .pfx-footer {
        grid-template-columns: 1fr;
    }
    .pfx-footer-tabs ul {
        flex-wrap: wrap;
    }
}
@media (prefers-reduced-motion: reduce) {
    * {
        scroll-behavior: auto!important;
        transition: none!important;
    }
}
/* Single movie — PrismFlix feature composition. */
.pfx-single-hero {
    position: relative;
    min-height: 320px;
    margin-bottom: 18px;
    overflow: hidden;
    border-radius: 22px;
    background-color: #0c1422;
    background-image:
    linear-gradient(90deg, rgba(6, 11, 19, .95), rgba(6, 11, 19, .65) 48%, rgba(6, 11, 19, .18)),
    var(--pfx-hero-bg);
    background-position: center;
    background-size: cover;
}
.pfx-single-hero-shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(5, 9, 16, .82), transparent 60%);
}
.pfx-single-hero-copy {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: 320px;
    max-width: 760px;
    flex-direction: column;
    justify-content: flex-end;
    padding: 34px;
}
.pfx-breadcrumb {
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
    margin-bottom: 12px;
    color: #8997aa;
    font-size: 11px;
}
.pfx-breadcrumb a {
    color: #bac5d5;
}
.pfx-single-hero h1 {
    margin: 0 0 13px;
    color: #fff;
    font-size: clamp(28px, 4vw, 54px);
    line-height: 1.03;
    letter-spacing: -.02em;
}
.pfx-single-hero-meta {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}
.pfx-single-hero-meta b,
.pfx-single-hero-meta span {
    padding: 6px 9px;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 7px;
    background: rgba(8, 16, 29, .72);
    color: #dce4ef;
    font-size: 10px;
}
.pfx-single-hero-meta b {
    border-color: rgba(244, 198, 67, .48);
    background: var(--pfx-gold);
    color: #2b2407;
}
.pfx-player-card {
    margin-bottom: 20px;
    padding: 12px;
    border: 1px solid #253550;
    border-radius: 16px;
    background: #09111d;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .25);
}
.pfx-player-card .pfx-player {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 11px;
    background: #000;
}
.pfx-movie-overview {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr) 310px;
    gap: 22px;
    align-items: start;
    margin-bottom: 24px;
    padding: 22px;
    border: 1px solid #253550;
    border-radius: 18px;
    background: #0d1726;
}
.pfx-movie-poster {
    overflow: hidden;
    border-radius: 13px;
    background: #162238;
}
.pfx-movie-poster img {
    display: block;
    width: 100%;
    aspect-ratio: 2 / 3;
    object-fit: cover;
}
.pfx-section-kicker {
    display: block;
    margin-bottom: 5px;
    color: #8399ee;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.pfx-movie-copy h2, .pfx-movie-copy .pfx-visual-heading {
    margin: 0 0 12px;
    color: #fff;
    font-size: 28px;
    line-height: 1.15;
}
.pfx-description {
    color: #b8c2d2;
    font-size: 12px;
    line-height: 1.75;
}
.pfx-description p {
    margin: 0 0 12px;
}
.pfx-film-actions {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    margin-top: 18px;
}
.pfx-like,
.pfx-comment-link,
.pfx-star-vote {
    display: inline-flex;
    min-height: 40px;
    align-items: center;
    gap: 7px;
    padding: 0 12px;
    border: 1px solid #40506c;
    border-radius: 9px;
    background: #172233;
    color: #f0f3f8;
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}
.pfx-like span {
    color: #ff7187;
}
.pfx-like em {
    font-style: normal;
    font-size: 10px;
}

.pfx-star-vote {
    gap: 8px;
    padding-right: 10px;
    cursor: default;
}
.pfx-star-vote__label {
    color: #aeb9ca;
    font-size: 10px;
    font-weight: 800;
}
.pfx-star-vote__stars {
    display: inline-flex;
    align-items: center;
    gap: 1px;
}
.pfx-star-vote__star {
    width: 15px;
    height: 28px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #4e596b;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    transition: color .15s ease, transform .15s ease;
}
.pfx-star-vote__star:hover,
.pfx-star-vote__star.is-active {
    color: #f1ce57;
}
.pfx-star-vote__star:hover {
    transform: translateY(-1px) scale(1.08);
}
.pfx-star-vote.is-voted .pfx-star-vote__star {
    cursor: default;
}
.pfx-star-vote__summary {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    white-space: nowrap;
}
.pfx-star-vote__summary strong {
    color: #f0f3f8;
    font-size: 10px;
}
.pfx-star-vote__summary em {
    color: #8290a5;
    font-size: 9px;
    font-style: normal;
    font-weight: 700;
}
@media (max-width: 680px) {
    .pfx-star-vote {
        width: 100%;
        justify-content: flex-start;
        overflow-x: auto;
    }
}
.pfx-film-facts {
    padding: 16px;
    border: 1px solid #263954;
    border-radius: 14px;
    background: linear-gradient(180deg, #0d1726 0%, #09121e 100%);
}
.pfx-film-facts__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.pfx-film-facts h2 {
    margin: 0;
    color: #f0f3f8;
    font-size: 14px;
    line-height: 1.2;
}
.pfx-film-facts__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.pfx-fact {
    min-width: 0;
    padding: 10px 11px;
    border: 1px solid rgba(174,185,202,.12);
    border-radius: 10px;
    background: rgba(16,24,36,.78);
}
.pfx-fact.is-wide { grid-column: 1 / -1; }
.pfx-fact span {
    display: block;
    margin-bottom: 4px;
    color: #8290a5;
    font-size: 9px;
    font-weight: 800;
}
.pfx-fact strong {
    display: block;
    overflow-wrap: anywhere;
    color: #e9eef6;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.45;
}
.pfx-fact--score {
    border-color: rgba(241,206,87,.25);
    background: rgba(241,206,87,.07);
}
.pfx-fact--score strong {
    color: #f1ce57;
    font-size: 13px;
}
.pfx-fact--links a {
    color: #ff8067;
    text-decoration: none;
}
.pfx-fact--links a:hover { text-decoration: underline; }
.pfx-trailer {
    margin: 0 0 24px;
}
.pfx-trailer iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 1px solid #253550;
    border-radius: 15px;
    background: #000;
}
.pfx-related {
    margin: 0 0 24px;
}
.pfx-related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.pfx-comments {
    margin-top: 28px;
    padding: 18px;
    border: 1px solid var(--pfx-line);
    border-radius: 14px;
    background: var(--pfx-panel);
}
@media (max-width: 980px) {
    .pfx-movie-overview {
        grid-template-columns: 180px minmax(0, 1fr);
    }
    .pfx-film-facts {
        grid-column: 1 / -1;
    }
    .pfx-related-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 720px) {
    .pfx-single-hero,
    .pfx-single-hero-copy {
        min-height: 250px;
    }
    .pfx-single-hero-copy {
        padding: 20px;
    }
    .pfx-single-hero h1 {
        font-size: 30px;
    }
    .pfx-movie-overview {
        grid-template-columns: 110px minmax(0, 1fr);
        gap: 14px;
        padding: 14px;
    }
    .pfx-film-facts {
        grid-column: 1 / -1;
    }
    .pfx-movie-copy h2, .pfx-movie-copy .pfx-visual-heading {
        font-size: 20px;
    }
    .pfx-description {
        font-size: 11px;
    }
    .pfx-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }
}
@media (max-width: 480px) {
    .pfx-movie-overview {
        grid-template-columns: 1fr;
    }
    .pfx-movie-poster {
        width: 145px;
    }
}


/* PrismFlix v5 — shared page structure */
.pfx-library > .pfx-breadcrumb,
.pfx-systempage > .pfx-breadcrumb,
.pfx-page > .pfx-breadcrumb,
.pfx-error > .pfx-breadcrumb {
    margin-bottom: 16px;
}

.pfx-page {
    width: min(calc(100% - 40px), 960px);
    margin: 28px auto;
    padding: 24px;
    border: 1px solid var(--pfx-line);
    border-radius: 14px;
    background: var(--pfx-panel);
}

.pfx-page > header h1 {
    margin-top: 0;
}

.pfx-taxonomy-page .pfx-library-head,
.pfx-search-page .pfx-library-head {
    margin-top: 0;
}

/* 1.4.3 H-tag parity: visual headings on single film are not semantic H-tags. */
.pfx-film-facts__head .pfx-visual-heading,
.pfx-commentbox-title,
.comment-reply-title {
    font: inherit;
    font-weight: 800;
}


/* 1.4.3 — Global sidebar behavior */
.pfx-global-main { min-width: 0; }

@media (max-width: 820px) {
    .pfx-sidebar {
        display: none !important;
    }
}

.pfx-404-redirect {
    margin-top: 12px;
    color: var(--muted);
}
.pfx-404-redirect strong {
    color: var(--accent2);
    font-variant-numeric: tabular-nums;
}


/* 1.4.3 — Premium native WordPress comment experience */
.pfx-comments {
    margin-top: 28px;
}

.pfx-commentbox {
    position: relative;
    overflow: hidden;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 22px;
    background:
        radial-gradient(circle at 100% 0, rgba(232,93,63,.10), transparent 34%),
        linear-gradient(145deg, rgba(21,31,45,.96), rgba(10,15,23,.98));
    box-shadow: 0 20px 55px rgba(0,0,0,.22);
}

.pfx-commentbox::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--accent), var(--gold), transparent 78%);
    opacity: .9;
}

.pfx-comment-head {
    display: grid;
    grid-template-columns: 46px minmax(0,1fr) auto;
    gap: 14px;
    align-items: center;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.pfx-comment-head__icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(232,93,63,.22), rgba(241,206,87,.12));
    border: 1px solid rgba(255,255,255,.09);
    color: var(--gold);
    font-size: 20px;
}

.pfx-commentbox-title,
.comment-reply-title {
    color: var(--text);
    font-size: 20px;
    line-height: 1.2;
    font-weight: 850;
    letter-spacing: -.02em;
}

.pfx-comment-head__copy p,
.pfx-comment-empty p,
.pfx-comment-note {
    margin: 5px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.55;
}

.pfx-comment-count {
    min-width: 64px;
    padding: 8px 12px;
    border-radius: 14px;
    text-align: center;
    background: rgba(255,255,255,.045);
    border: 1px solid rgba(255,255,255,.07);
}

.pfx-comment-count strong {
    display: block;
    color: var(--text);
    font-size: 18px;
    line-height: 1;
}

.pfx-comment-count span {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.pfx-commentlist {
    list-style: none;
    margin: 22px 0 0;
    padding: 0;
}

.pfx-commentlist .comment {
    list-style: none;
}

.pfx-commentlist > .comment + .comment {
    margin-top: 12px;
}

.pfx-commentlist .comment-body {
    position: relative;
    padding: 18px 18px 16px 78px;
    border-radius: 17px;
    border: 1px solid rgba(255,255,255,.065);
    background: rgba(255,255,255,.025);
}

.pfx-commentlist .avatar {
    position: absolute;
    left: 18px;
    top: 18px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid rgba(241,206,87,.35);
}

.pfx-commentlist .comment-author {
    color: var(--text);
    font-size: 14px;
    font-weight: 800;
}

.pfx-commentlist .comment-author .says {
    display: none;
}

.pfx-commentlist .comment-meta {
    margin-top: 3px;
    font-size: 11px;
}

.pfx-commentlist .comment-meta a {
    color: var(--muted);
}

.pfx-commentlist .comment-body > p {
    margin: 13px 0 0;
    color: var(--text);
    font-size: 14px;
    line-height: 1.7;
}

.pfx-commentlist .reply {
    margin-top: 12px;
}

.pfx-commentlist .reply a {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 11px;
    border-radius: 9px;
    background: rgba(232,93,63,.10);
    color: var(--accent2);
    font-size: 11px;
    font-weight: 800;
}

.pfx-commentlist .children {
    list-style: none;
    margin: 10px 0 0 28px;
    padding: 0;
}

.pfx-comment-empty {
    margin-top: 20px;
    padding: 20px;
    text-align: center;
    border-radius: 16px;
    border: 1px dashed rgba(255,255,255,.10);
    background: rgba(255,255,255,.018);
}

.pfx-comment-empty > span {
    display: block;
    margin-bottom: 8px;
    font-size: 24px;
}

.pfx-comment-empty strong {
    color: var(--text);
    font-size: 14px;
}

.pfx-comment-form-shell {
    margin-top: 22px;
    padding: 20px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.075);
    background: rgba(8,12,19,.52);
}

.pfx-comment-form-shell .comment-reply-title {
    margin-bottom: 6px;
}

.pfx-comment-form-shell .logged-in-as,
.pfx-comment-form-shell .logged-in-as a {
    color: var(--muted);
    font-size: 12px;
}

.pfx-comment-form-shell .comment-form {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    margin-top: 16px;
}

.pfx-comment-form-shell .comment-notes,
.pfx-comment-form-shell .pfx-comment-note,
.pfx-comment-form-shell .comment-form-comment,
.pfx-comment-form-shell .comment-form-url,
.pfx-comment-form-shell .comment-form-cookies-consent,
.pfx-comment-form-shell .form-submit,
.pfx-comment-form-shell .logged-in-as {
    grid-column: 1 / -1;
}

.pfx-comment-form-shell p {
    margin: 0;
}

.pfx-comment-form-shell label {
    display: block;
    margin-bottom: 7px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .02em;
}

.pfx-comment-form-shell input[type="text"],
.pfx-comment-form-shell input[type="email"],
.pfx-comment-form-shell input[type="url"],
.pfx-comment-form-shell textarea {
    width: 100%;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 12px;
    outline: 0;
    background: rgba(255,255,255,.035);
    color: var(--text);
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.pfx-comment-form-shell input[type="text"],
.pfx-comment-form-shell input[type="email"],
.pfx-comment-form-shell input[type="url"] {
    height: 44px;
    padding: 0 13px;
}

.pfx-comment-form-shell textarea {
    min-height: 132px;
    padding: 13px;
    resize: vertical;
}

.pfx-comment-form-shell input:focus,
.pfx-comment-form-shell textarea:focus {
    border-color: rgba(232,93,63,.62);
    background: rgba(255,255,255,.05);
    box-shadow: 0 0 0 3px rgba(232,93,63,.09);
}

.pfx-comment-form-shell .comment-form-cookies-consent {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    color: var(--muted);
    font-size: 11px;
}

.pfx-comment-form-shell .comment-form-cookies-consent label {
    margin: 0;
    line-height: 1.5;
}

.pfx-comment-submit {
    min-height: 44px;
    padding: 0 20px;
    border: 0;
    border-radius: 12px;
    cursor: pointer;
    background: linear-gradient(135deg, var(--accent), var(--accent2));
    color: #fff;
    font-weight: 850;
    box-shadow: 0 10px 28px rgba(232,93,63,.18);
}

.pfx-comment-submit:hover {
    transform: translateY(-1px);
    filter: brightness(1.06);
}

.pfx-comment-nav {
    margin-top: 16px;
}

@media (max-width: 680px) {
    .pfx-commentbox {
        padding: 17px;
        border-radius: 18px;
    }

    .pfx-comment-head {
        grid-template-columns: 40px minmax(0,1fr);
    }

    .pfx-comment-head__icon {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .pfx-comment-count {
        display: none;
    }

    .pfx-comment-head__copy p {
        display: none;
    }

    .pfx-comment-form-shell {
        padding: 15px;
    }

    .pfx-comment-form-shell .comment-form {
        grid-template-columns: 1fr;
    }

    .pfx-comment-form-shell .comment-form > p {
        grid-column: 1 / -1;
    }

    .pfx-commentlist .comment-body {
        padding: 15px 14px 14px 62px;
    }

    .pfx-commentlist .avatar {
        left: 14px;
        top: 15px;
        width: 36px;
        height: 36px;
    }

    .pfx-commentlist .children {
        margin-left: 12px;
    }
}


/* 1.4.8 — PrismFlix premium 404 */
.pfx-error-premium{position:relative;display:grid;place-items:center;min-height:68vh;padding:48px 18px;overflow:hidden}
.pfx-404-shell{position:relative;width:min(760px,100%);padding:52px 30px;text-align:center;border:1px solid rgba(255,255,255,.075);border-radius:28px;background:linear-gradient(145deg,rgba(21,31,45,.96),rgba(8,12,19,.985));box-shadow:0 28px 80px rgba(0,0,0,.30);overflow:hidden}
.pfx-404-glow{position:absolute;top:-150px;left:50%;width:430px;height:430px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(232,93,63,.18),rgba(241,206,87,.05) 42%,transparent 70%);pointer-events:none}
.pfx-404-code{position:relative;color:var(--text);font-size:clamp(78px,15vw,150px);font-weight:950;line-height:.82;letter-spacing:-.075em;text-shadow:0 16px 45px rgba(0,0,0,.28)}
.pfx-404-badge{position:relative;display:inline-flex;margin:22px 0 14px;padding:7px 11px;border:1px solid rgba(232,93,63,.22);border-radius:999px;background:rgba(232,93,63,.08);color:var(--accent2);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.pfx-error-premium h1{position:relative;margin:0;color:var(--text);font-size:clamp(25px,4vw,38px);letter-spacing:-.035em}
.pfx-404-copy{position:relative;max-width:540px;margin:12px auto 0;color:var(--muted);font-size:14px;line-height:1.7}
.pfx-404-countdown{position:relative;display:flex;align-items:center;justify-content:center;gap:15px;width:max-content;max-width:100%;margin:28px auto 22px;padding:11px 16px 11px 11px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.025);text-align:left}
.pfx-404-ring{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;border:1px solid rgba(241,206,87,.22);background:radial-gradient(circle,rgba(241,206,87,.12),rgba(232,93,63,.07));box-shadow:inset 0 0 20px rgba(241,206,87,.04)}
.pfx-404-ring strong{color:var(--gold);font-size:22px;font-variant-numeric:tabular-nums}
.pfx-404-countdown>div:last-child strong,.pfx-404-countdown>div:last-child span{display:block}
.pfx-404-countdown>div:last-child strong{color:var(--text);font-size:13px}
.pfx-404-countdown>div:last-child span{margin-top:3px;color:var(--muted);font-size:11px}
.pfx-404-home{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 19px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff!important;font-weight:850;box-shadow:0 12px 30px rgba(232,93,63,.18)}
@media(max-width:600px){.pfx-error-premium{min-height:62vh;padding:28px 14px}.pfx-404-shell{padding:38px 18px;border-radius:22px}.pfx-404-countdown{width:100%;justify-content:flex-start}.pfx-404-copy{font-size:13px}}


/* PrismFlix AJAX comments — no replytocom URLs */
.pfx-comment-reply{appearance:none;margin-top:10px;padding:0;border:0;background:transparent;color:var(--accent2);font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.pfx-comment-reply:hover{color:var(--text)}
.pfx-comment-status{margin-top:12px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.035);color:var(--muted);font-size:12px}
.pfx-comment-status.is-error{background:rgba(232,93,63,.10);color:#ff9c87}
.pfx-comment-status.is-success{background:rgba(81,214,155,.10);color:#9de8c8}
#respond.is-replying{margin-top:14px}


/* PageSpeed / erişilebilirlik: mobil yıldız hedefleri en az 30x44 px; görsel yıldız boyutu değişmez. */
@media (max-width: 560px) {
    .pfx-star-vote__stars { gap: 0; }
    .pfx-star-vote__star {
        width: 30px;
        min-width: 30px;
        height: 44px;
        min-height: 44px;
        font-size: 14px;
    }
}
