/* === 全站基础重置 === */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: "Microsoft YaHei", Arial, sans-serif; background-color: #f5f5f5; color: #333; line-height: 1.6; padding-bottom: 60px; }
a { text-decoration: none; color: #333; transition: 0.3s; }
a:hover { color: #0056b3; }
ul { list-style: none; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 15px; }

/* === 导航系统 === */
header { background-color: #fff; box-shadow: 0 2px 10px rgba(0,0,0,0.05); position: sticky; top: 0; z-index: 1000; }
.nav-inner { display: flex; justify-content: space-between; align-items: center; height: 70px; }
.logo { font-size: 24px; font-weight: bold; color: #0056b3; }
.logo span { color: #ff6600; }
.nav-links { display: flex; gap: 20px; }
.nav-links a { font-size: 16px; font-weight: 500; padding: 10px 15px; border-radius: 4px; }
.nav-links a:hover, .nav-links a.active { background-color: #0056b3; color: #fff; }
.header-hotline { font-weight: bold; color: #0056b3; font-size: 18px; }

/* === 面包屑 === */
.breadcrumb { padding: 15px 0; font-size: 14px; color: #666; background: #f5f5f5; }

/* === 布局结构 === */
.main-content { display: flex; gap: 30px; margin-bottom: 40px; }
.article-wrapper, .list-wrapper { flex: 3; background: #fff; padding: 40px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.03); }
.sidebar { flex: 1; display: flex; flex-direction: column; gap: 20px; }

/* === 文章/详情页内容控制 === */
.article-title { font-size: 28px; font-weight: bold; margin-bottom: 20px; color: #222; text-align: center; }
.article-meta { text-align: center; color: #999; font-size: 13px; margin-bottom: 30px; border-bottom: 1px solid #eee; padding-bottom: 20px; }
.article-content { font-size: 16px; line-height: 1.8; color: #444; }
.article-content h2 { margin-top: 30px; margin-bottom: 15px; font-size: 20px; border-left: 4px solid #0056b3; padding: 10px; background: #f9f9f9; color: #222; }
.article-content h3 { margin-top: 20px; margin-bottom: 10px; font-size: 18px; font-weight: bold; color: #333; }
.article-content p { margin-bottom: 15px; text-indent: 2em; }
.article-content a { color: #0056b3; text-decoration: underline; font-weight: bold; }
.article-nav { margin-top: 40px; border-top: 1px dashed #eee; padding-top: 20px; display: flex; justify-content: space-between; font-size: 15px; }

/* === 推荐列表样式 === */
.recommend-box { margin-top: 30px; background: #fbfbfb; padding: 20px; border-radius: 5px; }
.recommend-title { font-size: 16px; font-weight: bold; margin-bottom: 15px; border-left: 3px solid #ff6600; padding-left: 10px; }
.recommend-list li { margin-bottom: 10px; font-size: 14px; }
.recommend-list a { color: #555; }
.recommend-list a:hover { color: #ff6600; }

/* === 侧边栏卡片 === */
.sidebar-box { background: #fff; padding: 20px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.03); }
.sidebar-title { font-size: 16px; font-weight: bold; border-left: 4px solid #ff6600; padding-left: 10px; margin-bottom: 15px; }
.contact-card { text-align: center; }
.contact-card .phone { font-size: 20px; color: #ff6600; font-weight: bold; display: block; margin: 10px 0; }
.btn-wx { background: #07c160; color: #fff; padding: 8px 0; display: block; border-radius: 4px; cursor: pointer; font-size: 14px; }

/* === 页脚与分站 === */
.sub-stations { background: #fff; padding: 30px 0; margin-top: 40px; border-top: 1px solid #eee; }
.station-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.station-grid a { font-size: 12px; color: #888; }
footer { background-color: #2d3436; color: #aaa; padding: 40px 0 100px 0; font-size: 14px; text-align: center; }
footer a { color: #888; }
.copyright { line-height: 2; border-top: 1px solid #444; padding-top: 20px; margin-top: 20px; }

/* === 悬浮交互组件 === */
.pc-float { position: fixed; right: 20px; top: 50%; transform: translateY(-50%); background: #fff; padding: 15px; box-shadow: 0 5px 20px rgba(0,0,0,0.2); border-radius: 8px; text-align: center; z-index: 999; display: none; }
.pc-float img { width: 120px; height: 120px; margin-bottom: 10px; cursor: pointer; border: 1px solid #eee; }
.left-float-wx { position: fixed; left: 20px; top: 60%; width: 60px; height: 60px; background-color: #07c160; border-radius: 50%; display: flex; justify-content: center; align-items: center; box-shadow: 0 4px 15px rgba(7, 193, 96, 0.4); cursor: pointer; z-index: 1001; animation: floatUpDown 2.5s ease-in-out infinite; }
.left-float-wx svg { width: 35px; height: 35px; fill: #fff; }
@keyframes floatUpDown { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-15px); } }

.mobile-float { position: fixed; bottom: 0; left: 0; width: 100%; background: #fff; border-top: 1px solid #ddd; display: flex; justify-content: space-around; align-items: center; padding: 10px 0; z-index: 999; box-shadow: 0 -2px 10px rgba(0,0,0,0.1); display: none; }
.mobile-btn { background: #ff6600; color: #fff; padding: 8px 20px; border-radius: 20px; font-size: 14px; font-weight: bold; }

/* === 弹窗模态框 === */
.modal { display: none; position: fixed; z-index: 2000; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.8); align-items: center; justify-content: center; }
.modal-content { max-width: 80%; max-height: 80%; border-radius: 10px; border: 5px solid #fff; }
.close-modal { position: absolute; top: 20px; right: 35px; color: #fff; font-size: 40px; font-weight: bold; cursor: pointer; }

/* === 响应式媒体查询 === */
@media (min-width: 769px) { .pc-float { display: block; } }
@media (max-width: 768px) {
    .main-content { flex-direction: column; }
    .sidebar { order: 2; }
    .article-wrapper { padding: 20px; }
    .nav-inner { flex-direction: column; height: auto; padding: 10px 0; }
    .header-hotline { display: none; }
    .mobile-float { display: flex; }
    .station-grid { grid-template-columns: repeat(2, 1fr); }
    .left-float-wx { left: 10px; bottom: 80px; top: auto; width: 50px; height: 50px; }
}