/* marketing list filters */
.filterPre{
	background-color: rgb(245 21 21 / 6%);
	border-radius: 5px;
	padding: 0.2rem;
	margin: 0.1rem 0.15rem 0.1rem 0.15rem;

	font-size: 85%;
	font-weight: normal;
	color: #212529;

	text-transform: uppercase;

	line-height: 1.2;

	width: fit-content;
	display: inline-block;
}
.filterPre span {
	font-weight: bold;
	text-transform: initial;
}

/* identeco modals from component */
div.identeco-modal .modal-header {
	background-color: #dba3db;
	padding: 0.8rem;
}

/* prevent table row height from changing on page load */
.idv2_dashboard_container .table.list td.CTX{
	padding: 2px;
}

/* Hide marketing page subheadings */
.hero .hero__content small {
	display: none;
}
/*************************/

/* Dashboard badges */
.idv2_dashboard_container .badge {
	font-size: 0.8rem;
	text-transform: uppercase;
	padding: 0.5em 1em;
}

/* Global table vertical align */
table th, table td {
	vertical-align: middle;
}
/*******************************************/

/****** Busy overlay ******/
#page-content-wrapper:not([data-show-busy]) .identeco-busy-overlay {
	display: none;
}
.identeco-busy-overlay {
	height: 100%;
	width: 100%;
	left: 0;
	cursor: wait;
	top: 0;
	z-index: 10000;
	position: fixed;
	background-color: rgba(0,0,0,0.3);
	align-items: center;
	display: flex;
	justify-content: center;
}
.identeco-busy-overlay h1 {
	color: black;
}
.busy-overlay-loading {
	display: block;
	font-size: 5rem;
	color:#cd00cc;
	text-align: center;
	width: 100%;
	height: fit-content;
	background-color: white;
	padding: 2rem;
}
/*************************/

/* Order line modal table styling */
div#mdlOrderLine .table-container {
	max-height: 20rem;
	overflow-y: auto;
}

div#mdlOrderLine div#detailContainer[data-has-fields="N"] div#orderLineFields{
	display: none;
}
div#mdlOrderLine div#detailContainer[data-has-file="N"] div#orderLineFile{
	display: none;
}
div#mdlOrderLine div#detailContainer[data-has-file="Y"][data-has-fields="Y"] div#orderLineFile{
	margin-bottom: 1rem;
}

div#mdlOrderLine div#detailContainer div#orderLineFile table#fileDetails th.btnDownload {
	width: 16ch;
}
div#mdlOrderLine div#detailContainer div#orderLineFile table#fileDetails th.btnDownload,
div#mdlOrderLine div#detailContainer div#orderLineFile table#fileDetails td.btnDownload {
	text-align: center;
}
div#mdlOrderLine div#detailContainer div#orderLineFile table#fileDetails th[data-name="rowCount"] {
	width: 12ch;
}

/* Appointments table styling */
div#mdlAppointments .table-container {
	max-height: 20rem;
	min-height: 20rem;
	overflow-y: auto;
}

/* Directorships modal in company report */
#mdlAppointments #tblDirectorships th[data-name="Company number"]{
	width: 17ch;
}

#mdlAppointments #tblDirectorships td[class="Appointment type"] {
	text-transform: uppercase;
}
#mdlAppointments #tblDirectorships th[data-name="Appointment type"] {
	width: 17ch;
}

#mdlAppointments #tblDirectorships th[data-name="Appointment date"]{
	width: 14ch;
}
#mdlAppointments #tblDirectorships th[data-name="Resignation date"]{
	width: 14ch;
}
#mdlAppointments #tblDirectorships th[data-name="View"]{
	width: 10ch;
	text-align: center;
}
#mdlAppointments #tblDirectorships td.View{
	width: 10ch;
	text-align: center;
}

/****************************/


/****** Search *******/
/* Search results */
.search-result .search-result__header #cmpSearchHeading,
.search-result .search-result__header #mrtgSearchHeading {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.search-result .search-result__header #cmpSearchHeading img.rfaImg {
	width: 2.5ch;
}
.search-result .search-result__header #cmpSearchHeading img.rfaImg.blur {
	filter: blur(4px);
}

/* Pagination */
.pagination li.current {
	width: 9rem;
}

/* Search form */
.company-search-form {
	display: flex;
	padding: 0.2rem;
}

/* Search filters + toggles */
.searchFilter {
	display: flex;
	align-items: center;
}
.searchFilter .toggle {
	margin-left: 0.5rem;
	margin-right: 1rem;
}

/* Search result tables */
.search-results__details table:not(.list) td strong {
	white-space: nowrap;
}
.search-results__details table:not(.list) td:nth-child(2n) {
	padding-right: 1rem;
	padding-left: 1rem;
}
.search-results__details .elapsed {
	font-size: 12px;
	color: #9f939e;
}
.search-result table:not(.table) {
	width: auto;
}
/**********************/

/* Override design table styling (not specific enough) */
@media (max-width: 767.98px) {
	.dashboard .card table tr td {
	display: table-cell;
	}
}
/*******************************************/


/*********** Global toggle styles ************/

.routine-submenu.site-nav__dropdown  {
	padding-left: 1.7rem;
}

/* nested sub menu styling */
.routine-submenu.site-nav__dropdown .routine-submenu {
	padding-left: 1.1rem;
	position: relative;
}

.routine-submenu.site-nav__dropdown .routine-submenu li::before {
	content: "";
	border-left: 2px solid #ddd;
	border-bottom: 2px solid #ddd;
	position: absolute;
	left: 3px;
	top: 0;
	width: 12px;
	height: 55%;
}

/*******************************************/


/********* Dashboard sidebar ********/
.dashboard__nav-list > li a {
	transition: .3s;
}
.dashboard__nav-list > li a:hover {
	padding-left: 5px;
	background: rgba(152, 35, 151, 0.05);
}
.routine-submenu .active {
	border-radius:4px;
}
.dashboard .dashboard__nav-list li > a.active {
	font-weight: bold;
}
.dashboard .dashboard__nav-list .routine-submenu > li a.active {
	font-weight: bold;
}

.dashboard__nav-list span.username::before {
	margin-left: 0.5ch;
	content: "(";
}

.dashboard__nav-list span.username::after {
	content: ")";
}

.dashboard__nav-list li span.username span {
	color: #cd00cc;
	font-weight: normal;
}

body:not([data-subscribed]):not([data-oneoff]) .dashboard__sidebar .dashboard__nav [data-require-subscription],
body:not([data-logged-in]) .dashboard__sidebar .dashboard__nav [data-require-login],
body:not([data-subscribed]):not([data-oneoff]) nav#navMainMenu [data-require-subscription],
body:not([data-logged-in]) nav#navMainMenu [data-require-login] {
	color: #919191 !important;
}

body:not([data-subscribed]) [data-require-subscription="hide"],
body:not([data-logged-in]) [data-require-login="hide"] {
	display: none !important;
}

.dashboard__nav-list svg {
	width: 1rem;
	height: 16px;
}
.dashboard__nav-list li a:not([href="/admin"]) svg path,
.dashboard__nav-list li a:not([href="/admin"]) svg circle {
	fill: #a7a2a7 !important;
}
/*******************************************/

/******* Tooltips ******/
.crep.tooltip .tooltip-inner{
	text-align: left;
}
@media only screen and (min-width: 992px) {
	.crep.tooltip .tooltip-inner{
		max-width: 400px
	}
}
.tooltip.toolkit-box-tooltip .tooltip-inner {
	background-color: white;
	color: black;
	font-weight: bold;
	border: 1px solid grey;
}
.tooltip.toolkit-box-tooltip.show {
	opacity: 1;
}
.tooltip.toolkit-box-tooltip .arrow {
	bottom: 1px;
}
.tooltip.toolkit-box-tooltip .arrow::before {
	border-top-color: white;
}
/*******************************************/

/* Global bootstrap notify styling */
div[data-notify="container"]  {
	width: unset !important;
	min-width: 10rem;
	max-width: 33%;
	z-index: 9999 !important;	/* set notify msg above modal backdrop */
}
div[data-notify="container"] [role="alert"] {
	box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
div[data-notify="container"] [role="alert"] [data-notify="dismiss"] {
	top: -2px !important;
	right: 4px !important;
}
div[data-notify="container"] [data-notify="message"]{
	white-space: pre-wrap;
}
/*******************************************/

/* Identeco .feedback-changed override (originates from webapp.css) */
.feedback-changed{
	transition: background-color;
	animation: feedback_changed_identeco 1s 1 ease-out;
}
@keyframes feedback_changed_identeco {
	25% {
		background-color: #cd00cc;
	}
}
/********************************************************************/

/******* Mobile nav *******/
.site-header-menu.is-open #reportMonitoring input {
	position: initial;
}
.site-header-menu.is-open #reportMonitoring {
	display: flex;
}
.site-header-menu.is-open #reportMonitoring .toggle{
	margin-left:unset;
}
.site-header-menu.is-open #reportMonitoring input[name="monitoring_note"] {
	height: 39.19px;
	width: 100%;
}
.site-header-menu.is-open #reportMonitoring label.toggle {
	min-width: var(--width);
}
.site-header-menu.is-open #company_report_buttons form {
	width: 100%;
}
.site-header-menu.is-open *::-webkit-scrollbar {
	background-color: rgb(249 144 233 / 60%);
}
.site-header-menu.is-open #divSidebarCompanyChildren [data-name="totalCount"]::before,
.site-header-menu.is-open #divSidebarCompanyChildren [data-name="totalCount"]::after {
	color: white;
}
.site-header-menu.is-open #divSidebarCompanyChildren [data-name] {
	color: yellow;
}

	/* Positioning of mobile nav monitor button + input */
	.site-header-menu.is-open #company_report_buttons > div {
		justify-content: space-between;
	}
	.site-header-menu.is-open #company_report_buttons > div {
		justify-content: flex-start;
	}

.site-header-menu.is-open .site-nav__list span[data-counter]:not([data-show="N"])::after,
.site-header-menu.is-open .site-nav__list span[data-counter]:not([data-show="N"])::before,
.site-header-menu.is-open .site-nav__list span[data-counter]:not([data-show="N"]) span[data-counter-limit]:not([data-counter-limit=''])::before {
	color: white;
}

.site-header-menu.is-open .site-nav__list span[data-counter]:not([data-show="N"]) span[data-counter-count]::before,
.site-header-menu.is-open .site-nav__list span[data-counter]:not([data-show="N"]) span[data-counter-limit]:not([data-counter-limit=''])::after {
	color: yellow;
}
/********************************************************************/

/* Monitored companies */
.modal--monitor-add .modal-dialog, .modal--monitor-add .modal-dialog {
	max-width: 40rem;
}
/********************************************************************/

/* Subscription modal */
div.modal#subscribe-modal .modal-dialog {
	max-width: 500px;
}
div.modal#subscribe-modal .modal-dialog .modal-body div#content {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-top: 2rem;
    margin-bottom: 1rem;
}
div.modal#subscribe-modal .modal-dialog .modal-body div#content span {
	font-size: 1.4rem;
}

/* internal msg show modals (confirm/error) */
.modal--msg-dialog .modal-dialog {
	max-width: 650px;
}
.modal--msg-dialog.confirm .modal-header {
	background-color: rgb(204 0 204 / 13%);
}
.modal--msg-dialog.error .modal-header {
	background-color: rgb(255 0 0 / 33%);
}
.modal--msg-dialog .modal-title,
.modal--monitor-add .modal-title {
	font-size: xx-large;
}
/********************************************************************/

/* Sidebar counters */
span[data-counter][data-show="N"]{
	display: none;
}
span[data-counter]:not(.badge){
	font-size: 0.9rem;
	vertical-align: top;
	font-weight: bold;
	position: relative;
}
span[data-counter]:not(.badge)[data-show="Y"]::before {
	margin-left: 0.5ch;
	content: "(";
	color: black;
}
span[data-counter]:not(.badge)[data-show="Y"]::after {
	content: ")";
	color: black;
}
span[data-counter]:not([data-show="N"]) span[data-counter-count]::before {
	content: attr(data-counter-count);
}

span[data-counter]:not(.badge):not([data-show="N"]) span[data-counter-limit]:not([data-counter-limit=''])::before {
	content: "\200a/\200a";
	color: black;
}
span[data-counter]:not([data-show="N"]) span[data-counter-limit]:not([data-counter-limit=''])::after {
	content: attr(data-counter-limit);
}

span[data-counter]:not(.badge) span[data-counter-count]::before,
span[data-counter]:not(.badge) span[data-counter-count]::after,
span[data-counter]:not([data-show="N"]) span[data-counter-limit]:not([data-counter-limit=''])::after {
	color: var(--primary-color);
}

span.badge.badge-important {
	color: white;
	background-color: var(--primary-color);
	font-weight: bold;
	animation: jump 5s ease 2s infinite normal;
}
@keyframes jump {
	0%{transform: translateY(0);}
	5%{ransform: translateY(0);}
	10%{transform: translateY(-0.75em);}
	12.5%{transform: translateY(0);}
	15%{transform: translateY(-0.50em);}
	20%{transform: translateY(0);}
	25%{transform: translateY(0);}
}
span.badge.badge-important.danger {
	background-color: red;
}


body:not([data-logged-in]) .badge-subscription {
	display: none !important;
}
body[data-subscription-state="none"] .badge-subscription[data-none],
body[data-subscription-state="renew"] .badge-subscription[data-renew] {
	display: inline-flex;
	color: white !important;
	font-size: 0.8rem;
}

body[data-subscription-state="none"] .badge-subscription {
	background-color: red;
}
body[data-subscription-state="renew"] .badge-subscription {
	background-color: #bca900 !important;
}

body[data-subscription-state="none"] .badge-subscription::before {
	content: attr(data-none);
}
body[data-subscription-state="renew"] .badge-subscription::before {
	content: attr(data-renew);
}

/********************************************************************/

/* Override dropdown item active colours */
.dropdown-item.active, .dropdown-item:active {
	background-color: var(--primary-color);
}
/*******************************************/

/* Override modal styles */
.modal.msg.msg-confirm .modal-header{
	background-image: linear-gradient(217.17deg, rgb(183 10 182 / 60%) 10%, rgb(236 0 233 / 45%) 100%);
	border-color: var(--primary-color);
}
/*******************************************/

/* Mobile menu section counts */
.site-header-menu.is-open #divSidebarCompanyChildren a {
	display: flex;
	align-items: center;
}
.site-header-menu.is-open [data-counter] {
	font-size: small;
	font-weight: bold;
}

[data-require-subscription] .fa,
[data-require-login] .fa {
	margin-left: 0.2ch;
}
/*******************************************/


/*********** 'Elapsed' numeric styling ******/
.elapsedNumeric {
	font-weight: bold;
}
.dashboard .card table.dashboard__table tr td span.elapsedNumeric {
	font-size: inherit;
}
/********************************************************************/

/* Dashboard list tables (outside of company report) */
.idv2_dashboard_container .table.list th:not([data-sortable="N"]):hover{
	background-color: rgb(239 177 239) !important;
}
.idv2_dashboard_container .table.list td {
	vertical-align: middle;
}
.idv2_dashboard_container .table-container.scroll {
	overflow-y: auto;
	height: 100%;
}
.idv2_dashboard_container .table.list th, .idv2_dashboard_container .table.list td {
	padding: 0.4rem 0.4rem 0.4rem 0.4rem;
}
/********************************************************************/

/****** Inline bullets ******/
.filterWrapper ul.inline-bullets {
	color: #444;
	flex-wrap: wrap;
}
.filterWrapper .inline-bullets,
.filterWrapper ul.inline-bullets li>span {
	font-size: small;
}
ul.inline-bullets{
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
}
ul.inline-bullets li{
	list-style: "\2022" inside;
	padding-left: 1ch;
	white-space: nowrap;
}
ul.inline-bullets li>span{
	margin-left: 1ch;
}
ul.inline-bullets li:first-child{
	list-style: none;
	padding-left: 0;
}
ul.inline-bullets li:first-child>span{
margin-left: 0;
}
.search-results__details ul.inline-bullets ::marker {
	color: #9f939e;
}
/********************************************************************/


/* Charts */
.chartContainer canvas {
	border-radius: 10px;
}
/* Company report chart sizing */
.chartContainer[data-size="S"] [data-id] .content {
	display: none;
}

.chartContainer[data-size="M"] [data-id] .content {
	height: 30vh;
}

.chartContainer[data-size="L"] [data-id] .content {
	height: 60vh;
}

.chartContainer[data-size="S"] #chartMsg {
	display: none !important;
}

/* Icon 'go to medium' */
[data-size="S"] [data-toggle-chart]::before { content: "Show graph"; }
[data-size="S"] [data-toggle-chart]::after { content: "\f201"; }
/* Icon 'go to large' */
[data-size="M"] [data-toggle-chart]::before { content: "Expand graph"; }
[data-size="M"] [data-toggle-chart]::after { content: "\f424"; }
/* Icon 'go to shrink' */
[data-size="L"] [data-toggle-chart]::before { content: "Hide graph"; }
[data-size="L"] [data-toggle-chart]::after { content: "\f422"; }

[data-toggle-chart] {
	width: 18ch;
}

.cmpTableTitle [data-chart-id] {
	margin-left: auto;
}

[data-toggle-chart]::after {
	font-size: 1rem;
	font-family: 'Font Awesome 5 Free';
	font-weight: bold;
	margin-left: 0.5ch;
}

/* Hide chart expansion button when not subscribed */
body:not([data-subscribed]) .blur-with-component .chartContainer [data-toggle-chart] {
	/* Important to override d-flex */
	display: none !important;
}
/*******************************************/

/* Misc */
[data-target="#login-modal"] {
	white-space: nowrap;
}
#login-modal #login-msg {
	position: relative;
	min-height: 2rem;
	max-height: 4rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 4px;
	color: white;
	font-size: 14px;
}
#login-modal #login-msg #msg {
	flex: 1;
}
#login-modal #login-msg.danger {
	background-color: #bf4545;
}
#login-modal #login-msg.success {
	background-color: #76ad76;
}
#login-modal .button--submit {
	min-height: 52px;
}
.gradient-background {
	background: linear-gradient(217.17deg, #982397 21.56%, #ec00e9 109.52%);
}
/*******************************************/

/****** Marketing tables ******/
.caTable {
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	font-size: 22px;
}
.caTable thead {
	background: linear-gradient(217.17deg, #982397 21.56%, #ec00e9 109.52%);
	color: white;
}
.caTable th:first-of-type {
	border-top-left-radius: 10px;
}
.caTable th:last-of-type {
	border-top-right-radius: 10px;
}
.caTable {
	width: 80%;
}

.caTable thead{
	font-size: 17px;
}
.caTable thead tr th:nth-child(2), .caTable thead tr th:nth-child(3) {
	text-align: center;
}
.caTable tbody{
	font-size: 19px;
}
.caTable tr td:nth-child(2), .caTable tr td:nth-child(3) {
	text-align: center;
}

.caTable td + td { border-left:1px solid #dee2e6; }

/* Display none for now; may be a better way to display the information from the table on mobile devices */
@media (max-width: 780px) {
	.caTable { display: none; }
}
/*********************************/

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
	cursor: pointer; outline:none; }

/* used by js in !master:~350 - hack to stop mobile menu transitioning into view on resize */
.disable-transitions * {
	animation: none !important;
	transition: none !important;
}

/* Marketing site styles */
#BST-tab-pane .service-box .service-box__price {
	font-size: 1rem;
}
.nav-tabs .nav-link{
	background-color: rgba(0,0,0,0);
}

/*********************************/

/* Lists/history */

.idv2_dashboard_container .recordCount {
	margin-top: 0rem;
	margin-bottom: 0.5rem;
	font-size: 1rem;
}

.idv2_dashboard_container .recordCount.limited {
	color: red;
}

/* Large radio + label */
.form-check-input.lg {
	margin-top: 0;	/* remove bootstrap 0.3rem */
}
.form-check-input.lg + .form-check-label {
	padding-left: 0.8rem;
}

/* Routine tables to be as tall as their content */
.divDashboard.layout-flex .idv2_dashboard_container.layout-flex .card.layout-flex .table-container.scroll-flex {
	height: fit-content;
}


/* Prevent recaptcha badge showing behind sticky footer (temp solution) */
.grecaptcha-badge {
	bottom: 4rem !important;
}


/* table colours */
.idv2_dashboard_container table tfoot tr {
	background-color: #ffd1ff;
}
.idv2_dashboard_container div:not(.vertical-layout) table th {
	background-color: #ffd1ff;
}
/* striped tables */
.idv2_dashboard_container .table-striped:not(.filtered-striped)>tbody>tr:nth-of-type(odd),
.idv2_dashboard_container .table-striped.filtered-striped>tbody>tr.filtered-stripe,
.idv2_dashboard_container .list-striped .list-row:nth-of-type(odd) {
	background-color: #ffefff;
}

.idv2_dashboard_container table#tblOrderSummary tr.rowOrderLineAdditional td,
.idv2_dashboard_container table#tblOrderLines tr.rowOrderLineAdditional td {
	font-size: 0.9rem;
	line-height: 0.9rem;
	font-weight: bold;
}

.idv2_dashboard_container table#tblOrderSummary tr.rowOrderLineAdditional td:nth-child(1),
.idv2_dashboard_container table#tblOrderLines tr.rowOrderLineAdditional td:nth-child(1){
	text-align: right;
}

div#divCreditFigures span span,
.site-header-menu.is-open div#divCreditFigures span span {
	font-weight: bold;
}
div#divCreditFigures span span {
	color: var(--primary-color);
}
.site-header-menu.is-open div#divCreditFigures span span {
	color: #ffa3ff;
}
.site-header-menu.is-open div#divCreditFigures span {
	color: white;
}

/* Subscription alert with renew button */
div.subscription-alert a {
	margin-left: 2ch;
	font-weight: bold;
	font-size: 0.95rem;
}

.dashboard .product-box.service .button {
	width: 9rem;
}