﻿.list {
    border: 1px solid #090;
    list-style-type: none;
    margin: 0px;
    background-color: #FFF;
    text-align: left;
}

.modalBackground {
    background-color: Gray;
    filter: alpha(opacity=90);
    opacity: 0.7;
}

.modalTable td {
    padding-left: 0.8em;
}

.verror {
    color: black;
    font: normal 1.0em vedana,sans-serif,arial;
}

.TextIndicator_TextBox3 {
    background-color: Blue;
    color: Yellow;
    font-size: small;
    font-variant: small-caps;
    padding: 2px 3px 2px 3px;
}

.gridInfoLabel {
    font: italic 0.9em arial,serif,garamound;
    background: #ffff99;
    font-weight: bold;
}

.TextIndicator_TextBox3_Handle {
    width: 16px;
    height: 14px;
    background-image: url(images/Question.png);
    overflow: hidden;
    cursor: help;
}

.hoverPanel {
    height: 150px;
    width: 115px;
    scrollbar-darkshadow-color: black;
    scrollbar-3dlight-color: lightgrey;
    scrollbar-arrow-color: black;
    scrollbar-base-color: white;
    scrollbar-face-color: #EAF2FF;
    scrollbar-highlight-color: white;
    scrollbar-shadow-color: lightgrey;
    scrollbar-track-color: white;
}

ul.list li {
    padding: 2px 5px;
}

.lblAudit {
    /*font:normal 0.9em Courier-New;*/
    font: normal 1.0em Courier New, Courier, monospace;
}

.tblAudit td {
    font: bold 0.8em Verdana;
}

.listitem {
    color: #090;
}

.hyperLink {
    text-decoration: none;
    font: normal 0.9em Arial, Helvetica, sans-serif;
}

    .hyperLink:hover {
        text-decoration: underline;
    }
/*
.eToolTip a
{
    text-decoration: none;
}
.eToolTip a:link
{
    text-decoration: none;
}
.eToolTip a:visited
{
    text-decoration: none;
    color: blue;
}
*/
.eToolTip a:link {
    background: aliceblue;
    color: Blue;
}

.eToolTip a:hover {
    color: #fff;
    background: aliceblue;
}

.catHead {
    font: bold 0.9em Verdana,Tahoma,Arial,Trebuchet MS,Sans-Serif,Georgia,Courier,Times New Roman,Serif;
    padding: 0.4em;
}

.loginError {
    font: italic 0.8em Arial;
    color: Red;
}

.hoverlistitem {
    border: solid 1px steelblue;
    background-color: #CCFFFF;
    font: normal 0.7em Helvetica, sans-serif;
    color: #000000;
}

.list2 {
    margin: 0px !important;
    background-color: #FFFF99;
    color: windowtext;
    border: buttonshadow;
    border-width: 1px;
    border-style: solid;
    cursor: 'default';
    overflow: auto;
    height: 200px;
    text-align: left;
    list-style-type: none;
    font-family: Arial, Helvetica, sans-serif;
    font-size: medium !important;
    font-weight: bold;
}

.list2A {
    border: 1px solid #009;
    list-style-type: none;
    margin: 0px;
    cursor: pointer;
    background-color: #FFF;
    text-align: left;
}

ul.list2 li {
    padding: 2px 5px;
}

.listitem2 {
    color: #00A;
    font: normal 0.7em Arial, Helvetica, sans-serif;
}

#resetPwd input {
    font: normal 1.0em Arial, Helvetica, sans-serif;
    border: solid 1px gray;
    line-height: 1.4em;
}

.hoverlistitem2 {
    background-color: #F0F8FF;
    font: normal 0.7em Helvetica, sans-serif;
    border: solid 1px steelblue;
    color: #000000;
    cursor: pointer;
}

.uploadPanelResult {
    width: 434px;
    min-height: 120px;
    border: solid 1px gray;
    font: normal 0.8em Arial,sans-serif;
    line-height: 1.5em;
}

.info {
    font: normal 0.8em Verdana;
}

.msgSubject {
    font: italic 0.8em Arial, Helvetica, sans-serif;
    background: #ffff66;
}

.popUp {
    position: absolute;
    top: 1000px;
    left: 200px;
    text-align: center;
    padding: 5px;
    border: 1px solid black;
    background: white;
}


.auditSearch td {
    font: normal 0.9em Arial,sans-serif;
    line-height: 1.5em;
}

    .auditSearch td input {
        font: normal 1.1em Arial,sans-serif;
        border: solid 1px gray;
        height: 26px;
        width: 150px;
    }

.searchError {
    font: italic 0.8em Tahoma;
    color: Red;
    text-align: left;
}

.detail {
    font-family: lucida grande,arial,helvetica,sans-serif;
    font-size: 11px;
    background-color: #fff;
    border: solid 2px #000;
    padding: 4px;
}

    .detail .footer {
        text-align: right;
        padding: 8px;
    }

#adminMenu {
    /*border: solid 2px black; */
    width: 300px;
    height: auto;
    position: relative;
    background: #eeeeee;
    overflow: hidden;
}

    #adminMenu ul {
        position: relative;
    }

        #adminMenu ul li {
            list-style-type: decimal;
            font: normal 1.0em Arial, Helvetica, sans-serif;
            padding: 0.3em 2.0em 0.2em 0.1em;
            text-indent: none;
            text-align: left;
        }

    #adminMenu > ul > li > a:visited {
        text-decoration: none;
    }

    #adminMenu > ul > li > a:active {
        text-decoration: none;
    }

    #adminMenu > ul > li > a:hover {
        text-decoration: underline;
    }

#tpHeader {
    padding-top: 0.5em;
}

#oz {
    border: solid 2px black;
    width: 300px;
    border-collapse: collapse;
}

#menuTitle > li {
    list-style-type: none;
    text-align: center;
}

.menuHeader {
    font: bold 1.0em Arial;
}

.panelOutBoundFiles {
    font: normal 1.0em Tahoma;
    line-height: 1.4em;
    padding: 0.4em;
    background: #F5F5DC;
}

.errorLabel {
    color: Red;
    font: bold 0.8em Arial;
}

xli {
    /*list-style: none;*/
    padding: 0.4em;
}

.loginName {
    font: bold 0.7em Arial;
    text-transform: uppercase;
    background: yellow;
}

.menuPanel {
    list-style-type: decimal;
    margin-left: 0px;
    float: right;
}

.newsPanel {
    float: right;
    margin-right: 8.0em;
    background: #fff;
}

.logOut {
    font: normal 0.8em Verdana;
    padding: 0.5em;
}

.small {
    font-size: 0.7em;
    font-family: Verdana,Arial;
    font-weight: normal;
    text-decoration: none;
}

.sBold {
    font-size: 10px;
    font-family: Verdana,Arial;
    font-weight: bold;
    text-decoration: none;
}

.loadingbox {
    position: absolute;
    top: 40%;
    left: 40%;
    border: 1px solid #ccc;
    background: #f8f9fa;
    height: 50px;
    width: 250px;
    text-align: center;
    padding-top: 20px;
    padding: .75rem 1rem;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.uploadProgres {
    font: normal 0.7em arial;
    padding: 1.0em;
}

.siBold {
    font-size: 10px;
    font-family: Verdana,Arial;
    font-weight: bold;
    font-style: italic;
}

.uploadRegion {
    font: bold 1.0em Arial;
    color: #cc0000 !important;
    text-transform: uppercase;
    display: block;
    margin-bottom: .5rem;
}

.fileUploadError {
    font: italics 1.0em Arial,sans-serif;
    color: #cc0000 !important;
    font-weight: bold;
}

.Logo {
    font-size: 28px;
    font-family: "Century Gothic",Verdana;
    color: #666666;
}

.rLogo {
    font-size: 28px;
    font-family: "Century Gothic",Verdana;
    color: navy;
}

.riSubtitle {
    font-size: 20px;
    font-family: "Century Gothic";
    color: #666666;
    font-weight: bold;
}

.tpSearchBoxInput {
    width: 300px;
    background: #FFF;
    font: normal 0.8em Arial;
}

#searchTPContainer {
    background-color: #FFFFFF;
    border: 1px solid #777777;
    color: #333333;
    font-size: 12px;
    line-height: 1.5em;
    margin-bottom: 10px;
    padding: 7px;
    width: 300px;
    height: auto;
}

    #searchTPContainer h3 {
        background-color: #777777;
        background-image: url(../../images/headerBg.gif);
        background-position: left top;
        background-repeat: repeat-x;
        color: #FFFFFF;
        font-size: 14px;
        font-weight: bold;
        line-height: 28px;
        margin: -7px -7px 0px;
        padding-left: 12px;
    }

.tpSearchBox {
    background: url(../../images/box-background.png) repeat-x;
    border: solid 1px gray;
    color: #fff;
}

#newsContainer {
    background-color: #FFFFFF;
    border: 1px solid #777777;
    color: #333333;
    font-size: 12px;
    line-height: 1.5em;
    margin-bottom: 10px;
    padding: 7px;
    width: 300px;
    height: auto;
    float: right;
}

    #newsContainer h3 {
        background-color: #777777;
        background-image: url(../../images/box-background.png);
        background-position: left top;
        background-repeat: repeat-x;
        color: #FFFFFF;
        font-size: 14px;
        font-weight: bold;
        line-height: 28px;
        margin: -7px -7px 0px;
        padding-left: 12px;
    }

#pdfDocs > ul > li {
    list-style-type: lower-alpha;
    font: normal 0.9em Verdana;
    padding-top: 0.4em;
}

#pdfDocs ul li {
    list-style-type: lower-alpha;
    font: normal 0.9em Verdana;
    padding-top: 0.4em;
}

#newsHeader {
    margin-left: 0px;
}

    #newsHeader > ul > li a {
        font: normal 0.8em Verdana;
    }

    #newsHeader > ul > li {
        font: bold 1.3em Arial;
        background: steelblue;
        color: #fff;
        text-align: center;
        list-style-type: none;
        width: 263px;
    }

.searchTP {
    height: 21px;
    width: 150px;
    font: normal 0.9em Arial;
}

.tpHeader {
    font: bold 0.9em Arial;
}

.news {
    font: normal 0.8em Verdana, Arial,Tahoma;
    line-height: 1.5em;
    white-space: normal;
}

.gvHeader {
    background-image: url(../../images/bluegrad2.gif); /* greenbg2.gif*background-image: url(../../images/seagreen_bg.jpg);*/
    background-position: left top;
    background-repeat: repeat-x;
    line-height: 2.0em;
    font: bold 1.0em Arial,Sans-Serif;
    color: #ffffff;
    padding: 0.5em;
}

    .gvHeader a:link {
        font: bold 1.0em Arial,Sans-serif;
        color: white;
        padding: 5px 0 5px 0px;
        white-space: nowrap;
        text-decoration: none;
    }

.gvRow {
    font: normal 0.9em arial,sans-serif;
    padding: 1.0em;
}

    .gvRow a:link {
        font: normal 0.9em arial,sans-serif;
    }

.gvEmpty {
    font: normal 1.2em sans-serif;
    color: Red;
}

.gvPager {
    background: azure;
}

.panelFilter {
    font: bold 1.0em Arial;
    line-height: 1.5em;
    padding: 0.5em;
    background: #EEEEEE;
}

#viewTPFilesPanel {
    margin-left: auto;
    margin-right: auto;
    width: 70%;
    text-align: center;
}

.panelTPInput {
    vertical-align: bottom;
}

.radioList {
    font: normal 11px Verdana;
    margin-left: 4px;
}

.tbl {
    border-right: black 1.5px solid;
    border-top: black 1.5px solid;
    border-left: black 1.5px solid;
    border-bottom: black 1.5px solid;
    border-collapse: collapse;
    width: 100%;
    background-color: #FFFEF2;
}

.tblHeader {
    font-weight: bold;
    font-size: 10pt;
    color: #ffff66;
    font-family: Verdana, Garamond;
    background-image: url(../../images/bluegrad.gif) repeat-x;
}

.dgCell {
    font-size: 9.5pt;
    color: black;
    font-family: Verdana,Arial,Helvetica;
    border-collapse: collapse;
}

.cell {
    font-size: 9.5pt;
    color: #0033cc;
    font-family: Tahoma,Verdana;
}

.lbl {
    font-size: 12px;
    font-family: Verdana,Arial;
    font-weight: bold;
    text-decoration: none;
}

.header1 {
    font-weight: bold;
    font-size: 11pt;
    padding-top: 2px;
    padding-bottom: 6px;
    color: white;
    font-family: 'Microsoft Sans Serif', Wingdings;
    background: url(../../images/box-background.png) repeat-x;
}

.editpsButton {
    width: 105px;
    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr= '#ffffff',EndColorStr= '#cccccc' );
    border: 1px solid #000000;
    background-color: #ededed;
    font-weight: bold;
}

.systemChoice td input {
    font: normal 0.8em arial !important;
    height: auto;
    width: auto;
    border: 0;
}

.FormHeadingMain {
    background-color: #dcdcdc;
    font-weight: bold;
    color: black;
    font-family: Segoe UI, Verdana;
    text-align: center;
    font-size: 12pt;
}

.BorderLine {
    background-color: #D3D3D3;
}

.FormField {
    background-color: #dcdcdc;
    font-weight: normal;
    color: Black;
    font-family: Segoe UI, Verdana;
    font-size: 9pt;
}

.FormValue {
    background-color: white;
    font-weight: normal;
    color: Black;
    font-family: Segoe UI, Verdana;
    font-size: 9pt;
}

.FormHeading {
    background-color: #dcdcdc;
    font-weight: bold;
    color: black;
    font-family: Segoe UI, Verdana;
    text-align: center;
    font-size: 10pt;
}

.AlternateItem {
    background-color: beige;
    font-weight: normal;
    color: Black;
    font-family: Segoe UI, Verdana;
    font-size: 9pt;
}

.Button {
    background-color: #dcdcdc;
    font-weight: bold;
    color: black;
    font-family: Segoe UI, Verdana;
    text-align: center;
    font-size: 9pt;
    border-right: 1px solid;
    border-top: 1px solid;
    border-left: 1px solid;
    border-bottom: 1px solid;
}

/* ===== Portal layout (menu / news sections) ===== */
:root {
    --portal-bg: #ffffff;
    --portal-border: #c7d2e0;
    --portal-border-strong: #9fb4ca;
    --portal-title: #143a5a;
    --portal-text: #1f2937;
    --portal-muted: #334155;
    --portal-item-bg: #f8fafc;
    --portal-item-border: #cbd5e1;
    --portal-item-hover-bg: #dbeafe;
    --portal-item-hover-text: #0b3b66;
    --portal-focus: #ffbf47;
}

.portal-main {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-start;
    align-items: stretch;
    max-width: 1200px;
    margin: 1.5rem auto;
    padding: 0.9rem;
    box-sizing: border-box;
    overflow-y: hidden;
    position: relative;
}

    .portal-main .content-card {
        display: flex;
        flex-direction: column;
        background: linear-gradient(145deg, #ffffff 0%, #fafbfc 100%);
        border: 1px solid var(--portal-border);
        border-radius: 14px;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
        box-sizing: border-box;
        flex-shrink: 0;
        overflow: hidden;
    }

    .portal-main .menu-section {
        flex: none;
        width: 410px;
        max-width: 410px;
        align-self: stretch;
        margin-left: auto;
        /* Border setting */
        border: 4px solid #000e2f;
        border-radius: 4px;
        background-color: #ffffff;
        min-height: 480px;
        height: 480px;
        min-width: 350px;
        flex-direction: column;
        overflow: hidden;
    }

    .portal-main .menu-section--featured {
        /*border-color: var(--portal-border-strong);*/
        border-color: #000e2f;
        box-shadow: 0 6px 16px rgba(0, 0, 0, 0.10);
    }

    .portal-main .alerts-section {
        flex: none;
        width: 410px;
        max-width: 410px;
        align-self: stretch;
        /*margin-right: auto;*/

        min-height: 450px;
        height: 450px;
        min-width: 350px;
    }

/* Menu fills section */
.menu-section #adminMenu,
.menu-section .tp-menu {
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    background: transparent;
    box-sizing: border-box;
    /* overflow: hidden !important;*/
    overflow: visible;
}

/* Headers */
.portal-main .portal-section-header {
    padding: 1.25rem 1.5rem 0.75rem;
    position: relative;
}

.portal-main .menu-section-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0;
    color: #c8122c !important;
    text-align: center;
    background: none !important;
    background-clip: initial !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: initial !important;
    position: static !important;
    padding-bottom: 0.5rem;
    position: relative;
}

    .portal-main .menu-section-title::after {
        content: "";
        position: absolute;
        left: 1.5rem;
        right: 1.5rem;
        bottom: 0.3rem;
        height: 3px;
        border-radius: 3px;
        background: #3b82f6;
    }

.portal-main .news-section-title {
    text-align: center;
    margin: 0;
    color: #0f5ea8;
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 0 0;
    padding-bottom: 0.9rem;
    position: relative;
    background: none;
    position: relative;
}

    .portal-main .news-section-title::after {
        content: "";
        position: absolute;
        left: 1.5rem;
        right: 1.5rem;
        bottom: 0.3rem;
        height: 3px;
        border-radius: 3px;
        background: #3b82f6;
    }

.menu-section .menu-title {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
    color: #143a5a;
    margin: 0 0 1rem 0;
    padding: 0;
}

/* Section body */
.portal-main .portal-section-body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 0 1.5rem 1.5rem;
    box-sizing: border-box;
}

.portal-main .menu-section .portal-section-body {
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: #94a3b8 #eef2f7;
}

/* Menu list */
.menu-section .menu-list,
.menu-section .docs-list {
    /*list-style: none;*/
    margin: 0;
    padding: 0;
    width: 100%;
}

.menu-section .menu-list {
    list-style-type: decimal !important;
    padding-left: 2rem !important;
}

    .menu-section .menu-list > li {
        width: 100%;
        margin: 0;
        padding: 0;
    }

.menu-section .docs-list {
    list-style-type: lower-alpha !important;
    padding-left: 2rem !important;
}

    .menu-section .docs-list > li {
        display: list-item !important;
        list-style-type: lower-alpha !important;
    }

    /* Menu links FULL WIDTH */
    .menu-section .hyperLink,
    .menu-section .menu-list a,
    .menu-section .docs-list a {
        display: block !important;
        width: 90% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        padding: 0.3rem 1rem !important;
        margin: 0.1rem !important;
        border-radius: 10px !important;
        background: #F1F5F9 !important;
        color: #0f172a !important;
        /*color: #000e2f !important;*/
        text-decoration: none !important;
        border: 1px solid #cbd5e1 !important;
        font-weight: 400 !important;
        font-size: 1.1rem;
        line-height: 1.1 !important;
    }

        /* Hover/focus */
        .menu-section .hyperLink:hover,
        .menu-section .hyperLink:focus-visible,
        .menu-section .menu-list a:hover,
        .menu-section .menu-list a:focus-visible {
            background: var(--portal-item-hover-bg) !important;
            color: var(--portal-item-hover-text) !important;
            outline: 3px solid var(--portal-focus) !important;
            outline-offset: 2px !important;
        }

/* Docs */
.menu-section .docs-group {
    margin-top: 1rem;
    padding-top: 0.75rem;
    border-top: 1px solid #d1d5db;
}

.menu-section .docs-label {
    display: block;
    font-weight: 750;
    color: #143a5a;
    margin-bottom: 0.5rem;
}

.menu-section .docs-list li {
    margin-bottom: 0rem;
}

.menu-section .docs-list a {
    /*padding: 0.5rem 0.8rem !important;*/
    /*font-weight: 500 !important;
             font-weight: 600 !important;
         font-size: 1rem;*/
    /*background: transparent !important;*/
    /*background: #f8fafc !important;*/
    /*border-color: transparent !important;*/
}

/* News scroll */
.portal-main .news-scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: #94a3b8 #eef2f7;
}

.portal-main .news-content {
    color: var(--portal-muted);
    font-size: 1rem;
    line-height: 1.7;
}

/* Focus */
.portal-main .content-card:focus-within {
    outline: 3px solid var(--portal-focus);
    outline-offset: 2px;
}

/* Mobile (merged: includes .portal-main--split from the original duplicate block) */
@media (max-width: 768px) {
    .portal-main {
        flex-direction: column !important;
        gap: 1rem;
        padding: 0.75rem;
        width: 100%;
        max-width: 100%;
    }

        .portal-main .content-card {
            height: auto !important;
            min-height: auto !important;
            width: 100% !important;
            max-width: 100% !important;
        }

        .portal-main .menu-section,
        .portal-main .alerts-section {
            flex: none !important;
            width: 100% !important;
            max-width: 100% !important;
            min-width: 0 !important;
            align-self: stretch !important;
        }

        .portal-main .news-scroll {
            overflow-y: visible !important;
            height: auto !important;
        }

        .portal-main .section-header,
        .portal-main .portal-section-body {
            padding: 1rem !important;
        }

    .portal-main--split {
        flex-direction: column !important;
    }
}

/* ===== Shared utility ===== */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* ===== Login page ===== */
html, body {
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

#mdgovOuterWrap,
#mdgovInnerWrap {
    /* min-height: auto !important; */
    min-height: 100% !important;
}

/*   body {
                display: flex !important;
                flex-direction: column;
                min-height: calc(100vh - 180px);
            } */

.custom-loginPage {
    flex: 1 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0.2rem !important;
}

.login-shell {
    width: 100% !important;
    max-width: 28rem !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    /*gap: 0.5rem !important;*/
    padding: 0 !important;
}

/*  .login-page-main {
                            width: 100%;
                        } */
.brand-block,
.brand-block * {
    all: initial !important;
    box-sizing: border-box !important;
}

.brand-block {
    width: 100% !important;
    max-width: 35rem !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

    .brand-block img {
        display: block !important;
        margin: 0 !important;
        max-width: 100% !important;
        height: 88px !important;
    }


.brand-text {
    margin: 0 !important;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    font-weight: 600 !important;
    font-size: 1.5rem !important;
}



.login-container {
    /* display: flex; */
    width: 100% !important;
    max-width: 28rem !important;
    margin: 0 auto;
    padding: 0.1rem;
}

.login-card {
    background: #fff;
    border: 1px solid #d6d7d9;
    border-radius: 0.75rem;
    box-shadow: 0 8px 24px rgba(0,0,0,0.12);
    overflow: hidden;
}

.card-header {
    background: linear-gradient(135deg, #005ea2 0%, #0078d4 100%);
    color: white;
    padding: 0.5rem;
    text-align: center;
}

    .card-header h1 {
        color: white;
        margin: 0;
        font-size: 1.75rem;
        font-weight: 600;
    }

.card-body {
    padding: 1rem;
}

.form-group {
    margin-bottom: 1rem;
}

.form-label {
    display: inline-block;
    font-weight: 600;
    margin-bottom: 0.5rem;
    /* color: #1b1b1b; */
    font-size: 1rem;
}

.form-input {
    width: 100%;
    padding: 0.5rem;
    border: 2px solid #c6c6c6;
    border-radius: 0.5rem;
    font-size: 1rem;
    box-sizing: border-box;
}

    .form-input:focus {
        border-color: #ffbf47;
        outline: 3px solid #ffbf47; /* ADD this line */
        outline-offset: 2px; /* ADD this line */
        box-shadow: 0 0 0 3px rgba(255,191,71,0.25);
    }

.login-button {
    width: 100%;
    background: #005ea2;
    color: white;
    border: none;
    padding: 0.5rem;
    border-radius: 0.375rem;
    font-size: 1.125rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
}

    .login-button:hover {
        background: #004d85;
    }

.error-alert {
    background: #fdeded;
    border: 1px solid #d83933;
    border-radius: 0.25rem;
    padding: 1rem;
    margin: 1rem 0;
}

.check-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.5rem;
}

.button-group {
    margin-top: 1.5rem;
}

/*collapse extra top spacing in hero area*/

/*Reduce header spacing */
.mdgov-masthead,
.mdgov-hero.mdgov-hero--shaded,
.mdgov-hero--shaded {
    height: auto !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}


.mdgov-hero {
    margin: 0 !important;
    padding-block: 0 !important;
}

.mdgov-hero__heading,
.mdgov-hero__heading * {
    line-height: 1.1 !important;
}

.mdgov-hero__heading {
    margin: 0 !important;
    padding: 0 !important;
}

    .mdgov-hero__heading .mdgov-agency {
        margin: 0 !important;
        /* padding: 0.1rem;*/
    }

.mdgov-hero__logo img {
    max-width: 70px !important;
    width: auto;
}


/* Simple divider replacing greyPixel.gif */
.page-divider {
    border: 0;
    /*border-top: 1px solid #ccc;*/
    border-top: 1px solid #767676; /* USWDS gray-50 */
    margin: 0 0 0.5rem 0;
}

.back-link {
    text-decoration: underline;
}
/* Ensure focus outlines are visible */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
    /*outline: 2px solid #005ea2;*/
    outline: 3px solid #ffbf47; /* USWDS focus color */
    outline-offset: 2px;
}
/* Shrink the overall search container */
.mdgov-masthead .mdgov-navBar__search {
    max-width: 22rem; /* scalable instead of px */
    width: 100%;
    margin-left: auto; /* pushes it to the right */
}

/*Reduce Footer spacing */
.mdgov-footer-2024 {
    height: auto !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
}


/* Put this AFTER the MDS CSS files */
@media (min-width: 992px) {
    .mdgov-masthead {
        min-height: 0 !important;
    }
}
/* Optional: tighten padding inside the masthead as well */
/*.mdgov-masthead {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
}*/
/* Lighthouse touch target fix*/
.touch-target {
    display: inline-block;
    min-height: 44px;
    min-width: 44px;
    line-height: 44px;
    padding: 0 8px;
}

@media (min-width: 769px) {
    .touch-target {
        min-height: auto;
        min-width: auto;
        line-height: normal;
        padding: 0;
    }
}

/* montserrat-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/montserrat-v31-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 400;
    src: url('/fonts/montserrat-v31-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-600 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: url('/fonts/montserrat-v31-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url('/fonts/montserrat-v31-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-800 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    src: url('/fonts/montserrat-v31-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-900 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    src: url('/fonts/montserrat-v31-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
