/* retro模板样式 - 复古暗红风格 */
/* 全局reset和基础 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    background: #1a0808;
    color: #ccbbaa;
    font-family: "Microsoft YaHei", "SimSun", "宋体", Arial, sans-serif;
    font-size: 13px;
    line-height: 1.4;
}

a {
    color: #e09060;
    text-decoration: none;
}

a:hover {
    color: #ff6633;
    text-decoration: underline;
}

img {
    display: block;
    border: 0;
}

/* 整体包裹 */
.zhan_wrap {
    width: 100%;
    min-height: 100vh;
}

/* 公告滚动条 */
.gg_bar {
    background: #2a0a0a;
    border-bottom: 1px solid #4a1010;
    padding: 4px 10px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.gg_label {
    color: #cc2222;
    font-weight: bold;
    white-space: nowrap;
    margin-right: 8px;
    font-size: 12px;
}

.gn_text {
    flex: 1;
    overflow: hidden;
    height: 18px;
}

.gn_inner {
    white-space: nowrap;
    color: #aa8866;
    font-size: 12px;
    /* CSS animation实现marquee效果 */
    display: inline-block;
    animation: gn_scroll 28s linear infinite;
}

@keyframes gn_scroll {
    0%   { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}

/* 顶部标题栏 */
.top_bar {
    background: linear-gradient(to bottom, #3a0808, #220505);
    border-bottom: 2px solid #8b1a1a;
    padding: 10px 0;
}

.top_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.logo_box {
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex-shrink: 0;
}

.logo_link {
    display: flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
}

.logo_link:hover {
    text-decoration: none;
}

.logo_icon {
    color: #cc2222;
    font-size: 22px;
}

.logo_text {
    color: #ffffff;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 1px;
    text-shadow: 1px 1px 3px #000;
}

.logo_sub {
    color: #887766;
    font-size: 11px;
}

/* 搜索框区域 */
.sou_box {
    flex: 1;
    max-width: 400px;
}

.sou_box form {
    display: flex;
}

.sou_input {
    flex: 1;
    background: #0e0404;
    border: 1px solid #5a1a1a;
    border-right: none;
    color: #ddccbb;
    padding: 6px 8px;
    font-size: 13px;
    outline: none;
}

.sou_input:focus {
    border-color: #8b1a1a;
    background: #150505;
}

.sou_input::placeholder {
    color: #665544;
}

.sou_btn {
    background: linear-gradient(to bottom, #aa1111, #7a0808);
    border: 1px solid #5a1a1a;
    color: #ffffff;
    padding: 6px 14px;
    font-size: 13px;
    cursor: pointer;
    white-space: nowrap;
}

.sou_btn:hover {
    background: linear-gradient(to bottom, #cc2222, #991111);
}

/* 大搜索框（搜索页用） */
.sou_input_lg {
    font-size: 14px;
    padding: 8px 10px;
}

/* 搜索面板 */
.sou_panel {
    padding: 10px;
}

.sou_panel form {
    display: flex;
    max-width: 500px;
}

.sou_tip {
    margin-top: 8px;
    color: #887766;
    font-size: 12px;
}

/* 主导航 */
.dh_bar {
    background: linear-gradient(to bottom, #550e0e, #3a0808);
    border-bottom: 1px solid #6a1a1a;
}

.dh_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 10px;
    display: flex;
    flex-wrap: wrap;
}

.dh_link {
    display: inline-block;
    color: #ddbbaa;
    padding: 8px 12px;
    font-size: 13px;
    text-decoration: none;
    border-right: 1px solid #4a1010;
}

.dh_link:hover {
    background: #6a1a1a;
    color: #ffffff;
    text-decoration: none;
}

.dh_link.dh_act {
    background: #8b1a1a;
    color: #ffffff;
    font-weight: bold;
}

/* 主内容包裹 */
.nr_wrap {
    max-width: 980px;
    margin: 10px auto;
    padding: 0 10px;
}

.nr_box {
    width: 100%;
}

/* 模块盒子（lm_box：列表模块） */
.lm_box {
    background: #1e0a0a;
    border: 1px solid #3a1010;
    margin-bottom: 10px;
}

/* 模块标题栏 */
.lm_title {
    background: linear-gradient(to right, #5a1010, #3a0808);
    border-bottom: 1px solid #4a1010;
    color: #ffffff;
    font-size: 13px;
    font-weight: bold;
    padding: 6px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.lm_icon {
    color: #cc4444;
    margin-right: 5px;
}

.lm_more {
    color: #aa7755;
    font-size: 12px;
    font-weight: normal;
}

.lm_more:hover {
    color: #ff9966;
    text-decoration: none;
}

/* 小图列表（tp_list：图片列表） */
.tp_list {
    display: flex;
    flex-wrap: wrap;
    padding: 8px;
    gap: 8px;
}

.tp_item {
    width: 120px;
    flex-shrink: 0;
}

.tp_link {
    display: block;
    text-decoration: none;
}

.tp_link:hover .tp_name {
    color: #ff9966;
}

.tp_img_wrap {
    position: relative;
    width: 120px;
    height: 80px;
    overflow: hidden;
    background: #0e0404;
    border: 1px solid #3a1010;
}

.tp_img {
    width: 120px;
    height: 80px;
    object-fit: cover;
}

.tp_img_none {
    width: 120px;
    height: 80px;
    background: #200808;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #442222;
    font-size: 11px;
}

/* 图片角标：状态 */
.tp_badge {
    position: absolute;
    top: 0;
    right: 0;
    background: #cc2222;
    color: #fff;
    font-size: 10px;
    padding: 1px 4px;
    line-height: 16px;
}

/* 图片角标：年份 */
.tp_year {
    position: absolute;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,0.7);
    color: #ddbbaa;
    font-size: 10px;
    padding: 1px 4px;
    line-height: 16px;
}

.tp_info {
    padding: 3px 2px 0;
}

.tp_name {
    color: #ddccbb;
    font-size: 12px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 1.5;
}

.tp_meta {
    color: #776655;
    font-size: 11px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 1.4;
}

.tp_desc {
    color: #887766;
    font-size: 11px;
    line-height: 1.4;
    max-height: 30px;
    overflow: hidden;
}

/* 分类页列表（宽图模式） */
.tp_list_cat .tp_item {
    width: 140px;
}

.tp_list_cat .tp_img_wrap,
.tp_list_cat .tp_img {
    width: 140px;
    height: 95px;
}

.tp_list_cat .tp_img_none {
    width: 140px;
    height: 95px;
}

/* 最新更新表格（lb_list：列表表格） */
.lb_list {
    width: 100%;
    border-collapse: collapse;
}

.lb_th {
    background: #2a0808;
    color: #aa8877;
    font-size: 12px;
    font-weight: normal;
    padding: 5px 8px;
    border-bottom: 1px solid #3a1010;
    border-right: 1px solid #2e0e0e;
    text-align: left;
}

.lb_th_time { width: 90px; }
.lb_th_type { width: 70px; }
.lb_th_name { }
.lb_th_remark { width: 70px; }
.lb_td_type { }
.lb_td_name { }
.lb_td_remark { }

.lb_tr_odd { background: #1e0a0a; }
.lb_tr_even { background: #1a0808; }

.lb_tr:hover td {
    background: #280d0d;
}

.lb_td {
    padding: 4px 8px;
    border-bottom: 1px solid #2a0e0e;
    border-right: 1px solid #250a0a;
    font-size: 12px;
    vertical-align: middle;
}

.lb_td_time { color: #776655; }

.lb_cat {
    color: #cc6633;
    font-size: 11px;
}

.lb_cat:hover { color: #ff9966; }

.lb_cat_none { color: #443322; }

/* bt_link：片名链接 */
.bt_link {
    color: #ddccbb;
}

.bt_link:hover {
    color: #ff9966;
    text-decoration: none;
}

.lb_year {
    color: #665544;
    font-size: 11px;
    margin-left: 3px;
}

.lb_remark {
    color: #cc4422;
    font-size: 11px;
}

.lb_remark_none { color: #443322; }

/* 面包屑（ml_box：面包屑导航） */
.ml_box {
    background: #1a0808;
    border: 1px solid #3a1010;
    padding: 6px 10px;
    margin-bottom: 8px;
    font-size: 12px;
    color: #776655;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}

.ml_item {}

.ml_link {
    color: #cc6633;
}

.ml_link:hover { color: #ff9966; }

.ml_sep { color: #553322; }

.ml_cur {
    color: #ccbbaa;
    font-weight: bold;
}

.ml_total {
    margin-left: 8px;
    color: #665544;
}

/* 筛选条（sx_box：筛选框） */
.sx_box {
    background: #1e0a0a;
    border: 1px solid #3a1010;
    padding: 6px 10px;
    margin-bottom: 8px;
}

.sx_row {
    display: flex;
    align-items: flex-start;
    margin-bottom: 5px;
    flex-wrap: wrap;
}

.sx_row:last-child { margin-bottom: 0; }

.sx_label {
    color: #aa8866;
    width: 40px;
    flex-shrink: 0;
    padding-top: 2px;
    font-size: 12px;
}

.sx_list {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.sx_chip {
    display: inline-block;
    padding: 2px 8px;
    border: 1px solid #3a1010;
    background: #150505;
    color: #aa9988;
    font-size: 12px;
    line-height: 1.6;
}

.sx_chip:hover {
    background: #3a1010;
    color: #ffffff;
    text-decoration: none;
}

.sx_chip.sx_act {
    background: #8b1a1a;
    border-color: #aa2222;
    color: #ffffff;
}

/* 空内容提示（kong_box） */
.kong_box {
    padding: 20px 16px;
    color: #776655;
    text-align: center;
    font-size: 13px;
}

/* 翻页（fy_box：翻页框） */
.fy_box {
    background: #1a0808;
    border: 1px solid #3a1010;
    padding: 8px 10px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}

.fy_link {
    display: inline-block;
    padding: 3px 10px;
    border: 1px solid #4a1010;
    background: #220808;
    color: #ccbbaa;
    font-size: 12px;
}

.fy_link:hover {
    background: #5a1010;
    color: #ffffff;
    text-decoration: none;
}

.fy_link.fy_act {
    background: #8b1a1a;
    border-color: #aa2222;
    color: #ffffff;
    font-weight: bold;
}

.fy_info {
    color: #665544;
    font-size: 12px;
    margin-left: 10px;
}

/* 详情页布局（xq：详情） */
.xq_layout {
    display: flex;
    gap: 12px;
    padding: 10px;
    align-items: flex-start;
}

.xq_poster {
    flex-shrink: 0;
}

.xq_pic {
    width: 120px;
    height: 160px;
    object-fit: cover;
    border: 1px solid #3a1010;
}

.xq_pic_none {
    width: 120px;
    height: 160px;
    background: #200808;
    border: 1px solid #3a1010;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #443322;
    font-size: 12px;
}

.xq_info {
    flex: 1;
}

.xq_table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.xq_table tr:nth-child(odd) {
    background: #1e0a0a;
}

.xq_table tr:nth-child(even) {
    background: #1a0808;
}

.xq_key {
    color: #aa8866;
    padding: 4px 8px;
    white-space: nowrap;
    width: 60px;
    border-right: 1px solid #2a0e0e;
    border-bottom: 1px solid #220a0a;
    vertical-align: top;
}

.xq_val {
    color: #ccbbaa;
    padding: 4px 8px;
    border-bottom: 1px solid #220a0a;
    word-break: break-all;
    vertical-align: top;
}

.xq_val strong {
    color: #ffffff;
}

.xq_status {
    color: #cc4422;
}

/* 播放器区域（bf：播放） */
.bf_stage {
    background: #000;
    padding: 0;
    position: relative;
}

/* video-player兼容main.js的class */
.video-player {
    display: block;
}

.bf_player {
    width: 100%;
    max-height: 480px;
    background: #000;
    display: block;
}

.bf_fallback {
    display: block;
    text-align: center;
    padding: 12px;
    background: #1e0a0a;
    color: #cc6633;
    border-top: 1px solid #3a1010;
    font-size: 13px;
}

.bf_empty {
    text-align: center;
    padding: 40px 20px;
    color: #665544;
    background: #0e0404;
}

.bf_empty strong {
    display: block;
    color: #aa8866;
    margin-bottom: 6px;
}

.bf_empty span {
    font-size: 12px;
}

/* 选集按钮（jj：集集） */
.jj_box {
    padding: 8px 10px;
    border-top: 1px solid #2a0e0e;
}

.jj_title {
    color: #aa8866;
    font-size: 12px;
    margin-bottom: 6px;
}

.jj_list {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.jj_btn {
    background: #220808;
    border: 1px solid #4a1010;
    color: #ccbbaa;
    padding: 4px 10px;
    font-size: 12px;
    cursor: pointer;
    line-height: 1.4;
}

.jj_btn:hover {
    background: #4a1010;
    color: #ffffff;
}

.jj_btn.jj_act {
    background: #8b1a1a;
    border-color: #cc2222;
    color: #ffffff;
    font-weight: bold;
}

/* 剧情简介（jq：剧情） */
.jq_text {
    padding: 10px 12px;
    color: #aa9988;
    font-size: 13px;
    line-height: 1.7;
}

/* 底部SEO文字区 */
.bt_seo {
    background: #140606;
    border-top: 2px solid #3a1010;
    padding: 16px 0 10px;
}

.bt_seo_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 10px;
}

.bt_seo_title {
    color: #aa8866;
    font-weight: bold;
    margin-bottom: 8px;
    font-size: 13px;
}

.bt_seo_text {
    color: #665544;
    font-size: 12px;
    line-height: 1.8;
    margin-bottom: 10px;
}

.bt_nav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.bt_nav .bt_link {
    color: #7a5533;
    font-size: 12px;
    border-right: 1px solid #3a1010;
    padding-right: 6px;
}

.bt_nav .bt_link:hover {
    color: #cc6633;
}

/* 版权信息 */
.copy_bar {
    background: #0e0404;
    border-top: 1px solid #2a0a0a;
    padding: 8px 0;
}

.copy_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 10px;
    color: #443322;
    font-size: 11px;
    text-align: center;
}

/* 响应式：窄屏适配 */
@media (max-width: 700px) {
    .top_inner {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    .logo_box {
        justify-content: center;
    }

    .sou_box {
        max-width: 100%;
    }

    .dh_inner {
        padding: 0;
    }

    .dh_link {
        padding: 7px 9px;
        font-size: 12px;
    }

    .nr_wrap {
        padding: 0 6px;
    }

    .tp_item {
        width: 100px;
    }

    .tp_img_wrap,
    .tp_img {
        width: 100px;
        height: 67px;
    }

    .tp_img_none {
        width: 100px;
        height: 67px;
    }

    .tp_list_cat .tp_item,
    .tp_list_cat .tp_img_wrap,
    .tp_list_cat .tp_img,
    .tp_list_cat .tp_img_none {
        width: 110px;
        height: 74px;
    }

    .xq_layout {
        flex-direction: column;
    }

    .xq_poster {
        align-self: center;
    }

    .lb_th_time,
    .lb_td_time {
        display: none;
    }

    .lb_th_remark,
    .lb_td_remark {
        display: none;
    }

    .bf_player {
        max-height: 240px;
    }
}

/* 精彩影评区块 */
.yw_text {
    background: #200808;
    border: 1px solid #5a1a1a;
    border-left: 3px solid #cc2222;
    padding: 14px 16px;
    font-size: 14px;
    line-height: 1.9;
    color: #ccbbaa;
}

/* 折叠按钮样式 */
.filter-toggle-btn { display:inline-block; margin:6px 0 4px; padding:4px 14px; font-size:12px; cursor:pointer; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.15); border-radius:4px; color:#aaa; }
.filter-toggle-btn:hover { color:#fff; border-color:rgba(255,255,255,0.3); }