:root{
  --main:#6d5dfc;
  --accent:#22d3ee;
  --bg:#0f1020;
  --text:#e8eaf6;
  --card-bg:#1a1c2e;
  --border:#2e3050;
  --shadow:8px 8px 0 rgba(0,0,0,0.6);
}
*{font-family:'Inter',system-ui,-apple-system,sans-serif;}
body{background:var(--bg);color:var(--text);margin:0;padding:0;font-size:14px;line-height:1.5;}
h1,h2,h3,h4,.serif{font-family:'Source Han Serif SC','Songti SC',serif;font-weight:800;}
a{color:inherit;text-decoration:none;}
.brand-text{font-weight:900;font-size:1.6rem;letter-spacing:-0.5px;color:var(--text);}
.brand-text i{color:var(--accent);margin-right:6px;}
.navbar-dark{background-color:rgba(15,16,32,0.85)!important;backdrop-filter:blur(8px);border-bottom:2px solid var(--main);}
.navbar-toggler{border:2px solid var(--accent);}
.nav-link{font-weight:600;color:var(--text)!important;margin:0 10px;transition:0.2s;}
.nav-link:hover{color:var(--accent)!important;border-bottom:2px solid var(--accent);}
.btn-outline-accent{border:2px solid var(--accent);color:var(--accent);font-weight:700;border-radius:0!important;}
.btn-outline-accent:hover{background:var(--accent);color:#0f1020;}
.tag-cloud{display:flex;flex-wrap:wrap;gap:12px;padding:20px 0;justify-content:center;border-bottom:2px solid var(--border);margin-bottom:20px;}
.tag-cloud span{background:var(--card-bg);border:2px solid var(--border);padding:6px 16px;font-weight:600;box-shadow:4px 4px 0 #000;color:var(--text);}
.tag-cloud span i{color:var(--accent);margin-right:6px;}
.section-title{font-size:1.8rem;font-weight:800;border-left:8px solid var(--main);padding-left:16px;margin:30px 0 20px;letter-spacing:-0.5px;text-transform:uppercase;}
.section-title i{color:var(--accent);margin-right:10px;}
.card-movie{background:var(--card-bg);border:2px solid var(--border);border-radius:0!important;box-shadow:6px 6px 0 rgba(0,0,0,0.5);transition:transform .2s ease, box-shadow .2s ease;overflow:hidden;height:100%;cursor:pointer;}
.card-movie:hover{transform:translateY(-6px);box-shadow:12px 12px 0 rgba(0,0,0,0.8);border-color:var(--accent);}
.movie-poster{position:relative;aspect-ratio:2/3;background:#0b0d1a;overflow:hidden;}
.movie-poster img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.card-movie:hover .movie-poster img{transform:scale(1.05);}
.gradient-overlay{position:absolute;inset:0;background:linear-gradient(to top, rgba(15,16,32,0.85) 0%, transparent 50%);}
.play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--main);color:#fff;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:0;font-size:1.4rem;opacity:0;transition:0.2s;border:2px solid #fff;}
.card-movie:hover .play-icon{opacity:1;}
.card-body{padding:12px;}
.movie-title{font-weight:700;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.movie-meta{font-size:0.75rem;color:#a0a5c0;display:flex;justify-content:space-between;margin-top:5px;}
.movie-rating{color:var(--accent);font-weight:700;}
.badge-type{background:var(--main);color:#fff;padding:2px 8px;font-size:0.65rem;border-radius:0;}
.hot-badge{background:#ff5e7a;color:white;padding:2px 8px;font-size:0.65rem;border-radius:0;}
.list-rank{display:flex;align-items:center;gap:12px;background:var(--card-bg);border:2px solid var(--border);padding:8px 12px;margin-bottom:8px;box-shadow:3px 3px 0 #000;}
.list-rank .rank-num{font-size:1.6rem;font-weight:900;color:var(--main);width:40px;text-align:center;}
.list-rank .rank-title{flex:1;font-weight:600;}
.list-rank .rank-score{color:var(--accent);font-weight:700;}
.rank-block{background:rgba(15,16,32,0.8);padding:15px;border:2px solid var(--border);}
.faq-item{background:var(--card-bg);border:2px solid var(--border);padding:20px;margin-bottom:15px;box-shadow:4px 4px 0 #000;}
.faq-item h5{color:var(--accent);font-weight:700;}
.friend-links{background:var(--card-bg);border-top:2px solid var(--main);padding:20px 0;margin-top:40px;border-bottom:2px solid var(--border);}
.friend-links a{color:var(--accent);margin:0 12px;font-weight:500;}
.footer-note{background:#0b0d1a;padding:20px;border-top:2px solid var(--border);color:#8e93b0;}
.steps-row{display:flex;flex-wrap:wrap;gap:15px;margin:20px 0;}
.step-item{flex:1 1 180px;background:var(--card-bg);border:2px solid var(--border);padding:15px;box-shadow:4px 4px 0 #000;}
.step-num{font-size:2rem;font-weight:900;color:var(--main);}
.hero-scroll{max-height:300px;overflow-y:auto;padding-right:5px;}
::-webkit-scrollbar{width:8px;background:#0b0d1a;}
::-webkit-scrollbar-thumb{background:var(--main);border:1px solid var(--border);}
.anchor-target{padding-top:80px;margin-top:-80px;}
.movie-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;}
@media (max-width:576px){.movie-grid{grid-template-columns:repeat(2,1fr);gap:12px;}.brand-text{font-size:1.2rem;}}

/* --- 子页面追加 --- */
/* 本页专属少量样式 */
        .about-hero {
            padding: 80px 0 60px;
            position: relative;
        }
.about-hero h1 {
            font-size: 2.6rem;
            font-weight: 800;
            color: var(--text);
            margin-bottom: 20px;
            position: relative;
            display: inline-block;
        }
.about-hero h1::after {
            content: '';
            position: absolute;
            bottom: -10px;
            left: 0;
            width: 60px;
            height: 4px;
            background: linear-gradient(90deg, var(--main), var(--accent));
            border-radius: 2px;
        }
.about-hero .lead {
            font-size: 1.1rem;
            color: rgba(232, 234, 246, 0.8);
            max-width: 700px;
            line-height: 1.8;
        }
.about-section {
            padding: 40px 0;
        }
.about-section h2 {
            font-size: 1.7rem;
            font-weight: 700;
            color: var(--accent);
            margin-bottom: 25px;
            position: relative;
            padding-left: 20px;
        }
.about-section h2::before {
            content: '';
            position: absolute;
            left: 0;
            top: 5px;
            bottom: 5px;
            width: 4px;
            background: linear-gradient(180deg, var(--main), var(--accent));
            border-radius: 2px;
        }
.about-section p {
            color: var(--text);
            line-height: 1.9;
            font-size: 1.02rem;
            opacity: 0.92;
            margin-bottom: 20px;
        }
.about-section ul {
            padding-left: 20px;
            margin-bottom: 20px;
        }
.about-section ul li {
            color: var(--text);
            line-height: 1.9;
            font-size: 1.02rem;
            opacity: 0.92;
            margin-bottom: 10px;
            position: relative;
            padding-left: 10px;
        }
.about-section ul li::before {
            content: '▸';
            color: var(--accent);
            margin-right: 10px;
            font-weight: 700;
        }
.about-card {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 12px;
            padding: 35px;
            height: 100%;
            box-shadow: var(--shadow);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
.about-card:hover {
            transform: translateY(-6px);
            box-shadow: 0 12px 24px rgba(0, 0, 0, 0.4);
        }
.about-card .icon-circle {
            width: 65px;
            height: 65px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 26px;
            margin-bottom: 20px;
            background: linear-gradient(135deg, var(--main), var(--accent));
            color: #fff;
        }
.about-card h3 {
            font-size: 1.25rem;
            font-weight: 700;
            color: var(--text);
            margin-bottom: 15px;
        }
.about-card p {
            color: rgba(232, 234, 246, 0.85);
            font-size: 0.95rem;
            line-height: 1.75;
        }
.feature-list {
            margin-top: 10px;
        }
.feature-list li {
            font-size: 0.95rem;
            margin-bottom: 8px;
            opacity: 0.9;
        }
.stats-row {
            margin-top: 50px;
            padding: 40px 0;
            border-top: 1px solid var(--border);
            border-bottom: 1px solid var(--border);
        }
.stat-item {
            text-align: center;
            padding: 20px;
        }
.stat-number {
            font-size: 2.5rem;
            font-weight: 900;
            color: var(--accent);
            display: block;
            margin-bottom: 5px;
        }
.stat-label {
            color: var(--text);
            opacity: 0.8;
            font-size: 1rem;
        }
.timeline-wrap {
            padding: 20px 0;
        }
.timeline-item {
            position: relative;
            padding-left: 30px;
            margin-bottom: 30px;
        }
.timeline-item::before {
            content: '';
            position: absolute;
            left: 0;
            top: 8px;
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: var(--main);
            border: 3px solid var(--accent);
        }
.timeline-item::after {
            content: '';
            position: absolute;
            left: 6px;
            top: 28px;
            bottom: -20px;
            width: 2px;
            background: var(--border);
        }
.timeline-item:last-child::after {
            display: none;
        }
.timeline-item h4 {
            color: var(--text);
            font-size: 1.15rem;
            font-weight: 600;
            margin-bottom: 8px;
        }
.timeline-item p {
            font-size: 0.95rem;
            opacity: 0.85;
            margin-bottom: 0;
        }
.about-hero h1 { font-size: 1.9rem; }
.about-section h2 { font-size: 1.4rem; }
.stat-number { font-size: 2rem; }
.about-card { padding: 25px; }

/* --- 子页面追加 --- */
/* 本页专属样式(少量) */
    .disclaimer-section {
      background: var(--card-bg);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 2rem;
      margin-bottom: 1.5rem;
      box-shadow: var(--shadow);
    }
.disclaimer-section h2 {
      color: var(--accent);
      font-size: 1.4rem;
      font-weight: 700;
      margin-bottom: 1rem;
      display: flex;
      align-items: center;
      gap: 0.5rem;
    }
.disclaimer-section h2 i {
      color: var(--main);
    }
.disclaimer-section p, .disclaimer-section li {
      color: var(--text);
      line-height: 1.8;
      font-size: 0.95rem;
      opacity: 0.9;
    }
.disclaimer-section ul {
      padding-left: 1.2rem;
    }
.disclaimer-section li {
      margin-bottom: 0.5rem;
    }
.disclaimer-highlight {
      background: rgba(109, 93, 252, 0.1);
      border-left: 4px solid var(--main);
      padding: 1rem 1.2rem;
      border-radius: 0 8px 8px 0;
      margin: 1.5rem 0;
    }
.disclaimer-highlight p {
      margin-bottom: 0;
      color: var(--accent);
      font-weight: 500;
    }
.disclaimer-date {
      text-align: right;
      color: var(--text);
      opacity: 0.6;
      font-size: 0.9rem;
      margin-top: 2rem;
      font-style: italic;
    }
.disclaimer-section {
        padding: 1.2rem;
      }

/* --- 子页面追加 --- */
/* 高燃动作页专属小调整 */
        .hero-hot {
            background: radial-gradient(circle at 20% 30%, rgba(109, 93, 252, 0.2) 0%, transparent 60%), var(--bg);
            border-bottom: 1px solid var(--border);
            padding: 3.5rem 0 2.5rem;
        }
.hero-hot .display-5 {
            font-weight: 800;
            letter-spacing: -0.02em;
        }
.hot-tagline {
            color: var(--accent);
            font-weight: 600;
            letter-spacing: 0.3px;
        }
.rank-number {
            font-size: 2.2rem;
            font-weight: 900;
            color: var(--accent);
            text-shadow: 2px 2px 0 rgba(0,0,0,0.4);
            line-height: 1;
        }
.fire-divider {
            height: 2px;
            background: linear-gradient(90deg, transparent, var(--main), var(--accent), transparent);
            opacity: 0.6;
            margin: 1.2rem 0 2rem;
        }
.list-badge {
            background: rgba(109, 93, 252, 0.15);
            color: var(--accent);
            border: 1px solid var(--main);
            border-radius: 30px;
            padding: 0.2rem 1rem;
            font-size: 0.8rem;
            font-weight: 600;
            display: inline-block;
        }
.action-stats {
            display: flex;
            gap: 1.5rem;
            flex-wrap: wrap;
            margin-top: 1.5rem;
            color: var(--text);
            opacity: 0.8;
            font-size: 0.9rem;
        }
.action-stats i {
            color: var(--accent);
            margin-right: 5px;
        }
/* 重火力区卡片 */
        .blast-card {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 16px;
            padding: 1.5rem;
            height: 100%;
            transition: all 0.2s ease;
            box-shadow: var(--shadow);
        }
.blast-card:hover {
            transform: translateY(-3px);
            border-color: var(--main);
        }
.blast-card h4 {
            font-weight: 700;
            color: var(--text);
        }
.blast-card .meta-icon {
            color: var(--accent);
            font-size: 1.8rem;
            margin-bottom: 0.8rem;
        }
/* 火线排行 */
        .fire-list-item {
            background: rgba(26, 28, 46, 0.6);
            border-left: 3px solid var(--main);
            padding: 1rem 1.2rem;
            border-radius: 0 12px 12px 0;
            margin-bottom: 0.8rem;
            backdrop-filter: blur(2px);
        }
.fire-list-item .title {
            font-weight: 600;
            color: var(--text);
        }
.fire-list-item .year {
            color: var(--accent);
            font-size: 0.85rem;
            margin-left: 10px;
        }
.fire-list-item .score {
            font-weight: 700;
            color: #facc15;
            margin-left: auto;
        }
.hero-hot { padding: 2.2rem 0 1.5rem; }

/* --- 子页面追加 --- */
/* 覆盖 Bootstrap 卡片默认白底 —— 与首页深色保持一致 */
    .card, .card-body {
      background: var(--card-bg);
      color: var(--text);
      border: 1px solid var(--border);
    }
.card-title, .card-text {
      color: var(--text);
    }
.list-group-item {
      background: var(--card-bg);
      color: var(--text);
      border-color: var(--border);
    }
/* 榜单编号徽章 */
    .top-badge {
      background: var(--main);
      color: #fff;
      font-weight: 700;
      min-width: 2.2rem;
      text-align: center;
      border-radius: 6px;
      padding: 0.15rem 0.5rem;
    }
.top-badge.accent {
      background: var(--accent);
      color: #0f1020;
    }
/* 小标题统一风格 */
    .section-title {
      display: flex;
      align-items: center;
      gap: 0.6rem;
      font-weight: 800;
      border-left: 4px solid var(--accent);
      padding-left: 0.9rem;
    }
/* 卡片悬停微动效 */
    .top-movie-card {
      transition: transform 0.2s ease, box-shadow 0.2s;
    }
.top-movie-card:hover {
      transform: translateY(-3px);
      box-shadow: 0 12px 20px -8px rgba(0,0,0,0.7);
    }
/* 页脚区域保持原有 */
    .footer-note a {
      color: var(--accent);
    }
/* 豆瓣标签 */
    .douban-tag {
      background: rgba(109, 93, 252, 0.18);
      color: #c5bdfe;
      border: 1px solid #4d3f9e;
      font-size: 0.75rem;
      padding: 0.2rem 0.7rem;
      border-radius: 30px;
      display: inline-block;
    }

/* --- 子页面追加 --- */
/* 本页专属微调，保持整体风格 */
    .update-hero { padding: 3rem 0 1rem; }
.update-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 1.5rem; }
.time-badge { background: var(--accent); color: #0f1020; font-weight: 700; font-size: .75rem; padding: .2rem .7rem; border-radius: 30px; display: inline-block; margin-bottom: .5rem; letter-spacing: .5px; }
.movie-meta i { color: var(--accent); margin-right: 3px; }
.friend-links a:hover { opacity: 1; color: var(--accent); }
.nav-link.active { color: var(--accent) !important; font-weight: 700; }

/* --- 子页面追加 --- */
.anime-hero { background: linear-gradient(135deg, rgba(109,93,252,0.15) 0%, rgba(34,211,238,0.1) 100%); border: 1px solid var(--border); border-radius: 16px; padding: 3rem 2rem; margin-bottom: 2.5rem; position: relative; overflow: hidden; }
.anime-hero::before { content: '🍥'; position: absolute; font-size: 8rem; right: 5%; top: 50%; transform: translateY(-50%); opacity: 0.08; }
.anime-hero h1 { color: var(--accent); font-weight: 800; margin-bottom: 1rem; }
.anime-hero p { color: var(--text); opacity: 0.85; max-width: 600px; }
.anime-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1.5rem; }
.anime-category { color: var(--accent); font-weight: 700; margin-bottom: 0.5rem; display: block; }
.anime-tag { display: inline-block; background: rgba(109,93,252,0.15); color: var(--accent); border: 1px solid var(--border); border-radius: 20px; padding: 0.2rem 0.8rem; margin: 0.2rem; font-size: 0.8rem; }
.anime-rank-item { display: flex; align-items: center; gap: 1rem; padding: 0.8rem 0; border-bottom: 1px solid var(--border); }
.anime-rank-item:last-child { border-bottom: none; }
.anime-rank-num { background: var(--main); color: #fff; width: 30px; height: 30px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 0.9rem; flex-shrink: 0; }
.anime-rank-item:nth-child(1) .anime-rank-num { background: #ffd700; }
.anime-rank-item:nth-child(2) .anime-rank-num { background: #c0c0c0; }
.anime-rank-item:nth-child(3) .anime-rank-num { background: #cd7f32; }
.anime-feature { background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px; padding: 1.5rem; margin-bottom: 1.5rem; transition: transform 0.3s; }
.anime-feature:hover { transform: translateY(-4px); }
.anime-feature i { color: var(--accent); font-size: 2rem; margin-bottom: 1rem; }
.anime-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }

/* --- 子页面追加 --- */
/* 本页专属微调 —— 确保与站点风格完全一致，并且覆盖Bootstrap组件默认白底 */
    body {
      background-color: var(--bg);
      color: var(--text);
      font-family: 'Inter', sans-serif;
    }
/* 覆盖 Bootstrap 卡片等组件的默认白底 */
    .card, .card-body {
      background-color: var(--card-bg) !important;
      color: var(--text) !important;
      border-color: var(--border) !important;
    }
/* 列表组 & 手风琴 颜色覆盖 */
    .list-group-item, .accordion-item, .accordion-button {
      background-color: var(--card-bg) !important;
      color: var(--text) !important;
      border-color: var(--border) !important;
    }
.accordion-button:not(.collapsed) {
      background-color: rgba(109, 93, 252, 0.2) !important;
      color: var(--accent) !important;
    }
.accordion-button:focus {
      box-shadow: none;
    }
/* 导航链接颜色微调 */
    .navbar .nav-link {
      color: var(--text) !important;
    }
.navbar .nav-link:hover,
    .navbar .nav-link.active {
      color: var(--accent) !important;
    }
/* 电影卡片悬浮效果 */
    .card-movie {
      transition: transform 0.2s ease, box-shadow 0.2s ease;
      border: 1px solid var(--border);
      background: var(--card-bg);
      box-shadow: var(--shadow);
    }
.section-title span {
      color: var(--accent);
    }
.tag-cloud a {
      display: inline-block;
      background: var(--card-bg);
      border: 1px solid var(--border);
      padding: 0.2rem 1rem;
      border-radius: 30px;
      font-size: 0.8rem;
      margin-right: 0.5rem;
      margin-bottom: 0.5rem;
      color: var(--text);
      text-decoration: none;
      transition: 0.2s;
    }
.tag-cloud a:hover {
      border-color: var(--accent);
      color: var(--accent);
    }

/* --- Bootstrap 组件配色适配(程序自动补,避免白底黑字) --- */
.accordion-body { background:transparent !important; color:#e8eaf6 !important; }
.accordion-header { background:transparent !important; }
