/**
 * Category Video — Video grid CSS
 */
        .sh-video__card { background: var(--pi-bg-card, #ffffff); border-radius: 1rem; box-shadow: 0 1px 2px rgba(0,0,0,0.05); border: 1px solid var(--pi-border-light, #f1f5f9); overflow: hidden; transition: all 0.3s; }
        .sh-video__card:hover { box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1); }
        .sh-video__thumb { display: block; position: relative; aspect-ratio: 16/9; overflow: hidden; }
        .sh-video__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
        .sh-video__card:hover .sh-video__thumb img { transform: scale(1.05); }
        .sh-video__play-overlay { position: absolute; inset: 0; background: rgba(0,0,0,0.2); display: flex; align-items: center; justify-content: center; transition: background 0.3s; }
        .sh-video__card:hover .sh-video__play-overlay { background: rgba(0,0,0,0.4); }
        .sh-video__play-btn { width: 4rem; height: 4rem; background: #dc2626; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 20px 25px -5px rgba(0,0,0,0.25); transition: transform 0.3s; }
        .sh-video__card:hover .sh-video__play-btn { transform: scale(1.1); }
        .sh-video__play-btn svg { width: 1.75rem; height: 1.75rem; color: #fff; margin-left: 0.25rem; }
        .sh-video__badge { position: absolute; bottom: 0.5rem; right: 0.5rem; background: rgba(0,0,0,0.8); color: #fff; font-size: 0.625rem; font-weight: 700; padding: 0.125rem 0.5rem; border-radius: 0.25rem; }
        .sh-video__info { padding: 1.25rem; }
        .sh-video__title { font-weight: 700; color: var(--pi-text, #0f172a); font-size: 0.875rem; line-height: 1.4; margin-bottom: 0.5rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; transition: color 0.3s; }
        .sh-video__title a { color: inherit; text-decoration: none; }
        .sh-video__card:hover .sh-video__title { color: var(--pi-primary, #007d3d); }
        .sh-video__meta { display: flex; align-items: center; justify-content: space-between; }
        .sh-video__date { font-size: 0.75rem; color: var(--pi-text-muted, #94a3b8); }
        .sh-video__link { display: inline-flex; align-items: center; gap: 0.25rem; font-size: 0.75rem; font-weight: 600; color: #dc2626; text-decoration: none; transition: color 0.3s; }
        .sh-video__link:hover { color: #b91c1c; }
        .sh-video__link svg { width: 0.875rem; height: 0.875rem; }
        .sh-video__yt-btn { display: inline-flex; align-items: center; gap: 0.5rem; margin-top: 1.5rem; padding: 0.75rem 1.5rem; background: #dc2626; color: #fff; border-radius: 0.75rem; font-weight: 600; text-decoration: none; box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1); transition: background 0.3s; }
        .sh-video__yt-btn:hover { background: #b91c1c; }
        .sh-video__yt-btn svg { width: 1.25rem; height: 1.25rem; }
        /* Dark Mode */
        .dark .sh-video__card { background: var(--pi-bg-card, #1e293b); border-color: var(--pi-border, #334155); }
        .dark .sh-video__title { color: var(--pi-text, #f1f5f9); }
