﻿:root {
    --input-width-caption: 250px;
    --input-width-text: 250px;
    --input-width-number: 90px;
    --input-width-select-percent-dropdown: 90px;
}

.fieldLineItem {
    display: flex;
    flex-direction: column;
    /*height: 25px;*/
    /*	line-height: 20px;*/
    padding-left: 10px;
    padding-top: 1px;
    margin: 0.8rem 0;
    align-items: start;
    position: relative;
    /*    span
    {
        float: left;
    }*/
    /*    table input {
        text-align: left;
        width: 15px;
    }*/
}

    .fieldLineItem .fieldValue input[type=text], .fieldLineItem .fieldValue textarea {
        width: var(--input-width-text);
    }

    .fieldLineItem .fieldValue input {
        width: var(--input-width-number);
        /*margin-right: 10px;*/
    }

    .fieldLineItem:has(.custom-radio) {
        align-items: start;
    }

.plus-margins {
    margin-top: 3rem;
    margin-bottom: 3rem;
}

select {
    width: var(--input-width-text);
}

.fieldValue.percent-dropdown select {
    width: var(--input-width-select-percent-dropdown);
}

.fieldName {
    margin-bottom: 0.8rem;
    margin-top: 1rem;
    font-size: 1em;
}

.fieldValue, .fieldValue input, .fieldValue select {
    /*font-size: 1.25em;*/
    /*font-size: 1.2em;*/
}

.fieldNameExtended {
    width: 200px;
}

.fieldSecondaryName {
    padding-left: 3px;
    padding-right: 10px;
}

.fieldUnit {
    padding-left: 3px;
    padding-right: 10px;
    text-transform: uppercase;
    margin-left: 10px;
}

.fieldLink {
    padding-left: 10px;
}

.fieldSub {
    margin-right: 5px;
    margin-left: 5px;
    line-height: 2.6rem;
}

.fieldLinkSmall {
    padding-left: 10px;
    font-size: 1.25rem;
}

h5:has(+ .fieldLinkSmall) {
    /*display: inline-block;*/
}

/*h5 {
    display: inline-block;
}*/

.fieldLineItem span:has(>.fieldValue) {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.subsection-grouping .field-group {
    /*background-color: var(--alternate-background-colour);*/
    flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    padding: 1.5rem;
    /*margin-top: 1rem;*/
}

    .subsection-grouping .field-group .fieldName {
        width: unset;
    }

    .subsection-grouping .field-group .field-group-heading {
        display: inline;
        flex-basis: 100%;
        font-weight: 600;
    }

    .subsection-grouping .field-group .fieldLineItem {
        align-items: center;
        margin: 0.5rem;
        flex-grow: 0.25;
        flex-basis: 140px;
        padding: unset;
    }

    .subsection-grouping .field-group[disabled] {
        opacity: 0.3;
    }

        .subsection-grouping .field-group[disabled] * {
            pointer-events: none;
        }

    .subsection-grouping .field-group:not(:first-child) {
        border-top: solid 1px var(--alternate-background-colour);
    }

.fieldNote {
    color: var(--warning-color);
    font-size: 0.85em;
    width: 175px;
}

.washerContainer .fieldLineItem .fieldValue select {
    width: var(--input-width-number);
}

.fieldValue.include-units:has(+ .fieldUnit) input[type=number], .fieldValue.include-units:has(+ .fieldUnit) input[type=decimal], .fieldValue.include-units:has(+ .fieldUnit) select {
    /*    padding-right: 50px;*/
    border-top-right-radius: unset;
    border-bottom-right-radius: unset;
}

.fieldValue.include-units + .fieldUnit {
    /*position: absolute;*/
    z-index: 5;
    /*left: var(--input-width-number);*/
    /*width: 60px;*/
    overflow: visible;
    display: inline-block;
    padding: unset;
    margin: unset;
    border: solid #d3d3d3 1px;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
    background-color: lightgrey;
    padding: 0.8rem;
    text-align: center;
    box-sizing: border-box;
    transition: outline ease-in 0.5s, border ease-in 0.5s;
    height: 4rem;
    line-height: 2.3rem;
    white-space: nowrap;
}

.fieldValue.include-units:has(input[type=number]:focus) + .fieldUnit, .fieldValue.include-units:has(input[type=decimal]:focus) + .fieldUnit, .fieldValue.include-units:has(select:focus) + .fieldUnit {
    transition: box-shadow linear 0.05s;
    box-shadow: 2px -2px 0 1px var(--primary-colour), 2px 2px 0 1px var(--primary-colour);
}

.fieldLineItem > div:has(.fieldValue) {
    display: flex;
    align-items: center;
}

.fieldLineItem:has(.fieldValue>span[disabled="disabled"]) {
    opacity: 0.3;
}

input[type=radio][disabled=disabled] + label {
    opacity: 0.3;
}

.fieldSubLineItem {
    font-size: 0.7em;
    margin-top: 0;
    flex-flow: wrap;
}

    .fieldSubLineItem * {
        display: contents;
    }

@media only screen and (min-width: 1250px) {

    .fieldValue, .fieldValue input, .fieldValue select {
        font-size: 1em;
    }

    .fieldLineItem {
        flex-direction: row;
    }

        .fieldLineItem .fieldName {
            width: var(--input-width-caption);
            display: inline-block;
        }

    .field-group {
        align-items: center;
        width: unset;
        flex-basis: unset;
    }

    .subsection-grouping .field-group .fieldName {
        /*min-width: 135px;*/
    }

    .subsection-grouping .field-group .field-group-heading {
        /*font-weight: unset;*/
        flex-basis: unset;
        width: 250px;
    }

    .subsection-grouping .field-group .fieldName {
        /*width: calc(var(--input-width-caption) - 3rem);*/
    }

    .fieldLineItem {
        flex-grow: unset;
        flex-basis: unset;
        margin-right: 5rem;
        align-items: center;
    }

    .field-group .fieldName {
        /*width: unset;*/
        margin-right: 2rem;
    }

    .output-line-item .fieldName {
        width: unset;
    }

    .load-summary {
        /*width: 50%;*/
    }

    #ContinueButton {
        /*width: 50%;*/
        font-size: unset;
    }

    .field-indent {
        margin-left: 15px;
        margin-right: -15px;
    }

    .fieldSubLineItem {
        margin-top: -15px;
    }
}
