/* Swiper Cards — 发现页卡片堆叠 */
.discover-swiper-wrap {
  width: 100%;
  padding: 4px 0 12px;
  position: relative;
}
.discover-swiper {
  width: 100%;
  height: calc(100vh - 220px);
  min-height: 420px;
  max-height: 640px;
  overflow: visible !important;
}
.discover-swiper .swiper-slide {
  border-radius: 28px;
  overflow: hidden;
  box-shadow:
    0 24px 64px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(255, 255, 255, 0.06);
  background: var(--bg-soft);
}
.discover-swiper .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.28) !important;
  border-radius: 28px;
}

/* 固定操作栏 */
.discover-actions-bar {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  padding: 8px 0 4px;
  position: relative;
  z-index: 10;
}

/* Skeleton 骨架屏 */
.skeleton {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.06) 0%,
    rgba(255, 255, 255, 0.14) 50%,
    rgba(255, 255, 255, 0.06) 100%
  );
  background-size: 200% 100%;
  animation: shimmer 1.4s ease-in-out infinite;
  border-radius: 12px;
}
.skeleton-card {
  width: 100%;
  aspect-ratio: 3 / 4.2;
  border-radius: 28px;
  max-height: calc(100vh - 200px);
}
.skeleton-line { height: 14px; margin-bottom: 10px; }
.skeleton-line.w60 { width: 60%; }
.skeleton-line.w40 { width: 40%; }
.skeleton-line.w80 { width: 80%; }
@keyframes shimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* Lucide 图标尺寸 */
.nav-icon, .lucide { width: 20px; height: 20px; stroke-width: 2px; }
.nav-icon-wrap .nav-icon { width: 18px; height: 18px; }
.action-btn .lucide { width: 24px; height: 24px; }
.action-like .lucide { width: 28px; height: 28px; }

/* AOS 微调 */
[data-aos] { pointer-events: auto; }

/* 增强 Toast */
.toast {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 20px;
  border-radius: 16px;
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}
.toast .toast-icon { flex-shrink: 0; opacity: 0.95; }

/* 配对弹窗增强 */
.match-popup-card {
  border: 1px solid rgba(255, 107, 157, 0.25);
  box-shadow: 0 24px 80px rgba(255, 107, 157, 0.35);
}
.match-popup-card .hearts {
  animation: heartPulse 1.2s ease-in-out infinite;
}
@keyframes heartPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.08); }
}

/* 列表卡片入场 */
.list-card-enter {
  animation: slideUp 0.45s cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes slideUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

.discover-empty .empty-icon .lucide {
  width: 48px; height: 48px; color: var(--primary); opacity: .6;
  margin: 0 auto 12px; display: block;
}
.discover-empty .empty-icon { font-size: 0; margin-bottom: 12px; }

.feature-icon .lucide {
  width: 22px; height: 22px; color: var(--gold); margin: 0 auto 8px; display: block;
}
.feature-icon { font-size: 0; }

.menu-item .icon-lucide {
  width: 20px; height: 20px; color: var(--primary);
}
