/* ==========================================================
   tech 模板样式 - 参照 hanyanhui77.com 布局 + 深空科技风
   深空蓝底 #0b0714 | 电光蓝 #8b5cf6 + 霓虹青 #ec4899 渐变
   玻璃拟态卡片 + 霓虹光晕 + 网格纹理 | 点缀黄 #fbbf24
   ========================================================== */
:root{
    --jm-primary:#8b5cf6;
    --jm-primary-dark:#6d3df0;
    --jm-cyan:#ec4899;
    --jm-violet:#a855f7;
    --jm-accent:#fbbf24;
    --jm-bg:#0b0714;
    --jm-bg-soft:#120b1e;
    --jm-card:rgba(255,255,255,.04);
    --jm-card-border:rgba(236,72,153,.16);
    --jm-text:#f2e6ee;
    --jm-muted:rgba(242,230,238,.62);
    --jm-line:rgba(255,255,255,.09);
}
html,body{height:100%;}
body{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
    color:var(--jm-text);
    background:var(--jm-bg);
    display:flex;flex-direction:column;min-height:100vh;
}
main,main.jm-main{flex:1 0 auto;}
a{text-decoration:none;}
img{max-width:100%;}
.text-muted{color:var(--jm-muted)!important;}

/* ---------- 顶部导航（深空 navbar） ---------- */
.jm-header{background:rgba(7,11,20,.92);backdrop-filter:blur(10px);z-index:1030;border-bottom:1px solid var(--jm-card-border);}
.jm-header .navbar-brand{color:#fff;font-weight:700;font-size:1.12rem;display:flex;align-items:center;gap:10px;white-space:nowrap;}
.jm-header .navbar-brand img{height:38px;width:auto;}
.jm-logo{height:clamp(34px,4.6vw,44px);width:clamp(34px,4.6vw,44px);border-radius:26%;object-fit:cover;flex-shrink:0;box-shadow:0 2px 14px rgba(236,72,153,.45);}
.jm-header .nav-link{color:rgba(242,230,238,.85);margin:0 4px;transition:.3s;font-size:.95rem;border-radius:6px;}
.jm-header .nav-link.active,
.jm-header .nav-link:hover{color:#fff;background:linear-gradient(135deg,rgba(139,92,246,.35),rgba(236,72,153,.25));box-shadow:0 0 10px rgba(236,72,153,.25);}
.jm-header .navbar-toggler{border-color:rgba(236,72,153,.4);}
.jm-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(236,72,153,0.9)' stroke-width='2' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");}
.jm-header .jm-header-btn{border:1px solid var(--jm-cyan);color:var(--jm-cyan);font-weight:600;font-size:.85rem;border-radius:50px;padding:6px 18px;transition:.3s;white-space:nowrap;}
.jm-header .jm-header-btn:hover{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));border-color:transparent;color:#fff;box-shadow:0 0 16px rgba(236,72,153,.6);}
.jm-header .jm-search-form .form-control{border-radius:50px 0 0 50px;border:1px solid var(--jm-line);border-right:none;font-size:.85rem;background:rgba(255,255,255,.07);color:#fff;}
.jm-header .jm-search-form .form-control::placeholder{color:rgba(242,230,238,.4);}
.jm-header .jm-search-form .btn{border-radius:0 50px 50px 0;background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));color:#fff;border:none;font-weight:700;}

/* ---------- Hero 区（深空渐变 + 网格纹理） ---------- */
.jm-hero{
    background:linear-gradient(135deg,#241040 0%,#12081f 60%,#0b0714 100%);
    color:#fff;padding:72px 0 84px;position:relative;overflow:hidden;
}
.jm-hero::before{
    content:"";position:absolute;inset:0;
    background:url("/public/assets/sports/hero-stadium.jpg") center/cover no-repeat;
    opacity:.3;pointer-events:none;
}
.jm-hero::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background-image:linear-gradient(rgba(236,72,153,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(236,72,153,.05) 1px,transparent 1px);
    background-size:44px 44px;
    mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
    -webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
}
.jm-hero .container{position:relative;z-index:2;}
/* 顶端滚动快讯条 */
.jm-notice-bar{display:flex;align-items:center;gap:14px;background:rgba(11,17,32,.72);border:1px solid var(--jm-card-border);border-radius:40px;padding:8px 18px;backdrop-filter:blur(6px);box-shadow:0 0 24px rgba(236,72,153,.08);}
.jm-notice-label{flex-shrink:0;font-size:.85rem;font-weight:700;color:#20031a;background:linear-gradient(135deg,var(--jm-cyan),#ff9ecb);padding:4px 14px;border-radius:20px;white-space:nowrap;box-shadow:0 0 12px rgba(236,72,153,.5);}
.jm-notice-scroll{flex:1;overflow:hidden;min-width:0;}
.jm-notice-track{display:inline-flex;gap:48px;white-space:nowrap;animation:jm-marquee 40s linear infinite;will-change:transform;}
.jm-notice-bar:hover .jm-notice-track{animation-play-state:paused;}
.jm-notice-track a{color:#efc9dd;font-size:.88rem;transition:.2s;}
.jm-notice-track a:hover{color:var(--jm-cyan);text-shadow:0 0 8px rgba(236,72,153,.6);}
@keyframes jm-marquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
.jm-notice-more{flex-shrink:0;color:var(--jm-cyan);font-size:.85rem;white-space:nowrap;}
.jm-notice-more:hover{color:#fff;}
@media(max-width:575px){.jm-notice-more{display:none;}}
/* Hero 浮动装饰图标 */
.jm-hero-floats{position:absolute;inset:0;z-index:1;pointer-events:none;}
.jm-hero-floats i{position:absolute;color:rgba(236,72,153,.14);animation:jm-float 7s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(236,72,153,.35));}
.jm-hero-floats i:nth-child(1){font-size:3.4rem;top:16%;left:6%;}
.jm-hero-floats i:nth-child(2){font-size:2.6rem;bottom:20%;left:14%;animation-delay:1.6s;}
.jm-hero-floats i:nth-child(3){font-size:3rem;top:22%;right:8%;animation-delay:3s;color:rgba(251,191,36,.14);}
.jm-hero-floats i:nth-child(4){font-size:2.4rem;bottom:14%;right:16%;animation-delay:4.4s;color:rgba(168,85,247,.16);}
@keyframes jm-float{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-18px) rotate(8deg);}}
.jm-hero h1{font-size:2rem;font-weight:700;line-height:1.4;}
@media(min-width:992px){.jm-hero h1{font-size:2.4rem;}}
.jm-hero h1 strong{background:linear-gradient(135deg,var(--jm-cyan),var(--jm-primary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;}
.jm-hero .jm-hero-desc{font-size:1rem;color:#ddbcce;line-height:1.9;max-width:640px;}
.jm-hero-badges{display:flex;flex-wrap:wrap;gap:10px;}
.jm-badge-pill{font-size:.8rem;font-weight:600;color:var(--jm-cyan);background:rgba(236,72,153,.08);border:1px solid rgba(236,72,153,.35);padding:5px 14px;border-radius:50px;backdrop-filter:blur(2px);}
.jm-btn-hero{
    display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));color:#fff;
    font-weight:700;font-size:.95rem;padding:12px 26px;border-radius:30px;transition:.3s;
    box-shadow:0 0 22px rgba(236,72,153,.45);
}
.jm-btn-hero:hover{color:#fff;transform:translateY(-2px);box-shadow:0 0 34px rgba(236,72,153,.7);}
.jm-btn-hero-outline{
    display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.05);
    border:1px solid rgba(236,72,153,.5);color:var(--jm-cyan);font-weight:700;font-size:.95rem;
    padding:12px 26px;border-radius:30px;transition:.3s;
}
.jm-btn-hero-outline:hover{background:rgba(236,72,153,.14);color:#fff;}
.jm-hero-img-wrap{max-width:520px;margin:0 auto;}
.jm-hero-img-wrap img{border-radius:18px;border:1px solid var(--jm-card-border);box-shadow:0 0 40px rgba(236,72,153,.25);}

/* ---------- 数据统计条 ---------- */
.jm-stats{background:linear-gradient(90deg,#170b28,#1d1030 50%,#170b28);border-top:1px solid var(--jm-card-border);border-bottom:1px solid var(--jm-card-border);color:#fff;padding:40px 0;}
.jm-stats .jm-stats-item{text-align:center;padding:10px;}
.jm-stats .jm-stats-num{font-size:2rem;font-weight:800;background:linear-gradient(135deg,var(--jm-cyan),var(--jm-primary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.jm-stats .jm-stats-num small{font-size:1rem;-webkit-text-fill-color:var(--jm-cyan);}
.jm-stats .jm-stats-label{font-size:.9rem;opacity:.85;margin-top:4px;}

/* ---------- 通用 section 标题 ---------- */
.jm-section{padding:60px 0;}
.jm-section-gray{background:var(--jm-bg-soft);}
.jm-section-dark{background:linear-gradient(180deg,var(--jm-bg) 0%,#170b28 100%);color:#fff;}
.jm-section-title{text-align:center;margin-bottom:40px;}
.jm-section-title .lead{color:var(--jm-cyan);font-weight:700;font-size:.95rem;margin-bottom:6px;letter-spacing:2px;text-transform:uppercase;}
.jm-section-title h2{font-weight:800;font-size:1.7rem;color:#fff;}
.jm-section-title p.sub{color:var(--jm-muted);font-size:.92rem;margin-top:8px;}

/* ---------- 优势卡片 whyus ---------- */
.jm-whyus-card{
    display:flex;align-items:flex-start;gap:16px;background:var(--jm-card);border:1px solid var(--jm-card-border);
    border-radius:18px;padding:28px 24px;height:100%;transition:.3s;backdrop-filter:blur(4px);
}
.jm-whyus-card:hover{transform:translateY(-5px);box-shadow:0 0 30px rgba(236,72,153,.18);border-color:rgba(236,72,153,.4);}
.jm-whyus-card .icon-circle{
    width:54px;height:54px;border-radius:14px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fff;
    background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));box-shadow:0 0 16px rgba(236,72,153,.4);
}
.jm-whyus-card h5{font-weight:700;margin-bottom:8px;color:#fff;}
.jm-whyus-card p{color:var(--jm-muted);font-size:.88rem;line-height:1.8;margin:0;}

/* ---------- 功能专区 Tab ---------- */
.jm-dept-wrap{background:var(--jm-card);border:1px solid var(--jm-card-border);border-radius:20px;padding:34px 30px;backdrop-filter:blur(4px);}
.jm-dept-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:30px;}
.jm-dept-tabs .jm-tab-btn{
    border:1px solid var(--jm-line);background:transparent;color:var(--jm-muted);font-weight:600;font-size:.9rem;
    padding:9px 22px;border-radius:50px;transition:.25s;
}
.jm-dept-tabs .jm-tab-btn:hover{border-color:var(--jm-cyan);color:var(--jm-cyan);}
.jm-dept-tabs .jm-tab-btn.active{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));border-color:transparent;color:#fff;box-shadow:0 0 18px rgba(236,72,153,.5);}
.jm-dept-pane{display:none;}
.jm-dept-pane.active{display:block;}
.jm-dept-inner{display:flex;gap:30px;align-items:center;flex-wrap:wrap;}
.jm-dept-text{flex:1 1 340px;}
.jm-dept-text h3{font-weight:800;font-size:1.3rem;margin-bottom:10px;color:#fff;}
.jm-dept-text p{color:var(--jm-muted);font-size:.92rem;line-height:1.9;}
.jm-dept-list{list-style:none;margin:14px 0 0;padding:0;}
.jm-dept-list li{padding:8px 0;border-bottom:1px dashed rgba(255,255,255,.1);font-size:.9rem;}
.jm-dept-list li:last-child{border-bottom:none;}
.jm-dept-list li a{color:var(--jm-text);transition:.25s;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.jm-dept-list li a:hover{color:var(--jm-cyan);padding-left:4px;}
.jm-dept-list li time{color:rgba(242,230,238,.38);font-size:.78rem;float:right;margin-left:10px;}
.jm-dept-img{flex:1 1 300px;max-width:420px;margin:0 auto;}
.jm-dept-img img{width:100%;border-radius:16px;border:1px solid var(--jm-card-border);box-shadow:0 0 28px rgba(236,72,153,.15);}

/* ---------- 更新日志卡片 ---------- */
.jm-update-card{background:var(--jm-card);border:1px solid var(--jm-card-border);border-radius:14px;padding:24px;height:100%;}
.jm-update-card h3{font-size:1.05rem;font-weight:700;margin-bottom:14px;color:#fff;}
.jm-update-card ul{list-style:disc;padding-left:1.2rem;margin:0;font-size:.85rem;color:var(--jm-muted);line-height:2;}

/* ---------- APP 下载区 ---------- */
.jm-app-img{max-width:420px;margin:0 auto;border-radius:18px;overflow:hidden;border:1px solid var(--jm-card-border);box-shadow:0 0 36px rgba(139,92,246,.25);}
.jm-app-img img{width:100%;display:block;}
.jm-app-list{list-style:none;margin:0 0 24px;padding:0;}
.jm-app-list li{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px;font-size:.94rem;color:var(--jm-text);}
.jm-app-list li i{margin-top:3px;color:var(--jm-cyan);}

/* ---------- 资讯卡片 news ---------- */
.jm-news-card{
    display:flex;flex-direction:column;background:var(--jm-card);border:1px solid var(--jm-card-border);
    border-radius:18px;overflow:hidden;transition:.3s;height:100%;backdrop-filter:blur(4px);
}
@media (min-width:768px){.jm-news-card.horizontal{flex-direction:row;}}
.jm-news-card:hover{box-shadow:0 0 30px rgba(236,72,153,.2);transform:translateY(-3px);border-color:rgba(236,72,153,.45);}
.jm-news-img{position:relative;overflow:hidden;background:#1a0f2b;flex-shrink:0;}
.jm-news-card:not(.horizontal) .jm-news-img{height:180px;}
.jm-news-card.horizontal .jm-news-img{width:260px;}
.jm-news-img img{width:100%;height:100%;object-fit:cover;transition:.4s;}
.jm-news-card:hover .jm-news-img img{transform:scale(1.05);}
.jm-news-img .jm-news-badge{
    position:absolute;left:12px;top:12px;background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));color:#fff;
    font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:50px;box-shadow:0 0 10px rgba(236,72,153,.5);
}
.jm-news-img .jm-news-placeholder{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,#170b28,#1d1030);color:var(--jm-cyan);font-size:2rem;opacity:.6;
}
.jm-news-body{padding:18px;display:flex;flex-direction:column;justify-content:space-between;flex:1 1 auto;}
.jm-news-body h3{font-size:1rem;font-weight:600;line-height:1.55;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.jm-news-body h3 a{color:var(--jm-text);transition:.25s;}
.jm-news-body h3 a:hover{color:var(--jm-cyan);}
.jm-news-body .jm-news-desc{font-size:.83rem;color:var(--jm-muted);line-height:1.7;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.jm-news-meta{font-size:.78rem;color:rgba(242,230,238,.4);display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.jm-news-more{
    display:inline-block;border:1px solid var(--jm-cyan);color:var(--jm-cyan);
    font-size:.8rem;font-weight:600;padding:4px 14px;border-radius:8px;transition:.25s;white-space:nowrap;
}
.jm-news-more:hover{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));border-color:transparent;color:#fff;}

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

/* ---------- 详情页 ---------- */
.jm-detail-card{background:var(--jm-card);border:1px solid var(--jm-card-border);border-radius:16px;padding:30px;backdrop-filter:blur(4px);}
.jm-detail-header h1{font-size:1.55rem;font-weight:800;line-height:1.5;color:#fff;}
.jm-detail-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:.8rem;color:var(--jm-muted);padding:14px 0;border-bottom:1px solid var(--jm-line);margin-bottom:22px;}
.jm-detail-meta .jm-tag{background:rgba(236,72,153,.12);color:var(--jm-cyan);padding:2px 12px;border-radius:50px;font-weight:600;}
.jm-detail-content{font-size:.98rem;line-height:2;color:#e6d2de;}
.jm-detail-content p{margin-bottom:1.1rem;}
.jm-detail-content img{max-width:100%;height:auto;border-radius:12px;margin:1rem 0;border:1px solid var(--jm-card-border);}
.jm-detail-content blockquote{border-left:4px solid var(--jm-cyan);background:rgba(236,72,153,.06);padding:14px 18px;margin:1.4rem 0;border-radius:0 8px 8px 0;color:var(--jm-muted);}
.jm-detail-cover{padding:0 26px;}
.jm-detail-cover img{width:100%;border-radius:14px;border:1px solid var(--jm-card-border);box-shadow:0 0 30px rgba(236,72,153,.15);}
.jm-detail-tags{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:18px 26px 24px;border-top:1px dashed rgba(255,255,255,.14);margin-top:8px;}
.jm-detail-tags-title{color:var(--jm-muted);font-weight:600;font-size:.9rem;}
.jm-detail-tags a{display:inline-block;padding:5px 14px;background:rgba(255,255,255,.06);border:1px solid var(--jm-line);color:var(--jm-text);border-radius:20px;font-size:.82rem;transition:.25s;}
.jm-detail-tags a:hover{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));border-color:transparent;color:#fff;}
.jm-detail-content h2,.jm-detail-content h3{font-weight:700;margin:1.6rem 0 .9rem;color:#fff;}
.jm-article-nav{
    display:flex;justify-content:space-between;gap:16px;background:var(--jm-card);border:1px solid var(--jm-card-border);
    border-radius:16px;padding:16px 22px;margin-top:20px;font-size:.88rem;
}
.jm-article-nav a{color:var(--jm-text);max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:.25s;}
.jm-article-nav a:hover{color:var(--jm-cyan);}

/* ---------- 侧边栏 ---------- */
.jm-side-card{background:var(--jm-card);border:1px solid var(--jm-card-border);border-radius:16px;overflow:hidden;margin-bottom:20px;backdrop-filter:blur(4px);}
.jm-side-card .jm-side-heading{
    padding:14px 20px;border-bottom:1px solid var(--jm-line);font-size:1rem;font-weight:800;margin:0;color:#fff;
    border-left:4px solid var(--jm-cyan);
}
.jm-side-card .jm-side-body{padding:16px 20px;}
.jm-rank-list{counter-reset:jm-rank;list-style:none;margin:0;padding:0;}
.jm-rank-list li{counter-increment:jm-rank;display:flex;align-items:baseline;gap:10px;padding:8px 0;border-bottom:1px dashed rgba(255,255,255,.08);}
.jm-rank-list li:last-child{border-bottom:none;}
.jm-rank-list li::before{
    content:counter(jm-rank);flex-shrink:0;width:22px;height:22px;border-radius:6px;text-align:center;
    background:rgba(255,255,255,.08);color:var(--jm-muted);font-size:.75rem;font-weight:700;line-height:22px;
}
.jm-rank-list li:nth-child(-n+3)::before{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));color:#fff;box-shadow:0 0 8px rgba(236,72,153,.5);}
.jm-rank-list li a{color:var(--jm-text);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:.25s;}
.jm-rank-list li a:hover{color:var(--jm-cyan);}

/* ---------- 标签云 ---------- */
.jm-tag-cloud{display:flex;flex-wrap:wrap;gap:10px;}
.jm-tag-cloud a{
    display:inline-block;background:rgba(255,255,255,.05);border:1px solid var(--jm-line);
    color:var(--jm-muted);font-size:.83rem;padding:6px 16px;border-radius:50px;transition:.25s;
}
.jm-tag-cloud a:hover{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));border-color:transparent;color:#fff;box-shadow:0 0 14px rgba(236,72,153,.5);}

/* ---------- 面包屑 ---------- */
.jm-breadcrumb{font-size:.83rem;}
.jm-breadcrumb a{color:var(--jm-muted);}
.jm-breadcrumb a:hover{color:var(--jm-cyan);}
.breadcrumb-item.active{color:var(--jm-text);}
.breadcrumb-item+.breadcrumb-item::before{color:rgba(242,230,238,.3);}

/* ---------- 分页 ---------- */
.jm-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;padding:22px 0;}
.jm-pagination a,.jm-pagination span{
    display:inline-block;min-width:36px;text-align:center;padding:7px 12px;border:1px solid var(--jm-line);
    border-radius:8px;color:var(--jm-muted);font-size:.85rem;transition:.25s;background:rgba(255,255,255,.04);
}
.jm-pagination a:hover{border-color:var(--jm-cyan);color:var(--jm-cyan);}
.jm-pagination .current,.jm-pagination span.active{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));border-color:transparent;color:#fff;box-shadow:0 0 12px rgba(236,72,153,.4);}

/* ---------- 手风琴 FAQ ---------- */
.jm-accordion .accordion-item{background:var(--jm-card);border:1px solid var(--jm-card-border);border-radius:12px!important;margin-bottom:10px;overflow:hidden;}
.jm-accordion .accordion-button{font-weight:600;font-size:.95rem;background:transparent;color:var(--jm-text);}
.jm-accordion .accordion-button:not(.collapsed){background:rgba(236,72,153,.08);color:var(--jm-cyan);box-shadow:none;}
.jm-accordion .accordion-button:focus{box-shadow:none;border-color:var(--jm-card-border);}
.jm-accordion .accordion-button::after{filter:invert(.8);}
.jm-accordion .accordion-body{color:var(--jm-muted);font-size:.9rem;line-height:1.8;}

/* ---------- 搜索页 ---------- */
.jm-search-hero{background:linear-gradient(135deg,#241040 0%,#12081f 100%);color:#fff;padding:52px 0;text-align:center;border-bottom:1px solid var(--jm-card-border);}
.jm-search-hero-form{max-width:560px;margin:22px auto 0;display:flex;}
.jm-search-hero-form input{flex:1;border:1px solid var(--jm-card-border);border-right:none;border-radius:50px 0 0 50px;padding:12px 22px;font-size:.95rem;outline:none;background:rgba(255,255,255,.07);color:#fff;}
.jm-search-hero-form input::placeholder{color:rgba(242,230,238,.4);}
.jm-search-hero-form button{border:none;background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));color:#fff;font-weight:700;padding:0 28px;border-radius:0 50px 50px 0;transition:.25s;}
.jm-search-hero-form button:hover{box-shadow:0 0 18px rgba(236,72,153,.6);}

/* ---------- 页脚 ---------- */
.jm-footer{background:#070410;color:#fff;position:relative;margin-top:auto;border-top:1px solid var(--jm-card-border);}
.jm-footer::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(ellipse at top,rgba(139,92,246,.12),transparent 70%);
}
.jm-footer .container{position:relative;z-index:2;}
.jm-footer h4{font-size:1.02rem;font-weight:700;margin-bottom:16px;color:var(--jm-cyan);}
.jm-footer a{color:rgba(255,255,255,.6);transition:.25s;}
.jm-footer a:hover{color:var(--jm-cyan);}
.jm-footer .jm-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;}
.jm-footer .jm-footer-desc{font-size:.85rem;color:rgba(255,255,255,.65);line-height:1.9;}
.jm-footer .jm-footer-bottom{font-size:.8rem;color:rgba(255,255,255,.5);text-align:center;padding-top:16px;}

/* ---------- 404 ---------- */
.jm-error-section{padding:90px 0;text-align:center;background:linear-gradient(135deg,#241040 0%,var(--jm-bg) 100%);color:#fff;}
.jm-error-section .jm-error-code{font-size:7rem;font-weight:900;background:linear-gradient(135deg,var(--jm-cyan),var(--jm-primary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;opacity:.6;line-height:1;}

/* ---------- 杂项 ---------- */
.jm-notice{background:linear-gradient(135deg,var(--jm-primary),var(--jm-cyan));color:#fff;font-size:.88rem;font-weight:500;}

/* ---------- 球星瞬间图片墙 ---------- */
.jm-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
@media (min-width:768px){.jm-gallery{grid-template-columns:repeat(4,1fr);}}
.jm-gallery-item{position:relative;display:block;border-radius:14px;overflow:hidden;border:1px solid var(--jm-card-border);aspect-ratio:3/2;background:#170b28;transition:.3s;}
.jm-gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.jm-gallery-item:hover{border-color:rgba(236,72,153,.5);box-shadow:0 0 26px rgba(236,72,153,.22);transform:translateY(-3px);}
.jm-gallery-item:hover img{transform:scale(1.07);}
.jm-gallery-item .jm-gallery-cap{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;font-size:.85rem;font-weight:600;color:#fff;background:linear-gradient(180deg,transparent,rgba(5,8,15,.85));}
.jm-gallery-item .jm-gallery-cap i{color:var(--jm-cyan);margin-right:5px;}

/* ---------- 品牌文字（icon + HTML 文字，浏览器端渲染中文） ---------- */
.jm-header .navbar-brand .jm-brand-text{font-family:'Montserrat','Futura','Avenir Next','Helvetica Neue','Arial Black',Arial,'PingFang SC','Microsoft YaHei',sans-serif;font-size:clamp(1.45rem,1.05rem + 1.7vw,2.1rem);font-weight:900;letter-spacing:.16em;line-height:1;text-transform:uppercase;background:linear-gradient(120deg,#ffffff 0%,var(--jm-secondary) 50%,var(--jm-primary) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 1px 7px rgba(236,72,153,.38));white-space:nowrap;}
.jm-header .navbar-brand{gap:clamp(8px,1.2vw,14px);}
