.upload {
    position: relative;
    display: inline-flex;
    input[type="file"] {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        outline: none;
        cursor: pointer;
        z-index: -1;
    }
    .upload-draggable {
        cursor: pointer;
        padding: 0.25em;
        border: 1px dashed $grey-light;
        border-radius: $radius-large;
        &:hover,
        &.is-hovered {
            @each $name, $pair in $file-colors {
                $color: nth($pair, 1);
                &.is-#{$name} {
                    border-color: $color;
                    background: rgba($color, 0.05);
                }
            }
        }
    }
    &.is-expanded {
        width: 100%;
        .upload-draggable {
            width: 100%;
        }
    }
    &.is-disabled {
        opacity: 0.5;
        cursor: not-allowed;
    }
    &.is-rounded {
        border-radius: $radius-rounded;

        .file-name {
            border-top-right-radius: $radius-rounded;
            border-bottom-right-radius: $radius-rounded;
        }
    }
}
