.cm-filter-bar { display: flex; gap: 15px; margin-bottom: 30px; align-items: center; flex-wrap: wrap; }
.cm-select { padding: 8px 12px; border: 1px solid #ccc; border-radius: 20px; font-size: 14px; background: #fff; min-width: 150px; }
.cm-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 25px; }
.cm-card { display: flex; flex-direction: column; width: 100%; }
.cm-poster-wrap { 
    position: relative; border-radius: 8px; overflow: hidden; aspect-ratio: 2/3; 
    box-shadow: 0 4px 6px rgba(0,0,0,0.1); margin-bottom: 10px; background: #eee;
}
.cm-poster-wrap img { width: 100%; height: 100%; object-fit: cover; }
.cm-overlay {
    position: absolute; top:0; left:0; width:100%; height:100%;
    background: rgba(0,0,0,0.3); opacity: 0; transition: 0.3s;
    display: flex; align-items: center; justify-content: center;
}
.cm-card:hover .cm-overlay { opacity: 1; }
.cm-play-icon { font-size: 40px; color: white; text-shadow: 0 2px 5px rgba(0,0,0,0.5); }

.cm-info { display: flex; justify-content: space-between; align-items: center; font-size: 14px; font-weight: bold; margin-bottom: 5px; }
.cm-score-group { display: flex; gap: 10px; }
.cm-score { display: flex; align-items: center; gap: 4px; }
.score-high { color: #2ecc71; } 
.score-mid { color: #f1c40f; }  

.cm-title { font-size: 16px; font-weight: 600; margin: 0 0 5px 0; line-height: 1.2; color: #333; text-decoration: none; }
.cm-meta { font-size: 12px; color: #666; margin-bottom: 8px; }

.cm-watchlist-btn { width: 100%; margin-top: auto; }
.wp_ulike_btn {
    background: #fff !important; border: 1px solid #333 !important; border-radius: 20px !important;
    color: #333 !important; width: 100%; padding: 5px 0 !important; text-align: center;
    font-weight: 600; box-shadow: none !important;
}
.wp_ulike_btn:hover { background: #f0f0f0 !important; }
