/* Academy Organizer - final theme override layer */
/* Load this file after academy.css and Astra/global theme styles. */

/* ------------------------------
 * Curriculum modules and lessons
 * ------------------------------ */

.acy-course .acy-curriculum,
.acy-course .acy-curriculum-module,
.acy-course .acy-curriculum-module > summary,
.acy-course .acy-curriculum-module > summary .acy-module-title,
.acy-course .acy-curriculum-module > summary .acy-module-icon,
.acy-course .acy-curriculum-module > summary .acy-module-toggle,
.acy-course .acy-curriculum-module[open] > summary,
.acy-course .acy-curriculum-module[open] > summary .acy-module-title,
.acy-course .acy-curriculum-module[open] > summary .acy-module-icon,
.acy-course .acy-curriculum-module[open] > summary .acy-module-toggle {
    color: var(--acy-module-text-color, #1d2327) !important;
}

.acy-course .acy-curriculum-lessons,
.acy-course .acy-curriculum-lessons > p {
    color: var(--acy-accordion-text-color, #1d2327) !important;
}

.acy-course .acy-curriculum-module > summary::marker {
    color: var(--acy-module-text-color, #1d2327) !important;
}

.acy-course .acy-curriculum-module > summary * {
    color: var(--acy-module-text-color, #1d2327) !important;
}

.acy-course .acy-curriculum ul,
.acy-course .acy-curriculum ol,
.acy-course .acy-curriculum li {
    color: var(--acy-curriculum-list-text-color, #1d2327) !important;
}

.acy-course .acy-curriculum-lesson,
.acy-course .acy-curriculum-lesson:link,
.acy-course .acy-curriculum-lesson:visited,
.acy-course .acy-curriculum-lesson:focus,
.acy-course .acy-curriculum-lesson:active {
    color: var(--acy-curriculum-list-text-color, #1d2327) !important;
}

.acy-course .acy-curriculum-lesson:hover {
    color: var(--acy-curriculum-list-hover-text-color, #1d2327) !important;
    background-color: var(--acy-curriculum-list-hover-bg-color, #f6f7f7) !important;
}

.acy-course .acy-curriculum-lesson .acy-lesson-number,
.acy-course .acy-curriculum-lesson .acy-lesson-title {
    color: inherit !important;
}

.acy-course .acy-curriculum-lesson:hover .acy-lesson-number,
.acy-course .acy-curriculum-lesson:hover .acy-lesson-title {
    color: var(--acy-curriculum-list-hover-text-color, #1d2327) !important;
}

.acy-course .acy-curriculum ul li:hover,
.acy-course .acy-curriculum ol li:hover,
.acy-course .acy-curriculum li:hover {
    color: var(--acy-curriculum-list-hover-text-color, #1d2327) !important;
    background-color: var(--acy-curriculum-list-hover-bg-color, #f6f7f7) !important;
}

.acy-course .acy-curriculum ul li:hover *,
.acy-course .acy-curriculum ol li:hover *,
.acy-course .acy-curriculum li:hover * {
    color: var(--acy-curriculum-list-hover-text-color, #1d2327) !important;
}

/* ------------------------------
 * Sidebar navigation
 * ------------------------------ */

/* Keep containers and list items neutral. Hover is applied only to links. */

.acy-sidebar-left .acy-sidebar-course-list,
.acy-sidebar-left .acy-sidebar-unit-list,
.acy-sidebar-left .acy-sidebar-material-list,
.acy-sidebar-left .acy-sidebar-course,
.acy-sidebar-left .acy-sidebar-unit {
    color: var(--acy-sidebar-nav-text-color, #1d2327) !important;
    background-color: transparent !important;
}

.acy-sidebar-left .acy-sidebar-course-list > .acy-sidebar-course,
.acy-sidebar-left .acy-sidebar-unit-list > .acy-sidebar-unit {
    color: var(--acy-sidebar-nav-text-color, #1d2327) !important;
    background-color: transparent !important;
}

/* Normal and visited link states. */

.acy-sidebar-left .acy-sidebar-course-link,
.acy-sidebar-left .acy-sidebar-course-link:link,
.acy-sidebar-left .acy-sidebar-course-link:visited,
.acy-sidebar-left .acy-sidebar-unit-link,
.acy-sidebar-left .acy-sidebar-unit-link:link,
.acy-sidebar-left .acy-sidebar-unit-link:visited,
.acy-sidebar-left .acy-sidebar-material-list a,
.acy-sidebar-left .acy-sidebar-material-list a:link,
.acy-sidebar-left .acy-sidebar-material-list a:visited {
    color: var(--acy-sidebar-nav-text-color,  #040404) !important;
    font-weight: 700 !important;
    background-color: transparent !important;
}

/* Hover only the individual link under the pointer. */

.acy-sidebar-left .acy-sidebar-course-link:hover,
.acy-sidebar-left .acy-sidebar-course-link:focus,
.acy-sidebar-left .acy-sidebar-unit-link:hover,
.acy-sidebar-left .acy-sidebar-unit-link:focus,
.acy-sidebar-left .acy-sidebar-material-list a:hover,
.acy-sidebar-left .acy-sidebar-material-list a:focus {
    color: var(--acy-sidebar-nav-hover-text-color, #2271b1) !important;
    background-color: var(--acy-sidebar-nav-hover-bg-color, #f6f7f7) !important;
}

/* Active links. */

.acy-sidebar-left .acy-sidebar-course-link.is-active,
.acy-sidebar-left .acy-sidebar-unit-link.is-active,
.acy-sidebar-left .acy-sidebar-material-list a.is-active,
.acy-sidebar-left .acy-sidebar-course-link.is-active:hover,
.acy-sidebar-left .acy-sidebar-course-link.is-active:focus,
.acy-sidebar-left .acy-sidebar-course-link.is-active:active,
.acy-sidebar-left .acy-sidebar-unit-link.is-active:hover,
.acy-sidebar-left .acy-sidebar-unit-link.is-active:focus,
.acy-sidebar-left .acy-sidebar-unit-link.is-active:active,
.acy-sidebar-left .acy-sidebar-material-list a.is-active:hover,
.acy-sidebar-left .acy-sidebar-material-list a.is-active:focus,
.acy-sidebar-left .acy-sidebar-material-list a.is-active:active {
    color: var(--acy-sidebar-nav-active-text-color, var(--acy-primary-color)) !important;
    background-color: var(--acy-sidebar-nav-active-bg-color, transparent) !important;
}

/* Make sidebar icons follow the link state. */

.acy-sidebar-left .acy-sidebar-course-link .dashicons,
.acy-sidebar-left .acy-sidebar-unit-link .dashicons,
.acy-sidebar-left .acy-sidebar-material-list a .dashicons,
.acy-sidebar-left .acy-sidebar-course-link:hover .dashicons,
.acy-sidebar-left .acy-sidebar-course-link:focus .dashicons,
.acy-sidebar-left .acy-sidebar-unit-link:hover .dashicons,
.acy-sidebar-left .acy-sidebar-unit-link:focus .dashicons,
.acy-sidebar-left .acy-sidebar-material-list a:hover .dashicons,
.acy-sidebar-left .acy-sidebar-material-list a:focus .dashicons,
.acy-sidebar-left .acy-sidebar-course-link.is-active .dashicons,
.acy-sidebar-left .acy-sidebar-unit-link.is-active .dashicons,
.acy-sidebar-left .acy-sidebar-material-list a.is-active .dashicons {
    color: inherit !important;
}


/* Shared breadcrumb styling for Academy, Course, Unit, and Material pages. */

.acy-header-box .acy-breadcrumb,
.acy-header-box .acy-breadcrumb a,
.acy-header-box .acy-breadcrumb a:link,
.acy-header-box .acy-breadcrumb a:visited {
    color: var(--acy-breadcrumb-link-color, #8d9aaa) !important;
}

.acy-header-box .acy-breadcrumb a:hover,
.acy-header-box .acy-breadcrumb a:focus,
.acy-header-box .acy-breadcrumb a:active {
    color: var(--acy-breadcrumb-link-hover-color, #748394) !important;
}

.acy-header-box .acy-breadcrumb {
    color: var(--acy-breadcrumb-text-color,  #FFFFFF) !important;
}

.acy-sidebar-left{

    padding-left: 5px;
    padding-right: 5px;
}

.acy-sidebar-left .acy-sidebar-nav-title {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-top: 12px;
    margin-right: 0;
    margin-bottom: 18px;
    margin-left: 0;

    padding-left: 8px;
    padding-right: 8px;
}

.acy-sidebar-left .acy-sidebar-nav-title .dashicons-portfolio {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin: 0;
    color: var(--acy-sidebar-nav-text-color, #1d2327) !important;
    font-size: 20px;
    line-height: 20px;
}

.acy-sidebar-left .acy-sidebar-nav-title a {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    color: var(--acy-sidebar-nav-text-color, #1d2327) !important;
    line-height: 1.35;
}

.acy-sidebar-left .acy-sidebar-nav-title .acy-sidebar-count {
    flex: 0 0 auto;
    margin-left: auto;
    margin-right: 0;
}

.acy-sidebar-course-row,
.acy-sidebar-unit-row {
    display: flex;
    align-items: center;
    gap: 4px;
}

.acy-sidebar-toggle {
    display: inline-flex;
    flex: 0 0 24px;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin: 0;
    padding: 0;
    color: inherit;
    background: transparent;
    border: 0;
    cursor: pointer;
}



.acy-sidebar-toggle .dashicons {
    width: 18px;
    height: 18px;
    color: inherit;
    font-size: 18px;
    line-height: 18px;
}

.acy-sidebar-toggle-spacer {
    display: inline-block;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
}

.acy-sidebar-course-row > .acy-sidebar-course-link,
.acy-sidebar-unit-row > .acy-sidebar-unit-link {
    flex: 1 1 auto;
    min-width: 0;
}

.acy-sidebar-unit-list,
.acy-sidebar-material-list {
    margin-top: 4px;
}

/* Sidebar hierarchy indentation. */

.acy-sidebar-left .acy-sidebar-course-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.acy-sidebar-left .acy-sidebar-course {
    margin: 0;
    padding: 0;
    list-style: none;
}

.acy-sidebar-left .acy-sidebar-course-row {
    display: flex;
    align-items: center;
    gap: 4px;
    padding-left: 4px;
}

/* Units are one level below courses. */

.acy-sidebar-left .acy-sidebar-unit-list {
    margin: 4px 0 4px 24px;
    padding: 0 0 0 12px;
    border-left: 2px solid var(--acy-border-color);
    list-style: none;
}

.acy-sidebar-left .acy-sidebar-unit {
    margin: 0;
    padding: 0;
    list-style: none;
}

.acy-sidebar-left .acy-sidebar-unit-row {
    display: flex;
    align-items: center;
    gap: 4px;
    padding-left: 4px;
}

/* Materials are another level below units. */

.acy-sidebar-left .acy-sidebar-material-list {
    margin: 4px 0 6px 24px;
    padding: 0 0 0 12px;
    border-left: 1px solid var(--acy-border-color);
    list-style: none;
}

.acy-sidebar-left .acy-sidebar-material {
    margin: 0;
    padding: 0;
    list-style: none;
}

.acy-sidebar-left .acy-sidebar-material a {
    display: block;
    margin-left: 4px;
    padding: 5px 10px;
    color: var(--acy-sidebar-nav-text-color, #1d2327) !important;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
    border-radius: 4px;
}

/* Keep the actual clickable row aligned. */

.acy-sidebar-left .acy-sidebar-course-row > .acy-sidebar-course-link,
.acy-sidebar-left .acy-sidebar-unit-row > .acy-sidebar-unit-link {
    flex: 1 1 auto;
    min-width: 0;
}

.acy-sidebar-left .acy-sidebar-toggle {
    flex: 0 0 24px;
    margin: 0;
}

/* Make hierarchy visible through different text weights. */

.acy-sidebar-left .acy-sidebar-course-link {
    font-weight: 700 !important;
}

.acy-sidebar-left .acy-sidebar-unit-link {
    font-weight: 600 !important;
}

.acy-sidebar-left .acy-sidebar-material-list a {
    font-weight: 400 !important;
}

/* Optional small material marker. */

.acy-sidebar-left .acy-sidebar-material-list a::before {
    content: "•";
    display: inline-block;
    margin-right: 8px;
    color: var(--acy-sidebar-nav-text-color, #1d2327);
}

/* Hide collapsed panels reliably. */

.acy-sidebar-left ul[hidden] {
    display: none !important;
}

.acy-sidebar-left .acy-sidebar-course-toggle .dashicons,
.acy-sidebar-left .acy-sidebar-unit-toggle .dashicons {
    color: var(--acy-sidebar-nav-text-color, #1d2327) !important;
    font-size: 16px;
}

.acy-sidebar-left .acy-sidebar-course-toggle:hover .dashicons,
.acy-sidebar-left .acy-sidebar-unit-toggle:hover .dashicons,
.acy-sidebar-left .acy-sidebar-course-toggle:focus .dashicons,
.acy-sidebar-left .acy-sidebar-unit-toggle:focus .dashicons {
    color: var(--acy-sidebar-nav-hover-text-color, #2271b1) !important;
}

/* Sidebar toggle buttons: black when closed. */

.acy-sidebar-left .acy-sidebar-toggle,
.acy-sidebar-left .acy-sidebar-toggle .dashicons {
    color: #000000 !important;
    background-color: transparent !important;
}

/* Sidebar toggle buttons: red when open. */

.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"],
.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"] .dashicons {
    color: #b4232f !important;
    background-color: transparent !important;
}

/* Do not change the color on hover, focus, or active interaction. */

.acy-sidebar-left .acy-sidebar-toggle:hover,
.acy-sidebar-left .acy-sidebar-toggle:focus,
.acy-sidebar-left .acy-sidebar-toggle:active,
.acy-sidebar-left .acy-sidebar-toggle:hover .dashicons,
.acy-sidebar-left .acy-sidebar-toggle:focus .dashicons,
.acy-sidebar-left .acy-sidebar-toggle:active .dashicons {
    color: #000000 !important;
    background-color: transparent !important;
}

/* Keep an open toggle red even while hovered or focused. */

.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"]:hover,
.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"]:focus,
.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"]:active,
.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"]:hover .dashicons,
.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"]:focus .dashicons,
.acy-sidebar-left .acy-sidebar-toggle[aria-expanded="true"]:active .dashicons {
    color: #b4232f !important;
    background-color: transparent !important;
}

/* Keyboard focus remains visible without changing the toggle color. */

.acy-sidebar-left .acy-sidebar-toggle:focus-visible {
    outline: 2px solid currentColor !important;
    outline-offset: 2px;
}