/* =============================================================================
 * @ANCHOR:responsive — 全站响应式 · 移动端 3D 简化 · prefers-reduced-motion
 *
 * 断点唯一维护点（@media 不支持 var()，改此处 px 即可）：
 *   sm  max-width: 640px   手机
 *   md  max-width: 1024px  平板
 *   lg  max-width: 1280px  小屏桌面（预留）
 * ============================================================================= */

/* ── md ≤1024：平板布局 ───────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  .section {
    padding: 2rem 1.25rem 2.5rem;
  }

  .home-layout,
  .projects-layout {
    grid-template-columns: 1fr;
    gap: var(--space-6);
  }

  .home-sidebar,
  .projects-sidebar {
    display: none;
  }

  .projects-title {
    margin-left: 0;
  }

  .projects-main {
    padding: 0;
  }

  /* 首页 · 优势三列 → 单列 */
  .advantages-grid.style-3 {
    grid-template-columns: 1fr;
    max-width: 100%;
  }

  /* 首页 · Hero */
  .intro-hero-content {
    grid-template-columns: 1fr;
    gap: var(--space-10);
  }

  .intro-hero-meta {
    grid-template-columns: 1fr;
  }

  .intro-hero-photo-wrapper {
    max-width: 260px;
    margin: 0 auto;
  }

  .intro-float-card.card-1 {
    left: -4%;
  }

  .intro-float-card.card-2 {
    right: -4%;
  }

  .intro-hero-name {
    font-size: var(--fontsize-6xl);
  }

  /* 首页 · 能力模型 */
  #home-ability .ability-grid {
    grid-template-columns: 1fr;
  }

  #home-ability .ability-model {
    width: 100%;
  }

  #home-ability .ability-header {
    font-size: var(--fontsize-xl);
    white-space: normal;
  }

  #home-ability .ability-cell-title {
    font-size: var(--fontsize-xl);
  }

  #home-ability .ability-cell-desc,
  #home-ability .ability-tag {
    font-size: var(--fontsize-md);
  }

  /* 作品集 · No.7 高亮区 */
  .project-p7-highlight-layout {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }

  .project-p7-highlight-left {
    grid-column: 1;
    grid-row: 1;
  }

  .project-p7-highlight-tall {
    grid-column: 1;
    grid-row: 2;
  }

  /* 关于 AI · 时间轴 */
  .about-ai-ppt-modal {
    --about-ai-ppt-thumb-w: clamp(35px, 28vw, 140px);
  }

  .about-ai-ppt-modal__body {
    gap: var(--space-3);
    padding: 0 0.65rem 0.75rem;
  }

  #about-ai .about-ai-grid {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  #about-ai .about-ai-grid::before {
    left: 32px;
    top: 28px;
    bottom: 28px;
  }

  #about-ai .about-ai-cell-thumb,
  #about-ai .about-ai-cell-thumb--empty {
    grid-column: 1 / -1;
    max-width: 420px;
    margin-left: 0;
    justify-self: start;
  }

  #about-ai .about-ai-dot--chapter {
    width: 56px;
    height: 56px;
  }

  #about-ai .about-ai-cell-chapter-lead {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  #about-ai .about-ai-cell-timeline--chapter .about-ai-dot--chapter {
    transform: translateY(calc((var(--fontsize-5xl) * var(--line-height-tight) - 56px) / 2));
  }

  #about-ai .about-ai-cell-chapter-lead .about-ai-cell-timeline--chapter .about-ai-dot--chapter {
    transform: none;
  }

  #about-ai .about-ai-cell-timeline--item .about-ai-dot--item {
    transform: translateY(calc((var(--fontsize-4xl) * var(--line-height-tight) - 16px) / 2));
  }

  #about-ai .chaptitlea {
    font-size: var(--fontsize-5xl);
  }

  #about-ai .chaptitleb {
    font-size: var(--fontsize-3xl);
  }

  #about-ai .chaptitlec {
    font-size: var(--fontsize-1xl);
  }

  /* 行业成果 */
  .achievements-page .honor-row {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }

  .achievements-page .honor-gallery-shell {
    width: 100%;
  }

  .achievements-page .honor-gallery-viewport {
    -webkit-overflow-scrolling: touch;
  }

  .achievements-page .voice-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .achievements-page .philosophy-panel {
    grid-template-columns: 1fr;
    gap: var(--space-5);
    padding: 1.35rem 1.5rem 1.5rem;
  }

  .achievements-page .philosophy-media {
    order: -1;
  }

  /* 联系页 */
  .contact-page {
    margin: 0 -1rem;
    padding: 1.5rem 1rem 2rem;
  }

  .contact-shell {
    padding: 1.6rem 2rem;
  }

  .contact-card-inner {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }

  .contact-page .contact-media--square {
    margin-inline: auto;
    justify-self: center;
  }

  .contact-deflist-row {
    grid-template-columns: 1fr;
  }

  /* 顶栏 Tab 可横向滑动 */
  .navbar-nav {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
  }

  .navbar-nav::-webkit-scrollbar {
    display: none;
  }
}

/* ── sm ≤640：手机布局 + 3D / 动效简化 ───────────────────────────────────── */

@media (max-width: 640px) {
  :root {
    --page-diffused-height: 200px;
    --page-diffused-blur: 40px;
  }

  .section,
  #about-ai .achievements-page {
    padding: 1.5rem 1rem 2.5rem;
  }

  .home-block {
    padding: 1.5rem 1rem;
  }

  .home-block-header {
    margin-bottom: var(--space-6);
  }

  .home-block-header h3,
  .section-title {
    font-size: var(--fontsize-3xl);
  }

  #home-experience .experience-block {
    gap: var(--space-5);
    margin-bottom: var(--space-10);
  }

  #home-experience .home-experience-blocks {
    margin-left: 0;
    margin-right: 0;
  }

  #home-education .edu-list,
  #home-education .edu-list--cert {
    padding-left: 0;
  }

  .navbar-inner {
    padding-inline: 1rem;
  }

  .navbar-nav {
    grid-auto-columns: 5.2em;
  }

  .navbar-nav a {
    font-size: var(--fontsize-md);
    padding: 8px 12px;
  }

  .intro-hero-name {
    font-size: var(--fontsize-5xl);
  }

  .intro-bg-blob {
    opacity: 0.28;
    filter: blur(48px);
  }

  /* Hero 浮动卡：取消绝对定位与循环动画，改为照片下方静态排列 */
  .intro-hero-photo-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-3);
    max-width: 100%;
  }

  .intro-float-card,
  .intro-float-badge {
    position: static;
    animation: none;
    margin: 0;
    width: fit-content;
    max-width: calc(100% - 1rem);
  }

  .intro-float-card.card-1,
  .intro-float-card.card-2 {
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
  }

  .intro-float-badge {
    order: 3;
    white-space: normal;
    text-align: center;
  }

  /* 作品集卡片单列 */
  .project-card-row,
  #projects[data-active-project="1"] .project-card-row:not(.project-card-row--single),
  #projects[data-active-project="2"] .project-card-row:not(.project-card-row--single),
  #projects[data-active-project="3"] .project-card-row:not(.project-card-row--single),
  #projects[data-active-project="4"] .project-card-row:not(.project-card-row--single),
  #projects[data-active-project="5"] .project-card-row:not(.project-card-row--single) {
    grid-template-columns: 1fr;
  }

  .project-p7-highlight-left {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .project-3-award-banner .award-banner.style-2,
  .project-3-award-banner .award-banner.style-3 {
    flex-wrap: wrap;
    gap: var(--space-3);
  }

  .projects-title {
    font-size: var(--fontsize-3xl);
    margin-bottom: var(--space-8);
  }

  .project-panel-title {
    font-size: var(--fontsize-2xl);
  }

  #project-result-title,
  #project-result-dynamic > .project-panel-title {
    font-size: var(--fontsize-3xl);
    margin-top: var(--space-8);
    margin-bottom: var(--space-4);
  }

  /* 关于 AI · 时间轴进一步收紧 */
  #about-ai .about-ai-grid {
    grid-template-columns: 48px minmax(0, 1fr);
    column-gap: var(--space-3);
  }

  #about-ai .about-ai-grid::before {
    left: 24px;
  }

  #about-ai .about-ai-cell-chapter-lead {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  #about-ai .about-ai-dot--chapter {
    width: 44px;
    height: 44px;
  }

  #about-ai .about-ai-cell-thumb,
  #about-ai .about-ai-cell-thumb--empty {
    max-width: 100%;
  }

  #about-ai .chaptitlea {
    font-size: var(--fontsize-4xl);
  }

  #about-ai .chaptitleb {
    font-size: var(--fontsize-2xl);
  }

  .about-ai-ppt-modal {
    --about-ai-ppt-panel-h: 100vh;
  }

  .about-ai-ppt-modal__panel {
    border-radius: 0;
  }

  /* 行业成果 */
  .achievements-page .voice-grid {
    grid-template-columns: 1fr;
  }

  .achievements-page .ach-block-title {
    font-size: var(--fontsize-3xl);
  }

  .achievements-page .voice-card-media {
    width: 100%;
  }

  /* 联系页 */
  .contact-shell {
    padding: 1.25rem 1rem;
  }

  .contact-tools {
    gap: var(--space-4);
  }

  /* ── 移动端 3D / 深度效果简化（性能 + 可读性） ── */

  .project-card.project-panel-card,
  #projects.project-dark .project-card.project-panel-card {
    backdrop-filter: none;
  }

  #home .card:not(.home-sidebar-inner):hover,
  .achievements-page .voice-card:hover,
  #about-ai .about-ai-thumb:hover,
  #projects:not(.project-dark)
    .project-detail-stack
    .project-card.project-panel-card:not(.project-3-award-banner):not(.project-card-highlight):hover,
  #projects:not(.project-dark)
    .project-detail-stack
    .project-card.project-panel-card.project-card-highlight:not(.project-3-award-banner):hover,
  .btn-primary:hover {
    transform: none;
  }

  .advantage-icon::before {
    animation: none;
  }

  .advantage-card:hover .advantage-icon,
  .advantage-card:hover .advantage-icon.icon-gradient-purple,
  .advantage-card:hover .advantage-icon.icon-gradient-blue,
  .advantage-card:hover .advantage-icon.icon-gradient-pink {
    transform: none;
  }

  #home-experience .experience-block:hover .experience-block__body {
    transform: none;
  }

  .achievements-page .ach-honor-thumb-wrap:hover .ach-honor-thumb {
    transform: none;
  }

  /* 证书预览：取消叠卡 3D，仅显示正面 */
  .cert-preview-modal__card.is-back {
    display: none;
  }

  .cert-preview-modal__card.is-front {
    transform: translate(-50%, -50%) scale(1);
    width: min(calc(100vw - 32px), 646px);
  }
}

/* ── 触摸设备：无 hover 能力时禁用上浮类交互 ─────────────────────────────── */

@media (hover: none) and (pointer: coarse) {
  #home .card:not(.home-sidebar-inner):hover,
  .achievements-page .voice-card:hover,
  #about-ai .about-ai-thumb:hover,
  #projects:not(.project-dark)
    .project-detail-stack
    .project-card.project-panel-card:not(.project-3-award-banner):not(.project-card-highlight):hover,
  #projects:not(.project-dark)
    .project-detail-stack
    .project-card.project-panel-card.project-card-highlight:not(.project-3-award-banner):hover,
  #projects.project-dark
    .project-detail-stack
    .project-card.project-panel-card:not(.project-3-award-banner):not(.project-card-highlight):hover,
  .advantage-card:hover .advantage-icon,
  .btn-primary:hover {
    transform: none;
  }

  .achievements-page .ach-honor-thumb-wrap:hover .ach-honor-thumb {
    transform: none;
  }
}

/* ── prefers-reduced-motion：全局动效降级 ─────────────────────────────────── */

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .intro-float-card,
  .intro-float-badge,
  .advantage-icon::before {
    animation: none;
  }

  #home-experience .experience-block__bar::after,
  #home-experience .experience-block__body {
    transition: none;
  }

  #home-experience .experience-block:hover .experience-block__body {
    transform: none;
  }

  .cert-preview-modal__backdrop,
  .cert-preview-modal__stage,
  .cert-preview-modal__card,
  .cert-preview-modal__card-img,
  .cert-preview-modal__glass {
    transition-duration: 0.01ms !important;
  }

  #contact.tab-section.active .contact-tools .contact-tool {
    animation: none;
  }

  #about-ai.tab-section.active .about-ai-grid {
    animation: none;
  }

  .text-reveal-lr.is-reveal-pending .text-reveal-lr__inner,
  .text-reveal-lr.is-reveal-play .text-reveal-lr__inner {
    animation: none;
    clip-path: none;
    opacity: 1;
    transform: none;
  }

  #home .card:not(.home-sidebar-inner):hover,
  .achievements-page .voice-card:hover,
  #about-ai .about-ai-thumb:hover,
  #projects:not(.project-dark)
    .project-detail-stack
    .project-card.project-panel-card:not(.project-3-award-banner):not(.project-card-highlight):hover,
  .advantage-card:hover .advantage-icon,
  .achievements-page .ach-honor-thumb-wrap:hover .ach-honor-thumb,
  #home-experience .experience-block:hover .experience-block__body,
  .btn-primary:hover,
  .btn-primary:active {
    transform: none;
  }

  .about-ai-ppt-modal__panel {
    transition-duration: 0.01ms !important;
  }
}
