:root{
  --primary:#e50914;
  --accent:#f5c518;
  --bg:#0b0b0f;
  --text:#f5f5f7;
  --border-w:3px;
  --hard-shadow:8px 8px 0 rgba(0,0,0,0.9);
}
*{border-radius:0 !important;}
body{
  background-color: var(--bg);
  color: var(--text);
  font-family: 'Noto Sans SC', 'Inter', sans-serif;
  line-height: 1.75;
}
h1,h2,h3,h4,.serif{
  font-family: 'Noto Serif SC', 'Inter', serif;
  font-weight: 700;
  letter-spacing: 0.5px;
}
a{text-decoration: none; color: inherit;}
img{max-width:100%; display:block;}
/* 直角粗边框硬阴影 */
.card-hard{
  border: var(--border-w) solid #1f1f2e;
  box-shadow: var(--hard-shadow);
  background-color:#14141f;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.card-hard:hover{
  transform: translateY(-6px) scale(1.02);
  box-shadow: 12px 12px 0 rgba(0,0,0,0.9);
}
/* 导航 */
.navbar-qiuxia{
  background: #0b0b0fcc;
  backdrop-filter: blur(6px);
  border-bottom: var(--border-w) solid #2a2a3a;
  padding: 0.8rem 0;
}
.navbar-qiuxia .navbar-brand{
  font-family:'Noto Serif SC',serif;
  font-weight:900;
  font-size: 1.8rem;
  color: var(--accent);
  letter-spacing: 2px;
}
.navbar-qiuxia .nav-link{
  color: #e0e0e0;
  font-weight:500;
  margin:0 0.5rem;
  border-bottom: 3px solid transparent;
}
.navbar-qiuxia .nav-link:hover{color: var(--accent); border-color: var(--accent);}
/* hero */
.hero-parallax{
  background: linear-gradient(135deg, rgba(0,0,0,0.6), rgba(0,0,0,0.8)), url("{随机图片}") center 30%/cover fixed;
  min-height: 65vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-bottom: var(--border-w) solid var(--primary);
}
.tagcloud{ max-width: 900px; text-align:center; }
.tagcloud span{
  display: inline-block;
  background: rgba(20,20,31,0.8);
  border: 2px solid #3f3f56;
  padding: 0.35rem 1.2rem;
  margin: 0.4rem;
  font-weight: 600;
  font-size: 1.1rem;
  transition: 0.15s;
  color: #ddd;
}
.tagcloud span:hover{ background: var(--primary); color: white; border-color: var(--primary); }
/* 通用区块 */
.section-title{
  font-size: 2rem;
  margin: 2.5rem 0 1.5rem;
  border-left: 10px solid var(--primary);
  padding-left: 1rem;
  display: inline-block;
  font-weight: 800;
}
.separator{ border-bottom: 2px dashed #2e2e40; margin: 2rem 0;}
/* 影片卡片 */
.movie-card{
  background:#14141f;
  border: var(--border-w) solid #23233a;
  box-shadow: var(--hard-shadow);
  transition: 0.2s;
  height: 100%;
  cursor: pointer;
  position: relative;
}
.movie-card:hover{ transform: translateY(-8px); box-shadow: 12px 12px 0 var(--primary);}
.movie-card .card-img-wrap{ position:relative; overflow:hidden; border-bottom: 3px solid #2e2e42;}
.movie-card .badge-quality{
  position:absolute; top:8px; right:8px;
  background:#000; color: var(--accent);
  font-weight:700; padding:2px 8px; border:1px solid var(--accent);
  font-size:0.8rem;
}
.movie-card .card-body{padding:1rem;}
.movie-card .movie-title{font-size:1.15rem; font-weight:700;}
.rating{color: var(--accent); font-weight:800; font-size:1.1rem;}
/* 标签页切换 */
.tab-pane{ background:#10101a; padding:1.2rem; border:3px solid #2c2c44; }
.nav-tabs-custom .nav-link{
  background: #1e1e2e; color:#ccc; border:3px solid #31314a;
  margin-right:0.4rem; font-weight:600;
}
.nav-tabs-custom .nav-link.active{
  background: var(--primary); color:#fff; border-color:var(--primary);
}
/* 时间线 */
.timeline{ border-left: 4px solid var(--accent); padding-left: 1.5rem; margin-left: 0.5rem;}
.timeline-item{ position:relative; padding-bottom: 1.2rem; }
.timeline-item::before{ content:""; position:absolute; left:-1.8rem; top:0.3rem; width:12px; height:12px; background:var(--primary); border:2px solid var(--accent);}
/* 数字滚动 */
.stat-number{ font-size: 2.8rem; font-weight:900; color: var(--accent);}
/* 底部抽屉弹窗 */
.drawer-overlay{position:fixed; inset:0; background:rgba(0,0,0,0.7); z-index:1050; opacity:0; visibility:hidden; transition:0.3s;}
.drawer-overlay.show{opacity:1; visibility:visible;}
.drawer-panel{position:fixed; bottom:0; left:0; width:100%; background:#1b1b28; border-top:6px solid var(--primary); z-index:1060; transform:translateY(100%); transition:0.4s; padding:1.5rem; max-height:70vh; overflow-y:auto; box-shadow:0 -10px 30px rgba(0,0,0,0.6);}
.drawer-overlay.show .drawer-panel{ transform: translateY(0);}
.btn-close-qs{ background: var(--primary); border:0; color:#fff; font-size:1.5rem; padding:0 10px;}
/* 友链区 */
.friend-links{ border-top: 4px solid #2c2c44; padding: 2rem 0;}
/* 按钮光泽 */
.btn-shine{ position:relative; overflow:hidden;}
.btn-shine::after{ content:''; position:absolute; top:0; left:-100%; width:50%; height:100%; background:linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent); transform: skewX(-20deg); transition:0.5s;}
.btn-shine:hover::after{ left:150%;}

/* --- 子页面追加 --- */
/* 本页专属微调样式 */
        .about-hero {
            padding: 80px 0 40px;
        }
.about-section {
            padding: 60px 0;
        }
.about-card {
            background: rgba(255,255,255,0.04);
            border: 1px solid rgba(255,255,255,0.08);
            border-radius: 12px;
            padding: 28px;
            height: 100%;
            transition: transform .3s ease, border-color .3s ease;
        }
.about-card:hover {
            transform: translateY(-4px);
            border-color: var(--primary);
        }
.about-card i {
            font-size: 32px;
            color: var(--accent);
            margin-bottom: 16px;
        }
.about-card h3 {
            font-size: 1.25rem;
            font-weight: 700;
            color: var(--text);
            margin-bottom: 12px;
        }
.about-card p {
            color: rgba(255,255,255,0.75);
            font-size: 0.95rem;
            line-height: 1.7;
        }
.timeline-item h4 {
            color: var(--accent);
            font-size: 1.1rem;
            font-weight: 600;
            margin-bottom: 6px;
        }
.timeline-item p {
            color: rgba(255,255,255,0.7);
            font-size: 0.9rem;
            line-height: 1.6;
        }
.stat-label {
            font-size: 0.85rem;
            color: rgba(255,255,255,0.6);
            margin-top: 8px;
            letter-spacing: 1px;
        }
.badge-qiuxia {
            background: rgba(229, 9, 20, 0.15);
            color: var(--primary);
            border: 1px solid rgba(229, 9, 20, 0.3);
            padding: 4px 14px;
            border-radius: 30px;
            font-size: 0.8rem;
            font-weight: 500;
        }

/* --- 子页面追加 --- */
/* 确保任何Bootstrap组件类在本页不会出现白底黑字 —— 统一覆盖为站点深色 */
        .card, .card-body, .card-title, .card-text, .card-header, .card-footer,
        .form-control, .form-select, .form-label, .input-group-text,
        .table, .list-group-item, .accordion-item, .accordion-button, .accordion-body,
        .modal-content, .modal-header, .modal-body, .dropdown-menu, .dropdown-item,
        .nav-link, .navbar, .navbar-brand, .btn-light, .btn-outline-* {
            background: #14141c; 
            color: var(--text);
            border-color: #2c2c3a;
        }
.navbar-nav .nav-link {
            background: transparent;
            color: var(--text);
        }
.navbar-nav .nav-link.active {
            color: var(--primary);
            font-weight: 600;
        }
.form-control::placeholder {
            color: rgba(245, 245, 247, 0.4);
        }
/* 本站风格卡片 —— 沿用 .card-hard 视觉效果 */
        .disclaimer-card {
            background: #101018;
            border: 2px solid #2a2a35;
            border-radius: 16px;
            box-shadow: var(--hard-shadow);
            padding: 1.8rem 1.8rem;
            margin-bottom: 2rem;
        }
.disclaimer-card h3 {
            color: var(--accent);
            font-weight: 700;
            letter-spacing: 0.5px;
            margin-bottom: 1rem;
            font-size: 1.45rem;
            border-left: 5px solid var(--primary);
            padding-left: 1rem;
        }
.disclaimer-card p, .disclaimer-card li {
            color: #d0d0dd;
            line-height: 1.8;
        }
.disclaimer-card ul, .disclaimer-card ol {
            padding-left: 1.4rem;
        }
.disclaimer-card li {
            margin-bottom: 0.6rem;
        }
.disclaimer-card a {
            color: var(--accent);
            text-decoration: underline;
            text-underline-offset: 3px;
        }
.disclaimer-card a:hover {
            color: var(--primary);
        }
.section-gap {
            padding: 4rem 0 2rem;
        }
.footer-qiuxia {
            border-top: 2px solid #22222e;
        }
/* 品牌名连续性保护（确保任何位置都不会被拆开） */
        .brand-qiuxia {
            white-space: nowrap;
        }
.disclaimer-card {
                padding: 1.2rem;
            }

/* --- 子页面追加 --- */
/* 页面专属样式 */
        .privacy-hero {
            padding: 60px 0 40px;
            background: linear-gradient(180deg, rgba(229,9,20,0.15) 0%, transparent 100%);
        }
.privacy-hero h1 {
            font-size: 2.8rem;
            font-weight: 900;
            color: var(--text);
            margin-bottom: 15px;
        }
.privacy-hero .subtitle {
            color: rgba(245,245,247,0.7);
            font-size: 1.1rem;
            max-width: 600px;
        }
.privacy-section {
            padding: 30px 0;
            border-bottom: 1px solid rgba(255,255,255,0.08);
        }
.privacy-section:last-child {
            border-bottom: none;
        }
.privacy-section h2 {
            color: var(--accent);
            font-size: 1.5rem;
            font-weight: 700;
            margin-bottom: 20px;
            display: flex;
            align-items: center;
            gap: 10px;
        }
.privacy-section h2 i {
            font-size: 1.2rem;
            color: var(--primary);
        }
.privacy-section h3 {
            color: var(--text);
            font-size: 1.1rem;
            font-weight: 600;
            margin: 20px 0 10px;
        }
.privacy-section p, .privacy-section li {
            color: rgba(245,245,247,0.85);
            line-height: 1.8;
            font-size: 0.95rem;
        }
.privacy-section ul {
            padding-left: 20px;
            margin: 15px 0;
        }
.privacy-section ul li {
            margin-bottom: 8px;
            position: relative;
            padding-left: 10px;
        }
.privacy-section ul li::before {
            content: "›";
            position: absolute;
            left: -8px;
            color: var(--primary);
            font-weight: bold;
        }
.privacy-box {
            background: rgba(255,255,255,0.05);
            border-left: 3px solid var(--primary);
            padding: 20px 25px;
            margin: 20px 0;
            border-radius: 0 8px 8px 0;
        }
.privacy-box p {
            margin-bottom: 0;
            font-style: italic;
        }
.update-date {
            color: rgba(245,245,247,0.5);
            font-size: 0.85rem;
            margin-top: 30px;
            text-align: right;
        }
.privacy-hero h1 {
                font-size: 2rem;
            }
.privacy-section h2 {
                font-size: 1.3rem;
            }