/* ============================================================
   🎨 BRAND COLOR SYSTEM — chỉ cần đổi --root-brand ở đây
   để cập nhật toàn bộ màu chủ đạo (badge, button, heading,
   underline, gradient, border, accent…) trên toàn site.
   ============================================================ */
:root {
    --root-brand:        #cf8f5f;  /* màu chủ đạo (light orange/tan) */
    --root-brand-light:  #d9a47a;  /* sáng hơn — hover light */
    --root-brand-dark:   #b87a4a;  /* đậm hơn — hover dark */
    --root-brand-2:      #e76824;  /* màu phụ (deep orange) — gradient stop, badge action */
    --root-brand-2-dark: #d35420;  /* hover của brand-2 */
    --root-brand-text:   #ffffff;  /* text trên nền brand */

    /* Override Flatsome variables để mọi rule có sẵn dùng motchil brand */
    --primary-color:        #cf8f5f;
    --fs-color-primary:     #cf8f5f;
    --fs-experimental-link-color-hover: #cf8f5f;
}

/* Heading + accent text */
.movie-title-detail,
h1.heading-font, h2.heading-font, h3.heading-font,
h4.heading-font, h5.heading-font, h6.heading-font {
    color: var(--root-brand);
}

/*section styles*/
.container .section, .row .section {
    padding-left: 15px !important;
    padding-right: 15px !important;
}
.col, .columns, .gallery-item {
    margin: 0;
    padding: 0 15px 30px !important;
    position: relative;
    width: 100%;
}

/* Stream */

#video-player {
    width: 100%;
    aspect-ratio: 16/9;
}
.server-buttons {
    margin: 0.75rem 0;
    text-align: center;
}
.server-button {
    font-size: 0.9rem;
    margin: 0 5px;
    background: #333;
    color: white;
    border: none;
    border-radius: 4px;   
    cursor: pointer;
    transition: background 0.3s ease;
}
.server-button:hover {
    background: #555;
}
/* ========== Movie Box Detail — Watch button ========== */
.movie-info__watch-button { width: 100%; margin-top: 10px; }
.movie-info__watch-button a.btn-watch-movie {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 10px 14px;
    background: linear-gradient(135deg, #e66621 0%, #ff8a3d 100%);
    color: #fff !important;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .3px;
    border-radius: 2px;
    text-decoration: none;
    text-transform: uppercase;
    transition: filter .18s ease, transform .18s ease, box-shadow .18s ease;
    box-shadow: 0 2px 10px rgba(230, 102, 33, .25);
}
.movie-info__watch-button a.btn-watch-movie:hover {
    filter: brightness(110%);
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(230, 102, 33, .4);
}
.movie-info__watch-button a.btn-watch-movie i { font-size: 12px; }

/* Profile Information */


.person-profile {
    background: #fff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    max-width: 800px;
    margin: 0 auto;
}

.person-header {
    display: flex;
    align-items: flex-start;
    gap: 24px;
    margin-bottom: 24px;
}

.person-avatar {
    width: 200px;
    height: 200px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.person-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.person-names {
    flex-grow: 1;
    padding-top: 8px;
}

.person-display-name {
    font-size: 2rem;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 8px 0;
}

.person-stage-name {
    font-size: 1.25rem;
    font-weight: 500;
    color: #666;
    margin: 0;
}

.person-bio {
    margin-bottom: 24px;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
}

.person-bio h3 {
    font-size: 1.25rem;
    color: #1a1a1a;
    margin: 0 0 12px 0;
}

.bio-content {
    color: #444;
    line-height: 1.6;
}

.person-info {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
}

.info-item {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #444;
}

.info-item i {
    width: 20px;
    color: #3498db;
}

.person-social {
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
}

.person-social h3 {
    font-size: 1.25rem;
    color: #1a1a1a;
    margin: 0 0 12px 0;
}

.social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.social-link {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    background: #fff;
    border-radius: 6px;
    color: #444;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.social-link:hover {
    background: #3498db;
    color: #fff;
    transform: translateY(-2px);
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    .person-profile {
        background: #1a1a1a;
    }

    .person-display-name {
        color: #fff;
    }

    .person-stage-name {
        color: #bbb;
    }

    .person-bio,
    .person-info,
    .person-social {
        background: #2d2d2d;
    }

    .person-bio h3,
    .person-social h3 {
        color: #fff;
    }

    .bio-content,
    .info-item {
        color: #bbb;
    }

    .social-link {
        background: #3d3d3d;
        color: #bbb;
    }

    .social-link:hover {
        background: #3498db;
        color: #fff;
    }
}

/* ============================================
   RESPONSIVE GRID SYSTEM
   Mobile-first approach
   col="5:3:2" = Desktop:Tablet:Mobile
   ============================================ */

/* Base grid class */
.grid {
    display: grid;
    grid-gap: 20px;
    /*width: 100%;*/
    grid-template-columns: repeat(2, 1fr);
}

/* Old movies-grid for backward compatibility 
.movies-grid {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: repeat(2, 1fr);
}*/

/* ========== Mobile First (XS) - Default < 768px ========== */
.grid.column-xs-1 { grid-template-columns: repeat(1, 1fr); }
.grid.column-xs-2 { grid-template-columns: repeat(2, 1fr); }
.grid.column-xs-3 { grid-template-columns: repeat(3, 1fr); }
.grid.column-xs-4 { grid-template-columns: repeat(4, 1fr); }
.grid.column-xs-5 { grid-template-columns: repeat(5, 1fr); }
.grid.column-xs-6 { grid-template-columns: repeat(6, 1fr); }

/* ========== Tablet (MD) >= 768px ========== */
@media (min-width: 768px) {
    .grid.column-md-1 { grid-template-columns: repeat(1, 1fr); }
    .grid.column-md-2 { grid-template-columns: repeat(2, 1fr); }
    .grid.column-md-3 { grid-template-columns: repeat(3, 1fr); }
    .grid.column-md-4 { grid-template-columns: repeat(4, 1fr); }
    .grid.column-md-5 { grid-template-columns: repeat(5, 1fr); }
    .grid.column-md-6 { grid-template-columns: repeat(6, 1fr); }
    .grid.column-md-7 { grid-template-columns: repeat(7, 1fr); }
    .grid.column-md-8 { grid-template-columns: repeat(8, 1fr); }
    .grid.column-md-9 { grid-template-columns: repeat(9, 1fr); }
    .grid.column-md-10 { grid-template-columns: repeat(10, 1fr); }
}

/* ========== Desktop (XL) >= 1024px ========== */
@media (min-width: 1024px) {
    .grid.column-xl-1 { grid-template-columns: repeat(1, 1fr); }
    .grid.column-xl-2 { grid-template-columns: repeat(2, 1fr); }
    .grid.column-xl-3 { grid-template-columns: repeat(3, 1fr); }
    .grid.column-xl-4 { grid-template-columns: repeat(4, 1fr); }
    .grid.column-xl-5 { grid-template-columns: repeat(5, 1fr); }
    .grid.column-xl-6 { grid-template-columns: repeat(6, 1fr); }
    .grid.column-xl-7 { grid-template-columns: repeat(7, 1fr); }
    .grid.column-xl-8 { grid-template-columns: repeat(8, 1fr); }
    .grid.column-xl-9 { grid-template-columns: repeat(9, 1fr); }
    .grid.column-xl-10 { grid-template-columns: repeat(10, 1fr); }
}

/* ========== Backward compatibility ========== */
@media (min-width: 560px) {
    .movies-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width: 768px) {
    .movies-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}




/* =======================================================
   MOVIE ITEM 1 — Card Style (dùng cho Meta Box View + search page + archive)
   Scope variables vào .movie-item-1 để không ảnh hưởng global
   ======================================================= */
.movie-item.movie-item-1 {
    --bg-card: #0f0f12;
    --bg-soft: #15161a;
    --text: #e9e9ee;
    --muted: #a6a8ad;
    --brand: #ffb300;
    --danger: #E76824;
    --chip: rgba(0, 0, 0, .55);
    --radius: 6px;
    --shadow: 0 6px 18px rgba(0, 0, 0, .35);

    width: 100%;
    background: var(--bg-card);
    border-radius: var(--radius);
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease;
    will-change: transform;
}

.movie-item.movie-item-1:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow);
}

/* Poster */
.movie-item-1 .movie-poster {
    position: relative;
    border-radius: calc(var(--radius) - 2px);
    overflow: hidden;
    background: var(--bg-soft);
    text-align: center;
    aspect-ratio: 2/3;
}
.movie-item-1 .movie-poster > a { display: block; width: 100%; height: 100%; }
.movie-item-1 .movie-poster img {
    width: 100%;
    height: 100%;
    aspect-ratio: 2/3;
    object-fit: cover;
    display: block;
    transition: filter .18s ease;
}
.movie-item-1:hover .movie-poster img { filter: brightness(1.06); }

.movie-item-1 .movie-no-image {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    background: var(--bg-soft); color: var(--muted);
}

/* Overlay Play */
.movie-item-1 .movie-overlay {
    position: absolute;
    inset: 0;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(transparent, rgba(0, 0, 0, .35) 60%);
    opacity: 0;
    transition: opacity .18s ease;
}
.movie-item-1 .movie-overlay .play-button { pointer-events: auto; display: block; }
.movie-item-1:hover .movie-overlay { opacity: 1; }
.movie-item-1 .play-button svg { width: 46px; height: 46px; }

/* Badges container */
.movie-item-1 .movie-badges {
    position: absolute;
    inset: 0;
    pointer-events: none;
}
/* Override Flatsome/WP default .badge width & box-sizing */
.movie-item-1 .badge {
    pointer-events: auto;
    user-select: none;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    box-sizing: content-box;
}

/* Badge: Episode (top-right) */
.movie-item-1 .badge-episode {
    position: absolute !important;
    top: 8px; right: 8px;
    background: var(--danger) !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 3px 7px !important;
    font-size: 11px !important; font-weight: 800 !important;
    display: inline-flex !important; align-items: center;
    white-space: nowrap;
    height: 22px; line-height: 1;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* Badge: Quality (top-left, dưới tag) */
.movie-item-1 .badge-quality {
    position: absolute !important;
    top: 8px; left: 8px;
    background: var(--chip) !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 3px 7px !important;
    font-size: 11px !important; font-weight: 800 !important;
    display: inline-flex !important; align-items: center;
    white-space: nowrap;
    height: 22px; line-height: 1;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* Badge: Tag (HOT/New) — ưu tiên top-left */
.movie-item-1 .badge-tag {
    position: absolute !important;
    top: 8px; left: 8px;
    background: var(--brand) !important;
    color: #000 !important;
    border-radius: 6px !important;
    padding: 3px 7px !important;
    font-size: 11px !important; font-weight: 800 !important;
    display: inline-flex !important; align-items: center;
    white-space: nowrap;
    height: 22px; line-height: 1;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
}
/* Khi cả tag + quality cùng có → quality xuống dưới */
.movie-item-1 .movie-badges > div:first-child .badge-tag + .badge-quality {
    top: 40px;
}

/* Info overlay — display:contents để 2 badge absolute vào poster */
.movie-item-1 .movie-info-overlay {
    position: static !important;
    background: none !important;
    padding: 0 !important;
    display: contents !important;
}

/* Badge: Rating (bottom-left) */
.movie-item-1 .badge-rating {
    position: absolute !important;
    bottom: 8px; left: 8px;
    background: rgba(0, 0, 0, .55) !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 4px 8px !important;
    font-size: 12px !important; font-weight: 800 !important;
    display: inline-flex !important; align-items: center; gap: 3px;
    white-space: nowrap;
    height: 25px; line-height: 1;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
}
.movie-item-1 .badge-rating svg { width: 12px; height: 12px; fill: var(--brand); }

/* Badge: Views (bottom-right) */
.movie-item-1 .badge-views {
    position: absolute !important;
    bottom: 8px; right: 8px;
    background: rgba(0, 0, 0, .55) !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 4px 8px !important;
    font-size: 12px !important; font-weight: 800 !important;
    display: inline-flex !important; align-items: center; gap: 3px;
    white-space: nowrap;
    height: 25px; line-height: 1;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
}
.movie-item-1 .badge-views svg { width: 12px; height: 12px; }

/* Content */
.movie-item-1 .movie-content { padding: 6px 4px 8px; text-align: center; }
.movie-item-1 .movie-title { margin: 0; }
.movie-item-1 .movie-title a {
    color: var(--text);
    text-decoration: none;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    max-height: calc(1.3em * 2);
}
.movie-item-1 .movie-title a:hover { color: var(--danger); }

.movie-item-1 .movie-original-title {
    margin-top: 4px;
    color: var(--muted);
    font-size: 12px; line-height: 1.25;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.movie-item-1 .movie-tags {
    margin-top: 5px;
    display: flex; gap: 6px;
    justify-content: center; flex-wrap: wrap;
}
.movie-item-1 .tag-category {
    color: var(--muted);
    background: #1b1d22;
    border-radius: 999px;
    padding: 2px 8px;
    font-size: 11px; line-height: 1;
}

@media (prefers-reduced-motion: reduce) {
    .movie-item.movie-item-1,
    .movie-item-1 .movie-poster img,
    .movie-item-1 .movie-overlay { transition: none !important; }
}

/* Movie Archive */



.movie-item {
    background: var(--fs-color-alert);
    border-radius: var(--border-radius);
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.movie-item:hover {
    transform: translateY(-5px);
}

.movie-poster {
    position: relative;
    aspect-ratio: 5/6;
    overflow: hidden;
}

.movie-poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.quality-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
}

.movie-meta {
    padding: 12px;
}

/* Pagination base — xem block đồng bộ phía dưới */

.movie-title {
    align-items: start;
    text-align: center;
    gap: 10px;
}
.movie-title a{
    margin: 0 0 5px 0;
    font-size: 1rem;
    line-height: 1.4;
    min-height: 2.8rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.movie-title a {
    text-decoration: none;
}

.movie-original-title {
    display: -webkit-box;
    font-size: 0.875rem;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ============================================
   PAGINATION — đồng bộ cho archive, search, category
   Bao phủ 3 cấu trúc:
   - .navigation.pagination .nav-links (WP default get_the_posts_pagination)
   - .woocommerce-pagination ul.page-numbers li (search.php dùng type='list')
   - .pagination .page-numbers (legacy)
   ============================================ */

/* Screen reader helper */
.screen-reader-text {
    position: absolute;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/* Container — căn giữa, margin thoáng */
.navigation.pagination,
.woocommerce-pagination,
.pagination {
    margin: 40px 0 30px;
    text-align: center;
    clear: both;
}

/* Bọc các nút vào thanh pill */
.navigation.pagination .nav-links,
.woocommerce-pagination > ul.page-numbers,
.pagination > .nav-links {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(6px);
    list-style: none;
    margin: 0;
}

/* Khi type='list' của paginate_links wraps <li> - reset li */
.woocommerce-pagination ul.page-numbers li {
    display: inline-flex;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    list-style: none;
}

/* Nút page chung */
.page-numbers {
    min-width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 8px;
    font-weight: 500;
    font-size: 14px;
    text-decoration: none !important;
    color: #e5e7eb;
    background: transparent;
    border: 1px solid transparent;
    transition: all 0.18s ease;
    line-height: 1;
    box-sizing: border-box;
}

/* Hover cho nút không phải current */
a.page-numbers:hover,
.woocommerce-pagination ul.page-numbers li a:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    transform: translateY(-1px);
}

/* Current page - highlight với brand color (root-brand) */
.page-numbers.current,
.woocommerce-pagination ul.page-numbers li span.current {
    background: var(--root-brand);
    color: var(--root-brand-text);
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(207, 143, 95, 0.4);
    cursor: default;
}

/* Dots "..." */
.page-numbers.dots {
    background: transparent;
    color: #9ca3af;
    cursor: default;
    letter-spacing: 2px;
    padding: 0 8px;
    min-width: auto;
}
.page-numbers.dots:hover {
    background: transparent !important;
    transform: none !important;
}

/* Prev / Next - rõ nét hơn */
.page-numbers.prev,
.page-numbers.next {
    padding: 0 16px;
    font-size: 13px;
    font-weight: 600;
    color: #d1d5db;
}
.page-numbers.prev:hover,
.page-numbers.next:hover {
    background: rgba(207, 143, 95, 0.15);
    color: #fff;
    border-color: rgba(207, 143, 95, 0.4);
}

/* Icon bên trong prev/next */
.page-numbers .icon-angle-left,
.page-numbers .icon-angle-right {
    font-size: 16px;
}

/* Ẩn prev/next text nếu chỉ có icon, giữ padding hợp lý */
.page-numbers.prev:has(.icon-angle-left:only-child),
.page-numbers.next:has(.icon-angle-right:only-child) {
    padding: 0;
    min-width: 40px;
}

/* Light-theme fallback khi site có nền sáng */
body:not(.dark-theme) .navigation.pagination .nav-links,
body:not(.dark-theme) .woocommerce-pagination > ul.page-numbers,
body:not(.dark-theme) .pagination > .nav-links {
    background: #fff;
    border-color: #e5e7eb;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}
body:not(.dark-theme) .page-numbers {
    color: #374151;
}
body:not(.dark-theme) a.page-numbers:hover {
    background: #f3f4f6;
    color: #111827;
}
body:not(.dark-theme) .page-numbers.prev,
body:not(.dark-theme) .page-numbers.next {
    color: #4b5563;
}

/* Responsive mobile */
@media (max-width: 640px) {
    .navigation.pagination,
    .woocommerce-pagination,
    .pagination {
        margin: 24px 0 16px;
    }
    .navigation.pagination .nav-links,
    .woocommerce-pagination > ul.page-numbers,
    .pagination > .nav-links {
        gap: 4px;
        padding: 4px;
        border-radius: 10px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .page-numbers {
        min-width: 36px;
        height: 36px;
        padding: 0 10px;
        font-size: 13px;
    }
    .page-numbers.prev,
    .page-numbers.next {
        padding: 0 12px;
    }
}



/* Episodes List */

.episodes-box {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
    margin: 20px 0;
}

.episodes-header {
    padding: 15px 20px;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.episodes-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
}

.total-episodes {
    color: #666;
    font-size: 14px;
}

.episodes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
    gap: 8px;
    padding: 15px;
    max-height: 150px;
    overflow-y: auto;
}

.episode-item {
    display: block;
    color: white;
    background: var(--primary-color);
    padding: 8px 5px;
    border-radius: 4px;
    text-align: center;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.episode-item:hover {
    /* Bỏ filter brightness — sẽ làm sáng màu brand thành cream nhạt.
       Background-color hover dùng var(--root-brand) ở episodes-list.php template. */
    transform: translateY(-1px);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.episode-item.active .episode-number {
    color: white;
}

.episode-number {
    font-weight: 600;
    font-size: 13px;
}

/* Scrollbar style */
.episodes-grid::-webkit-scrollbar {
    width: 6px;
}

.episodes-grid::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.episodes-grid::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 3px;
}

.episodes-grid::-webkit-scrollbar-thumb:hover {
    background: #999;
}

.thumbnail {
    aspect-ratio: 2 / 3;
    width: 100%;
    background-color: #888;
    border-radius: var(--border-radius);
}
/* Movie infomation */
   
   
/* ====================================================
   MOVIE BOX DETAIL — redesign dark + orange accent
   Palette: bg #14181f (card), border rgba(230,102,33,.18),
            text #e5e7eb, muted #9ca3af, accent #e66621 → #ff8a3d
   Bo 2px đồng bộ — phẳng, tối giản.
   ==================================================== */
.movie-box {
    display: flex;
    gap: 24px;
    padding: 22px;
    background: #0f0f12;
    border: 1px solid rgba(230, 102, 33, .18);
    border-radius: 2px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, .25);
    margin: 20px 0;
}

/* ---- Poster col ---- */
.movie-box-img {
    flex: 0 0 220px;
    max-width: 220px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0;
    padding: 0;
}
.movie-box-img .thumbnail,
.movie-box-img img {
    width: 100%;
    height: auto;
    aspect-ratio: 2/3;
    object-fit: cover;
    border-radius: 2px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, .5);
    transition: transform .3s ease, box-shadow .3s ease;
}
.movie-box-img:hover .thumbnail,
.movie-box-img:hover img {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(230, 102, 33, .25);
}

/* ---- Info col ---- */
.movie-info {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.movie-info__header {
    margin: 0;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.movie-title-detail {
    margin: 0 0 6px;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.25;
    color: #e66621;
    letter-spacing: .2px;
}
.movie-original-title {
    margin: 0;
    font-size: 15px;
    font-weight: 500;
    color: #9ca3af;
    font-style: italic;
}

/* ---- Status row — align giống table rows bên dưới ---- */
.movie-info__meta { margin: 0; }
.meta-item {
    display: flex;
    align-items: center;
    gap: 0;
    padding: 7px 0;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 500;
}
.meta-label {
    flex: 0 0 140px;
    max-width: 140px;
    padding: 0;
    margin: 0;
    color: #9ca3af;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    white-space: nowrap;
}
.meta-value { color: #e5e7eb; margin: 0; padding: 0; }
.status-badge {
    display: inline-block;
    background: linear-gradient(135deg, #e66621 0%, #ff8a3d 100%);
    color: #fff;
    padding: 4px 12px;
    border-radius: 2px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .3px;
    text-transform: uppercase;
    box-shadow: 0 2px 8px rgba(230, 102, 33, .3);
}

/* ---- Info table (meta rows) ---- */
.movie-info__tags { margin: 0; }
.movie-info-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}
.movie-info-table tr { border: 0; }
.movie-info-table th,
.movie-info-table td {
    padding: 7px 0;
    font-size: 14px;
    border: 0;
    vertical-align: top;
    line-height: 1.5;
}
.movie-info-table th.tag-section,
.movie-info-table .tag-section {
    width: 140px;
    white-space: nowrap;
    color: #9ca3af;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    text-align: left;
    padding: 7px 0;
    vertical-align: top;
    text-transform: none;
}
.movie-info-table .tag-section div { font-weight: 500; margin: 0; padding: 0; }
.movie-info-table td { color: #e5e7eb; }
.movie-info-table td a {
    color: #e5e7eb;
    text-decoration: none;
    transition: color .15s ease;
    border-bottom: 1px dashed transparent;
}
.movie-info-table td a:hover {
    color: #ff8a3d;
    border-bottom-color: rgba(255, 138, 61, .4);
}

/* ---- Stats bar (duration / quality / language) ---- */
.movie-info__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 20px;
    padding: 12px 0;
    margin: 0;
    border-top: 1px solid rgba(255, 255, 255, .08);
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.stat-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #cbd5e1;
    font-size: 13px;
    font-weight: 500;
}
.stat-item i {
    color: #e66621;
    font-size: 14px;
}

/* ---- Rating + Views ---- */
.movie-info__rating {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    gap: 12px;
    flex-wrap: wrap;
}
.rating-box { text-decoration: none; cursor: pointer; }
.rating {
    display: inline-flex;
    align-items: center;
    gap: 2px;
}
.rating .star {
    color: #4b5563;
    font-size: 20px;
    cursor: pointer;
    transition: color .12s ease, transform .12s ease;
    user-select: none;
    line-height: 1;
}
/* is-filled: paint state do JS quản lý (avg + hover preview) */
.rating .star.is-filled {
    color: #ffc107;
}
.rating .star:hover { transform: scale(1.15); }
.views-count {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #9ca3af;
    font-size: 13px;
}
.views-count i { color: #e66621; }
.views-count span { color: #e5e7eb; font-weight: 600; }

/* ---- Responsive ---- */
@media (max-width: 768px) {
    .movie-box {
        flex-direction: column;
        gap: 18px;
        padding: 16px;
    }
    .movie-box-img {
        flex: 0 0 auto;
        max-width: 180px;
        align-self: center;
    }
    .movie-title-detail { font-size: 22px; text-align: center; }
    .movie-original-title { text-align: center; }
    .movie-info-table th.tag-section { width: 110px; padding-right: 10px; font-size: 13px; }
    .movie-info-table td { font-size: 13px; }
    .meta-label { flex-basis: 110px; max-width: 110px; padding-right: 10px; font-size: 13px; }
    .meta-item { font-size: 13px; }
}

@media (max-width: 480px) {
    .movie-info-table,
    .movie-info-table tbody,
    .movie-info-table tr,
    .movie-info-table th,
    .movie-info-table td { display: block; width: 100%; }
    .movie-info-table tr { padding: 6px 0; border-bottom: 1px solid rgba(255, 255, 255, .06); }
    .movie-info-table tr:last-child { border-bottom: 0; }
    .movie-info-table th.tag-section { padding: 0 0 2px; color: #9ca3af; }
}



/* Category List */

.my-taxonomy-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    overflow-x: auto;
}

.my-taxonomy-list ul li {
    display: inline-block;
    margin: 0 0.5rem 0.5rem 0;
    margin-left: 0 !important;
}

.my-taxonomy-list ul li a {
    display: inline-block;
    background: var(--fs-color-secondary);
    padding: 0.5rem 1rem;
    border-radius: 15px;
    text-decoration: none;
    color: #333;
    transition: all 0.3s ease;
    font-weight: 500;
    white-space: nowrap;
}

.my-taxonomy-list ul li a:hover {
    filter: brightness(150%);
    color: #000;
}


/* Banner Movie */

/* Banner container */
.movie-banner {
    position: relative;
    width: 100%;
    overflow: hidden;
    text-align: center;
    background-color: #000;
    height: unset;
    aspect-ratio: 16/9;
}

/* Background image */
.movie-banner .movie-thumbnail {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0.8;
    aspect-ratio: 16/9;
}

/* Link around the title */
.movie-banner .movie-title-link {
    text-decoration: none;
}

/* Title style */
.movie-banner .movie-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 2em;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}

/* Not found message */
.movie-banner .movie-not-found {
    color: white;
    text-align: center;
    font-size: 1.2em;
    margin-top: 20px;
}
.mySlider img {
    width: 100%;
    max-height: 500px;
    object-fit: cover;
    object-position: center;
}
.movie-tag {
    margin: 0 0 5px 0;
    font-size: 1rem;
    line-height: 1.4;
    background-color: var(--fs-color-success);
    padding: 2px 4px;
    color: var(--fs-color-alert);
}
.rating-2::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22gold%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%20.587l3.668%207.431L24%209.753l-6%205.828L19.336%2024%2012%2019.879%204.664%2024%206%2015.581%200%209.753l8.332-1.735z%22%2F%3E%3C%2Fsvg%3E');
}
.rating-2 {
    color: #ffc107;
    display: flex
;
    align-items: center;
    gap: 5px;
}

.rating-wrapper {
    .rating-value {
        display: flex;
        align-items: center;
        gap: 5px;

        &::before {
            content: '';
            display: inline-block;
            width: 16px;
            height: 16px;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='%23ffc107'%3E%3Cpath d='M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain;
        }
    }
}

.view-count {
    span {
        display: flex;
        align-items: center;
        gap: 5px;

        &::before {
            content: '';
            display: inline-block;
            width: 18px;
            height: 18px;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='%23666666'%3E%3Cpath d='M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain;
        }
    }
}

.movie-meta-3 {
    position: absolute;
    /* z-index: 1; */
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(6, 6, 6, 0.55) 30%, rgba(0, 0, 0, 0.92) 100%);
    padding: 5px;
    width: 100%;
    color: #fff;
}
.movie-meta-3 .movie-title a{
    color: #fff;
    text-decoration: none;
}
.movie-meta-3 .movie-title {
    margin-bottom: 0;
}

/* item-1 */
.item-1 {
    .movie-stats {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        margin-bottom: 0;
    }
}

/* item 2 */
.item-2 {
    .movie-stats {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        margin-bottom: 0;
    }
}
/* item 3 */
.item-3 {
    .quality-badge {
        position: absolute;
        top: 0;
        right: 0;
        background: rgba(0, 0, 0, 0.7);
        color: #fff;
        padding: 0.25rem 0.5rem;
        border-radius: 0.125rem;
        font-size: 0.75rem;
    }
    .movie-tag {
        position: absolute;
        top: 0;
        left: 0;
        background: var(--fs-color-secondary);
        color: var(--fs-color-alert);
        padding: 0.125rem 0.25rem;
        border-radius: 0 0  0.25rem 0;
    }
    .movie-meta-3 {
        padding: 0;
        .movie-title {
            padding: 0 0.25rem;
            a {
                margin-bottom: 0;
            }
        }
    }
    .metric-box {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 0.5rem;
        margin-bottom: 0;
        background-color: #00000090;
        padding: 0.5rem;

        .movie-episode-last {
            a {
                color: #fff;
                text-decoration: none;
            }
        }
    }
}
/* item 4 */
.item-4 {
    background: unset;
    box-shadow: unset;

    .movie-tag {
        position: absolute;
        top: 0;
        left: 0;
        background: var(--fs-color-secondary);
        color: var(--fs-color-alert);
        padding: 0.125rem 0.25rem;
        border-radius: 0 0  0.25rem 0;
    }
    .movie-content-wrapper {
        display: flex;
        gap: 0.5rem;
        background: unset;
        border-radius: 8px;
    }

    .movie-poster {
        flex: 0 0 30%;
        max-width: 200px;
        position: relative;
        aspect-ratio: 2/3;
        .tag {
            position: absolute;
            top: 0;
            right: 0;
            background: var(--primary-color);
            color: #fff;
            padding: 2px 6px;
            border-radius: 0 0 0 4px;
            font-size: 0.75rem;
        }
        .quality-badge {
            position: absolute;
            top: 0;
            left: 0;
            right: unset;
            background: rgba(0,0,0,0.7);
            color: #fff;
            padding: 2px 6px;
            border-radius: 3px;
            font-size: 0.8rem;
        }
    }

    .movie-info {
        flex: 1;
        min-width: 0;
        padding: 0;

        .movie-title {
            margin: 0 0 10px;
            font-size: 1.25rem;
            line-height: 1.4;
            margin-bottom: 0;

            a {
                color: #333;
                text-decoration: none;
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden;
            }
        }

        .movie-original-title {
            color: #666;
            font-size: 0.9rem;
            margin-bottom: 10px;
        }

        .movie-stats {
            display: flex;
            align-items: center;
            gap: 1rem;
            margin-bottom: 0;

            .rating-wrapper,
            .view-count {
                display: flex;
                align-items: center;
                gap: 5px;
                color: #666;
            }

            .rating-wrapper i {
                color: #ffc107;
            }
        }

        .movie-tags {
            margin-bottom: 10px;

            .tag-label {
                color: #666;
                margin-right: 5px;
            }

            .tag-value {
                color: #2196f3;
            }
        }

        .episode-info {
            margin-top: 10px;

            .episode-status {
                display: inline-block;
                padding: 4px 8px;
                background: #e9ecef;
                border-radius: 4px;
                font-size: 0.9rem;
                color: #666;
            }
        }

        .mbutton {
            padding: 0.25rem .5rem;
            border-radius: 4px;
            background: var(--primary-color);
            color: #fff;
            text-decoration: none;
            font-size: 0.9rem;
            
        }
    }
}
/* banner movie */
.comic-banner-slider {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
}

.comic-banner-slider.swiper-initialized {
    opacity: 1;
    visibility: visible;
}

.comic-banner-slider .aspect-ratio-box {
    position: relative;
    width: 100%;
    padding-top: 40%;
    background: #f0f0f0;
    overflow: hidden;
}

.comic-banner-slider .aspect-ratio-box img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.comic-banner-slider .comic-info-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.4) 60%, rgba(0,0,0,0) 100%);
    padding: 4rem 2rem 2rem;
    color: #fff;
}

.comic-banner-slider .comic-title {
    color: #fff;
    margin: 0;
    font-size: clamp(1.2rem, 2.5vw, 2rem);
    font-weight: 700;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

.comic-banner-slider .comic-meta {
    margin: 1rem 0;
    display: flex;
    gap: 1.5rem;
    font-size: 0.9rem;
    opacity: 0.9;
}

.comic-banner-slider .comic-meta span {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.comic-banner-slider .comic-tags {
    margin: 1rem 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.comic-banner-slider .tag {
    background: rgba(255,255,255,0.2);
    padding: 0.3rem 0.8rem;
    border-radius: 50px;
    font-size: 0.8rem;
    transition: all 0.3s ease;
}

.comic-banner-slider .tag:hover {
    background: rgba(255,255,255,0.3);
}

.comic-banner-slider .comic-buttons {
    margin-top: 1.5rem;
    display: flex;
    gap: 1rem;
}

.comic-banner-slider .btn-watch,
.comic-banner-slider .btn-info {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.8rem 1.5rem;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s ease;
    font-weight: 600;
}

.comic-banner-slider .btn-watch {
    background: #ff6b6b;
    color: #fff;
}

.comic-banner-slider .btn-watch:hover {
    background: #ff5252;
    transform: translateY(-2px);
}

.comic-banner-slider .btn-info {
    background: rgba(255,255,255,0.2);
    color: #fff;
}

.comic-banner-slider .btn-info:hover {
    background: rgba(255,255,255,0.3);
    transform: translateY(-2px);
}

.comic-banner-slider .swiper-button-next,
.comic-banner-slider .swiper-button-prev {
    color: #fff;
    background: rgba(0,0,0,0.3);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    transform: translateZ(0);
}

.comic-banner-slider .swiper-button-next:after,
.comic-banner-slider .swiper-button-prev:after {
    font-size: 1.5rem;
}

.comic-banner-slider .swiper-pagination {
    position: absolute;
    bottom: 1rem !important;
    z-index: 2;
}

.comic-banner-slider .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #fff;
    opacity: 0.5;
    transition: all 0.3s ease;
}

.comic-banner-slider .swiper-pagination-bullet-active {
    opacity: 1;
    width: 20px;
    border-radius: 5px;
}

.comic-banner-slider .swiper-slide:not(:first-child) {
    display: none;
}

.comic-banner-slider.swiper-initialized .swiper-slide {
    display: block;
}

.comic-banner-slider .swiper-slide-active .comic-info-overlay {
    animation: slideUp 0.5s ease forwards;
}

@keyframes slideUp {
    from {
        transform: translateY(20px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@media (max-width: 768px) {
    .comic-banner-slider .comic-info-overlay {
        padding: 3rem 1rem 1rem;
    }

    .comic-banner-slider .comic-meta {
        flex-wrap: wrap;
        gap: 0.8rem;
        font-size: 0.8rem;
    }

    .comic-banner-slider .comic-buttons {
        flex-direction: column;
        gap: 0.5rem;
    }

    .comic-banner-slider .btn-watch,
    .comic-banner-slider .btn-info {
        display: none;
    }

    .comic-banner-slider .comic-title {
        font-size: 1.2rem;
    }
    
    .comic-banner-slider .swiper-button-next,
    .comic-banner-slider .swiper-button-prev {
        width: 36px;
        height: 36px;
    }
    
    .comic-banner-slider .swiper-button-next:after,
    .comic-banner-slider .swiper-button-prev:after {
        font-size: 1.2rem;
    }
}

@media print {
    .comic-banner-slider {
        display: none;
    }
}



.rank-math-breadcrumb {
    padding: 12px 0;
    
    p {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        margin: 0;
        font-size: 14px;
        color: #999;
    }

    a {
        color: #666;
        text-decoration: none;
        transition: color 0.2s ease;
        
        &:first-child {
            display: flex;
            align-items: center;
            
            &::before {
                content: '';
                display: inline-block;
                width: 14px;
                height: 14px;
                margin-right: 4px;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666666'%3E%3Cpath d='M12 2L2 12h3v8h6v-6h2v6h6v-8h3L12 2z'/%3E%3C/svg%3E");
                background-repeat: no-repeat;
                background-position: center;
                background-size: contain;
            }
        }

        &:hover {
            color: var(--root-brand) !important;
        }
    }

    .separator {
        margin: 0 10px;
        color: #d1d1d1;
        font-size: 16px;
        font-weight: 300;
        opacity: 0.8;
        position: relative;
        top: -1px;
        text-shadow: 0 1px 0 rgba(255,255,255,0.8);
    }

    .last {
        color: var(--root-brand) !important;
        font-weight: 500;
    }

    @media (max-width: 768px) {
        p {
            font-size: 13px;
        }
        
        .separator {
            margin: 0 8px;
            font-size: 14px;
        }
    }
}

/* Load more wrapper — kiểu nút "Xem thêm" gradient cam/đỏ, override rule cũ trong Customizer */
.load-more-wrapper {
    width: 25% !important;
    float: right !important;
    padding: 0 !important;
    border-radius: 20px !important;
    font-size: 14px !important;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 5%, var(--root-brand) 95%) !important;
    color: #fff !important;
    transition: .3s all !important;
    text-decoration: none !important;
    margin: 10px 0 0 0 !important;
    text-align: right !important;
    cursor: pointer !important;
    overflow: hidden !important;
}
.load-more-wrapper:hover {
    filter: brightness(1.35) !important;
    color: #fff !important;
    transition: .3s all !important;
}
/* Responsive: nút co theo kích thước màn hình, không xuống dòng */
.load-more-wrapper, .load-more-wrapper .btn-load-more {
    white-space: nowrap !important;
}
@media (max-width: 1024px) {
    .load-more-wrapper { width: 35% !important; }
}
@media (max-width: 768px) {
    .load-more-wrapper { width: 40% !important; }
}
@media (max-width: 480px) {
    .load-more-wrapper { width: 50% !important; }
}
/* Inner anchor/button: fill toàn wrapper để hover/click trải đều cả vùng gradient */
.load-more-wrapper .btn-load-more,
.load-more-wrapper > a,
.load-more-wrapper > button {
    display: block !important;
    width: 100% !important;
    padding: 4px 12px !important;
    margin: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    color: inherit !important;
    font: inherit !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    border: 0 !important;
    border-radius: inherit !important;
    box-shadow: none !important;
    transform: none !important;
    text-decoration: none !important;
    text-align: right !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}
.load-more-wrapper .btn-load-more:hover,
.load-more-wrapper > a:hover,
.load-more-wrapper > button:hover {
    background: transparent !important;
    background-color: transparent !important;
    color: inherit !important;
    transform: none !important;
    box-shadow: none !important;
}
/* Ẩn watermark logo trên video player — user yêu cầu xóa logo SUBNHANH */
.video-watermark,
.video-watermark-m3u8,
.video-watermark-m3u8-single {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* ============================================================
   🎨 BRAND OVERRIDES — Map các element CTA về var brand
   (override Flatsome Customizer + theme defaults — đặt cuối
   file để win cascade với Customizer inline CSS)
   ============================================================ */

/* Badges (FULL, FHD, Tập X/X, Hot Corner) — dùng brand-2 (cam đậm) */
.badge-episode,
.badge-hot-corner,
.meta-episode,
.badge-quality,
.badge-tag {
    background: var(--root-brand-2) !important;
    color: var(--root-brand-text) !important;
}

/* Watch button (XEM PHIM) — gradient brand-2 */
.movie-info__watch-button a.btn-watch-movie {
    background: linear-gradient(135deg, var(--root-brand-2) 0%, var(--root-brand-light) 100%) !important;
}
.movie-info__watch-button a.btn-watch-movie:hover {
    box-shadow: 0 4px 16px rgba(231, 104, 36, .4) !important;
}

/* Status badges (HOÀN THÀNH, ĐANG CHIẾU) — dùng brand-2 */
.movie-info__status-completed,
.movie-info__status-ongoing,
.movie-status-badge {
    background: var(--root-brand-2) !important;
    color: var(--root-brand-text) !important;
}

/* Tab active (HOT NGÀY / TUẦN / THÁNG / NĂM ở Bảng Xếp Hạng) — sidebar dùng brand 1 */
.nav-pills > li.active > a,
.nav-pills > li > a:hover,
.nav-tabs > li.active > a,
.tabs-active > li > a {
    background: var(--root-brand) !important;
    color: var(--root-brand-text) !important;
}

/* Sidebar item-4 (BẢNG XẾP HẠNG) — badges dùng brand 1 thay vì brand 2 */
.movie-item.movie-item-4 .meta-episode,
.movie-item.movie-item-4 .badge-hot-corner,
.movie-item-4 .meta-episode,
.movie-item-4 .badge-hot-corner {
    background: var(--root-brand) !important;
    color: var(--root-brand-text) !important;
}
.movie-item.movie-item-4 .meta-rating,
.movie-item-4 .meta-rating {
    color: var(--root-brand) !important;
}
.movie-item.movie-item-4 .meta-rating svg,
.movie-item-4 .meta-rating svg {
    fill: var(--root-brand) !important;
}

/* Play button (vòng tròn play khi hover lên thumbnail item-4) */
.movie-thumbnail-horizontal .play-button-small,
.movie-overlay-horizontal .play-button-small {
    background: var(--root-brand) !important;
}
.movie-thumbnail-horizontal .play-button-small:hover,
.movie-overlay-horizontal .play-button-small:hover {
    transform: scale(1.08) !important;
    background: var(--root-brand-dark) !important;
}

/* Server / Source button khi active */
.server-button.active,
.server-source.active,
.episode-item.active {
    background: var(--root-brand-2) !important;
    color: var(--root-brand-text) !important;
}

/* Heading + accent text — brand chính (cam-vàng) */
.title-underline::after {
    background: linear-gradient(to right, var(--root-brand), rgba(207, 143, 95, 0)) !important;
}

/* Header top-level nav — chỉ highlight khi user THỰC SỰ hover.
   KHÔNG dùng .active/.current vì WP auto-apply cho mọi menu item match category
   của post hiện tại (phim 2-3 category → 2-3 top-level items bị highlight cùng lúc). */
.header-nav-main.nav > li > a:hover {
    color: var(--root-brand) !important;
}

/* Reset highlight cho top-level items có .active/.current-* (WP auto-apply) — Flatsome
   default highlight các class này. Override để chỉ giữ khi hover. */
.header-nav-main.nav > li.active > a:not(:hover),
.header-nav-main.nav > li.current > a:not(:hover),
.header-nav-main.nav > li.current-menu-item > a:not(:hover),
.header-nav-main.nav > li.current-menu-parent > a:not(:hover),
.header-nav-main.nav > li.current-menu-ancestor > a:not(:hover),
.header-nav-main.nav > li.current-post-ancestor > a:not(:hover),
.header-nav-main.nav > li.current-post-parent > a:not(:hover) {
    color: #ffffff !important;
}

/* Dropdown menu — hover item background (Flatsome Customizer hardcoded #E66723).
   CHỈ highlight khi user THỰC SỰ hover — KHÔNG dùng .active vì WordPress auto-apply
   class active/current-* cho mọi menu item match category của post hiện tại
   (phim 4 category → 4 item bị highlight đồng thời). */
.nav-dropdown.dark > li > a:hover,
.nav-dropdown > li > a:hover {
    background-color: var(--root-brand) !important;
    color: var(--root-brand-text) !important;
}

/* Reset highlight cho các class WP tự gán (active / current-menu-parent /
   current-post-ancestor / current-menu-ancestor) trong dropdown — chỉ giữ
   highlight khi hover. */
.nav-dropdown > li.active > a:not(:hover),
.nav-dropdown > li.current-menu-item > a:not(:hover),
.nav-dropdown > li.current-menu-parent > a:not(:hover),
.nav-dropdown > li.current-menu-ancestor > a:not(:hover),
.nav-dropdown > li.current-post-ancestor > a:not(:hover),
.nav-dropdown > li.current-post-parent > a:not(:hover),
.nav-dropdown.dark > li.active > a:not(:hover),
.nav-dropdown.dark > li.current-menu-item > a:not(:hover),
.nav-dropdown.dark > li.current-menu-parent > a:not(:hover),
.nav-dropdown.dark > li.current-menu-ancestor > a:not(:hover),
.nav-dropdown.dark > li.current-post-ancestor > a:not(:hover),
.nav-dropdown.dark > li.current-post-parent > a:not(:hover) {
    background-color: transparent !important;
    color: rgba(255, 255, 255, 0.85) !important;
}

/* Dropdown box border (4 cạnh — đây là cái khung dropdown) */
.nav .nav-dropdown {
    border-color: var(--root-brand) !important;
}

/* Mũi tên dropdown (:before là tam giác — chỉ đổi border-bottom-color,
   giữ 3 cạnh kia transparent. Set border-color sẽ phá tam giác thành hình vuông) */
.nav-dropdown-has-arrow.nav-dropdown-has-border li.has-dropdown:before {
    border-bottom-color: var(--root-brand) !important;
}

/* Heading colors — !important để win Flatsome Customizer hardcoded rule */
h1, h2, h3, h4, h5, h6,
.heading-font,
.banner h1, .banner h2 {
    color: var(--root-brand) !important;
}

/* ============================================================
   💬 wpDiscuz — đồng bộ màu brand
   ============================================================ */
/* Submit button "Đăng bình luận" — selector specificity cao để win wpDiscuz inline */
body .wpd-prim-button,
body input[type="submit"].wc_comm_submit,
body input[type="submit"].wpd-prim-button,
body input.wc_comm_submit,
body input.wpd-prim-button,
body .wc_comm_submit,
body .wpd-load-more-submit,
.wpd-form-foot input[type="submit"],
.wpd-form-foot button[type="submit"],
input.wpd-form-button {
    background: var(--root-brand) !important;
    background-color: var(--root-brand) !important;
    background-image: none !important;
    color: var(--root-brand-text) !important;
    border-color: var(--root-brand) !important;
}
body .wpd-prim-button:hover,
body input[type="submit"].wc_comm_submit:hover,
body input[type="submit"].wpd-prim-button:hover,
body input.wc_comm_submit:hover,
body input.wpd-prim-button:hover,
body .wc_comm_submit:hover,
body .wpd-load-more-submit:hover,
.wpd-form-foot input[type="submit"]:hover,
.wpd-form-foot button[type="submit"]:hover {
    background: var(--root-brand-dark) !important;
    background-color: var(--root-brand-dark) !important;
    border-color: var(--root-brand-dark) !important;
}

/* Rating number "0" */
.wpd-rating-value,
.wpd-rating-result,
#wpd-post-rating-wrap .wpd-rating-value {
    color: var(--root-brand) !important;
}

/* Stars (active/hover) — wpDiscuz dùng SVG hoặc icon font với color */
.wpd-rating-stars .wpd-star-active,
.wpd-rating-stars .wpd-star:hover,
.wpd-rating-stars-active,
.wpdiscuz-rating .star-rating-on,
.wpdiscuz-rating .wpd-rated {
    color: var(--root-brand) !important;
}

/* Active tab + vote */
.wpd-active-tab,
.wpd-tab.wpd-active,
.wpd-tabs .wpd-active {
    color: var(--root-brand) !important;
    border-bottom-color: var(--root-brand) !important;
}

/* Vote links khi active (like/dislike) */
.wpd-active.wc-vote-link,
.wc-vote-link.wpd-active,
.wpd_label__check {
    color: var(--root-brand) !important;
}

/* Reply / Edit / Quote button hover trong comment */
.wc-reply-button:hover,
.wc-edit-button:hover,
.wpd-quote-comment:hover,
.wpd-reply-button:hover {
    color: var(--root-brand) !important;
}

/* Ẩn icon person/email trong input "Tên*", "Email*" — đang đè lên placeholder.
   Reset padding-left để placeholder hiển thị bình thường. */
#wpdcom .wpd-form-row .wpdiscuz-item .wpd-field-icon,
#wpdcom .wpd-form-row .wpd-has-icon .wpd-field-icon {
    display: none !important;
}
#wpdcom .wpd-form-row .wpd-has-icon .wpd-field {
    padding-left: 12px !important;
}

/* Footer menu hover — KHÔNG dùng --fs-experimental-link-color-hover (= var brand đậm,
   trên nền đen nhìn invisible). Dùng --root-brand-light (sáng hơn) + force visible. */
.footer-wrapper a,
.footer-wrapper .ux-menu-link__link .ux-menu-link__text,
footer a,
footer .ux-menu-link__link .ux-menu-link__text {
    color: rgba(255, 255, 255, 0.7);
    transition: color .2s ease;
}
.footer-wrapper a:hover,
.footer-wrapper .ux-menu-link__link:hover .ux-menu-link__text,
footer a:hover,
footer .ux-menu-link__link:hover .ux-menu-link__text {
    color: var(--root-brand-light) !important;
    opacity: 1 !important;
}

/* Sidebar heading + tab — fix wrap khi col width hẹp (medium-3, large-3 = 25%) */
.col.medium-3 .title-underline,
.col.large-3 .title-underline {
    font-size: 15px !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.col.medium-3 .nav-pills > li > a,
.col.large-3 .nav-pills > li > a {
    font-size: 10px !important;
    padding: 3px 6px !important;
    white-space: nowrap !important;
    letter-spacing: 0 !important;
}
.col.medium-3 .nav-pills,
.col.large-3 .nav-pills {
    flex-wrap: nowrap !important;
    gap: 3px;
}
