/* ================================================================
   Tailwind 变量补全 + 渐变还原
   模版 style.css 用 var(--tw-gradient-stops) 单参数 linear-gradient，
   但不引 Tailwind（变量无人定义）→ 渐变全部失效
   本文件按模版 CSS 规则链**逐步还原**每个模块的真实色值
   色值均从 style.css 的 --tw-gradient-from/via/to 定义中提取，未自行编造
   ================================================================ */

/* ============ 1. 全局 Tailwind 变量兜底 ============ */
:root {
    --tw-gradient-from: #17A398;
    --tw-gradient-from-position: ;
    --tw-gradient-via: #0A6B64;
    --tw-gradient-via-position: ;
    --tw-gradient-to: #07544F;
    --tw-gradient-to-position: ;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-via), var(--tw-gradient-to);

    --tw-bg-opacity: 1;
    --tw-border-opacity: 1;
    --tw-divide-opacity: 1;
    --tw-text-opacity: 1;
    --tw-placeholder-opacity: 1;
    --tw-ring-opacity: 1;
    --tw-ring-offset-opacity: 1;

    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;

    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;

    --tw-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;

    /* ---- 补充：style.css 引用但未定义（会导致阴影/间距静默失效） ---- */
    --tw-shadow-color: rgba(7, 84, 79, .95);   /* 61 处引用：品牌深绿阴影色 */
    --tw-ring-color: rgba(10, 107, 100, .5);     /* 品牌绿，原蓝色跑偏 */
    --tw-ring-inset: ;
    --tw-ring-offset-color: #fff;
    --tw-ring-offset-width: 0px;
    --tw-space-y-reverse: 0;                    /* 67 处引用：space-y-* 反向计算 */
    --tw-divide-y-reverse: 0;                   /* divide-y-* 反向计算 */
    --tw-scroll-snap-strictness: proximity;
    --tw-ordinal: ;                             /* 字体变体开关 */
    --tw-slashed-zero: ;                        /* 数字 0 带斜线 */
    --tw-gradient-via-position: ;
}

.backdrop-blur    { --tw-backdrop-blur: blur(8px); }

/* 顶部深色信息条  #07544F */
.hd-topbar {
    background-image: linear-gradient(to right, #07544F, #07544F) !important;
}

/* 免费咨询按钮  #0A6B64 → #07544F */
.hd-cta {
    background-image: linear-gradient(to right, #0A6B64, #07544F) !important;
}

/* 导航下划线（激活态/普通态同色）  #17A398 → #0A6B64  高 2px */
.hd-menu-line,
.hd-menu-line {
    background-image: linear-gradient(to right, #17A398, #0A6B64) !important;
}

/* Header LOGO 图标  #17A398 → #07544F  尺寸 2.75rem */
.hd-logo-mark {
    background-image: linear-gradient(to bottom right, #17A398, #07544F) !important;
}

/* ================================================================
   4. 恢复模版的标记类（让模版的 :not() 防误触规则自动失效）
   ------------------------------------------------------------
   模版有这条规则：
     .X:not([class*="animate-"]):not([class*="group-hover"])
      :not([class*="opacity-100"]):not([class*="pointer-events-none"])
      { pointer-events: none; }

   用意：opacity:0 → opacity:100 过渡的元素，在透明时禁用鼠标，
   防止透明层拦截点击。

   原版 HTML 带 Tailwind 标记类（transition-all / opacity-0 等），
   编译成 BEM 后标记丢失 → 四个 :not() 全部命中 → **元素永久被禁用**。

   正解：把标记类补回模板，让模版规则自动失效（而非用 !important 硬覆盖）。
   ================================================================ */
.opacity-100 { opacity: 1; }
.opacity-0   { opacity: 0; }
.pointer-events-none { pointer-events: none; }
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(.4, 0, .2, 1); }
.translate-y-8   { --tw-translate-y: 2rem; }


/* ================================================================
   5. 滚动显现动画（纯增强，JS 不跑也不影响可见性）
   内容已由上面强制可见，这里只在进入视口时做轻微淡入上移。
   ================================================================ */
html.ep-js [data-reveal].ep-in {
    animation: ep-reveal-fade .55s cubic-bezier(.4, 0, .2, 1) both;
}

@keyframes ep-reveal-fade {
    from {
        opacity: .4;
        transform: translate3d(0, 16px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

/* 瀑布节奏 */
html.ep-js [data-reveal].ep-in[style*="transition-delay: 80ms"]   { animation-delay: 80ms; }
html.ep-js [data-reveal].ep-in[style*="transition-delay: 100ms"]  { animation-delay: 100ms; }
html.ep-js [data-reveal].ep-in[style*="transition-delay: 150ms"]  { animation-delay: 150ms; }
html.ep-js [data-reveal].ep-in[style*="transition-delay: 160ms"]  { animation-delay: 160ms; }
html.ep-js [data-reveal].ep-in[style*="transition-delay: 200ms"]  { animation-delay: 200ms; }
html.ep-js [data-reveal].ep-in[style*="transition-delay: 240ms"]  { animation-delay: 240ms; }
html.ep-js [data-reveal].ep-in[style*="transition-delay: 250ms"]  { animation-delay: 250ms; }
html.ep-js [data-reveal].ep-in[style*="transition-delay: 300ms"]  { animation-delay: 300ms; }

/* ================================================================
   6. 无障碍：尊重系统「减少动效」
   ================================================================ */
@media (prefers-reduced-motion: reduce) {
    html.ep-js [data-reveal].ep-in { animation: none !important; }
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: .01ms !important; }
}
