:root { color-scheme: light; font-family: Segoe UI, Arial, sans-serif; }
body { margin: 0; color: #172033; background: #f4f6f9; }
.page-shell { box-sizing: border-box; width: 100%; margin: 0; padding: 1rem; }
.application-heading { margin-bottom: 1rem; } .application-heading h1 { margin: 0; }
.navigation-shell { display: grid; gap: .75rem; margin-bottom: 1.5rem; }
.main-navigation ul, .sub-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.main-navigation a, .sub-navigation a { display: block; color: #173d6b; text-decoration: none; border-radius: .35rem; }
.main-navigation a { padding: .65rem .8rem; background: #e4ebf4; border-left: .3rem solid transparent; font-weight: 600; }
.main-navigation a:hover, .main-navigation a:focus-visible, .sub-navigation a:hover, .sub-navigation a:focus-visible { background: #d3e2f3; outline: .15rem solid #245b94; outline-offset: .1rem; }
.main-navigation a[aria-current="page"] { background: #245b94; border-left-color: #102f52; color: #fff; }
.sub-navigation { border-left: .2rem solid #9db4cf; padding-left: .75rem; }
.sub-navigation a { padding: .45rem .65rem; background: #fff; border: 1px solid #b9c8d9; }
.sub-navigation a[aria-current="page"] { background: #dbe8f6; border-color: #245b94; font-weight: 700; }
main { min-width: 0; max-width: 100%; overflow-x: auto; }
.table-container { max-width: 100%; overflow-x: auto; }
table { max-width: 100%; border-collapse: collapse; background: #fff; }
th, td { padding: .45rem .6rem; border: 1px solid #c8d1dd; text-align: left; overflow-wrap: anywhere; }
th { background: #e8eef6; }
label { display: inline-block; margin: .3rem .25rem .3rem 0; }
input { box-sizing: border-box; padding: .3rem .4rem; border: 1px solid #767676; }
input:focus-visible { outline: .15rem solid #245b94; outline-offset: .1rem; }
button, .button-link { box-sizing: border-box; display: inline-block; margin: .3rem; padding: .25rem .65rem; color: #111; background: #f0f0f0; border: 1px solid #767676; border-radius: .15rem; font: 400 13.3333px Arial, sans-serif; line-height: normal; text-decoration: none; cursor: pointer; }
button:hover, .button-link:hover { background: #e5f1fb; border-color: #005a9e; }
button:focus-visible, .button-link:focus-visible { background: #e5f1fb; outline: .15rem solid #245b94; outline-offset: .1rem; }
form { margin: 0 0 1rem; } a { color: #174f87; text-underline-offset: .15em; }
fieldset { margin: .6rem 0; padding: .65rem; border: 1px solid #b9c8d9; }
fieldset[hidden] { display: none; }
@media (max-width: 40rem) { .page-shell { padding: .75rem; } .application-heading h1 { font-size: 1.45rem; } }