/*# cf9200 = main gold color*/
html {
    font-size: 14px;
}

body {
    color: #000;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
}

.navbar-brand
{
    padding: 0px;
}

.navbar
{
    padding: 0px;
    background: #000 !important;
}

.navbar.test-color {
    padding: 0px;
    background: #003dcf !important;
}

.navbar.prod-color {
    padding: 0px;
    background: #800000 !important;
}

.nav-link:hover{
    background: #555 !important;
}



.container {
    max-width: 100%;
}

#CampaignTable tr.odd, .odd-row,
#CampaignPersonTable tr.odd,
#ContactsTable tr.odd,
.dt-bootstrap5 tr.odd
{
    background-color: #eee;
}

.visible-row-odd {
    background-color: #eee !important;
}

input[type=checkbox] {
    height: 25px;
    width: 25px;
}

#CampaignTable th {
    border-bottom: 1px solid #888 !important;
    font-weight: bold;
    background-color: #ccc;
}

#CampaignTable td {
    border-left: 1px solid #ccc;
}

#CampaignTable,
table.table
{
    border: 1px solid #ccc;
    width: 100%;
}

.collapsing {
    transition: .5s;
}

.collapse.show {
    transition: .5s;
}

.error {
    color: #F00;
}

table.dataTable thead th,
.table thead th
{
    background-color: #bbb;
}

table.dataTable thead th {
    border-left: 1px solid #999;
}

#ExportProspectsTable thead th {
    border-left: none;
}

#CampaignTable_info {
    display: none;
}

#CampaignTable td,
table.dataTable tbody td 
{
    padding-bottom: 1px !important;
    padding-top: 1px !important;
}

#CampaignTable tr {
    height: 32px;
}

#ProspectsTable.dataTable,
#CampaignTable.dataTable,
#CampaignPersonTable.dataTable,
#ContactsTable.dataTable,
#AffiliateTable.dataTable,
#AssistantsTable.dataTable,
#AddressesTable.dataTable,
#PhoneNumberTable.dataTable,
#EmailAddressesTable.dataTable,
#campaignPersonRolesTable.dataTable {
    margin-top: 0px !important;
}


.prospects-row{
    vertical-align: top;
}

.prospects-row div {
    margin-top: 5px;
}

.prospects-row div.campaignnote-table,
.prospects-row div.connection-contact-table
{
    margin-top: 0px;
}


.prospects-row .material-icons {
    margin-top: 0px;
}



#CampaignTable tr:hover,
.dataTable tbody tr:hover {
    background-color: #cf9200 !important;
    /*color: #fff;*/
    cursor: pointer;
}

#CampaignTable_filter, #ProspectsTable_filter { display: none;}

.section-header {margin: 0px;}


.section-header {
    background-color: #555 !important;
    font-weight: bold;
    font-size: 1.5em;
    color: #fff;
    text-align: center;
}

.section-header .filter-label
{
    float: left; 
    padding-top: 4px;
}

.section-header input[type=date]
{
    width: 120px; 
    float: left;
    padding: 1px 2px 1px 1px;
    margin-top: 3px;
}


.spaced-form .row {
    padding-top: 5px;
}



.grid-input-text
{
    width: 100%;
}

.grid-label
{
    font-weight: bold;
}

.dropdown-checkbox-label {
    position: relative;
    top: 4px;
}

.material-icons {
    /*position: relative;
    top: 3px;*/
    margin-top: 3px;
}

.btn-square-icon {
    padding: 0px 2px 0px 2px;
    margin-left: 5px;
}


/*override bootstrap fields to have top aligned infield form labels*/
.form-floating > label {
    opacity: 0.85 !important;
    transform: scale(0.85) translateY(-0.6rem) translateX(0.15rem) !important;
    padding-top: 9px !important;
    color: #000!important;
    font-size: 16px;
    font-weight: normal;
}
.form-floating > input,
.form-floating > select,
.form-floating > button {
    height: 45px !important;
    padding: 10px 10px 0px 10px !important;
    line-height: 1.25;
}
.form-floating > a {
    height: 45px !important;
    padding: 17px 10px 0px 10px !important;
    line-height: 1.25;
}



.form-floating > .form-control {
    max-height: 45px !important;
    padding: 17px 10px 0px 10px !important;
}

.form-control-typeahead {
    height: 45px;
    padding-top: 17px;
}


.nav-tabs .nav-link.active {
    background-color: #cf9200 !important;
    border-color: #cf9200 !important;
    color: #fff !important;
}

.nav-tabs .nav-link:hover {
    background-color: #bb8400 !important;
    border-color: #bb8400 !important;
    color: #fff !important;
}

.nav-tabs .nav-link {
    color: black !important;
    background-color: #eee;
    border-color: #bbb;
    margin-right: 2px
}



/*override bootstrap colors*/
.primary-color {
    color: #cf9200 !important;
} 

.btn-primary {
    color: #fff;
    background-color: #cf9200 !important;
    border-color: #cf9200;
}
.btn-primary.disabled {
    border-color: #cf9200;
}

.form-check-input:checked {
    background-color: #cf9200;
    border-color: #cf9200;
}

.form-check-input-readonly:checked {
    background-color: #999;
    border-color: #999;
}

.form-check-input-readonly {
    background-color: #eee;
    border-color: #999;
}

.form-input-readonly {
    background-color: #eee;
    border-color: #999;
}

.input[type="checkbox"] {
    background-color: #f00 !important;
}
.btn-primary:hover {
    color: #fff;
    background-color: #bb8400;
    border-color: #bb8400;
}
.modal-header {
    background-color: #aaa
}

.btn-outline-icon {
    color: #bb8400;
    border-color: #bb8400;
    padding: 4px;
    height: 35px;
}
.btn-outline-icon:hover {
    color: #fff;
    background-color: #bb8400;
    border-color: #bb8400;
}
.btn-outline-icon .material-icons
{
    margin: 0px;
}


.btn.btn-primary.focus,
.btn.btn-primary:focus {
    border-color: #8b6200;
    outline: none;
    box-shadow: 0px 0px 5px #8b6200;
}

#ProspectsTable_wrapper {
    overflow-y: scroll;
    overflow-x: hidden;
    max-height: 300px;
}

#ProspectsTable_wrapper thead tr
{
    position: sticky;
    top: 0px;
    height: 48px;
}

#ProspectsTable_wrapper tfoot tr {
    position: sticky;
    bottom: 0px;
}

#tableTotals {
    background-color: #bbb !important;
}

#tableExportTotals {
    border: 0px solid #fff;
    font-weight: bold;
}

.prospectlist-icon {
    white-space: nowrap;
}

.connection-contact-table {
    float: left;
}

.connection-contact-table.connection-expanded,
.campaignnote-table.campaignnote-expanded {
    /*border: 1px solid #aaa;
    border-radius: 10px;*/
    border: 1px solid transparent;
}
.connection-expanded .connection-contact-name {
    font-weight: bold;
    border-top: 1px solid #aaa;
}

.connection-expanded .connection-contact-name:first-child {
    border-top: none;
}

.connection-contact-notes {
    display: none;
}
.connection-expanded .connection-contact-notes {
    display: block !important;
}

.prospectlist-campaignnote-short {
    max-width: 300px;
    text-overflow: ellipsis;
    overflow: hidden;
    border: 1px solid transparent;
}

.campaignnote-expanded .prospectlist-campaignnote-long {
    display: block;
}

.prospectlist-campaignnote-long {
    display: none;
}

.campaignnote-expanded .prospectlist-campaignnote-short {
    display: none;
}

.campaignnote-expanded .campaignnote-description-short {
    display: none !important;
}

.campaignnote-expanded .campaignnote-description-long {
    display: block;
}

.campaignnote-date {
    font-weight: bold;
}

.campaignnote-separator, .connection-separator {
    border-top: 1px solid #aaa;
    border-left: 0px;
    border-right: 0px;
    border-bottom: 0px;
}



.transparent tr {
    background-color: transparent !important
}

.prospect-amt-text {
    padding-right: 10px;
}

.export-prospect-amt
{
    text-align: right !important;
    padding-right: 10px;
}

.edit-prospect-value {
    display: none;
    direction: rtl;
    width: 100%;
}

.custom-select
{
    min-width: 110px;
}

.edit-buttons
{
    display: none;
}

.donor-group-detail td {
    color: #777;
    font-style: italic;
}

/*override expanded donor group notes & connections to not be italic or gray*/
table .prospectlist-campaignnote td, .prospect-list-campaign-note-column,
.prospect-list-connections-column, table .prospect-list-connections-column td,
.prospectlist-campaignnote-short, .connection-contact-table td {
    color: #000 !important;
    font-style: normal !important;
}

.donor-group-detail.visible-row-odd td{
    color: #777;
}

.donor-group-detail .prospect-display-name {
    padding-left: 20px;
}

.prospect-display-name {
    float: left;
}

.prospect-donor-group-expand {
    float: left;
    padding-left: 10px;
}


.status-total-row td,
.summary-row
{
    background-color: #bbb !important;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000 !important;
    border-left: none;
    border-right: none;
    height: 33px;
    font-weight: bold;
}

.vertical-summary-row {
    background-color: #bbb !important;
    border-top: 2px solid #000!important;
    border-bottom: 1px solid #000 !important;
    border-left: none;
    border-right: none;
    font-weight: bold;
    text-align: right !important;
    padding-top: 0px !important;
}

.status-header-row td {
    background-color: #fff !important;
    border-bottom: 2px solid #000 !important;
    border-left: none;
    border-right: none;
    height: 33px;
    font-weight: bold;
    position: sticky; top: 48px; z-index: 1;
}

.export-status-header-row td {
    background-color: #fff;
    border-bottom: 2px solid #000;
    border-top: 0px solid #fff;
    border-left: none;
    border-right: none;
    height: 33px;
    font-weight: bold;
    padding-top: 10px;
}

.summary-row-total td {
    border-bottom: 2px solid #000;
    border-left: none;
    border-right: none;
}



.displayOptionsTable {
    white-space: nowrap
}
.displayOptionsTable th, .displayOptionsTable td{
    padding-left: 10px;
}

.displayOptionsTable tr:nth-of-type(even) {
    background-color: #eee;
}
.displayOptionsTable th {
    background-color: #bbb;
}
.displayOptionsTable div {
    cursor: pointer;
}



.modal-xl {
    width: 90%;
    max-width: 90%;
}

.modal-xl .modal-content {
    max-height: 90vh;
    overflow-y: auto;
    overflow-x: hidden;
}

.modal-xxl {
    width: 95%;
    max-width: 95%;
}

.modal-xl .modal-content {
    max-height: 95vh;
    overflow-y: auto;
    overflow-x: hidden;
}


/*datatables pagenation*/
.page-link {
    border-color: #cf9200;
    color: #cf9200;
}
.page-item.active .page-link {
    background-color: #cf9200;
    border-color: #cf9200;
}
.page-item.disabled .page-link {
    border-color: #cf92007f;
}
.page-link:hover {
    border-color: #cf9200;
    color: #cf9200;
    background-color: #cf92007f;
}
.page-link:focus {
    background-color: #fff;
    border-color: #cf9200;
    color: #cf9200;
    outline: none;
    box-shadow: none;
}
.page-link:focus:hover {
    background-color: #cf9200;
    border-color: #8b6200;
    color: #fff;
    outline: none;
    box-shadow: 0px 0px 5px #8b6200;
}


.btn.btn-primary.focus,
.btn.btn-primary:focus {
}

.border-red {
    border: 1px solid #f00 !important;
}

.required-label{
    color: #f00;
}


#confirm-modal-content {
    z-index: 10000;
}

.contact-modified
{
    font-size: x-small;
    text-align: right;
    vertical-align: bottom;
    height: 100%;
}

.contact-info-header
{
    font-weight: bold;
    width: 100%
}

/*get rid of the default arrow for the input list / datalist control*/
input::-webkit-calendar-picker-indicator {
    opacity: 0;
}


.btn-small
{
    padding: 0px;
}

.popover {
    background: #ddd;
}

.popover {
    background: #ddd;
}

#editContactTitle div {
    color: #fff;
    background-color: #cf9200 !important;
    border-color: #cf9200;
    cursor: pointer;
    border-radius: 0.25rem;
    padding: 6px 12px 6px 12px;
    float: left;
    margin-right: 10px;
}

#editContactTitle span {
    color: #fff;
    padding: 6px 12px 6px 12px;
    float: left;
    margin-right: 10px;
}


.typeahead-dropdown-menu {
    transform: translate(0px, 45px) !important;
    box-shadow: 0px 5px 5px #aaa;
}

#CampaignNotesCampaignPersonTableFilter_wrapper {
    padding: 0px 5px 10px 10px;
}

.material-icons.add-campaign-note-icon,
.material-icons.add-connection-icon{
    display: none;
}

.dropdown-menu {
    padding: 5px;
    border: 1px solid #333;
    font-weight: normal;
}

.dropdown-menu:hover{
    cursor: pointer;
}

#dropboxBrowseTable_wrapper{padding-right: 0px;}

.items.dropdown-menu {
    max-height: 300px;
    overflow-y: scroll;
}

.hidden {
    display: none;
}

.report-header {
    font-weight: bold;
    font-size: 1.5em;
    text-align: center;
}

.report-header table {
    border: none !important;
    border: 0px solid #fff !important;
}

.tox-statusbar
{
    display: none !important;
}

.html-editor-invalid{
    border: 1px solid red;
}

.campaign-note-description-columns {
    max-height: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
}

#tableExportTotals
{
    float: right;
}

#ExportProspectsTable,
#TableExportTotals {
    width: 100%;
}

.export-table-vertical-subtotal-amt
{
    width: 120px;
}

#campaignNotesAssignToPersonFilterGroup{
    margin: 1px !important;
}

div.background-notes-table{
    margin-top: 0px;
}




#overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    display: none;
}

#overlay.show {
    display: block;
}

.current-selected-status-col {
    background-color: #cf920099
}

/*fixes issue with opening multiple levels of modals sometimes, TODO: does make some buttons seem to be in front of the modal shadow*/
.modal-backdrop.fade.modal-stack.show {
    z-index: 0 !important;
}

.link:hover {
    text-decoration: underline;
}

#campaignNotesTable tr {
    min-height: 35px;
}

#campaignNotesTable td{
    vertical-align: top;
}

.campaign-note-description-columns p {
    margin: 0;
}

/*.single-spaced p,
.mce-content-body p, */
/*Doing this to force tinymce to do single spacing in the editor*/
p {
    margin-block-start: 0px;
    margin-block-end: 0px;
}

.icon-link {
    text-decoration: none;
    color: black;
}

.icon-link:hover {
    color: black;
}


/*override the datatable sort arrow size*/
table.dataTable thead > tr > th.sorting:before, table.dataTable thead > tr > th.sorting:after, table.dataTable thead > tr > th.sorting_asc:before, table.dataTable thead > tr > th.sorting_asc:after, table.dataTable thead > tr > th.sorting_desc:before, table.dataTable thead > tr > th.sorting_desc:after, table.dataTable thead > tr > th.sorting_asc_disabled:before, table.dataTable thead > tr > th.sorting_asc_disabled:after, table.dataTable thead > tr > th.sorting_desc_disabled:before, table.dataTable thead > tr > th.sorting_desc_disabled:after, table.dataTable thead > tr > td.sorting:before, table.dataTable thead > tr > td.sorting:after, table.dataTable thead > tr > td.sorting_asc:before, table.dataTable thead > tr > td.sorting_asc:after, table.dataTable thead > tr > td.sorting_desc:before, table.dataTable thead > tr > td.sorting_desc:after, table.dataTable thead > tr > td.sorting_asc_disabled:before, table.dataTable thead > tr > td.sorting_asc_disabled:after, table.dataTable thead > tr > td.sorting_desc_disabled:before, table.dataTable thead > tr > td.sorting_desc_disabled:after {
    font-size: .6em !important;
}

#ProspectsTable thead tr th {
    border-left: 1px solid transparent;
    border-right: 1px dashed #868686 ;
}