:host, .uploader {
    display: grid;
}

.uploader {
    margin: 0 auto;
    max-width: 600px;
    width: 100%;
}

.uploader label {
    width: 100%;
    padding: 1.5rem;
    text-align: center;
    background: rgba(var(--app-primary_0), 1);
    border-radius: var(--border-radius_md);
    border: 3px solid rgba(var(--app-gray_100), 1);
    transition: all 0.2s ease;
    user-select: none;
}

.uploader label:hover {
    border-color: rgba(var(--app-primary_500), 1);
}

.uploader label.hover {
    border: 3px solid rgba(var(--app-primary_500), 1);
    box-shadow: inset 0 0 0 6px #eee;
}

.uploader label.hover #start i.fa {
    transform: scale(0.8);
    opacity: 0.3;
}

.uploader #start {
    float: left;
    clear: both;
    width: 100%;
}

.uploader #start.hidden {
    display: none;
}

.uploader #start i.fa {
    font-size: 50px;
    margin-bottom: 1rem;
    transition: all 0.2s ease-in-out;
}

.uploader #response {
    float: left;
    clear: both;
    width: 100%;
}

.uploader #response.hidden {
    display: none;
}

.uploader #response #messages {
    margin-bottom: 0.5rem;
}

.uploader #file-image {
    display: inline;
    margin: 0 auto 0.5rem auto;
    width: auto;
    height: auto;
    max-width: 180px;
}

.uploader #file-image.hidden {
    display: none;
}

.uploader input[type=file] {
    display: none;
}

.uploader div {
    margin: 0 0 0.5rem 0;
    color: #5f6982;
}