/* ==========================================================
   melg 模板样式 - 参照 melgcabral.com 风格
   主色 #0d6efd（蓝）点缀 #ffc107（黄）深色导航/页脚
   ========================================================== */
:root{
    --mg-primary:#0d6efd;
    --mg-primary-dark:#0b5ed7;
    --mg-accent:#ffc107;
    --mg-dark:#212529;
    --mg-navy:#002b5b;
    --mg-gray:#f8f9fa;
    --mg-border:#dee2e6;
    --mg-text:#212529;
    --mg-muted:#6c757d;
}
html,body{height:100%;}
body{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
    color:var(--mg-text);
    background:#fff;
    display:flex;flex-direction:column;min-height:100vh;
}
main,main.mg-main{flex:1 0 auto;}
a{text-decoration:none;}
img{max-width:100%;}

/* ---------- 顶部导航 header-2 风格 ---------- */
.mg-header{background:var(--mg-dark);z-index:1030;}
.mg-header .navbar-brand{color:#fff;font-weight:700;font-size:1.15rem;display:flex;align-items:center;gap:8px;white-space:nowrap;}
.mg-header .navbar-brand img{height:36px;width:auto;}
.mg-header .nav-link{color:#fff;margin:0 6px;transition:.3s;font-size:.95rem;}
.mg-header .nav-link.active,
.mg-header .nav-link:hover{color:var(--mg-accent);background-color:rgba(255,255,255,.1);border-radius:4px;}
.mg-header .navbar-toggler{border-color:rgba(255,255,255,.3);}
.mg-header .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,0.9)' stroke-width='2' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");}
.mg-header .mg-header-btn{background:var(--mg-accent);color:var(--mg-dark);font-weight:600;font-size:.85rem;border-radius:50px;padding:6px 18px;transition:.3s;}
.mg-header .mg-header-btn:hover{background:#e0a800;color:#fff;box-shadow:0 2px 8px rgba(255,193,7,.45);}
.mg-header .mg-search-form .form-control{border-radius:50px 0 0 50px;border:none;font-size:.85rem;}
.mg-header .mg-search-form .btn{border-radius:0 50px 50px 0;background:var(--mg-primary);color:#fff;border:none;}

/* ---------- Hero 区 ---------- */
.mg-hero{
    padding:90px 0 96px;
    background:linear-gradient(160deg,#eef6ff 0%,#f8fbff 45%,#fff7e0 100%);
    position:relative;overflow:hidden;
}
.mg-hero::before{
    content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;
    background:radial-gradient(circle,rgba(13,110,253,.14) 0%,transparent 70%);
}
.mg-hero h1{font-size:2.3rem;font-weight:800;line-height:1.3;}
.mg-hero h1 strong{color:var(--mg-primary);}
.mg-hero .mg-hero-sub{color:var(--mg-muted);font-weight:600;letter-spacing:1px;}
.mg-hero .mg-hero-desc{color:#495057;font-size:1.02rem;line-height:1.9;}
.btn-mg-hero{
    display:inline-block;background:linear-gradient(135deg,var(--mg-primary),#0072ff);
    color:#fff;font-weight:600;padding:12px 34px;border-radius:50px;transition:.3s;
    box-shadow:0 6px 18px rgba(13,110,253,.35);
}
.btn-mg-hero:hover{color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(13,110,253,.45);}
.btn-mg-outline{
    display:inline-block;border:2px solid var(--mg-primary);color:var(--mg-primary);
    font-weight:600;padding:10px 30px;border-radius:50px;transition:.3s;
}
.btn-mg-outline:hover{background:var(--mg-primary);color:#fff;}

/* ---------- Hero 增强视觉 ---------- */
.mg-hero-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;z-index:1;}
.mg-blob-2{width:340px;height:340px;background:rgba(255,193,7,.22);bottom:-80px;left:-110px;}
.mg-hero-float{position:absolute;z-index:1;animation:mgFloat 6s ease-in-out infinite;}
.mg-fl-1{font-size:3rem;top:16%;left:5%;color:rgba(13,110,253,.16);}
.mg-fl-2{font-size:2.2rem;top:66%;left:11%;color:rgba(255,193,7,.4);animation-delay:1.2s;}
.mg-fl-3{font-size:2.6rem;top:10%;right:9%;color:rgba(255,193,7,.45);animation-delay:2s;}
.mg-fl-4{font-size:2.4rem;bottom:20%;right:5%;color:rgba(13,110,253,.16);animation-delay:.6s;}
@keyframes mgFloat{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-16px) rotate(8deg);}}
.mg-notice-bar{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid rgba(13,110,253,.15);border-radius:50px;padding:8px 18px;box-shadow:0 6px 18px rgba(0,43,91,.08);max-width:600px;margin:0 auto;}
@media(min-width:768px){.mg-notice-bar{margin:0;}}
.mg-notice-dot{width:8px;height:8px;border-radius:50%;background:#e53935;flex-shrink:0;animation:mgPulse 1.2s infinite;}
@keyframes mgPulse{0%,100%{box-shadow:0 0 0 0 rgba(229,57,53,.5);}50%{box-shadow:0 0 0 6px rgba(229,57,53,0);}}
.mg-notice-label{background:linear-gradient(135deg,#0d6efd,#002b5b);color:#fff;font-size:.75rem;font-weight:600;padding:3px 12px;border-radius:50px;flex-shrink:0;}
.mg-notice-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;}
.mg-notice-text a{color:#495057;text-decoration:none;}
.mg-notice-text a:hover{color:#0d6efd;}
.mg-hero-h1-badge{display:inline-block;margin-left:12px;font-size:.85rem;font-weight:700;color:#212529;background:linear-gradient(135deg,#ffc107,#ffca2c);padding:5px 14px;border-radius:50px;vertical-align:middle;box-shadow:0 4px 12px rgba(255,193,7,.4);}
.mg-hero-badges{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;}
@media(min-width:768px){.mg-hero-badges{justify-content:flex-start;}}
.mg-badge-pill{font-size:.82rem;font-weight:600;color:var(--mg-primary);background:rgba(13,110,253,.08);border:1px solid rgba(13,110,253,.22);padding:5px 14px;border-radius:50px;}
.mg-hero-visual{position:relative;width:280px;height:280px;margin:0 auto;}
.mg-hero-ring{position:absolute;inset:-16px;border-radius:50%;border:2px dashed rgba(13,110,253,.35);animation:mgSpin 24s linear infinite;}
@keyframes mgSpin{to{transform:rotate(360deg);}}
.mg-hero-img{width:100%;height:100%;border-radius:50%;object-fit:cover;box-shadow:0 12px 40px rgba(0,43,91,.25);}
.mg-float-card{position:absolute;background:#fff;border-radius:14px;padding:8px 16px;font-size:.85rem;font-weight:700;color:#212529;box-shadow:0 10px 26px rgba(0,43,91,.18);animation:mgFloat 5s ease-in-out infinite;white-space:nowrap;}
.mg-fc-1{top:-8px;left:-52px;}
.mg-fc-2{bottom:4px;right:-46px;animation-delay:1.6s;}
.mg-wave{position:absolute;left:0;right:0;bottom:-1px;line-height:0;z-index:2;}
.mg-wave svg{width:100%;height:46px;display:block;}
.mg-address-mini{height:36px;width:auto;border-radius:8px;box-shadow:0 4px 12px rgba(0,43,91,.25);margin-left:12px;vertical-align:middle;}
@media(max-width:575px){.mg-address-mini{height:26px;margin-left:8px;}}

/* ---------- 数据统计条 stats5 ---------- */
.mg-stats{background:var(--mg-navy);color:#fff;padding:44px 0;}
.mg-stats .mg-stats-item{text-align:center;padding:10px;}
.mg-stats .mg-stats-num{font-size:2rem;font-weight:800;color:var(--mg-accent);}
.mg-stats .mg-stats-num small{font-size:1rem;}
.mg-stats .mg-stats-label{font-size:.9rem;opacity:.85;margin-top:4px;}

/* ---------- 通用 section 标题 ---------- */
.mg-section{padding:56px 0;}
.mg-section-gray{background:var(--mg-gray);}
.mg-section-dark{background:linear-gradient(135deg,var(--mg-navy),#001a38);color:#fff;}
.mg-section-title{text-align:center;margin-bottom:36px;}
.mg-section-title h2{font-weight:800;font-size:1.75rem;position:relative;display:inline-block;padding-bottom:12px;}
.mg-section-title h2::after{
    content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
    width:56px;height:4px;border-radius:2px;background:var(--mg-accent);
}
.mg-section-title p{color:var(--mg-muted);font-size:.95rem;margin-top:8px;}
.mg-section-dark .mg-section-title p{color:rgba(255,255,255,.65);}

/* ---------- 栏目网格入口 ---------- */
.mg-cat-card{
    display:block;background:#fff;border:1px solid var(--mg-border);border-radius:16px;
    padding:26px 18px;text-align:center;transition:.3s;height:100%;
}
.mg-cat-card:hover{transform:translateY(-5px);box-shadow:0 12px 26px rgba(13,110,253,.14);border-color:transparent;}
.mg-cat-card .mg-cat-icon{
    width:58px;height:58px;border-radius:14px;margin:0 auto 14px;
    display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;
    background:linear-gradient(135deg,var(--mg-primary),#4facfe);
}
.mg-cat-card h3{font-size:1rem;font-weight:700;color:var(--mg-text);margin-bottom:6px;}
.mg-cat-card p{font-size:.8rem;color:var(--mg-muted);margin:0;}

/* ---------- 新闻卡片 news3 ---------- */
.mg-news-card{
    display:flex;flex-direction:column;background:#fff;border:1px solid var(--mg-border);
    border-radius:16px;overflow:hidden;transition:.3s;height:100%;
}
@media (min-width:768px){.mg-news-card.horizontal{flex-direction:row;}}
.mg-news-card:hover{box-shadow:0 12px 28px rgba(0,0,0,.1);transform:translateY(-3px);}
.mg-news-img{position:relative;overflow:hidden;background:#e9ecef;flex-shrink:0;}
.mg-news-card:not(.horizontal) .mg-news-img{height:180px;}
.mg-news-card.horizontal .mg-news-img{width:260px;}
.mg-news-img img{width:100%;height:100%;object-fit:cover;transition:.4s;}
.mg-news-card:hover .mg-news-img img{transform:scale(1.05);}
.mg-news-img .mg-news-badge{
    position:absolute;left:12px;top:12px;background:var(--mg-accent);color:var(--mg-dark);
    font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:50px;
}
.mg-news-img .mg-news-placeholder{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,#dbe9ff,#eef6ff);color:var(--mg-primary);font-size:2rem;opacity:.5;
}
.mg-news-body{padding:20px;display:flex;flex-direction:column;justify-content:space-between;flex:1 1 auto;}
.mg-news-body h3{font-size:1.02rem;font-weight:700;line-height:1.5;margin-bottom:8px;}
.mg-news-body h3 a{color:var(--mg-text);transition:.25s;}
.mg-news-body h3 a:hover{color:var(--mg-primary);}
.mg-news-body .mg-news-desc{font-size:.85rem;color:var(--mg-muted);line-height:1.7;margin-bottom:12px;}
.mg-news-meta{font-size:.78rem;color:#adb5bd;display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.mg-news-more{color:var(--mg-primary);font-weight:600;font-size:.85rem;white-space:nowrap;}
.mg-news-more i{transition:.25s;}
.mg-news-more:hover i{transform:translateX(4px);}

/* ---------- 列表页 ---------- */
.mg-list-card{background:#fff;border:1px solid var(--mg-border);border-radius:16px;overflow:hidden;}
.mg-list-card .mg-list-heading{
    padding:16px 22px;border-bottom:1px solid #eef0f2;
    display:flex;align-items:center;justify-content:space-between;
}
.mg-list-card .mg-list-heading h3{
    font-size:1.1rem;font-weight:800;margin:0;border-left:4px solid var(--mg-primary);padding-left:10px;
}
.mg-list-item{display:flex;gap:18px;padding:18px 22px;border-bottom:1px solid #f1f3f5;transition:.25s;}
.mg-list-item:hover{background:#f8fbff;}
.mg-list-item:last-child{border-bottom:none;}
.mg-list-item .mg-list-img{width:180px;height:112px;flex-shrink:0;border-radius:10px;overflow:hidden;background:#e9ecef;}
.mg-list-item .mg-list-img img{width:100%;height:100%;object-fit:cover;}
.mg-list-item .mg-list-img .mg-news-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#dbe9ff,#eef6ff);color:var(--mg-primary);font-size:1.6rem;opacity:.5;}
.mg-list-item .mg-list-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;}
.mg-list-item .mg-list-info h4{font-size:1.02rem;font-weight:700;margin-bottom:6px;line-height:1.5;}
.mg-list-item .mg-list-info h4 a{color:var(--mg-text);transition:.25s;}
.mg-list-item .mg-list-info h4 a:hover{color:var(--mg-primary);}
.mg-list-item .desc{font-size:.85rem;color:var(--mg-muted);line-height:1.7;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mg-list-item .meta{font-size:.78rem;color:#adb5bd;display:flex;gap:14px;flex-wrap:wrap;}
.mg-list-item .meta .mg-tag{background:#eef6ff;color:var(--mg-primary);padding:1px 10px;border-radius:50px;font-weight:600;}
@media (max-width:575px){
    .mg-list-item{flex-direction:column;}
    .mg-list-item .mg-list-img{width:100%;height:170px;}
}

/* ---------- 详情页 ---------- */
.mg-detail-card{background:#fff;border:1px solid var(--mg-border);border-radius:16px;padding:30px;}
.mg-detail-header h1{font-size:1.6rem;font-weight:800;line-height:1.45;}
.mg-detail-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:.8rem;color:var(--mg-muted);padding:14px 0;border-bottom:1px solid #eef0f2;margin-bottom:22px;}
.mg-detail-meta .mg-tag{background:#eef6ff;color:var(--mg-primary);padding:2px 12px;border-radius:50px;font-weight:600;}
.mg-detail-content{font-size:.98rem;line-height:2;color:#343a40;}
.mg-detail-content p{margin-bottom:1.1rem;}
.mg-detail-content img{max-width:100%;height:auto;border-radius:12px;margin:1rem 0;box-shadow:0 2px 8px rgba(0,0,0,.06);}
.mg-detail-content blockquote{border-left:4px solid var(--mg-primary);background:var(--mg-gray);padding:14px 18px;margin:1.4rem 0;border-radius:0 8px 8px 0;color:#555;}
.mg-detail-content h2,.mg-detail-content h3{font-weight:700;margin:1.6rem 0 .9rem;}
.mg-article-nav{
    display:flex;justify-content:space-between;gap:16px;background:#fff;border:1px solid var(--mg-border);
    border-radius:16px;padding:16px 22px;margin-top:20px;font-size:.88rem;
}
.mg-article-nav a{color:var(--mg-text);max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:.25s;}
.mg-article-nav a:hover{color:var(--mg-primary);}

/* ---------- 侧边栏 ---------- */
.mg-side-card{background:#fff;border:1px solid var(--mg-border);border-radius:16px;overflow:hidden;margin-bottom:20px;}
.mg-side-card .mg-side-heading{
    padding:14px 20px;border-bottom:1px solid #eef0f2;font-size:1rem;font-weight:800;margin:0;
    border-left:4px solid var(--mg-accent);
}
.mg-side-card .mg-side-body{padding:16px 20px;}
.mg-rank-list{counter-reset:mg-rank;list-style:none;margin:0;padding:0;}
.mg-rank-list li{counter-increment:mg-rank;display:flex;align-items:baseline;gap:10px;padding:8px 0;border-bottom:1px dashed #f1f3f5;}
.mg-rank-list li:last-child{border-bottom:none;}
.mg-rank-list li::before{
    content:counter(mg-rank);flex-shrink:0;width:22px;height:22px;border-radius:6px;text-align:center;
    background:#eef0f2;color:var(--mg-muted);font-size:.75rem;font-weight:700;line-height:22px;
}
.mg-rank-list li:nth-child(-n+3)::before{background:var(--mg-primary);color:#fff;}
.mg-rank-list li a{color:var(--mg-text);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:.25s;}
.mg-rank-list li a:hover{color:var(--mg-primary);}

/* ---------- 标签云 ---------- */
.mg-tag-cloud{display:flex;flex-wrap:wrap;gap:10px;}
.mg-tag-cloud a{
    display:inline-block;background:var(--mg-gray);border:1px solid var(--mg-border);
    color:#495057;font-size:.83rem;padding:6px 16px;border-radius:50px;transition:.25s;
}
.mg-tag-cloud a:hover{background:var(--mg-primary);border-color:var(--mg-primary);color:#fff;}

/* ---------- 面包屑 ---------- */
.mg-breadcrumb{font-size:.83rem;}
.mg-breadcrumb a{color:var(--mg-muted);}
.mg-breadcrumb a:hover{color:var(--mg-primary);}

/* ---------- 分页 ---------- */
.mg-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;padding:22px 0;}
.mg-pagination a,.mg-pagination span{
    display:inline-block;min-width:36px;text-align:center;padding:7px 12px;border:1px solid var(--mg-border);
    border-radius:8px;color:#495057;font-size:.85rem;transition:.25s;background:#fff;
}
.mg-pagination a:hover{border-color:var(--mg-primary);color:var(--mg-primary);}
.mg-pagination .current,.mg-pagination span.active{background:var(--mg-primary);border-color:var(--mg-primary);color:#fff;}

/* ---------- 手风琴 FAQ ---------- */
.mg-accordion .accordion-button{font-weight:600;font-size:.95rem;}
.mg-accordion .accordion-button:not(.collapsed){background:#eef6ff;color:var(--mg-primary);box-shadow:none;}
.mg-accordion .accordion-button:focus{box-shadow:none;border-color:var(--mg-border);}

/* ---------- 搜索页 ---------- */
.mg-search-hero{background:linear-gradient(135deg,var(--mg-navy),#0050b3);color:#fff;padding:52px 0;text-align:center;}
.mg-search-hero-form{max-width:560px;margin:22px auto 0;display:flex;}
.mg-search-hero-form input{flex:1;border:none;border-radius:50px 0 0 50px;padding:12px 22px;font-size:.95rem;outline:none;}
.mg-search-hero-form button{border:none;background:var(--mg-accent);color:var(--mg-dark);font-weight:700;padding:0 28px;border-radius:0 50px 50px 0;transition:.25s;}
.mg-search-hero-form button:hover{background:#e0a800;color:#fff;}

/* ---------- 页脚 footer-10 ---------- */
.mg-footer{background:var(--mg-dark);color:#fff;position:relative;margin-top:auto;}
.mg-footer::before{
    content:"";position:absolute;inset:0;
    background:linear-gradient(160deg,rgba(0,43,91,.92),rgba(33,37,41,.96));
}
.mg-footer .container{position:relative;z-index:2;}
.mg-footer h4{font-size:1.02rem;font-weight:700;margin-bottom:16px;color:var(--mg-accent);}
.mg-footer a{color:rgba(255,255,255,.6);transition:.25s;}
.mg-footer a:hover{color:var(--mg-accent);}
.mg-footer .mg-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.12);font-size:.88rem;}
.mg-footer .mg-footer-desc{font-size:.85rem;color:rgba(255,255,255,.65);line-height:1.9;}
.mg-footer .mg-footer-bottom{font-size:.8rem;color:rgba(255,255,255,.5);text-align:center;padding-top:16px;}

/* ---------- 404 ---------- */
.mg-error-section{padding:90px 0;text-align:center;background:linear-gradient(160deg,#eef6ff,#fff);}
.mg-error-section .mg-error-code{font-size:7rem;font-weight:900;color:var(--mg-primary);opacity:.15;line-height:1;}

/* ---------- 杂项 ---------- */
.mg-notice{background:linear-gradient(135deg,var(--mg-accent),#ffca2c);color:var(--mg-dark);font-size:.88rem;font-weight:500;}
