a{
	color: var(--a-link-color);
}
.btn-primary {
	color: var(--btn-primary-color) !important;
	background-color: var(--btn-primary-background) !important;
	border-color: var(--btn-primary-border-color) !important;
}
.btn-primary:hover {
	opacity: 0.8;
}
html, body{
	height: 100%;
}
body > footer{
	position: sticky;
	top: 100vh;
}
body {
	height: 100vh;
	display:flex;
	flex-direction:column;
	background-color: var(--bs-body-bg);
	color: var(--bs-body-color);
}
.navbar-dark, .footer-dark {
	background-color: var(--bs-navbar-dark);
}
.main {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding: 1rem;
	background-color: var(--bs-table-bg);
	width: 100%;
}
.main > .card:not(:nth-of-type(1)) {
	margin-top: 3rem !important;
}
.navbar-layer-container {
	width: 100%;
}
.navbar-nav > .btn-group {
	flex-grow: 1;
}

.content_wrapper{
	width: 100%;
}
footer > span {
	flex-grow: 1;
	text-align: center;
}
/* Form */
.menu-form{
	display: inline;
}
.login_form.form_container{
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: calc(100vh - 137px);
}
.login_form > .card {
	margin: auto;
	min-width: 30%;
}
.login_form .card > .card-title{
	width: 100%;
	padding: .5em 1em;
	font-weight: 700;
	text-align: left;
}
.login_form input{
    border: 0x solid transparent !important;
}
.login_form input:focus,
.login_form input[type="text"]:focus,
.login_form input[type="password"]:focus {
    outline: none !important;
    border: 0px solid transparent !important;
    box-shadow: none !important;
}
.login_form button{
	width: 100%;
}
.form-floating > .form-control-plaintext ~ label::after, 
.form-floating > .form-control:focus ~ label::after, 
.form-floating > .form-control:not(:placeholder-shown) ~ label::after, 
.form-floating > .form-select ~ label::after {
	color: var(--bs-primary);
	background: transparent !important;
}
.site_logo {
	max-width: 260px;
	margin: 0 auto 20px;
	display: block;
}
.btn-purple,
.btn-purple:hover,
.btn-purple:active{
	background-color: var(--btn-purple-background) !important;
	color: var(--btn-purple-color);
}
.form_container {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 15px;
	margin: auto;
	text-align: center;	
}
.form-control {
	border-radius: 0;
}
.form-floating {    
	margin-bottom: -1px;
}  
.form-floating.top > input,
.form-floating.top > select {
	margin-bottom: -1px;
	border-top-left-radius: 0.375rem !important;
    border-top-right-radius: 0.375rem !important;
}
.form-floating.bottom > input,
.form-floating.bottom > select {
	margin-bottom: 10px;	
    border-bottom-left-radius: 0.375rem !important;
    border-bottom-right-radius: 0.375rem !important;
}

.form_container .form-floating:focus-within {
    z-index: 2;
}

.form-floating .form-control:focus::placeholder,
.form-floating > label
{
	color: #000!important;
	opacity: .9;
}
.form-floating .form-control:focus::placeholder {
	opacity: .4;
}

.form-error{
    font-size: 0.8em;
}
@media (max-width: 767.98px) {		
	.login_form {
		width:100%;
		height:100%;
	}		
}		
.form-group > label {
	font-weight: 500;
}
.form_links {
	margin-top: 0;
}
	.form_links > a.btn {
		margin-left: 0;
		padding-left: 0;
		text-decoration: none;
		color: var(--bs-body-color);
	}
	.form_links > .btn-purple {
		margin-left: 0;
		width:100%;
	}
.bs-actionsbox .btn-group.btn-group-sm{
	width: 100%;
}
.dropdown.bootstrap-select.show-tick.disabled.form-control.entity_permissions_picker {
	max-width: 350px;
}
.entity_view_line{
	line-height: 32px;
}
.permissionByExistingUserModal{
	max-width: 250px;
}
.card_entity_add_user_accounts{
	max-height: 350px;
	overflow: auto;
}
.inline-img{
	max-width: 400px;
}
.template_thumbnail,
.product_thumbnail,
.brand_logo_thumbnail{
	max-width: 200px;
	max-height: 100px;
}
.admin_pages_settings_name{
	max-width: 250px;
	width: 250px;
}
.alert {
	margin: 0 auto 1rem auto;
	width:100%;
	border-radius: 0;
	text-align: center;
}
.card {
  background-color: var(--card-background);
}
.table-dark, .table-dark thead, .table-dark tbody, .table-dark th, .table-dark tr, .table-dark td,
.table, .table thead, .table tbody, .table th, .table tr, .table td {
	background: var(--card-background);
	border-color: var(--dark-table-border);
	color: var(--bs-body-color);
}
.table-dark th, .table th {
	background: var(--table-header);
	border-color: var(--dark-table-border);
}
.btn-secondary {
	background-color: var(--card-background) !important;
	border-color: var(--card-background) !important;
}
.navbar .btn-secondary {
	background-color: var(--bs-navbar-dark) !important;
	border-color: var(--bs-navbar-dark) !important;
	color: var(--bs-gray-400);
	margin-left: 0 !important;
  	margin-right: 0 !important;	
	animation: glow 1s ease-in-out infinite alternate;
}
.navbar .btn-secondary:hover {
	color: var(--bs-body-color);
}
.no-padding-btn {
	padding: 0 !important;
	border: 0 !important;
	line-height: 1;
}
input[type="number"], 
input[type="text"], 
input[type="password"], 
input[type="email"], 
input[type="date"], 
.location_file_input, .form-select-sm, #let_location, select {
	background-color: var(--bs-dark-text-input-bg) !important;
	border: 1px solid var(--bs-dark-text-input-bg) !important;
	color: var(--bs-dark-text-input-color) !important;
	filter: none;
}
footer, .footer-dark {
	background-color: var(--bs-navbar-dark);
}
footer span{
	text-align: center;
}

/* filters */
.filterArea > div, .filterArea > form, .adminFilter > div, .pager > div, .pageListHolder > div, .pageNumberHolders > div, .finalPage > div { display: inline-block; }
.pager > div.hidden, .adminFilter > div.hidden { display: none!important; }
.pager, .adminFilter { margin-right: 8px; }
.objHolder { margin-right: 8px; padding-right: 8px; }
.objHolder .label { font-family: "Roboto", sans-serif; font-weight: bold; padding-right: 8px; }
.objHolder > div { display: inline-block; }
/* end filters */


/* pagination */
.pager {
	color: var(--bs-btn-color);
	font-size: 11px;
	font-weight: normal;
	min-width: 300px;
	text-align: right;
	align-items: center !important;
	display: flex !important;
}
.pager.hidden{
	display: none;
}
.pager > div{
	display: inline-block;
}
.goToPageNumber {
	background-color: #fff;
	-moz-appearance: none;
	-webkit-appearance: none;
	resize: none;
	border: 1px solid var(--pagination-border);
}
.goToPageHolder {
	width: 50px;
	border-left: 1px solid var(--pagination-border);
	padding: 0 8px;
}
.pageListHolder {
	margin-right: 8px;
}
.pageNumberHolders {
	margin: 0 4px;
}
.pageNumbers {
	cursor: pointer;
	text-align: center;
	padding: 4px;
	border: 1px solid var(--pagination-border);
	background: var(--pagination-page-numbers-background);
	color: var(--bs-btn-color);
	margin: 0 2px;
}
.goToPage, .goToPage:hover {
	/* color: #000;
	background: var(--btn-primary-background) !important; */
	border: none;
}
.pageNumbers.active {
	background: var(--bs-body-bg);
	color: var(--bs-btn-color);
}
.firstPage, .nextPage {
	cursor: pointer;
}
.section-header .titleWithPagination{
	display:block;
	min-width: 200px;
}
@media screen and (max-width: 500px){
	.mobile_pagination_holder {
		flex-direction: column !important;
		margin-left: auto;
		margin-right: auto;
		min-width: 280px;
		padding-top: 8px;
	}
	.mobile_pagination_holder > * {
		margin-bottom: 8px;
	}
}  
/* end pagination */


/* modals*/
.modal-header{
	color: var(--bs-body-color) !important;
	border-bottom: 1px solid var(--bs-navbar-dark);
}
.modal-body{
	color: var(--bs-body-color) !important;
	background: var(--bs-body-bg);
}
.modal-footer {
	border-top: 1px solid var(--bs-navbar-dark);
}

body .modal-backdrop.show {
	opacity: .8;
}
.toastHolder{
	position: fixed;
	right: 0;
	padding: 16px;
}
.toast-header img{
	max-width: 45px;
	max-height: 24px;
}
.toast-header{
	background-color: var(--background-sectionheader);
}
.toast .close{
	background-color: var(--background-sectionheader);
	color: #999;
	border: 0;
}
.toast-header strong {
	color: #ededed;
}
.clear_filter_btn{
	white-space: nowrap;
}
.card-section-header,
.dashboardSection .section-header,
.card_select_location .section-header,
.card_upload_documents .section-header,
.card_send_costs .section-header {
	background-color: var(--background-sectionheader);
	padding: 1em;
}
.labelCtrlsColumn{
	width: 30%;
}
.editCtrlsColumn{
	width: 140px;
	max-width: 140px;
}
.dashboardSection .pagerListings table tr{
	display: none;
} 
.dashboardSection .pagerListings table tr:nth-child(1),
.dashboardSection .pagerListings table tr:nth-child(2),
.dashboardSection .pagerListings table tr:nth-child(3),
.dashboardSection .pagerListings table tr:nth-child(4),
.dashboardSection .pagerListings table tr:nth-child(5){
	display: table-row;
}
.dashboardSectionPastMonth table th:nth-child(3),
.dashboardSectionPastMonth table td:nth-child(3){
	display: none;
}
.print_problem_highlight{
	background-color: #900;
	padding: 0.5em;
	display: block;
	text-align: center;
}

/* user contact form colours*/
#approval_form .form-floating > .form-control{
	border: 0 !important;
	margin-bottom: 1px;
	border-bottom: 2px solid var(--card-background) !important;
}
#approval_form .form-floating > .form-control:disabled,
#approval_form .form-floating > .form-control:disabled{
	opacity: 0.5;
}
#approval_form input[type="text"]:focus,
#approval_form input[type="password"]:focus {
	outline: none !important;
	box-shadow: none !important;
}
#approval_form select{
	border-radius: 0;
}
.approve_file_selection_block{
	margin-top: 3px;
	padding: 1rem .75rem;
	min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
	line-height: 1.25;
}

.contact_details_holder .contact_info_previous,
.contact_details_holder .contact_info_next,
.admin_contact_details_container .contact_info_previous,
.admin_contact_details_container .contact_info_next{
	display: none;
}



.admin_contact_details_container #approval_form .form-floating input,
.admin_contact_details_container #approval_form .form-floating select{
	background-color: var(--card-background) !important;
	color: var(--bs-body-color) !important;
	border-color: var(--dark-table-border) !important;
	border-left: 0 !important;
	border-right: 0 !important;
	border-top: 0px;
	border-radius: 0;
}
.toast{
	background-color: var(--card-background);
}
.modal-header,
.modal-footer{
	background-color: var(--background-sectionheader);
}
#ceiling-dropzone{
	background-color: var(--background-sectionheader);
}
.uploadedFilessingleCard{
	width: 30px;
	height: 36px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.form-control::file-selector-button,
.form-control::file-selector-button:hover,
.form-control:hover::file-selector-button,
.form-control:hover::file-selector-button:hover {
	background-color: var(--background-sectionheader) !important;
}
.approveFileDiv {
	max-width: 120px;
	font-size: 10px;
}
.approveFileDiv .closeBtn{
	color: var(--btn-primary-background) !important;
	/*font-size: 25px;
	float: right;
	border-radius: 8px;*/
}
.approveFileDiv .closeBtn:hover{
	opacity: 0.5;
	cursor: pointer;
}
#extraLargeModal .uploadForm .dz-button{
	font-size: 50px;
}
.admin_contact_details_container .form-control:disabled,
.admin_contact_details_container .form-floating > .form-control:disabled ~ label::after, 
.admin_contact_details_container .form-floating > :disabled ~ label::after,
.admin_contact_details_container .form-select:disabled {
	background-color: transparent !important;
	color: var(--dark-table-border) !important;
}
.admin_contact_details_container .form-floating .form-control:focus::placeholder, 
.admin_contact_details_container .form-floating > label {
	color: var(--bs-body-color) !important;
}
.admin_contact_details_container .approve_file_selection_block {
	background-color: var(--card-background);
	border: 0 !important;
}
.card_select_location .disabled{
	pointer-events: none;
	background: #ededed; 
}

.rows_per_page{
	min-width: 200px;
}
.DisplayOrderAdministration table tr{
	display: none;
}
.DisplayOrderAdministration table tr:nth-child(1),
.DisplayOrderAdministration table tr:nth-child(2),
.DisplayOrderAdministration table tr:nth-child(3),
.DisplayOrderAdministration table tr:nth-child(4){
	display: table-row;
}
.DisplayOrderAdministration table td:nth-child(3), .DisplayOrderAdministration table td:nth-child(4), .DisplayOrderAdministration table td:nth-child(5), .DisplayOrderAdministration table td:nth-child(6),
.DisplayOrderAdministration table th:nth-child(3), .DisplayOrderAdministration table th:nth-child(4), .DisplayOrderAdministration table th:nth-child(5), .DisplayOrderAdministration table th:nth-child(6){
	display: none;
}
.order_view_details_btn{
	white-space: nowrap;
}
.dashboardSectionOrderProgress table td:nth-child(2), .dashboardSectionOrderProgress table td:nth-child(3),
.dashboardSectionOrderProgress table th:nth-child(2), .dashboardSectionOrderProgress table th:nth-child(3){
	display: none;
}
.proof_of_print_thumb,
.proof_signature_thumb,
.staff_signature_thumb{
	max-width: 260px;
	max-height: 200px;
	cursor: pointer;
}
.full_size_proof,
.full_size_signature,
.full_size_staff_signature{
	max-width: 100%;
}
.add_entity{
	white-space: nowrap;
}
.add_approval_files{
	margin-top: 20px;
}
.new_user_register_lnk{color: #fff !important;}

.disclaimer_content{
	white-space: pre-wrap;
	max-height: 200px;	
}

.custom_hide{
	height:0;
	padding: 0;
  	margin: 0;
	overflow:hidden;
}
.sequence_holder{
	padding-top: 0.375rem;
	padding-bottom: 0.375rem;
	line-height: 1.5;
}
.question_change_sequence:hover{
	color: #999;
}
.question_change_sequence.disabled{
	border: 0;
	color: #ccc;
}
.question_name_input{
	min-height: 150px !important;
}
.question_order{
	font-size: 9px;
	border: solid 1px #ddd;
}
.question_order_proof{
	max-width: 600px;
	padding-right: 16px;	
}
.question_order_proof_row{
	border-bottom: solid 1px #ddd;
}
.question_order_proof_row:last-child{
	border-bottom: 0;
}
.question_order_proof_row td:last-child{
	text-align: center;
}
.questions_header{
	font-weight: bold;
}
.questions_header th{
	padding: 4px;
}
.question_order td{
	background: #555;
	padding: 4px;
}
.bad_answer, 
.bad_answer td, 
.bad_answer tr {
	background-color: #900 !important;
	border: 0 !important;
}
#unlockkey{
	max-width: 300px;
	background: #333 !important;
	border-color: #333 !important;
	color: #ededed !important;	
}
.unlock-key-field-icon{
	float: right;
	margin-left: -25px;
	margin-top: -25px;
	position: relative;
	z-index: 2;
	cursor: pointer;
}

.entity_python_setting_table tr td:first-child{
	text-transform : capitalize;
}
.entity_python_setting_table tr td:first-child i{
	font-size: 11px;
	text-transform : none;
	color: #ccc;
}
td[data-f="first_name"],
td[data-f="last_name"],
#approval_form #First,
#approval_form #Last{
	text-transform: capitalize;
}

.orders_view_all_container,
.orders_view_all_container button{
	font-size: 14px;
}

@media screen and (max-width: 992px){
	.navbar-toggler {
		background: #999 !important;
	}
	.navbar  {
		/* background: #ededed !important; */
	}	
	#navbarNav  {
		margin-top: 8px;
	}	
	.navbar-layer-container .btn{
		width: calc(100% - 0.5rem);
		text-align: left;
		margin-bottom: 4px;
	}
}

#delegate_last_name.border-danger,
#delegate_first_name.border-danger{
	border: 2px solid rgba(var(--bs-danger-rgb),var(--bs-border-opacity)) !important;
	--bs-border-opacity: 1;
}
#delegate_last_name.border-danger::placeholder,
#delegate_first_name.border-danger::placeholder{
	color: #f00 !important;
}

.admin_contact_details_container .approval_form_helptip,
.admin_contact_details_container .indentification_file_notice{
	display: none;
}
.contact_details_holder .approval_form_helptip{
	display: none;
}
.permissions_card .approval_form_helptip{
	display: block !important;
} 

.card-header.card-section-header {
	text-transform: capitalize;
}
.yellow_text{
	color: #ffdd00;
}
.card-header select,
.card-header input::placeholder,
.table th {
	text-transform: capitalize;
}

.modal .btnFirst.disabled{
	border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
	background-color: var(--card-background) !important;
	border-color: var(--card-background) !important;
}


.minimum_fee_placeholder,
.total_cost_placeholder{
	display: none;
}

#approval_form .invalid-feedback{
	color: #fff !important;
}
select.form-control.disabled{
	background: var(--disabled-select);
	opacity: 0.5;
}

.dashboard_request_placeholder #messageTextarea,
#reasonTextarea,
#support_message{
	border: 2px #666 solid;
	background: #444;
	color: #fff;
}
.dashboard_request_placeholder #messageTextarea::placeholder,
#reasonTextarea::placeholder,
#support_message::placeholder{
	color: #bbb;
}


.form-floating-static {
	position: relative;
	margin-bottom: 1rem;
}
.form-floating-static label{
	min-width: 130px;
}
.form-floating-static .form-control-plaintext {
	display: block;
	width: 100%;
	padding: 0.75rem 0.75rem;
	border: 1px solid #ced4da55;
	border-radius: 0.375rem;
	background-color: #ffffffee !important; /* light gray background */
	min-height: calc(3.5rem + 2px);
	color: var(--bs-dark-text-input-color) !important; /* Bootstrap muted color */
	opacity: 0.5;
}
.attorneyCsvResultHolder {
  max-height: 350px;
}
.change_password_form_container{
	max-width: 600px;
}
.change_password_form_container .input-group-text {
  background: #999;
  color: #000;
}

.dashboardSection .attorneys_needing_verification_dashboard_container th:nth-child(4),
.dashboardSection .attorneys_needing_verification_dashboard_container th:nth-child(5),
.dashboardSection .attorneys_needing_verification_dashboard_container td:nth-child(4),
.dashboardSection .attorneys_needing_verification_dashboard_container td:nth-child(5){
	display: none;
}
.help_and_support_modal .section-header{
	display: none !important;
}
#togglePassword{
	height: 40px;
	width: 40px !important;
	background: #aaa;
	color: #000;
}
.alert-success a{
	color: #000;
	font-weight: bold;
}

/* start:  request to effectively remove styling from the view details panel, making it compact/text only */
#approval_form.compact_view .user_details_approve_holder{
	padding: 4px;
}
#approval_form.compact_view .user_details_approve_holder * {
	padding: 0 !important;
	margin: 0 !important;
	min-height: auto !important;
	background-color: transparent !important;
	color: #fff !important;
	opacity: 1 !important;
	border: 0 !important;
} 
#approval_form.compact_view .user_details_approve_holder .card-header{
	display: none !important;
}
#approval_form.compact_view .user_details_approve_holder label {
	min-width: 50%;
	font-weight: bold;
}
#approval_form.compact_view .user_details_approve_holder .approveFileDiv {
	margin-right: 8px !important;
}
#approval_form.compact_view .user_details_approve_holder .approveFileDiv a{
	color: var(--a-link-color) !important
}
#approval_form.compact_view .user_details_approve_holder .approve_file_selection_block_inner{
	padding-top: 8px !important;
}
.attorney_request_message_container{
	max-height: 240px;
	overflow: auto;
}
/* end:  request to effectively remove styling from the view details panel, making it compact/text only */

.pw_response{
	max-width: 390px;
    text-align: left;
	font-size: 0.9rem;
	padding-bottom: 16px;
}


/* location required documents */
.data_required_doc_sequence:hover{
	color: #999;
}
.data_required_doc_sequence.disabled{
	border: 0;
	color: #ccc;
}