/**
 * mobile-responsive.css
 * 锦玥图像引擎 - 移动端响应式优化
 */

/* 移动端基础优化 */
@media (max-width: 768px) {
  /* 全局字体和间距优化 */
  body {
    font-size: 14px;
    line-height: 1.6;
  }

  /* 容器宽度优化 */
  .container {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }

  /* 标题大小优化 */
  h1 {
    font-size: 24px !important;
    line-height: 1.3;
  }

  h2 {
    font-size: 20px !important;
    line-height: 1.3;
  }

  h3 {
    font-size: 17px !important;
  }

  /* 工具卡片网格优化 - 2列 */
  .tools-grid,
  .tool-grid,
  [class*="grid"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }

  /* 工具卡片内边距优化 */
  .tool-card,
  [class*="tool-card"],
  [class*="card"] {
    padding: 15px !important;
    border-radius: 10px !important;
  }

  /* 工具卡片图标大小优化 */
  .tool-icon,
  [class*="icon"] {
    width: 40px !important;
    height: 40px !important;
    font-size: 20px !important;
  }

  /* 按钮大小优化 */
  .btn,
  button,
  [class*="btn"] {
    padding: 10px 18px !important;
    font-size: 14px !important;
    border-radius: 8px !important;
  }

  /* 输入框大小优化 */
  input,
  select,
  textarea {
    font-size: 16px !important; /* 防止iOS自动缩放 */
    padding: 10px 12px !important;
  }

  /* 表格横向滚动 */
  table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }

  /* 图片最大宽度 */
  img {
    max-width: 100%;
    height: auto;
  }

  /* 页脚多列改为单列 */
  .footer-content,
  [class*="footer"] {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    text-align: center !important;
  }

  /* 分享按钮区域优化 */
  .share-container,
  .share-buttons {
    padding: 15px !important;
    gap: 8px !important;
  }

  .share-btn {
    min-width: 56px !important;
    padding: 8px 12px !important;
    font-size: 11px !important;
  }

  /* 统计数字优化 */
  .stats-count,
  [class*="stat"] {
    font-size: 28px !important;
  }

  /* 特性卡片网格优化 */
  .features-grid,
  [class*="features"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }

  /* FAQ区域优化 */
  .faq-item,
  [class*="faq"] {
    padding: 12px !important;
  }

  /* 博客卡片网格优化 */
  .blog-grid,
  [class*="blog"] {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }

  /* 隐藏桌面端专属元素 */
  .desktop-only,
  [class*="desktop"] {
    display: none !important;
  }

  /* 显示移动端专属元素 */
  .mobile-only,
  [class*="mobile"] {
    display: block !important;
  }
}

/* 小屏手机优化 */
@media (max-width: 480px) {
  /* 工具卡片改为1列 */
  .tools-grid,
  .tool-grid,
  [class*="grid"] {
    grid-template-columns: 1fr !important;
  }

  /* 标题进一步缩小 */
  h1 {
    font-size: 20px !important;
  }

  h2 {
    font-size: 18px !important;
  }

  /* 特性卡片改为1列 */
  .features-grid,
  [class*="features"] {
    grid-template-columns: 1fr !important;
  }

  /* 分享按钮更小 */
  .share-btn {
    min-width: 48px !important;
    padding: 6px 8px !important;
    font-size: 10px !important;
  }
}

/* 触摸设备优化 */
@media (hover: none) and (pointer: coarse) {
  /* 增大可点击区域 */
  a, button, [class*="btn"] {
    min-height: 44px;
    min-width: 44px;
  }

  /* 移除悬停效果 */
  *:hover {
    transform: none !important;
  }
}


/* ========== 移动端增强优化 ========== */

/* 安全区域适配（刘海屏） */
@supports (padding: max(0px)) {
  .header {
    padding-top: max(12px, env(safe-area-inset-top));
  }
  .footer {
    padding-bottom: max(20px, env(safe-area-inset-bottom));
  }
  .mobile-menu {
    padding-top: max(60px, env(safe-area-inset-top));
    padding-bottom: max(20px, env(safe-area-inset-bottom));
  }
}

/* 触摸优化 - 最小点击区域44px */
@media (max-width: 768px) {
  button, .btn, a.tool-card, .nav-link, .lang-btn, .category-btn {
    min-height: 44px;
    min-width: 44px;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }
  
  /* 防止双击缩放 */
  * {
    touch-action: manipulation;
  }
  
  /* 表单元素优化 */
  input, select, textarea {
    font-size: 16px !important; /* 防止iOS自动缩放 */
    -webkit-appearance: none;
    appearance: none;
  }
  
  /* 工具卡片网格优化 */
  .tools-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    padding: 0 12px !important;
  }
  
  .tool-card {
    padding: 16px 12px !important;
    border-radius: 12px !important;
  }
  
  .tool-card .icon {
    width: 40px !important;
    height: 40px !important;
    font-size: 20px !important;
  }
  
  .tool-card h3 {
    font-size: 13px !important;
    margin-top: 8px !important;
  }
  
  /* Hero区域优化 */
  .hero {
    padding: 40px 16px !important;
    text-align: center !important;
  }
  
  .hero h1 {
    font-size: 24px !important;
    line-height: 1.3 !important;
  }
  
  .hero p {
    font-size: 14px !important;
    margin-top: 12px !important;
  }
  
  .hero-buttons {
    flex-direction: column !important;
    gap: 12px !important;
    margin-top: 24px !important;
  }
  
  .hero-buttons .btn {
    width: 100% !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
  }
  
  /* 统计数据优化 */
  .stats-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
    padding: 0 16px !important;
  }
  
  .stat-item .number {
    font-size: 28px !important;
  }
  
  .stat-item .label {
    font-size: 12px !important;
  }
  
  /* 功能特性网格优化 */
  .features-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding: 0 16px !important;
  }
  
  .feature-card {
    padding: 20px !important;
    border-radius: 12px !important;
  }
  
  .feature-card .icon {
    width: 48px !important;
    height: 48px !important;
    font-size: 24px !important;
  }
  
  .feature-card h3 {
    font-size: 16px !important;
    margin-top: 12px !important;
  }
  
  .feature-card p {
    font-size: 13px !important;
    margin-top: 8px !important;
  }
  
  /* 使用步骤优化 */
  .steps-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    padding: 0 16px !important;
  }
  
  .step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 16px !important;
    text-align: left !important;
  }
  
  .step-number {
    flex-shrink: 0 !important;
    width: 40px !important;
    height: 40px !important;
    font-size: 18px !important;
  }
  
  /* 应用场景优化 */
  .usecases-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    padding: 0 16px !important;
  }
  
  .usecase-card {
    padding: 16px !important;
    border-radius: 12px !important;
  }
  
  .usecase-card .icon {
    font-size: 28px !important;
  }
  
  .usecase-card h3 {
    font-size: 14px !important;
    margin-top: 8px !important;
  }
  
  .usecase-card p {
    font-size: 12px !important;
    margin-top: 6px !important;
  }
  
  /* 用户评价优化 */
  .testimonials-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding: 0 16px !important;
  }
  
  .testimonial-card {
    padding: 20px !important;
    border-radius: 12px !important;
  }
  
  /* CTA区域优化 */
  .cta-section {
    padding: 40px 16px !important;
    text-align: center !important;
  }
  
  .cta-section h2 {
    font-size: 22px !important;
  }
  
  .cta-section p {
    font-size: 14px !important;
    margin-top: 12px !important;
  }
  
  .cta-section .btn {
    width: 100% !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    margin-top: 20px !important;
  }
  
  /* 桌面客户端下载区域优化 */
  .desktop-app-section {
    padding: 40px 16px !important;
  }
  
  .download-buttons {
    flex-direction: column !important;
    gap: 12px !important;
  }
  
  .download-btn {
    width: 100% !important;
    padding: 14px 20px !important;
    font-size: 14px !important;
  }
  
  /* 页脚优化 */
  .footer-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
    padding: 0 16px !important;
  }
  
  .footer-bottom {
    flex-direction: column !important;
    gap: 12px !important;
    text-align: center !important;
    padding: 20px 16px !important;
  }
  
  /* 标题区域优化 */
  .section-title {
    font-size: 22px !important;
    padding: 0 16px !important;
  }
  
  .section-subtitle {
    font-size: 14px !important;
    padding: 0 16px !important;
    margin-top: 8px !important;
  }
  
  /* 分类标签优化 */
  .category-tabs {
    padding: 0 16px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  
  .category-tabs::-webkit-scrollbar {
    display: none !important;
  }
  
  .category-btn {
    flex-shrink: 0 !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    border-radius: 20px !important;
  }
  
  /* 工具页面上传区域优化 */
  .upload-area {
    padding: 40px 20px !important;
    margin: 0 16px !important;
    border-radius: 16px !important;
    min-height: 200px !important;
  }
  
  .upload-area .icon {
    font-size: 48px !important;
  }
  
  .upload-area h3 {
    font-size: 16px !important;
    margin-top: 12px !important;
  }
  
  .upload-area p {
    font-size: 13px !important;
    margin-top: 8px !important;
  }
  
  /* 工具页面设置区域优化 */
  .settings-panel {
    margin: 0 16px !important;
    padding: 20px !important;
    border-radius: 12px !important;
  }
  
  .setting-item {
    margin-bottom: 16px !important;
  }
  
  .setting-item label {
    font-size: 14px !important;
    margin-bottom: 8px !important;
  }
  
  .setting-item input[type="range"] {
    width: 100% !important;
  }
  
  /* 预览区域优化 */
  .preview-area {
    margin: 0 16px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }
  
  .preview-area img {
    max-width: 100% !important;
    height: auto !important;
  }
  
  /* 操作按钮优化 */
  .action-buttons {
    flex-direction: column !important;
    gap: 12px !important;
    padding: 0 16px !important;
    margin-bottom: 24px !important;
  }
  
  .action-buttons .btn {
    width: 100% !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    border-radius: 12px !important;
  }
  
  /* 返回顶部按钮优化 */
  .back-to-top {
    right: 16px !important;
    bottom: 16px !important;
    width: 44px !important;
    height: 44px !important;
    font-size: 20px !important;
    border-radius: 50% !important;
  }
  
  /* 分享按钮优化 */
  .share-buttons {
    padding: 0 16px !important;
    margin-bottom: 24px !important;
  }
  
  .share-btn {
    width: 44px !important;
    height: 44px !important;
    font-size: 18px !important;
    border-radius: 50% !important;
  }
  
  /* 广告位优化 */
  .ad-slot {
    margin: 16px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
  }
  
  /* 小屏幕优化（<360px） */
  @media (max-width: 360px) {
    .tools-grid {
      grid-template-columns: 1fr !important;
    }
    
    .usecases-grid {
      grid-template-columns: 1fr !important;
    }
    
    .footer-grid {
      grid-template-columns: 1fr !important;
    }
    
    .stats-grid {
      grid-template-columns: 1fr !important;
    }
    
    .hero h1 {
      font-size: 20px !important;
    }
  }
  
  /* 横屏优化 */
  @media (max-height: 500px) and (orientation: landscape) {
    .hero {
      padding: 20px 16px !important;
    }
    
    .hero h1 {
      font-size: 20px !important;
    }
    
    .hero-buttons {
      margin-top: 16px !important;
    }
  }
}

/* 打印优化 */
@media print {
  .header, .footer, .mobile-menu, .back-to-top, .share-buttons, .ad-slot {
    display: none !important;
  }
  
  .tool-card, .feature-card, .testimonial-card {
    break-inside: avoid !important;
    border: 1px solid #ddd !important;
  }
}

/* ========== 汉堡菜单样式 ========== */
.hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 8px;
  gap: 5px;
  z-index: 1001;
}

.hamburger span {
  display: block;
  width: 24px;
  height: 2px;
  background: #333;
  border-radius: 2px;
  transition: all 0.3s ease;
}

.hamburger.active span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;
}

.hamburger.active span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* 移动端导航菜单 */
@media (max-width: 768px) {
  .hamburger {
    display: flex !important;
  }
  
  .nav-links {
    position: fixed !important;
    top: 0 !important;
    right: -100% !important;
    width: 75% !important;
    max-width: 320px !important;
    height: 100vh !important;
    background: #fff !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    padding: 80px 24px 24px !important;
    margin: 0 !important;
    box-shadow: -4px 0 20px rgba(0,0,0,0.1) !important;
    transition: right 0.3s ease !important;
    z-index: 1000 !important;
    list-style: none !important;
  }
  
  .nav-links.active {
    right: 0 !important;
  }
  
  .nav-links li {
    width: 100% !important;
    margin: 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
  }
  
  .nav-links li a {
    display: block !important;
    padding: 16px 0 !important;
    font-size: 16px !important;
    color: #333 !important;
    text-decoration: none !important;
    width: 100% !important;
  }
  
  /* 遮罩层 */
  .nav-links.active::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: -1;
  }
  
  /* 登录注册按钮在移动端调整 */
  .auth-buttons {
    display: none !important;
  }
  
  /* 移动端显示登录注册在菜单底部 */
  .nav-links::after {
    content: '';
    display: block;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 2px solid #f0f0f0;
  }
}

/* 小屏幕优化 */
@media (max-width: 480px) {
  .nav-links {
    width: 85% !important;
  }
}

/* 移动端登录注册按钮显示 */
@media (max-width: 768px) {
  .mobile-auth-links {
    display: block !important;
  }
  
  .mobile-auth-links a {
    color: #10b981 !important;
    font-weight: 600 !important;
  }
  
  /* 语言切换器在移动端调整 */
  #langSwitcherContainer {
    margin-left: 8px !important;
  }
  
  /* Logo在移动端调整 */
  .logo-text {
    font-size: 16px !important;
  }
  
  .logo-subtitle {
    display: none !important;
  }
  
  /* 统计数字在移动端调整 */
  .stats-counter-number {
    font-size: 36px !important;
  }
  
  /* 信任指标条在移动端调整 */
  .trust-bar {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }
  
  /* 隐私徽章在移动端调整 */
  .privacy-badge {
    padding: 8px 16px !important;
    font-size: 12px !important;
  }
}
