:root {
    --theme-primary-color: #005ced; /*dark blue*/
    --theme-secondary-color: #409ed5; /*light blue*/
    --theme-warn-color: #ff9204; /*orange */
    --theme-danger-color: #ff2255; /*red*/
    --theme-danger-color-rgb: 255, 34, 85;
    --theme-success-color: #10c379; /*green*/
    --theme-success-color-rgb: 16, 195, 121; /* green rgb*/
    --theme-muted-color: #e2e2e0; /*gray-ish */
    --theme-bg-color: #ecf1fd; /*gray */
    --theme-dark-color: #2c2c2a; /*black shade */
    --theme-link-color: #409ED5;

    --bs-success-rgb: var(--theme-success-color-rgb);
    --bs-danger-rgb: var(--theme-danger-color-rgb);
}

a:hover {
    color: #3584b2;
}

body {
    background: var(--theme-bg-color);
    font-size: 1rem;
    font-weight: 400;
    font-family: 'Open Sans', sans-serif;
}

footer {
    font-size: 80%;
}


/* -- bootstrap overrides --*/

.navbar-toggler {
    --bs-navbar-toggler-font-size: 1rem;
    --bs-border-width: 0;
}

.navbar-toggler:focus {
    --bs-navbar-toggler-focus-width: none;
}

.card {
    box-shadow: 0 7px 14px 0 rgba(65, 69, 88, 0.1), 0 3px 6px 0 rgba(0, 0, 0, 0.07);
    border: 0;
    --bs-card-border-width: 0;
    --bs-card-cap-bg: transparent;
}

.card-header {
    background-color: transparent;
    border-bottom: 0;
    font-size: 1.5rem;
}

.card-footer {
    background-color: transparent;
    border-top: 0;
    --bs-card-cap-padding-y: 1rem;
}

.dropdown-menu {
    --bs-dropdown-border-width: 0;
    --bs-dropdown-box-shadow: var(--bs-box-shadow);
    box-shadow: var(--bs-dropdown-box-shadow);
}

/* .form-control,
.form-select {
    --bs-border-radius: 50rem;
} */

.btn-primary,
.btn-light,
.btn-outline-primary,
.btn-warning {
    border-radius: var(--bs-border-radius-pill) !important;
    padding-left: 1rem;
    padding-right: 1rem;
    min-width: 85px;
}

.btn-primary {
    background-color: var(--theme-primary-color);
    border-color: var(--theme-primary-color);
}

.btn-outline-primary {
    border-color: var(--theme-primary-color);
    --bs-btn-hover-bg: var(--theme-primary-color);
    --bs-btn-hover-border-color: var(--theme-primary-color);
}

.btn-info {
    color: #fff;
    background-color: var(--theme-secondary-color);
    border-color: var(--theme-secondary-color);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #3788b8;
    --bs-btn-hover-border-color: #3788b8;
}

.btn-danger,
.btn-danger-no-alert {
    background-color: var(--theme-warn-color);
    border-color: var(--theme-warn-color);
    --bs-btn-hover-bg: #e18104;
    --bs-btn-hover-border-color: #e18104;
}

.btn-light {
    border: 0;
    color: var(--theme-link-color);
    background-color: #0b57d00d;
    --bs-btn-hover-color: var(--theme-link-color);
    --bs-btn-hover-bg: #0b57d01c;
}

.btn-white {
    color: #000;
    background-color: #fff;
    --bs-btn-border-color: #fff;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--theme-warn-color);
    --bs-btn-hover-border-color: var(--theme-warn-color);
    --bs-btn-focus-shadow-rgb: 217, 164, 6;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #fff;
    --bs-btn-active-border-color: #fff;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #ffc107;
    --bs-btn-disabled-border-color: #ffc107;
    cursor: pointer
}

.close-btn {
    outline: none;
}

.modal {
    --bs-modal-border-width: 0;
    --bs-modal-box-shadow: var(--bs-box-shadow);
}

.modal-dialog {
    box-shadow: var(--bs-box-shadow);
}

.modal-header {
    border-bottom: 0;
}

.modal-footer {
    border-top: 0;
}

.table > :not(:last-child) > :last-child > * {
    border-bottom-color: inherit !important;
}


.alert-success,
.alert-info,
.alert-warning,
.alert-danger {
    text-align: center;
    --bs-alert-border-color: transparent;
}

.alert-danger {
    --bs-alert-color: var(--theme-danger-color);
}

.accordion-button:not(.collapsed) {
    color: #ffffff;
    background-color: var(--theme-primary-color);
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}