/* ============================================
   Global CSS - 全局共享样式
   仅包含变量、字体和基础样式
   ============================================ */

/* 防止横向滚动 */
html, body {
  overflow-x: hidden;
  max-width: 100%;
}

/* Lenis 平滑滚动支持 */
html.lenis, html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

/* 原生平滑滚动回退（当 Lenis 未加载时） */
html:not(.lenis) {
  scroll-behavior: smooth;
}

/* 全局图片平滑缩放 - 解决高分辨率图片在小尺寸下过于锐利的问题 */
img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: smooth;
}

/* CSS变量定义 */
:root {
  /* 主色系统 */
  --primary: #00072b;
  --primary-light: #0019B3;
  --primary-pale: #eff1fd;
  --primary-ultra-light: #fbfbff;
  
  /* 文本颜色系统 */
  --text: #111111;
  --text-secondary: #333333;
  --muted: #666666;
  
  /* 背景与边框 */
  --bg: #F8F9FC;
  --border: #D4D7E5;
  
  /* 统一字体大小系统 - 移动端 */
  --font-size-xs: 13px;
  --font-size-sm: 14px;
  --font-size-base: 17px;
  --font-size-md: 18px;
  --font-size-lg: 20px;
  --font-size-xl: 30px;
  --font-size-2xl: 32px;
  --font-size-3xl: 40px;
  --font-size-4xl: 48px;
  --font-size-5xl: 64px;
  --font-size-6xl: 80px;
  
  /* 特殊用途字体大小 */
  --font-size-nav: 17px;
  --font-size-card-title: 18px;
  --font-size-card-text: 16px;
  --font-size-work-card: 16px;
  --font-size-footer: 16px;
  
  --work-card-hover-duration: 0.5s;
  --work-card-hover-scale: 1.05;
  
  /* 行高系统 */
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.6;
  --line-height-loose: 1.8;
}

@media (min-width: 768px) {
  :root {
    /* 统一字体大小系统 - 桌面端 */
    --font-size-xs: 13px;
    --font-size-sm: 15px;
    --font-size-base: 18px;
    --font-size-md: 19px;
    --font-size-lg: 20px;
    --font-size-xl: 28px;
    --font-size-2xl: 40px;
    --font-size-3xl: 48px;
    --font-size-4xl: 64px;
    --font-size-5xl: 80px;
    --font-size-6xl: 96px;
    
    /* 特殊用途字体大小 - 桌面端 */
    --font-size-nav: 18px;
    --font-size-card-title: 20px;
    --font-size-card-text: 17px;
    --font-size-work-card: 18px;
    --font-size-footer: 17px;
  }
}

/* 思源黑体字体引入 */
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../assets/fonts/NotoSansSC-Light.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/NotoSansSC-Regular.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../assets/fonts/NotoSansSC-Medium.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../assets/fonts/NotoSansSC-Bold.ttf') format('truetype');
}

/* 未来深浅色切换支持 */
@media (prefers-color-scheme: dark) {
  /* 深色模式样式将在未来添加 */
}
