/* Course Content Styles */
.course-content-body ul,
.course-content ul {
    list-style: none;
    padding-left: 20px;
}

.course-content-body ul li,
.course-content ul li {
    position: relative;
    margin-bottom: 10px;
    padding: 5px 0;
}

.course-content-body ul li::before {
    content: '';
    position: absolute;
    left: -20px;
    top: 8px;
    width: 6px;
    height: 6px;
    background-color: var(--main-color-one);
    border-radius: 50%;
}

.course-content ul li:before {
    content: '■';
    position: absolute;
    left: -20px;
    color: var(--main-color-one);
    font-size: 10px;
}

.course-content-body h3, 
.course-content-body h4 {
    margin-top: 20px;
    margin-bottom: 15px;
    color: var(--heading-color);
}

/* Content Block Styles */
.content-text-block {
    padding: 20px;
    background-color: #f8f9fa;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    margin-bottom: 1rem;
}

/* List Styles in Content Blocks */
.content-text-block ul, 
.content-text-block ol,
.accordion-body ul,
.accordion-body ol {
    padding-left: 20px;
    margin-bottom: 1rem;
}

/* Accordion Styles */
.accordion-item {
    border: 1px solid rgba(0,0,0,.125);
    border-radius: 4px;
    margin-bottom: 1rem;
}

.accordion-button {
    padding: 1rem 1.25rem;
    font-size: 1rem;
    color: #212529;
    background-color: #f8f9fa;
    border: none;
}

.accordion-button:not(.collapsed) {
    background-color: rgba(89, 1, 130, 0.1); /* --heading-color with opacity */
    color: var(--heading-color);
}

.accordion-button:focus {
    box-shadow: none;
    border-color: rgba(0,0,0,.125);
}

.accordion-body {
    padding: 1.25rem;
    background-color: #fff;
    color: var(--paragraph-color);
}

/* Typography in accordion body */
.accordion-body p, 
.accordion-body ul, 
.accordion-body ol,
.accordion-body h1,
.accordion-body h2,
.accordion-body h3,
.accordion-body h4,
.accordion-body h5,
.accordion-body h6 {
    margin-bottom: 1rem;
}

.accordion-body ul, 
.accordion-body ol {
    padding-left: 2rem;
}

.accordion-body ul li {
    list-style-type: disc;
}

.accordion-body ol li {
    list-style-type: decimal;
}

/* Breadcrumb styles */
.breadcrumb-item + .breadcrumb-item {
    padding-left: 0.3rem;
}

.breadcrumb-item + .breadcrumb-item::before {
    padding-right: 0.3rem;
}

/* Utility classes */
.cursor-pointer {
    cursor: pointer;
}

/* Z-index fixes */
.sticky-top {
    z-index: 5; /* Lower than header navbar which is usually 1000+ */
}

.navbar {
    position: relative;
    z-index: 1030; /* Higher than sticky sidebar */
}


/* Shared program content colors */
.card-title {
    color: var(--heading-color) !important;
}

.card-title i, 
.fas, 
.fa-check-circle {
    color: var(--main-color-one) !important;
}

.card-text, 
p:not(.text-primary):not(.text-success):not(.text-danger):not(.text-warning):not(.text-info):not(.text-muted):not(.mb-0) {
    color: var(--paragraph-color) !important;
}

.text-primary {
    color: var(--main-color-one) !important;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--heading-color) !important;
}
