﻿.floating-labels .field-show-floating-label .field-label,
.floating-labels .field-static-floating-label .field-label {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    z-index: 3;
}

    .floating-labels .field-show-floating-label .field-label.required,
    .floating-labels .field-static-floating-label .field-label.required {
        background: transparent url(../../images/icons/required.png) no-repeat right;
        color: #b94a48;
        padding-right: 13px;
    }

.floating-labels .field-show-floating-label .field-input,
.floating-labels .field-static-floating-label .field-input,
.floating-labels .field-static-floating-label .field-time,
.floating-labels .field-static-floating-label .field-date {
    padding-top: 1.5em;
    padding-bottom: 0.35714em;
}

.floating-labels .field-label,
.floating-labels .field-input {
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.floating-labels .field {
    width: 100%;
    float: left;
    padding: 0.42857em 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.floating-labels .field-input-wrapper {
    position: relative;
}

    .floating-labels .field-input-wrapper.field-border {
        border-color: #d9d9d9;
        border-width: 1px;
        border-style: solid;
        border-radius: 5px;
    }

    .floating-labels .field-input-wrapper.readonly,
    .floating-labels .field-time-picker > .field-input-wrapper.readonly > .field-date,
    .floating-labels .field-time-picker > .field-input-wrapper.readonly > .field-time {
        background-color: #eeeeee;
    }

.floating-labels .field-label {
    font-size: 0.88em;
    font-weight: normal;
    position: absolute;
    top: 0;
    width: auto;
    margin-top: 0.42857em;
    margin-left: 1px;
    padding: 0 0.91667em;
    z-index: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    pointer-events: none;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    opacity: 0;
    color: #737373;
    display: block;
    text-align: left;
    margin: 0.5em 0;
    overflow: hidden;
    max-width: calc(100% - 7px);
}

.floating-labels .field-input {
    background-color: white;
    color: #333333;
    border-color: #d9d9d9;
    border-width: 1px;
    border-style: solid;
    background-clip: padding-box;
    border-radius: 5px;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 0.92857em 0.78571em;
    word-break: normal;
    line-height: inherit;
}

    .floating-labels .field-input[disabled],
    .floating-labels .field-input[readonly],
    .floating-labels .field-input.readonly {
        background-color: #eee;
    }

    .floating-labels .field-input.required::placeholder {
        color: #b94a48;
    }

    .floating-labels .field-input:focus {
        outline: none;
        border-color: #64b0f2;
        -webkit-box-shadow: 0 0 0 1px #64b0f2;
        box-shadow: 0 0 0 1px #64b0f2;
    }


    .floating-labels .field-input.datePickerInput {
        display: inline-block;
        width: 100% !important;
        padding-right: 30px;
    }

/* Collapse the flatpickr wrap div from layout so the calendar trigger
   can be absolutely positioned within .field-input-wrapper. The wrap
   div is added by flatpickr's wrap-mode and otherwise stacks the
   trigger below the input as a block-level child. */
.floating-labels .field-input-wrapper > .flatpickr {
    display: contents;
}

.floating-labels .flatpickr-trigger,
.floating-labels .ui-datepicker-trigger {
    position: absolute;
    top: 12px;
    right: 7px;
}

/* When the underlying date input is readonly, the input and the calendar
   trigger should look and behave inert. flatpickrUtil.setEnabled also
   sets clickOpens: false, so this is the visual half of that contract
   and a defensive guard for trigger clicks that bypass clickOpens. */
.flatpickr > .flatpickr-input[readonly] {
    cursor: default;
}
.flatpickr > .flatpickr-input[readonly] ~ .flatpickr-trigger {
    cursor: default;
    pointer-events: none;
}
.flatpickr > .flatpickr-input[readonly] ~ .flatpickr-trigger img {
    cursor: default;
    pointer-events: none;
    opacity: 0.4;
}

.floating-labels .field-input-select {
    padding-right: 2.07143em;
    white-space: nowrap;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-font-smoothing: inherit;
    background: transparent;
    cursor: pointer;
    position: relative;
    z-index: 2;
}

    .floating-labels .field-input-select[disabled] {
        cursor: default;
    }

.floating-labels .field-caret {
    border-left: 1px rgba(179,179,179,0.5) solid;
    display: block;
    width: 2.14286em;
    height: 43%;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    text-align: center;
    color: #919191;
    cursor: pointer;
    z-index: 1;
}

.floating-labels select.field-input[disabled] + .field-caret {
    cursor: default;
}

.floating-labels .field-time-picker > .field-input-wrapper {
    border-color: #d9d9d9;
    background-clip: padding-box;
    border-radius: 5px;
    border-style: solid;
    border-width: 1px;
    white-space: nowrap;
    overflow: hidden;
}

    .floating-labels .field-time-picker > .field-input-wrapper.input-validation-error {
        border: 1px solid #e80c4d !important;
    }

    .floating-labels .field-time-picker > .field-input-wrapper > .field-time {
        padding-top: 1.5em;
        padding-bottom: .35714em;
        width: 110px !important;
        border-left: 0;
        border-right: 0;
        border-top: 0;
        padding-right: 0;
        border-bottom: 0;
        padding-left: 0.78571em;
    }

    .floating-labels .field-time-picker > .field-input-wrapper > .field-date {
        padding-top: 1.5em;
        padding-bottom: .35714em;
        width: 120px !important;
        border-left: 0;
        border-right: 0;
        border-top: 0;
        border-bottom: 0;
        padding-left: 0.92857em;
    }

    .floating-labels .field-time-picker > .field-input-wrapper > .ui-datepicker-trigger {
        left: 98px;
        right: unset;
        top: 25px;
    }

    .floating-labels .field-time-picker > .field-input-wrapper > .field-time.input-validation-error {
        border-right: none !important;
    }

    .floating-labels .field-time-picker > .field-input-wrapper > .field-date.input-validation-error {
        border-left: none !important;
    }

.floating-labels .list-horizontal > .list-item {
    display: inline-block;
    margin-top: 5px;
    margin-right: 5px;
}

    .floating-labels .list-horizontal > .list-item > label,
    .floating-labels .list-vertical > .list-item > label {
        font-weight: normal;
    }

        .floating-labels .list-vertical > .list-item > input[type="radio"] + label,
        .floating-labels .list-vertical > .list-item > label + input[type="radio"],
        .floating-labels .list-horizontal > .list-item > input[type="radio"] + label,
        .floating-labels .list-horizontal > .list-item > label + input[type="radio"] {
            margin-left: 3px;
        }

.floating-labels .list-vertical > .list-item {
    display: block;
    margin-top: 3px;
}

    .floating-labels .list-vertical > .list-item:first-child {
        display: block;
        margin-top: 5px;
    }
