/* VideoPro Cinema 1.0.0. All overrides are scoped to the active design. */
body.vpcinema {
    --vpc-bg: #111827;
    --vpc-surface: #1b2535;
    --vpc-raised: #253247;
    --vpc-border: #344256;
    --vpc-text: #f1f5f9;
    --vpc-muted: #b1bdce;
    --vpc-accent: #fb7185;
    --vpc-columns: 4;
    --vpc-width: 1440px;
    background: var(--vpc-bg);
    color: var(--vpc-text);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 15px;
    line-height: 1.65;
    color-scheme: dark;
}
.vpcinema *, .vpcinema *::before, .vpcinema *::after { box-sizing: border-box; }
.vpcinema #body-wrap, .vpcinema #wrap, .vpcinema #cactus-body-container,
.vpcinema .main-content-col, .vpcinema .main-content-col-body, .vpcinema .single-post-content { background-color: var(--vpc-bg); }
.vpcinema #body-wrap .cactus-sidebar-control,
.vpcinema #body-wrap .cactus-sidebar-control > .cactus-container,
.vpcinema #body-wrap .cactus-sidebar-control > .cactus-container::before,
.vpcinema #body-wrap .cactus-sidebar-control .main-content-col::before,
.vpcinema #body-wrap .cactus-sidebar-control .main-content-col::after,
.vpcinema #body-wrap .cactus-sidebar, .vpcinema #body-wrap .cactus-sidebar-content,
.vpcinema #body-wrap .cactus-sidebar::before { background-color: var(--vpc-bg) !important; border-color: var(--vpc-border) !important; }
.vpcinema #body-wrap .cactus-sidebar::after { background-color: var(--vpc-border) !important; }
.vpcinema #body-wrap .cactus-sidebar-control .main-content-col { border-color: var(--vpc-border); }
.vpcinema .cactus-container { max-width: var(--vpc-width); }
.vpcinema .cactus-container.ct-default { width: 100%; }
.vpcinema .cactus-row > *, .vpcinema .main-content-col, .vpcinema .main-content-col-body { min-width: 0; }
.vpcinema h1, .vpcinema h2, .vpcinema h3, .vpcinema h4, .vpcinema h5, .vpcinema h6,
.vpcinema .h1, .vpcinema .h2, .vpcinema .h3, .vpcinema .h4, .vpcinema .h5, .vpcinema .h6 {
    color: var(--vpc-text); font-family: inherit; letter-spacing: -.015em;
}
.vpcinema .navigation-font, .vpcinema .metadata-font { font-family: inherit; }
.vpcinema a { color: var(--vpc-accent); }
.vpcinema a:hover { color: var(--vpc-text); }
.vpcinema a:focus-visible, .vpcinema button:focus-visible, .vpcinema input:focus-visible,
.vpcinema select:focus-visible, .vpcinema textarea:focus-visible {
    outline: 2px solid var(--vpc-accent); outline-offset: 3px;
}
.vpcinema ::selection { background: var(--vpc-accent); color: #111827; }
.vpcinema .dark-div, .vpcinema .dark-bg-color-1 { color: var(--vpc-text); }
.vpcinema .dark-div a { color: var(--vpc-text); }
.vpcinema .dark-div a:hover { color: var(--vpc-accent); }

/* Keep the native header, menu walker, dropdowns, membership links and mobile drawer. */
.vpcinema #header-navigation { background: var(--vpc-bg); }
.vpcinema #header-navigation .cactus-nav-main,
.vpcinema #header-navigation > .cactus-nav-control > .cactus-nav-main {
    background: var(--vpc-surface) !important; background-image: none !important;
    border-bottom: 1px solid var(--vpc-border);
}
.vpcinema #header-navigation .cactus-logo { padding-top: 20px; padding-bottom: 20px; }
.vpcinema #header-navigation .cactus-logo img { max-height: 42px; width: auto; max-width: 180px; object-fit: contain; }
.vpcinema #header-navigation .cactus-header-search-form { padding-top: 20px; padding-bottom: 20px; }
.vpcinema #header-navigation .cactus-main-menu > ul > li > a { color: var(--vpc-text); font-size: 14px; font-weight: 600; }
.vpcinema #header-navigation .cactus-only-main-menu .cactus-main-menu > ul > li > a { padding-top: 14px; padding-bottom: 14px; }
.vpcinema #header-navigation .cactus-main-menu > ul > li:hover > a,
.vpcinema #header-navigation .cactus-main-menu > ul > li.current-menu-item > a { color: var(--vpc-accent); background: rgba(255,255,255,.035); }
.vpcinema #header-navigation .cactus-only-main-menu .cactus-main-menu > ul > li > a:after { background: transparent; }
.vpcinema #header-navigation .cactus-only-main-menu .cactus-main-menu > ul > li.current-menu-item > a:after { background: var(--vpc-accent); }
.vpcinema #header-navigation .cactus-main-menu ul ul,
.vpcinema .view-sortby ul, .vpcinema #off-canvas { background: var(--vpc-surface); border-color: var(--vpc-border); }
.vpcinema #header-navigation .cactus-main-menu ul ul a,
.vpcinema #off-canvas a, .vpcinema .view-sortby ul a { color: var(--vpc-text); }
.vpcinema #header-navigation .cactus-main-menu ul ul a:hover,
.vpcinema .view-sortby ul a:hover { background: var(--vpc-raised); color: var(--vpc-accent); }
.vpcinema #header-navigation .cactus-nav-right:before { background: var(--vpc-surface); }
.vpcinema #header-navigation .cactus-header-search-form form input:not([type="submit"]),
.vpcinema #header-navigation .cactus-header-search-form form input:not([type="submit"]):focus {
    background: var(--vpc-bg); color: var(--vpc-text); border-color: var(--vpc-border); border-width: 1px; border-radius: 7px;
}
.vpcinema #header-navigation .cactus-header-search-form input::placeholder { color: var(--vpc-muted); opacity: 1; }
.vpcinema #header-navigation .cactus-header-search-form .fa-search { color: var(--vpc-muted); }
.vpcinema .close-canvas-menu { color: var(--vpc-text); border-color: var(--vpc-border); }

/* Search-first homepage. Standard GET form works without JavaScript. */
.vpcinema .vpc-discover { border-bottom: 1px solid var(--vpc-border); background: var(--vpc-bg); padding: 44px 24px 34px; }
.vpcinema .vpc-discover-inner { max-width: 880px; margin: 0 auto; text-align: center; }
.vpcinema .vpc-eyebrow { color: var(--vpc-accent); font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; margin: 0 0 8px; }
.vpcinema .vpc-discover-title { font-size: clamp(25px,3.5vw,37px); font-weight: 700; line-height: 1.2; letter-spacing: -.035em; margin: 0 0 12px; }
.vpcinema .vpc-discover-description { color: var(--vpc-muted); margin: 0 0 24px; font-size: 15px; }
.vpcinema .vpc-search { display: flex; align-items: center; gap: 12px; background: var(--vpc-surface); border: 1px solid var(--vpc-border); border-radius: 10px; padding: 6px 6px 6px 18px; max-width: 740px; margin: 0 auto; }
.vpcinema .vpc-search:focus-within { border-color: var(--vpc-accent); }
.vpcinema .vpc-search-icon { flex: 0 0 22px; color: var(--vpc-muted); }
.vpcinema .vpc-search input[type="search"] { appearance: none; -webkit-appearance: none; flex: 1 1 auto; min-width: 0; width: 100%; height: 44px; background: transparent; color: var(--vpc-text); border: 0; box-shadow: none; margin: 0; padding: 8px 0; font: inherit; }
.vpcinema .vpc-search input::placeholder { color: var(--vpc-muted); opacity: 1; }
.vpcinema .vpc-search button { flex: 0 0 auto; border: 0; border-radius: 6px; background: var(--vpc-accent); color: #111827; padding: 12px 25px; font: inherit; font-weight: 750; line-height: 1.4; min-height: 44px; margin: 0; }
.vpcinema .vpc-search button:hover { filter: brightness(1.12); }
.vpcinema .vpc-browse { margin-top: 19px; }
.vpcinema .vpc-browse-list { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; padding: 0; margin: 0; list-style: none; }
.vpcinema .vpc-browse-list li { margin: 0; padding: 0; }
.vpcinema .vpc-browse-list a { display: block; color: var(--vpc-muted); border: 1px solid var(--vpc-border); border-radius: 6px; padding: 6px 12px; font-size: 12px; font-weight: 550; line-height: 1.6; text-decoration: none; }
.vpcinema .vpc-browse-list a:hover { border-color: var(--vpc-accent); color: var(--vpc-accent); background: var(--vpc-surface); }
.vpcinema .vpc-screen-reader { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* Existing archive headings, sorting and pagination. */
.vpcinema #cactus-body-container { padding-top: 28px; }
.vpcinema .archive-header { margin-bottom: 24px; }
.vpcinema .category-title, .vpcinema .single-post-heading, .vpcinema .widget-title { font-weight: 700; letter-spacing: -.02em; }
.vpcinema .category-title { font-size: 26px; }
.vpcinema .category-post-count, .vpcinema .s-result,
.vpcinema .breadcrumbs, .vpcinema .breadcrumbs a, .vpcinema .breadcrumb,
.vpcinema .posted-on, .vpcinema .posted-on a, .vpcinema .post-metadata, .vpcinema .post-metadata a { color: var(--vpc-muted); }
.vpcinema #body-wrap .posted-on, .vpcinema #body-wrap .posted-on a,
.vpcinema #body-wrap .posted-on a::before { color: var(--vpc-muted); }
.vpcinema .category-tools { border-color: var(--vpc-border); margin-bottom: 24px; padding-bottom: 12px; }
.vpcinema .view-sortby, .vpcinema .view-mode-switch > div { color: var(--vpc-muted); background: var(--vpc-surface); border-color: var(--vpc-border); border-radius: 5px; }
.vpcinema .view-mode-switch > div.active { color: var(--vpc-accent); background: var(--vpc-raised); }
.vpcinema .navigation a, .vpcinema .navigation span, .vpcinema .page-numbers,
.vpcinema .wp-pagenavi a, .vpcinema .wp-pagenavi span { border-color: var(--vpc-border); color: var(--vpc-text); border-radius: 6px; }
.vpcinema .page-numbers.current, .vpcinema .wp-pagenavi .current { color: #111827; background: var(--vpc-accent); border-color: var(--vpc-accent); }

/* Use VideoPro's real grid class. Native switcher, Slick and masonry retain their layout ownership. */
.vpcinema .cactus-listing-config.style-2 { --vpc-local-columns: var(--vpc-columns); }
.vpcinema .sb-ct-medium .cactus-listing-config.style-2,
.vpcinema .sb-ct-small .cactus-listing-config.style-2 { --vpc-local-columns: 3; }
.vpcinema .sb-ct-medium.sb-ct-small .cactus-listing-config.style-2 { --vpc-local-columns: 2; }
.vpcinema .cactus-listing-config.style-2 > .cactus-sub-wrap:not(.slick-initialized):not(.isotope-ready) {
    display: grid; grid-template-columns: repeat(var(--vpc-local-columns),minmax(0,1fr));
    gap: 28px 20px; margin: 0; font-size: 15px; line-height: 1.5;
}
.vpcinema .cactus-listing-config.style-2 > .cactus-sub-wrap:not(.slick-initialized):not(.isotope-ready)::before,
.vpcinema .cactus-listing-config.style-2 > .cactus-sub-wrap:not(.slick-initialized):not(.isotope-ready)::after { display: none; }
.vpcinema .cactus-listing-config.style-2 > .cactus-sub-wrap:not(.slick-initialized):not(.isotope-ready) > .cactus-post-item { width: auto; min-width: 0; float: none; padding: 0; margin: 0; display: block; }
.vpcinema .cactus-listing-config.style-2 > .cactus-sub-wrap:not(.slick-initialized):not(.isotope-ready) > :not(.cactus-post-item) { grid-column: 1 / -1; min-width: 0; }
.vpcinema .cactus-listing-config.style-2 .cactus-post-item > .entry-content { margin: 0; }
.vpcinema .cactus-listing-config.style-2 .cactus-post-item > .entry-content > .picture,
.vpcinema .cactus-listing-config.style-2 .cactus-post-item > .entry-content > .content { width: 100%; float: none; padding: 0; }
.vpcinema .cactus-listing-config.style-2 .cactus-post-item > .entry-content > .picture + .content { margin-top: 11px; }
.vpcinema .cactus-post-item .picture-content { border-radius: 8px; background: var(--vpc-surface); }
.vpcinema .cactus-post-item .picture-content > a { border-radius: 8px; }
.vpcinema .cactus-listing-config.style-2 .picture-content > a > img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; transition: filter .18s ease; }
.vpcinema .cactus-post-item .picture-content > a:hover > img { filter: brightness(1.09); }
.vpcinema .cactus-listing-config.style-2 .cactus-post-item > .entry-content .cactus-post-title { font-size: 15px; line-height: 1.5; font-weight: 600; margin: 0 0 8px; padding: 0; }
.vpcinema .cactus-post-item .cactus-post-title a { color: var(--vpc-text); text-decoration: none; }
.vpcinema .cactus-post-item .cactus-post-title a:hover { color: var(--vpc-accent); text-decoration: none; }
.vpcinema .cactus-listing-config.style-2 .cactus-post-title a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; }
.vpcinema .cactus-post-item .posted-on { font-size: 12px; line-height: 1.5; }
.vpcinema .cactus-post-item .posted-on a:hover { color: var(--vpc-accent); }
.vpcinema.vpcinema-compact .cactus-listing-config.style-2 .cactus-post-item .excerpt { display: none; }
.vpcinema .cactus-post-item .cactus-note { border-radius: 4px; background: rgba(5,10,19,.88); color: #fff; font-weight: 600; padding: 2px 6px; font-size: 11px; }
.vpcinema .cactus-post-item .cactus-note.ct-time { right: 7px; bottom: 7px; }
.vpcinema .cactus-post-item .excerpt { color: var(--vpc-muted); }

/* Single video: decorate the existing player shell without changing player geometry. */
.vpcinema .single-title { font-size: clamp(23px,2.3vw,32px); font-weight: 700; line-height: 1.4; overflow-wrap: anywhere; }
.vpcinema .cactus-post-format-video-wrapper { background-color: #050910; }
.vpcinema .video-toolbar { background-color: var(--vpc-surface); border-color: var(--vpc-border); }
.vpcinema .video-toolbar a { color: var(--vpc-text); }
.vpcinema .video-toolbar a:hover { color: var(--vpc-accent); }
.vpcinema .video-toolbar .ct-gradient, .vpcinema .btn-hidden-content .ct-gradient { background: var(--vpc-raised); color: var(--vpc-text); border-color: var(--vpc-border); }
.vpcinema .post-metadata { border-color: var(--vpc-border); padding-top: 10px; padding-bottom: 14px; }
.vpcinema .body-content { color: var(--vpc-text); }
.vpcinema .body-content table { width: 100%; border: 1px solid var(--vpc-border); background: var(--vpc-surface); }
.vpcinema .body-content table th, .vpcinema .body-content table td { border-color: var(--vpc-border); padding: 12px 16px; overflow-wrap: anywhere; }
.vpcinema .body-content table th { color: var(--vpc-muted); background: var(--vpc-raised); }
.vpcinema .body-content table tr:nth-child(even) td { background: rgba(255,255,255,.02); }
.vpcinema .categories.tags a, .vpcinema .tagcloud a { display: inline-block; background: var(--vpc-surface); border: 1px solid var(--vpc-border); color: var(--vpc-muted); border-radius: 5px; padding: 5px 10px; margin-bottom: 5px; }
.vpcinema .categories.tags a:hover, .vpcinema .tagcloud a:hover { color: var(--vpc-accent); border-color: var(--vpc-accent); }
.vpcinema .single-divider { background-color: var(--vpc-border); }
.vpcinema .single-post-heading { font-size: 22px; margin-top: 34px; margin-bottom: 22px; }
.vpcinema .single-about-author, .vpcinema .comment-list .comment-body { background: var(--vpc-surface); border-color: var(--vpc-border); color: var(--vpc-text); }
.vpcinema .comment-list, .vpcinema .comment-respond { color: var(--vpc-text); }
.vpcinema .comment-form input:not([type="submit"]):not([type="checkbox"]),
.vpcinema .comment-form textarea { background: var(--vpc-surface); color: var(--vpc-text); border: 1px solid var(--vpc-border); border-radius: 6px; }
.vpcinema .comment-form input[type="submit"] { background: var(--vpc-accent); color: #111827; border-radius: 6px; }
.vpcinema #body-wrap .body-content.hidden-content ~ .overlay-hidden-content { background: linear-gradient(0deg,var(--vpc-bg),rgba(17,24,39,0)); }

/* Widget and footer structure remains the parent's. */
.vpcinema .cactus-sidebar .widget-inner { background: var(--vpc-surface); border: 1px solid var(--vpc-border); border-radius: 8px; padding: 20px; }
.vpcinema .cactus-sidebar .widget-title { color: var(--vpc-text); border-color: var(--vpc-border); font-size: 18px; }
.vpcinema .cactus-sidebar .widget { color: var(--vpc-muted); }
.vpcinema .cactus-sidebar .widget a { color: var(--vpc-text); }
.vpcinema .cactus-sidebar .widget a:hover { color: var(--vpc-accent); }
.vpcinema #wrap > footer { margin-top: 38px; }
.vpcinema #wrap > footer .footer-inner, .vpcinema #wrap > footer .footer-info { background: var(--vpc-surface); color: var(--vpc-muted); border-top: 1px solid var(--vpc-border); }
.vpcinema #wrap > footer a { color: var(--vpc-muted); }
.vpcinema #wrap > footer a:hover { color: var(--vpc-accent); }
.vpcinema #gototop a { background: var(--vpc-raised); color: var(--vpc-text); border-radius: 8px; }

@media (max-width: 1199px) {
    .vpcinema .cactus-listing-config.style-2 { --vpc-local-columns: 3; }
    .vpcinema .sb-ct-medium .cactus-listing-config.style-2,
    .vpcinema .sb-ct-small .cactus-listing-config.style-2 { --vpc-local-columns: 2; }
}
@media (max-width: 767px) {
    .vpcinema #header-navigation .cactus-logo { padding-top: 15px; padding-bottom: 15px; }
    .vpcinema #header-navigation .cactus-logo img { max-height: 30px; max-width: 145px; }
    .vpcinema #header-navigation .cactus-header-search-form { padding-top: 15px; padding-bottom: 15px; }
    .vpcinema #header-navigation .cactus-header-search-form form { background: var(--vpc-surface); }
    .vpcinema .vpc-discover { padding: 28px 16px 24px; }
    .vpcinema .vpc-discover-description { font-size: 14px; margin-bottom: 18px; }
    .vpcinema .vpc-search { gap: 8px; padding-inline-start: 12px; }
    .vpcinema .vpc-search input[type="search"] { font-size: 16px; }
    .vpcinema .vpc-search button { padding: 11px 16px; font-size: 13px; }
    .vpcinema .vpc-browse-list { gap: 7px; }
    .vpcinema .vpc-browse-list a { font-size: 11px; padding: 6px 10px; }
    .vpcinema .cactus-listing-config.style-2,
    .vpcinema .sb-ct-medium .cactus-listing-config.style-2,
    .vpcinema .sb-ct-small .cactus-listing-config.style-2 { --vpc-local-columns: 2; }
    .vpcinema .cactus-listing-config.style-2 > .cactus-sub-wrap:not(.slick-initialized):not(.isotope-ready) { gap: 22px 12px; }
    .vpcinema .cactus-listing-config.style-2 .cactus-post-item > .entry-content .cactus-post-title { font-size: 13px; line-height: 1.45; }
    .vpcinema .cactus-post-item .posted-on { font-size: 11px; }
    .vpcinema .category-title { font-size: 23px; }
    .vpcinema .single-post-heading { font-size: 20px; }
    .vpcinema .body-content table th, .vpcinema .body-content table td { padding: 9px; }
}
@media (max-width: 359px) {
    .vpcinema .cactus-listing-config.style-2,
    .vpcinema .sb-ct-medium .cactus-listing-config.style-2,
    .vpcinema .sb-ct-small .cactus-listing-config.style-2,
    .vpcinema .sb-ct-medium.sb-ct-small .cactus-listing-config.style-2 { --vpc-local-columns: 1; }
    .vpcinema .vpc-search-icon { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .vpcinema .cactus-post-item .picture-content > a > img { transition: none; }
}
