html,
body {
    position: relative;
    width: 100%;
    height: 100%;
}

body {
    color: #333;
    margin: 0 auto;
    min-width: 600px;
    max-width: 800px;
    min-height: 393px;
    padding: 0.5rem 1rem;
    box-sizing: border-box;
    font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;

    /* MITRE Colors */
    --mitre-light-blue: #87DEFF;
    --mitre-blue: #005B94;
    --mitre-navy: #0D2F4F;
    --mitre-dark-navy: #0B2338;
    --mitre-black: #111921;
    --mitre-highlighter: #FFF601;
    --mitre-dark-gray: #7E8284;
    --mitre-silver: #D4D4D3;
    --mitre-light-silver: #F1F3F4;
    --mitre-white: #ffffff;

    /* Other UI Colors */
    --light-green: #7DEA49;
    --dark-green: #3CAB41;
}

h1,
h2,
h3 {
    color: var(--mitre-black);
    text-align: center;
    font-family: 'Arial Nova', 'Helvetica Neue', Helvetica, sans-serif;
}

h1 {
    font-size: 3em;
    font-weight: 400;
}

h2 {
    font-size: 2em;
    font-weight: 400;
}

h3 {
    font-size: 1em;
    font-weight: 400;
}

a {
    color: var(--mitre-blue);
}

a:link,
a.hover {
    text-decoration: none;
}

button.btn.btn-primary {
    background-color: var(--mitre-blue);
    border-color: var(--mitre-blue);
}

input.form-control {
    border: 1px solid var(--mitre-silver);
}

span.badge.bg-primary {
    background-color: var(--mitre-blue) !important;
}

/* Hide number input arrows in Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Hide number input arrows in Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

table td {
    vertical-align: middle;
}

td.nothing-found {
    color: var(--bs-secondary);
    font-style: italic;
    text-align: center;
}

.gray-box {
    background-color: var(--mitre-light-silver);
    padding: 0.75rem;
    border-radius: 0.25rem;
}

mark {
    background-color: var(--mitre-highlighter);
}