/* 心语片刻网站自定义样式 */

/* 全局重置样式 - 修复右侧白边问题 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  width: 100%;
  overflow-x: hidden; /* 防止水平滚动条 */
}

/* CSS变量定义 */
:root {
  /* 主要颜色 */
  --color-bg-primary: #FBFBF8;      /* 主背景色 */
  --color-bg-secondary: #F8F7F4;    /* 次背景色 */
  --color-bg-white: #FFFFFF;        /* 白色区块 */
  --color-text-primary: #4a4a4a;    /* 主文字色 */
  
  /* 点缀色 */
  --color-amber: #FBBF24;           /* 琥珀色 */
  --color-amber-light: #FEF3C7;     /* 浅琥珀色 */
  --color-blue: #A7C7E7;            /* 静谧蓝 */
  --color-blue-dark: #6B8AAB;       /* 深静谧蓝 */
  
  /* 功能色 */
  --color-footer: #1f2937;          /* 页脚背景 */
  
  /* 字体 */
  --font-serif: 'Noto Serif SC', serif;
  --font-sans: 'Noto Sans SC', sans-serif;

  /* 英雄区卡片雨安全区（避免与标题/副标题重叠） */
  --hero-card-start: 16vh;          /* 卡片雨容器距顶部的安全起始高度 */
  --hero-bottom-safe: 12vh;         /* 距底部的安全高度，避免压住下载与徽章区 */

  /* 卡片几何与堆叠安全距离 */
  --card-h: 420px;                  /* 桌面端卡片高度 */
  --card-bottom-gap: 3.5vh;         /* 卡片堆叠到底部的额外间距 */
}

/* 移动端：为标题预留更大的安全区并设置卡片尺寸变量 */
@media (max-width: 768px) {
  :root {
    --hero-card-start: 12vh;
    --hero-bottom-safe: 14vh;
    --card-h: 330px;               /* 移动端卡片高度 */
    --card-bottom-gap: 10vh;       /* 提高移动端底部间距，避免与下载区重叠 */
  }
}

/* 超小屏进一步上移（≤480px） */
@media (max-width: 480px) {
  :root {
    --card-bottom-gap: 14vh;       /* 超小屏更大的底部安全间距 */
  }
}

/* 基础样式 */
body {
  font-family: var(--font-sans);
  background-color: var(--color-bg-primary);
  color: var(--color-text-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 标题字体 */
h1, h2, h3, blockquote {
  font-family: var(--font-serif);
}

/* 自定义背景色类 */
.bg-primary {
  background-color: var(--color-bg-primary);
}

.bg-secondary {
  background-color: var(--color-bg-secondary);
}

.bg-footer {
  background-color: var(--color-footer);
}

/* 英雄区主节 - 重新设计为精确的位置布局 */
.hero-section {
    height: 100vh; /* 固定高度为全屏 */
    width: 100%;
    position: relative;
    background-image: url('../images/hero-bg.jpg');
    background-size: cover;
    background-position: center;
    color: white;
    overflow: hidden; /* 防止卡片从顶部显示出来 */
}

.hero-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.3) 70%, rgba(0,0,0,0.8) 100%);
  z-index: 1;
}

.hero-section > * {
    position: relative;
    z-index: 2;
}


/* 2. 英雄区主标题、副标题视觉层次提升 */
.hero-section h1 {
  font-size: 3rem;
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1.15;
  color: #222;
  text-shadow: none;
  white-space: nowrap; /* 确保一行显示 */
  text-align: center;
  max-width: 100%; /* 确保不超出容器 */
  margin: 0 auto; /* 居中显示 */
}

/* 自适应字体大小 - 确保标题在一行内显示 */
@media (max-width: 640px) {
  .hero-section h1 {
    font-size: 1.5rem;
    line-height: 1.2;
    white-space: normal; /* 移动端允许换行 */
  }
}
@media (min-width: 641px) and (max-width: 768px) {
  .hero-section h1 {
    font-size: 2rem;
    line-height: 1.15;
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .hero-section h1 {
    font-size: 2.5rem;
    line-height: 1.1;
  }
}
@media (min-width: 1025px) and (max-width: 1279px) {
  .hero-section h1 {
    font-size: 3rem;
    line-height: 1.1;
  }
}
@media (min-width: 1280px) and (max-width: 1535px) {
  .hero-section h1 {
    font-size: 3.5rem;
    line-height: 1.1;
  }
}
@media (min-width: 1536px) {
  .hero-section h1 {
    font-size: 4rem;
    line-height: 1.1;
  }
}

.hero-section h1 .highlight {
  color: #fff;
  background: none;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
  text-shadow: 0 2px 15px rgba(0,0,0,0.3);
}

.hero-section h1 .comma {
  color: #222;
}

.hero-section h1 .period {
  color: #fff;
  text-shadow: 0 2px 12px rgba(0,0,0,0.18);
}

/* 动态标题容器 - 简化版本 */
.dynamic-title-container {
  position: relative;
  display: inline-block;
  min-height: 1.15em;
}

/* 动态标题动画 - 简化版本 */
.dynamic-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 1.5s ease-in-out, transform 1.5s ease-in-out;
  white-space: nowrap;
}

.dynamic-title.active {
  opacity: 1;
  transform: translateY(0);
}

.dynamic-title.fade-out {
  opacity: 0;
  transform: translateY(-10px);
}

/* 移动端优化 */
@media (max-width: 768px) {
  .dynamic-title-container {
    min-height: 1.2em; /* 移动端稍微增加高度 */
  }
  
  .dynamic-title {
    font-size: 2rem !important; /* 移动端固定字号 */
    line-height: 1.2 !important;
    word-break: keep-all !important;
    white-space: normal !important; /* 移动端允许换行 */
  }
}

/* 平板端优化 */
@media (min-width: 769px) and (max-width: 1024px) {
  .dynamic-title {
    font-size: 3rem !important; /* 平板端适中字号 */
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
    white-space: nowrap !important;
  }
}

/* 桌面端优化 */
@media (min-width: 1025px) {
  .dynamic-title {
    font-size: 4.5rem !important; /* 桌面端大字号 */
    line-height: 1.1 !important;
    letter-spacing: -0.01em !important;
    white-space: nowrap !important;
  }
  .hero-icon-wrapper {
    width: 52px;
    height: 52px;
  }
}

/* 大屏端优化 */
@media (min-width: 1280px) {
  .dynamic-title {
    font-size: 5rem !important; /* 大屏端更大字号 */
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }
  .hero-icon-wrapper {
    width: 56px;
    height: 56px;
  }
}

/* 超宽屏优化 */
@media (min-width: 1536px) {
  .dynamic-title {
    font-size: 5.5rem !important; /* 超宽屏字号 */
    line-height: 1.1 !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
  }
  .hero-icon-wrapper {
    width: 60px;
    height: 60px;
  }
}

.hero-section p {
  font-size: 1.25rem;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.9);
  margin-top: 1.5rem; /* 恢复原来的间距 */
  text-shadow: 0 1px 5px rgba(0,0,0,0.2);
}

@media (min-width: 768px) {
    .hero-section p {
        font-size: 1.5rem;
        margin-top: 1.5rem; /* 恢复原来的间距 */
    }
}


/* 3. 全局柔光圆/渐变圆装饰样式 */
.bg-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: 0.25;
  pointer-events: none;
  z-index: 0;
}
.bg-glow-blue {
  background: radial-gradient(circle, #A7C7E7 0%, transparent 80%);
}
.bg-glow-amber {
  background: radial-gradient(circle, #FBBF24 0%, transparent 80%);
}

/* 4. 统一图片圆角、阴影风格 */
img, .soft-shadow {
  border-radius: 1.25rem;
  box-shadow: 0 6px 32px rgba(167,199,231,0.10), 0 1.5px 6px rgba(251,191,36,0.08);
}

/* 滚动动画 */
.fade-in-section {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-in-section.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* 下载区域样式 */
.download-section {
  position: absolute;
  bottom: 25%; /* 使用绝对定位，在信任徽章上方留出足够空间 */
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* 自定义下载徽章样式 */
.store-badge {
  display: inline-flex;
  align-items: center;
  padding: 0;
  min-width: 160px;
  height: 60px;
  background: rgba(0, 0, 0, 0.9);
  border: 1.5px solid rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  transition: all 0.3s ease;
  text-decoration: none;
  overflow: hidden;
  position: relative;
}

.store-badge:hover:not(.disabled) {
  transform: translateY(-2px);
  background: rgba(0, 0, 0, 0.95);
  border-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.store-badge.disabled {
  opacity: 0.6;
  cursor: not-allowed;
  filter: grayscale(60%);
}

.store-badge-content {
  display: flex;
  align-items: center;
  padding: 8px 16px;
  width: 100%;
  height: 100%;
}

.store-icon {
  width: 28px;
  height: 28px;
  color: white;
  margin-right: 10px;
  flex-shrink: 0;
}

.store-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: white;
  line-height: 1.1;
}

.store-line1 {
  font-size: 11px;
  font-weight: 400;
  opacity: 0.9;
  margin-bottom: 1px;
}

.store-line2 {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: -0.02em;
}

/* App Store特定样式 */
.app-store-badge {
  background: linear-gradient(135deg, #000 0%, #1a1a1a 100%);
}

.app-store-badge:hover:not(.disabled) {
  background: linear-gradient(135deg, #1a1a1a 0%, #2a2a2a 100%);
}

/* Google Play特定样式 */
.google-play-badge {
  background: linear-gradient(135deg, #01875f 0%, #4285f4 100%);
}

.google-play-badge:hover:not(.disabled) {
  background: linear-gradient(135deg, #019963 0%, #5294f5 100%);
}

.google-play-badge.disabled {
  background: linear-gradient(135deg, #666 0%, #888 100%);
}

/* 即将到来标签 */
.coming-soon-tag {
    position: absolute;
    top: -0.5rem;
    right: -0.5rem;
    background-color: var(--color-amber);
    color: #422006;
    font-size: 0.75rem;
    font-weight: bold;
    padding: 0.25rem 0.6rem;
    border-radius: 9999px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transform: rotate(10deg);
}

/* 信任徽章区域 - 现在是英雄区域的直接子元素 */
.trust-badges-section {
  position: absolute;
  bottom: 2%; /* 从4%调整到2%，确保与下载区域有足够间距 */
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 15; /* 在媒体链接和下载区之下 */
}

/* 移动端信任徽章布局调整 - 自适应不同屏幕尺寸 */
@media (max-width: 768px) {
  .trust-badges-section {
    bottom: 2%; /* 基础位置，会被JavaScript智能调整 */
    left: 0;
    transform: none;
    width: 100%;
    max-width: none;
    padding: 0 0.75rem;
    text-align: center;
    z-index: 15;
    transition: top 0.3s ease; /* 位置变化时的平滑过渡 */
  }
}

/* 小屏手机优化 (iPhone SE等) */
@media (max-width: 375px) and (max-height: 667px) {
  .trust-badges-section {
    padding: 0 0.5rem;
  }
  
  .trust-features {
    gap: 0.6rem;
    flex-wrap: wrap;
  }
  
  .trust-feature-item {
    font-size: 0.7rem;
    gap: 0.25rem;
  }
  
  .trust-feature-item svg {
    width: 12px;
    height: 12px;
  }
}

/* 大屏手机优化 */
@media (min-width: 414px) and (max-width: 768px) {
  .trust-badges-section {
    padding: 0 1rem;
  }
  
  .trust-features {
    gap: 1.2rem;
  }
  
  .trust-feature-item {
    font-size: 0.8rem;
    gap: 0.4rem;
  }
  
  .trust-feature-item svg {
    width: 16px;
    height: 16px;
  }
}

/* 信任徽章 */
.trust-features {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5rem;
  color: rgba(255, 255, 255, 0.85);
}

.trust-feature-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  transition: color 0.3s ease;
}

.trust-feature-item:hover {
    color: white;
}

.trust-feature-item svg {
    opacity: 0.8;
}

/* 移动端信任徽章样式调整 */
@media (max-width: 768px) {
  .trust-features {
    gap: 1rem;
    justify-content: space-around; /* 均匀分布 */
  }
  
  .trust-feature-item {
    font-size: 0.75rem;
    gap: 0.4rem;
    flex: 1;
    justify-content: center;
    min-width: 0; /* 允许收缩 */
  }
  
  .trust-feature-item svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
  }
  
  .trust-feature-item span {
    text-align: center;
    word-break: keep-all;
  }
}

/* 超小屏幕信任徽章优化 */
@media (max-width: 480px) {
  .trust-badges-section {
    bottom: 0.5%; /* 超小屏幕更贴近底部 */
    padding: 0 0.5rem;
  }
  
  .trust-features {
    gap: 0.8rem;
  }
  
  .trust-feature-item {
    font-size: 0.7rem;
    gap: 0.3rem;
  }
  
  .trust-feature-item svg {
    width: 12px;
    height: 12px;
  }
}


/* 软阴影效果 */
.soft-shadow {
  box-shadow: 0 15px 40px -15px rgba(0, 0, 0, 0.08);
}

/* 功能卡片 */
.feature-card img {
  transition: transform 0.4s ease-out;
}

.feature-card:hover img {
  transform: scale(1.03);
}

/* 品牌图标容器 */
.brand-icon-wrapper {
  width: 200px;
  height: 200px;
  border-radius: 22.5%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.1), 0 8px 16px -8px rgba(0, 0, 0, 0.08);
  background: #F0F4F8;
}

/* 英雄区域顶部图标容器 */
.hero-icon-wrapper {
  width: 48px;
  height: 48px;
  border-radius: 0; /* 完全去掉圆角，显示直角方形图标 */
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  background: transparent; /* 移除白色背景 */
  border: none; /* 移除边框 */
  box-shadow: none; /* 移除阴影 */
  transition: all 0.3s ease;
  cursor: pointer;
  padding: 0; /* 移除内边距 */
}

.hero-icon-wrapper:hover {
  transform: translateY(-2px);
  box-shadow: none; /* 移除悬停阴影 */
  background: transparent; /* 移除悬停背景 */
}

/* 英雄区布局优化 - 精确位置布局 */
.hero-title-and-cards-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; /* 占满整个英雄区 */
  z-index: 1; /* 作为卡片雨的容器背景 */
}

.hero-title-section {
  position: absolute;
  top: 6%; /* 缩小与顶部控制栏的间距，使标题更贴近顶部 */
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1200px;
  padding: 0 2rem;
  text-align: center;
  z-index: 30; /* 确保标题在卡片之上 */
}

/* 动态标题容器：通过JS设定min-height，防止副标题位置随主标题高度变化而跳动 */
.hero-title-wrapper {
  display: block;
  min-height: 1.2em; /* JS会在运行时替换为合适的px值 */
  transition: min-height 0.2s ease;
}

/* 下载区域 - 移动端左右并排布局 */
.download-section {
  position: relative;
  margin: 3rem auto 2rem auto;
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* 移动端下载区域布局调整 */
@media (max-width: 768px) {
  .download-section {
  position: relative;
  margin: 3rem auto 2rem auto;
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}
}

/* 心情卡片雨容器 - 覆盖整个英雄区（为标题预留安全区） */
.quote-card-rain-container {
  position: absolute;
  top: var(--hero-card-start);
  left: 0;
  width: 100%;
  height: calc(100% - var(--hero-card-start) - var(--hero-bottom-safe));
  z-index: 10; /* 在标题和下载区之下 */
  pointer-events: none;
  overflow: visible; /* 允许卡片从顶部进入 */
}

@media (max-width: 768px) {
  .hero-icon-wrapper {
    width: 1.25rem; /* 与text-xl一致 */
    height: 1.25rem;
    border-radius: 0; /* 完全去掉圆角 */
    padding: 0; /* 移除内边距 */
  }
  .hero-title-section {
    top: 8%; /* 移动端：更贴近顶部栏 */
    padding: 0 1rem;
  }
  
  .download-section {
  position: relative;
  margin: 3rem auto 2rem auto;
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}
}

/* 心情卡片基础样式 - 从英雄区顶部开始掉落 */
.mood-card {
  position: absolute;
  width: 280px;
  height: 420px;
  border-radius: 20px;
  /* 背景提升为更高不透明度，突出卡片 */
  background: linear-gradient(135deg, 
    rgba(255, 255, 255, 0.98) 0%,    /* 更亮的白色底 */
    rgba(167, 199, 231, 0.92) 30%,
    rgba(251, 191, 36, 0.30) 70%,    /* 琥珀色点缀 */
    rgba(167, 199, 231, 0.95) 100%
  );
  border: 2px solid rgba(255, 255, 255, 0.85); /* 更明显的白色描边 */
  box-shadow: 
    0 25px 60px 0 rgba(107, 138, 171, 0.25),  /* 更强的蓝瓷色阴影 */
    0 10px 30px 0 rgba(251, 191, 36, 0.12),   /* 琥珀色光晕 */
    0 2px 8px 0 rgba(0,0,0,0.10),
    inset 0 1px 0 rgba(255, 255, 255, 0.7);
  pointer-events: none;
  overflow: hidden;
  transform-origin: center center;
  top: -450px;
  left: calc(50% - 140px); /* 桌面端：280px卡片居中 */
  opacity: 0;
  z-index: 15;
}

/* 移动端心情卡片样式和动画 */
@media (max-width: 768px) {
  .mood-card {
    position: absolute; /* 相对于共同容器定位 */
    width: 220px !important; /* 强制覆盖桌面端样式 */
    height: 330px !important;
    /* 移动端初始位置 */
    top: -350px; /* 从英雄区顶部上方开始 */
    left: calc(50% - 110px) !important; /* 强制覆盖：220px卡片居中 */
    opacity: 0;
    z-index: 15;
  }

  /* 移动端卡片掉落动画 - 修复水平居中问题 */
  @keyframes cardDropLeft {
    0% {
      top: -350px; /* 从英雄区顶部上方开始 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px而不是140px */
      opacity: 0;
      transform: rotate(calc(-8deg + var(--random-rotation, 0deg))) scale(0.7);
    }
    20% {
      top: 6vh; /* 恢复原来的穿过标题区域位置 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.2;
      transform: rotate(calc(-6deg + var(--random-rotation, 0deg))) scale(0.75);
    }
    40% {
      top: 25vh; /* 恢复原来的继续下落位置 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.5;
      transform: rotate(calc(-4deg + var(--random-rotation, 0deg))) scale(0.85);
    }
    70% {
      top: 35vh; /* 恢复原来的接近最终位置 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.8;
      transform: rotate(calc(-2deg + var(--random-rotation, 0deg))) scale(0.9);
    }
    100% {
      top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 最终位置：容器内并留底部间距 */
      left: calc(50% - 110px + var(--random-offset, 0px) + var(--stack-offset, 0px)); /* 修复：使用110px */
      opacity: 0.7;
      transform: rotate(calc(-1deg + var(--random-rotation, 0deg))) scale(0.8);
    }
  }

  @keyframes cardDropRight {
    0% {
      top: -350px; /* 从英雄区顶部上方开始 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0;
      transform: rotate(calc(8deg + var(--random-rotation, 0deg))) scale(0.7);
    }
    20% {
      top: 6vh; /* 穿过标题区域(移动端标题在8%) */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.2;
      transform: rotate(calc(6deg + var(--random-rotation, 0deg))) scale(0.75);
    }
    40% {
      top: 25vh; /* 继续下落 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.5;
      transform: rotate(calc(4deg + var(--random-rotation, 0deg))) scale(0.85);
    }
    70% {
      top: 35vh; /* 接近最终位置 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.8;
      transform: rotate(calc(2deg + var(--random-rotation, 0deg))) scale(0.9);
    }
    100% {
      top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 最终位置：容器内并留底部间距 */
      left: calc(50% - 110px + var(--random-offset, 0px) + var(--stack-offset, 0px)); /* 修复：使用110px */
      opacity: 0.7;
      transform: rotate(calc(1deg + var(--random-rotation, 0deg))) scale(0.8);
    }
  }

  @keyframes cardDropCenter {
    0% {
      top: -350px; /* 从英雄区顶部上方开始 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.7);
    }
    20% {
      top: 6vh; /* 穿过标题区域(移动端标题在8%) */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.2;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.75);
    }
    40% {
      top: 25vh; /* 继续下落 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.5;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.85);
    }
    70% {
      top: 35vh; /* 接近最终位置 */
      left: calc(50% - 110px + var(--random-offset, 0px)); /* 修复：使用110px */
      opacity: 0.8;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.9);
    }
    100% {
      top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 最终位置：容器内并留底部间距 */
      left: calc(50% - 110px + var(--random-offset, 0px) + var(--stack-offset, 0px)); /* 修复：使用110px */
      opacity: 0.7;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.8);
    }
  }
}

/* 卡片内容布局 */
.mood-card-content {
  padding: 2rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
}

@media (max-width: 768px) {
  .mood-card-content {
    padding: 1.5rem;
  }
}

/* 中文名言样式 */
.mood-card-quote-zh {
  font-family: var(--font-serif);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.6;
  color: var(--color-text-primary);
  margin-bottom: 1rem;
  text-shadow: 0 2px 8px rgba(255, 255, 255, 0.3);
}

@media (max-width: 768px) {
  .mood-card-quote-zh {
    font-size: 1.1rem;
  }
}

/* 英文名言样式 */
.mood-card-quote-en {
  font-family: var(--font-sans);
  font-size: 0.95rem;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(74, 74, 74, 0.85);
  margin-bottom: 1.5rem;
  font-style: italic;
  text-shadow: 0 1px 4px rgba(255, 255, 255, 0.2);
}

@media (max-width: 768px) {
  .mood-card-quote-en {
    font-size: 0.85rem;
    margin-bottom: 1.2rem;
  }
}

/* 分隔线 */
.mood-card-separator {
  width: 3rem;
  height: 1px;
  background: linear-gradient(90deg, 
    transparent 0%, 
    var(--color-amber) 50%, 
    transparent 100%
  );
  margin: 0.75rem 0;
  opacity: 0.6;
}

/* 作者信息 */
.mood-card-author {
  font-family: var(--font-sans);
  font-size: 0.8rem;
  font-weight: 400;
  color: rgba(74, 74, 74, 0.7);
  letter-spacing: 0.05em;
  text-shadow: 0 1px 3px rgba(255, 255, 255, 0.2);
}

@media (max-width: 768px) {
  .mood-card-author {
    font-size: 0.75rem;
  }
}

/* 桌面版卡片掉落动画 - 从英雄区顶部掉落到距底部40%处 */
@keyframes cardDropLeft {
  0% {
    top: -450px; /* 从英雄区顶部上方开始 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0;
    transform: rotate(calc(-10deg + var(--random-rotation, 0deg))) scale(0.7);
  }
  15% {
    top: 8vh; /* 恢复原来的穿过标题区域位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.2;
    transform: rotate(calc(-8deg + var(--random-rotation, 0deg))) scale(0.75);
  }
  35% {
    top: 25vh; /* 恢复原来的继续下落位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.5;
    transform: rotate(calc(-6deg + var(--random-rotation, 0deg))) scale(0.85);
  }
  60% {
    top: 35vh; /* 恢复原来的接近最终位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.8;
    transform: rotate(calc(-3deg + var(--random-rotation, 0deg))) scale(0.9);
  }
  100% {
    top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 最终位置：容器内并留底部间距 */
    left: calc(50% - 140px + var(--random-offset, 0px) + var(--stack-offset, 0px));
    opacity: 0.7;
    transform: rotate(calc(-1deg + var(--random-rotation, 0deg))) scale(0.85);
  }
}

@keyframes cardDropRight {
  0% {
    top: -450px; /* 从英雄区顶部上方开始 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0;
    transform: rotate(calc(10deg + var(--random-rotation, 0deg))) scale(0.7);
  }
  15% {
    top: 8vh; /* 恢复原来的穿过标题区域位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.2;
    transform: rotate(calc(8deg + var(--random-rotation, 0deg))) scale(0.75);
  }
  35% {
    top: 25vh; /* 恢复原来的继续下落位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.5;
    transform: rotate(calc(6deg + var(--random-rotation, 0deg))) scale(0.85);
  }
  60% {
    top: 35vh; /* 恢复原来的接近最终位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.8;
    transform: rotate(calc(3deg + var(--random-rotation, 0deg))) scale(0.9);
  }
  100% {
    top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 最终位置：容器内并留底部间距 */
    left: calc(50% - 140px + var(--random-offset, 0px) + var(--stack-offset, 0px));
    opacity: 0.7;
    transform: rotate(calc(1deg + var(--random-rotation, 0deg))) scale(0.85);
  }
}

@keyframes cardDropCenter {
  0% {
    top: -450px; /* 从英雄区顶部上方开始 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0;
    transform: rotate(var(--random-rotation, 0deg)) scale(0.7);
  }
  15% {
    top: 8vh; /* 恢复原来的穿过标题区域位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.2;
    transform: rotate(var(--random-rotation, 0deg)) scale(0.75);
  }
  35% {
    top: 25vh; /* 恢复原来的继续下落位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.5;
    transform: rotate(var(--random-rotation, 0deg)) scale(0.85);
  }
  60% {
    top: 35vh; /* 恢复原来的接近最终位置 */
    left: calc(50% - 140px + var(--random-offset, 0px));
    opacity: 0.8;
    transform: rotate(var(--random-rotation, 0deg)) scale(0.9);
  }
  100% {
    top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 最终位置：容器内并留底部间距 */
    left: calc(50% - 140px + var(--random-offset, 0px) + var(--stack-offset, 0px));
    opacity: 0.7;
    transform: rotate(var(--random-rotation, 0deg)) scale(0.85);
  }
}

/* 平板端适配：641px-768px */
@media (min-width: 641px) and (max-width: 768px) {
  :root {
    --card-h: 360px;               /* 平板端卡片高度 */
    --card-bottom-gap: 3.5vh;      /* 平板端底部间距 */
  }
  .mood-card {
    position: absolute; /* 相对于共同容器定位 */
    width: 240px;
    height: 360px;
    /* 平板端初始位置 */
    top: -400px; /* 从英雄区顶部上方开始 */
    left: calc(50% - 120px);
    opacity: 0;
    z-index: 15;
  }

  /* 平板端卡片动画 - 从顶部掉落到距底部40%处 */
  @keyframes cardDropLeft {
    0% {
      top: -400px; /* 从英雄区顶部上方开始 */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0;
      transform: rotate(calc(-9deg + var(--random-rotation, 0deg))) scale(0.7);
    }
    18% {
      top: 9vh; /* 穿过标题区域(平板端标题在约10%) */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.2;
      transform: rotate(calc(-7deg + var(--random-rotation, 0deg))) scale(0.75);
    }
    38% {
      top: 25vh; /* 继续下落 */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.5;
      transform: rotate(calc(-4deg + var(--random-rotation, 0deg))) scale(0.85);
    }
    65% {
      top: 35vh; /* 接近最终位置 */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.8;
      transform: rotate(calc(-2deg + var(--random-rotation, 0deg))) scale(0.9);
    }
    100% {
      top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 平板端最终位置：容器内并留底部间距 */
      left: calc(50% - 120px + var(--random-offset, 0px) + var(--stack-offset, 0px));
      opacity: 0.7;
      transform: rotate(calc(-1deg + var(--random-rotation, 0deg))) scale(0.85);
    }
  }

  @keyframes cardDropRight {
    0% {
      top: -280px; /* 缩短平板端起始位置 */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0;
      transform: rotate(calc(9deg + var(--random-rotation, 0deg))) scale(0.7);
    }
    25% {
      top: -80px; /* 更快进入可见区域 */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.3;
      transform: rotate(calc(7deg + var(--random-rotation, 0deg))) scale(0.8);
    }
    50% {
      top: 20px;
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.7;
      transform: rotate(calc(4deg + var(--random-rotation, 0deg))) scale(0.9);
    }
    75% {
      top: 50px;
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.9;
      transform: rotate(calc(2deg + var(--random-rotation, 0deg))) scale(0.95);
    }
    100% {
      top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 平板端最终位置：容器内并留底部间距 */
      left: calc(50% - 120px + var(--random-offset, 0px) + var(--stack-offset, 0px));
      opacity: 0.6;
      transform: rotate(calc(1deg + var(--random-rotation, 0deg))) scale(0.8);
    }
  }

  @keyframes cardDropCenter {
    0% {
      top: -280px; /* 缩短平板端起始位置 */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.7);
    }
    25% {
      top: -80px; /* 更快进入可见区域 */
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.3;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.8);
    }
    50% {
      top: 20px;
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.7;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.9);
    }
    75% {
      top: 50px;
      left: calc(50% - 120px + var(--random-offset, 0px));
      opacity: 0.9;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.95);
    }
    100% {
      top: calc(100% - var(--card-bottom-gap) - var(--card-h)); /* 平板端最终位置：容器内并留底部间距 */
      left: calc(50% - 120px + var(--random-offset, 0px) + var(--stack-offset, 0px));
      opacity: 0.6;
      transform: rotate(var(--random-rotation, 0deg)) scale(0.8);
    }
  }
}

/* 卡片动画类 */
.mood-card.falling-left {
  animation: cardDropLeft 4.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.mood-card.falling-right {
  animation: cardDropRight 4.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.mood-card.falling-center {
  animation: cardDropCenter 4.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

/* 卡片淡出动画 */
.mood-card.fade-out {
  transition: opacity 0.4s ease-out, transform 0.4s ease-out;
  opacity: 0 !important;
  transform: translateY(30px) scale(0.98) !important;
  pointer-events: none;
}

/* 减少动画偏好支持 */
@media (prefers-reduced-motion: reduce) {
  .mood-card {
    animation: none !important;
    transform: translateY(0) !important;
    opacity: 1 !important;
    position: static;
    display: inline-block;
    margin: 1rem;
  }
  
  .quote-card-rain-container {
    height: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem;
  }
}

/* 媒体链接区域 */
.media-links-bar {
  width: 100%;
  margin-top: 32px;
  margin-bottom: 16px;
  background: transparent;
}

.media-links-container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: nowrap;
}

.media-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4rem 1rem;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.2s;
}

.media-link:hover {
  background: rgba(255,255,255,0.18);
}

.media-link-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  opacity: 0.9;
}

.founder-note-link {
  background: rgba(251, 191, 36, 0.2);
  border-color: rgba(251, 191, 36, 0.4);
  color: rgba(255, 255, 255, 0.95);
  font-weight: 600;
}

.founder-note-link:hover {
  background: rgba(251, 191, 36, 0.3);
  border-color: rgba(251, 191, 36, 0.6);
  box-shadow: 0 4px 12px rgba(251, 191, 36, 0.3);
  color: white;
}

/* 媒体链接栏在英雄区内部，不需要滚动效果 */

/* 媒体链接图标动画 */
.media-link:hover .media-link-icon {
  transform: scale(1.1);
  transition: transform 0.2s ease;
}

/* 英雄区域恢复全屏 */
#hero-section {
  margin-top: 0;
  height: 100vh;
  position: relative;
  z-index: 1;
}

/* 语言切换器 */
/* 统一的顶部控制栏容器 */
.hero-top-controls-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 50; /* 确保在所有元素之上 */
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  pointer-events: auto; /* 确保可以接收点击事件 */
}

.hero-left-controls {
  display: flex;
  align-items: center;
  z-index: 51;
}

.hero-center-controls {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 52;
  overflow: visible;
}

.hero-right-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 51;
}

/* 媒体链接容器样式调整 */
.media-links-container {
  display: flex;
  flex-direction: row;
  gap: 1.5rem;
  flex-wrap: nowrap;
  align-items: center;
}

/* 语言切换器样式调整 */
.language-switcher {
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  padding: 0.5rem;
  display: flex;
  gap: 0.25rem;
  z-index: 52; /* 确保在媒体链接之上 */
  pointer-events: auto; /* 确保可以接收点击事件 */
}

.language-select {
  background: transparent;
  border: none;
  color: white;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  outline: none;
}

.language-select option {
  background: rgba(0, 0, 0, 0.8);
  color: white;
}

.language-btn {
  padding: 0.5rem 1rem;
  border-radius: 6px;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.2s ease;
  cursor: pointer;
  border: none;
  background: transparent;
  color: var(--color-text-primary);
}

.language-btn:hover {
  background: rgba(255, 255, 255, 0.2);
  color: white;
}

.language-btn.active {
  background: var(--color-amber);
  color: white;
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* 移除下载按钮相关样式 */
/* .download-btn 相关样式已被删除 */

/* 响应式调整 */
@media (max-width: 768px) {
  .hero-top-controls-container {
    padding: 0.75rem;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  
  .hero-right-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 51;
}
  
  .media-links-container {
    gap: 0.5rem;
  }
  
  .language-switcher {
    padding: 0.375rem;
  }
  
  .language-select {
    font-size: 0.75rem;
  }
}

@media (max-width: 480px) {
  .hero-top-controls-container {
    padding: 0.5rem;
  }
  
  .hero-right-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 51;
}
  
  .media-links-container {
    justify-content: center;
  }
}

/* 悬浮媒体链接样式 */
.floating-media-links {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 100;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  pointer-events: auto;
  transition: all 0.3s ease;
}

.floating-media-links.hero-mode {
  position: absolute;
  bottom: auto;
  right: 2rem;
  transform: translateY(-50%);
}

.floating-media-links.hero-mode.mobile-mode {
  /* 移动端：左右并排布局，媒体链接在左侧 */
  position: absolute !important;
  bottom: 12% !important; /* 与下载区域同一水平线 */
  left: 1rem !important;
  right: auto !important;
  transform: none !important;
  flex-direction: row !important; /* 水平排列 */
  gap: 0.5rem !important;
  z-index: 25 !important; /* 确保在信任徽章之上 */
}

.floating-media-links.hero-mode.top-right-mode {
  /* 右上角定位模式的特殊样式 */
  align-items: flex-end; /* 链接右对齐 */
}

.floating-media-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  color: #4a4a4a;
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(10px);
}

.floating-media-link:hover {
  background: rgba(255, 255, 255, 1);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

/* 移动端媒体链接样式调整 */
@media (max-width: 768px) {
  .floating-media-links.hero-mode.mobile-mode .floating-media-link {
    padding: 0.4rem 0.8rem;
    font-size: 0.75rem;
    gap: 0.4rem;
  }
  
  .floating-media-links.hero-mode.mobile-mode .floating-media-link-icon {
    width: 14px;
    height: 14px;
  }
}

.floating-media-link-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  opacity: 0.8;
}

/* 移动端悬浮媒体链接优化 */
@media (max-width: 768px) {
  .floating-media-links {
    bottom: 1.5rem;
    right: 1rem;
    gap: 0.5rem;
    max-width: calc(100vw - 2rem); /* 确保不会超出屏幕 */
  }
  
  .floating-media-links.hero-mode {
    right: 1rem;
    transform: none; /* 移动端不使用垂直居中变换，直接使用top定位 */
    max-width: calc(100vw - 2rem);
  }
  
  /* 移动端：与下载按钮左右并排布局 - 动态高度匹配 */
  .floating-media-links.hero-mode.mobile-mode.top-right-mode {
    position: absolute !important;
    bottom: 10% !important;  /* 上移，给底部信任徽章预留更大安全区 */
    left: 12px !important;  /* 减少左边距，更精致 */
    right: auto !important;
    top: auto !important;
    transform: none !important; /* 移除transform，使用精确的bottom值 */
    /* 调整为水平排列，节省垂直空间 */
    flex-direction: row !important;
    gap: 0.25rem !important; /* 进一步减少间距 */
    max-width: calc(45vw - 24px) !important; /* 调整宽度比例 */
    align-items: center !important; /* 垂直居中，与下载按钮对齐 */
  }
  
  /* 移动端水平排列时的链接样式调整 - 压缩高度 */
  .floating-media-links.hero-mode.mobile-mode.top-right-mode .floating-media-link {
    padding: 0.4rem 0.6rem !important; /* 减少padding，压缩高度 */
    font-size: 0.7rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    height: auto !important;
    min-height: 32px !important; /* 减少最小高度 */
    display: flex !important;
    align-items: center !important; /* 垂直居中对齐 */
    justify-content: center !important; /* 水平居中对齐 */
  }
  
  /* 移动端英雄区域内的下载区域 - 保持原位置，调整对齐 */
  #hero-section .download-section {
  position: relative;
  margin: 3rem auto 2rem auto;
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}
  
  #hero-section .download-section > div {
    justify-content: flex-end !important;
    max-width: calc(55vw - 24px) !important; /* 限制宽度 */
    gap: 0.5rem; /* 初始间距，会被JavaScript动态调整 */
  }
}
}
  
  .floating-media-link {
    padding: 0.4rem 0.8rem;
    font-size: 0.75rem;
    gap: 0.4rem;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  
  .floating-media-link-icon {
    width: 14px;
    height: 14px;
  }
}

/* 超小屏幕优化 */
@media (max-width: 480px) {
  .floating-media-links {
    right: 0.5rem;
    gap: 0.4rem;
  }
  
  .floating-media-links.hero-mode {
    right: 0.5rem;
  }
  
  .floating-media-link {
    padding: 0.3rem 0.6rem;
    font-size: 0.7rem;
    gap: 0.3rem;
  }
  
  .floating-media-link-icon {
    width: 12px;
    height: 12px;
  }
}

/* 响应式优化 */
@media (max-width: 640px) {
  /* 媒体链接栏移动端优化 */
  .media-links-container {
    padding: 0 1rem;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: center;
  }
  
  .media-link {
    font-size: 0.75rem;
    padding: 0.4rem 0.8rem;
    gap: 0.4rem;
  }
  
  .media-link-icon {
    width: 14px;
    height: 14px;
  }
  
  /* 英雄区块移动端优化 */
  .hero-bg {
    background-attachment: scroll;
    min-height: 100vh;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  #hero-section > .relative {
    padding: 1.5rem 0.5rem;
  }
  .quote-card {
    margin: 1rem 0.5rem;
    padding: 1.2rem;
    max-width: 100%;
    font-size: 1rem;
  }
  /* 价值主张区块移动端优化 */
  #value-proposition .container {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    padding: 0 0.5rem;
  }
  #value-proposition h2 {
    font-size: 2rem !important;
    margin-bottom: 1.2rem !important;
  }
  #value-proposition p,
  #value-proposition blockquote {
    font-size: 1rem !important;
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }
  /* 核心体验区块移动端优化 */
  #core-experience .container {
    padding: 0 0.5rem;
  }
  #core-experience .feature-card {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  #core-experience h2 {
    font-size: 2rem !important;
    margin-bottom: 1.2rem !important;
  }
  #core-experience h3 {
    font-size: 1.2rem !important;
    margin-bottom: 0.8rem !important;
  }
  #core-experience p {
    font-size: 1rem !important;
  }
  /* 视觉展示区块移动端优化 */
  #visual-showcase .container {
    padding: 0 0.5rem;
  }
  #visual-showcase .grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 0.5rem !important;
  }
  #visual-showcase img {
    margin-top: 0 !important;
    max-width: 100%;
    height: auto;
  }
  /* 品牌哲学区块移动端优化 */
  #brand-philosophy .container {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    padding: 0 0.5rem;
  }
  .brand-icon-wrapper {
    width: 120px;
    height: 120px;
  }
  .hero-icon-wrapper {
    width: 40px;
    height: 40px;
  }
  /* CTA区块移动端优化 */
  #final-cta .container {
    padding: 0 0.5rem;
  }
  /* 全局按钮和徽章优化 */
  .store-badge {
    height: 44px;
    min-width: 120px;
  }
  .language-switcher {
    flex-direction: row;
    gap: 0.1rem;
    padding: 0.25rem 0.5rem;
  }
  .language-btn {
    font-size: 0.8rem;
    padding: 0.3rem 0.7rem;
  }
  /* 全局字体和间距优化 */
  body {
    font-size: 15px;
  }
  .py-24 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  .gap-16 {
    gap: 1.2rem;
  }
}

/* 平板端适配 */
@media (min-width: 641px) and (max-width: 1024px) {
  /* 媒体链接栏平板端优化 */
  .media-links-container {
    gap: 1.5rem;
  }
  
  .media-link {
    font-size: 0.8rem;
    padding: 0.45rem 0.9rem;
  }
  
  /* 英雄区块平板端优化 */
  .hero-bg {
    min-height: 90vh;
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  #hero-section > .relative {
    padding: 2.5rem 1.5rem;
  }
  .quote-card {
    max-width: 90%;
    font-size: 1.1rem;
    margin: 1.5rem auto;
    padding: 1.8rem;
  }
  /* 价值主张区块平板端优化 */
  #value-proposition .container {
    grid-template-columns: 1fr 1fr !important;
    gap: 3rem !important;
    padding: 0 1.5rem;
  }
  #value-proposition h2 {
    font-size: 2.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  #value-proposition p,
  #value-proposition blockquote {
    font-size: 1.15rem !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  /* 核心体验区块平板端优化 */
  #core-experience .container {
    padding: 0 1.5rem;
  }
  #core-experience .feature-card {
    grid-template-columns: 1fr 1fr !important;
    gap: 2.5rem !important;
  }
  #core-experience h2 {
    font-size: 2.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  #core-experience h3 {
    font-size: 1.5rem !important;
    margin-bottom: 1rem !important;
  }
  #core-experience p {
    font-size: 1.1rem !important;
  }
  /* 视觉展示区块平板端优化 */
  #visual-showcase .container {
    padding: 0 1.5rem;
  }
  #visual-showcase .grid {
    grid-template-columns: 1fr 1fr 1fr 1fr !important;
    gap: 1.2rem !important;
  }
  #visual-showcase img {
    margin-top: 0 !important;
    max-width: 100%;
    height: auto;
  }
  /* 品牌哲学区块平板端优化 */
  #brand-philosophy .container {
    grid-template-columns: 1fr 1fr !important;
    gap: 3rem !important;
    padding: 0 1.5rem;
  }
  .brand-icon-wrapper {
    width: 160px;
    height: 160px;
  }
  .hero-icon-wrapper {
    width: 44px;
    height: 44px;
  }
  /* CTA区块平板端优化 */
  #final-cta .container {
    padding: 0 1.5rem;
  }
  /* 全局按钮和徽章优化 */
  .store-badge {
    height: 52px;
    min-width: 140px;
  }
  .language-switcher {
    flex-direction: row;
    gap: 0.2rem;
    padding: 0.4rem 1rem;
  }
  .language-btn {
    font-size: 1rem;
    padding: 0.5rem 1.2rem;
  }
  /* 全局字体和间距优化 */
  body {
    font-size: 16px;
  }
  .py-24 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .gap-16 {
    gap: 2rem;
  }
}

/* 大屏幕优化 */
@media (min-width: 1280px) {
  .container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  
  /* 对于需要限制内容宽度的元素，使用内部容器 */
  .container > * {
    max-width: 1200px;
    margin: 0 auto;
  }
  
  .quote-card {
    max-width: 500px;
  }
  
  .brand-icon-wrapper {
    width: 240px;
    height: 240px;
  }
}

/* 减少动画偏好支持 */
@media (prefers-reduced-motion: reduce) {
  .fade-in-section,
  .feature-card img {
    transition: none;
    animation: none;
  }
  
  /* 只禁用store-badge的过渡效果，保留脉冲动画 */
  .store-badge {
    transition: none;
  }
  
  .fade-in-section {
    opacity: 1;
    transform: none;
  }
  
  .store-badge {
    opacity: 1;
    transform: none;
  }
  
  /* 动态标题降级处理 */
  .dynamic-title {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
    position: static !important;
  }
  
  .dynamic-title.active {
    opacity: 1 !important;
    transform: none !important;
  }
  
  .dynamic-title.fade-out {
    opacity: 0 !important;
    transform: none !important;
  }
  
  .dynamic-title-container {
    position: static !important;
    min-height: auto !important;
  }
}

.mood-card-quote-zh, .mood-card-quote-en, .mood-card-author {
  color: #222;
  text-shadow: 0 2px 12px rgba(0,0,0,0.18);
}

.mood-card-quote-main {
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.7;
  margin-bottom: 0.7rem;
  text-shadow: 0 2px 16px rgba(0,0,0,0.38), 0 1px 8px rgba(0,0,0,0.18);
}
.mood-card-quote-sub {
  font-size: 0.95rem;
  font-weight: 400;
  color: #222;
  opacity: 0.85;
  line-height: 1.5;
  margin-bottom: 0.5rem;
  text-shadow: 0 2px 8px rgba(255,255,255,0.18);
}
.mood-card-author {
  color: #fff;
  font-size: 1rem;
  margin-top: 0.5rem;
  text-shadow: 0 2px 16px rgba(0,0,0,0.38), 0 1px 8px rgba(0,0,0,0.18);
}

@media (max-width: 768px) {
  .mood-card-quote-main {
    font-size: 1rem;
  }
  .mood-card-quote-sub {
    font-size: 0.78rem;
  }
  .mood-card-author {
    font-size: 0.85rem;
  }
}

.mood-card.gradient-violet {
  background: linear-gradient(135deg, #E0C3FC 0%, #8EC5FC 100%) !important;
  border-radius: 32px !important;
  box-shadow: 0 18px 48px 0 rgba(0,0,0,0.22), 0 2px 12px 0 rgba(0,0,0,0.10) !important;
  border: none !important;
  color: #222;
}
.mood-card.gradient-violet .mood-card-quote-main {
  color: #222222;
}
.mood-card.gradient-violet .mood-card-quote-sub {
  color: #A084E8;
}
.mood-card.gradient-violet .mood-card-author {
  color: #888888;
}
.mood-card.gradient-violet .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.5rem;
  opacity: 0.4;
}
.mood-card.gradient-violet .mood-card-feather svg {
  width: 48px;
  height: 48px;
  fill: #A084E8;
}

/* 00002 暖阳午后风格 */
.mood-card.gradient-orange {
  background: linear-gradient(135deg, #FFE29F 0%, #FFA99F 60%, #FFDEB4 100%) !important;
  border-radius: 28px !important;
  box-shadow: 0 14px 40px 0 rgba(255,183,77,0.18), 0 2px 10px 0 rgba(255,140,0,0.10) !important;
  border: none !important;
  color: #7C4F18;
}
.mood-card.gradient-orange .mood-card-quote-main,
.mood-card.gradient-orange .mood-card-quote-sub,
.mood-card.gradient-orange .mood-card-moodlog {
  color: #7C4F18;
}
.mood-card.gradient-orange .mood-card-author {
  color: #7C4F18;
}
.mood-card.gradient-orange .mood-card-feather svg {
  fill: #FF9800;
}

/* 00003 星空夜语风格 */
.mood-card.gradient-night {
  background: linear-gradient(135deg, #0000FF 0%, #FFFF00 100%) !important;
  border-radius: 36px !important;
  box-shadow: 0 20px 52px 0 rgba(54,54,120,0.22), 0 3px 14px 0 rgba(106,130,251,0.10) !important;
  border: none !important;
  color: #FFFFFF;
}
.mood-card.gradient-night .mood-card-quote-main,
.mood-card.gradient-night .mood-card-quote-sub,
.mood-card.gradient-night .mood-card-moodlog,
.mood-card.gradient-night .mood-card-author {
  color: #FFFFFF;
}
.mood-card.gradient-night .mood-card-feather svg {
  fill: #B2C7FF;
}

/* 00004 青竹雅韵风格 */
.mood-card.gradient-bamboo {
  background: linear-gradient(135deg, #A8E6CF 0%, #88D8C0 50%, #B8E6B8 100%) !important;
  border-radius: 24px !important;
  box-shadow: 0 16px 44px 0 rgba(136,216,192,0.25), 0 2px 8px 0 rgba(168,230,207,0.12) !important;
  border: none !important;
  color: #2D5016;
}
.mood-card.gradient-bamboo .mood-card-quote-main {
  color: #2D5016;
}
.mood-card.gradient-bamboo .mood-card-quote-sub {
  color: #4A7C59;
}
.mood-card.gradient-bamboo .mood-card-author {
  color: #6B8E6B;
}
.mood-card.gradient-bamboo .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.6rem;
  opacity: 0.35;
}
.mood-card.gradient-bamboo .mood-card-feather svg {
  width: 44px;
  height: 44px;
  fill: #4A7C59;
}

/* 00005 玫瑰花园风格 */
.mood-card.gradient-rose {
  background: linear-gradient(135deg, #FFB6C1 0%, #FFC0CB 50%, #FFE4E1 100%) !important;
  border-radius: 30px !important;
  box-shadow: 0 17px 46px 0 rgba(255,182,193,0.28), 0 3px 10px 0 rgba(255,192,203,0.15) !important;
  border: none !important;
  color: #8B3A62;
}
.mood-card.gradient-rose .mood-card-quote-main {
  color: #8B3A62;
}
.mood-card.gradient-rose .mood-card-quote-sub {
  color: #CD5C5C;
}
.mood-card.gradient-rose .mood-card-author {
  color: #B8860B;
}
.mood-card.gradient-rose .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.5rem;
  opacity: 0.4;
}
.mood-card.gradient-rose .mood-card-feather svg {
  width: 46px;
  height: 46px;
  fill: #CD5C5C;
}

/* 00006 紫罗兰夜风格 */
.mood-card.gradient-violet-night {
  background: linear-gradient(135deg, #8B5CF6 0%, #A855F7 50%, #C084FC 100%) !important;
  border-radius: 34px !important;
  box-shadow: 0 19px 50px 0 rgba(139,92,246,0.30), 0 3px 12px 0 rgba(168,85,247,0.15) !important;
  border: none !important;
  color: #FFFFFF;
}
.mood-card.gradient-violet-night .mood-card-quote-main,
.mood-card.gradient-violet-night .mood-card-quote-sub,
.mood-card.gradient-violet-night .mood-card-moodlog,
.mood-card.gradient-violet-night .mood-card-author {
  color: #FFFFFF;
}
.mood-card.gradient-violet-night .mood-card-quote-sub {
  color: #E9D5FF;
}
.mood-card.gradient-violet-night .mood-card-author {
  color: #DDD6FE;
}
.mood-card.gradient-violet-night .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.4rem;
  opacity: 0.45;
}
.mood-card.gradient-violet-night .mood-card-feather svg {
  width: 48px;
  height: 48px;
  fill: #E9D5FF;
}

/* 00007 琥珀黄昏风格 */
.mood-card.gradient-amber {
  background: linear-gradient(135deg, #F59E0B 0%, #FBBF24 50%, #FCD34D 100%) !important;
  border-radius: 26px !important;
  box-shadow: 0 15px 42px 0 rgba(245,158,11,0.25), 0 2px 8px 0 rgba(251,191,36,0.12) !important;
  border: none !important;
  color: #92400E;
}
.mood-card.gradient-amber .mood-card-quote-main {
  color: #92400E;
}
.mood-card.gradient-amber .mood-card-quote-sub {
  color: #B45309;
}
.mood-card.gradient-amber .mood-card-author {
  color: #D97706;
}
.mood-card.gradient-amber .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.7rem;
  opacity: 0.4;
}
.mood-card.gradient-amber .mood-card-feather svg {
  width: 42px;
  height: 42px;
  fill: #B45309;
}

/* 00008 深海蓝调风格 */
.mood-card.gradient-ocean {
  background: linear-gradient(135deg, #1E40AF 0%, #3B82F6 50%, #60A5FA 100%) !important;
  border-radius: 28px !important;
  box-shadow: 0 18px 48px 0 rgba(30,64,175,0.28), 0 3px 10px 0 rgba(59,130,246,0.12) !important;
  border: none !important;
  color: #FFFFFF;
}
.mood-card.gradient-ocean .mood-card-quote-main {
  color: #FFFFFF;
}
.mood-card.gradient-ocean .mood-card-quote-sub {
  color: #BFDBFE;
}
.mood-card.gradient-ocean .mood-card-author {
  color: #93C5FD;
}
.mood-card.gradient-ocean .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.5rem;
  opacity: 0.4;
}
.mood-card.gradient-ocean .mood-card-feather svg {
  width: 46px;
  height: 46px;
  fill: #BFDBFE;
}

/* 00009 薄荷清晨风格 */
.mood-card.gradient-mint {
  background: linear-gradient(135deg, #10B981 0%, #34D399 50%, #6EE7B7 100%) !important;
  border-radius: 22px !important;
  box-shadow: 0 14px 40px 0 rgba(16,185,129,0.22), 0 2px 6px 0 rgba(52,211,153,0.10) !important;
  border: none !important;
  color: #064E3B;
}
.mood-card.gradient-mint .mood-card-quote-main {
  color: #064E3B;
}
.mood-card.gradient-mint .mood-card-quote-sub {
  color: #065F46;
}
.mood-card.gradient-mint .mood-card-author {
  color: #047857;
}
.mood-card.gradient-mint .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.8rem;
  opacity: 0.35;
}
.mood-card.gradient-mint .mood-card-feather svg {
  width: 40px;
  height: 40px;
  fill: #065F46;
}

/* 00010 银月清辉风格 */
.mood-card.gradient-silver {
  background: linear-gradient(135deg, #F1F5F9 0%, #E2E8F0 50%, #CBD5E1 100%) !important;
  border-radius: 32px !important;
  box-shadow: 0 16px 44px 0 rgba(148,163,184,0.20), 0 2px 8px 0 rgba(203,213,225,0.08) !important;
  border: none !important;
  color: #334155;
}
.mood-card.gradient-silver .mood-card-quote-main {
  color: #334155;
}
.mood-card.gradient-silver .mood-card-quote-sub {
  color: #64748B;
}
.mood-card.gradient-silver .mood-card-author {
  color: #94A3B8;
}
.mood-card.gradient-silver .mood-card-feather {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.6rem;
  opacity: 0.4;
}
.mood-card.gradient-silver .mood-card-feather svg {
  width: 44px;
  height: 44px;
  fill: #64748B;
}

/* Safari专用卡片动画性能优化样式，仅降级视觉特效 */
.mood-card.safari-optimized {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: 0 10px 30px 0 rgba(0,0,0,0.12) !important;
  border: none !important;
}

/* iPhone X Safari专用性能优化 */
.mood-card.safari-optimized.iphone-x {
  box-shadow: 0 5px 15px 0 rgba(0,0,0,0.08) !important;
  transform: translateZ(0);
  will-change: transform;
}

/* 手机端标题字体优化 - 使用更高优先级覆盖Tailwind */
@media (max-width: 768px) {
  .hero-title-section h1.text-4xl.md\:text-6xl,
  .hero-title-section h1 {
    font-size: 2rem !important;
    line-height: 1.2 !important;
    word-break: keep-all !important;
    white-space: normal !important;
  }
  .hero-title-section p.text-lg.md\:text-2xl,
  .hero-title-section p {
    font-size: 1rem !important;
    margin-top: 1rem !important; /* 恢复原来的间距 */
  }
  .hero-title-section {
    padding: 2rem 1rem;
  }
  .download-section {
  position: relative;
  margin: 3rem auto 2rem auto;
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}
  
  /* 移动端动态标题优化 */
  .dynamic-title-container {
    width: 100% !important; /* 移动端占满宽度 */
    min-height: 2.4em !important; /* 移动端增加高度 */
  }
  
  .dynamic-title {
    position: relative !important; /* 移动端使用相对定位 */
    width: 100% !important;
    white-space: normal !important; /* 移动端允许换行 */
    word-break: keep-all !important;
    text-align: center !important;
  }
}

/* 英文版标题自适应字号优化 - 确保PC和平板上一行展示 */
@media (min-width: 769px) {
  .hero-title-section h1[lang="en"],
  .hero-title-section h1:lang(en) {
    font-size: 3rem !important; /* 平板端较小字号，确保一行显示 */
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
    white-space: nowrap !important; /* 强制不换行 */
  }
}

@media (min-width: 1024px) {
  .hero-title-section h1[lang="en"],
  .hero-title-section h1:lang(en) {
    font-size: 3.5rem !important; /* 桌面端适中字号 */
    line-height: 1.1 !important;
    letter-spacing: -0.01em !important;
    white-space: nowrap !important; /* 强制不换行 */
  }
}

@media (min-width: 1280px) {
  .hero-title-section h1[lang="en"],
  .hero-title-section h1:lang(en) {
    font-size: 4rem !important; /* 大屏端较大字号 */
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important; /* 强制不换行 */
  }
}

/* 超宽屏优化 - 防止标题过长换行 */
@media (min-width: 1536px) {
  .hero-title-section h1[lang="en"],
  .hero-title-section h1:lang(en) {
    font-size: 4.5rem !important; /* 超宽屏字号，适度调整 */
    line-height: 1.1 !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important; /* 强制不换行 */
  }
}

/* 移动端卡片尺寸优化 */
@media (max-width: 768px) {
  .mood-card {
    width: 200px !important;
    height: 300px !important;
  }
  .mood-card-content {
    padding: 1.2rem !important;
  }
  .mood-card-quote-main {
    font-size: 0.9rem !important;
    line-height: 1.3 !important;
  }
  .mood-card-quote-sub {
    font-size: 0.75rem !important;
    line-height: 1.2 !important;
  }
  .mood-card-author {
    font-size: 0.7rem !important;
  }
  .mood-card-feather {
    margin-top: 1.5rem !important;
  }
  .mood-card-feather svg {
    width: 36px !important;
    height: 36px !important;
  }
}

/* 霓虹撞色模板 - 00011.json */
.mood-card.gradient-neon {
  background: linear-gradient(135deg, #00FFFF 0%, #FF00FF 50%, #FFFF00 100%);
  border-radius: 20px;
  box-shadow: 0 8px 32px rgba(0, 255, 255, 0.3), 0 8px 32px rgba(255, 0, 255, 0.3), 0 8px 32px rgba(255, 255, 0, 0.3);
  border: 2px solid rgba(255, 255, 255, 0.2);
}
.mood-card.gradient-neon .mood-card-quote-main {
  color: #000000;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.8);
}
.mood-card.gradient-neon .mood-card-quote-sub {
  color: #000000;
  text-shadow: 0 0 8px rgba(255, 255, 255, 0.6);
}
.mood-card.gradient-neon .mood-card-author {
  color: #000000;
  text-shadow: 0 0 6px rgba(255, 255, 255, 0.5);
}
.mood-card.gradient-neon .mood-card-feather {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  opacity: 0.8;
}
.mood-card.gradient-neon .mood-card-feather svg {
  width: 44px;
  height: 44px;
  fill: #000000;
  filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.8));
}

/* 黑绿电光模板 - 00012.json */
.mood-card.gradient-blackgreen {
  background: linear-gradient(135deg, #000000 0%, #00FF00 50%, #0080FF 100%);
  border-radius: 20px;
  box-shadow: 0 8px 32px rgba(0, 255, 0, 0.4), 0 8px 32px rgba(0, 128, 255, 0.3);
  border: 2px solid rgba(0, 255, 0, 0.3);
}
.mood-card.gradient-blackgreen .mood-card-quote-main {
  color: #FFFFFF;
  text-shadow: 0 0 10px rgba(0, 255, 0, 0.8);
}
.mood-card.gradient-blackgreen .mood-card-quote-sub {
  color: #FFFFFF;
  text-shadow: 0 0 8px rgba(0, 255, 0, 0.6);
}
.mood-card.gradient-blackgreen .mood-card-author {
  color: #FFFFFF;
  text-shadow: 0 0 6px rgba(0, 255, 0, 0.5);
}
.mood-card.gradient-blackgreen .mood-card-feather {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  opacity: 0.8;
}
.mood-card.gradient-blackgreen .mood-card-feather svg {
  width: 44px;
  height: 44px;
  fill: #00FF00;
  filter: drop-shadow(0 0 8px rgba(0, 255, 0, 0.8));
}

/* 紫黄对撞模板 - 00013.json */
.mood-card.gradient-purpleyellow {
  background: linear-gradient(135deg, #800080 0%, #FFFF00 100%);
  border-radius: 20px;
  box-shadow: 0 8px 32px rgba(128, 0, 128, 0.3), 0 8px 32px rgba(255, 255, 0, 0.3);
  border: 2px solid rgba(255, 255, 255, 0.2);
}
.mood-card.gradient-purpleyellow .mood-card-quote-main {
  color: #FFFFFF;
  text-shadow: 0 0 10px rgba(255, 255, 0, 0.8);
}
.mood-card.gradient-purpleyellow .mood-card-quote-sub {
  color: #FFFFFF;
  text-shadow: 0 0 8px rgba(255, 255, 0, 0.6);
}
.mood-card.gradient-purpleyellow .mood-card-author {
  color: #FFFFFF;
  text-shadow: 0 0 6px rgba(255, 255, 0, 0.5);
}
.mood-card.gradient-purpleyellow .mood-card-feather {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  opacity: 0.8;
}
.mood-card.gradient-purpleyellow .mood-card-feather svg {
  width: 44px;
  height: 44px;
  fill: #FFFF00;
  filter: drop-shadow(0 0 8px rgba(255, 255, 0, 0.8));
}

/* 液态玻璃模板 - 00014.json */
.mood-card.glassmorphism {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 20px;
  box-shadow: 0 8px 32px rgba(255, 255, 255, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.2);
  position: absolute; /* 保持与基础样式一致 */
  overflow: hidden;
}
.mood-card.glassmorphism::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 50%, rgba(255, 255, 255, 0.1) 100%);
  pointer-events: none;
}
.mood-card.glassmorphism .mood-card-quote-main {
  color: #FFFFFF;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  position: relative;
  z-index: 1;
}
.mood-card.glassmorphism .mood-card-quote-sub {
  color: rgba(255, 255, 255, 0.8);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 1;
}
.mood-card.glassmorphism .mood-card-author {
  color: rgba(255, 255, 255, 0.9);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 1;
}
.mood-card.glassmorphism .mood-card-feather {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  opacity: 0.7;
  z-index: 1;
}
.mood-card.glassmorphism .mood-card-feather svg {
  width: 44px;
  height: 44px;
  fill: rgba(255, 255, 255, 0.8);
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

/* Safari下液态玻璃效果降级 */
.mood-card.safari-optimized.glassmorphism {
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.mood-card.safari-optimized.glassmorphism .mood-card-quote-main {
  color: #333333;
  text-shadow: none;
}
.mood-card.safari-optimized.glassmorphism .mood-card-quote-sub {
  color: #666666;
  text-shadow: none;
}
.mood-card.safari-optimized.glassmorphism .mood-card-author {
  color: #555555;
  text-shadow: none;
}
.mood-card.safari-optimized.glassmorphism .mood-card-feather svg {
  fill: #666666;
  filter: none;
}

/* 斜放宣传横幅样式（文本叠加版） */
.promo-banner-tilted {
  position: absolute;
  top: 8%;
  left: 50%;
  transform: translateX(-50%) rotate(-12deg);
  transform-origin: center center;
  font-family: var(--font-serif);
  font-weight: 700;
  font-style: italic;
  font-size: clamp(18px, 6vw, 44px);
  letter-spacing: 0.08em;
  color: rgba(0, 0, 0, 0.16);
  text-shadow: 0 3px 14px rgba(0,0,0,0.12);
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
  z-index: 2;
}

/* 宇宙深蓝模板 - 00015.json */
.mood-card.cosmic-blue {
  background: linear-gradient(135deg, #0B1426 0%, #1E3A8A 30%, #3B82F6 70%, #1E40AF 100%);
  border-radius: 24px;
  box-shadow: 0 15px 40px rgba(59, 130, 246, 0.25), 0 5px 20px rgba(30, 58, 138, 0.15);
  border: 1px solid rgba(59, 130, 246, 0.3);
  position: absolute;
  overflow: hidden;
}

/* 星空背景层 */
.mood-card.cosmic-blue::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: 
    radial-gradient(4px 4px at 20px 30px, #FFFFFF, transparent),
    radial-gradient(3px 3px at 40px 70px, #FFFFFF, transparent),
    radial-gradient(5px 5px at 90px 40px, #FFFFFF, transparent),
    radial-gradient(2px 2px at 130px 80px, #FFFFFF, transparent),
    radial-gradient(4px 4px at 160px 30px, #FFFFFF, transparent),
    radial-gradient(3px 3px at 200px 60px, #FFFFFF, transparent),
    radial-gradient(5px 5px at 240px 20px, #FFFFFF, transparent),
    radial-gradient(2px 2px at 280px 70px, #FFFFFF, transparent),
    radial-gradient(4px 4px at 320px 40px, #FFFFFF, transparent),
    radial-gradient(3px 3px at 360px 80px, #FFFFFF, transparent),
    radial-gradient(5px 5px at 400px 30px, #FFFFFF, transparent),
    radial-gradient(2px 2px at 440px 60px, #FFFFFF, transparent),
    radial-gradient(4px 4px at 480px 20px, #FFFFFF, transparent),
    radial-gradient(3px 3px at 520px 70px, #FFFFFF, transparent),
    radial-gradient(5px 5px at 560px 40px, #FFFFFF, transparent),
    radial-gradient(2px 2px at 600px 80px, #FFFFFF, transparent),
    radial-gradient(4px 4px at 640px 30px, #FFFFFF, transparent),
    radial-gradient(3px 3px at 680px 60px, #FFFFFF, transparent),
    radial-gradient(5px 5px at 720px 20px, #FFFFFF, transparent),
    radial-gradient(2px 2px at 760px 70px, #FFFFFF, transparent);
  background-size: 800px 800px;
  background-repeat: repeat;
  opacity: 0.9;
  animation: twinkle 4s ease-in-out infinite;
  pointer-events: none;
}

/* 星光闪烁动画 */
@keyframes twinkle {
  0%, 100% { opacity: 0.9; }
  50% { opacity: 1; }
}

/* 额外的星光层 */
.mood-card.cosmic-blue::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: 
    radial-gradient(6px 6px at 50px 50px, rgba(255, 255, 255, 1), transparent),
    radial-gradient(4px 4px at 150px 100px, rgba(255, 255, 255, 0.9), transparent),
    radial-gradient(5px 5px at 250px 30px, rgba(255, 255, 255, 1), transparent),
    radial-gradient(6px 6px at 350px 80px, rgba(255, 255, 255, 0.8), transparent),
    radial-gradient(4px 4px at 450px 20px, rgba(255, 255, 255, 1), transparent),
    radial-gradient(5px 5px at 550px 70px, rgba(255, 255, 255, 0.9), transparent),
    radial-gradient(6px 6px at 650px 40px, rgba(255, 255, 255, 1), transparent),
    radial-gradient(4px 4px at 750px 90px, rgba(255, 255, 255, 0.8), transparent);
  background-size: 800px 800px;
  background-repeat: repeat;
  opacity: 0.7;
  animation: twinkle 6s ease-in-out infinite reverse;
  pointer-events: none;
}

.mood-card.cosmic-blue .mood-card-quote-main {
  color: #FFFFFF;
  text-shadow: 0 0 10px rgba(59, 130, 246, 0.5);
  position: relative;
  z-index: 1;
}

.mood-card.cosmic-blue .mood-card-quote-sub {
  color: #93C5FD;
  text-shadow: 0 0 8px rgba(147, 197, 253, 0.4);
  position: relative;
  z-index: 1;
}

.mood-card.cosmic-blue .mood-card-author {
  color: #60A5FA;
  text-shadow: 0 0 6px rgba(96, 165, 250, 0.4);
  position: relative;
  z-index: 1;
}

.mood-card.cosmic-blue .mood-card-feather {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  opacity: 0;
  z-index: 1;
}

.mood-card.cosmic-blue .mood-card-feather svg {
  width: 44px;
  height: 44px;
  fill: #60A5FA;
  filter: drop-shadow(0 0 8px rgba(96, 165, 250, 0.6));
}

/* 移动端优化 */
@media (max-width: 768px) {
  .mood-card.cosmic-blue::before {
    background-size: 400px 400px;
  }
  
  .mood-card.cosmic-blue::after {
    background-size: 400px 400px;
  }
}

.hero-top-controls-container.three-cols {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  width: 100%;
  padding: 1rem 0.5rem;
  z-index: 50;
}
.hero-left-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  z-index: 51;
}
.hero-center-controls .media-links-container {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
  z-index: 52;
}
.hero-right-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 51;
}
@media (max-width: 768px) {
  .hero-top-controls-container.three-cols {
    flex-direction: column;
    align-items: stretch;
    padding: 0.75rem 0.25rem;
    gap: 0.5rem;
  }
  .media-links-container {
    position: static;
    left: auto;
    top: auto;
    transform: none;
    justify-content: center;
    margin: 0.5rem 0;
  }
  .hero-left-controls, .hero-right-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 51;
}
}

.hero-top-controls-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  padding: 1.5rem 2rem 0 2rem;
  z-index: 50;
}
.hero-left-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  z-index: 51;
}
.hero-center-controls {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 52;
  overflow: visible;
}
.hero-right-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 51;
}
.media-links-container {
  display: flex;
  flex-direction: row;
  gap: 1.5rem;
  flex-wrap: nowrap;
  align-items: center;
}
@media (max-width: 768px) {
  .hero-top-controls-bar {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem 0 1rem;
    gap: 0.5rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 50;
    min-height: 60px;
  }
  .hero-left-controls {
    flex: 0 0 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  .hero-center-controls {
    flex: 1 1 auto;
    justify-content: center;
    margin: 0;
    min-width: 0;
    max-width: 60%;
  }
  .hero-right-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 51;
}
  .media-links-container {
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    max-width: 100%;
  }
  .media-link {
    font-size: 0.75rem;
    padding: 0.375rem 0.5rem;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    min-width: 0;
    max-width: 100%;
  }
  .media-link span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .media-link-icon {
    width: 1.125rem;
    height: 1.125rem;
    flex-shrink: 0;
  }
  .language-switcher {
    font-size: 0.875rem;
  }
  .language-btn {
    padding: 0.375rem 0.5rem;
    font-size: 0.875rem;
  }
  .hero-icon-wrapper {
    width: 28px;
    height: 28px;
    border-radius: 0; /* 完全去掉圆角 */
    flex-shrink: 0;
  }
  .hero-icon-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 改为cover以完整填充容器 */
  }
}

/* 超小屏幕的额外优化 */
@media (max-width: 480px) {
  .hero-top-controls-bar {
    padding: 0.5rem 0.75rem 0 0.75rem;
    gap: 0.25rem;
    min-height: 50px;
  }
  .hero-center-controls {
    max-width: 50%;
  }
  .media-links-container {
    gap: 0.5rem;
  }
  .media-link {
    font-size: 0.7rem;
    padding: 0.25rem 0.375rem;
  }
  .media-link-icon {
    width: 1rem;
    height: 1rem;
  }
  .hero-icon-wrapper {
    width: 28px;
    height: 28px;
    border-radius: 0; /* 完全去掉圆角 */
  }
  .hero-icon-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 改为cover以完整填充容器 */
  }
  .hero-title-section {
    top: 4%; /* 超小屏幕：更靠近顶部栏 */
  }
}

/* 悬浮媒体链接样式 */
.floating-media-links {
  position: fixed;
  right: 20px;
  bottom: 24px;
  transform: none;
  z-index: 1000;
  transition: all 0.25s ease;
  opacity: 1;
  visibility: visible;
}

.floating-media-links.hero-mode {
  position: absolute; /* 英雄区坐标系：垂直中间靠右 */
  top: 50%;
  right: 12px;
  left: auto;
  transform: translateY(-50%);
  z-index: 19; /* 低于下载区(20)，高于卡片雨(10)与背景 */
}

.floating-media-links-container {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  border-radius: 14px;
  padding: 12px 10px;
  box-shadow: 0 12px 30px rgba(107, 138, 171, 0.22), 0 2px 8px rgba(0,0,0,0.06);
  border: 1px solid rgba(255, 255, 255, 0.45);
  transition: all 0.25s ease;
}

.floating-media-links.hero-mode .floating-media-links-container {
  flex-direction: column; /* 纵向堆叠更适合右侧居中 */
  gap: 12px;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.35);
}

.floating-media-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 12px;
  color: var(--color-text-primary);
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  transition: all 0.2s ease;
  white-space: nowrap;
  background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(255,255,255,0.78));
  border: 1px solid rgba(255, 255, 255, 0.55);
  box-shadow: 0 6px 18px rgba(107, 138, 171, 0.18);
}

.floating-media-links.hero-mode .floating-media-link {
  color: white;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.35);
}

.floating-media-link:hover {
  background: rgba(255, 255, 255, 0.96);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(107, 138, 171, 0.22);
}

.floating-media-links.hero-mode .floating-media-link:hover {
  background: rgba(255, 255, 255, 0.22);
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(107, 138, 171, 0.28);
}

.floating-media-link-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
  color: var(--color-blue-dark);
}

.floating-media-link:hover .floating-media-link-icon {
  transform: scale(1.08);
}

.floating-media-link span {
  font-size: 12px;
  font-weight: 500;
}

/* 移动端适配 */
@media (max-width: 768px) {
  .floating-media-links {
    right: 12px;
    bottom: 16px;
    top: auto !important;
    transform: none !important;
  }
  
  .floating-media-links-container {
    padding: 12px 8px;
    gap: 8px;
  }
  
  .floating-media-links.hero-mode {
    position: absolute; /* 相对于英雄区 */
    top: 50%;
    right: 10px; /* 移动端仍贴右 */
    left: auto;
    transform: translateY(-50%) !important;
  }
  .floating-media-links.hero-mode .floating-media-links-container {
    flex-direction: column;
    gap: 8px;
  }
  
  .floating-media-link {
    padding: 6px 8px;
    font-size: 12px;
  }
  
  .floating-media-link-icon {
    width: 16px;
    height: 16px;
  }
  
  .floating-media-link span {
    font-size: 11px;
  }
}

/* 超小屏幕适配 */
@media (max-width: 480px) {
  .floating-media-links {
    right: 8px;
  }
  
  .floating-media-links.hero-mode {
    position: absolute; /* 相对于英雄区 */
    top: 50%;
    right: 8px;
    left: auto;
    transform: translateY(-50%) !important;
  }
  
  .floating-media-links-container {
    padding: 8px 6px;
    gap: 6px;
  }
  
  .floating-media-link {
    padding: 4px 6px;
    font-size: 11px;
  }
  
  .floating-media-link-icon {
    width: 14px;
    height: 14px;
  }
  
  .floating-media-link span {
    font-size: 10px;
  }
}


/* 修复下载区域位置 */
#hero-section .download-section {
  position: absolute;
  bottom: 5%; /* PC端更靠下，释放更多空间给卡片雨 */
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* 信任徽章区域位置调整 */
.trust-badges-section {
  position: absolute;
  bottom: 2%; /* 从4%调整到2%，确保与下载区域有足够间距 */
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 800px;
  padding: 0 2rem;
  text-align: center;
  z-index: 15;
}

/* 移动端布局优化 */
@media (max-width: 768px) {
  #hero-section .download-section {
    position: absolute !important;
    bottom: 10% !important;  /* 上移，与媒体链接保持同一基线，并为信任徽章让出空间 */
    left: auto !important;
    right: 12px !important; /* 固定到右侧 */
    transform: none !important;
    width: auto !important;
    max-width: 55vw !important; /* 占右侧 ~55% 宽度 */
    padding: 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    z-index: 20 !important;
  }

  #hero-section .download-section > div {
    margin: 0 !important;
    width: auto !important;
    max-width: 55vw !important;
    gap: 0.5rem !important;
    justify-content: flex-end !important;
  }
  
  .trust-badges-section {
    bottom: 1.5%; /* 稍微贴近底部，扩大与上方区域的间距 */
    padding: 0 0.75rem;
  }
}

/* 小屏幕优化 */
@media (max-width: 480px) {
  #hero-section .download-section {
    bottom: 10%; /* 更靠近信任徽章，在小屏上也不重叠 */
    padding: 0 0.5rem;
  }
  
  .trust-badges-section {
    bottom: 0.5%; /* 与更早的移动端细分规则保持一致，尽量贴近底部 */
    padding: 0 0.5rem;
  }
}

/* ========================================
   下载按钮优化样式 - 最小改动原则
   ======================================== */

/* 下载按钮基础样式增强 */
.store-badge {
  /* 保持现有样式，只添加新的属性 */
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  position: relative;
  overflow: hidden;
}

/* 悬停效果增强 - 覆盖现有悬停样式 */
.store-badge:hover:not(.disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* 点击反馈 */
.store-badge:active:not(.disabled) {
  transform: translateY(0);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* App Store按钮轻微脉冲动画 */
.store-badge.app-store-badge {
  animation: gentle-pulse 4s infinite;
}

/* 定义脉冲动画 - 使用box-shadow而不是transform避免冲突 */
@keyframes gentle-pulse {
  0%, 100% { 
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  }
  50% { 
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
  }
}

/* 增强下载区域容器的视觉效果 */
.download-section .flex {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(10px);
  border-radius: 20px;
  padding: 20px;
  margin: 0 20px;
}

/* 移动端优化 - 保持现有响应式设计 */
@media (max-width: 768px) {
  /* 移动端悬停效果改为触摸反馈 */
  .store-badge:active:not(.disabled) {
    transform: scale(0.98);
  }
  
  /* 移动端下载区域容器调整 */
  .download-section .flex {
    margin: 0 10px;
    padding: 15px;
  }
}

/* 尊重用户的减少动画偏好 */
@media (prefers-reduced-motion: reduce) {
  .store-badge.app-store-badge {
    animation: none;
  }
  
  .store-badge {
    transition: none;
  }
}

/* 确保悬浮媒体链接可见 */
.floating-media-links {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  pointer-events: auto;
  transition: all 0.3s ease;
  opacity: 1 !important;
  visibility: visible !important;
}

.floating-media-links.hero-mode {
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  z-index: 19;
}

.floating-media-links-container {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  border-radius: 14px;
  padding: 12px 10px;
  box-shadow: 0 12px 30px rgba(107, 138, 171, 0.22), 0 2px 8px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.45);
  transition: all 0.25s ease;
}

.floating-media-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  color: #4a4a4a;
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.25s ease;
  border: 1px solid rgba(255, 255, 255, 0.6);
  box-shadow: 0 6px 18px rgba(107, 138, 171, 0.18);
}

.floating-media-link:hover {
  background: rgba(255, 255, 255, 0.96);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(107, 138, 171, 0.22);
}

.floating-media-link-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  opacity: 0.8;
}

/* 移动端媒体链接优化 */
@media (max-width: 768px) {
  .floating-media-links {
    right: 1rem;
    bottom: 1.5rem;
    gap: 0.5rem;
  }
  
  .floating-media-links.hero-mode {
    right: 1rem;
    transform: translateY(-50%);
  }
  
  .floating-media-links-container {
    padding: 8px 6px;
    gap: 6px;
  }
  
  .floating-media-link {
    padding: 4px 8px;
    font-size: 0.75rem;
  }
  
  .floating-media-link-icon {
    width: 16px;
    height: 16px;
  }
}
