import 'package:flutter/material.dart';

/// 业务逻辑策略接口
/// 定义页面类可用的差异化业务逻辑方法
abstract class BusinessLogicStrategy {
  /// 获取首页Tab页配置
  /// 返回: List&lt;Widget&gt; - 首页的页面组件列表
  List<Widget> getHomeTabPages(BuildContext context);

  /// 获取首页Tab标签配置
  /// 返回: List&lt;Widget&gt; - 首页的Tab标签列表
  List<Widget> getHomeTabLabels(BuildContext context);


  /// 获取首页初始Tab索引
  /// 返回: int - 初始Tab索引
  int getHomeInitialTabIndex();

  /// 处理头像点击事件
  /// 参数: context - BuildContext
  void onAvatarTap(BuildContext context);

  /// 判断是否显示首充提示
  /// 返回: bool - 是否显示首充提示
  bool shouldShowFirstRechargePrompt();

  /// 获取首充提示位置配置
  /// 返回: Map&lt;String, double?&gt; - 包含top/bottom/start/end位置，未设置的键返回null
  Map<String, double?> getFirstRechargePosition();

  /// 处理首充提示点击事件
  /// 参数: context - BuildContext
  void onFirstRechargeTap(BuildContext context);

  /// === 登录页面差异化方法 ===

  /// 获取登录页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getLoginBackgroundImage();

  /// 获取登录页面应用图标路径
  /// 返回: String - 应用图标资源路径
  String getLoginAppIcon();

  /// 获取登录按钮背景颜色
  /// 返回: Color - 按钮背景颜色
  Color getLoginButtonColor();

  /// 获取登录按钮渐变颜色（可选）
  /// 返回: List&lt;Color&gt;? - 渐变颜色列表，null表示使用纯色
  List<Color>? getLoginButtonGradient();

  /// 获取登录按钮文本颜色
  /// 返回: Color - 按钮文本颜色
  Color getLoginButtonTextColor();

  /// 获取登录标签文本颜色
  /// 返回: Color - 标签文本颜色
  Color getLoginLabelTextColor();

  /// 获取登录输入框装饰
  /// 返回: BoxDecoration - 输入框装饰样式
  BoxDecoration getLoginInputDecoration();

  /// 获取登录页面主要内边距
  /// 返回: EdgeInsets - 页面内边距
  EdgeInsets getLoginPagePadding();

  /// 是否显示登录页面状态栏
  /// 返回: bool - 是否显示状态栏
  bool shouldShowLoginStatusBar();

  /// 获取登录输入框提示文本颜色
  /// 返回: Color - 提示文本颜色
  Color getLoginHintTextColor();

  /// 获取登录输入框文本颜色
  /// 返回: Color - 输入框文本颜色
  Color getLoginInputTextColor();


  /// 是否显示密码房间图标
  /// 返回: bool - 是否显示密码图标
  bool shouldShowPasswordRoomIcon();

  /// === 探索页面差异化方法 ===

  /// 获取探索页面房间显示阈值
  /// 返回: int - 显示在抽屉上方的房间数量阈值
  int getExploreRoomDisplayThreshold();

  /// 获取探索页面网格视图图标路径
  /// 返回: String - 网格视图图标资源路径
  String getExploreGridIcon();

  /// 获取探索页面列表视图图标路径
  /// 返回: String - 列表视图图标资源路径
  String getExploreListIcon();

  /// 获取探索页面排名图标路径模式
  /// 参数: isGrid - 是否为网格视图
  /// 参数: rank - 排名（1-based）
  /// 返回: String - 排名图标资源路径
  String getExploreRankIconPattern(bool isGrid, int rank);

  /// 获取探索页面房间边框颜色
  /// 返回: Color - 房间边框颜色
  Color getExploreRoomBorderColor();

  /// 获取探索页面房间边框宽度
  /// 返回: double - 房间边框宽度
  double getExploreRoomBorderWidth();

  /// 获取探索页面抽屉内容网格列数
  /// 返回: int - 网格列数
  int getExploreDrawerGridCrossAxisCount();

  /// 获取探索页面房间名称滚动阈值
  /// 返回: int - 房间名称长度超过此值时显示滚动效果
  int getExploreRoomNameMarqueeThreshold();

  /// 获取探索页面房间描述滚动阈值
  /// 返回: int - 房间描述长度超过此值时显示滚动效果
  int getExploreRoomDescMarqueeThreshold();

  /// === 个人主页差异化方法 ===

  /// 获取个人主页默认背景图像路径
  /// 返回: String - 默认背景图像资源路径
  String getMePageDefaultBackgroundImage();

  /// 获取个人主页性别背景图像路径
  /// 参数: isFemale - 是否为女性用户
  /// 返回: String - 性别背景图像资源路径
  String getMePageGenderBackgroundImage(bool isFemale);

  /// 获取个人主页CP对话框头像图像路径
  /// 返回: String - CP对话框头像图像资源路径
  String getMePageCpDialogHeadImage();

  /// 获取个人主页默认头像图像路径
  /// 返回: String - 默认头像图像资源路径
  String getMePageDefaultAvatarImage();

  /// 获取个人主页ID背景图像路径
  /// 参数: hasSpecialId - 是否有特殊ID
  /// 返回: String - ID背景图像资源路径
  String getMePageIdBackgroundImage(bool hasSpecialId);

  /// 获取个人主页复制ID图标路径
  /// 返回: String - 复制ID图标资源路径
  String getMePageCopyIdIcon();

  /// 获取个人主页性别年龄背景图像路径
  /// 参数: isFemale - 是否为女性用户
  /// 返回: String - 性别年龄背景图像资源路径
  String getMePageGenderAgeBackgroundImage(bool isFemale);

  /// 获取个人主页访客关注粉丝背景图像路径
  /// 参数: isFemale - 是否为女性用户
  /// 返回: String - 访客关注粉丝背景图像资源路径
  String getMePageVisitorsFollowFansBackgroundImage(bool isFemale);

  /// 获取个人主页编辑用户信息图标路径
  /// 返回: String - 编辑用户信息图标资源路径
  String getMePageEditUserInfoIcon();

  /// 获取个人主页闪耀文本颜色
  /// 返回: Color - 闪耀文本颜色
  Color getMePageShineColor();

  /// 获取个人主页渐变颜色
  /// 参数: isFemale - 是否为女性用户
  /// 返回: List&lt;Color&gt; - 渐变颜色列表
  List<Color> getMePageGradientColors(bool isFemale);

  /// 获取个人主页Tab指示器渐变颜色
  /// 参数: isFemale - 是否为女性用户
  /// 返回: List&lt;Color&gt; - Tab指示器渐变颜色列表
  List<Color> getMePageTabIndicatorGradient(bool isFemale);

  /// 获取个人主页访客关注粉丝文本颜色
  /// 返回: Color - 访客关注粉丝文本颜色
  Color getMePageVisitorsFollowFansTextColor();

  /// 获取个人主页初始Tab索引
  /// 返回: int - 初始Tab索引
  int getMePageInitialTabIndex();

  /// 获取个人主页滚动透明度计算阈值
  /// 返回: double - 滚动透明度计算阈值
  double getMePageScrollOpacityThreshold();

  /// 获取个人主页昵称滚动显示阈值
  /// 返回: int - 昵称长度超过此值时显示滚动效果
  int getMePageNicknameScrollThreshold();

  /// 获取个人主页年龄显示宽度阈值
  /// 返回: int - 年龄超过此值时调整显示宽度
  int getMePageAgeDisplayWidthThreshold();

  /// 获取个人主页头像显示透明度阈值
  /// 返回: double - 透明度超过此值时显示头像
  double getMePageOpacityThresholdForAvatarDisplay();

  /// === 热门页面差异化方法 ===

  /// 获取热门页面排行榜背景图像路径
  /// 参数: leaderboardType - 排行榜类型 ('room', 'wealth', 'charm')
  /// 返回: String - 背景图像资源路径
  String getPopularLeaderboardBackgroundImage(String leaderboardType);

  /// === 游戏页面差异化方法 ===

  /// 获取游戏页面排名背景图像路径
  /// 参数: rank - 排名 (1, 2, 3, 4)
  /// 返回: String - 排名背景图像资源路径
  String getGameRankBackgroundImage(int rank);

  /// 获取游戏页面排名图标路径
  /// 参数: rank - 排名 (1, 2, 3, 4)
  /// 返回: String - 排名图标资源路径
  String getGameRankIcon(int rank);

  /// 获取游戏页面主题颜色
  /// 返回: Color - 游戏页面主题颜色
  Color getGamePageThemeColor();

  /// 获取游戏页面背景颜色
  /// 返回: Color - 游戏页面背景颜色
  Color getGamePageBackgroundColor();

  /// 获取游戏页面列数配置
  /// 返回: int - 网格列数
  int getGamePageGridCrossAxisCount();

  /// 获取游戏页面网格高度配置
  /// 返回: double - 网格高度比例
  double getGamePageGridChildAspectRatio();

  /// 获取游戏页面排名文本颜色
  /// 参数: rank - 排名 (1, 2, 3, 4)
  /// 返回: Color - 排名文本颜色
  Color getGameRankTextColor(int rank);

  /// 获取游戏页面渐变第二颜色
  /// 返回: Color - 渐变第二颜色
  Color getGamePageGradientSecondColor();

  /// 获取游戏页面热门标签背景图像路径
  /// 返回: String - 热门标签背景图像资源路径
  String getGameHotTagBackgroundImage();

  /// 获取游戏页面新游戏标签图像路径
  /// 返回: String - 新游戏标签图像资源路径
  String getGameNewTagImage();

  /// 获取游戏页面遮罩图像路径
  /// 返回: String - 游戏页面遮罩图像资源路径
  String getGamePageMaskImage();

  /// === VIP页面差异化方法 ===

  /// 获取VIP页面背景图像路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - VIP背景图像资源路径
  String getVipPageBackgroundImage(int vipLevel);

  /// 获取VIP页面图标路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - VIP图标资源路径
  String getVipPageIcon(int vipLevel);

  /// 获取VIP页面按钮渐变颜色
  /// 返回: List&lt;Color&gt; - 按钮渐变颜色列表
  List<Color> getVipPageButtonGradient();

  /// 获取VIP页面网格列数配置
  /// 返回: int - 网格列数
  int getVipPageGridCrossAxisCount();

  /// 获取VIP页面网格高度配置
  /// 返回: double - 网格高度比例
  double getVipPageGridChildAspectRatio();

  /// 获取VIP页面头部背景图像路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - VIP头部背景图像资源路径
  String getVipPageHeadBackgroundImage(int vipLevel);

  /// 获取VIP页面Tab选中状态图标路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - Tab选中状态图标资源路径
  String getVipPageTabSelectedIcon(int vipLevel);

  /// 获取VIP页面Tab未选中状态图标路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - Tab未选中状态图标资源路径
  String getVipPageTabUnselectedIcon(int vipLevel);

  /// 获取VIP页面大图标路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - 大图标资源路径
  String getVipPageLargeIcon(int vipLevel);

  /// 获取VIP页面标题图像路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - 标题图像资源路径
  String getVipPageTitleImage(int vipLevel);

  /// 获取VIP页面标签图像路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 参数: tagIndex - 标签索引 (1或2)
  /// 返回: String - 标签图像资源路径
  String getVipPageTagImage(int vipLevel, int tagIndex);

  /// 获取VIP页面功能项背景图像路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - 功能项背景图像资源路径
  String getVipPageItemBackgroundImage(int vipLevel);

  /// 获取VIP页面特权图标路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 参数: privilegeIndex - 特权索引 (1-14)
  /// 返回: String - 特权图标资源路径
  String getVipPagePrivilegeIcon(int vipLevel, int privilegeIndex);

  /// 获取VIP页面功能图标路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 参数: featureName - 功能名称 ('badge', 'profile_frame', 'profile_card', 'entrance_effect', 'special_gift_tassel', 'mic_rippl_theme', 'chatbox', 'room_cover_headdress', 'exclusive_vehicles')
  /// 返回: String - 功能图标资源路径
  String getVipPageFeatureIcon(int vipLevel, String featureName);

  /// 获取VIP页面预览图像路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 参数: previewType - 预览类型 ('rev', 'pre')
  /// 参数: featureName - 功能名称
  /// 返回: String - 预览图像资源路径
  String getVipPagePreviewImage(
    int vipLevel,
    String previewType,
    String featureName,
  );

  /// 获取VIP页面购买背景图像路径
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: String - 购买背景图像资源路径
  String getVipPagePurchaseBackgroundImage(int vipLevel);

  /// 获取VIP页面购买按钮图像路径
  /// 返回: String - 购买按钮图像资源路径
  String getVipPagePurchaseButtonImage();

  /// 获取VIP页面文本颜色
  /// 参数: vipLevel - VIP等级 (1-9)
  /// 返回: Color - 文本颜色
  Color getVipPageTextColor(int vipLevel);

  /// === 通用页面差异化方法 ===

  /// 获取通用页面排名背景图像路径模式
  /// 参数: pageType - 页面类型 ('top', 'local', 'global', 'today')
  /// 参数: rank - 排名 (1-based)
  /// 返回: String - 排名背景图像资源路径
  String getCommonRankBackgroundImage(String pageType, int rank);

  /// 获取通用页面排名图标路径模式
  /// 参数: pageType - 页面类型 ('top', 'local', 'global', 'today')
  /// 参数: rank - 排名 (1-based)
  /// 返回: String - 排名图标资源路径
  String getCommonRankIcon(String pageType, int rank);

  /// 获取通用页面网格列数配置
  /// 参数: pageType - 页面类型 ('top', 'local', 'global', 'today')
  /// 返回: int - 网格列数
  int getCommonPageGridCrossAxisCount(String pageType);

  /// 获取通用页面网格高度配置
  /// 参数: pageType - 页面类型 ('top', 'local', 'global', 'today')
  /// 返回: double - 网格高度比例
  double getCommonPageGridChildAspectRatio(String pageType);

  /// === 个人主页2 (MePage2) 差异化方法 ===

  /// 获取MePage2钱包区域背景配置
  /// 返回: Map<String, dynamic> - 包含渐变颜色、圆角、阴影等配置
  Map<String, dynamic> getMePage2WalletBackground();

  /// 获取MePage2统计信息颜色配置
  /// 返回: Map<String, Color> - 包含数字颜色、标签颜色、分割线颜色
  Map<String, Color> getMePage2StatisticsColors();

  /// 获取MePage2功能卡片图标路径映射
  /// 返回: Map<String, String> - 功能名称到图标路径的映射
  Map<String, String> getMePage2FunctionIcons();

  /// 获取MePage2卡片样式配置
  /// 返回: Map<String, dynamic> - 包含圆角、阴影、边框等配置
  Map<String, dynamic> getMePage2CardStyles();

  /// === Admin编辑页面差异化方法 ===

  /// 获取Admin编辑页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getAdminEditingBackgroundImage();

  /// 获取Admin编辑页面按钮渐变颜色
  /// 参数: buttonType - 按钮类型 ('warning', 'adjust')
  /// 返回: List<Color> - 渐变颜色列表
  List<Color> getAdminEditingButtonGradient(String buttonType);

  /// 获取Admin编辑页面图标路径
  /// 参数: iconType - 图标类型 ('specialIdBg', 'normalIdBg', 'copyId', 'addPic', 'closePic', 'checked')
  /// 返回: String - 图标资源路径
  String getAdminEditingIcon(String iconType);

  /// 获取Admin编辑页面输入框装饰
  /// 返回: BoxDecoration - 输入框装饰样式
  BoxDecoration getAdminEditingInputDecoration();

  /// 获取Admin编辑页面最大图片上传数量
  /// 返回: int - 最大图片上传数量
  int getAdminEditingMaxImageUploadCount();

  /// 获取Admin编辑页面描述最大长度
  /// 返回: int - 描述文本框最大字符数
  int getAdminEditingDescriptionMaxLength();

  /// 获取Admin编辑页面违规类型映射
  /// 参数: targetType - 目标类型 ('User', 'Room')
  /// 返回: Map<String, int> - 违规类型名称到类型ID的映射
  Map<String, int> getAdminEditingViolationTypeMapping(String targetType);

  /// === Admin搜索页面差异化方法 ===

  /// 获取Admin搜索页面背景图像路径
  /// 参数: pageType - 页面类型 ('userSearch', 'roomSearch')
  /// 返回: String - 背景图像资源路径
  String getAdminSearchBackgroundImage(String pageType);

  /// 获取Admin搜索页面搜索按钮渐变颜色
  /// 参数: pageType - 页面类型 ('userSearch', 'roomSearch')
  /// 返回: List<Color> - 渐变颜色列表
  List<Color> getAdminSearchButtonGradient(String pageType);

  /// 获取Admin搜索页面搜索按钮文本颜色
  /// 参数: pageType - 页面类型 ('userSearch', 'roomSearch')
  /// 返回: Color - 文本颜色
  Color getAdminSearchButtonTextColor(String pageType);

  /// 获取Admin搜索页面编辑图标路径
  /// 参数: pageType - 页面类型 ('userSearch', 'roomSearch')
  /// 返回: String - 编辑图标资源路径
  String getAdminSearchEditIcon(String pageType);

  /// 获取Admin搜索页面搜索框边框颜色
  /// 参数: pageType - 页面类型 ('userSearch', 'roomSearch')
  /// 返回: Color - 边框颜色
  Color getAdminSearchInputBorderColor(String pageType);

  /// 获取Admin搜索页面搜索框文本颜色
  /// 参数: pageType - 页面类型 ('userSearch', 'roomSearch')
  /// 返回: Color - 文本颜色
  Color getAdminSearchInputTextColor(String pageType);

  /// 获取Admin搜索页面用户信息图标路径
  /// 参数: iconType - 图标类型 ('specialIdBg', 'normalIdBg', 'copyId')
  /// 返回: String - 图标资源路径
  String getAdminSearchUserInfoIcon(String iconType);

  /// === Auth页面差异化方法 ===

  /// === 主登录页面 (LoginPage) 方法 ===

  /// 获取主登录页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getLoginMainBackgroundImage();

  /// 获取主登录页面应用图标路径
  /// 返回: String - 应用图标资源路径
  String getLoginMainAppIcon();

  /// 获取主登录页面Google登录图标路径
  /// 返回: String - Google登录图标资源路径
  String getLoginMainGoogleIcon();

  /// 获取主登录页面Apple登录图标路径
  /// 返回: String - Apple登录图标资源路径
  String getLoginMainAppleIcon();

  /// 获取主登录页面账户登录图标路径
  /// 返回: String - 账户登录图标资源路径
  String getLoginMainAccountIcon();

  /// 获取主登录页面协议选择图标路径
  /// 参数: isSelected - 是否选中状态
  /// 返回: String - 协议选择图标资源路径
  String getLoginMainAgreementIcon(bool isSelected);

  /// 获取主登录页面分隔线颜色
  /// 返回: Color - 分隔线颜色
  Color getLoginMainDividerColor();

  /// 获取主登录页面按钮边框颜色
  /// 返回: Color - 按钮边框颜色
  Color getLoginMainButtonBorderColor();

  /// 获取主登录页面按钮背景颜色
  /// 返回: Color - 按钮背景颜色
  Color getLoginMainButtonBackgroundColor();

  /// 获取主登录页面链接文本颜色
  /// 返回: Color - 链接文本颜色
  Color getLoginMainLinkColor();

  /// 获取主登录页面按钮文本颜色
  /// 返回: Color - 按钮文本颜色
  Color getLoginMainButtonTextColor();

  /// === 编辑个人资料页面 (SCEditProfilePage) 方法 ===

  /// 获取编辑个人资料页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getEditProfileBackgroundImage();

  /// 获取编辑个人资料页面默认头像图像路径
  /// 返回: String - 默认头像图像资源路径
  String getEditProfileDefaultAvatarImage();

  /// 获取编辑个人资料页面性别图标路径
  /// 参数: isMale - 是否为男性图标
  /// 返回: String - 性别图标资源路径
  String getEditProfileGenderIcon(bool isMale);

  /// 获取编辑个人资料页面性别按钮渐变颜色
  /// 参数: isMale - 是否为男性按钮
  /// 参数: isSelected - 是否选中状态
  /// 返回: List<Color> - 渐变颜色列表
  List<Color> getEditProfileGenderButtonGradient(bool isMale, bool isSelected);

  /// 获取编辑个人资料页面输入框背景颜色
  /// 返回: Color - 输入框背景颜色
  Color getEditProfileInputBackgroundColor();

  /// 获取编辑个人资料页面日期选择确认按钮颜色
  /// 返回: Color - 日期选择确认按钮颜色
  Color getEditProfileDatePickerConfirmColor();

  /// 获取编辑个人资料页面继续按钮颜色
  /// 返回: Color - 继续按钮颜色
  Color getEditProfileContinueButtonColor();

  /// === Country页面差异化方法 ===

  /// 获取Country页面选择确认图标路径
  /// 返回: String - 选择确认图标资源路径
  String getCountrySelectOkIcon();

  /// 获取Country页面选择未确认图标路径
  /// 返回: String - 选择未确认图标资源路径
  String getCountrySelectUnOkIcon();

  /// 获取Country页面单选选中图标路径
  /// 返回: String - 单选选中图标资源路径
  String getCountryRadioSelectedIcon();

  /// 获取Country页面单选未选中图标路径
  /// 返回: String - 单选未选中图标资源路径
  String getCountryRadioUnselectedIcon();

  /// 获取Country页面国家列表项边框颜色
  /// 返回: Color - 国家列表项边框颜色
  Color getCountryItemBorderColor();

  /// 获取Country页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getCountryPageScaffoldBackgroundColor();

  /// 获取Country页面图标颜色
  /// 返回: Color - 图标颜色
  Color getCountryPageIconColor();

  /// 获取Country页面主要文本颜色
  /// 返回: Color - 主要文本颜色
  Color getCountryPagePrimaryTextColor();

  /// 获取Country页面次要文本颜色
  /// 返回: Color - 次要文本颜色
  Color getCountryPageSecondaryTextColor();

  /// 获取Country页面容器背景颜色
  /// 返回: Color - 容器背景颜色
  Color getCountryPageContainerBackgroundColor();

  /// === Chat页面差异化方法 ===

  /// === 消息页面 (SCMessagePage) 方法 ===

  /// 获取消息页面索引遮罩图标路径
  /// 返回: String - 索引遮罩图标资源路径
  String getMessagePageIndexMaskIcon();

  /// 获取消息页面公告标签图标路径
  /// 返回: String - 公告标签图标资源路径
  String getMessagePageAnnouncementTagIcon();

  /// 获取消息页面活动消息图标路径
  /// 返回: String - 活动消息图标资源路径
  String getMessagePageActivityMessageIcon();

  /// 获取消息页面活动消息标题背景图标路径
  /// 参数: isRtl - 是否为RTL布局（从右到左）
  /// 返回: String - 活动消息标题背景图标资源路径
  String getMessagePageActivityTitleBackground(bool isRtl);

  /// 获取消息页面系统消息图标路径
  /// 返回: String - 系统消息图标资源路径
  String getMessagePageSystemMessageIcon();

  /// 获取消息页面系统消息标题背景图标路径
  /// 参数: isRtl - 是否为RTL布局（从右到左）
  /// 返回: String - 系统消息标题背景图标资源路径
  String getMessagePageSystemTitleBackground(bool isRtl);

  /// 获取消息页面通知消息图标路径
  /// 返回: String - 通知消息图标资源路径
  String getMessagePageNotificationMessageIcon();

  /// 获取消息页面通知消息标题背景图标路径
  /// 参数: isRtl - 是否为RTL布局（从右到左）
  /// 返回: String - 通知消息标题背景图标资源路径
  String getMessagePageNotificationTitleBackground(bool isRtl);

  /// === 聊天页面 (SCMessageChatPage) 方法 ===

  /// 获取聊天页面房间设置背景图像路径
  /// 返回: String - 房间设置背景图像资源路径
  String getSCMessageChatPageRoomSettingBackground();

  /// 获取聊天页面表情图标路径
  /// 返回: String - 表情图标资源路径
  String getSCMessageChatPageEmojiIcon();

  /// 获取聊天页面聊天键盘图标路径
  /// 返回: String - 聊天键盘图标资源路径
  String getSCMessageChatPageChatKeyboardIcon();

  /// 获取聊天页面添加图标路径
  /// 返回: String - 添加图标资源路径
  String getSCMessageChatPageAddIcon();

  /// 获取聊天页面发送消息图标路径
  /// 返回: String - 发送消息图标资源路径
  String getSCMessageChatPageSendMessageIcon();

  /// 获取聊天页面相机图标路径
  /// 返回: String - 相机图标资源路径
  String getSCMessageChatPageCameraIcon();

  /// 获取聊天页面图片图标路径
  /// 返回: String - 图片图标资源路径
  String getSCMessageChatPagePictureIcon();

  /// 获取聊天页面红包图标路径
  /// 返回: String - 红包图标资源路径
  String getSCMessageChatPageRedEnvelopeIcon();

  /// 获取聊天页面红包消息背景图像路径
  /// 返回: String - 红包消息背景图像资源路径
  String getSCMessageChatPageRedEnvelopeMessageBackground();

  /// 获取聊天页面红包配置标签按钮图标路径
  /// 返回: String - 红包配置标签按钮图标资源路径
  String getSCMessageChatPageRedEnvelopeConfigTabButtonIcon();

  /// 获取聊天页面红包消息项背景图像路径
  /// 返回: String - 红包消息项背景图像资源路径
  String getSCMessageChatPageRedEnvelopeMessageItemBackground();

  /// 获取聊天页面红包接收包图标路径
  /// 返回: String - 红包接收包图标资源路径
  String getSCMessageChatPageRedEnvelopeReceivePackageIcon();

  /// 获取聊天页面红包打开背景图像路径
  /// 返回: String - 红包打开背景图像资源路径
  String getSCMessageChatPageRedEnvelopeOpenBackground();

  /// 获取聊天页面红包已打开背景图像路径
  /// 返回: String - 红包已打开背景图像资源路径
  String getSCMessageChatPageRedEnvelopeOpenedBackground();

  /// 获取聊天页面金币图标路径
  /// 返回: String - 金币图标资源路径
  String getSCMessageChatPageGoldCoinIcon();

  /// 获取聊天页面消息菜单删除图标路径
  /// 返回: String - 消息菜单删除图标资源路径
  String getSCMessageChatPageMessageMenuDeleteIcon();

  /// 获取聊天页面消息菜单复制图标路径
  /// 返回: String - 消息菜单复制图标资源路径
  String getSCMessageChatPageMessageMenuCopyIcon();

  /// 获取聊天页面消息菜单撤回图标路径
  /// 返回: String - 消息菜单撤回图标资源路径
  String getSCMessageChatPageMessageMenuRecallIcon();

  /// 获取聊天页面加载图标路径
  /// 返回: String - 加载图标资源路径
  String getSCMessageChatPageLoadingIcon();

  /// 获取聊天页面系统头像图像路径
  /// 返回: String - 系统头像图像资源路径
  String getSCMessageChatPageSystemHeadImage();

  /// === 通用图标差异化方法 ===

  /// 获取性别背景图像路径
  /// 参数: isFemale - 是否为女性
  /// 返回: String - 性别背景图像资源路径
  String getGenderBackgroundImage(bool isFemale);

  /// 获取通用ID背景图像路径
  /// 参数: hasSpecialId - 是否有特殊ID
  /// 返回: String - ID背景图像资源路径
  String getIdBackgroundImage(bool hasSpecialId);

  /// 获取通用复制ID图标路径
  /// 返回: String - 复制ID图标资源路径
  String getCopyIdIcon();

  /// 获取通用选择图标路径
  /// 返回: String - 选择图标资源路径
  String getCommonSelectIcon();

  /// 获取通用未选择图标路径
  /// 返回: String - 未选择图标资源路径
  String getCommonUnselectIcon();

  /// === Gift页面差异化方法 ===

  /// 获取礼物页面首充房间标签图标路径
  /// 返回: String - 首充房间标签图标资源路径
  String getGiftPageFirstRechargeRoomTagIcon();

  /// 获取礼物页面金币图标路径
  /// 返回: String - 金币图标资源路径
  String getGiftPageGoldCoinIcon();

  /// 获取礼物页面赠送类型背景图像路径
  /// 返回: String - 赠送类型背景图像资源路径
  String getGiftPageGiveTypeBackground();

  /// 获取礼物页面活动礼物头部背景图像路径
  /// 参数: giftType - 礼物类型 ('ACTIVITY', 'LUCK', 'CP', 'MAGIC')
  /// 返回: String - 活动礼物头部背景图像资源路径
  String getGiftPageActivityGiftHeadBackground(String giftType);

  /// 获取礼物页面自定义规则图标路径
  /// 返回: String - 自定义规则图标资源路径
  String getGiftPageCustomizedRuleIcon();

  /// 获取礼物页面特效礼物图标路径
  /// 参数: giftType - 礼物类型标识符
  /// 返回: String - 特效礼物图标资源路径
  String getGiftPageGiftEffectIcon(String giftType);

  /// 获取礼物页面音乐礼物图标路径
  /// 参数: giftType - 礼物类型标识符
  /// 返回: String - 音乐礼物图标资源路径
  String getGiftPageGiftMusicIcon(String giftType);

  /// 获取礼物页面幸运礼物图标路径
  /// 参数: giftType - 礼物类型标识符
  /// 返回: String - 幸运礼物图标资源路径
  String getGiftPageGiftLuckIcon(String giftType);

  /// 获取礼物页面CP礼物图标路径
  /// 参数: giftType - 礼物类型标识符
  /// 返回: String - CP礼物图标资源路径
  String getGiftPageGiftCpIcon(String giftType);

  /// 获取礼物页面首充文本图标路径
  /// 参数: languageCode - 语言代码 ('ar'为阿拉伯语, 'en'为英语)
  /// 返回: String - 首充文本图标资源路径
  String getGiftPageFirstRechargeTextIcon(String languageCode);

  /// 获取礼物页面"全开麦"图标路径
  /// 返回: String - "全开麦"图标资源路径
  String getGiftPageAllOnMicrophoneIcon();

  /// 获取礼物页面"用户开麦"图标路径
  /// 返回: String - "用户开麦"图标资源路径
  String getGiftPageUsersOnMicrophoneIcon();

  /// 获取礼物页面"房间所有人"图标路径
  /// 返回: String - "房间所有人"图标资源路径
  String getGiftPageAllInTheRoomIcon();

  /// === Media页面差异化方法 ===

  /// 获取图片预览页面背景颜色
  /// 返回: Color - 页面背景颜色
  Color getImagePreviewBackgroundColor();

  /// 获取图片预览画廊背景颜色
  /// 返回: Color - 画廊背景颜色
  Color getImagePreviewGalleryBackgroundColor();

  /// 获取图片预览AppBar背景颜色
  /// 返回: Color - AppBar背景颜色
  Color getImagePreviewAppBarBackgroundColor();

  /// 获取图片预览返回图标颜色
  /// 返回: Color - 返回图标颜色
  Color getImagePreviewBackIconColor();

  /// 获取图片预览文本颜色
  /// 返回: Color - 文本颜色
  Color getImagePreviewTextColor();

  /// 获取图片预览加载指示器颜色
  /// 返回: Color - 加载指示器颜色
  Color getImagePreviewLoadingIndicatorColor();

  /// 获取图片预览AppBar透明度
  /// 返回: double - AppBar透明度值
  double getImagePreviewAppBarOpacity();

  /// 获取视频播放页面背景颜色
  /// 返回: Color - 页面背景颜色
  Color getVideoPlayerBackgroundColor();

  /// 获取视频播放控制界面背景颜色
  /// 返回: Color - 控制界面背景颜色
  Color getVideoPlayerControlsBackgroundColor();

  /// 获取视频播放图标颜色
  /// 返回: Color - 图标颜色
  Color getVideoPlayerIconColor();

  /// 获取视频播放底部控制栏背景颜色
  /// 返回: Color - 底部控制栏背景颜色
  Color getVideoPlayerBottomControlsBackgroundColor();

  /// 获取视频播放进度条活动颜色
  /// 返回: Color - 进度条活动部分颜色
  Color getVideoPlayerProgressBarActiveColor();

  /// 获取视频播放进度条非活动颜色
  /// 返回: Color - 进度条非活动部分颜色
  Color getVideoPlayerProgressBarInactiveColor();

  /// 获取视频播放文本颜色
  /// 返回: Color - 文本颜色
  Color getVideoPlayerTextColor();

  /// 获取视频播放加载指示器颜色
  /// 返回: Color - 加载指示器颜色
  Color getVideoPlayerLoadingIndicatorColor();

  /// 获取视频播放控制界面透明度
  /// 返回: double - 控制界面透明度值
  double getVideoPlayerControlsOpacity();

  /// 获取视频播放底部控制栏透明度
  /// 返回: double - 底部控制栏透明度值
  double getVideoPlayerBottomControlsOpacity();

  /// 获取视频播放控制界面显示持续时间（秒）
  /// 返回: int - 控制界面显示持续时间（秒）
  int getVideoPlayerControlsDisplayDuration();

  /// === 举报页面差异化方法 ===

  /// 获取举报页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getReportPageBackgroundImage();

  /// 获取举报页面提示文本颜色
  /// 返回: Color - 提示文本颜色
  Color getReportPageHintTextColor();

  /// 获取举报页面容器背景颜色
  /// 返回: Color - 容器背景颜色
  Color getReportPageContainerBackgroundColor();

  /// 获取举报页面边框颜色
  /// 返回: Color - 边框颜色
  Color getReportPageBorderColor();

  /// 获取举报页面主要文本颜色
  /// 返回: Color - 主要文本颜色
  Color getReportPagePrimaryTextColor();

  /// 获取举报页面次级提示文本颜色
  /// 返回: Color - 次级提示文本颜色
  Color getReportPageSecondaryHintTextColor();

  /// 获取举报页面未选中边框颜色
  /// 返回: Color - 未选中边框颜色
  Color getReportPageUnselectedBorderColor();

  /// 获取举报页面提交按钮背景颜色
  /// 返回: Color - 提交按钮背景颜色
  Color getReportPageSubmitButtonBackgroundColor();

  /// 获取举报页面提交按钮文本颜色
  /// 返回: Color - 提交按钮文本颜色
  Color getReportPageSubmitButtonTextColor();

  /// 获取举报页面图标路径
  /// 参数: iconType - 图标类型 ('addPic', 'closePic', 'checked')
  /// 返回: String - 图标资源路径
  String getReportPageIcon(String iconType);

  /// === 语音房间页面差异化方法 ===

  /// 获取语音房间页面背景颜色
  /// 返回: Color - 页面背景颜色
  Color getVoiceRoomBackgroundColor();

  /// 获取语音房间页面Tab标签选中颜色
  /// 返回: Color - Tab标签选中颜色
  Color getVoiceRoomTabLabelColor();

  /// 获取语音房间页面Tab标签未选中颜色
  /// 返回: Color - Tab标签未选中颜色
  Color getVoiceRoomTabUnselectedLabelColor();

  /// 获取语音房间页面Tab指示器颜色
  /// 返回: Color - Tab指示器颜色
  Color getVoiceRoomTabIndicatorColor();

  /// 获取语音房间页面Tab分割线颜色
  /// 返回: Color - Tab分割线颜色
  Color getVoiceRoomTabDividerColor();

  /// 获取语音房间页面Tab标签内边距
  /// 返回: EdgeInsets - Tab标签内边距
  EdgeInsets getVoiceRoomTabLabelPadding();

  /// 获取语音房间页面聊天容器外边距
  /// 返回: EdgeInsets - 聊天容器外边距
  EdgeInsetsDirectional getVoiceRoomChatContainerMargin();

  /// 获取语音房间页面Tab标签选中文本样式
  /// 返回: TextStyle - Tab标签选中文本样式
  TextStyle getVoiceRoomTabLabelStyle();

  /// 获取语音房间页面Tab标签未选中文本样式
  /// 返回: TextStyle - Tab标签未选中文本样式
  TextStyle getVoiceRoomTabUnselectedLabelStyle();

  /// 获取语音房间默认背景图像路径
  /// 返回: String - 默认背景图像资源路径
  String getVoiceRoomDefaultBackgroundImage();

  /// === 钱包页面差异化方法 ===

  /// === 充值页面差异化方法 ===

  /// 获取充值页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getRechargePageBackgroundImage();

  /// 获取充值页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getRechargePageScaffoldBackgroundColor();

  /// 获取充值页面对话框屏障颜色
  /// 返回: Color - 对话框屏障颜色
  Color getRechargePageDialogBarrierColor();

  /// 获取充值页面对话框容器背景颜色
  /// 返回: Color - 对话框容器背景颜色
  Color getRechargePageDialogContainerBackgroundColor();

  /// 获取充值页面对话框文本颜色
  /// 返回: Color - 对话框文本颜色
  Color getRechargePageDialogTextColor();

  /// 获取充值页面主容器背景颜色
  /// 返回: Color - 主容器背景颜色
  Color getRechargePageMainContainerBackgroundColor();

  /// 获取充值页面按钮背景颜色
  /// 返回: Color - 按钮背景颜色
  Color getRechargePageButtonBackgroundColor();

  /// 获取充值页面按钮文本颜色
  /// 返回: Color - 按钮文本颜色
  Color getRechargePageButtonTextColor();

  /// 获取充值页面钱包背景图像路径
  /// 返回: String - 钱包背景图像资源路径
  String getRechargePageWalletBackgroundImage();

  /// 获取充值页面钱包图标路径
  /// 返回: String - 钱包图标资源路径
  String getRechargePageWalletIcon();

  /// 获取充值页面钱包文本颜色
  /// 返回: Color - 钱包文本颜色
  Color getRechargePageWalletTextColor();

  /// 获取充值页面金币图标路径（默认图标）
  /// 返回: String - 金币图标资源路径
  String getRechargePageGoldIcon();

  /// 获取充值页面选中项背景颜色
  /// 返回: Color - 选中项背景颜色
  Color getRechargePageSelectedItemBackgroundColor();

  /// 获取充值页面选中项边框颜色
  /// 返回: Color - 选中项边框颜色
  Color getRechargePageSelectedItemBorderColor();

  /// 获取充值页面未选中项边框颜色
  /// 返回: Color - 未选中项边框颜色
  Color getRechargePageUnselectedItemBorderColor();

  /// 获取充值页面未选中项背景颜色
  /// 返回: Color - 未选中项背景颜色
  Color getRechargePageUnselectedItemBackgroundColor();

  /// 获取充值页面项目文本颜色
  /// 返回: Color - 项目文本颜色
  Color getRechargePageItemTextColor();

  /// 获取充值页面价格文本颜色
  /// 返回: Color - 价格文本颜色
  Color getRechargePageItemPriceTextColor();

  /// 根据索引获取充值页面金币图标路径
  /// 参数: index - 项目索引 (0, 1, 2)
  /// 返回: String - 金币图标资源路径
  String getRechargePageGoldIconByIndex(int index);

  /// 获取充值页面Apple产品项背景颜色
  /// 返回: Color - Apple产品项背景颜色
  Color getRechargePageAppleItemBackgroundColor();

  /// === 金币记录页面差异化方法 ===

  /// 获取金币记录页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getGoldRecordPageBackgroundImage();

  /// 获取金币记录页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getGoldRecordPageScaffoldBackgroundColor();

  /// 获取金币记录页面列表背景颜色
  /// 返回: Color - 列表背景颜色
  Color getGoldRecordSCPageListBackgroundColor();

  /// 获取金币记录页面容器背景颜色
  /// 返回: Color - 容器背景颜色
  Color getGoldRecordPageContainerBackgroundColor();

  /// 获取金币记录页面边框颜色
  /// 返回: Color - 边框颜色
  Color getGoldRecordPageBorderColor();

  /// 获取金币记录页面主要文本颜色
  /// 返回: Color - 主要文本颜色
  Color getGoldRecordPagePrimaryTextColor();

  /// 获取金币记录页面次要文本颜色
  /// 返回: Color - 次要文本颜色
  Color getGoldRecordPageSecondaryTextColor();

  /// 获取充值页面记录图标路径
  /// 返回: String - 充值记录图标资源路径
  String getRechargePageRecordIcon();

  /// === Store页面差异化方法 ===

  /// 获取Store页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getStorePageBackgroundImage();

  /// 获取Store页面购物袋图标路径
  /// 返回: String - 购物袋图标资源路径
  String getStorePageShoppingBagIcon();

  /// 获取Store页面购物袋图标外边距
  /// 返回: EdgeInsetsDirectional - 购物袋图标外边距
  EdgeInsetsDirectional getStorePageShoppingBagMargin();

  /// 获取Store页面Tab标签内边距
  /// 返回: EdgeInsets - Tab标签内边距
  EdgeInsets getStorePageTabLabelPadding();

  /// 获取Store页面Tab标签选中文本样式
  /// 返回: TextStyle - Tab标签选中文本样式
  TextStyle getStorePageTabLabelStyle();

  /// 获取Store页面Tab标签未选中文本样式
  /// 返回: TextStyle - Tab标签未选中文本样式
  TextStyle getStorePageTabUnselectedLabelStyle();

  /// 获取Store页面Tab指示器颜色
  /// 返回: Color - Tab指示器颜色
  Color getStorePageTabIndicatorColor();

  /// 获取Store页面Tab分割线颜色
  /// 返回: Color - Tab分割线颜色
  Color getStorePageTabDividerColor();

  /// 获取Store页面底部Divider颜色
  /// 返回: Color - 底部Divider颜色
  Color getStorePageBottomDividerColor();

  /// 获取Store页面底部Divider厚度
  /// 返回: double - 底部Divider厚度
  double getStorePageBottomDividerThickness();

  /// 获取Store页面底部Divider高度
  /// 返回: double - 底部Divider高度
  double getStorePageBottomDividerHeight();

  /// 获取Store页面金币图标路径
  /// 返回: String - 金币图标资源路径
  String getStorePageGoldIcon();

  /// 获取Store页面金币文本颜色
  /// 返回: Color - 金币文本颜色
  Color getStorePageGoldTextColor();

  /// 获取Store页面金币图标颜色
  /// 返回: Color - 金币图标颜色
  Color getStorePageGoldIconColor();

  /// === Store子页面（商品项）差异化方法 ===

  /// 获取Store商品项背景颜色
  /// 返回: Color - 商品项背景颜色
  Color getStoreItemBackgroundColor();

  /// 获取Store商品项未选中边框颜色
  /// 返回: Color - 未选中边框颜色
  Color getStoreItemUnselectedBorderColor();

  /// 获取Store商品项选中边框颜色
  /// 返回: Color - 选中边框颜色
  Color getStoreItemSelectedBorderColor();

  /// 获取Store商品项金币图标路径
  /// 返回: String - 金币图标资源路径
  String getStoreItemGoldIcon();

  /// 获取Store商品项价格文本颜色
  /// 返回: Color - 价格文本颜色
  Color getStoreItemPriceTextColor();

  /// 获取Store商品项购买按钮背景颜色
  /// 返回: Color - 购买按钮背景颜色
  Color getStoreItemBuyButtonColor();

  /// 获取Store商品项购买按钮文本颜色
  /// 返回: Color - 购买按钮文本颜色
  Color getStoreItemBuyButtonTextColor();

  /// 获取Store商品项操作图标路径
  /// 参数: itemType - 商品类型 ('headdress', 'mountains', 'theme', 'chatbox')
  /// 返回: String - 操作图标资源路径
  String getStoreItemActionIcon(String itemType);

  /// === 动态页面差异化方法 ===

  /// 获取动态页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getDynamicPageBackgroundImage();

  /// 获取动态页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getDynamicPageScaffoldBackgroundColor();

  /// 获取动态页面AppBar背景颜色
  /// 返回: Color - AppBar背景颜色
  Color getDynamicPageAppBarBackgroundColor();

  /// 获取动态页面Tab标签选中颜色
  /// 返回: Color - Tab标签选中颜色
  Color getDynamicPageTabLabelColor();

  /// 获取动态页面Tab标签未选中颜色
  /// 返回: Color - Tab标签未选中颜色
  Color getDynamicPageTabUnselectedLabelColor();

  /// 获取动态页面Tab指示器颜色
  /// 返回: Color - Tab指示器颜色
  Color getDynamicPageTabIndicatorColor();

  /// 获取动态页面Tab分割线颜色
  /// 返回: Color - Tab分割线颜色
  Color getDynamicPageTabDividerColor();

  /// 获取动态页面添加动态按钮图标路径
  /// 返回: String - 添加动态按钮图标资源路径
  String getDynamicPageAddButtonIcon();

  /// 是否启用动态页面Tab标签滚动
  /// 返回: bool - 是否启用Tab标签滚动
  bool shouldDynamicPageTabScrollable();

  /// 获取动态页面Tab标签选中文本样式
  /// 返回: TextStyle - Tab标签选中文本样式
  TextStyle getDynamicPageTabLabelStyle();

  /// 获取动态页面Tab标签未选中文本样式
  /// 返回: TextStyle - Tab标签未选中文本样式
  TextStyle getDynamicPageTabUnselectedLabelStyle();

  /// === 启动页面差异化方法 ===

  /// 获取启动页面背景图像路径
  /// 返回: String - 启动背景图像资源路径
  String getSplashPageBackgroundImage();

  /// 获取启动页面图标路径
  /// 返回: String - 启动图标资源路径
  String getSplashPageIcon();

  /// 获取启动页面跳过按钮背景图像路径
  /// 返回: String - 跳过按钮背景图像资源路径
  String getSplashPageSkipButtonBackground();

  /// 获取启动页面跳过按钮文本颜色
  /// 返回: Color - 跳过按钮文本颜色
  Color getSplashPageSkipButtonTextColor();

  /// 获取启动页面游戏名称背景图像路径
  /// 返回: String - 游戏名称背景图像资源路径
  String getSplashPageKingGamesNameBackground();

  /// 获取启动页面游戏名称文本颜色
  /// 返回: Color - 游戏名称文本颜色
  Color getSplashPageKingGamesTextColor();

  /// 获取启动页面CP名称背景图像路径
  /// 返回: String - CP名称背景图像资源路径
  String getSplashPageCpNameBackground();

  /// 获取启动页面CP名称文本颜色
  /// 返回: Color - CP名称文本颜色
  Color getSplashPageCpTextColor();

  /// === 搜索页面差异化方法 ===

  /// 获取搜索页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getSearchPageScaffoldBackgroundColor();

  /// 获取搜索页面返回图标颜色
  /// 返回: Color - 返回图标颜色
  Color getSearchPageBackIconColor();

  /// 获取搜索页面搜索框边框颜色
  /// 返回: Color - 搜索框边框颜色
  Color getSearchPageInputBorderColor();

  /// 获取搜索页面搜索框文本颜色
  /// 返回: Color - 搜索框文本颜色
  Color getSearchPageInputTextColor();

  /// 获取搜索页面搜索按钮文本颜色
  /// 返回: Color - 搜索按钮文本颜色
  Color getSearchPageButtonTextColor();

  /// 获取搜索页面搜索按钮渐变颜色
  /// 返回: List<Color> - 搜索按钮渐变颜色列表
  List<Color> getSearchPageButtonGradient();

  /// 获取搜索页面历史记录标题文本颜色
  /// 返回: Color - 历史记录标题文本颜色
  Color getSearchPageHistoryTitleTextColor();

  /// 获取搜索页面历史项文本颜色
  /// 返回: Color - 历史项文本颜色
  Color getSearchPageHistoryItemTextColor();

  /// 获取搜索页面历史项背景颜色
  /// 返回: Color - 历史项背景颜色
  Color getSearchPageHistoryItemBackgroundColor();

  /// 获取搜索页面Tab指示器渐变开始颜色
  /// 返回: Color - Tab指示器渐变开始颜色
  Color getSearchPageTabIndicatorGradientStartColor();

  /// 获取搜索页面Tab指示器渐变结束颜色
  /// 返回: Color - Tab指示器渐变结束颜色
  Color getSearchPageTabIndicatorGradientEndColor();

  /// 获取搜索页面Tab标签选中颜色
  /// 返回: Color - Tab标签选中颜色
  Color getSearchPageTabSelectedLabelColor();

  /// 获取搜索页面Tab分割线颜色
  /// 返回: Color - Tab分割线颜色
  Color getSearchPageTabDividerColor();

  /// 获取搜索页面Tab标签未选中颜色
  /// 返回: Color - Tab标签未选中颜色
  Color getSearchPageTabUnselectedLabelColor();

  /// 获取搜索页面分隔容器背景颜色
  /// 返回: Color - 分隔容器背景颜色
  Color getSearchPageDividerContainerBackgroundColor();

  /// 获取搜索页面Tab标签选中文本样式
  /// 返回: TextStyle - Tab标签选中文本样式
  TextStyle getSearchPageTabSelectedLabelStyle();

  /// 获取搜索页面Tab标签未选中文本样式
  /// 返回: TextStyle - Tab标签未选中文本样式
  TextStyle getSearchPageTabUnselectedLabelStyle();

  /// 获取搜索页面搜索结果Tab标签内边距
  /// 返回: EdgeInsets - Tab标签内边距
  EdgeInsets getSearchPageResultTabLabelPadding();

  /// 获取搜索页面搜索结果Tab标签选中颜色
  /// 返回: Color - Tab标签选中颜色
  Color getSearchPageResultTabLabelColor();

  /// 获取搜索页面搜索结果Tab标签未选中颜色
  /// 返回: Color - Tab标签未选中颜色
  Color getSearchPageResultTabUnselectedLabelColor();

  /// 获取搜索页面搜索结果Tab标签未选中文本样式
  /// 返回: TextStyle - Tab标签未选中文本样式
  TextStyle getSearchPageResultTabUnselectedLabelStyle();

  /// 获取搜索页面搜索结果Tab标签选中文本样式
  /// 返回: TextStyle - Tab标签选中文本样式
  TextStyle getSearchPageResultTabLabelStyle();

  /// 获取搜索页面搜索结果Tab指示器颜色（渐变）
  /// 返回: LinearGradient - Tab指示器渐变颜色
  LinearGradient getSearchPageResultTabIndicatorColor();

  /// 获取搜索页面搜索结果Tab指示器宽度
  /// 返回: double - Tab指示器宽度
  double getSearchPageResultTabIndicatorWidth();

  /// 获取搜索页面搜索结果背景颜色
  /// 返回: Color - 搜索结果背景颜色
  Color getSearchPageResultBackgroundColor();

  /// 获取搜索页面清除历史记录图标路径
  /// 返回: String - 清除历史记录图标资源路径
  String getSearchPageClearHistoryIcon();

  /// 获取搜索页面空数据图标路径
  /// 返回: String - 空数据图标资源路径
  String getSearchPageEmptyDataIcon();

  /// === 任务页面差异化方法 ===

  /// 获取任务页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getTaskPageBackgroundImage();

  /// 获取任务页面返回按钮颜色
  /// 返回: Color - 返回按钮颜色
  Color getTaskPageBackButtonColor();

  /// 获取任务页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getTaskPageScaffoldBackgroundColor();

  /// 获取任务页面容器背景颜色
  /// 返回: Color - 容器背景颜色
  Color getTaskPageContainerBackgroundColor();

  /// 获取任务页面边框颜色（普通边框）
  /// 返回: Color - 普通边框颜色
  Color getTaskPageBorderColor();

  /// 获取任务页面边框颜色（特殊边框，如任务项边框）
  /// 返回: Color - 特殊边框颜色
  Color getTaskPageSpecialBorderColor();

  /// 获取任务页面主要文本颜色
  /// 返回: Color - 主要文本颜色
  Color getTaskPagePrimaryTextColor();

  /// 获取任务页面金币文本颜色（折扣前价格）
  /// 返回: Color - 金币文本颜色
  Color getTaskPageGoldTextColor();

  /// 获取任务页面经验值文本颜色
  /// 返回: Color - 经验值文本颜色
  Color getTaskPageExpTextColor();

  /// 获取任务页面主题颜色（用于SocialChatTheme.primaryColor）
  /// 返回: Color - 主题颜色
  Color getTaskPageThemeColor();

  /// 获取任务页面主题浅色（用于SocialChatTheme.primaryLight）
  /// 返回: Color - 主题浅色
  Color getTaskPageThemeLightColor();

  /// 获取任务页面可领取按钮渐变颜色
  /// 返回: List<Color> - 可领取按钮渐变颜色列表
  List<Color> getTaskPageReceivableButtonGradient();

  /// 获取任务页面已完成按钮渐变颜色
  /// 返回: List<Color> - 已完成按钮渐变颜色列表
  List<Color> getTaskPageCompletedButtonGradient();

  /// 获取任务页面按钮文本颜色
  /// 返回: Color - 按钮文本颜色
  Color getTaskPageButtonTextColor();

  /// 获取任务页面遮罩颜色
  /// 返回: Color - 遮罩颜色
  Color getTaskPageMaskColor();

  /// 获取任务页面头部背景图像路径
  /// 返回: String - 头部背景图像资源路径
  String getTaskPageHeadBackgroundImage();

  /// 获取任务页面金币图标路径
  /// 返回: String - 金币图标资源路径
  String getTaskPageGoldIcon();

  /// 获取任务页面经验值图标路径
  /// 返回: String - 经验值图标资源路径
  String getTaskPageExpIcon();

  /// 获取任务页面邀请奖励背景图像路径
  /// 返回: String - 邀请奖励背景图像资源路径
  String getTaskPageInvitationRewardBackgroundImage();

  /// 获取任务页面礼品袋文本颜色
  /// 返回: Color - 礼品袋文本颜色
  Color getTaskPageGiftBagTextColor();

  /// 获取任务页面AppBar背景颜色
  /// 返回: Color - AppBar背景颜色
  Color getTaskPageAppBarBackgroundColor();

  /// 获取任务页面透明容器颜色
  /// 返回: Color - 透明容器颜色
  Color getTaskPageTransparentContainerColor();

  /// === WebView页面差异化方法 ===

  /// === 普通WebView页面方法 ===

  /// 获取WebView页面AppBar背景颜色
  /// 返回: Color - AppBar背景颜色
  Color getWebViewPageAppBarBackgroundColor();

  /// 获取WebView页面标题文本颜色
  /// 返回: Color - 标题文本颜色
  Color getWebViewPageTitleTextColor();

  /// 获取WebView页面返回箭头图标颜色
  /// 返回: Color - 返回箭头图标颜色
  Color getWebViewPageBackArrowColor();

  /// 获取WebView页面进度条背景颜色
  /// 返回: Color - 进度条背景颜色
  Color getWebViewPageProgressBarBackgroundColor();

  /// 获取WebView页面进度条活动颜色
  /// 返回: Color - 进度条活动颜色
  Color getWebViewPageProgressBarActiveColor();

  /// === 游戏WebView页面方法 ===

  /// 获取游戏WebView页面关闭图标颜色
  /// 返回: Color - 关闭图标颜色
  Color getGameWebViewCloseIconColor();

  /// 获取游戏WebView页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getGameWebViewScaffoldBackgroundColor();

  /// 获取游戏WebView页面加载指示器颜色
  /// 返回: Color - 加载指示器颜色
  Color getGameWebViewLoadingIndicatorColor();

  /// 获取游戏WebView页面进度条背景颜色
  /// 返回: Color - 进度条背景颜色
  Color getGameWebViewProgressBarBackgroundColor();

  /// === 设置页面差异化方法 ===

  /// 获取设置页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getSettingsPageBackgroundImage();

  /// 获取设置页面主容器背景颜色
  /// 返回: Color - 主容器背景颜色
  Color getSettingsPageMainContainerBackgroundColor();

  /// 获取设置页面主容器边框颜色
  /// 返回: Color - 主容器边框颜色
  Color getSettingsPageMainContainerBorderColor();

  /// 获取设置页面主文本颜色
  /// 返回: Color - 主文本颜色
  Color getSettingsPagePrimaryTextColor();

  /// 获取设置页面次要文本颜色
  /// 返回: Color - 次要文本颜色
  Color getSettingsPageSecondaryTextColor();

  /// 获取设置页面图标颜色
  /// 返回: Color - 图标颜色
  Color getSettingsPageIconColor();

  /// 获取设置页面常见文本颜色
  /// 返回: Color - 常见文本颜色
  Color getSettingsPageCommonTextColor();

  /// 获取设置页面关于文本颜色
  /// 返回: Color - 关于文本颜色
  Color getSettingsPageAboutTextColor();

  /// 获取设置页面容器边框颜色
  /// 返回: Color - 容器边框颜色
  Color getSettingsPageContainerBorderColor();

  /// 获取设置页面容器背景颜色
  /// 返回: Color - 容器背景颜色
  Color getSettingsPageContainerBackgroundColor();

  /// 获取设置页面按钮背景颜色
  /// 返回: Color - 按钮背景颜色
  Color getSettingsPageButtonBackgroundColor();

  /// 获取设置页面按钮文本颜色
  /// 返回: Color - 按钮文本颜色
  Color getSettingsPageButtonTextColor();

  /// === 语言页面差异化方法 ===

  /// 获取语言页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getLanguagePageBackgroundImage();

  /// 获取语言页面复选框选中颜色
  /// 返回: Color - 复选框选中颜色
  Color getLanguagePageCheckboxActiveColor();

  /// 获取语言页面复选框边框颜色
  /// 返回: Color - 复选框边框颜色
  Color getLanguagePageCheckboxBorderColor();

  /// 获取语言页面主文本颜色
  /// 返回: Color - 主文本颜色
  Color getLanguagePagePrimaryTextColor();

  /// 获取语言页面复选框对勾颜色
  /// 返回: Color - 复选框对勾颜色
  Color getLanguagePageCheckColor();

  /// 获取语言页面复选框边框圆角
  /// 返回: double - 边框圆角值
  double getLanguagePageCheckboxBorderRadius();

  /// 获取语言页面复选框边框宽度
  /// 返回: double - 边框宽度值
  double getLanguagePageCheckboxBorderWidth();

  /// 获取语言页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getLanguagePageScaffoldBackgroundColor();

  /// === 账户页面差异化方法 ===

  /// 获取账户页面背景图像路径
  /// 返回: String - 背景图像资源路径
  String getAccountPageBackgroundImage();

  /// 获取账户页面主容器背景颜色
  /// 返回: Color - 主容器背景颜色
  Color getAccountPageMainContainerBackgroundColor();

  /// 获取账户页面主容器边框颜色
  /// 返回: Color - 主容器边框颜色
  Color getAccountPageMainContainerBorderColor();

  /// 获取账户页面主文本颜色
  /// 返回: Color - 主文本颜色
  Color getAccountPagePrimaryTextColor();

  /// 获取账户页面次要文本颜色
  /// 返回: Color - 次要文本颜色
  Color getAccountPageSecondaryTextColor();

  /// 获取账户页面图标颜色
  /// 返回: Color - 图标颜色
  Color getAccountPageIconColor();

  /// 获取账户页面分隔线颜色
  /// 返回: Color - 分隔线颜色
  Color getAccountPageDividerColor();

  /// 获取账户页面Scaffold背景颜色
  /// 返回: Color - Scaffold背景颜色
  Color getAccountPageScaffoldBackgroundColor();

  Color getGoldRecordPageListBackgroundColor();
}
