        /* Video Loading Spinner */
        .video-loading {
            display: none;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 10;
        }

        .video-loading .spinner {
            width: 60px;
            height: 60px;
            border: 4px solid rgba(255, 255, 255, 0.2);
            border-top-color: var(--color-white);
            border-radius: 50%;
            animation: spin 1s linear infinite;
        }

        @keyframes spin {
            to {
                transform: rotate(360deg);
            }
        }

        /* Video Modal Improvements */
        .video-modal__body {
            position: relative;
            background: var(--color-black-short);
            aspect-ratio: 16/9;
            width: 100%;
        }

        .video-modal__body video,
        .video-modal__body iframe {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
        }

        /* Video Card Hover Effect */
        .video-card {
            cursor: pointer;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .video-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 30px var(--overlay-black-30);
        }

        .video-card__thumbnail {
            position: relative;
            overflow: hidden;
            aspect-ratio: 16/9;
        }

        .video-card__thumbnail img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.3s ease;
        }

        .video-card:hover .video-card__thumbnail img {
            transform: scale(1.05);
        }

        .video-card__overlay {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: var(--overlay-black-40);
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .video-card:hover .video-card__overlay {
            opacity: 1;
        }

        .video-card__play {
            width: 60px;
            height: 60px;
            background: rgba(255, 255, 255, 0.9);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s ease;
        }

        .video-card__play svg {
            width: 30px;
            height: 30px;
            color: #333;
            margin-right: -3px;
        }

        .video-card:hover .video-card__play {
            transform: scale(1.1);
        }

        /* Video Type Badge */
        .video-card__badge {
            position: absolute;
            top: 10px;
            right: 10px;
            padding: 4px 10px;
            border-radius: 4px;
            font-size: 12px;
            font-weight: 500;
            z-index: 2;
        }

        .video-card__badge--upload {
            background: rgba(76, 175, 80, 0.9);
            color: white;
        }

        .video-card__badge--link {
            background: rgba(33, 150, 243, 0.9);
            color: white;
        }

        /* Modal Styles */
        .video-modal {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 9999;
            align-items: center;
            justify-content: center;
        }

        .video-modal--active {
            display: flex;
        }

        .video-modal__backdrop {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: var(--overlay-black-90);
        }

        .video-modal__container {
            position: relative;
            width: 90%;
            max-width: 900px;
            background: #1a1a1a;
            border-radius: 12px;
            overflow: hidden;
            box-shadow: 0 20px 60px var(--overlay-black-50);
        }

        .video-modal__header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 16px 20px;
            background: #222;
            border-bottom: 1px solid #333;
        }

        .video-modal__title {
            color: var(--color-white);
            font-size: 18px;
            font-weight: 600;
            margin: 0;
        }

        .video-modal__close {
            width: 36px;
            height: 36px;
            border: none;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background 0.3s ease;
        }

        .video-modal__close:hover {
            background: rgba(255, 255, 255, 0.2);
        }

        .video-modal__close svg {
            width: 20px;
            height: 20px;
            color: var(--color-white);
        }

        /* Error State */
        .video-error {
            display: none;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            text-align: center;
            color: var(--color-white);
        }

        .video-error svg {
            width: 60px;
            height: 60px;
            color: #f44336;
            margin-bottom: 15px;
        }

        .video-error p {
            font-size: 16px;
            color: #ccc;
        }

        /* Video Modal Info Section */
        .video-modal__info {
            padding: 1.25rem 1.5rem;
            border-top: 1px solid rgba(255, 255, 255, 0.08);
        }

        .video-modal__meta {
            display: flex;
            gap: 1rem;
            margin-bottom: 0.75rem;
            font-size: 0.8rem;
            color: rgba(255, 255, 255, 0.5);
        }

        .video-modal__description {
            color: rgba(255, 255, 255, 0.7);
            line-height: 1.7;
            font-size: 0.9rem;
            max-height: 150px;
            overflow-y: auto;
            padding-left: 0.5rem;
        }

        .video-modal__description::-webkit-scrollbar {
            width: 4px;
        }

        .video-modal__description::-webkit-scrollbar-track {
            background: var(--overlay-white-05);
            border-radius: 4px;
        }

        .video-modal__description::-webkit-scrollbar-thumb {
            background: var(--color-primary, #c8a45a);
            border-radius: 4px;
        }
