/* --- 颜色变量定义 --- */
:root {
    --primary-blue: #1e90ff; 
    --darker-blue: #004a99; 
    --header-bg: #3498db; 
    --page-bg: #f0f4f8; 
    --content-bg: #ffffff; 
    --white: #ffffff;
    --text-color: #333333;
    --border-color: #e9ecef;
    --shadow-light: 0 4px 12px rgba(0, 0, 0, 0.1); 
    --shadow-deep: 0 6px 15px rgba(0, 0, 0, 0.15); 
    --shadow-nav-content: 0 2px 8px rgba(0, 0, 0, 0.08); 
}

/* --- 基础样式和全局留白 --- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    line-height: 1.6;
    color: var(--text-color);
    background-color: var(--page-bg); 
    padding: 0; 
}

a {
    color: var(--primary-blue);
    text-decoration: none;
    transition: color 0.3s;
}

a:hover {
    color: var(--darker-blue);
}

/* --- 头部（图片区域）样式 --- */
.main-header {
    width: 100%; 
    /* 图片设置：使用您第二张图的样式作为参考 */
    background: var(--header-bg) url('./picture/head_resized.jpg') no-repeat center center/cover;
    height: 250px; 
    
    /* 关键改动：添加底部外边距，创建图片和内容的距离 */
    margin-bottom: 30px; 
    
    box-shadow: var(--shadow-deep);
    position: relative; 
}

/* --- 浮动操作区 (登录/注册/倒计时) - FIXED 定位到右上角 --- */
.float-actions {
    position: fixed; 
    top: 30px; 
    right: 30px; 
    z-index: 2000; 
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 140px; 
}

.countdown-box {
    background-color: rgba(255, 255, 255, 0.95); 
    color: var(--darker-blue);
    padding: 10px;
    border-radius: 6px;
    margin-bottom: 12px;
    width: 100%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); 
    border: 1px solid var(--border-color);
    text-align: center;
}

.countdown-box .count {
    font-size: 3em;
    font-weight: 700;
    line-height: 1;
}

.countdown-box .label {
    font-size: 0.9em;
    color: #666;
    margin-top: 5px;
}

.btn {
    display: block;
    width: 100%;
    padding: 10px 0;
    margin-bottom: 8px;
    border: none;
    border-radius: 4px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s, opacity 0.3s;
    text-transform: uppercase;
}

.btn-login {
    background-color: var(--primary-blue);
    color: var(--white);
    border: 2px solid var(--primary-blue);
}

.btn-register {
    background-color: var(--primary-blue);
    color: var(--white);
    border: 2px solid var(--primary-blue);
}
.btn-login:hover {
    background-color: var(--darker-blue);
    border-color: var(--darker-blue);
}

.btn-register:hover {
    background-color: var(--darker-blue);
    border-color: var(--darker-blue);
}

/* --- 主体容器：居中、阴影、留白 --- */
.main-wrapper {
    max-width: 1200px;
    margin: 0 auto; 
    background-color: var(--content-bg); 
    box-shadow: var(--shadow-light); 
    border-radius: 8px; 
    min-height: 600px;
    overflow: hidden; 
}

/* --- 内容布局区：侧边导航 + 主要内容 (Flexbox) --- */
.content-layout {
    display: flex;
    padding: 40px; 
}

/* --- 侧边导航 (Side Nav) - 圆矩形、阴影 --- */
.side-nav {
    width: 220px; 
    flex-shrink: 0;
    padding: 0;
    background-color: #fcfcfc; 
    
    /* 关键：圆矩形和阴影 */
    border: 1px solid var(--border-color);
    border-radius: 8px; 
    box-shadow: var(--shadow-nav-content); 
    
    min-height: 400px; 
    margin-right: 30px; 
}

.nav-btn {
    display: block;
    width: 100%;
    padding: 15px 20px; 
    border: none;
    background: none;
    text-align: left;
    font-size: 1.05em;
    color: var(--text-color);
    cursor: pointer;
    border-bottom: 1px solid var(--border-color); 
    transition: background-color 0.2s, color 0.2s;
}

.nav-btn:hover:not(.active) {
    background-color: var(--page-bg); 
}

.nav-btn.active {
    background-color: var(--primary-blue);
    color: var(--white);
    font-weight: bold;
}

/* 关键：处理第一个和最后一个按钮的圆角 */
.nav-btn:first-child {
    border-top-left-radius: 7px; 
    border-top-right-radius: 7px;
}

.nav-btn:last-child {
    border-bottom: none; 
    border-bottom-left-radius: 7px;
    border-bottom-right-radius: 7px;
}

/* --- 主要内容区域 (Content Area) - 阴影和背景 --- */
.content-area {
    flex-grow: 1;
    padding: 40px; 
    background-color: var(--content-bg);
    border-radius: 8px;
    box-shadow: var(--shadow-nav-content); 
    border: 1px solid var(--border-color); 
}

.content-section {
    display: none; 
}

.content-section.active {
    display: block; 
}

.content-area h2 {
    font-size: 2em;
    color: var(--darker-blue);
    padding-bottom: 10px;
    border-bottom: 3px solid var(--primary-blue);
    margin-bottom: 25px;
    display: inline-block;
    letter-spacing: 0.5px;
}

/* --- 列表和底部样式 --- */
.topic-list {
    list-style: none;
    padding-left: 0;
}

.topic-list li {
    padding: 8px 0 8px 18px;
    position: relative;
    font-size: 1.05em;
    border-bottom: 1px dashed var(--border-color); 
}

.topic-list li:last-child {
    border-bottom: none;
}

.topic-list li::before {
    content: "\25CF"; 
    color: var(--primary-blue);
    font-size: 0.8em;
    position: absolute;
    left: 0;
    top: 10px;
}

.main-footer {
    text-align: center;
    padding: 15px;
    font-size: 0.8em;
    color: #6c757d;
    background-color: var(--content-bg);
    border-top: 1px solid var(--border-color);
    max-width: 1200px;
    margin: 20px auto 30px auto; 
    box-shadow: var(--shadow-light);
    border-radius: 8px;
}

/* --- 专家卡片样式 (Section: speakers) --- */
.speaker-cards-container {
    display: flex;
    flex-wrap: wrap;
    gap: 25px; 
    padding: 10px 0;
}

.speaker-card {
    width: 300px; 
    background-color: var(--white);
    padding: 15px;
    border-radius: 12px; 
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08); 
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid var(--border-color);
}

/* 触碰（Hover）反应：抬升和更明显的阴影 */
.speaker-card:hover {
    transform: translateY(-5px); 
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

/* 关键 1: 主页卡片照片固定大小 */
.speaker-photo-thumb {
    width: 80px; 
    height: 80px;
    border-radius: 50%; 
    object-fit: cover;
    margin-right: 15px;
    border: 3px solid var(--primary-blue);
    flex-shrink: 0; /* 确保在 Flex 布局中保持大小 */
    flex-grow: 0;
}

.speaker-info-summary h3 {
    color: var(--darker-blue);
    margin-top: 0;
    margin-bottom: 5px;
    font-size: 1.2em;
}

.speaker-info-summary p {
    font-size: 0.95em;
    margin-bottom: 2px;
}

/* --- 专家信息悬浮窗 (Modal) 样式 --- */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6); 
    display: none; 
    justify-content: center;
    align-items: center;
    z-index: 3000; 
}

.speaker-modal {
    background-color: var(--white);
    border-radius: 10px;
    padding: 25px;
    width: 600px; /* 调整为更紧凑的固定宽度 */
    height: 600px; /* 保持固定高度 */
    box-shadow: var(--shadow-deep);
    position: relative;
    display: flex;
    flex-direction: column;
}

/* 新增：垂直堆叠的容器 */
.modal-content-wrapper-vertical {
    display: flex;
    flex-direction: column;
    align-items: center; 
    overflow: hidden; 
    flex-grow: 1; 
}

/* 关键 2: 悬浮窗照片固定大小 */
.speaker-photo-full {
    width: 150px;
    height: 150px;
    border-radius: 50%; 
    object-fit: cover;
    margin-bottom: 20px;
    flex-shrink: 0; /* 确保不会缩小 */
    flex-grow: 0;   /* 确保不会放大 */
    border: 3px solid var(--primary-blue);
}

.speaker-details {
    width: 100%;
    flex-grow: 1;
    overflow-y: auto; 
    padding-right: 10px; 
    line-height: 1.6;
    text-align: left; 
}

/* 详情内的标题和文本样式 */
.speaker-details h3 {
    color: var(--darker-blue);
    font-size: 1.4em;
    margin-top: 0;
    margin-bottom: 10px;
    text-align: center; 
}

.speaker-details p {
    margin-bottom: 15px;
}

.speaker-details .report-topic {
    font-weight: bold;
    color: var(--primary-blue);
    border-left: 4px solid var(--darker-blue);
    padding-left: 10px;
    margin-top: 20px;
}

.close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 28px;
    font-weight: bold;
    color: #999;
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.2s;
}

.close-btn:hover {
    color: var(--darker-blue);
}

/* --- 响应式调整 --- */
@media (max-width: 900px) {
    .main-header {
        height: 150px;
        box-shadow: none;
        margin-bottom: 15px; 
    }
    .main-wrapper {
        margin: 0;
        border-radius: 0;
        box-shadow: none;
    }
    .float-actions {
        position: static;
        width: 100%;
        margin-bottom: 10px;
        flex-direction: row;
        justify-content: center;
        padding: 10px;
        background-color: var(--page-bg); 
        box-shadow: none;
    }
    .countdown-box, .btn {
        width: auto;
        flex-grow: 1;
        margin: 0 5px;
    }
    .content-layout {
        flex-direction: column;
        padding: 20px;
        padding-top: 20px; 
    }
    .side-nav {
        width: 100%;
        border: none;
        box-shadow: none;
        border-bottom: 1px solid var(--border-color);
        display: flex;
        flex-wrap: wrap;
        margin-right: 0;
        border-radius: 0;
        margin-bottom: 15px;
    }
    .nav-btn {
        width: auto;
        border-bottom: none;
        margin: 5px;
        flex-grow: 1;
        text-align: center;
        border-radius: 4px; 
    }
    .content-area {
        padding: 20px;
        box-shadow: none;
        border: none;
    }
    .main-footer {
        margin: 0;
        border-radius: 0;
        box-shadow: none;
    }
    
    /* 小屏幕下的模态框调整 */
    @media (max-width: 600px) {
        .speaker-modal {
            width: 90%;
            height: 85vh;
            padding: 15px;
        }
        /* 小屏幕下照片固定为 100px */
        .speaker-photo-full {
            width: 100px;
            height: 100px;
        }
    }
}

/* ===== 日程：结构 & 触碰动效 ===== */
.schedule-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.schedule-tab-btn{
  padding:10px 14px;border:1px solid var(--border-color);background:#fff;border-radius:999px;
  cursor:pointer;transition:transform .15s,box-shadow .2s,background-color .2s
}
.schedule-tab-btn[aria-selected="true"]{background:var(--primary-blue);color:#fff;box-shadow:0 6px 14px rgba(0,0,0,.08)}
.schedule-tab-btn:hover{transform:translateY(-2px)}
.schedule-tab-btn:active{transform:translateY(0) scale(.98)}

.hall-block,.tracks-block{
  margin-top:12px;border:1px solid var(--border-color);border-radius:14px;overflow:hidden;
  box-shadow:var(--shadow-nav-content);background:#fff
}
.hall-header,.tracks-header{
  display:flex;align-items:center;justify-content:space-between;padding:14px 16px;
  background:#f8fafc;border-bottom:1px solid var(--border-color)
}
.hall-title{margin:0;font-size:1.12rem}
.hall-subtitle{color:#64748b;font-size:.92rem}
.hall-content{padding:12px 16px}

.track-switcher{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.track-btn{
  padding:8px 12px;border:1px solid var(--border-color);background:#fff;border-radius:12px;cursor:pointer;
  transition:transform .15s,box-shadow .2s,background-color .2s
}
.track-btn[aria-selected="true"]{background:#0ea5e9;color:#fff;box-shadow:0 8px 18px rgba(14,165,233,.25)}
.track-btn:hover{transform:translateY(-2px)}
.track-btn:active{transform:translateY(0) scale(.98)}

.schedule-table{
  width:100%;border-collapse:collapse;font-size:.95rem;border:1px solid var(--border-color);
  border-radius:12px;overflow:hidden
}
.schedule-table th,.schedule-table td{padding:10px 12px;border-bottom:1px solid var(--border-color)}
.schedule-table th{background:#f1f5f9;text-align:left}
.item-note{color:#64748b;font-size:.9em;margin-top:4px}

/* 主持标识 */
.host-badge{
  display:inline-block;margin-left:10px;padding:2px 8px;border:1px dashed var(--border-color);
  border-radius:10px;font-size:.85em;color:#0f172a;background:#f8fafc
}

/* 小屏优化 */
@media (max-width:640px){
  .schedule-table th,.schedule-table td{padding:8px 10px}
  .hall-header,.tracks-header{flex-direction:column;align-items:flex-start;gap:6px}
  .schedule-tab-btn{padding:8px 12px}
}

/* ===== 让主持下属议程右移一点，形成层次感 ===== */
.schedule-table tr.sub-item td:first-child {
  color:#64748b;
}
.schedule-table tr.sub-item td:nth-child(2) {
  padding-left:40px;   /* ✅ 整体右移 */
  background:#fafafa;  /* 可选：淡灰底区分层级 */
  border-left:3px solid #e2e8f0;
}

/* ===== 酒店交通信息样式优化 ===== */
#travel {
  line-height: 1.8;
}
#travel ul {
  list-style: none;
  padding-left: 0;
}
#travel li {
  margin-bottom: 4px;
  background: #f1f5f9;
  padding: 6px 10px;
  border-radius: 6px;
}
#travel h3 {
  margin-top: 1.2em;
  color: #0369a1;
}

/* === 保证头图、内容、页脚宽度一致，并留出自然间距 === */
.main-header,
.main-wrapper,
.main-footer {
  width: 100%;
  max-width: 1050px;       /* 三部分同宽 */
  margin: 0 auto;          /* 居中 */
  box-sizing: border-box;
}

/* === 头图样式 === */
.main-header {
  margin-bottom: 30px;     /* 图片与下方内容的间距 */
}

.header-img {
  display: block;
  width: 100%;             /* 和内容区等宽 */
  height: auto;
  max-height: 400px;
  object-fit: cover;       /* 填充但不留白 */
  border-radius: 8px;      /* 和内容圆角一致 */
  box-shadow: var(--shadow-light);
}

/* === 主体内容与页脚之间的间距 === */
.main-wrapper {
  margin-bottom: 25px;     /* 内容与页脚之间的距离 */
}

/* === 页脚样式 === */
.main-footer {
  text-align: center;
  padding: 15px;
  font-size: 0.8em;
  color: #6c757d;
  background-color: var(--content-bg);
  border-top: 1px solid var(--border-color);
  box-shadow: var(--shadow-light);
  border-radius: 8px;
}

/* 注册区整体布局 */
#register {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 24px;
  background: #fafafa;
  border-radius: 16px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
  line-height: 1.8;
  font-size: 1rem;
}

/* 标题层次 */
#register h2 {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 24px;
  color: #1a237e;
}
#register h3 {
  font-size: 1.3rem;
  margin-top: 32px;
  margin-bottom: 10px;
  color: #283593;
  border-left: 4px solid #3f51b5;
  padding-left: 8px;
}
#register h4 {
  font-size: 1.1rem;
  color: #3949ab;
  margin-top: 20px;
}

/* 表格美化 */
#register table {
  width: 100%;
  border-collapse: collapse;
  margin: 10px 0 20px;
  background: #ffffff;
  border-radius: 8px;
  overflow: hidden;
}
#register table thead {
  background: #17c3ee;
  color: #099579;
}
#register table th, 
#register table td {
  padding: 10px 12px;
  border-bottom: 1px solid #e0e0e0;
  text-align: center;
}
#register table tbody tr:hover {
  background: #f5f5f5;
}

/* 列表优化 */
#register ul {
  padding-left: 20px;
  margin: 8px 0 16px;
}
#register li {
  margin: 4px 0;
}

/* 提示与重点 */
#register strong {
  color: #d32f2f;
}
#register em {
  color: #1565c0;
  font-style: normal;
  font-weight: 600;
}
#register a {
  color: #1976d2;
  text-decoration: none;
  border-bottom: 1px solid #90caf9;
}
#register a:hover {
  color: #0d47a1;
  border-color: #64b5f6;
}

/* 二维码区 */
#register img {
  margin-top: 12px;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

/* 各节分割 */
#register p {
  margin-bottom: 12px;
}
#register hr {
  border: none;
  border-top: 1px dashed #ccc;
  margin: 24px 0;
}

/* 响应式适配 */
@media (max-width: 640px) {
  #register {
    padding: 24px 16px;
  }
  #register table th, #register table td {
    font-size: 0.9rem;
    padding: 8px;
  }
}

#register strong {
  color: #c62828; /* 红色 */
  font-weight: bold;
}

.report-intro {
  margin-top: 15px;
  line-height: 1.6;
}
.report-intro strong {
  color: var(--primary-blue);
}


/* ==== 邀请专家小标题（浅蓝色字体） ==== */
#speakers h3 {
  font-size: 1.4em;
  color: #3a8edb;        /* 柔和浅蓝色 */
  font-weight: 600;
  margin-top: 30px;
  margin-bottom: 12px;
  letter-spacing: 0.5px;
}

/* ===== 报道提醒样式 (schedule-alert-box) ===== */
.schedule-alert-box {
    background-color: #eaf6ff; /* 柔和的浅蓝色背景，与主题色相呼应 */
    border-left: 5px solid var(--primary-blue); /* 突出主题色的左侧边框 */
    padding: 15px 20px;
    margin-bottom: 25px; /* 与下方内容留出距离 */
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.schedule-alert-box p {
    margin: 0;
    font-size: 1.1em;
    color: var(--text-color);
}

.schedule-alert-box strong {
    color: var(--darker-blue); /* 强调“重要提醒” */
    font-weight: 700;
    margin-right: 5px;
}

/* 突出显示日期 */
.schedule-alert-box mark {
    background-color: #fff3cd; /* 醒目的黄色高亮 */
    color: #856404; /* 深色文字 */
    padding: 2px 5px;
    border-radius: 4px;
    font-weight: 700;
}

/* ===== 参观介绍部分样式 (id="visit") ===== */

/* 优化 h2/h3 标题的间距和样式 */
#visit h2 {
    /* h2 样式通常由 content-section 定义，这里只是确保顶部间距 */
    margin-bottom: 25px; 
    padding-bottom: 10px;
    border-bottom: 2px solid var(--border-color); /* 添加分割线以示区隔 */
}

#visit h3 {
    color: var(--darker-blue); /* 使用深蓝色强调小标题 */
    font-size: 1.5em; /* 适当放大，比 h2 小 */
    font-weight: 600;
    margin-top: 25px; /* 确保与上一段内容有足够间距 */
    margin-bottom: 15px;
    padding-left: 10px; /* 略微缩进，视觉上与段落区分 */
    border-left: 4px solid var(--primary-blue); /* 使用主题色作为装饰边框 */
}

/* 段落样式：改善可读性 */
#visit p {
    margin-bottom: 18px; /* 增加段落间距 */
    line-height: 1.7; /* 增加行高，提升大段文字的阅读舒适度 */
    font-size: 1.05em;
    text-align: justify; /* 两端对齐，使文本边缘更整齐专业 */
    color: var(--text-color);
}

/* 突出显示中心的关键信息或术语 (如果 HTML 中使用了 <strong>) */
#visit strong {
    color: var(--primary-blue); /* 或使用一个强调色，如 #d32f2f */
    font-weight: 700;
}

/* 优化内容容器 */
#visit .section-content {
    padding: 10px 0; /* 略微增加内边距 */
}


/* ================================================================= */
/* ===== 图片轮播样式 (visit-carousel) - 覆盖翻页效果及按钮定位 ===== */
/* ================================================================= */

.visit-carousel.carousel-container {
    max-width: 100%; 
    margin: 30px 0; 
    border-top: 1px solid var(--border-color); 
    padding-top: 20px;
    /* 容器高度：确保图片显示，请根据您的设计调整此值 */
    height: 400px; 
    position: relative; 
    /* 左右内边距：为导航按钮留出空间 */
    padding-left: 10px; 
    padding-right: 10px;
    overflow: hidden; 
}

/* 轮播图小标题（适配 h3 样式） */
.visit-carousel .carousel-title {
    text-align: left; 
    color: var(--darker-blue);
    font-size: 1.5em; 
    font-weight: 600;
    margin-bottom: 20px;
    padding-bottom: 0;
    border-bottom: none;
    padding-left: 10px; 
    border-left: 4px solid var(--primary-blue); 
}

/* 轮播图图片 wrapper - 覆盖翻页的关键 */
.carousel-wrapper {
    position: relative; /* 相对定位，使内部 slide 绝对定位 */
    width: 100%;
    height: 100%; 
}

/* 轮播图图片 slide - 覆盖翻页的关键 */
.carousel-slide {
    position: absolute; /* 绝对定位，相互覆盖 */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; 
    opacity: 0; /* 默认隐藏所有图片 */
    transition: opacity 1s ease-in-out; /* 透明度过渡动画 */
}

/* 当前激活的 slide */
.carousel-slide.active {
    opacity: 1; /* 显示激活的图片 */
}

.carousel-slide img {
    width: 100%;
    height: 100%; 
    object-fit: cover; /* 裁剪图片以填充容器，保持宽高比 */
    display: block;
    border-radius: 8px; 
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* 导航按钮样式 - 放在图片两边，垂直居中 */
.carousel-nav {
    position: absolute;
    top: 50%; /* 垂直居中 */
    transform: translateY(-50%); /* 确保精确居中 */
    
    /* 样式美化 */
    background-color: rgba(0, 0, 0, 0.4); 
    color: white;
    border: none;
    padding: 10px 15px; 
    cursor: pointer;
    z-index: 10; 
    font-size: 20px;
    font-weight: bold;
    transition: background-color 0.3s;
    border-radius: 4px; 
}

.carousel-nav:hover {
    background-color: rgba(0, 0, 0, 0.7); 
}

/* 按钮左右定位 */
.carousel-nav.prev {
    left: 20px; 
}

.carousel-nav.next {
    right: 20px; 
}


/* 导航点样式 */
.carousel-dots {
    text-align: center;
    padding: 10px 0;
    position: absolute;
    bottom: 20px; 
    left: 0;
    right: 0;
    z-index: 11; 
}

.dot {
    height: 10px;
    width: 10px;
    margin: 0 5px;
    background-color: #bbb;
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.6s ease;
    cursor: pointer;
}

.dot.active {
    background-color: var(--primary-blue);
}

/* ===== 注册页顶部提示框样式 (register-alert-box) ===== */

.register-alert-box {
    /* 使用淡蓝色背景和边框，突出提示效果 */
    background-color: #e9f7fe; 
    border: 1px solid #b3e0ff; 
    color: var(--darker-blue); /* 使用主题色系的深蓝色文字 */
    padding: 15px;
    margin: 15px 0 20px 0; /* 确保与标题和下方内容有良好间距 */
    border-radius: 6px;
    font-size: 1.05em;
    line-height: 1.6;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); /* 轻微阴影，增加层次感 */
}

/* 确保内部段落的样式干净 */
.register-alert-box p {
    margin: 0; 
    font-weight: 500;
}


/* ===== 线上参会 (id="online") 样式 ===== */

#online .section-content {
    padding: 10px 0;
}

#online .zoom-session {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 15px 20px;
    margin-bottom: 25px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
}

#online .zoom-session h3 {
    color: var(--darker-blue);
    font-size: 1.4em;
    margin-top: 0;
    margin-bottom: 15px;
    border-bottom: 2px solid var(--border-color);
    padding-bottom: 8px;
    font-weight: 700;
}

#online .zoom-session p {
    margin-bottom: 10px;
    line-height: 1.5;
}

#online .zoom-session strong {
    color: var(--text-color);
    font-weight: 600;
}

#online .zoom-details {
    list-style-type: none;
    padding-left: 0;
    margin-top: 15px;
    margin-bottom: 15px;
    border-top: 1px dashed var(--border-color);
    padding-top: 10px;
}

#online .zoom-details li {
    background-color: #f7f9fb; /* 列表项背景色 */
    padding: 5px 10px;
    margin-bottom: 5px;
    border-radius: 4px;
    font-family: monospace, sans-serif; /* 使用等宽字体突出会议号/密码 */
}

/* 链接样式 */
#online .zoom-session a {
    color: #007bff; /* 使用标准蓝色链接色 */
    text-decoration: underline;
    font-weight: 500;
}

#online .zoom-session a:hover {
    color: var(--primary-blue);
}

/* ===== 线上参会 (id="online") 样式：拨号信息优化 ===== */

/* 优化拨号信息的段落样式 */
#online .zoom-session p.dial-in-details {
    margin-top: 15px; 
    line-height: 1.8; /* 增加行高，避免号码行挤压 */
    font-size: 0.95em; 
    border-top: 1px dashed #e0e0e0; /* 分隔线 */
    padding-top: 10px;
    background-color: #fcfcfc;
    padding-bottom: 5px;
    padding-left: 10px; /* 略微缩进，视觉上与内容区分 */
    border-radius: 4px;
}

/* 确保标题部分（如“手机一键拨号”）突出且占据一行 */
#online .zoom-session p.dial-in-details strong {
    display: block; 
    margin-bottom: 5px; 
    font-weight: 700;
}

/* ===== 程序委员会样式（Program Committee Section） ===== */

.committee {
  margin-top: 40px;
  padding: 25px 30px;
  background-color: #f9fbff;
  border-left: 5px solid #3b82f6; /* 蓝色左边框，与导航高亮色一致 */
  border-radius: 10px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.committee h3 {
  font-size: 1.4em;
  color: #1e40af;
  font-weight: 700;
  margin-bottom: 15px;
  text-align: left;
}

.committee ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.committee li {
  font-size: 1.05em;
  line-height: 1.8;
  color: #333;
  padding: 3px 0;
  border-bottom: 1px dashed #e0e7ff;
}

.committee li:last-child {
  border-bottom: none;
}

/* ===== 组织机构 (id="organization") 样式 ===== */

#organization .committee-role-title {
    color: var(--darker-blue);
    font-size: 1.5em;
    font-weight: 600;
    margin-top: 30px;
    margin-bottom: 15px;
    border-bottom: 2px solid var(--border-color);
    padding-bottom: 5px;
}

#organization .committee-members-list {
    list-style: none; /* 移除默认列表点 */
    padding: 0;
    margin-bottom: 30px;
    
    /* 尝试使用 Flexbox 或 Grid 进行多列布局 */
    display: flex;
    flex-wrap: wrap; /* 允许换行 */
    gap: 10px 20px; /* 行间距和列间距 */
}

#organization .committee-member {
    /* 占用 33.33% 宽度，实现三列布局（或调整为 25% 实现四列） */
    flex: 1 1 300px; /* 灵活增长，基础宽度 300px */
    padding: 5px 0;
    font-size: 1.05em;
    border-bottom: 1px dotted #e0e0e0;
}

#organization .committee-member .member-name {
    font-weight: 600;
    margin-right: 5px;
}

#organization .committee-member .member-affiliation {
    color: #6c757d;
}

/* 移动端优化：单列显示 */
@media (max-width: 768px) {
    #organization .committee-members-list {
        display: block; /* 恢复为单列 */
    }
    #organization .committee-member {
        flex: none;
        width: 100%;
    }
}

/* ===== 组织单位信息样式 (organization-details) - 修改为单列布局 ===== */

.organization-details-wrapper {
    /* 移除 Grid/Flexbox 多列布局 */
    display: block; 
    
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--border-color); /* 与委员会名单区分 */
}

/* 确保每个角色区块之间有间隔 */
.org-role-block {
    background-color: #f8f9fa; /* 浅背景色 */
    padding: 15px;
    border-radius: 8px;
    border-left: 4px solid var(--primary-blue);
    margin-bottom: 15px; /* 新增：增加块与块之间的垂直间距 */
}

.org-role-title {
    font-size: 1.1em;
    font-weight: 700;
    color: var(--darker-blue);
    margin-top: 0;
    margin-bottom: 10px;
}

.org-units-list {
    list-style: none;
    padding: 0;
}

.org-units-list li {
    line-height: 1.4;
    margin-bottom: 8px;
    /* 确保每个单位信息作为一个整体显示 */
    padding: 3px 0; 
}

.org-unit-zh {
    display: block; 
    font-weight: 500;
    color: var(--text-color);
}

.org-unit-en {
    display: block;
    font-size: 0.9em;
    color: #6c757d; 
    margin-bottom: 5px; /* 增加英文和下一个单位之间的间距 */
}