/* Start CSS */

/* Start Step status bar */
.step{
    display: none;
}
.step.current-step{
    display: block;
}
.statusBar.text>*{
    display: inline-block;
    text-align: center;
    margin-left: 2px;
}
.soa-header .statusBar>*{
    width: 19%;
}
.statusBar .box.active, 
.statusBar .box.completed{
    background: #004B87;
    font-weight: bold;
    color: #004B87;
}
.statusBar.text>*>p{
    font-weight: bold;
    color: #d8d8d8;
    font-size: 12px;
}
.statusBar.text>.completed>p,
.statusBar.text>.active-step>p{
    color: #004B87;
}
button[data-go-to]{
    min-width: unset;
}
button[data-go-to][disabled],
button:active[data-go-to][disabled]{
    background-color: #d8d8d8;
    color: #595959;
    border: unset;
    cursor: unset;
}

@media only screen and (max-width:767.98px){
    .statusBar .box{
        /* width: 11.6%; */
        width: 15.3%;
        margin-right: 5px;
    }
    .statusBar .box.active{
        width: 30%;
    }
    .overview-step p, 
    .applicant-step p, 
    .opt-out-step p, 
    .listing-step p, 
    .review-step p, 
    .confirmation-step p{
        display: none;
    }
    .overview-step.active-step p, 
    .applicant-step.active-step p, 
    .opt-out-step.active-step p, 
    .listing-step.active-step p, 
    .review-step.active-step p, 
    .confirmation-step.active-step p{
        display: inline-block;
    }
    .statusBar.text button{
        /* width: 11.6%; */
        width: 15.3%;
        margin-right: 3px;
    }
    .statusBar.text button.active-step{
        width: 30%;
    }
    .statusBar.text>*{
        display: inline-block;
        text-align: center;
        margin-left: 0px;
    }
    .file-entry{
        max-width:unset
    }
}
/* End step status bar */

/* Start form sections */
    .step{
        max-width: 960px;
        padding: 0 15px;
    }
    .prohib-step>label, 
    .listing-step>label{
        padding-top: 50px;
    }
    .check-required{
        display: none;
        padding-left: 15px; 
    }
    .check-required.checked,
    .check-required.enabled,    
    .child-application-fields.check-required.checked.enabled{
        display: block;
    }
    .child-application-fields.check-required.checked,
    .child-application-fields.check-required{
        display: none;
    }
    .check-required .required-field-instructions{
        padding-top: 32px;
    }
    .red{
        color: #e71921;
    }
    .listing-order h3{
        padding-top: 24px;
    }
    .prohib-step h3, 
    .listing-step h3{
        padding-top: 50px;
        color: #000000;
    }
    .sub-data{
        padding-left: 28px;
    }
    .remove-entry-button,
    .add-entry-btn{
        color: #004b87;
        font-size: 14px;
        font-weight: bold;
    }
    .remove-entry-button{
        padding: 0;
    }
    .entry-header{
        padding-top: 20px;
        display: flex;
        justify-content: space-between;
    }
    .remove-entry-button::before{
        content: "";
        display: inline-block;
        background-image: url(https://www.usps.com/assets/images/Delete.svg);
        background-repeat: no-repeat;
        height: 10px;
        width: 10px;
        background-size: 10px 10px;
        position: relative;
        background-position: 0px 0px;
        top: 0px;
        margin-right: 4px;
    }
    .add-entry-btn::before{
        content: "";
        display: inline-block;
        background-image: url(https://www.usps.com/assets/images/Plus.svg);
        background-repeat: no-repeat;
        height: 10px;
        width: 10px;
        background-size: 10px 10px;
        position: relative;
        background-position: 0px 0px;
        top: 0px;
        margin-right: 4px;
    }
    .inline-child-add-container .add-btn{
        padding: 24px 0;
        text-decoration: underline;
    }
    .inline-child-add-container .add-entry-btn[disabled][data-enable-children]{
        color:#999999;
    }
    .inline-child-add-container .add-entry-btn[disabled][data-enable-children]::before{
        background-image: url(https://www.usps.com/assets/images/PlusDisabled.svg);
    }
    .entry .input-form{
        padding-left: 0;
        padding-right: 0;
    }
    .disabled-fields .sub-data{
        opacity: 50%;
    }
    .disabled-fields input[type="text"],
    .disabled-fields input[type="file"],
    .disabled-fields select,
    .disabled-fields button.btn-primary.button--white{
        border-color: #999999;
        color: #999;
    }
    .disabled-fields input[type="text"]:hover,
    .disabled-fields .file-upload>input[type="file"]:hover,
    .disabled-fields select:hover,
    .disabled-fields button.btn-primary.button--white:hover{
        cursor: default;
    }
    .disabled-fields button.btn-primary.button--white{    
        background: #ededed;
    }
    .listing-step .add-entry-btn{
        padding-top: 32px;
        padding-left: 24px;
    }
    .disabled-fields.sub-data, 
    .step-sub-fields.disabled-fields,
    .child-application-fields.disabled-fields{
        opacity: 50%;
    }
    .step-sub-fields.disabled-fields .disabled-fields.sub-data{
        opacity:unset;
    }

    @media only screen and (max-width:767.98px){
        .remove-entry-button{
            float: none;
            margin-top: 0px;
        }
        .check-required{
            padding-left: 0px;
        }
    }

    /* Children information */
    .children-information-section{  
        padding: 48px 0;
    }
    .children-information-section .control-container>button{
        display: block;
        margin-top: 24px;
    }
    .children-information-section>.checkbox-component{
        margin-top: 32px;
    }
    .children-information-section .sub-data{
        padding-left: 7.5px;
    }
    .children-information-section .child-table{
        padding: 12px 22px 0;
    }
    .child-required-message{
        padding-top: 24px;
    }
    .entry.child-info+.entry.child-info .remove-entry-button{
        display: block;
    }
    .prohibitory-order,
    .listing-order{
        padding-top: 48px;
    }
    .prohibitory-order h2>span{
        font-weight: normal;
        font-style: italic;
    }
    .prohibitory-order h2+p{
        padding-bottom: 32px;
    }
    .step-sub-fields{
        padding-left: 15px;
    }
    .step.prohib-step>h2>span{
        font-weight: normal;
    }
    .no-child-row{
        padding: 32px 15px 0;
    }

    /* Child table */
    .child-table {
        padding: 12px 12px 0;
    }
    .child-table>.row{
        background-color: #ededed;
        border-bottom: solid 1px #999999;
        padding:8px;
    }
    .child-table>.row:nth-of-type(even){
        background-color: #ffffff;
    }
    .child-table>.row:first-of-type{
        border-bottom: solid 2px #3573b1;
        font-weight: bold;
    }
    .child-table .record>div:nth-child(4){
        text-align: end;
    }
    .child-table label{
        padding: 0;
    }
    .inline-children-inputs{
        display: none;
    }
    .inline-child-add-container.enabled .inline-children-inputs{
        display: block;
    }
    .child-table button.remove-entry-button{
        margin-top: 0;
    }
    .children-information-section.disabled-fields,
    .listing-children-info.disabled-fields{
        opacity: 50%;
    }
    .disabled-fields .listing-children-info.disabled-fields{
        opacity: unset;
    }

    @media only screen and (max-width:767.98px){

        .child-table{
            width: 98%;
            padding-top: 8px;
        }
        .child-table div[role="columnheader"]{
            display: none;
        }
        .child-table div[role="columnheader"]:first-child{
            display: block;
            width: 100%;
            margin-left: -24px;
            padding-left: 26px;
        }
        .child-table div[role="columnheader"]:first-child .checkbox-component::after{
            content: "Select all";
            font-weight: bold;
            padding-left: 32px;
            font-size: 16px;
            line-height: 20px;
        }
        .child-table[data-table-type="radio"] div.record.row:first-child{
            padding: 0;
        }
        .child-table div[role="cell"]{
            width: 100%;
            padding-top: 12px;
            margin-left: 18px;
        }
        .child-table div[role="cell"]:first-child{
            width: 24px;
            margin-left: -24px;
            position: absolute;
            padding-left: 26px;
            padding-top: 14px;
        } 
        .child-table div[role="cell"]:nth-child(2)::before{
            content: "Child Name: ";
            font-weight: bold;
            font-size: 16px;
            line-height: 20px;
        }
        .child-table div[role="cell"]:nth-child(3)::before{
            content: "Child Birthday: ";
            font-weight: bold;
            font-size: 16px;
            line-height: 20px;
        }
        .prohibitory-order .container-fluid, .listing-order .container-fluid{
            min-width: unset;
        }
        .file-input-container{
            text-align: center;
        }
    }
    /* End child table */

    .entry-list-container .entry.child-info:first-of-type .remove-entry-button{
        display: none;
    }
    .upload-mailpiece-section>ul{
        padding-left: 20px;
        padding-top: 18px;
    }
    .upload-mailpiece-section>ul>li{
        font-size: 16px;
    }

/* End form sections */



/* Start Overview */

.soa-overview-section-indent{
    padding-left: 30px;
}

.soa-overview h2, .soa-overview h3, .soa-overview h4{
    padding-top: 30px;
}

.soa-overview h2{
    font-size: 22px;
}

.soa-overview h3{
    font-size: 16px;
}

.soa-overview .button-wrapper{
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 30px;
}

/*End Overview */


/* Start Review & Authorization */
.soa-section-indent {
    padding-left: 20px;
}

.soa-review .gray-box .row, .soa-confirmation .gray-box .row{
    padding-top: 10px;
}

.soa-review h2, .soa-confirmation h2{
    padding-top: 40px;
}

.soa-review .success-container, .soa-confirmation .success-container{
    display: inline;
    padding-left: 15px;
}

.soa-review h3, .soa-confirmation h3{
    display: inline-block;
    padding-top: 20px;
}

.soa-review .input-form{
    padding-left: 0;
    padding-right: 0;
}

.soa-review h2, .soa-review h3, .soa-review h4, .soa-confirmation h2, .soa-confirmation h3, .soa-confirmation h4{
    color: #000000;
}

.mobile-label-hide{
    display: flex;
}

.mobile-label-show{
    display: none;
}

.edit-btn{
    color: #004b87;
    font-size: 14px;
    font-weight: bold;
    padding-top: 20px;
}

.soa-review .gray-box-wrapper, .soa-confirmation .gray-box-wrapper{
    background-color: #f7f7f7;
}

.soa-review .gray-box.gb-column, .soa-confirmation .gray-box.gb-column{
    padding-top: 0px;
}

.soa-review .horizontal-line-container, .soa-confirmation .horizontal-line-container{
    padding-top: 10px;
}

.addressee-reason-display{
    display: none;
}

.child-reason-display{
    display: block;
}

.deceased-reason-display{
    display: none;
}

@media only screen and (max-width:767.98px){
    .mobile-label-hide{
        display: none;
    }

    .mobile-label-show{
        display: block;
    }

    .soa-review .mobile-label-show, .soa-confirmation .mobile-label-show{
        padding-top: 10px;
        padding-bottom: 10px;
    }
}

/* End Review & Authorization */







/* Start JS styling */
div.check-required{
    display: none;
}
.child-count-scope,
.entry-list-container{
    counter-reset: table-counter;
}
.child-table .record:not(:first-of-type){
    counter-increment: table-counter;
}
.children-count::before{
    counter-increment: table-counter;
    content: counter(table-counter);
}

/* Start File input */
.file-upload{
    position: relative;
    width: 100%;
    height: 200px;
    background-color: #f7f7f7;
    border: dashed 2px #d8d8d8;
    border-radius: 10px;
    margin-top: 24px;
}
.file-input-container{
    padding: 60px 0;
    margin: -2px;
    border-radius: 10px;
}
.file-input-container>img,
.file-input-container>p{
    margin: 0 auto;
    display: block;
    width: fit-content;
    color: #999999;
}
.file-input-image{
    padding-bottom: 10px;
}
.file-upload>input{
    position: absolute;
    top: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
}
.file-upload>input[type="file"]:hover{
    cursor: pointer;
}
input:focus+.file-input-container {
    background-color: #ededed;
    max-height: calc(100% + 4px);
    border-radius: 10px;
    box-shadow: 0 0 0 0.2rem rgb(102 139 232);
}
.required-field.error .file-input-container{
    box-shadow: 0 0 0 0.2rem #e71921;
}
.dynamic-file-container .error-message{
    padding-top: 24px;
}
.file-input-container>p.file-input-header{
    color: #004B87;
    font-weight: bold;
}
[data-file-list]{
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    margin-top: 24px;
}
.file-entry{
    border: solid 1px #000000;
    border-radius: 5px;
    padding: 12px;
    max-width: 48%;
    /* flex-grow: 1; */
    flex-basis: 48%;
}
.file-name,
.file-size{
    font-size: 14px;
}
.file-size{
    color: #999999;
}
.file-controls{
    display: flex;
    vertical-align: middle;
}
.file-remove{
    color: #3573b1;
    font-weight: bold;
    font-size: 14px;
}

@media only screen and (max-width:767.98px) {
    .file-entry{
        max-width: unset;
        flex-basis: 100%;
    }
}
/* End File input */

/* End JS styling */
