input.defconnect-input, a.defconnect, a.defconnect-link{
    width: 100%;
    height: 100%;
}
input.defconnect-input.error {
    border: none;
    outline: 1px solid red!important;
}
.defconnect-msg{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: right;
    align-items: right;
    -ms-flex-pack: justify;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    bottom: 0px;
    z-index: 1030;
    margin:0.3rem 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.defconnect-wait {
    display: none;
    position: absolute;
    top:50%;
    left:50%;
    z-index:1030;
    width: 40px;
    height: 40px;
    --c: linear-gradient(#000 0 0);
    --r1: radial-gradient(farthest-side at bottom,#000 93%,#0000);
    --r2: radial-gradient(farthest-side at top   ,#000 93%,#0000);
    background:
            var(--c) ,
            var(--r1),
            var(--r2),
            var(--c) ,
            var(--r1),
            var(--r2),
            var(--c) ,
            var(--r1),
            var(--r2);
    background-repeat: no-repeat;
    animation: cwait 1s infinite alternate;
}

@keyframes cwait {
    0%,25% {
        background-size: 8px 0,8px 4px,8px 4px,8px 0,8px 4px,8px 4px,8px 0,8px 4px,8px 4px;
        background-position: 0 50%,0 calc(50% - 2px),0 calc(50% + 2px),50% 50%,50% calc(50% - 2px),50% calc(50% + 2px),100% 50%,100% calc(50% - 2px),100% calc(50% + 2px);
    }
    50% {
        background-size: 8px 100%,8px 4px,8px 4px,8px 0,8px 4px,8px 4px,8px 0,8px 4px,8px 4px;
        background-position: 0 50%,0 calc(0% - 2px),0 calc(100% + 2px),50% 50%,50% calc(50% - 2px),50% calc(50% + 2px),100% 50%,100% calc(50% - 2px),100% calc(50% + 2px);
    }
    75% {
        background-size: 8px 100%,8px 4px,8px 4px,8px 100%,8px 4px,8px 4px,8px 0,8px 4px,8px 4px;
        background-position: 0 50%,0 calc(0% - 2px),0 calc(100% + 2px),50% 50%,50% calc(0% - 2px),50% calc(100% + 2px),100% 50%,100% calc(50% - 2px),100% calc(50% + 2px);
    }
    95%,100% {
        background-size: 8px 100%,8px 4px, 8px 4px,8px 100%,8px 4px,8px 4px,8px 100%,8px 4px,8px 4px;
        background-position: 0 50%,0 calc(0% - 2px),0 calc(100% + 2px),50% 50%,50% calc(0% - 2px),50% calc(100% + 2px),100% 50%,100% calc(0% - 2px),100% calc(100% + 2px);
    }
}