body {
    font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
    background: #2e2d2d;
    color: #f4f4f4;
    font-size: 15px;
    margin: 0;
}
a {
    color: inherit;
    text-decoration: none;
}

/* 统一标题样式 */
h2, .section-title, .subcategory-title {
    font-weight: bold;
    font-size: 1.32rem;
    margin: 22px 0 16px;
    color: #f2f2f2;
    border-left: 4px solid #16d6cc;
    padding-left: 12px;
    letter-spacing: 1.2px;
    background: transparent;
}
@media (max-width: 600px) {
    h1 { font-size: 1.3rem; margin-bottom: 0.5em; }
    h2, .section-title { font-size: 1.08rem; padding-left: 9px; }
}

/* 视频卡片与图片 */
.video-card {
    background: #2e2d2d;
    border-radius: 7px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.13);
    overflow: hidden;
    margin-bottom: 14px;
    border: 1px solid #363535;
    transition: transform 0.2s;
}
.video-card:hover { transform: translateY(-4px) scale(1.03); }
.vod-thumb-box {
    width: 100%;
    aspect-ratio: 3 / 4;
    background: #232323;
    position: relative;
    overflow: hidden;
    border-radius: 7px 7px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.vod-thumb-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 7px 7px 0 0;
    background: #232323;
}

.vod-year-badge {
    position: absolute;
    top: 10px; right: 10px;
    font-size: 13px; font-weight: 700;
    min-width: 38px; height: 22px; padding: 1px 8px 0 8px;
    background: #16d6cc; color: #fff;
    border-radius: 11px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.18);
    text-align: center; line-height: 21px;
    z-index: 2; letter-spacing: 1px;
}
.video-title {
    background: #373637;
    color: #f4f4f4;
    font-size: 15px;
    border-radius: 0 0 7px 7px;
    text-align: center;
    margin: 0;
    padding: 8px 10px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: none;
}
@media (max-width: 767px) {
    .video-card, .video-title, .vod-thumb-box, .video-card img { border-radius: 5px; }
    .video-title { font-size: 14px; padding: 6px 6px 8px 6px; }
    .vod-year-badge {
        font-size: 12px; min-width: 32px; height: 18px;
        padding: 1px 7px 0 7px; top: 8px; right: 8px;
        border-radius: 9px; line-height: 16px;
    }
}

/* tag-list整体居中，按钮美化 */
.tag-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 22px;
    margin: 38px 0 30px 0;
    padding: 0;
}
@media (max-width: 767px) {
    .tag-list { gap: 12px 9px; }
}

/* 类型按钮 tag-btn */
.tag-btn {
    display: inline-block;
    padding: 9px 24px;
    font-size: 1.09rem;
    color: #f6f6f6;
    border-radius: 15px;
    border: 1px solid #444;
    transition: background .18s, color .18s, border-color .18s, box-shadow .2s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.10);
    font-weight: 500;
    letter-spacing: .2px;
    text-align: center;
    cursor: pointer;
    user-select: none;
    background: #262626;
    margin: 0;
}

.tag-btn:hover, .tag-btn:focus {
    color: #fff;
    box-shadow: 0 4px 16px rgba(22,214,204,0.14);
}
@media (max-width: 767px) {
    .tag-btn { padding: 7px 14px; font-size: 15px; border-radius: 11px; }
}

/* LOGO */
.logo {
    color: #efecea;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 1.5px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.14);
}

/* 搜索框、按钮美化 */
#searchBox input.form-control {
    background: #232323 !important;
    border: 1px solid #444 !important;
    color: #f6f6f6 !important;
    font-size: 16px;
}
#searchBox input.form-control::placeholder {
    color: #b2b2b2 !important; opacity: 1 !important;
}
#searchBox input.form-control:focus {
    background: #232323 !important;
    border-color: #16d6cc !important;
    color: #fff !important;
    box-shadow: 0 0 0 1.5px #16d6cc;
}
#searchBox .btn-search {
    background: #16d6cc;
    border: none;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    border-radius: 11px;
    min-width: 80px;
    min-height: 40px;
    padding: 0 18px;
    letter-spacing: 2px;
    line-height: 1.2;
    display: flex;
    align-items: center;
    justify-content: center;
}
#searchBox .btn-search:hover {
    background: #ffad3c;
    color: #fff;
}

/* 播放器和播放列表区域 */
.player-169 {
    position: relative;
    width: 100%;
    padding-top: 56.25%;   /* 16:9高宽比 */
    background: #111;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 1rem;
    box-shadow: 0 2px 10px #0004;
}
.player-169 > video, .player-169 > iframe {
    position: absolute;
    left: 0; top: 0;
    width: 100%; height: 100%;
    border: none;
    background: #000;
    display: block;
}
.playlist-panel {
    background: #333;
    border-radius: 12px;
    box-shadow: 0 2px 8px #0003;
    padding: 18px 20px;
    border: 1px solid #292828;
}
@media (max-width: 767px) {
    .playlist-panel { padding: 12px 6px; border-radius: 7px; }
}
.playlist-title {
    color: #faf6ef;
    font-size: 1.1em;
    letter-spacing: 1.2px;
    margin-bottom: 12px;
}
.btn-ep, .btn-ep-btn {
    background: #222;
    color: #fff;
    border: 1px solid #393939;
    border-radius: 7px;
    margin-bottom: 7px;
    margin-right: 7px;
    min-width: 85px;
    font-size: 15px;
    transition: background 0.16s, color 0.16s;
    padding: 5px 0;
    text-align: center;
    display: inline-block;
    font-weight: 500;
    box-shadow: 0 2px 8px #0001;
    align-items: center;
    justify-content: center;
}
.btn-ep.active, .btn-ep:active, .btn-ep:hover {
    background: #16d6cc;
    color: #191919;
    border-color: #16d6cc;
}
.btn-ep:disabled {
    background: #2a2929;
    color: #888;
    opacity: .68;
}
@media (max-width: 767px) {
    .btn-ep, .btn-ep-btn { font-size: 14px; min-width: 62px; padding: 4px 0; }
}

.video-info-panel {
    background: #333 !important;
    color: #eee;
    box-shadow: 0 2px 10px #0002;
}
.video-info-panel h1 {
    color: #fff;
    font-size: 1.3rem;
    font-weight: 400;
}

.row.g-2 {
    justify-content: center;
}

.site-footer {
    width: 100%;
    background: #232323;  /* 与顶部、卡片背景统一 */
    color: #bbb;
    padding: 32px 0 22px 0;
    margin-top: 48px;
    border-top: 1.5px solid #292929;
    box-shadow: 0 -2px 16px #0002;
}
.footer-inner {
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
    font-size: 15px;
    letter-spacing: 0.3px;
    color: #aaa;
}
.site-footer p {
    margin: 0;
    color: #aaa;
    font-size: 15px;
}
@media (max-width: 767px) {
    .site-footer { padding: 22px 0 12px 0; }
    .footer-inner { font-size: 13px; }
}

.vod-year-badge {
    font-size: 12px;
    opacity: 0.85;
    pointer-events: none;
}
.order-tabs {
    margin: 30px 0 24px 0;   /* 顶部拉下来距离加大 */
    padding: 0;
    display: flex;
    justify-content: center; /* 居中对齐 */
    gap: 22px;               /* 按钮间距大一些 */
}
.order-tabs a {
    color: #fff;
    background: #232323;
    padding: 5px 25px;
    border-radius: 20px;
    border: 2px solid #16d6cc;
    font-weight: 500;
    font-size: 17px;
    letter-spacing: 1px;
    transition: background .18s, color .18s, border-color .18s, box-shadow .2s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.10);
    text-decoration: none;
}
.order-tabs a.active,
.order-tabs a:hover {
    background: #16d6cc;
    color: #232323;
    border-color: #16d6cc;
}

/* tags标签区域 */
.tag-section {
    background: #333;
    border: 1px solid #3a3a3a;
}

.tag-title {
    color: #ffffff;
    font-size: 16px;
    margin-bottom: 12px;
}

.tag-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(30%, 1fr));
    gap: 12px;
}


.tag-btn:hover {
    background: transparent !important;
    color: #f0f0f0 !important;
    border-color: #555 !important;
    cursor: pointer;
}
