#artPlayCarousel {
width:100%;
height:100vh;
position:relative;
overflow:hidden;
}

/* SLIDE */

.slide{
position:absolute;
top:0;
left:0;

width:100%;
height:100%;

display:flex;
align-items:center;
justify-content:center;

opacity:0;
transition:opacity 1.5s ease-in-out;
}

.slide.active{
opacity:1;
z-index:2;
}

/* BLUR BACKGROUND */

.slide .bg{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;

background-size:cover;
background-position:center;

filter:blur(40px);
transform:scale(1.2);
}

/* MAIN IMAGE */

.main-image{
position:relative;

max-width:100%;
max-height:100%;

object-fit:contain;

z-index:2;
}

/* CAPTION */

.caption{
position:absolute;
left:40px;
bottom:40px;

color:white;

z-index:3;

max-width:40%;

text-shadow:0 3px 10px rgba(0,0,0,0.7);
}

.caption h3{
margin:0;
font-size:32px;
}

.caption p{
margin-top:10px;
font-size:20px;
}








.upload-form-container{

max-width:500px;
margin:auto;
padding:40px;

background:#ffffff;
border-radius:20px;

box-shadow:0 20px 40px rgba(0,0,0,0.1);

font-family:sans-serif;

}

/* INPUTS */

.upload-form-container input,
.upload-form-container textarea{

width:100%;
padding:14px;

border-radius:10px;
border:1px solid #ddd;

margin-bottom:15px;

font-size:16px;
    box-sizing: border-box;

}

.upload-form-container textarea{
min-height:100px;
resize:none;
}

/* FILE DROP */

.file-drop{

position:relative;

border:2px dashed #bbb;
border-radius:15px;

height:220px;
margin-bottom: 20px;

display:flex;
align-items:center;
justify-content:center;

cursor:pointer;

overflow:hidden;

transition:all .3s;

}

.file-drop:hover{
border-color:#333;
}

/* hidden input */

.file-drop input{

position:absolute;
width:100%;
height:100%;

opacity:0;
cursor:pointer;

}

/* text */

.drop-text{

font-size:18px;
color:#777;

z-index:2;

}

/* preview image */

#previewImage{

position:absolute;
width:100%;
height:100%;

object-fit:contain;

opacity:0;

filter:blur(20px);
transform:scale(1.1);

transition:filter .8s ease, opacity .4s ease;

}

/* when image ready */

#previewImage.loaded{

opacity:1;
filter:blur(0);
transform:scale(1);

}

.file-drop.has-image .drop-text{
display:none;
}

/* BUTTON */

#artPlayCarouselUpload button{

width:100%;
padding:15px;

border:none;
border-radius:12px;

background:#111;
color:white;

font-size:18px;

cursor:pointer;

transition:.2s;

}

#artPlayCarouselUpload button:hover{
transform:scale(1.03);
}

#uploadStatus{
margin-top:15px;
font-weight:bold;
}
