/*
Theme Name: 小红泡子主题 (XiaoHongPao Child)
Theme URI: https://www.a5.org.cn/
Description: 子比主题 (Zibll) 的子主题，专为"小红泡"互联网创业项目实战平台定制开发（v8.2 暗黑模式适配 珊瑚暖科技：珊瑚红+暖橙+深墨绿三色体系 + 气泡光晕装饰 + 标志性珊瑚→墨绿 CTA 渐变）
Author: XiaoHongPao Team
Template: zibll
Version: 8.2.0
Text Domain: xiaohongpao
*/

/* ============================================================
 * v8.2 暗黑模式适配 (珊瑚暖科技):
 *   - 全新三色体系: 珊瑚红 (#FF5A5F) + 暖橙 (#FF8C42) + 深墨绿 (#0B7285)
 *   - 设计令牌系统: --xhpp-primary/orange/teal/gold/purple 五大色相
 *   - 渐变令牌: --xhpp-gradient-primary/hero/cta/warm/bubble
 *   - 阴影令牌: --xhpp-shadow-card-hover 用暖色调 rgba(224,71,78,0.14)
 *   - 气泡装饰: .xhpp-bubble 元素 + xhpp-bubble-float 动画 (6s 循环)
 *   - home.css 重写配色: 142 处颜色 + 14 处黑色阴影全部迁移到暖色系
 *   - page-templates.css 同步迁移: 174 处颜色 + 8 处阴影
 *   - Banner 区新增 ::before/::after 气泡光晕 (不改 HTML, 用伪元素)
 *   - CTA 标志性渐变: linear-gradient(135deg, #FF5A5F 0%, #E0474E 50%, #0B7285 100%)
 *   - VIP 翻转卡背面: 珊瑚→墨绿渐变 (从紫色调切换为品牌主调)
 *   - 项目卡片标签四色: ai(深紫)/traffic(珊瑚)/thinking(墨绿)/resource(暖金)
 *
 * v7.4.0 首页模块化排序版:
 *   - front-page.php 重写为函数封装模式 (11个 xhpp_render_module_* 函数)
 *   - 每个模块用 ob_start/ob_get_clean 缓冲输出, 返回 HTML 字符串
 *   - 首页模块支持后台拖拽排序 (home_modules_order 数组)
 *   - Banner 统计栏独立开关 (home_show_banner_stats)
 *   - 后台设置页加载 jQuery UI sortable 实现拖拽
 *   - CTA 模块独立计算 $total_posts, 解除对 banner 模块顺序的依赖
 *   - 6大分类模块的 $section_exclude_ids 在函数内部初始化, 保证可重入
 *
 * v7.3.4 修复 (基于 zibll-analyze 分析报告建议):
 *   - xhpp_after_post_content 增加付费墙权限检查 (zib_get_post_allow_view_data)
 *     若用户无权查看完整内容, 不注入增强模块, 避免在付费提示后还附加内容
 *     兼容旧版子比: 回退用 zibpay_is_paid() 判断付费购买状态
 *   - xhpp_inject_member_notice 改用子比原生 post_cat_config.allow_view meta
 *     判断会员专享分类 (allow_view ∈ pay/points/roles)
 *     保留硬编码 ID 列表作为兼容回退 (老数据 meta 未配置时使用)
 *   - 函数重命名对齐语义:
 *     · xhpp_inject_project_info_card    → xhpp_before_post_content
 *     · xhpp_inject_after_content_modules → xhpp_after_post_content
 *
 * v7.3.4 基础特性 (前置工作已落地):
 *   - 分析子比 single.php + zib-single.php 源码
 *   - 发现 zib_single_content_allow_view 钩在 the_content (优先级10)
 *   - 放弃 the_content 过滤器, 改用子比原生 action 钩子:
 *     · zib_posts_content_before (内容前)
 *     · zib_posts_content_after  (内容后)
 *     · zib_single_after         (文章主体后, 优先级5)
 *   - 完全不干扰子比付费/会员/下载权限检查
 *   - 100% 保留子比原生功能
 *
 * v7.3.3 关键修复: 保留子比付费/会员/下载功能
 *   - single.php 不再覆盖父主题核心逻辑
 *   - 默认加载父主题 single.php (完整保留付费购买/会员权限/资源下载)
 *   - 通过 the_content 过滤器「轻量注入」项目教程增强模块
 *   - 移除重复的作者卡/分享按钮 (子比原生已提供)
 *   - SOP下载区仅当填写链接时显示 (不干扰子比原生下载)
 *
 * v7.3.2 默认文章页模板:
 *   - 新增 single.php (覆盖父主题)
 *   - 默认文章页自动应用项目教程模板样式
 *   - 保留用户手动选择其他模板的能力 (页面属性优先)
 *
 * v7.3.1 用户视角优化:
 *   - 首页所有文案从"平台视角"改为"用户视角"
 *   - Banner/优势/黄金圈/生态四方/FAQ/CTA 全部改写
 *   - 用户能"得到什么"而非平台"提供什么"
 *
 * v7.3 文章页面模板版:
 *   - 新增4个文章/页面模板 (后台编辑时可选):
 *     1. 📚 项目教程模板 (难度/收益/SOP下载/步骤导航/评测引导)
 *     2. 📝 实战日记模板 (时间线/收益进度/积分奖励/互动交流)
 *     3. 📦 资源下载模板 (下载按钮/版本信息/更新日志/使用说明)
 *     4. 🚀 营销落地页模板 (Hero/数据/特性/对比/评价/FAQ/CTA)
 *   - 统一样式文件 page-templates.css (对齐 a5.org.cn 风格)
 *   - 自动生成文章目录 TOC (教程模板)
 *   - 自定义字段支持 (难度/收益/投入/下载链接等)
 *
 * v7.2.1 修复与优化:
 *   - 修复公告栏不显示问题 (四重兼容注入: wp_body_open/子比钩子/get_header/JS兜底)
 *   - 新增公告栏显示页面控制 (全站/仅首页/仅文章页)
 *   - 首页模块精细化: 6大分类独立开关 (网创/平台/AI/思维/资源/训练营)
 *   - 修复核心优势模块缺少开关判断
 *
 * v7.2 实用开关功能版:
 *   - 后台设置面板 (16项功能开关, 7个Tab分类)
 *   - 维护模式 (503状态 + 倒计时 + 管理员可访问)
 *   - 顶部公告栏 (可关闭, 自定义颜色/链接)
 *   - 内容保护 (禁右键/选择/复制/F12)
 *   - 外链跳转中间页 (/go/?url=)
 *   - 性能开关 (懒加载/禁emoji/禁Gutenberg/移除版本号/禁修订)
 *   - 安全开关 (禁XML-RPC/用户枚举/REST用户接口)
 *   - 首页模块开关 (11个模块一键控制)
 *   - 自定义文案 (后台页脚/登录Logo/导航按钮)
 *   - 缓存管理 (一键清除)
 *
 * v7.1 生产就绪版 (对齐 a5.org.cn 页面样式):
 *   - 页面样式完全对齐 www.a5.org.cn (Banner/Features/Projects/Testimonials/Pricing/CTA/FAQ)
 *   - FontAwesome 4.7 图标方案
 *   - 资源版本号使用文件修改时间 (缓存自动失效)
 *   - 无 rand() 回退 / 无硬编码演示数据 / 无 debug 输出
 *   - Transient 缓存所有 expensive 查询
 *
 * v7.0 运营方案模块:
 *   - 6大文章分类 / 5大论坛板块
 *   - 黄金圈法则 / 用户共建飞轮 / 生态四方
 *
 * v6.1 布局一致性：content-layout 宽度完全跟随父主题 container
 * 子比主题在两栏布局时会给 content-layout 留侧边栏 margin，首页无侧边栏场景需要清零
 * 宽度 / 内边距 / 最大宽度 全部交给 Bootstrap .container 原生控制
 * ============================================================ */
.xhpp-home-template .content-layout {
    /* 取消两栏布局的侧边栏 margin —— 首页不显示侧边栏 */
    margin-left: 0 !important;
    margin-right: 0 !important;
    /* 取消子比默认的 float 布局 */
    float: none !important;
    /* 取消任何硬编码的宽度，完全跟随父级 .container 的 Bootstrap 宽度
       (≥1200px:1170px, ≥992px:970px, ≥768px:750px, <768px:自适应) */
    width: auto;
    max-width: none;
    /* 取消自定义 padding，交给父级统一控制 */
    padding: 0;
}

/* ============================================================
 * 小红泡专属设计令牌 (v8.0 "珊瑚暖科技" 风格)
 * 设计理念: 呼应"泡"品牌名, 珊瑚红+暖橙+深墨绿
 *           气泡光晕装饰 + 温暖科技感 + 高识别度
 * ============================================================ */
.xhpp-home-template,
.xhpp-content,
[class*="xhpp-"] {
    /* 主色: 珊瑚红 (温暖、活力、识别度高) */
    --xhpp-primary: #FF5A5F;        /* Airbnb珊瑚红, 亲和力强 */
    --xhpp-primary-dark: #E0474E;
    --xhpp-primary-light: #FF8A8E;

    /* 辅助色: 暖橙 (能量、收益感) */
    --xhpp-orange: #FF8C42;
    --xhpp-orange-light: #FFB37A;

    /* 辅助色: 深墨绿 (沉稳、信任、成长) */
    --xhpp-teal: #0B7285;
    --xhpp-teal-light: #3FB8C4;

    /* 辅助色: 暖金 (会员、价值感) */
    --xhpp-gold: #F0A93B;
    --xhpp-gold-light: #FFD180;

    /* 辅助色: 深紫 (AI/科技感, 仅AI副业用) */
    --xhpp-purple: #6B5B95;
    --xhpp-purple-light: #9B8AC4;

    --xhpp-blue: #339af0;
    --xhpp-yellow: #FCC419;

    /* 渐变 (小红泡专属) */
    --xhpp-gradient-primary: linear-gradient(135deg, #FF5A5F 0%, #FF8C42 100%);  /* 珊瑚→暖橙 */
    --xhpp-gradient-hero: linear-gradient(160deg, #FFF4F0 0%, #FFFBF5 50%, #ffffff 100%);  /* 暖白背景 */
    --xhpp-gradient-cta: linear-gradient(135deg, #FF5A5F 0%, #E0474E 50%, #0B7285 100%);  /* 珊瑚→墨绿 */
    --xhpp-gradient-warm: linear-gradient(135deg, #FF8C42 0%, #F0A93B 100%);  /* 暖金 */
    --xhpp-gradient-bubble: radial-gradient(circle at 30% 30%, rgba(255,138,142,0.4) 0%, rgba(255,140,66,0.2) 50%, transparent 70%);

    /* 背景 (暖色调, 区别于A5的冷白) */
    --xhpp-bg: #ffffff;
    --xhpp-bg-alt: #FFFBF7;         /* 暖米白 */
    --xhpp-bg-gray: #FAF6F2;        /* 暖灰 */
    --xhpp-bg-warm: #FFF4F0;        /* 暖底色 */

    /* 文字 (深墨色, 比纯黑柔和) */
    --xhpp-text: #2C2A2E;           /* 深墨 */
    --xhpp-text-secondary: #5C5A5E;
    --xhpp-text-light: #8C8A8E;
    --xhpp-text-muted: #BCBABE;

    /* 边框 (暖灰) */
    --xhpp-border: #F0EBE6;
    --xhpp-border-light: #FAF6F2;
    --xhpp-border-warm: #FFE0D6;

    /* 圆角 (偏大, 更柔和现代) */
    --xhpp-radius-sm: 10px;
    --xhpp-radius-md: 14px;
    --xhpp-radius-lg: 20px;
    --xhpp-radius-xl: 24px;
    --xhpp-radius-full: 999px;

    /* 阴影 (带暖色调, 不是纯黑) */
    --xhpp-shadow-sm: 0 2px 8px rgba(224, 71, 78, 0.06);
    --xhpp-shadow-md: 0 6px 20px rgba(224, 71, 78, 0.08);
    --xhpp-shadow-card: 0 4px 16px rgba(224, 71, 78, 0.06);
    --xhpp-shadow-card-hover: 0 12px 36px rgba(224, 71, 78, 0.14);
    --xhpp-shadow-primary-glow: 0 8px 28px rgba(255, 90, 95, 0.32);
    --xhpp-shadow-warm-glow: 0 8px 28px rgba(255, 140, 66, 0.28);

    --xhpp-transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================================
 * 气泡装饰元素 (品牌识别度核心)
 * ============================================================ */
.xhpp-bubble {
    position: absolute;
    border-radius: 50%;
    background: var(--xhpp-gradient-bubble);
    pointer-events: none;
    z-index: 0;
    animation: xhpp-bubble-float 6s ease-in-out infinite;
}
.xhpp-bubble-1 { width: 80px; height: 80px; top: 10%; left: 5%; animation-delay: 0s; }
.xhpp-bubble-2 { width: 120px; height: 120px; top: 60%; right: 8%; animation-delay: 2s; opacity: 0.6; }
.xhpp-bubble-3 { width: 60px; height: 60px; bottom: 15%; left: 15%; animation-delay: 4s; opacity: 0.5; }
@keyframes xhpp-bubble-float {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-20px) scale(1.05); }
}
@media (max-width: 768px) { .xhpp-bubble { display: none; } }

/* ============================================================
 * 滚动渐入动画：默认可见，xhpp-js 加载后隐藏，再由 JS 触发出现
 * ============================================================ */
html.xhpp-js .xhpp-anim-hidden {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s ease, transform 0.6s ease;
    will-change: opacity, transform;
}
html.xhpp-js .xhpp-anim-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
}
