/* This file contains some generic style rules
   I decided to not use the CSS variables because
   only IE15 and above support this feature. Also
   I decided to use bootstap 3
*/
:root {
    box-sizing: border-box;
    font-size: calc(0.625em + (100vw - 300px) / 433);
}

body {
    background-color: #FEFEFE;
    font-family: 'Tahoma', 'Lucida Sans', 'Arial', 'Helvetica', 'Sans-serif', 'sans';
    line-height: 1.5;
    min-width: 300px;
    font-size: 1rem;
}

a, a:link, a:active, a:visited {
    text-decoration: none;
    color: #E9601A;
    font-weight: inherit;
    font-size: inherit;
}

a:hover {
    text-decoration: underline;
}

.list-group.list-group-striped .list-group-item:nth-of-type(odd){
    background-color: #d1f2eb;
}
.list-group.list-group-striped .list-group-item:nth-of-type(even){
    background-color: white;
}

.list-group.list-group-hover .list-group-item:hover {
    background-color: rgba(212, 230, 241, 0.95);
}
.list-group-item.active {
    color: #235277;
    font-weight: bold;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: #d1f2eb;
}
.table-striped tbody tr:nth-of-type(even) {
    background-color: white;
}

.table-hover tbody tr:hover {
    background-color: rgba(212, 230, 241, 0.95);
}

.table-no-header thead {
    display: none;
}
/* Map color properties */
.map-bg-light-blue {
    background-color: #C9E1F2;
}

.map-text-light-gray {
    color:#777777;
}

.map-btn-create {
    font-size: 1rem;
}

.map-btn-edit {
    color: #17a2b8;
    font-size: 1rem;
}

.map-btn-delete {
    color: #E9601A;
    font-size: 1rem;
}

.map-btn {
    padding-top: 0px;
    padding-bottom: 0px;
}

.map-label-strong {
    font-weight: 700;
}

/* Navbar settings */
.navbar.map-navbar {
    padding-top: .1em;
    padding-bottom: .1em;
}

.navbar-brand.map-navbar {
    padding-top: 0px;
    padding-bottom: 0px;
    font-size: 1rem;
}

/* Font properties */
.map-fontsize-inherit {
    font-size: inherit;
}

/* util class */
.map-scroll {
    overflow-y: auto;
}

.map-scroll-height-300 {
    height: 30em;
}

/* footer */
footer.map-footer {
    margin-top: 1em;
    font-size: 0.95em;
    border-top: 5px solid #BED9ED;
    padding-top: 0.4em;
}

footer.map-footer hr {
    margin-top: -8px;
    margin-bottom: 5px;
}

ul.map-footer li a {
    color: #264a64;
}

ul.map-footer li a:link {
    color: #264a64;
}

ul.map-footer li a:visited {
    color: #264a64;
}

ul.map-footer li a:hover {
    color: #264a64;
}

ul.map-footer li a:active {
    color: #264a64;
}

/* Top bar */
.map-topbar.navbar {
    background-color: #CFC3AE;
    padding: 0rem 1rem;
    font-size: 0.8rem;
    margin-bottom: 0px;
}

.map-topbar.navbar .navbar-brand {
    padding-top: 0px;
    padding-bottom: 0px;
    font-size: 0.8rem;
}

.map-topbar.navbar .navbar-brand ul {
    list-style-type: none;
    -webkit-padding-start: 0px;
}

.map-topbar.navbar .navbar-brand ul li span {
    vertical-align: text-bottom;
}

.map-topbar.navbar .navbar-brand ul li:not(:last-child) {
    margin-right: 0.5em;
}

.map-topbar.navbar .navbar-brand ul li:not(:last-child)::after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    color: rgba(255, 255, 255, 0.5);
    font-size: 1.5em;
    padding-left: 4px;
    line-height: 1
}

.map-topbar.navbar .navbar-brand ul li:last-child {
    font-weight: 900;
}

ul.map-user-summary {
    list-style-type: none;
}

ul.map-user-summary li {
    font-size: inherit;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

ul.map-user-summary li span {
    vertical-align: text-bottom;
}

.map-topbar.navbar ul.map-user-summary li a.nav-link {
    padding: 0px;
}


/* menu bar */
.map-menubar.navbar {
    padding: 0px;
    font-size: 1rem;
    margin-bottom: 0px;
}

.map-menubar.navbar ol.breadcrumb {
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px;
    background-color: inherit;
}

.map-menubar.navbar ol.breadcrumb .breadcrumb-item.active {
    color: black;
}

.map-menubar.navbar .navbar-toggler {
    padding: 0rem;
    font-size: 0.6rem;
    margin-right: 0.75rem;
}

.map-menu.nav {
    background-color: inherit;
}

.map-menu.nav .nav-item a.nav-link {
    padding-top: 0px;
    padding-bottom: 0px;
    color: #E9601A;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.map-menu.nav .nav-item a.nav-link:hover {
    background-color: #83A9CE;
    color: white;
}

div.dropdown-menu.map-menu {
    padding: 0.2em 0.4em;
    background-color: #83A9CE;
}

div.dropdown-menu.map-menu a {
    font-size: 0.9em;
    color: black;
    padding: 0px;
}

div.dropdown-menu.map-menu a:not(:last-child) {
    padding-bottom: 0.1em;
}

/* Popup Window form */
form.map-popup {
    padding-top: 1em;
    font-size: 0.9rem;
    margin-bottom: 2em;
}

form.map-popup .form-group {
    margin-bottom: 0.5em;
    padding-left: 1.5em;
    padding-right: 1.5em;
}

form.map-popup div.row:nth-of-type(odd) {
    background-color: #d1f2eb;
}

form.map-popup div.row:nth-of-type(even) {
    background-color: white;
}

form.map-popup .form-control {
    font-size: 1em;
    padding: 0.25em;
}

form.map-popup .form-control-autowidth {
    width: auto;
}

form.map-popup .btn {
    padding: 0.25em;
}

form.map-popup select.form-control:not([size]):not([multiple]) {
    height: calc(2rem + 2px);
}

form.map-popup .map-star-required {
    padding-top: 1.2em;
    padding-left: 0.4em;
    font-size: 0.6em;
}

form.map-popup input[type=checkbox] {
    margin-top: calc(0.75rem + 1px);
}

form.map-popup div.form-group.row span.map-editable {
    width: 100%;
}

form.map-popup div.form-group.row span.map-editable.map-padding-star-right {
    padding-right: 0.8em;
}

/* info panel */
.card-header.map-info-panel {
    padding-top: 0.1em;
    padding-bottom: 0.1em;
    padding-left: 0.3em;
    padding-right: 0.3em;
}

.card-body.map-info-panel {
    padding: 0.3em;
    font-size: 0.85rem;
}

.card-body.map-info-panel table.table {
    margin-bottom: 0px;
}

.card-body.map-info-panel .table td, .card-body.map-info-panel .table th {
    padding: 0.25em;
}

.map-input-required::after {
    content: "\f005";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    color: red;
    font-size: 0.8em;
    padding-left: 0.3em;
    line-height: 1
}

table.table.map-budget-table {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

/* Feedback panel */
ul.feedbackPanel {
    list-style: none;
}

ul.feedbackPanel li.feedbackPanelERROR {
    color: #dc3545 !important;
}

ul.feedbackPanel li.feedbackPanelSUCCESS {
    color: #28a745 !important;
}

.map-financial-table {
    font-family: Consolas,monospace !important;
}


.map-editable-table.table .form-control {
    font-size: inherit;
    line-height: 1;
    padding: .375rem .15rem
}

.map-editable-table.table select.form-control {
    height: auto;
}

.map-editable-table.table .input-group-text {
    font-size: inherit;
    line-height: 1;
    padding: .375rem .25rem
}

.map-editable-table.table td {
    padding: 0.1em;
    vertical-align: middle;
}

.map-editable-table.table .btn {
    font-size: inherit;
    line-height: 1;
    padding: 0;
}

.map-editable-table.table .map-star-required {
    font-size: 0.5rem;
}

a.map-btn-size {
    font-size: 0.8rem;
}

i.map-calendar-icon.fas.fa-calendar-alt {
    font-size: 1.2rem;
    padding-top: 0.4rem;
    color: #17a2b8;
}


span.map-popup-form .map-star-required {
    padding-top: 1.2em;
    padding-left: 0.4em;
    font-size: 0.6em;
}

.input-group.map-editable thead {
    display: table-header-group;
}

.btn-info:hover {
    background-color: #138496;
    border-color: #117a8b
}

a:hover .map-btn-edit {
    color: #138496;
}

a:hover .map-btn-delete {
    color: red;
}

span.project_list_item {
    display: inline-block;
    width:  330px;
    word-wrap: break-word;
    word-break: break-all;
}

div.map-project-list {
    width: 330px;
    min-width: 120px;
}

form.map-popup.map-calendar-popup {
    margin-bottom: 10em;
    margin-right: 10em;
    margin-top: 5em;
}
