/* ZMT 首页 — 主色 #1890ff，对齐需求文档 */
.zmt-hero {
    background: linear-gradient(135deg, #1890ff 0%, #096dd9 100%);
    color: #fff;
    padding: 36px 0 28px;
    margin: -20px -15px 24px;
    border-radius: 0;
}
.zmt-hero h1 { font-size: 26px; margin-top: 0; }
.zmt-hero .lead { opacity: 0.95; }
.zmt-score-pill {
    display: inline-block;
    margin-top: 12px;
    padding: 6px 14px;
    background: rgba(255,255,255,0.2);
    border-radius: 20px;
    font-size: 14px;
}
.zmt-cat-row {
    margin-bottom: 16px;
    white-space: nowrap;
    overflow-x: auto;
    padding-bottom: 4px;
}
.zmt-cat {
    display: inline-block;
    margin-right: 8px;
    padding: 6px 14px;
    border-radius: 16px;
    border: 1px solid #d9d9d9;
    color: #333;
    cursor: pointer;
    background: #fff;
}
.zmt-cat.active, .zmt-cat:hover {
    border-color: #1890ff;
    color: #1890ff;
    background: #e6f7ff;
}
.zmt-topic-card {
    border: 1px solid #eee;
    border-radius: 8px;
    min-height: 180px;
    transition: box-shadow .2s;
}
.zmt-topic-card:hover { box-shadow: 0 4px 12px rgba(0,0,0,.08); }
.zmt-card-title { font-size: 15px; line-height: 1.4; height: 42px; overflow: hidden; }
.zmt-feature-icon { font-size: 32px; color: #1890ff; margin-bottom: 8px; }
.zmt-package-year { border: 2px solid #1890ff; box-shadow: 0 4px 14px rgba(24,144,255,.2); }
.zmt-video-muted { opacity: .55; }
.zmt-section-title { font-size: 18px; font-weight: 600; margin: 28px 0 14px; padding-bottom: 8px; border-bottom: 2px solid #1890ff; display: inline-block; }
