div.cvu-input {
    min-height: 60px;
    height: 60px;
    overflow: hidden;
    width: 100%;
    padding: 0;
    position: relative;
    box-sizing: border-box;
}
div.cvu-input > * {
    display: block;
    float: left;
    overflow: hidden;
    margin: 0px;
    padding: 0px;
}
.cvu-input > i {
    width: 24px;
    height: 24px;
    margin: 16px 8px 24px 0;
    padding: 4px;
    overflow: hidden;
    color: rgba(150, 150, 150, 0.7);
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 22px;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: 'liga';
    float: left;
}
.cvu-input > label {
    color: #000;
    width: 100%;
    height: 16px;
    font-size: 12px;
    vertical-align: top;
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}
.cvu-input > input, .cvu-input > textarea{
    width: 100%;
    height: 32px;
    line-height: 32px;
    box-sizing: border-box;
    font-size: 16px;
    border: none;
    border-top: 1px solid transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    background: transparent;
    color: rgba(0, 0, 0, 1);
    vertical-align: top;
    outline: none;
    box-shadow: none;
    border-radius: 0;
}
.cvu-input > textarea{
    line-height: 1;
}
.cvu-input > span {
    width: 100%;
    height: 24px;
    font-size: 12px;
    line-height: 13px;
    color: rgba(221, 44, 0, 1);
    display: none;
}
div.cvu-input.cvu-input__textarea{
    min-height: 112px;
    padding: 0;
    display: inline-block;
    height: auto;
    margin-bottom: 10px;
}
div.cvu-input.cvu-input__textarea textarea{
    min-height: 72px;
    max-width: calc(100% - 40px);
    min-width: calc(100% - 40px);
}
div.cvu-input.cvu-input__textarea span {
    margin-left: 40px;
}

/* --------------------------------------------------------- ICON-LEFT --------------------------------------------------------- */

.cvu-input__icon-left > label {
    width: calc(100% - 40px);
}
.cvu-input__icon-left > span {
    width: calc(100% - 40px);
}
.cvu-input__icon-left > input, .cvu-input__icon-left > textarea {
    width: calc(100% - 40px);
}
/* --------------------------------------------------------- EMPTY --------------------------------------------------------- */
.cvu-input__empty > label {
    color: rgba(0, 0, 0, 0.5);
    font-size: 16px;
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    margin-top: 24px;
    margin-bottom: -24px;
}
/* --------------------------------------------------------- NOT-EMPTY --------------------------------------------------------- */
.cvu-input__not-empty > label {
    color: rgba(0, 0, 0, 0.5);
}

/* --------------------------------------------------------- INVALID --------------------------------------------------------- */
.cvu-input__invalid > i {
    color: rgba(221, 44, 0, 1);
}
.cvu-input__invalid > label {
    color: rgba(221, 44, 0, 1);
}
.cvu-input__invalid > input, .cvu-input__invalid > textarea {
    border-bottom: 1px solid rgba(221, 44, 0, 1);
}
.cvu-input__invalid > span {
    display: block;
}
/* --------------------------------------------------------- FOCUSED --------------------------------------------------------- */
.cvu-input__focused > i {
    color: rgb(150, 150, 150);
}
.cvu-input__focused > label {
    color: rgb(150, 150, 150);
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
}
.cvu-input__focused > input, .cvu-input__focused > textarea {
    border-bottom: 2px solid rgb(150, 150, 150);
}