:root {
	--background: 0 0% 100%;
	--overlay-background: 0 0% 0%;
	--foreground: 222.2 84% 4.9%;
	--card: 0 0% 100%;
	--card-foreground: 222.2 84% 4.9%;
	--popover: 0 0% 100%;
	--popover-foreground: 222.2 84% 4.9%;
	--primary: 222.2 47.4% 11.2%;
	--primary-foreground: 210 40% 98%;
	--secondary: 210 40% 96.1%;
	--secondary-foreground: 222.2 47.4% 11.2%;
	--muted: 210 40% 96.1%;
	--muted-foreground: 215.4 16.3% 46.9%;
	--accent: 210 40% 96.1%;
	--accent-foreground: 222.2 47.4% 11.2%;
	--destructive: 0 84.2% 60.2%;
	--destructive-foreground: 210 40% 98%;
	--border: 214.3 31.8% 91.4%;
	--input: 214.3 31.8% 91.4%;
	--ring: 222.2 84% 4.9%;
	--radius: 0.5rem;
}

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.dtsp-collapseAll{
	color: #333333 !important;
}
.dtsp-collapseAll.dtsp-disabledButton{
	color: #7c7c7c !important;
}

.dtsp-showAll, .dtsp-clearAll{
	color: #333333 !important;
}
.dtsp-showAll.dtsp-disabledButton, .dtsp-clearAll.dtsp-disabledButton{
	color: #7c7c7c !important;
}


body h4{
	font-size: 18px !important;
	margin: 0 !important;
}
.tutor-marginBottom{
	margin-bottom: 20px !important;
}

#tutor_table_filter{
	margin-bottom: 10px !important;
}

#tutor_table_filter input[type=search] {
	background-image: none;
}

.tutor-user-details {
	display: flex;
	align-items: self-start;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 20px;
}

.tutor-inner-col .tutor-dashboard-page-title {
	width: 100%;
	font-weight: 600;
}
table.dataTable {
  border: none !important;
}

.tutor-user-details .tutor-user_dynamic_field {
	display: flex;
	gap: 20px;
	align-items: center;
	width: 100% !important;
}

.tutor-user-details .tutor-user_dynamic_field .tutor-field-title {
	width: 20%;
	font-weight: 600;
}

.tutor-user-details .tutor-user_dynamic_field .tutor-dynamic-name {
	display: block;
	width: 80%;
	font-weight: 500;
	margin: 15px 0px;
}

.tutor-inner-panel {
	background-color: #fff;
	padding: 20px;
	border-radius: 15px;
	box-shadow: 0px 0px 10px 6px #eff1f4;
	margin-bottom: 40px;
	margin-top: 40px;
}

.tutor-programme-box{
	display: flex;
    align-items: center;
    flex-wrap: wrap;
	width: 100%;
}

.tutor-learner-programme-details .tutor-programme-box .tutor-programme-box-tite {
	display: inline-block;
	font-weight: 600;
	width: 20%;
}

.tutor-w-50{
	width: 50%;
}

.tutor-graph-group{
	display:flex;
	width:100%;
	margin-bottom: 20px;
	justify-content:space-between;
	height:300px;
}

.tutor-graph-group-child{
	position: relative;
	padding: 10px;
	margin-bottom: 20px;
	border-radius: 15px;
	background-color: white;
	box-shadow:  0px 10px 6px #eff1f4;
	height:100%;
	width:47%;
}

.tutor-donutchart-canvas{
	/* height: 100% !important; */
	/* width: 100% !important; */
}

.tutor-donutchart-canvas canvas{
	/* height: 100% !important; */
}

.tutor-margin-auto{
	margin: auto;
}

.tutor-fw-600{
	font-weight: 600;
}

.tutor-fw-normal{
	font-weight: normal;
}

.tutor-table-container{
	padding: 10px;
	margin-bottom: 20px;
	border-radius: 15px;
	background-color: white;
	box-shadow:  0px 10px 6px #eff1f4;
}
.textAlignCenter {
	text-align: center;
}
.redRowClass{
	background: red !important;
	color: white !important;
}

.yellowRowClass{
	background: yellow !important;
	color: rgb(24, 24, 24) !important;
}

.greenRowClass{
	background: green !important;
	color: white !important;
}

.purpleRowClass{
	background: purple !important;
	color: white !important;
}

/* td, th {
	outline: 1px solid white;
} */

td.dtfc-fixed-left, th.dtfc-fixed-left {
	z-index:2;
	background-color: white !important;
}

.tutorinner-panel .tutorinner-col{
	width:100%;
	/* display: flex;
	flex-direction: column;
	justify-content: space-between; */
}

.tutordisplay-unset{
	display:unset !important;
}

.tutorinner-panel-flex{
	display: flex;
}

.tutordisplay-flex{
	display: flex;
	align-items: center;
}

.tutordynamic-name-margin-left{
	margin: 0px 0px 0px 10px !important;
}

.tutorwidth-100{
	width:100% !important
}

.tutorheight-100{
	height:100% !important
}

.tutormargin-right-10{
	margin-right: 10px !important;
}

.tutormargin-top-20{
	margin-top: 20px !important;
}

.tutorontrack-offtrack-card-container{
	margin-top: 10px;
	width:50%;
	background-color: #00c300;
	/* min-height:40%; */
	/* margin-left: auto; */
	box-shadow: 0px 0px 6px 0px black;
    border-radius: 25px;
	color: white;
}

.tutorontrack-offtrack-card-title{
	text-align: center;
	padding: 5px;
    font-size: 1.25rem;
    font-weight: bolder;
}

/* .ontrack-offtrack-card-body{
	padding: 15px;
    font-size: 1rem;
	line-height: 1.5;
} */

.tutordonutchart-center-number{
	position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    font-size: 3rem;
    bottom: 60px;
	color: rgba(164,224,224);
}

@media screen and (max-width:1200px) {
	.tutor-graph-group{
		display: unset;
		height: unset;
	}


	
	.tutor-graph-group-child{
		width: unset;
		height: unset;
	}
	.tutor-inner-panel .inner-col{
		width:100%;
	}
	.tutor-inner-panel-flex{
		display: flex;
		flex-direction: column;
	}
	.tutor-ontrack-offtrack-card-container{
		width:100%;
		margin-top: 10px;
		margin-bottom: 20px;
	}
}

/* Popup container */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--radius);
	font-weight: 500;
	font-size: 0.875rem;
	line-height: 1.25rem;
	padding: 0.5rem 1rem;
	transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s;
	cursor: pointer;
}

.btn-primary {
	background-color: hsl(var(--primary));
	color: hsl(var(--primary-foreground));
	border: 1px solid transparent;
}

.btn-primary:hover {
	background-color: hsl(var(--primary) / 0.9);
}

.btn-icon {
	padding: 0.25rem;
	background: none;
	border: none;
	font-size: 1.5rem;
	color: hsl(var(--foreground) / 0.5);
	cursor: pointer;
}

.btn-icon:hover {
	color: hsl(var(--foreground));
}

.dialog-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: hsl(var(--overlay-background) / 0.8);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 650;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s, visibility 0.2s;
}

.dialog-overlay.active {
	opacity: 1;
	visibility: visible;
}

.dialog {
	background-color: hsl(var(--background));
	border-radius: var(--radius);
	box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	width: 90%;
	max-height: 90vh;
	display: flex;
	flex-direction: column;
}

.dialog-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1rem;
	border-bottom: 1px solid hsl(var(--border));
}

.dialog-header h2 {
	font-size: 1.25rem;
	font-weight: 600;
	margin: 0;
}

.dialog-content {
	padding: 1rem;
	overflow-y: auto;
}

.checkbox-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.checkbox-column {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.checkbox-label {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	cursor: pointer;
}

.checkbox {
	appearance: none !important;
	width: 1rem !important;
	height: 1rem !important;
	border: 1px solid hsl(var(--input)) !important;
	border-radius: 0.25rem !important;
	display: grid !important;
	place-content: center !important;
	padding: 5px !important;
}

.checkbox::before {
	content: "";
	width: 0.65em !important;
	height: 0.65em !important;
	transform: scale(0) !important	;
	transition: 120ms transform ease-in-out !important;
	box-shadow: inset 1em 1em hsl(var(--primary)) !important;
	transform-origin: center !important;
	clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%) !important;
}

.checkbox:checked::before {
	transform: scale(1) !important;
}


.dialog-footer {
	padding: 1rem;
	border-top: 1px solid hsl(var(--border));
	display: flex;
	justify-content: flex-end;
}

@media screen and (max-width: 600px) {
	#buttonContainer {
		flex-direction: column;
		align-items: stretch;
	}
}

.checkbox-label-disabled {
    color: #7c7c7c; /* A lighter gray color for disabled labels */
    cursor: not-allowed; /* Change cursor to indicate non-interactivity */
}

.course-dropdown{
	margin-bottom: 10px;
}