/* 全局样式重置 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Microsoft YaHei", sans-serif;
}

body {
    background-color: #e2dee7;
    padding: 30px 0;
    line-height: 1.8; /* 匹配截图文字行高，更易读 */
}

/* 简历整体容器：固定宽度+居中+白色背景（匹配截图） */
.resume-container {
    width: 900px;
    margin: 0 auto; /* 强制水平居中 */
    background-color: #ffffff; /* 截图里是纯白背景，替换原来的浅蓝 */
    padding: 20px;
    border: 1px solid #4d75e2;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

/* 顶部主标题：简历 居中（匹配截图样式） */
.main-title {
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    color: #000;
    margin: 0 auto 20px;
    width: 100%;
    letter-spacing: 2px;
}

/* 每个模块容器：边框+圆角+溢出隐藏（核心！防止内容跑出） */
.section {
    border: 1px solid #2c25e8;
    margin-bottom: 15px;
    border-radius: 4px;
    overflow: hidden; /* 所有内容不溢出模块 */
}

/* 模块标题：通栏蓝色+左侧粉色小条（完全匹配截图） */
.section-title {
    font-size: 18px;
    color: #fff; /* 白色文字，匹配截图 */
    background-color: #3a81e4; /* 截图蓝色标题背景 */
    padding: 6px 10px;
    border-left: 4px solid #f10d9a; /* 左侧粉色小条，匹配截图 */
    margin-bottom: 0; /* 取消底部间距，让标题贴内容 */
}

/* 基本信息布局：三列均分，不挤压（核心修复） */
.base-info {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 10px 15px; /* 内边距，文字不贴边框 */
    gap: 15px; /* 列之间的间距，不拥挤 */
}

/* 左右信息列：固定宽度，不再弹性拉伸 */
.info-left, .info-right {
    width: 35%; /* 匹配截图文字列宽度 */
}

/* 信息行样式：匹配截图文字大小/间距 */
.info-left p, .info-right p {
    margin-bottom: 5px;
    font-size: 14px;
    color: #000;
}

.info-left span, .info-right span {
    font-weight: bold;
    color: #000;
}

/* 照片盒子：固定宽度+居中，不溢出 */
.photo-box {
    width: 130px; /* 匹配截图照片宽度 */
    flex-shrink: 0; /* 禁止挤压 */
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.photo {
    width: 120px;
    height: 150px;
    object-fit: cover;
    border: 1px solid #090443;
}

/* 列表样式：匹配截图的圆点+留白 */
.list {
    list-style: none;
    padding: 10px 15px; /* 内边距，文字不贴边框 */
}

.list li {
    font-size: 14px;
    margin-bottom: 8px;
    padding-left: 15px;
    position: relative;
    word-wrap: break-word; /* 长文字自动换行 */
    white-space: normal;
}

/* 列表前小圆点：匹配截图样式 */
.list li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #000;
    font-size: 16px;
}

/* 链接样式：匹配截图蓝色链接 */
a {
    color: #0066cc;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* 视频/图片：限制最大宽度，不撑破模块（核心！解决溢出） */
video, img {
    max-width: 80%; /* 不超过模块宽度80% */
    display: block;
    margin: 10px 0; /* 上下间距，不重叠文字 */
    border: none;
}