/*** Bootstrap overrides ***/
h1 {
    font-size: 24px;
}

h2 {
    font-size: 20px;
    color: #cd8535;
}

h3 {
    font-size: 16px;
    color: #ff4500;
}

h4 {
    font-size: 12px;
}

dt {
    font-weight: bold;
}

.container-fluid, .form-group {
    padding-left: 10px;
    padding-right: 10px;
}

.form-group {
    margin-bottom: 5px;
}

.form-control, .input-group-text {
    font-size: 12px;
}

.help-block {
    margin-bottom: 5px;
}

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
    padding-left: 3px;
    padding-right: 3px;
}

.row {
    margin-left: 0;
    margin-right: 0;
}

/*** END Bootstrap overrides ***/
/*** GLOBAL STYLES ***/
img {
    border: 0;
}

a:visited.btn-default {
    color: black;
}


@font-face {
    font-family:"HafferXH-Regular";
    src: url("../fonts/HafferXH-Regular.woff2") format("woff2"),
    url("../fonts/HafferXH-Regular.woff") format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}



body {
    /* font-family: Tahoma, Verdana, serif; */
    font-family:  HafferXH-Regular, sans-serif;
    font-size: 12px;
    overflow-y: scroll;
    padding-bottom: 200px;
    color: black;
    /* default vertical scroll bar to preserve consistent view */
}

.clear {
    clear: both;
}

#content, #header {
    margin-left: auto;
    margin-right: auto;
    max-width: 1000px;
}

.menu-main-selected {
    color: #fc4f08;
}

.dl-horizontal dt {
    text-align: left;
}

.dl-horizontal dd {
    margin-bottom: 5px;
}


.navbar {
    margin-bottom: 0;
}

label {
    margin-bottom: 0;
}

.form-horizontal .control-label {
    text-align: left;
}


.col-sm-0-75, .col-sm-1-25 {
    position: relative;
    width: 100%;
    padding-right: 3px;
    padding-left: 3px;
}

@media (min-width: 576px) {

    .col-sm-0-75 {
        flex: 0 0 6.25%;
        max-width: 6.25%;
    }

    .col-sm-1-25 {
        flex: 0 0 10.416666%;
        max-width: 10.416666%;
    }
}


/*** END Bootstrap overrides ***/


.font-size-lg {
    font-size: 1.25em;
}

.font-size-xl {
    font-size: 1.5em;
}

.font-size-xxl {
    font-size: 2em;
}


.display-1 {
    font-size: 5.5rem !important;
}

.display-2 {
    font-size: 4.5rem !important;
}

.display-3 {
    font-size: 3.5rem !important;
}

.display-4 {
    font-size: 2.5rem !important;
}

.display-5 {
    font-size: 1.5rem !important;
}

@media screen {
    .printOnly {
        display: none;
    }
}

@media print {
    .displayOnly, .no-print {
        display: none !important;
    }

    input, textarea, select {
        display: inline;
        background: transparent;
        border: 0;
    }
}

.margin-top-sm {
    margin-top: 4px;
}

.margin-top-md {
    margin-top: 8px;
}

.margin-top-lg {
    margin-top: 16px;
}

.margin-top-xl {
    margin-top: 32px;
}

.margin-bottom-sm {
    margin-bottom: 4px;
}

.margin-bottom-md {
    margin-bottom: 8px;
}

.padding-top-xs {
    padding-top: 2px;
}

.padding-top-sm {
    padding-top: 4px;
}

.padding-top-md {
    padding-top: 8px;
}

.padding-top-lg {
    padding-top: 16px;
}

.padding-bottom-xs {
    padding-bottom: 2px;
}

.padding-bottom-sm {
    padding-bottom: 4px;
}

.padding-bottom-md {
    padding-bottom: 8px;
}

.padding-bottom-lg {
    padding-bottom: 16px;
}

.text-label {
    color: #222;
}

#status-top {
    padding: 10px 10px 25px 10px;
    text-align: center;
    top: 0;
    width: 100%;
    position: fixed;
    z-index: 100;
    font-size: 14px;
    display: none;
}

.ajax-loading {
    vertical-align: middle;
}

#status-top-close {
    color: blue;
    font-size: 12px;
    text-decoration: underline;
    background: none;
    border: 0;
    cursor: pointer;
}

#status-top-close-img {
    float: right;
    margin-right: 20px;
    cursor: pointer;
}

#status-top p {
    max-width: 90%;
    display: inline-block;
}

.error, .error-con {
    color: red;
    border-color: darkred;
}

.success, .success-con {
    color: green;
    border-color: darkgreen;
}

.warn, .warn-con {
    color: #FF8000;
}

.error, .success, .warn, .error-con, .warn-con, .success-con {
    font-weight: bold;
}

.warn-con, .error-con, .success-con {
    margin-top: 2px;
    padding: 5px;
    z-index: 99;
    background-color: white;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
}

.form-errors, .form-success, .form-working {
    margin: 1em 0 1em 0;
    padding: 1em;
    text-align: left;
    display: none;
    border-radius: 1em;
    border-width: 1px;
    border-style: solid;
}

.form-errors, .status-top-errors {
    border-color: #FFAAAA;
    background: #FFD1D1;
}

.form-success, .status-top-success {
    background: #C3FFBE;
    border-color: #7FFF73;
}

.form-working, .status-top-working {
    background: #F2F5A9;
    border-color: #D7DF01;
}

.form-working, .gen-working, .status-top-working {
    color: #5E610B;
    font-weight: bold;
}

.form-success, .gen-success, .status-top-success {
    color: green;
    font-weight: bold;
}

.form-errors, .gen-errors, .status-top-errors {
    color: #990012;
    font-weight: bold;
}

.label-discrete {
    color: gray;
}

/*** page layout ***/

#header {
    max-width: 1000px;
}

#header-background {
    background: linear-gradient(#c3d9ff 0%, white 50%);
}

#top {
    padding-top: 5px;
}


/*** MENU TOP ***/
#menu-top {
    font-weight: bold;
}

#menu-top .nav-link, #menu-top .menu-top-current {
    background: white;
    border: 1px solid #ddd;
    border-radius: 3px;
}

.menu-top-current {
    background: #0071c5 !important;
    color: white !important;
}

#menu-top .nav-link:visited, #menu-top .nav-link {
    color: #0071c5;
}

#menu-top .nav-link:hover {
    background: #0071c5;
    color: white;
}

/*** MENU MAIN ***/
#menu-main-background {
    border-top: 1px solid whitesmoke;
    border-bottom: 1px solid whitesmoke;
    margin-top: 0;
    margin-bottom: 10px;
}

#menu-main-column {
    padding-top: 5px;
    padding-bottom: 5px;
}

#menu-main {
    font-weight: bold;
    font-size: 1.6em;
    text-align: center;
    clear: both;
}

#menu-main a {
    outline: 0;
    display: inline-block;
    text-decoration: none;
    padding: 5px 10px 5px 10px;
}

#menu-main a:visited {
    color: blue;
}

#menu-main a:hover, .menu-main-current {
    color: #ff6600 !important;
}

/*** END MENU MAIN ***/
#title {
    font-weight: bold;
    font-size: 1.5em;
    text-align: center;
    color: #f05e1b;
    margin-bottom: 15px;
    /* ember */
    background-color: white;
}

#title img {
    width: 16px;
    height: 16px;
}

#system-error {
    color: red;
    font-weight: bold;
    padding: 10px 0 10px 0;
}

/* morse only feature */
.mof {
    color: blue;
    font-weight: bold;
    font-size: 9px;
    cursor: help;
}

.rf {
    color: red;
    font-weight: bold;
}

/* required field */
.hint {
    color: gray;
    font-size: .9em;
    margin-top: .25em;
    margin-bottom: .25em;
    font-weight: normal;
}

/* ajax button page styling */
.select-page-menu {
    padding: 2em;
    font-size: 1.1em;
    text-align: center;
}

.select-page-menu span {
    padding: .3em;
}

.button-page-disabled {
    color: gray;
    cursor: default;
}

.button-previous, .button-next, .button-page {
    text-decoration: underline;
    color: blue;
    cursor: pointer;
}

.button-page-selected {
    font-size: 1.3em;
}

.morse-only-page {
    padding: 20px;
    text-align: center;
    font-weight: bold;
    font-size: 1.5em;
}


.target-element {
    color: red !important;
}



/* Generic styles */
.underline {
    text-decoration: underline;
}

.italic {
    font-style: italic;
}

.bold {
    font-weight: bold;
}

.inline-block {
    display: inline-block;
}


.pa-form {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 15px 20px; /* row gap, column gap */
    align-items: center;
    max-width: 600px;
}

.pa-form input[type="hidden"] {
    grid-column: 1 / -1; /* Span both columns */
}

.pa-form .form-group {
    display: contents; /* Makes children participate in parent grid */
}


.pa-form input {
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.pa-form input[type="checkbox"] {
    justify-self: start;
}

.pa-form button {
    grid-column: 2; /* Place in second column */
    padding: 10px 20px;
}



