.prediction-hit-card {
    border: 2px solid #10b981 !important;
    background: linear-gradient(135deg, rgb(236 253 245 / 0.95), #fff 55%) !important;
    box-shadow: 0 0 0 1px rgb(16 185 129 / 0.15), 0 16px 36px rgb(16 185 129 / 0.18);
}

.prediction-hit-card:hover {
    border-color: #059669 !important;
    box-shadow: 0 0 0 2px rgb(16 185 129 / 0.25), 0 18px 40px rgb(16 185 129 / 0.24);
}

.prediction-hit-ribbon {
    animation: prediction-hit-pulse 2.2s ease-in-out infinite;
    transform-origin: center;
}

.prediction-hit-banner {
    animation: prediction-hit-glow 2.4s ease-in-out infinite;
}

@keyframes prediction-hit-pulse {
    0%, 100% { transform: rotate(-12deg) scale(1); }
    50% { transform: rotate(-12deg) scale(1.06); }
}

@keyframes prediction-hit-glow {
    0%, 100% { box-shadow: 0 8px 24px rgb(16 185 129 / 0.35); }
    50% { box-shadow: 0 10px 28px rgb(16 185 129 / 0.55); }
}

.prediction-hit-summary {
    animation: prediction-hit-glow 2.4s ease-in-out infinite;
}

.prediction-pending-card {
    border: 2px solid #f59e0b !important;
    background: linear-gradient(135deg, rgb(255 251 235 / 0.95), #fff 55%) !important;
    box-shadow: 0 0 0 1px rgb(245 158 11 / 0.15), 0 16px 36px rgb(245 158 11 / 0.16);
}

.prediction-pending-card:hover {
    border-color: #d97706 !important;
    box-shadow: 0 0 0 2px rgb(245 158 11 / 0.22), 0 18px 40px rgb(245 158 11 / 0.22);
}

.prediction-pending-ribbon {
    animation: prediction-pending-pulse 2.4s ease-in-out infinite;
    transform-origin: center;
}

.prediction-pending-banner {
    animation: prediction-pending-glow 2.6s ease-in-out infinite;
}

.prediction-pending-summary {
    animation: prediction-pending-glow 2.6s ease-in-out infinite;
}

@keyframes prediction-pending-pulse {
    0%, 100% { transform: rotate(-12deg) scale(1); }
    50% { transform: rotate(-12deg) scale(1.05); }
}

@keyframes prediction-pending-glow {
    0%, 100% { box-shadow: 0 8px 24px rgb(245 158 11 / 0.3); }
    50% { box-shadow: 0 10px 28px rgb(245 158 11 / 0.48); }
}

.recent-issue-prediction__btn {
    max-width: 100%;
    line-height: 1.35;
}

.article-list-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    word-break: break-word;
    font-size: 0.9375rem;
    line-height: 1.45;
}

.article-list-card__desc {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.article-list-card__banner {
    margin-bottom: 0.75rem;
}

@media (min-width: 640px) {
    .article-list-card__title {
        -webkit-line-clamp: 3;
        font-size: 1rem;
    }
}
