/* ========== 纪念堂容器 ========== */
.memorial-container { max-width: 800px; margin: 20px auto; background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); }

/* ========== 头部 ========== */
.memorial-header { text-align: center; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 2px solid #8B0000; }
.memorial-header h1 { color: #8B0000; font-size: 28px; }
.memorial-header .years { color: #666; font-size: 16px; margin-top: 5px; }
.memorial-header .info { color: #999; font-size: 14px; }

/* ========== 操作按钮 ========== */
.memorial-actions { text-align: center; margin: 20px 0; }
.memorial-actions button { padding: 8px 20px; margin: 0 8px; border: 2px solid #8B0000; border-radius: 20px; cursor: pointer; background: #fff; color: #8B0000; font-size: 14px; }
.memorial-actions .count { color: #999; font-size: 13px; margin-top: 8px; }

/* ========== 区块标题 ========== */
.memorial-section h2 { color: #8B0000; border-bottom: 1px solid #ddd; padding-bottom: 8px; margin: 25px 0 15px; }

/* ========== 信息表格 ========== */
.info-table { width: 100%; border-collapse: collapse; }
.info-table td { padding: 8px; border: 1px solid #eee; }
.info-table td:first-child { background: #fafaf7; width: 100px; text-align: right; font-weight: bold; }

/* ========== 标签列表 ========== */
.tag-list { display: flex; flex-wrap: wrap; gap: 8px; }
.tag-item { padding: 5px 12px; background: #fdf5e6; border: 1px solid #ddd; border-radius: 15px; font-size: 13px; }
.tag-item a { color: #8B0000; text-decoration: none; }

/* ========== 底部按钮 ========== */
.memorial-footer { text-align: center; margin-top: 20px; }
.memorial-footer a { display: inline-block; padding: 8px 16px; border-radius: 15px; text-decoration: none; font-size: 13px; border: 1px solid #8B0000; color: #8B0000; margin: 4px; }
/* ========== 族人详情 ========== */
.person-detail { max-width: 800px; margin: 20px auto; background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); }
.person-detail .detail-header { text-align: center; margin-bottom: 25px; padding-bottom: 15px; border-bottom: 2px solid #8B0000; }
.person-detail .detail-header h1 { color: #8B0000; font-size: 28px; }
.person-detail .detail-header .years { color: #666; font-size: 16px; margin-top: 5px; }
.person-detail .detail-header .info { color: #999; margin-top: 3px; }
.person-detail .detail-bio { line-height: 1.8; color: #444; padding: 15px; background: #fafaf7; border-radius: 6px; margin: 15px 0; }
.person-detail .detail-bio h3 { color: #8B0000; margin-bottom: 10px; }
.person-detail .detail-actions { text-align: center; margin: 25px 0; display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.person-detail .detail-actions .btn-primary { display: inline-block; padding: 10px 20px; border-radius: 20px; text-decoration: none; font-size: 14px; border: 2px solid #8B0000; color: #fff; background: #8B0000; }
.person-detail .detail-actions .btn-outline { display: inline-block; padding: 10px 20px; border-radius: 20px; text-decoration: none; font-size: 14px; border: 2px solid #8B0000; color: #8B0000; background: #fff; }