@font-face {
  font-family: 'Roboto';
  src: url('/fonts/google/roboto/roboto-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('/fonts/google/roboto/roboto-500.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('/fonts/google/roboto/roboto-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'Open Sans';
  src: url('/fonts/google/open-sans/open-sans-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Open Sans';
  src: url('/fonts/google/open-sans/open-sans-500.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Open Sans';
  src: url('/fonts/google/open-sans/open-sans-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  src: url('/fonts/google/lato/lato-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  src: url('/fonts/google/lato/lato-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('/fonts/google/montserrat/montserrat-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('/fonts/google/montserrat/montserrat-500.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('/fonts/google/montserrat/montserrat-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('/fonts/google/poppins/poppins-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('/fonts/google/poppins/poppins-500.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('/fonts/google/poppins/poppins-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito Sans';
  src: url('/fonts/google/nunito-sans/nunito-sans-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito Sans';
  src: url('/fonts/google/nunito-sans/nunito-sans-600.woff2') format('woff2');
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito Sans';
  src: url('/fonts/google/nunito-sans/nunito-sans-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('/fonts/google/inter/inter-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('/fonts/google/inter/inter-500.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('/fonts/google/inter/inter-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

/* IBM Plex Sans — woff2 文件需单独下载放入 /fonts/google/ibm-plex-sans/ */
/* @font-face {
  font-family: 'IBM Plex Sans';
  src: url('/fonts/google/ibm-plex-sans/ibm-plex-sans-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'IBM Plex Sans';
  src: url('/fonts/google/ibm-plex-sans/ibm-plex-sans-600.woff2') format('woff2');
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: 'IBM Plex Sans';
  src: url('/fonts/google/ibm-plex-sans/ibm-plex-sans-700.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
} */

@font-face {
  font-family: 'JetBrains Mono';
  src: url('/fonts/google/jetbrains-mono/jetbrains-mono-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'JetBrains Mono';
  src: url('/fonts/google/jetbrains-mono/jetbrains-mono-500.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'roboto';
  src: url('/fonts/google/roboto/roboto-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'open-sans';
  src: url('/fonts/google/open-sans/open-sans-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'lato';
  src: url('/fonts/google/lato/lato-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'montserrat';
  src: url('/fonts/google/montserrat/montserrat-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'poppins';
  src: url('/fonts/google/poppins/poppins-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'nunito-sans';
  src: url('/fonts/google/nunito-sans/nunito-sans-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'inter';
  src: url('/fonts/google/inter/inter-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'jetbrains-mono';
  src: url('/fonts/google/jetbrains-mono/jetbrains-mono-400.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
