.body-db-main .app-main, .body-db-main .app-navbar {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

/*
@media (min-width: 768px) {
    .body-db-main .app-main, .body-db-main .app-navbar {
        width: 60%;
    }
}*/

/*
@media (min-width: 992px) {
    .body-db-main .app-main, .body-db-main .app-navbar {
        width: 80%;
    }
}*/

.navbar-brand {
	color: #1b6456 !important;
	font-weight: bold;
    font-size: 32px;
	padding-left: 0px;
	padding-right: 0px;
	margin-left: 0px;
	margin-right: 0px;
}

.navbar-brand > img {
	height: 42px;
}

.db-learn {
	
}

.db-navbar {
	
}

.db-navbar .nav-link {
	font-size: 18px;
	padding-left: 8px !important;
	padding-right: 8px !important;
}

.db-navbar .btn-outline-light{
	color: #495057;
	border-color: #dee2e6;
}

.db-navbar>.user-menu .user-image {
    padding-left: 6px;
    padding-top: 5px;
}

.db-learn>.user-menu .user-image {
    padding-left: 4px !important;
    padding-top: 4px !important;
}

.db-navbar>.user-menu .user-image > i {
	font-size: 25px;
}

.db-navbar>.user-menu>.dropdown-menu {
	width: 200px !important;
	font-size: 18px;
	font-weight: normal;
}

.db-navbar .dropdown-menu-start[data-bs-popper] {
	right: 0 !important;
	left: auto !important;
}

.db-learn .db-ctitle {
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    max-width: 600px;
}

.sidebar-menu .nav-link  {
	font-size: 18px;
}

.app-footer a {
	text-decoration: none;
}

.app-wrapper {
	overflow: hidden;
}

.db-app-main {
	margin-left: auto;
	margin-right: auto;
	max-width: 700px;
}

.db-app-main-medium {
	margin-top: 0px !important;
}

.db-app-main-compact {
	margin-top: 0px !important;
	grid-area: lte-app-header;
}

.donation-card {
	box-shadow: none;
}

.donation-card .card-text {
	font-size: 20px;
}

.text-divider {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 10px 0;
    position: relative;
}

.text-divider::before,
.text-divider::after {
    content: '';
    flex: 1;
    border-top: 1px solid #5F5F5F;
    margin: 0 10px;
}

.text-divider h4 {
    margin: 0;
    font-size: 16px;
    color: #5F5F5F;
}

.form-check-lg input[type="checkbox"], .form-check-lg input[type="radio"] {
	height: 30px;
	width: 30px;
}

.form-check-lg .form-check-label {
	margin-left: 10px;
    height: 30px;
    padding-top: 6px;
    font-weight: bold;
}

.sidebar-wrapper .sidebar-menu>.nav-item>.nav-link.active {
	border-bottom: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
}

.db-container {
	max-width: 448px !important;
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.container-learn {
	margin-top: 75px;
}

.color-1 {
	background-color: #FFEFD5;
	border-color: #FFE4B5;
}

.color-2 {
	background-color: #FFFFF0;
	border-color: #FFE4E1;
}

.db-event-card {
	box-shadow: none;
}

.db-event-card .card-header .card-title {
	font-size: 20px;
}

.sidebar-open .navbar.mobile-bottom-nav {
	display: none;
}

/* Optional: Hide on larger screens */
@media (min-width: 768px) {
	.mobile-bottom-nav {
		display: none;
	}
}

.mobile-bottom-nav {
	background-color: #FFFFFF;
}


/* Icon size and layout */
.mobile-bottom-nav .nav-link {
	font-size: 0.9rem;
	color: #6c757d !important;
}

.mobile-bottom-nav .nav-link.active {
	color: #000000  !important;;
	font-weight: bold;
	font-size: 16px !important;
}

.mobile-bottom-nav i {
	display: block;
	font-size: 1.3rem;
}

.gbg1 {
	background: linear-gradient(90deg, #FEE0DE 0%, #E4F5FD 51.39%, #DDEDFF 100%) !important;
}

.card-info {
	background-color: var(--bs-tertiary-bg);
}

.card-warning-bg {
	background-color: var(--bs-warning-bg-subtle);
}

.card-success-bg-subtle {
	background-color: var(--bs-success-bg-subtle);
}

.card-danger-bg-subtle {
	background-color: var(--bs-danger-bg-subtle);
}

@media (max-width: 767px) {
    .db-admin .app-main .app-content-header {
		padding: 8px 0px !important;
	}

	.db-admin .app-main .app-content {
		padding: 0px 0px !important;
	}
}

.home-header {
	background-color: #daedec;
	color: #333333;
	min-height: 100px;
	padding-top: 20px;
	padding-bottom: 20px;
}

.home-header .header-logo {
	width: 50px;
	color: #FFFFFF;
}

.home-header .header-title {
	color: #333333;
}

.home-header .header-text {
	color: #333333;
}

.login-cart {
	max-width: 400px;
}

.donation-header {
	background-color: #bcad2e !important;
	color: #333333;
	min-height: 100px;
	padding-top: 20px;
	padding-bottom: 20px;
}

.show-on-top {
    position: absolute !important;
    z-index: 99999 !important;
}

.btn-custom {
	background-color: #1b6456;
	color: #FFFFFF;
}

.btn-custom:hover {
	border-color: #1b6456;
}

.border-custom {
	--bs-border-opacity: 1;
	border-color: #1b6456 !important;
}

.btn-custom-fill {
	background-color: #1b6456;
	color: #FFFFFF;
}

.btn-custom-fill:hover {
	border-color: #1b6456;
}

.progress-custom {
  background-color: #1b6456 !important;
}

.btn-add-btn {
    position: fixed;
    bottom: 102px;
    right: 8px;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 32px;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

/* Desktop: normal */
.dropdown-menu-mobile {
    z-index: 99999 !important;
}

/* Mobile view: force dropdown inside screen */
@media (max-width: 576px) {
    .dropdown-menu-mobile {
        left: 0 !important;
        right: 0 !important;
        transform: none !important;   /* remove offset */
        width: 100% !important;
        position: absolute !important;
    }
}

.nav-tabs-scroll {
    white-space: nowrap;
    scrollbar-width: thin;  /* Firefox */
}

.nav-tabs-scroll::-webkit-scrollbar {
    height: 6px;
}

.nav-tabs-scroll::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

.border-soft {
    border: 1px solid rgba(0,0,0,0.06); /* lighter than default */
    border-radius: 6px;
}

.left-col {
    border-right: 1px solid #dee2e6;
}

/* Hide border on mobile */
@media (max-width: 767.98px) {
    .left-col {
        border-right: none;
    }
}

.slider-touch {
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
    scrollbar-width: none;      /* Firefox */
}

.slider-touch .period-tab {
	white-space: nowrap;
}

.slider-touch .period-tab.active {
    background-color: #212529 !important;
    color: white !important;
}

.slider-touch::-webkit-scrollbar {
    display: none;              /* Chrome, Safari */
}

.top-corner-1 {
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}

.top-corner-2 {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}

.top-corner-3 {
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}

.top-corner-3 {
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}

.category-slider {
	
}

.category-slider .category-item {
	text-align: center;
    text-decoration: none;
}

.category-slider .category-item img {
	width: 90px !important;
	margin-right: auto !important;
    margin-left: auto !important;
}

.category-slider .category-item p {
	text-align: center;
	font-size: 15px;
}

.category-slider .category-item-sm {
	text-align: center;
    text-decoration: none;
    width: 100%;
    font-weight: bold;
}

.category-slider .category-item-sm.active {
	border-bottom-width: 2px;
}

.category-slider .category-item-sm img {
	width: 36px !important;
}


.db-course-card {
	border: 1px solid var(--bs-border-color) !important;
}

.db-course-card > .card-body {
	/*padding: 10px 0px;*/
}

.db-course-card .title {
	font-size: 20px;
	font-weight: bold;
}

.db-course-card .min {
	min-height: 90px;
}

.db-course-card .text-3-lines {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.db-course-card .text {
	font-size: 18px;
  display: -webkit-box;
  -webkit-line-clamp: 2;   /* max 2 lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.db-course-card .summary {
	white-space: nowrap;
	font-size: 14px;
}

.db-border {
	border: 1px solid var(--bs-border-color) !important;
}

.db-course-content {
	
}

.db-learn-course-content {
	
}

.db-course-content .accordion-button:not(.collapsed), .db-learn-course-content .accordion-button:not(.collapsed) {
	color: #000000;
	/*background-color: #1b6456;*/
	background-color: var(--bs-primary-bg-subtle);
}

.db-course-content .accordion-button {
	font-size: 20px;
}

.db-course-content .db-table tr>td:first-child {
	width: 32px;
}

.db-course-content .db-table tr>td:nth-last-child(2) {
	width: 100px;
}

.db-course-content .db-table tr>td:last-child {
	width: 40px;
}

.db-course-content .db-table tbody tr td {
	 vertical-align: middle;
}

.db-course-content .db-table  .no-last-border tr:last-child td, .db-learn-course-content .db-table  .no-last-border tr:last-child td {
  border-bottom: 0;
}

.db-table-border tbody tr:last-child td {
	 border-bottom: 0;
}

.db-learn-course-content .accordion-button {
	padding-top: 10px;
	padding-bottom: 10px;
}

.db-learn-course-content .accordion-collapse .accordion-body {
	padding-top: 5px;
	padding-bottom: 5px;
}

.db-learn-course-content .table {
	margin-bottom: 0px;
}

.db-learn-course-content a {
	text-decoration: none;
	color: #000000;
	cursor: pointer;
}

.db-learn-course-content .accordion-button {
	color: #000000;
	/*background-color: #1b6456;*/
	background-color: var(--bs-light);
}

.stepwizard {
    display: table;
    width: 100%;
    position: relative;
}

.stepwizard .stepwizard-step p {
    margin-top: 10px;
}

.stepwizard .stepwizard-step .title {
  font-size: 16px; /* extra small */
}

@media (min-width: 576px) {
  .stepwizard .stepwizard-step .title {
    font-size: 18px; /* small */
  }
}

@media (min-width: 768px) {
  .stepwizard .stepwizard-step .title {
    font-size: 20px; /* medium */
  }
}

@media (min-width: 992px) {
  .stepwizard .stepwizard-step .title {
    font-size: 20px; /* large */
  }
}

.stepwizard .stepwizard-row {
    display: table-row;
}

.stepwizard .stepwizard-step button[disabled] {
    opacity: 1 !important;
    filter: alpha(opacity=100) !important;
}

.stepwizard .stepwizard-row:before {
    top: 14px;
    bottom: 0;
    position: absolute;
    content: " ";
    width: 100%;
    height: 1px;
    /*background-color: #ccc;*/
    z-order: 0;
}

.stepwizard .stepwizard-step {
    display: table-cell;
    text-align: center;
    position: relative;
}

.stepwizard .btn-circle {
  width: 30px;
  height: 30px;
  text-align: center;
  padding: 6px 0;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.428571429;
  border-radius: 15px;
}

.ratio-9x16 {
    aspect-ratio: 9 / 16;
    width: 100%;
    max-width: 420px;   /* optional, looks better on desktop */
    margin: auto;
}

.ratio-9x16 iframe,
.ratio-9x16 video {
    width: 100%;
    height: 100%;
    border: 0;
}

.db-challenge {
	font-size: 18px;	
}

.db-challenge .db-option {
	cursor: pointer;
}

.db-challenge .db-correct {
	cursor: pointer;
	background-color: var(--bs-success-bg-subtle);
	border-color: var(--bs-success);
}

.db-challenge .db-wrong {
	cursor: pointer;
	background-color: var(--bs-danger-bg-subtle);
	border-color: var(--bs-dange);
}

.db-challenge .op {
	padding: 10px 20px;
	font-family: 25px;
	font-weight: bold;
	background-color: var(--bs-dark);
	color: #FFFFFF;
}

.clicked {
    transform: scale(0.95);
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

dbpre {
	background-color: var(--bs-secondary-bg);
	padding-left: 5px;
	padding-right: 5px;
}