:root {
      --primary: #f472b6;
      --accent: #fbbf24;
      --bg: #fff5f7;
      --text: #4a2530;
      --border: #f4c2d7;
      --card-bg: #ffffff;
      --muted: #9a6b78;
      --font-sans: 'Inter', sans-serif;
    }
    * { box-sizing: border-box; }
    body {
      background: var(--bg);
      color: var(--text);
      font-family: var(--font-sans);
      font-size: 14px; /* 紧凑小字号 */
      line-height: 1.5;
      margin: 0;
    }
    h1,h2,h3,h4,h5 { font-weight: 800; letter-spacing: -0.02em; }
    /* 无阴影，纯描边 */
    .card, .poster-card, .list-card, .hero-box, .block-box, .faq-item {
      box-shadow: none !important;
      border: 1px solid var(--border);
      border-radius: 12px;
      background: var(--card-bg);
    }
    /* 超粗标题 */
    .display-5, .display-6 { font-weight: 900; }
    /* 渐变文字 */
    .gradient-text {
      background: linear-gradient(135deg, var(--primary), var(--accent));
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      font-weight: 900;
    }
    /* 导航吸顶 + 透明背景变化 */
    .sticky-nav {
      position: sticky;
      top: 0;
      z-index: 1020;
      background: rgba(255,245,247,0.7);
      backdrop-filter: blur(12px);
      border-bottom: 1px solid var(--border);
      transition: background 0.3s ease;
    }
    .sticky-nav.scrolled {
      background: rgba(255,245,247,0.9);
      backdrop-filter: blur(18px);
    }
    /* 视差hero */
    .hero-parallax {
      background: linear-gradient(120deg, #ffe4ef 0%, #fff0f5 100%);
      background-attachment: fixed;
      background-position: center;
      background-size: cover;
      padding: 3rem 0 4rem;
      border-bottom: 1px solid var(--border);
      position: relative;
      overflow: hidden;
    }
    .floating-deco {
      position: absolute;
      width: 120px; height: 120px;
      background: radial-gradient(circle, rgba(244,114,182,0.2) 0%, transparent 70%);
      border-radius: 50%;
      top: 20px; left: 5%;
      animation: float 6s infinite alternate ease-in-out;
    }
    .floating-deco2 {
      position: absolute;
      width: 200px; height: 200px;
      background: radial-gradient(circle, rgba(251,191,36,0.15) 0%, transparent 70%);
      border-radius: 50%;
      bottom: 0; right: 5%;
      animation: float2 8s infinite alternate ease-in-out;
    }
    @keyframes float {
      0% { transform: translateY(0) scale(1); }
      100% { transform: translateY(-30px) scale(1.1); }
    }
    @keyframes float2 {
      0% { transform: translateY(0) rotate(0deg); }
      100% { transform: translateY(-20px) rotate(10deg); }
    }
    /* 胶囊标签 */
    .pill-tag {
      display: inline-block;
      background: var(--bg);
      border: 1px solid var(--primary);
      color: var(--text);
      padding: 0.2rem 0.9rem;
      border-radius: 50rem;
      font-size: 12px;
      font-weight: 600;
      margin: 2px 3px 2px 0;
    }
    .pill-tag.active { background: var(--primary); color: white; }
    .pill-tag:hover { background: var(--accent); border-color: var(--accent); }
    /* 电影卡片翻转 */
    .flip-card {
      perspective: 800px;
      cursor: pointer;
      height: 260px;
      margin-bottom: 16px;
    }
    .flip-inner {
      position: relative;
      width: 100%; height: 100%;
      transition: transform 0.5s;
      transform-style: preserve-3d;
    }
    .flip-card.flipped .flip-inner { transform: rotateY(180deg); }
    .flip-front, .flip-back {
      position: absolute;
      width: 100%; height: 100%;
      backface-visibility: hidden;
      border: 1px solid var(--border);
      border-radius: 12px;
      overflow: hidden;
      background: white;
    }
    .flip-back {
      transform: rotateY(180deg);
      background: var(--bg);
      padding: 12px;
      font-size: 12px;
      border: 2px solid var(--primary);
      display: flex;
      flex-direction: column;
    }
    .flip-front img { width: 100%; height: 100%; object-fit: cover; }
    .close-back {
      position: absolute;
      top: 6px; right: 10px;
      font-size: 20px;
      color: var(--primary);
      background: none;
      border: none;
      z-index: 5;
    }
    /* hover轻微缩放+边框高亮 */
    .card-hover:hover {
      transform: scale(1.02);
      border-color: var(--primary);
      transition: all 0.2s ease-in-out;
    }
    /* 金银铜奖牌 */
    .rank-badge {
      display: inline-flex; align-items: center; justify-content: center;
      width: 28px; height: 28px; border-radius: 50%;
      font-weight: 800; font-size: 14px; color: white;
    }
    .rank-1 { background: linear-gradient(145deg, #ffd700, #f0b429); }
    .rank-2 { background: linear-gradient(145deg, #c0c0c0, #a0a0a0); }
    .rank-3 { background: linear-gradient(145deg, #cd7f32, #b87333); }
    .rank-other { background: #d4b6c2; }
    /* 对比表格 */
    .table-compare th { background: var(--bg); border-bottom: 2px solid var(--primary); }
    .table-compare td, .table-compare th { border-color: var(--border); font-size: 13px; }
    /* 等宽字体数据 */
    .mono { font-family: 'SFMono-Regular', Menlo, Consolas, monospace; font-size: 13px; }
    /* 分区间距 */
    .section-block { padding: 1.8rem 0; border-bottom: 1px solid var(--border); }
    .section-title { font-size: 1.6rem; font-weight: 800; margin-bottom: 1rem; }
    .navbar .nav-link { color: var(--text); font-weight: 600; }
    .navbar .nav-link:hover { color: var(--primary); }
    footer { border-top: 1px solid var(--border); }
    .friend-links { background: #fff0f5; border-top: 1px solid var(--border); padding: 1.5rem 0; }
    .friend-links a { color: var(--text); margin-right: 15px; text-decoration: underline dotted; }
    /* 编号清单 */
    .num-list { counter-reset: my-counter; list-style: none; padding-left: 0; }
    .num-list li { counter-increment: my-counter; margin-bottom: 0.4rem; position: relative; padding-left: 30px; }
    .num-list li::before {
      content: counter(my-counter) ".";
      position: absolute; left: 0; font-weight: 800; color: var(--primary);
    }
    /* 心情标签 */
    .mood-tag { background: white; border: 1px solid var(--primary); border-radius: 50px; padding: 0.3rem 1.2rem; font-weight: 600; font-size: 14px; transition: 0.2s; }
    .mood-tag:hover { background: var(--primary); color: white; cursor: pointer; }

/* --- 子页面追加 --- */
/* 确保 Bootstrap 不会破坏站内暗色调 (快速覆盖) */
    body { background: var(--bg); color: var(--text); font-family: var(--font-sans); }
.nav-link-custom { color: var(--text); font-weight: 500; }
.nav-link-custom:hover { color: var(--primary); }
.nav-link-custom.active { color: var(--primary); border-bottom: 2px solid var(--primary); }
.floating-deco, .floating-deco2 { opacity: 0.2; pointer-events: none; }
.friend-links a:hover { color: var(--primary); }
.btn-outline-custom { border: 1px solid var(--primary); color: var(--primary); border-radius: 50px; padding: 0.3rem 1.5rem; transition: 0.2s; }
.btn-outline-custom:hover { background: var(--primary); color: #fff; }
.list-arrow { list-style: none; padding-left: 0; }
.list-arrow li::before { content: "▶"; color: var(--primary); margin-right: 0.5rem; font-size: 0.7rem; }
/* 让导航链接与首页一致 */
    .sticky-nav .container { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.sticky-nav a { text-decoration: none; }

/* --- 子页面追加 --- */
/* 确保覆盖 Bootstrap 组件默认白底黑字——本页未使用组件类，但保险起见加一条兜底 */
        .card, .card-body, .form-control, .table, .accordion-item, .accordion-button, .accordion-body,
        .modal-content, .dropdown-menu, .nav-link, .navbar, .navbar-brand, .btn-light, .btn-outline-* {
            background: var(--card-bg);
            color: var(--text);
            border-color: var(--border);
        }
/* 免责声明页微调：加一点呼吸感 */
        .disclaimer-section {
            padding: 2.5rem 0 3rem;
        }
.disclaimer-rule {
            border-bottom: 1px dashed var(--border);
            margin: 1.8rem 0;
        }
.muted-text {
            color: var(--muted);
        }
.section-subtitle {
            color: var(--muted);
            font-size: 0.95rem;
            letter-spacing: 0.02em;
            margin-bottom: 2rem;
        }
/* 列表前标点 */
        .disclaimer-list {
            list-style: none;
            padding-left: 0;
        }
.disclaimer-list li {
            position: relative;
            padding-left: 1.75rem;
            margin-bottom: 0.6rem;
            color: var(--text);
        }
.disclaimer-list li::before {
            content: "·";
            font-weight: 800;
            font-size: 1.8rem;
            color: var(--primary);
            position: absolute;
            left: 0;
            top: -0.6rem;
        }

/* --- 子页面追加 --- */
.guide-hero { padding: 80px 0 40px; text-align: center; }
.guide-hero h1 { font-size: 2.8rem; font-weight: 800; }
.guide-section { padding: 40px 0; border-bottom: 1px solid var(--border); }
.guide-section:last-of-type { border-bottom: none; }
.guide-section h2 { font-size: 1.8rem; font-weight: 700; margin-bottom: 20px; color: var(--primary); }
.guide-section h3 { font-size: 1.3rem; font-weight: 600; margin: 25px 0 12px; color: var(--text); }
.guide-card { background: var(--card-bg); border-radius: 16px; padding: 28px; margin-bottom: 20px; border: 1px solid var(--border); }
.guide-card p, .guide-card li { color: var(--text); line-height: 1.8; }
.guide-card ul, .guide-card ol { padding-left: 20px; }
.guide-card li { margin-bottom: 8px; }
.step-num { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: var(--primary); color: #fff; font-weight: 700; margin-right: 12px; flex-shrink: 0; }
.tip-box { background: rgba(244, 114, 182, 0.08); border-left: 4px solid var(--primary); padding: 16px 20px; border-radius: 0 12px 12px 0; margin: 20px 0; }
.tip-box p { margin: 0; }
.badge-guide { display: inline-block; background: var(--primary); color: #fff; padding: 4px 14px; border-radius: 20px; font-size: 0.85rem; font-weight: 600; margin-right: 8px; margin-bottom: 8px; }
.badge-guide.accent { background: var(--accent); color: var(--text); }
.table-guide { width: 100%; border-collapse: collapse; margin: 20px 0; }
.table-guide th, .table-guide td { padding: 12px 16px; text-align: left; border-bottom: 1px solid var(--border); }
.table-guide th { background: rgba(244, 114, 182, 0.1); font-weight: 600; color: var(--text); }
.table-guide td { color: var(--text); }
.table-guide tr:last-child td { border-bottom: none; }
.key-icon { font-size: 2rem; color: var(--primary); margin-bottom: 12px; }
.mono-badge { font-family: 'SF Mono', 'Fira Code', monospace; background: rgba(244, 114, 182, 0.1); padding: 2px 8px; border-radius: 6px; font-size: 0.85rem; color: var(--primary); }