html {
    scroll-behavior: smooth;
}
body {
    min-height: 100vh;
    display: grid;
    grid-template-rows: auto 1fr auto;
}

#iconCache {
    display:none;
}
input:invalid {
    box-shadow: none;
/*    border-width: 0.25rem;
    border-color: #b50909;
    borer-style: solid;
*/
}

.usa-logo .usa-logo__text::before{
    background-image: url(/img/logo.png);
    height: 1.5rem;
    width: 1.5rem;
    content: "";
    background-repeat: no-repeat;
    background-size: 100% auto;
    display: inline-block;
    margin-left: 2px;
    margin-right: 0.25rem;
    position:relative;
    top: 2px;
}

.underline {
    
    text-decoration: 1px underline #dee2e6;
}
.corner-border {
    border: 1px solid;
    border-color: #DDDDDD;
    box-shadow: 3px 3px 5px #BBBBBB;
    padding: 10px;
}
.input-max-width {
    /*    max-width: 400px;*/
    width: 100% !important;
}
.inlineBlock {
    display: inline;
/*    display: inline-block;
 */
}
.normalBSBorder {
    border: 1px solid #ced4da;
}
.errorBorder {
    border: 1px solid red;
}
#formCheckmark{
    position: relative;
    width: 16px;
    float: left;
    left: -20px;
}
.val::before {
    position: relative;
    content: "";
    background-image: url(/uswds/img/correct9.svg), linear-gradient(transparent, transparent);
    left: -0.25rem;
    margin-right: 0.75rem;
    width: 2rem;
    height: 1rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1rem;
    display: inline-block;
}

.invalBlank::before {
    position: relative;
    content: "";
    left: -0.25rem;
    margin-right: 0.75rem;
    width: 2rem;
    height: 1rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.25rem;
    display: inline-block;
}
.invalid::before {
    position: relative;
    content: "";
    background-image: url(/img/close-red-90-cust.png), linear-gradient(transparent, transparent);
    left: -0.25rem;
    margin-right: 0.75rem;
    width: 2rem;
    height: 1rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 0.85rem;
    display: inline-block;
}

.downloadSuccess::before {
    position: relative;
    content: "";
    background-image: url(/img/correct9-success.png), linear-gradient(transparent, transparent);
    left: 0rem;
    margin-right: -0.5rem;
    width: 2rem;
    height: 0.7rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 0.8rem;
    display: inline-block;
}

.downloadError::before {
    position: relative;
    content: "";
    background-image: url(/img/close-red-90-cust.png), linear-gradient(transparent, transparent);
    left: 0rem;
    margin-right: -0.5rem;
    width: 2rem;
    height: 0.7rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 0.8rem;
    display: inline-block;
}
#downloadPrevTemplate, #previewPrevTemplate {
    padding-right: 0.25rem;
    padding-left: 0.25rem;
}
.max-width-400 {
    max-width: 400px;
}
.max-width-500 {
    max-width: 500px;
}
.max-width-900 {
    max-width: 900px;
}
.max-width-90 {
    max-width: 90%;
}
.width-100 {
    width: 100% !important;
}

.width-90 {
    width: 90% !important;
}
.shadow-1 {
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1) 
}
.shadow-2 {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1) 
}
.shadow-3 {
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.1) 
}
.gridRows {
    display:grid;

}
.usa-footer__secondary-section a:visited {
    color: #a9aeb1 !important;
}
.usa-footer__secondary-section a:hover {
    color: #f0f0f0 !important;
}

.nowrap {
    white-space: nowrap;
}
.sort::after {
    background-image: url(/img/sort.svg);
    background-repeat: no-repeat;
    background-size: 95% auto;
    display: inline-block;
    content: "";
    height: 1.4rem;
    width: 0.7rem;
    position: relative;
    top: 0.5rem;
    margin-left: 0.5rem;
}
.sort:hover::after, .sortedUp:hover::after, .sortedDown:hover::after {
    background-image: url(/img/sort-alt.png);
    background-repeat: no-repeat;
    background-size: 95% auto;
    display: inline-block;
    content: "";
    height: 1.4rem;
    width: 0.7rem;
    position: relative;
    top: 0.5rem;
    margin-left: 0.5rem;
}

.sortedUp::after {
    background-image: url(/img/sorted-up.png);
    background-repeat: no-repeat;
    background-size: 95% auto;
    display: inline-block;
    content: "";
    height: 1.4rem;
    width: 0.7rem;
    position: relative;
    top: 0.5rem;
    margin-left: 0.5rem;
}

.sortedDown::after {
    background-image: url(/img/sorted-down.png);
    background-repeat: no-repeat;
    background-size: 95% auto;
    display: inline-block;
    content: "";
    height: 1.4rem;
    width: 0.7rem;
    position: relative;
    top: 0.5rem;
    margin-left: 0.5rem;
}

.sort:hover::after {
    cursor: pointer;
}
.sortedUp:hover::after {
    cursor: pointer;
}
.sortedDown:hover::after {
    cursor: pointer;
}
