.tv {
    overflow: hidden;
    border-radius: 15px;
    transition: transform 0.5s cubic-bezier(.95, -0.25, .2, 1.43);
    min-width: 400px;
    min-height: 250px;
}
.tv iframe{
    width: 100% !important;
    height: 100% !important;
}
.tv_controls{
    z-index:10;
    height:30px;
    transition:all 0.3s
}
.tv:hover .tv_controls {

    background-image: linear-gradient(0deg, #0d0d0d00, rgba(0, 0, 0, 0.7), rgb(0, 0, 0));
}
.tv .tv_controls .iconify{
    opacity: 0 ;
}
.tv:hover .tv_controls .iconify{
    opacity: 1 ;
}

.carousel-item img {
    animation: 1s zoom_out ease-in-out forwards;
}

.carousel-item .title {
    animation: 1s slide_up cubic-bezier(.52, -0.34, .55, 1.57) forwards;
}

.tv_carousel {
    cursor: grab;
}

.tv_full_screen {
    left: 0 !important;
    right: 0 !important;
    bottom: 1vh !important;
    top: 1vh !important;
    width: 98vw !important;
    height: 98vh !important;
    margin: auto!important;
}

.tv_logo {
    height: 30px;
    object-fit: contain;
}

.tv_full_screen .tv_logo {
    height: 50px;
}

.tv_loader {
    position: absolute;
    top: 0;
    height: 2px;
    width: 0px;
    z-index: 10;
    background-color: white;
}

.tv_float {
    animation: shake 0.82s cubic-bezier(.36, .07, .19, .97) both;
}
.twitter-tweet{
    height: 100%;
    margin: auto
}

@keyframes load {
    0% {
        width: 0px;
    }
    100% {
        width: 100%;
    }
}

@keyframes zoom_out {
    0% {
        transform: scale(1.2);
    }
    100% {
        transform: scale(1);
    }
}

@keyframes slide_up {
    0% {
        transform: translateY(50px);
    }
    100% {
        transform: translateY(0px);
    }
}