body {
  font-family: sans-serif;
  max-width: 1100px;
  margin: 2rem auto;
  /*padding: 0 1rem;*/
  padding: 20px;
  line-height: 1.6;
  color: #333;
}

header, footer {
  text-align: center;
  margin-bottom: 2rem;
}

h1 {
  margin-bottom: 0.2rem;
}

h2 {
  color: #005f73;
  margin-top: 2rem;
}

a {
  color: #007acc;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

ul {
  padding-left: 1.2rem;
}

.pub-list {
  list-style: none;
  padding: 0;
}

.pub-item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 2em;
}

.pub-thumb {
  width: 200px;   /* adjust size as needed */
  height: auto;
  margin-right: 20px;
  border-radius: 8px;  /* optional: rounded corners */
}

.pub-text {
  flex: 1;
}

.profile-float {
  float: right;
  display: block;
  width: 899px;     /* 固定宽度，你可以改成 200 / 250 等 */
  height: auto;     /* 高度自适应，保持比例 */
  margin: 0 0 20px 20px;  /* 左边和下方留点空隙 */
  object-fit: contain;    /* 不裁剪，完整显示你的图 */
}

/* 容器左右排列，高度以最高子元素为准（通常是图片） */
#bio .bio-container {
  display: flex;
  align-items: stretch;   /* 关键：让文字列和图片等高 */
  gap: 20px;
}

/* 左侧文本列：上下布局，标题在上，正文被推到底部 */
#bio .bio-text {
  flex: 1;
  display: flex;
  flex-direction: column;
}
#bio .bio-text p {
  margin-top: auto;       /* 关键：把段落推到底部，与图片底部对齐 */
}

/* 右侧图片：固定小尺寸，保持原始矩形，不裁剪不拉伸 */
#bio img.profile-pic {
  flex: 0 0 320px;        /* 固定列宽，按需改 280/320/360 等 */
  width: 320px;           /* 显式宽度 */
  height: auto;           /* 按比例自适应高度 */
  object-fit: contain;    /* 完整显示，不裁剪 */
  border-radius: 0;       /* 防止被主题加圆角 */
  margin-right: 40px;  
}
