/*
   H5 Phase4 home-critical.css — 首屏阻塞层（P4-A trim + P4-B 并入 app-overrides）
 * 来源归档：archive/home-critical-pre-p4/{home-critical,home-app-overrides}.css
 * 含：首屏轮播 / hm-quick / 共享 token / 非产品区暗黑双分支基线
 * 不含：完整 husir-xl 产品区、pill-tip、交互态和非暗黑纯视觉装饰
 *   → 见 home-xl-compact.css / home-xl-desktop.css
 * 生成：scripts/trim-home-critical.mjs（2026-08-06）
 * 重生成：node scripts/trim-home-critical.mjs
 * 暗黑双分支保持；禁止手改 .min.*


 *//*
  H5 Phase2 home-critical.css — Phase4/后续裁剪的归档输入
 * 来源：custom-components / temp-modules / home-temp-reuse 按选择器前缀剪切
 * 原始输入含 .hm-quick-* / .husir-xl* / #husir-xl* / 必要 :root token；
 * live home-critical 已把完整产品区按端型迁入 home-xl-compact.css / home-xl-desktop.css。
 * 生成：scripts/split-home-css.mjs（2026-07-24）
 * 禁止手改 .min.*；暗黑双分支保持源文件语义
 * 重生成：node scripts/split-home-css.mjs

 */

/*
  === from custom-components.css (critical) ===
 */

/*
 * 自定义覆盖层（外部覆写，不改核心压缩文件）
 * 约束：所有覆盖规则必须放在 .custom-override 命名空间内
 */

:root {
  /* 颜色系统 */
  --co-color-primary: #cf1322;
  --co-color-primary-hover: #a8071a;
  --co-color-text: #1f1f1f;
  --co-color-text-secondary: #595959;
  --co-color-border: #e8e8e8;
  --co-color-bg: #ffffff;
  --co-color-bg-soft: #fafafa;

  /* 间距系统 */
  --co-space-0: 0;
  --co-space-1: 4px;
  --co-space-2: 8px;
  --co-space-3: 12px;
  --co-space-4: 16px;
  --co-space-5: 20px;
  --co-space-6: 24px;
  --co-space-8: 32px;

  /* 圆角与阴影 */
  --co-radius-sm: 4px;
  --co-radius-md: 8px;
  --co-radius-lg: 12px;
  --co-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
  --co-shadow-md: 0 6px 20px rgba(0, 0, 0, 0.12);

  /* 层级系统 */
  --co-z-base: 1;
  --co-z-dropdown: 1000;
  --co-z-sticky: 1020;
  --co-z-fixed: 1030;
  --co-z-modal: 1050;
  --co-z-toast: 1080;

  /* 动效 */
  --co-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --co-duration-fast: 160ms;
  --co-duration-normal: 240ms;
    /* 设计令牌 */
    --carousel-gap: 32px;
    --glass-bg: rgba(16, 18, 23, 0.32);
    --glass-border: 1px solid rgba(255, 255, 255, 0.24);
    --active-color: #ffffff;
    --inactive-color: rgba(255, 255, 255, 0.5);
    --temp-font-heading: 'PingFang SC', 'Microsoft YaHei', 'Hiragino Sans GB', 'STHeiti', 'SimSun', serif;
    --temp-font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', Arial, sans-serif;
    --temp-font-decorative: 'STKaiti', 'KaiTi', 'Kaiti SC', 'SimKai', 'FangSong', serif;
    --temp-crimson: #C23A2B;
    --temp-crimson-light: #E85D4E;
    --temp-crimson-dark: #8B1E14;
    --temp-gold: #C9A96E;
    --temp-gold-light: #E8D5A3;
    --temp-gold-dark: #A0824A;
    --temp-ink: #0D0D0D;
    --temp-ink-light: #1F1F1F;
    --temp-paper: #F5F0E8;
    --temp-water: #2C5F6E;
    --temp-jade: #3D8B6F;
}

/* 首页快捷入口：手机端 2×3 基础布局 + 克制 Liquid Glass 图标。 */
@media (max-width: 900px) {
  body.custom-override main.md-home .hm-quick-grid {
    --hmq-panel-bg: rgba(255, 255, 255, 0.58);
    --hmq-panel-border: rgba(255, 255, 255, 0.82);
    --hmq-panel-shadow: 0 14px 34px rgba(78, 48, 36, 0.11), inset 0 1px 0 rgba(255, 255, 255, 0.92);
    --hmq-divider: rgba(92, 62, 50, 0.12);
    --hmq-item-hover: rgba(255, 255, 255, 0.42);
    --hmq-icon-bg: linear-gradient(145deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 250, 247, 0.48) 58%, rgba(255, 232, 222, 0.34) 100%);
    --hmq-icon-border: rgba(255, 255, 255, 0.9);
    --hmq-icon-shadow: 0 7px 16px rgba(103, 65, 48, 0.13), inset 0 1px 1px rgba(255, 255, 255, 0.96), inset 0 -1px 1px rgba(159, 88, 59, 0.08);
    --hmq-icon-highlight: linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0));
    --hmq-label: var(--dm-text, #1d1d1f);
    --hmq-arrow: rgba(84, 61, 52, 0.5);
    display: block;
    padding: 20px 15px;
    margin: 0;
    background: transparent;
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-grid__inner {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    padding: 12px;
    overflow: hidden;
    border: 1px solid var(--hmq-panel-border);
    border-radius: 20px;
    background: var(--hmq-panel-bg);
    box-shadow: var(--hmq-panel-shadow);
    -webkit-backdrop-filter: blur(18px) saturate(1.16);
    backdrop-filter: blur(18px) saturate(1.16);
    isolation: isolate;
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 0;
    min-height: 68px;
    padding: 8px;
    border: 0;
    border-bottom: 1px solid var(--hmq-divider);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--hmq-label);
    text-align: left;
    -webkit-tap-highlight-color: transparent;
    transition: background-color 180ms cubic-bezier(0.22, 1, 0.36, 1), transform 180ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card:nth-child(odd) {
    border-inline-end: 1px solid var(--hmq-divider);
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card::after {
    content: "›";
    position: absolute;
    top: 50%;
    right: 8px;
    color: var(--hmq-arrow);
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    transform: translateY(-50%);
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card__icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--hmq-icon-border);
    border-radius: 12px;
    background: var(--hmq-icon-bg);
    box-shadow: var(--hmq-icon-shadow);
    color: var(--husir-coral, var(--dm-accent, #d9583c));
    -webkit-backdrop-filter: blur(12px) saturate(1.3);
    backdrop-filter: blur(12px) saturate(1.3);
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card__icon::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 3px;
    right: 4px;
    left: 4px;
    height: 46%;
    border-radius: 9px 9px 50% 50%;
    background: var(--hmq-icon-highlight);
    pointer-events: none;
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card__icon svg {
    position: relative;
    z-index: 1;
    width: 22px;
    height: 22px;
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card__label {
    min-width: 0;
    overflow: hidden;
    color: var(--hmq-label);
    font-size: 14px;
    font-weight: 650;
    line-height: 1.3;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* 极窄屏优先保留完整图文组，装饰箭头不参与导航语义。 */
@media (max-width: 359px) {
  body.custom-override main.md-home .hm-quick-grid .hm-quick-card::after {
    display: none;
  }
}

/* 平板竖屏改为 3×2，内容居中并重排分隔线；手机横屏与其他平台继续使用基础布局。 */
@media (min-width: 600px) and (max-width: 833px) and (orientation: portrait) {
  body.custom-override main.md-home .hm-quick-grid .hm-quick-grid__inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card {
    display: flex;
    flex-direction: row;
    justify-content: center;
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card::after {
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card:nth-child(odd) {
    border-inline-end: 0;
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card:nth-child(3n + 1),
  body.custom-override main.md-home .hm-quick-grid .hm-quick-card:nth-child(3n + 2) {
    border-inline-end: 1px solid var(--hmq-divider);
  }

  body.custom-override main.md-home .hm-quick-grid .hm-quick-card__label {
    font-size: 16px;
    text-align: center;
  }
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  @media (max-width: 900px) {
    body.custom-override main.md-home .hm-quick-grid {
      --hmq-panel-bg: rgba(255, 255, 255, 0.96);
      --hmq-icon-bg: rgba(255, 248, 244, 0.98);
    }
  }
}

@media (prefers-color-scheme: dark) and (max-width: 900px) {
  html:not(.husir-light) body.custom-override main.md-home .hm-quick-grid {
    --hmq-panel-bg: var(--dm-bg-secondary);
    --hmq-panel-bg: color-mix(in srgb, var(--dm-bg-secondary) 70%, transparent);
    --hmq-panel-border: rgba(255, 255, 255, 0.16);
    --hmq-panel-shadow: 0 18px 38px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.14);
    --hmq-divider: rgba(255, 255, 255, 0.1);
    --hmq-item-hover: rgba(255, 255, 255, 0.07);
    --hmq-icon-bg: linear-gradient(145deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.09) 58%, rgba(255, 111, 77, 0.1) 100%);
    --hmq-icon-border: rgba(255, 255, 255, 0.22);
    --hmq-icon-shadow: 0 8px 20px rgba(0, 0, 0, 0.26), inset 0 1px 1px rgba(255, 255, 255, 0.26), inset 0 -1px 1px rgba(0, 0, 0, 0.12);
    --hmq-icon-highlight: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0));
    --hmq-label: var(--dm-text, #f5f5f7);
    --hmq-arrow: rgba(255, 255, 255, 0.42);
  }
}

@media (max-width: 900px) {
  html.husir-dark body.custom-override main.md-home .hm-quick-grid {
    --hmq-panel-bg: var(--dm-bg-secondary);
    --hmq-panel-bg: color-mix(in srgb, var(--dm-bg-secondary) 70%, transparent);
    --hmq-panel-border: rgba(255, 255, 255, 0.16);
    --hmq-panel-shadow: 0 18px 38px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.14);
    --hmq-divider: rgba(255, 255, 255, 0.1);
    --hmq-item-hover: rgba(255, 255, 255, 0.07);
    --hmq-icon-bg: linear-gradient(145deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.09) 58%, rgba(255, 111, 77, 0.1) 100%);
    --hmq-icon-border: rgba(255, 255, 255, 0.22);
    --hmq-icon-shadow: 0 8px 20px rgba(0, 0, 0, 0.26), inset 0 1px 1px rgba(255, 255, 255, 0.26), inset 0 -1px 1px rgba(0, 0, 0, 0.12);
    --hmq-icon-highlight: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0));
    --hmq-label: var(--dm-text, #f5f5f7);
    --hmq-arrow: rgba(255, 255, 255, 0.42);
  }
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  @media (prefers-color-scheme: dark) and (max-width: 900px) {
    html:not(.husir-light) body.custom-override main.md-home .hm-quick-grid {
      --hmq-panel-bg: var(--dm-bg-secondary);
      --hmq-icon-bg: rgba(55, 48, 45, 0.98);
    }
  }

  @media (max-width: 900px) {
    html.husir-dark body.custom-override main.md-home .hm-quick-grid {
      --hmq-panel-bg: var(--dm-bg-secondary);
      --hmq-icon-bg: rgba(55, 48, 45, 0.98);
    }
  }
}

/*
 * 覆写示例占位：
 * .custom-override .some-component { }
 * .custom-override .some-component.is-active { }
 */

/* 现代化 UI 覆盖层 (Custom Components) */
/* CSS Override Active */

/*
 * 轮播分页器（玻璃态胶囊）—— Swiper 11 CSS 变量驱动方案
 * 原 !important 硬覆盖已替换为官方变量（swiper.min.css 验证可用）：
 *   --swiper-pagination-bullet-inactive-color  非激活圆点颜色
 *   --swiper-pagination-color                  激活圆点颜色
 *   --swiper-pagination-bullet-width/height    圆点尺寸
 *   --swiper-pagination-bullet-border-radius   圆点圆角
 * 容器自身的 background/border/padding/gap/display 非 Swiper 默认样式，无需 !important。
 */
.custom-override .md-home .banner .swiper-pagination.sw_pag {
    /* Swiper 11 官方变量：驱动 .swiper-pagination-bullet 子元素 */
    --swiper-pagination-bullet-inactive-color: rgba(255, 255, 255, 0.5);
    --swiper-pagination-color: #ffffff;
    --swiper-pagination-bullet-width: 8px;
    --swiper-pagination-bullet-height: 8px;
    --swiper-pagination-bullet-border-radius: 50%;
    background: var(--glass-bg) !important;
    border: var(--glass-border) !important;
    border-radius: 999px !important;
    padding: 8px 16px !important;
    display: inline-flex !important;
    gap: var(--carousel-gap) !important;
    backdrop-filter: blur(10px) !important;
}

/* 激活态：拉宽成胶囊（Swiper 默认 .swiper-pagination-bullet-active 仅 scale(1)，不冲突） */
.custom-override .md-home .banner .swiper-pagination.sw_pag .swiper-pagination-bullet-active {
    width: var(--swiper-pagination-bullet-width-active, 24px);
    background: var(--active-color) !important;
    border-radius: 4px !important;
}

/* 手机端轮播分页器尺寸缩小一倍 */
@media (max-width: 900px) {
    .custom-override .md-home .banner .swiper-pagination.sw_pag {
        --swiper-pagination-bullet-width: 4px;
        --swiper-pagination-bullet-height: 4px;
        padding: 4px 8px;
        gap: 16px;
    }

    .custom-override .md-home .banner .swiper-pagination.sw_pag .swiper-pagination-bullet-active {
        width: var(--swiper-pagination-bullet-width-active, 12px);
        border-radius: 2px;
    }
}

/* 浏览器批注收口：手机首页模块只调外层呼吸，不改组件内部密度。 */
@media (max-width: 900px) {
  body.custom-override main.md-home .hm-quick-grid {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

body.custom-override main.md-home .ey-btn-modern {
  border-radius: var(--hs-radius-sm) !important;
}

/* ===== Banner Pagination Glass Override (force apply) ===== */
.md-home .banner,
.md-home .banner .swiper-container,
.md-home .banner .swiper {
  position: relative;
}

/* 覆盖原有 left:22px / top:531px 的强制定位 */
.md-home .banner .swiper-container > .swiper-pagination.sw_pag.swiper-pagination-bullets,
.md-home .banner .swiper-container > .swiper-pagination.sw_pag,
.md-home .banner .swiper-container > .swiper-pagination {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  top: auto !important;
  bottom: 20px !important;
  width: auto !important;
  transform: translateX(-50%) !important;
  z-index: 20 !important;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 24px !important;

  padding: 16px 28px;
  border-radius: 999px;
  background: rgba(16, 18, 23, 0.32);
  border: 1px solid rgba(255, 255, 255, 0.24);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.md-home .banner .swiper-pagination.sw_pag .swiper-pagination-bullet,
.md-home .banner .swiper-pagination .swiper-pagination-bullet {
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.58) !important;
  opacity: 1 !important;
  background-image: none !important;
  transform: scale(1);
  transition: width 0.35s ease, transform 0.28s ease, background-color 0.28s ease, box-shadow 0.28s ease;
}

/* 关闭老样式里的中心小白点，以免视觉叠加冲突 */
.md-home .banner .swiper-pagination.sw_pag .swiper-pagination-bullet::after,
.md-home .banner .swiper-pagination .swiper-pagination-bullet::after {
  content: none !important;
}

.md-home .banner .swiper-pagination .swiper-pagination-bullet-active {
  width: 56px !important;
  background: linear-gradient(90deg, #ffffff 0%, #f7d7a7 100%) !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.35) inset, 0 0 10px rgba(255, 224, 164, 0.48) !important;
  transform: scale(1.06);
}

@media (max-width: 900px) {
  .md-home .banner .swiper-container > .swiper-pagination.sw_pag.swiper-pagination-bullets,
  .md-home .banner .swiper-container > .swiper-pagination.sw_pag,
  .md-home .banner .swiper-container > .swiper-pagination {
    bottom: 14px !important;
    gap: 10px !important;
    padding: 8px 12px;
  }

  .md-home .banner .swiper-pagination.sw_pag .swiper-pagination-bullet {
    width: 5px !important;
    height: 5px !important;
  }

  .md-home .banner .swiper-pagination.sw_pag .swiper-pagination-bullet-active {
    width: 14px !important;
  }
}