:root{
      --main:#f97316;
      --accent:#facc15;
      --bg:#1a1410;
      --text:#fff7ed;
      --text-dim:#c7b5a6;
      --border:#3a2c20;
      --card-bg:#241b14;
      --shadow:6px 6px 0px rgba(0,0,0,0.6);
    }
    *{font-family: 'Inter', system-ui, -apple-system, sans-serif; border-radius:0 !important;}
    body{background:var(--bg); color:var(--text);}
    h1,h2,h3,h4,h5{font-weight:800; letter-spacing:-0.02em;}
    a{text-decoration:none; color:inherit;}
    .navbar{
      background:#0f0b08;
      border-bottom:3px solid var(--main);
      padding:0.6rem 0;
    }
    .navbar-brand{
      font-weight:900; font-size:1.8rem; color:var(--text) !important;
      letter-spacing:-0.03em;
    }
    .navbar-brand i{color:var(--main); margin-right:0.3rem;}
    .nav-link{
      color:var(--text-dim) !important; font-weight:600; margin:0 0.4rem;
      font-size:0.95rem; text-transform: uppercase;
    }
    .nav-link:hover{color:var(--accent) !important;}
    .progress-container{
      position: fixed; top:0; left:0; width:100%; height:4px; background:transparent; z-index:9999;
    }
    .progress-bar-fill{
      height:4px; background:linear-gradient(90deg, var(--main), var(--accent));
      width:0%;
    }
    /* hero */
    .hero-section{
      background:radial-gradient(circle at 20% 30%, #3a2413, #1a1410);
      padding:2.5rem 0 2rem; border-bottom:2px solid var(--border);
      position:relative; overflow:hidden;
    }
    .hero-text{
      font-size:calc(1.8rem + 1.2vw); font-weight:900; line-height:1.1;
      background:linear-gradient(120deg, var(--main), var(--accent), var(--main));
      -webkit-background-clip:text; background-clip:text; color:transparent;
      display:inline-block; padding-bottom:0.2rem;
    }
    .float-icon{
      position:absolute; font-size:2.2rem; color:var(--main); opacity:0.2;
      animation:float 4s infinite;
    }
    @keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-8px)}100%{transform:translateY(0)}}
    .sidebar-filter{
      background:#201812; border:2px solid var(--border); padding:1rem 0.8rem; box-shadow:var(--shadow);
      position:sticky; top:70px;
    }
    .filter-title{
      font-size:0.9rem; font-weight:700; color:var(--accent); text-transform:uppercase; letter-spacing:1px;
      border-bottom:1px solid var(--border); padding-bottom:0.4rem; margin-bottom:0.6rem;
    }
    .filter-item{
      display:block; padding:0.3rem 0.5rem; font-size:0.85rem; color:var(--text-dim); font-weight:500;
      border-left:3px solid transparent; transition:0.1s;
    }
    .filter-item:hover{color:var(--text); background:#2d2117; border-left-color:var(--main);}
    .filter-item i{width:1.5rem; color:var(--main);}
    .section-title{
      font-size:1.6rem; font-weight:900; border-left:6px solid var(--main); padding-left:0.8rem;
      margin:1.5rem 0 1rem; display:flex; align-items:center; gap:0.5rem;
    }
    .section-title i{color:var(--main);}
    .film-card{
      background:var(--card-bg); border:2px solid var(--border); box-shadow:4px 4px 0px rgba(0,0,0,0.5);
      overflow:hidden; transition:0.15s; cursor:pointer; height:100%;
      display:flex; flex-direction:column;
    }
    .film-card:hover{transform:scale(1.02); border-color:var(--main);}
    .img-wrapper{
      position:relative; overflow:hidden; aspect-ratio:2/3; background:#0a0a0a;
      display:flex; align-items:center; justify-content:center;
    }
    .img-wrapper img{
      width:100%; height:100%; object-fit:cover; transition:0.3s;
      filter:grayscale(20%);
    }
    .film-card:hover .img-wrapper img{transform:scale(1.1); filter:grayscale(0%);}
    .hover-layer{
      position:absolute; inset:0; background:linear-gradient(0deg, rgba(0,0,0,0.8), transparent);
      opacity:0; transition:0.3s; display:flex; align-items:flex-end; padding:0.7rem;
    }
    .film-card:hover .hover-layer{opacity:1;}
    .film-info{
      padding:0.7rem 0.6rem 0.5rem; border-top:2px solid var(--border);
    }
    .film-title{font-weight:700; font-size:0.95rem; color:var(--text);}
    .film-meta{font-size:0.7rem; color:var(--text-dim); display:flex; gap:0.5rem; align-items:center; margin-top:0.2rem;}
    .rating{background:var(--main); color:#1a1410; font-weight:800; padding:0 4px; font-size:0.7rem;}
    .badge-capsule{
      display:inline-block; background:#3a2b1c; color:var(--accent); font-size:0.65rem; font-weight:600;
      padding:2px 8px; border:1px solid var(--border); margin-right:4px; text-transform:uppercase;
    }
    .rank-medal{
      display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px;
      font-weight:900; background:#3a2c1d; color:var(--accent); border:1px solid var(--main); font-size:0.8rem;
    }
    .rank-1{background:#ffd700; color:#1a1410; border-color:#b8860b;}
    .rank-2{background:#c0c0c0; color:#1a1410; border-color:#888;}
    .rank-3{background:#cd7f32; color:#1a1410; border-color:#8b4513;}
    .hot-list .list-group-item{
      background:transparent; border:1px solid var(--border); color:var(--text); font-size:0.9rem;
      padding:0.5rem 0.8rem; display:flex; gap:0.6rem; align-items:center;
    }
    .accordion-item{background:var(--card-bg); border:1px solid var(--border); margin-bottom:0.5rem;}
    .accordion-button{background:#241b14; color:var(--text); font-weight:600; font-size:0.9rem; box-shadow:none;}
    .accordion-button:not(.collapsed){background:#3a2a1b; color:var(--accent);}
    .accordion-body{font-size:0.85rem; color:var(--text-dim);}
    .topic-card{background:#1e1610; border:2px solid var(--main); padding:1rem; box-shadow:var(--shadow);}
    .btn-random{background:var(--main); color:#1a1410; font-weight:800; padding:0.5rem 1.2rem; border:none; box-shadow:3px 3px 0 #000;}
    .btn-random:active{transform:translate(2px,2px); box-shadow:none;}
    footer{background:#0f0b08; border-top:4px solid var(--main); color:var(--text-dim); font-size:0.85rem;}
    .footer-links a{color:var(--text); margin-right:1rem; font-weight:500;}
    .friend-links{background:#1e1610; border:1px solid var(--border); padding:0.8rem; margin:1.5rem 0;}
    /* 侧滑弹窗 */
    .film-drawer{
      position:fixed; top:0; right:-480px; width:420px; max-width:100vw; height:100%; background:#201a15;
      border-left:4px solid var(--main); z-index:2000; transition:right 0.3s; overflow-y:auto; box-shadow:-8px 0 20px rgba(0,0,0,0.7);
    }
    .film-drawer.active{right:0;}
    .drawer-backdrop{
      position:fixed; inset:0; background:rgba(0,0,0,0.6); z-index:1999; display:none;
    }
    .drawer-backdrop.active{display:block;}
    .drawer-content{padding:1.5rem;}
    .close-drawer{font-size:2rem; color:var(--text); background:none; border:none; line-height:1;}
    @media (max-width: 768px) {
      .sidebar-filter{position:static; margin-bottom:1rem;}
      .hero-text{font-size:2rem;}
    }

/* --- 子页面追加 --- */
/* 本页专属补充样式 */
        .about-hero {
            background: linear-gradient(135deg, var(--bg) 0%, #2a1d12 100%);
            border-bottom: 1px solid var(--border);
            padding: 70px 0 50px;
            position: relative;
            overflow: hidden;
        }
.about-hero::after {
            content: '';
            position: absolute;
            top: -40%;
            right: -10%;
            width: 400px;
            height: 400px;
            background: radial-gradient(circle, rgba(249,115,22,0.15) 0%, transparent 70%);
            border-radius: 50%;
            pointer-events: none;
        }
.about-hero h1 {
            font-size: 2.4rem;
            font-weight: 900;
            color: var(--text);
            margin-bottom: 16px;
            position: relative;
            z-index: 1;
        }
.about-hero h1 span {
            color: var(--main);
        }
.about-hero p {
            color: var(--text-dim);
            font-size: 1.05rem;
            max-width: 680px;
            line-height: 1.8;
            position: relative;
            z-index: 1;
        }
.about-section {
            padding: 50px 0;
        }
.about-section-alt {
            background: rgba(0,0,0,0.15);
            border-top: 1px solid var(--border);
            border-bottom: 1px solid var(--border);
        }
.about-card {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 12px;
            padding: 28px;
            height: 100%;
            transition: transform 0.3s, box-shadow 0.3s;
            box-shadow: var(--shadow);
        }
.about-card:hover {
            transform: translateY(-4px);
            box-shadow: 8px 8px 0px rgba(0,0,0,0.7);
        }
.about-card .icon-circle {
            width: 52px;
            height: 52px;
            background: var(--main);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.4rem;
            color: #1a1410;
            margin-bottom: 16px;
            box-shadow: 3px 3px 0px rgba(0,0,0,0.5);
        }
.about-card h3 {
            font-size: 1.2rem;
            font-weight: 700;
            color: var(--text);
            margin-bottom: 10px;
        }
.about-card p {
            color: var(--text-dim);
            font-size: 0.93rem;
            line-height: 1.7;
            margin-bottom: 0;
        }
.stat-row {
            display: flex;
            flex-wrap: wrap;
            gap: 20px;
            margin-top: 20px;
        }
.stat-item {
            background: rgba(249,115,22,0.08);
            border: 1px solid rgba(249,115,22,0.25);
            border-radius: 10px;
            padding: 14px 22px;
            text-align: center;
            flex: 1;
            min-width: 120px;
        }
.stat-item .num {
            font-size: 1.6rem;
            font-weight: 900;
            color: var(--main);
        }
.stat-item .label {
            font-size: 0.85rem;
            color: var(--text-dim);
            margin-top: 4px;
        }
.timeline {
            position: relative;
            padding-left: 30px;
        }
.timeline::before {
            content: '';
            position: absolute;
            left: 8px;
            top: 0;
            bottom: 0;
            width: 2px;
            background: var(--main);
            opacity: 0.4;
        }
.timeline-item {
            position: relative;
            margin-bottom: 28px;
        }
.timeline-item::before {
            content: '';
            position: absolute;
            left: -26px;
            top: 6px;
            width: 12px;
            height: 12px;
            background: var(--main);
            border-radius: 50%;
            border: 2px solid var(--bg);
        }
.timeline-item .year {
            font-weight: 800;
            color: var(--main);
            font-size: 0.95rem;
            margin-bottom: 4px;
        }
.timeline-item .desc {
            color: var(--text-dim);
            font-size: 0.92rem;
            line-height: 1.6;
        }
.value-tag {
            display: inline-block;
            background: rgba(250,204,21,0.12);
            border: 1px solid rgba(250,204,21,0.3);
            color: var(--accent);
            padding: 3px 12px;
            border-radius: 20px;
            font-size: 0.85rem;
            font-weight: 600;
            margin: 4px;
        }
.about-quote {
            border-left: 4px solid var(--main);
            padding: 16px 20px;
            background: rgba(249,115,22,0.05);
            border-radius: 0 8px 8px 0;
            color: var(--text);
            font-style: italic;
            font-size: 1rem;
            line-height: 1.7;
            margin: 20px 0;
        }
.about-hero h1 {
                font-size: 1.7rem;
            }
.about-card {
                margin-bottom: 16px;
            }
.stat-item {
                min-width: 45%;
            }

/* --- 子页面追加 --- */
/* 本页专属微调，已与站点CSS合并 */
    .contact-hero { padding: 3rem 0 2rem; border-bottom: 1px solid var(--border); }
.contact-section { padding: 2.5rem 0; border-bottom: 1px solid var(--border); }
.contact-section:last-child { border-bottom: none; }
.contact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1.5rem; margin-top: 1.5rem; }
.contact-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px; padding: 1.5rem; box-shadow: var(--shadow); transition: transform .2s ease; }
.contact-card:hover { transform: translateY(-4px); }
.contact-icon { font-size: 2rem; color: var(--main); margin-bottom: .75rem; }
.contact-label { font-weight: 700; color: var(--text); font-size: 1.05rem; margin-bottom: .5rem; }
.contact-desc { color: var(--text-dim); font-size: .92rem; line-height: 1.6; }
.contact-value { color: var(--accent); font-weight: 600; font-size: .95rem; word-break: break-all; }
.faq-item { background: var(--card-bg); border: 1px solid var(--border); border-radius: 10px; padding: 1.25rem 1.5rem; margin-bottom: 1rem; }
.faq-q { font-weight: 700; color: var(--text); margin-bottom: .5rem; font-size: 1.02rem; }
.faq-a { color: var(--text-dim); font-size: .92rem; line-height: 1.7; }
.btn-contact { display: inline-block; background: var(--main); color: #fff; padding: .55rem 1.4rem; border-radius: 8px; font-weight: 600; text-decoration: none; transition: opacity .2s; }
.btn-contact:hover { opacity: .85; color: #fff; }
.btn-contact-outline { display: inline-block; border: 2px solid var(--main); color: var(--main); padding: .5rem 1.3rem; border-radius: 8px; font-weight: 600; text-decoration: none; transition: all .2s; }
.btn-contact-outline:hover { background: var(--main); color: #fff; }
.notice-box { background: rgba(249,115,22,.08); border-left: 4px solid var(--main); padding: 1rem 1.25rem; border-radius: 0 8px 8px 0; margin-top: 1rem; color: var(--text-dim); font-size: .92rem; line-height: 1.6; }
.form-contact { background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px; padding: 2rem; box-shadow: var(--shadow); }
.form-contact .form-label { color: var(--text); font-weight: 600; }
.form-contact .form-control { background: rgba(0,0,0,.35); border: 1px solid var(--border); color: var(--text); border-radius: 8px; }
.form-contact .form-control:focus { background: rgba(0,0,0,.45); border-color: var(--main); color: var(--text); box-shadow: none; }
.form-contact .form-control::placeholder { color: rgba(255,255,255,.4); }
.form-contact select.form-select { background-color: rgba(0,0,0,.35); color: var(--text); border: 1px solid var(--border); border-radius: 8px; }
.form-contact select.form-select option { background: var(--card-bg); color: var(--text); }
.form-contact textarea.form-control { min-height: 130px; resize: vertical; }

/* --- 子页面追加 --- */
/* 覆盖 Bootstrap 组件默认配色 */
        .card, .card-body { background: var(--card-bg); color: var(--text); border-color: var(--border); }
.card-title, .card-text { color: var(--text); }
.card-header, .card-footer { background: rgba(0,0,0,0.25); color: var(--text); border-color: var(--border); }
.table { color: var(--text); border-color: var(--border); }
.modal-content { background: var(--card-bg); color: var(--text); }
.dropdown-menu { background: var(--card-bg); }
.dropdown-item { color: var(--text); }
.dropdown-item:hover { background: rgba(0,0,0,0.3); color: var(--accent); }
.nav-link:hover, .nav-link.active { color: var(--main); }
/* 免责声明页专属 */
        .disclaimer-section {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 12px;
            padding: 2rem;
            margin-bottom: 1.5rem;
            box-shadow: var(--shadow);
            transition: transform 0.2s ease;
        }
.disclaimer-section:hover {
            transform: translateY(-3px);
        }
.disclaimer-section h2 {
            color: var(--main);
            font-weight: 800;
            margin-bottom: 1rem;
            font-size: 1.4rem;
            border-bottom: 2px solid var(--border);
            padding-bottom: 0.6rem;
        }
.disclaimer-section h2 i {
            margin-right: 0.6rem;
            color: var(--accent);
        }
.disclaimer-section p, .disclaimer-section li {
            color: var(--text-dim);
            line-height: 1.8;
            font-size: 0.95rem;
        }
.disclaimer-section strong {
            color: var(--text);
        }
.disclaimer-section ul {
            padding-left: 1.2rem;
        }
.disclaimer-section li {
            margin-bottom: 0.4rem;
        }
.highlight-box {
            background: rgba(249, 115, 22, 0.08);
            border-left: 4px solid var(--main);
            padding: 1rem 1.2rem;
            border-radius: 0 8px 8px 0;
            margin: 1.2rem 0;
        }
.highlight-box p {
            margin: 0;
            color: var(--text);
        }
.last-updated {
            color: var(--text-dim);
            font-size: 0.85rem;
            margin-top: 2rem;
            text-align: right;
            border-top: 1px solid var(--border);
            padding-top: 1rem;
        }
.disclaimer-hero {
            padding: 3rem 0 2rem;
            margin-bottom: 2rem;
        }
.disclaimer-hero h1 {
            font-size: 2rem;
            font-weight: 900;
            color: var(--text);
            margin-bottom: 0.5rem;
        }
.disclaimer-hero h1 span {
            color: var(--main);
        }
.disclaimer-hero p {
            color: var(--text-dim);
            font-size: 1rem;
        }

/* --- 子页面追加 --- */
/* 本页专属样式 - 隐私政策页 */
        .privacy-hero {
            padding: 80px 0 40px;
            background: linear-gradient(180deg, rgba(249,115,22,0.08) 0%, transparent 100%);
        }
.privacy-wrap {
            max-width: 900px;
            margin: 0 auto;
        }
.privacy-box {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 12px;
            padding: 40px;
            margin-bottom: 30px;
            box-shadow: var(--shadow);
        }
.privacy-box h2 {
            color: var(--main);
            font-size: 1.4rem;
            font-weight: 700;
            margin-bottom: 20px;
            padding-bottom: 12px;
            border-bottom: 2px solid var(--border);
        }
.privacy-box p {
            color: var(--text-dim);
            line-height: 1.8;
            margin-bottom: 16px;
        }
.privacy-box ul {
            color: var(--text-dim);
            line-height: 1.9;
            padding-left: 20px;
        }
.privacy-box li {
            margin-bottom: 8px;
        }
.privacy-box strong {
            color: var(--text);
        }
.privacy-updated {
            text-align: center;
            color: var(--text-dim);
            font-size: 0.9rem;
            margin-bottom: 40px;
        }
.privacy-badge {
            display: inline-block;
            background: rgba(249,115,22,0.15);
            color: var(--main);
            padding: 4px 14px;
            border-radius: 20px;
            font-size: 0.85rem;
            font-weight: 600;
            margin-bottom: 20px;
        }
.back-home {
            text-align: center;
            margin: 40px 0;
        }
.back-home a {
            color: var(--main);
            text-decoration: none;
            font-weight: 600;
            transition: all 0.3s;
        }
.back-home a:hover {
            color: var(--accent);
            text-decoration: underline;
        }
.privacy-box {
                padding: 25px 20px;
            }
.privacy-hero {
                padding: 50px 0 30px;
            }

/* --- Bootstrap 组件配色适配(程序自动补,避免白底黑字) --- */
.form-select { background-color:rgba(0,0,0,.35) !important; color:#fff7ed !important; border-color:rgba(255,255,255,.12) !important; }
.accordion-header { background:transparent !important; }
