:root{
	--bs-border-color: #7e7e7e;
}

.sidebar-brand, .sidebar-brand:hover { 
	background: #fff
}
select option { color:#000; font-weight: 600; }
select option:disabled { color: red; font-weight: normal; background-color: #aaadb0; }

.text-right { text-align: right; }
.form-label { font-weight: 500;  }
.sidebar-brand { position: relative; }
.main.login { background: url(/spark/img/medportal-bg.webp) no-repeat center center; background-size: cover;}
.sidebar-brand span { position: absolute; bottom: 8px; left: 50%; transform: translateX(-70%); font-size: 0.6em; }


.form-control { border: 1px solid #aaadb0; }
.form-control:read-only { background: #c1c1c1; }
.select2-container .select2-selection--single { height: 33px!important; }
.select2-container .select2-selection--single .select2-selection__rendered { 
	padding-left: 0!important; padding-right: 0!important; 
}

.card-upload {
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	border-radius: 10px;
  }
  
  .card-upload .card-body {
	padding: 2rem;
  }
  
  .card-upload .card-title {
	margin-bottom: 1rem;
	font-weight: bold;
	font-size: 1.5rem;
	text-align: center;
  }
  
  .card-upload .drag-drop-area {
	border: 2px dashed #007bff;
	border-radius: 10px;
	padding: 2rem;
	text-align: center;
	cursor: pointer;
	transition: background-color 0.3s;
  }
  
  .card-upload .drag-drop-area p {
	margin: 0;
	font-weight: bold;
	color: #007bff;
  }
  
  .card-upload .drag-drop-area:hover {
	background-color: #e9f7ff;
  }
  
  .card-upload .drag-drop-area.dragover {
	background-color: #d3f0ff;
  }
  
  .card-upload #fileInput {
	display: none;
  }
  
  .card-upload #fileList {
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 1rem;
	background-color: #fff;
  }
  
  .card-upload .file-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0.5rem 0;
	border-bottom: 1px solid #eee;
  }
  
  .card-upload .file-item:last-child {
	border-bottom: none;
  }
  
  .card-upload .file-item span {
	flex-grow: 1;
  }
  
  .card-upload .file-item button {
	background: none;
	border: none;
	color: #dc3545;
	font-size: 1rem;
	cursor: pointer;
  }
  
  .card-upload .file-item button:hover {
	color: #a71d2a;
  }
  

  .card-outline { outline: 1px solid var(--bs-border-color); outline-offset: -0.7em; }
  .card-report { position: relative; padding: 1.7em; margin: 0; }
  .card-report .provider { position: absolute; top: 0; left: 1.4em; background: #fff; padding: 0 0.7em; font-weight: bold; }
  .card-report .status { position: absolute; top: 0; right: 1.4em; background: #fff; padding: 0 0.7em; font-weight: bold;  }

  .nav-link span { position: relative; top: 3px; }

  .today-appointment { border: solid 1px #000; margin-bottom: 3em; position: relative; padding: 1em; }
  .today-appointment:last-of-type { margin-bottom: 0; }
  .today-appointment .name { position: absolute; top: 0; left: 1em; transform: translate(0, -50%); white-space: nowrap; background: #fff; padding: 2px 5px; font-weight: 600;;  }
  .today-appointment .time { position: absolute; top: 0; right: 1em; transform: translate(0, -50%); white-space: nowrap; background: #fff; padding: 2px 5px; font-weight: 600;;  }
  .today-appointment .status { position: absolute; top: 100%; left: 1em; transform: translate(0, -50%); white-space: nowrap; background: #fff; padding: 2px 5px; font-weight: 500;;  }
  .today-appointment button { position: absolute; top: 100%; right: 1em; transform: translate(0, -50%); white-space: nowrap;  padding: 2px 5px; font-weight: 500; font-size: 16px; ;  }
  .today-appointment .form-check { position: absolute; top: 50%; left: 0; transform: translate(-50%, -50%); }
  .today-appointment ul { margin: 0; padding: 0; list-style: none; }
  .today-appointment ul > li { display: flex; justify-content: space-between; }

  .card { background: transparent; }
  .card.card-body { background: #FFF; }
  .card .card-header { margin-bottom: 2px; background: #FFF;  }
  .card .card-body { background: #FFF; }
