h2 {
    margin-top: 2rem;
    margin-bottom: 1rem !important;
    font-weight: bold;
    line-height: 1.2 !important;
    font-size: calc(1.325rem + 0.9vw) !important;
}

h3 {
    margin-top: 1.5rem !important;
    margin-bottom: 0.75rem !important;
    font-weight: bold;
    line-height: 1.2 !important;
    font-size: calc(1.275rem + 0.3vw) !important;
}

h4 {
    margin-top: 1.5rem !important;
    margin-bottom: 0.75rem !important;
    font-weight: bold;
    line-height: 1.2 !important;
    font-size: 1.125rem !important; /* = 18px */
}

h6 {
    margin-top: 1.5rem !important;
    margin-bottom: 0.75rem !important;
    font-weight: bold;
    line-height: 1.2 !important;
    font-size: 0.875rem !important; /* = 14px */
    text-transform: uppercase;
}
.text-success-bts {
    color: #198754 !important;
}
.score-display {
    font-size: 2.5rem;
    font-weight: bold;
    color: #28a745;
}
@media (max-width: 768px) {
    .score-display {
        font-size: 2rem;
    }
}
.grid-card {
    transition: transform 0.2s;
    height: 100% !important;
}
.grid-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.badge-jixiong {
    font-size: 0.85em;
    padding: 0.35em 0.6em;
}
.ji { background-color: #28a745 !important; color: white !important; }
.banji { background-color: #ffc107 !important; color: black !important; }
.xiong, .daxiong { background-color: #dc3545 !important; color: white !important; }

/* 含义区域样式：限制高度 + 滚动 */
.meaning-text {
    max-height: 150px;
    overflow-y: auto;
    font-size: 0.9rem;
    margin-top: 0.5rem;
    padding: 0.5rem;
    background-color: #f8f9fa;
    border-radius: 4px;
}