@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

:root { --core-accent: #9371BC; --core-accent-hover: #7954A6; --core-accent-soft: rgba(147,113,188,.14); --core-accent-border: #9371BC; --core-card-border: color-mix(in srgb, var(--core-accent-border) 50%, transparent); --core-accent-focus: rgba(147,113,188,.4); --core-accent-contrast: #FFFFFF; --core-neutral-border: rgba(160,170,178,.55); }
.core-accent-modal { background-color:#263238; background-image:none; }
.core-accent-modal .form-control,.core-accent-modal .form-select { background-image:none; }
.auth-form-control { min-height:3.5rem; background-color:#0002; border:1px solid #fff5; border-radius:var(--bs-border-radius, .375rem); color:#fff; }
.auth-form-control:focus { background-color:#fff3; border-color:#fff7; color:#fff; box-shadow:0 0 0 .25rem var(--core-accent-focus); }
.auth-form-control::placeholder { color:rgba(255,255,255,.65); opacity:1; }
.auth-form-control.form-select { color-scheme:dark; }
.auth-form-control.form-select option { background-color:#fff; color:#212529; }
.form-floating > .auth-form-control ~ label { color:rgba(255,255,255,.72); }
.form-floating > .auth-form-control:focus ~ label,
.form-floating > .auth-form-control:not(:placeholder-shown) ~ label { color:rgba(255,255,255,.78); }
body.core-theme-light .auth-form-control { background-color:rgba(255,255,255,.72); border-color:rgba(147,113,188,.5); color:#172127; color-scheme:light; }
body.core-theme-light .auth-form-control:focus { background-color:#fff; border-color:var(--core-accent); color:#172127; }
body.core-theme-light .auth-form-control::placeholder { color:rgba(23,33,39,.62); }
body.core-theme-light .auth-form-control.form-select option { background-color:#fff; color:#212529; }
body.core-theme-light .form-floating > .auth-form-control ~ label { color:rgba(23,33,39,.72); }
.auth-verification-page .otp-verification-card { overflow:hidden; }
body.core-theme-light .auth-verification-page .otp-verification-card .card-title,
body.core-theme-light .auth-verification-page .otp-verification-card .form-card-body,
body.core-theme-light .auth-verification-page .otp-verification-card .form-card-body p,
body.core-theme-light .auth-verification-page .otp-verification-card .form-card-body .alert { color:#172127 !important; }
.auth-form-control:disabled { opacity:.7; }
.accent-color-trigger { position:relative; display:flex; width:100%; min-height:5rem; align-items:center; justify-content:center; padding:1.5rem 3.5rem; border:1px solid var(--core-accent-border); border-radius:var(--bs-border-radius, .375rem); background:var(--core-bg, rgba(255,255,255,.06)); color:var(--core-accent-contrast); cursor:pointer; }
.accent-color-trigger:focus-within { outline:2px solid var(--core-accent-focus); outline-offset:2px; }
.accent-color-value { font-weight:600; letter-spacing:.04em; text-align:center; }
.accent-color-picker { position:absolute; inset:0; width:100%; height:100%; margin:0; cursor:pointer; opacity:0; }
.core-notification-badge { background-color:var(--core-accent) !important; color:var(--core-accent-contrast) !important; }

/* CSS / Bootsrtap / Core925 Custom Document */
h1 {
	font-size: 2rem;
}

h2 {
	font-size: 1.75rem;
}

h3 {
	font-size: 1.50rem;
}

h4 {
	font-size: 1.25rem;
}

h5 {
	font-size: 1.25rem;
}

h6 {
	font-size: .85rem;
}
.text-warning {
	color: #CFAFF5 !important;
}
.text-danger {
	color: #9371BC !important;
}

.layout-wrapper {
	width: 100%;
	display: flex
}

.layout-container {
	min-height: 100vh
}

.layout-wrapper .layout-container {
	width: 100%;
	display: flex;
	flex: 1 1 auto;
	align-items: stretch;
}

.layout-container.core-bg {
	background-color: #00141D;
	border-radius: 5px;
}
.modal .accordion th {
	border-bottom: 0px;
}
.side-menu {
	width: 16.25rem;

}
.helper-button {
	position: fixed;
    top: 93vh;
}
.secondary-header-devider {
	border-top: solid thin rgb(182, 134, 240);
}
.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: .25rem;
    font-size: .875em;
    color: var(--core-accent);
}
.was-validated .form-select:invalid {
    border-color: var(--core-accent);
}
.form-control.is-valid, .was-validated .form-control:valid {
    border-color: var(--core-accent);
}
.was-validated .form-control:invalid {
    border-color: var(--core-accent);
}
.was-validated .form-select:valid {
    border-color: var(--core-accent);
}
.helper-button .nav-link {
	width: 44px;
    padding-left: 12px;
	transition-duration: 0.5s;
}
.side-menu-show .helper-button .nav-link {
	width: 207px !important;
    padding-left: 12px;
	transition-duration: 0.5s;
}
.side-menu .side-menu-layout {
	height: 100%
}
.auth-section-container {
	min-height: 90vh;
    margin-bottom: 80px;
}
.navbar-height {
	min-height: 56px;
}

.main-layout {
	flex-basis: 100%;
	min-width: 0;
	max-width: 100%;
}

.content {
	display: flex;
	align-items: stretch;
	flex: 1 1 auto;
	flex-direction: column;
	justify-content: space-between;
}

.container.mw-unset {
	max-width: unset;
}

.row>* {
	margin-top: 10px;
	padding-left: 5px;
	padding-right: 5px;
}

.bg-white {
	background-color: white;
}

.core-font-white {
	color: rgb(255, 255, 255)
}

.core-font-grey {
	color: #b2b2b2
}

.table {
	--bs-table-bg: transparent !important;
	--bs-table-color: #fff !important;
	--bs-table-border-color: #fff5;
}

.core-bg {
	background-color: rgba(0, 0, 0, .1) !important;
}

.core-btn-bg {
	background-color: rgba(0, 0, 0, .1);
}

.core-btn-light-bg {
    background-image: linear-gradient(45deg, rgba(118, 70, 176, 0.6), rgb(182, 134, 240));
}
.btn-outline-core-light {
    --bs-btn-color: rgb(182, 134, 240);
    --bs-btn-border-color: rgb(182, 134, 240);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: rgb(182, 134, 240);
    --bs-btn-hover-border-color: rgb(182, 134, 240);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: rgb(182, 134, 240);
    --bs-btn-active-border-color: rgb(182, 134, 240);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: rgb(182, 134, 240);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: rgb(182, 134, 240);
    --bs-gradient: none;
}
.btn-outline-core-green {
    --bs-btn-color: rgb(147, 113, 188);
    --bs-btn-border-color: rgb(147, 113, 188);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: rgb(147, 113, 188);
    --bs-btn-hover-border-color: rgb(147, 113, 188) !important;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: rgb(147, 113, 188);
    --bs-btn-active-bg: rgb(147, 113, 188);
    --bs-btn-active-border-color: rgb(147, 113, 188) !important;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: rgb(147, 113, 188);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: rgb(147, 113, 188);
    --bs-gradient: none;
}
.core-border {
	border-color: rgba(147, 113, 188, .5) !important;
}

a {
    color: rgb(147, 113, 188);
}
input[type="checkbox" ]
 {
    background-color: rgb(147, 113, 188) !important;
}
input[type="checkbox"] {
	accent-color: rgb(147,113,188);
	}
.core-light-border {
	border-color: rgb(147, 113, 188) !important;
}
.form-check-input:checked {
	background-color: rgb(147, 113, 188) !important;
	border-color: rgb(147, 113, 188) !important;
	}
	.alert-success {
		background-color: rgb(147, 113, 188) !important;
		border-color: rgb(147, 113, 188) !important;
		color: rgb(147, 113, 188) !important;
		}

		.bg-danger {
			background-color: rgb(147, 113, 188) !important;
		}
/* ✅ YOUR BRAND COLOR */
:root {
    --brand-success: rgb(147, 113, 188) !important;
}

/* INPUT BORDERS */
.form-control.is-valid,
.form-select.is-valid {
    border-color: var(--core-accent);
    box-shadow: 0 0 0 0.2rem var(--core-accent-focus) !important;
}

/* VALID TEXT */
.valid-feedback {
    color: var(--core-accent) !important;
}

/* CHECKBOX / RADIO */
.form-check-input:checked {
    background-color: var(--core-accent) !important;
    border-color: var(--core-accent) !important;
}

/* SUCCESS TEXT */
.text-success {
    color: var(--brand-success) !important;
}

/* SUCCESS BUTTONS */
.btn-success {
    background-color: var(--brand-success);
    border-color: var(--brand-success);
}

.btn-success:hover {
    background-color: rgb(130, 95, 170) !important;
    border-color: rgb(130, 95, 170) !important;
}

.profile-avatar {
    width:28px;
    height:28px;
    border-radius:50%;
    object-fit:cover;
	border: solid 1.5px #fff6;
	font-size: 14px;
}

.profile-placeholder{
    width:28px;
    height:28px;
    border-radius:50%;
    background:#9371BC;
    color:white;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:600;
}
.profile-large {
	border: solid thin rgb(255, 255, 255);
	border-radius: 5px;
	background-repeat: no-repeat;
	background-position: center;
}
.profile-photo-trigger {
	border: 0;
	background: transparent;
	padding: .5rem;
	line-height: 1;
}
.profile-photo-trigger:focus-visible {
	outline: 2px solid var(--brand-success);
	outline-offset: 2px;
}
.profile-modal {
	border: solid thin rgb(255, 255, 255);
	border-radius: 5px;
	background-repeat: no-repeat;
	background-position: center;
	height: 250px;
}
.user1 {
	background-image: url(images/users/user01.png);
	background-size: cover;
background-repeat: no-repeat;
}
.user2 {
	background-image: url(images/users/user02.png);
	background-size: cover;

}
.user3 {
	background-image: url(images/users/user03.png);
	background-size: cover;

}
.user4 {
	background-image: url(images/users/user04.png);
	background-size: cover;

}
.hotspot {
	cursor: pointer;
	transition-duration: 0.5s;
}
.hotspot:hover {
	opacity: 0.5;
	transition-duration: 0.5s;
}
.modal-accordion-text .table {
    --bs-table-color: #333 !important;
	color: #333 !important;
}
body {
	font-family: "Barlow", sans-serif;
	margin: 0;
	top: 0;
	left: 0;
	right: 0;
	font-size: 14px !important;
	overflow-x: hidden;
}
table {
	font-size: 14px !important;
}
.transparent {
	opacity: 0;
}
.collapsing + .nav-link i,
.collapse.show ~ .nav-link i {
    transform: rotate(180deg);
}
.modal-accordion .accordion-button {
color: #333 !important;
}
textarea {
	border-radius: 5px;
}
.h-100p {
	height: 100%;
}
/* new */
.main-layout {
	background-image: url(images/background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom right;
}
/* A custom personal accent changes only the decorative shell layers. */
body.core-custom-accent { background-color: #252b31; }
/* Keep the shell transparent to Bootstrap's body-level modal stack. */
body.core-custom-accent .main-layout { position:relative; background-image:none; background-color:transparent; }
body.core-custom-accent .main-layout::before { content:""; position:absolute; inset:0; z-index:0; background-color:#252b31; background-image:url(images/background.jpg); background-size:cover; background-position:bottom right; background-repeat:no-repeat; filter:grayscale(1); opacity:.5; pointer-events:none; }
body.core-custom-accent .main-layout > * { position:relative; }
body.core-theme-light.core-custom-accent { background-color:#d7dadd; }
body.core-theme-light.core-custom-accent .main-layout::before { background-color:#d7dadd; }
.opportunity-form-grid > div { min-width: 0; }
@media (min-width: 768px) { .opportunity-form-grid > div:nth-child(4), .opportunity-form-grid > div:nth-child(5), .opportunity-form-grid > div:nth-child(6), .opportunity-form-grid > div:nth-child(7) { flex: 0 0 25%; max-width: 25%; } }
.register-stepper {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.step {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 80px;
}

.step-circle {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #2c2f36;
    color: #aaa;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
}

.step-label {
    margin-top: 6px;
    font-size: 0.75rem;
    color: #aaa;
    text-align: center;
}

.step-line {
    flex: 1;
    height: 2px;
    background: #2c2f36;
    margin: 0 10px;
}
.fi {
	border-radius: 5px;
}
/* Active step */
.step.active .step-circle {
    background: #CFAFF5; /* your green */
    color: #000;
}

.step.active .step-label {
    color: #CFAFF5;
}

/* Completed step */
.step.completed .step-circle {
    background: #CFAFF5;
    color: #000;
}

.step.completed .step-label {
    color: #fff;
}
.app-brand-logo {
	background-image: url(images/core.svg);
	min-width: 100%;
	background-size: auto 41px;
	overflow: hidden;
	background-position: left top;
	background-repeat: no-repeat;
	height: 41px;
    margin-top: 4px;
    margin-bottom: 18px;
	display: block;
	margin-left: 3px;
}
.zoe-logo {
	background-image: url(images/zoe-light.png);
	min-width: 93px;
	background-size: cover;
	overflow: hidden;
	height: 30px;
	display: block;
}

.core-transition {
	transition: all 0.5s ease-in-out;
}

.core-active {
	background-color: #CFAFF5;
	color: rgb(255, 255, 255);
}

.core-active:hover {
	background-color: #CFAFF5;
	color: rgb(255, 255, 255);
}

.core-active:hover .fas {
	color: rgb(255, 255, 255) !important;
}

.text-white .fas {
	color: rgb(255, 255, 255) !important;
}

.nav-link:hover {
	background-color: rgb(1, 9, 14);
}

.text-bg-dark {
	background-color: #12191E !important;
}

.border-box {
	box-sizing: border-box;
}

.core-primary {
	background-color: rgb(1, 9, 14);
}

.core-bg-light {
	background-color: #12191E;
}

.row {
	--bs-gutter-x: 0;
	--bs-gutter-y: 0;
}

.core-container {
	min-height: 100%;
}

.h-10 {
	height: 40px;
}

.core-footer-spacer {
	margin-bottom: 70px !important;
}

.footer-logo {
	height: 42px;
	width: 110px;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	background-image: url(images/footer-logo.svg);
}

.dropdown-icon {
	background-color: transparent;
	border: none;
}

.right-0 {
	left: unset !important;
	right: 0;
}

.side-menu.close {
	width: 4rem;
	overflow: hidden;
	transition: width 0.3s ease-in-out;
}

.side-menu.close .menu-close .fa {
	display: none;
}

.side-menu-toggle {
	cursor: pointer;
}

.side-menu .nav-item {
	width: 100%;
	overflow: hidden;
}

/*
.side-menu.close .nav-item {
	max-width: 100%;
}
*/

.side-menu.close .app-brand-logo {
	width: 100%;
	background-size: auto 35px;
	overflow: hidden;
	background-image: url(images/core-icon.svg);
	margin-left: 0;
	background-position: center top;
	height: 41px;
    margin-top: 7px;
    margin-bottom: 15px;

}

.side-menu {
	left: 0;
	position: relative;
	width: 16.25rem;
	transition: width 0.3s ease;
}
.side-menu .nav-link-text {
	white-space: nowrap;
	overflow: hidden;
}
.side-menu.close .nav-link-text {
	display: none;
}

.nav-link-text {
	display: flex;
}

.core-text-green {
	color: var(--core-accent);
}

.header-menu-icon {
	display: none;
}

.actions-toggle {
	display: none;
}

/* Default styles for larger screens */

.btn-primary:active {
	background-color: var(--core-accent) !important;
}

.dropdown-item:active {
	background-color: var(--core-accent) !important;
}

.dark-bg {
	background-color: rgba(1, 9, 14, 0.9);
	color: #fff;
	transition-duration: 0.5s;
}

.search-input {
	z-index: 5;
	margin-top: -7px;
	left: 0;
	right: 0;
}

.search-input .dark-bg {
	background-color: rgb(1, 9, 14);
}

.search-input input {
	border: none !important;
	outline: none !important;
	height: 43px;
	padding-left: 15px;
	padding-right: 15px;
}

.close-search {
	margin-top: -27px;
	cursor: pointer;
}
.core-text-green a {
	color: var(--core-accent);
	transition-duration: 0.5s;
}
.core-text-green a:hover {
	color: rgb(255, 255, 255);
	transition-duration: 0.5s;
}


/* datatables */
.data-tables {
	color: rgb(255, 255, 255);
}

.data-tables th:first-child,
.data-tables td:first-child {
	text-align: left !important;
}

.data-table-btn {
	display: block;
	border: 0;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
	background-color: #CFAFF5;
	color: rgb(255, 255, 255);
}

.data-table-btn:hover {
	background-color: rgb(1, 9, 14);
}

.data-tables {
	font-size: 14px !important;
}

table.dataTable>thead>tr>th,
table.dataTable>thead>tr>td {
	text-align: left !important;
}

table.dataTable th.dt-type-numeric,
table.dataTable th.dt-type-date,
table.dataTable td.dt-type-numeric,
table.dataTable td.dt-type-date {
	text-align: left;
}

/* Actions */

.core-actions {
	--bs-bg-opacity: .8;
}

.action-btn-bg {
	background-image: linear-gradient(45deg, rgba(118, 70, 176, 0.6), rgb(182, 134, 240));
	background-color: rgb(0, 255, 210);

}

.action-btn-bg-disabled {
	background-image: linear-gradient(45deg, rgba(118, 70, 176, 0.2), rgba(118, 70, 176, 0.2));
	background-color: rgb(1, 9, 14);
	color: rgba(255, 255, 255, 0.2) !important;
}

.border-ntn {
	border-color: rgba(147, 113, 188, .3) !important;
}

.bg-primary {
	background-color: rgb(147, 113, 188) !important;
}

.core-modal-bg {
	background-color: rgb(1, 9, 14);
}

/* Keep every registration-step control on the shared Core925 form surface. */
.register-wizard textarea.form-control {
	min-height: 120px;
	resize: vertical;
}

.quote-originating-opportunity {
	margin-top: 15px;
}
body.core-custom-accent .core-modal-bg { background-color:#172127; background-image:none; }

[data-bs-theme=light] {
	--bs-blue: rgb(147, 113, 188);
	--bs-primary: rgb(147, 113, 188);
}

.modal-header {
	background-color: #0004;
	border-bottom: solid thin #0002;
}

.modal-body {
	background-color: #0001;
}

.modal-footer {
	background-color: #0002;
	border-top: solid thin #0003;
}

.modal-header .btn-close {
	--bs-btn-close-color: #fff !important;
}

.modal-footer .btn-dark {
	--bs-bg-opacity: .8;
}

a {
	text-decoration: none;
}

.chart-container {
	position: relative;
	height: 20px;
	/* Adjust as needed */
}

.custom-file-input {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	border: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	background: transparent;
}

input[type="range"]::-webkit-slider-runnable-track {
	background: #9E5EEB;
	/* Green background for track */
	height: 8px;
	border-radius: 5px;
}

input[type="range"]::-webkit-slider-thumb {
	background: #7646B0;
	/* Darker green for thumb */
	border: 2px solid #9E5EEB;
	height: 20px;
	width: 20px;
	border-radius: 50%;
	cursor: pointer;
	-webkit-appearance: none;
	margin-top: -6px;
	/* Center thumb on track */
}

/* Firefox */
input[type="range"]::-moz-range-track {
	background: #9E5EEB;
	/* Green background for track */
	height: 8px;
	border-radius: 5px;
}

input[type="range"]::-moz-range-thumb {
	background: #7646B0;
	/* Darker green for thumb */
	border: 2px solid #9E5EEB;
	height: 20px;
	width: 20px;
	border-radius: 50%;
	cursor: pointer;
}

/* Internet Explorer */
input[type="range"]::-ms-track {
	background: transparent;
	border-color: transparent;
	color: transparent;
	height: 8px;
	border-radius: 5px;
}

input[type="range"]::-ms-fill-lower {
	background: #9E5EEB;
	/* Green background for track */
	border-radius: 5px;
}

input[type="range"]::-ms-fill-upper {
	background: #9E5EEB;
	/* Green background for track */
	border-radius: 5px;
}

input[type="range"]::-ms-thumb {
	background: #7646B0;
	/* Darker green for thumb */
	border: 2px solid #9E5EEB;
	height: 20px;
	width: 20px;
	border-radius: 50%;
	cursor: pointer;
	margin-top: 0;
	/* No margin needed for IE */
}

.core-select option {
	background-color: #fff;
	color: #212529;
}

.form-check-input:checked {
	background-color: rgb(147, 113, 188);
	border-color: rgb(147, 113, 188);
  }

.form-check-input {
	background-color: rgb(147, 113, 188);
	border-color: rgb(147, 113, 188);
  }

.min-w-100 {
	min-width: 100px;
}

.accordion-button:not(.collapsed) {
	background-color: rgba(147, 113, 188, .3);
	box-shadow: none;
}

.progress-bar {
	background-color: rgb(147, 113, 188);
}

.toast-container {
	margin-bottom: 20px;
}

.modal-content {
	background-image: linear-gradient(216deg, #9371BC, rgba(1, 9, 14, .6) 500px);
}

.page-item .page-link:hover {
	background-color: rgba(0, 0, 0, 0.3);
	color: rgb(255, 255, 255);
}

.pagination {
	margin-bottom: 0;
}

.h-80vh {
	height: 80vh;
  }

.core-card-bg {
    background-color: rgb(147, 113, 188);
}
.core-card-header {
    background-color: #0004;
    border-bottom: solid thin #0007;
}
.core-card-footer {
    background-color: #0004;
    border-top: solid thin #0007;
}



/* to be removed, its copied into cheetah-main.css */


/* notes styles */
.notes-container {
    transition: all 0.3s ease;
}

.notes-container.close {
    bottom: -234px;
    transition: all 0.3s ease;
}

.core-green-bg {
    background-color: rgb(147, 113, 188);
}

.border-bottom-dashed {
    border-bottom-style: dashed !important;
}

.border-right-dashed {
    border-right-style: dashed !important;
}

.no-style {
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
}

.no-style:focus {
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.notes-previous {
    height: 0;
    transition: all 0.3s ease;
}

.notes-previous.open {
    overflow-y: auto;
    height: 185px;
    transition: all 0.3s ease;
}

.fa-caret-down {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}

.fa-caret-down.rotate {
    transform: rotate(180deg);
    transition: transform 0.3s ease;
}

.notes-previous::-webkit-scrollbar {
    display: none;
}

.notes-previous {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* full page loader */

.core-loader-container {
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	background: rgba(0, 0, 0, 0.6) !important; /* Black with opacity */
	backdrop-filter: blur(10px) !important; /* Blur effect */
	z-index: 2000;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-direction: column;
	margin: 0 !important;
	padding: 0 !important;
	transition:opacity .3s ease;
}
.core-loader-container[aria-hidden="true"] {
	opacity: 0;
	pointer-events: none;
}
.core-loader {
	border: 3px solid rgba(255, 255, 255, 0.2);
	border-top: 3px solid #fff;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	animation: spin 1s linear infinite;
	margin-bottom: 15px; /* Space between spinner and text */
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.core-loader-text {
	font-size: 1rem;
	text-align: center;
}

.fixed-bottom {
    z-index: 10;
}

.clickable {
	cursor: pointer;
}
.full-height {
	height: 100%;
}
/* Popup */

.popup.show {
	display: flex;
}
.popup {
	display: none;
	width: 400px;
	top: 25%;
	left: 33%;
	background-color: rgb(1, 9, 14);
	z-index: 6;
}
.popup-header {
    background-color: #0004;
    border-bottom: solid thin #0002;
}
.popup-body {
    background-color: #0001;
}
.popup-footer {
    background-color: #0004;
    border-top: solid thin #0002;
}
.popup-bg {
	background-image: linear-gradient(216deg, rgb(147, 113, 188), rgba(1, 9, 14, .6) 500px);
}

.popup textarea:disabled {
    color: white !important; /* Change the text color */
    background-color: #0004; /* Keep the original background color */
    opacity: 1 !important; /* Override the grayed-out appearance */
}

/* form card*/

.form-card {
	background-color: rgb(1, 9, 14);
}
.form-card-header {
    background-color: #0004;
    border-bottom: solid thin #0002;
}
.form-card-body {
    background-color: #0001;
}
.form-card-footer {
    background-color: #0004;
    border-top: solid thin #0002;
}
.form-card-bg {
	background-image: linear-gradient(216deg, #9371BC, rgba(1, 9, 14, .6) 500px);
}
.card-body {
	overflow: auto;

}
.custom-scrollbar {
	overflow: auto;
	scrollbar-width: thin;
	scrollbar-color: rgba(255,255,255, 0.6) rgba(0,0,0, 0.6);
  }
.grab {
	cursor: grab !important;
}

.popup-med {
	min-width: 500px;
}

/* intro.js */

.introjs-tooltip {
    background-color: rgb(147, 113, 188) !important;
}

.introjs-button {
    border: 1px solid rgb(147, 113, 188) !important;
    color: #fff !important;
    background-color: rgba(1, 9, 14, .6) !important;
	text-shadow: none !important;
	border-radius: 10px !important;
}
.introjs-nextbutton {
    border: 1px solid rgb(147, 113, 188) !important;
    color: #fff !important;
    background-color: rgba(1, 9, 14, .6) !important;
	text-shadow: none !important;
} 
.introjs-tooltip button {
	border: 1px solid rgb(147, 113, 188) !important;
    color: #fff;
    background-color: rgba(1, 9, 14, .6) !important;
	text-shadow: none !important;
}
.introjs-tooltiptext {
	color: #fff !important;
}
.introjs-bullets ul li a.active {
    width: 15px;
    background: rgba(1, 9, 14, .6) !important;
}
.introjs-skipbutton {
    color: #fff;
}
.introjs-arrow {
    top: -10px;
    left: 10px;
    border-bottom-color: rgb(147, 113, 188) !important;
}
.introjs-tooltipReferenceLayer {
    font-family: "Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    position: absolute;
    visibility: hidden;
    z-index: 100000000;
    background-color: transparent;
    -webkit-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.introjs-tooltip {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    position: absolute;
    visibility: visible;
    background-color: #fff;
    min-width: 250px;
    max-width: 300px;
    border-radius: 5px;
    -webkit-box-shadow: 0 3px 30px rgba(33, 33, 33, .3);
    box-shadow: 0 3px 30px rgba(33, 33, 33, .3);
    -webkit-transition: opacity .1s ease-out;
    -o-transition: opacity .1s ease-out;
    transition: opacity .1s ease-out;
	left: 64.5781px;
}

/* Positioning the collapse button at the bottom right */
.collapse-btn-container {
    position: fixed;
    bottom: 60px;
    right: 15px;
    z-index: 15;
    min-width: 200px;
    opacity: 1;
}

/* Collapse container for the buttons, initially hidden */
.collapse-up {
    position: fixed;
    bottom: 66px;
    right: 16px;
    min-width: 227px;
    display: none;
    margin-bottom: 30px;
}

.core-toggle-btn {
    background-color: #CFAFF5 !important;
    color: rgb(255, 255, 255);
}

.disclaimer {
    margin-bottom: 46px !important;
}

.nav-tabs {
    --bs-nav-tabs-border-color: rgb(255, 255, 255);
    --bs-nav-tabs-link-hover-border-color: rgba(0, 0, 0, .1);
    --bs-nav-tabs-link-active-color: rgb(255, 255, 255);
    --bs-nav-tabs-link-active-bg: rgba(0, 0, 0, .1);
    --bs-nav-tabs-link-active-border-color: rgba(0, 0, 0, .1);
    border-bottom: var(--bs-nav-tabs-border-width) solid rgba(0, 0, 0, .1);
}
.nav-link {
    color: rgb(147, 113, 188);
}
.nav-link:focus, .nav-link:hover {
    color: rgb(147, 113, 188);
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
	color: rgba(0, 0, 0, 0.3);
}
.data-scroll {
    min-height: 91vh;
}
.header {
	font-weight: bold;
}
.rolling-color {
	animation: rolling 15s infinite linear;
}
@keyframes rolling {
	0%   { background-color: rgb(147, 113, 188); }
    25%  { background-color: rgba(0,0,0, 0.6); }
    50%  { background-color: rgba(147, 113, 188, .3); }
    75%  { background-color: rgba(0,0,0, 0.6); }
    100% { background-color: rgb(147, 113, 188); }
	
}

.popular-plan {
	border:2px solid #4cff9a;
	transform:scale(1.03);
	}
.auth-footer {
	bottom: 0;
}
.modal-scroll-section {
    max-height: 350px;
    overflow-y: auto;
    overflow-x: hidden;

    /* smooth scrolling feel */
    scroll-behavior: smooth;

    /* hide scrollbar (Firefox) */
    scrollbar-width: none;

    /* hide scrollbar (IE / old Edge) */
    -ms-overflow-style: none;
}

/* hide scrollbar (Chrome / Safari / Edge Chromium) */
.modal-scroll-section::-webkit-scrollbar {
    display: none;
}
.plan.popular {
	border: 2px solid #fff;
	box-shadow: 0 0 20px rgba(34,197,94,0.25);
	}

	form {
		margin-block-end: 0px !important;
	}

	.table td,
	.table th {
		border-color: #fff5 !important;
		min-height: 43.5px !important; 
	}

	.table > :not(caption) > * > * {
		border-bottom-color: #fff5;
	}

	body tr:last-child > * {
		border-bottom-color: #fff5;
	}

	.active>.page-link, .page-link.active {
		z-index: 3;
		color: var(--bs-pagination-active-color);
		background-color: rgb(147, 113, 188);
		border-color: var(--bs-pagination-active-border-color);
	}

	.modal-body{
		max-height:600px;
		overflow-y:auto;
		
		/* smooth scrolling on mobile */
		-webkit-overflow-scrolling:touch;
		
		/* hide scrollbar Firefox */
		scrollbar-width:none;
		
		/* hide scrollbar IE / Edge */
		-ms-overflow-style:none;
		}
		
		/* hide scrollbar Chrome / Safari */
		.modal-body::-webkit-scrollbar{
		display:none;
		}
/* Styles for small screens and when .close is active */
@media (max-width: 576px) {

	/* Bootstrap's xs breakpoint */
	.side-menu.close {
		left: -4rem;
		position: absolute;
		/* Adjusted position */
	}

	.side-menu {
		position: absolute;
		/* Default position */
	}

	.side-menu .side-menu-layout {
		z-index: 1000;
		background: rgb(1, 9, 14);
		min-height: 100vh;
	}

	.header-menu-icon {
		display: block;
	}

	.actions-toggle {
		display: flex;
	}

	.core-actions {
		bottom: -264px;
		transition: all 0.5s ease-in-out;
	}

	.core-actions-open {
		bottom: 0px;
		transition: all 0.5s ease-in-out;
	}
	.footer-logo {
		height: 42px;
		background-position: center center !important;
		background-size: contain;
		width: 100% !important;
		margin: 20px 0 !important;
	}
	.zoe-logo {
		display: none;
	}

	.mobi-menu-button {
		display: block !important;
		margin-top: 8px;
	}
	.header-menu-icon {
		display: none;
	}
	.side-menu-toggle {
		display: none;
	}

}
.mobi-menu-button {
	display: none;
}

/* Core Defender */

.core-loading{

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    height:100%;

    background:#0f1320;

    color:#fff;

}

.logo{

    font-size:42px;

    font-weight:700;

    color:#8f5cff;

    margin-bottom:20px;

}

.progress{

    width:400px;

    height:10px;

    background:#23283d;

    border-radius:10px;

    overflow:hidden;

    margin-top:30px;

}

#coreLoader{

    width:0;

    height:100%;

    background:#0003;

    transition:0.3s;

}

#coreDefenderModal .modal-dialog{

    margin:0;

    max-width:100vw;

    height:100vh;

}

#coreDefenderModal .modal-content{

    height:100vh;

}

#coreDefenderModal .modal-body{

    padding:0;

    overflow:hidden;

}

/* Stable compact action treatment for management tables. */
.core-action-group { display:flex; align-items:center; gap:.7rem; min-height:2rem; }
.settings-page .settings-section-title { margin:0 0 1rem; padding-bottom:.6rem; border-bottom:1px solid var(--core-accent-border); }
.settings-page .settings-section-title h4 { margin:0; font-size:1.05rem; }
.settings-page label { margin-bottom:.4rem; }
.settings-page textarea.form-control { min-height:7rem; resize:vertical; }
.settings-page .settings-logo-row { min-width:0; }
.settings-page .settings-logo-preview { flex:0 1 auto; width:max-content; max-width:min(100%, 18rem); min-height:4.5rem; }
.settings-page .settings-logo-preview img { display:block; width:auto; max-width:100%; height:auto; max-height:80px; object-fit:contain; }
.settings-page .settings-logo-upload { min-width:0; }
.core-action-group > * { flex:0 0 1.25rem; text-align:center; }
.team-action-cell, .team-action-header { min-width:7.5rem; vertical-align:middle; }
.team-table th, .team-table td { vertical-align:middle; }
.team-member-cell { vertical-align:middle; }
.team-member-cell-inner { display:flex; align-items:center; gap:.5rem; min-width:0; }
.team-member-cell-inner .profile-avatar { flex:0 0 auto; margin-bottom:0; line-height:1; }
.resource-allocation-avatar { flex:0 0 auto; line-height:1; }
.resource-allocation-actions { gap:15px; }
.team-table td:nth-child(2), .team-table th:nth-child(2) { min-width:12rem; }
.team-table td:nth-child(3), .team-table th:nth-child(3) { min-width:10rem; }
.team-skills-trigger { line-height:1; }
.proposed-team-candidate { padding:.65rem 0; border-bottom:1px solid var(--core-accent-border); }
.proposed-team-candidate:last-child { border-bottom:0; }
.proposed-team-primary { display:flex; align-items:center; gap:.5rem; min-width:0; }
.proposed-team-primary .form-check-input { flex:0 0 auto; }
.proposed-team-primary strong { min-width:0; overflow-wrap:anywhere; }
.proposed-team-match { margin-left:auto; flex:0 0 auto; text-align:right; white-space:nowrap; color:var(--core-accent); }
.proposed-team-candidate > small { display:block; margin-left:1.65rem; }
.proposed-team-card-body { display:flex; flex-direction:column; min-height:0; }
.proposed-team-header { flex:0 0 auto; }
.proposed-team-body { max-height:220px; overflow-y:auto; min-height:0; scrollbar-width:none; -ms-overflow-style:none; }
.proposed-team-body::-webkit-scrollbar { width:0; height:0; }
.planning-card-body { display:flex; flex-direction:column; min-height:0; }
.planning-card-content { max-height:220px; overflow-y:auto; min-height:0; scrollbar-width:none; -ms-overflow-style:none; }
.planning-card-content::-webkit-scrollbar { width:0; height:0; }
.opportunity-required-skills-body { max-height:220px; overflow-y:auto; min-height:0; scrollbar-width:none; -ms-overflow-style:none; }
.opportunity-required-skills-body::-webkit-scrollbar { width:0; height:0; }
.opportunity-skills-checklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem 1rem; max-height:min(60vh,28rem); overflow-y:auto; }
@media (max-width:767.98px) { .opportunity-skills-checklist { grid-template-columns:1fr; } }
.opportunity-pipeline-frame { width:100%; max-width:100%; min-width:0; overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain; scrollbar-width:none; -ms-overflow-style:none; }
.opportunity-pipeline-frame::-webkit-scrollbar { width:0; height:0; }
.opportunity-pipeline-modal-body { display:flex; flex:1 1 auto; flex-direction:column; min-width:0; min-height:0; height:100%; padding:1rem; overflow:hidden; }
.modal:has(.opportunity-pipeline-modal-body) .modal-content { display:flex; flex-direction:column; min-width:0; min-height:0; height:100%; }
.opportunity-pipeline-modal-body .opportunity-pipeline-frame { flex:1 1 auto; min-height:0; }
.opportunity-pipeline-modal-body .opportunity-pipeline-board { min-height:0; height:100%; }
.opportunity-pipeline-modal-body .opportunity-pipeline-column { height:100%; min-height:20rem; }
.opportunity-pipeline-scroll-rail { display:block; width:100%; max-width:100%; height:14px; margin-top:.35rem; margin-bottom:15px; overflow-x:auto; overflow-y:hidden; scrollbar-width:auto; scrollbar-color:currentColor rgba(128,128,128,.35); overscroll-behavior-x:contain; }
.opportunity-pipeline-scroll-rail::-webkit-scrollbar { height:12px; }
.opportunity-pipeline-scroll-rail::-webkit-scrollbar-track { background:rgba(128,128,128,.35); border-radius:8px; }
.opportunity-pipeline-scroll-rail::-webkit-scrollbar-thumb { background:currentColor; border-radius:8px; }
.opportunity-pipeline-scroll-rail-content { height:1px; min-width:100%; }
.opportunity-pipeline-scroll-rail:focus-visible { outline:2px solid var(--core-accent-focus); outline-offset:2px; }
.opportunity-pipeline-board { display:flex; width:max-content; min-width:100%; gap:1rem; padding-bottom:.5rem; align-items:stretch; }
.opportunity-pipeline-column { flex:0 0 min(320px,82vw); min-height:20rem; height:min(70vh,38rem); }
#opportunityPipeline section { flex:1; }
.opportunity-pipeline-column-body { display:flex; flex-direction:column; min-height:0; }
.opportunity-pipeline-stage-header { flex:0 0 auto; }
.opportunity-pipeline-dropzone { flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; scrollbar-width:none; -ms-overflow-style:none; }
.opportunity-pipeline-dropzone::-webkit-scrollbar { width:0; height:0; }
.opportunity-pipeline-card { cursor:grab; }
.opportunity-pipeline-card:active { cursor:grabbing; }
.opportunity-pipeline-card:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.opportunity-pipeline-card.core-font-white { color:inherit; }
.main-layout > .data-scroll.content { padding-top:15px; }
.contract-preview-line { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }
.contract-terms-area .card.core-border { border-color:var(--core-accent-border) !important; }
.delivery-scope-table { min-width: 42rem; table-layout: fixed; }
.delivery-scope-table .delivery-scope-segment { width:20%; }
.delivery-scope-table .delivery-scope-deliverable { width:25%; }
.delivery-scope-table .delivery-scope-description { width:43%; }
.delivery-scope-table .delivery-scope-hours { width:12%; }
.delivery-scope-table th:last-child, .delivery-scope-table td:last-child { white-space:nowrap; }
.contract-terms-heading { color:inherit; }
.contract-terms-header { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; flex-wrap:wrap; }
.contract-terms-header .btn { flex:0 0 auto; }
.contract-terms-card-body { min-width:0; }
.contract-terms-content { margin-top:1rem !important; min-width:0; }
.contract-terms-form .contract-terms-section + .contract-terms-section { margin-top:1rem; padding-top:1rem; border-top:1px solid var(--core-neutral-border); }
.contract-terms-form .contract-terms-section small { display:block; margin-top:.5rem; }
.side-menu .collapse .nav-link.btn-outline-core-green { border-color:#fff3 !important; }
.core-action-group .edit-opportunity { order:2; }
.core-action-group .archive-opportunity { order:3; }
.core-action-group a[title="View Opportunity"] { order:1; }
@media (max-width: 420px) { .proposed-team-match { white-space:normal; } .proposed-team-primary { align-items:flex-start; } }
@media (max-width:767.98px) { .opportunity-pipeline-board { gap:.75rem; } .opportunity-pipeline-column { flex-basis:calc(100vw - 3rem); height:min(70vh,38rem); } }

/* Personal accent applies only to interactive accent surfaces. */
.btn-outline-core-green { --bs-btn-color: var(--core-accent) !important; --bs-btn-border-color: var(--core-accent-border) !important; --bs-btn-hover-bg: var(--core-accent-hover) !important; --bs-btn-hover-border-color: var(--core-accent-hover) !important; --bs-btn-active-bg: var(--core-accent) !important; --bs-btn-active-border-color: var(--core-accent) !important; }
.action-btn-bg { background: linear-gradient(45deg, var(--core-accent-hover), var(--core-accent)) !important; border-color: var(--core-accent-border) !important; color: var(--core-accent-contrast) !important; }
.core-text-green, .core-text-green a { color: var(--core-accent) !important; }
.core-border, .core-light-border { border-color: var(--core-accent-border) !important; }
.card.core-border { border-color:var(--core-card-border) !important; }
input[type="checkbox"], input[type="checkbox"]:checked, .form-check-input:checked { accent-color: var(--core-accent) !important; }
:focus-visible { outline-color: var(--core-accent-focus); }
.project-detail-card .card-body { padding: 1.25rem; }
.project-card-header { display:flex; justify-content:space-between; align-items:flex-start; gap:1.25rem; flex-wrap:wrap; }
.project-card-header-actions { display:flex; flex:0 1 auto; flex-wrap:wrap; justify-content:flex-end; gap:.5rem; margin-left:auto; }
@media (max-width:575.98px) { .project-card-header-actions { margin-left:0; justify-content:flex-start; width:100%; } }
.project-member-actions-cell { vertical-align:middle; }
.project-member-actions { display:flex; justify-content:flex-end; align-items:center; gap:.5rem; flex:0 0 auto; flex-wrap:wrap; }
.project-member-actions form { margin:0; }
.project-team-member { display:flex; justify-content:space-between; align-items:center; gap:1rem; min-width:0; padding-bottom:.75rem; border-bottom:1px solid var(--core-neutral-border); }
.project-team-member:last-child { padding-bottom:0; border-bottom:0; }
.project-team-member strong, .project-team-member .small { overflow-wrap:anywhere; }
.project-detail-card .card-body:has(.project-team-member) > .d-flex.flex-column.gap-3.mt-3 { max-height:220px; overflow-y:auto; min-height:0; scrollbar-width:none; -ms-overflow-style:none; }
.project-detail-card .card-body:has(.project-team-member) > .d-flex.flex-column.gap-3.mt-3::-webkit-scrollbar { width:0; height:0; }
.delivery-scope-pagination button:disabled { opacity:.5; cursor:not-allowed; }
@media (max-width:575.98px) { .project-team-member { align-items:flex-start; } .project-member-actions { margin-top:0 !important; } }
.team-assignment-pill { font-size:.75rem !important; line-height:1.25; padding:.2rem .45rem !important; }
.project-summary-card .card-body { min-width:0; }
.project-summary-value { overflow-wrap:anywhere; }

/* Shared dark-mode form controls. Keep native select/date controls intact. */
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select) {
	background-color: #0002;
	border-color: #fff5;
	color: #fff;
	color-scheme: dark;
}
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select):focus {
	background-color: #fff3;
	border-color: #fff7;
	color: #fff;
}
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select)::placeholder {
	color: rgba(255,255,255,.65);
	opacity: 1;
}
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select):-webkit-autofill,
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select):-webkit-autofill:hover,
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select):-webkit-autofill:focus {
	-webkit-text-fill-color: #fff;
	-webkit-box-shadow: 0 0 0 1000px #0002 inset;
	box-shadow: 0 0 0 1000px #0002 inset;
}
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select):disabled {
	background-color: #0003;
	border-color: #fff3;
	color: rgba(255,255,255,.65);
	opacity: .7;
}
body.core-theme-dark :where(input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], input[type="tel"], input[type="url"], input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"], input[type="week"], select, textarea, .form-control, .form-select)[readonly] {
	background-color: #0003;
	border-color: #fff4;
	color: #fff;
}

/* Keep the native option popup readable when the OS supplies a light menu. */
select option,
select optgroup,
.form-select option,
.form-select optgroup,
.form-control option,
.form-control optgroup {
	background-color: #fff;
	color: #212529;
}

select option:checked,
.form-select option:checked,
.form-control option:checked {
	background-color: #e9ecef;
	color: #212529;
}

select option:disabled,
.form-select option:disabled,
.form-control option:disabled {
	background-color: #fff;
	color: #6c757d;
}
