/* TRIAD-6155: Site-wide styles moved from Additional HTML. */

.visual-scroll-x {
    scrollbar-width: thin;
    scrollbar-color: rgb(213, 221, 234) rgb(248, 249, 250) !important;
}

#page-admin-course-customfield .form-control {
    width: 100% !important;
}

.pagelayout-login .login-container .logo-area {
    margin-bottom: 24px !important;
}

.pagelayout-login .cookies-section {
    display: none !important;
}

footer#page-footer {
    overflow-x: hidden;
}

#page-mod-hvp-view .alert-danger {
    display: none !important;
}

#page-user-profile .edw-course-list-container .edw-course-list .edw-list-body .edw-card-design-hd .coursename {
    color: rgb(55, 71, 79) !important;
}

#page-course-view-topics .coursename {
    color: rgb(55, 71, 79) !important;
}

.navbar [data-key="recentcourses"] .text_to_html {
    color: black;
}

.cmid-19127 .modal-dialog {
    max-width: 600px !important;
}

.content-hub-options > div.content-hub-share {
    display: none;
    font-weight: normal;
}

.dropdown-menu-right div#usermenu-carousel div#carousel-item-main span.edw-icon {
    color: rgb(0, 0, 0);
}

.navbar #user-action-menu #usermenu-carousel #carousel-item-main .dropdown-item {
    color: rgb(0, 0, 0) !important;
}

#page-site-index .primary-navigation li[title="Additional Resources"] {
    display: none !important;
}

#page-site-index .primary-navigation li[title="My Courses"] {
    display: none !important;
}

#page.drawers .main-inner {
    max-width: 100%;
    width: 100%;
    margin: 0.5rem auto 3rem;
    border-radius: 0.215rem;
    background-color: var(--bs-white);
    padding: 1.5rem 0.5rem;
    flex: 1 0 auto;
}

#page-course-view-topics h5 {
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    line-height: 1.571 !important;
}

div#nav-message-popover-container {
    display: none !important;
}

.course-listitem:hover a.aalink.coursename {
    color: var(--bs-white) !important;
}

.edw-course-list .edw-course-img-wrapper .card-img {
    min-height: auto !important;
}

.login-welcome-wrapper.d-flex.flex-column.flex-gap-1.text-center {
    display: none !important;
}

#page-footer .footer-container .footer-copyright-wrapper a.footer-privacy-policy {
    display: none !important;
}

#page-footer .footer-container hr {
    border-top: 1px solid var(--bs-white) !important;
}

.block-body-wrapper .card-text.content.block-content-area {
    background: rgb(249, 242, 255) !important;
    padding: 24px !important;
    border-radius: 5px !important;
}

#page-my-index .card-body.p-3 {
    background: rgb(249, 242, 255);
    padding: 8px !important;
}

.main-area-bg.pagelayout-login .login-container .logo-area img.logo {
    margin: 0px auto !important;
    display: block !important;
    width: 184px !important;
    height: 100% !important;
    max-height: 100% !important;
}

div#wdm_dashboard-stats {
    display: none !important;
}

.course-listitem a.aalink.coursename:hover {
    color: white !important;
}

body.limitedwidth .edw-course-list-container .edw-course-list .edw-course-img-wrapper .card-img {
    min-height: 80px !important;
}

/* the list view's side-by-side card layout; on phones the theme stacks the card instead */
@media (min-width: 768px) {
    .edw-course-list-container .edw-course-list {
        padding: 48px !important;
    }

    .edw-card-design-ft.d-flex.justify-content-between.flex-wrap.align-items-end.flex-gap-5 {
        position: absolute;
        right: 5%;
        top: 50%;
        transform: translateY(-50%);
    }
}

.navbar-brand {
    background-color: white !important;
}

.navbar #usernavigation .simplesearchform {
    display: none !important;
    max-width: 194px;
}

#page-site-index li#module-23280,
#page-site-index li#module-23281,
#page-site-index li#module-21517,
#page-site-index li#module-21518,
#page-site-index li#module-21519,
#page-site-index li#module-21898 {
    display: none;
}

.hide-element-add-activity {
    display: none !important;
}

#page-course-view-participants .form-autocomplete-suggestions {
    position: initial;
}

#page-mod-quiz-view div#intro {
    display: none;
}

input.add_selected.btn.btn-custom.btn-primary.getData {
    margin-right: 32px;
}

#page-course-view-topics .secondary-navigation {
    font-size: 13px;
    margin: 0px auto;
    max-width: 100% !important;
}

#page-course-view-topics .secondary-navigation a.nav-link {
    padding: 8px !important;
}

#page-course-view-topics .secondary-navigation {
    margin: 0px auto;
    padding-bottom: 16px;
    max-width: 100% !important;
}

#page-mod-quiz-edit .tag_list.hideoverlimit.d-inline,
#page-question-edit .tag_list.hideoverlimit.d-inline {
    display: none !important;
}

#page-mod-quiz-edit .tag-condition-container,
#page-question-edit .tag-condition-container {
    display: none;
}

@keyframes spinloaderreport { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

#page-question-edit .tag-condition-container {
    display: none;
}

.modalPicker .datepicker {
    border: 1px solid rgb(217, 217, 217);
    margin: 0px auto;
}

.modalPicker .datepicker table tr td,
.modalPicker .datepicker table tr th {
    text-align: center;
    width: 30px;
    height: 30px;
    border-radius: 4px;
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: none;
    color: rgb(0, 0, 0);
}

.modalPicker .datepicker table tr td.day:hover,
.modalPicker .datepicker table tr td.focused {
    background: rgb(85, 85, 85);
    color: var(--bs-white);
    cursor: pointer;
}

.modalPicker .datepicker table tr td.old,
.modalPicker .datepicker table tr td.new {
    color: rgb(255, 128, 0);
}

.modalPicker .datepicker table tr td.today {
    color: rgb(0, 0, 0);
    background-color: rgb(255, 169, 83);
    border-color: rgb(255, 183, 111);
}

.modalPicker .datepicker table tr td.today:hover {
    color: rgb(255, 255, 255);
    background-color: rgb(136, 68, 0);
    border-color: rgb(245, 158, 0);
}

.modalPicker .datepicker .prev:hover,
.modalPicker .datepicker .next:hover,
.modalPicker .datepicker tfoot tr th:hover {
    background: rgb(80, 162, 201);
}

.pagelayout-incourse #mod_quiz_navblock .qn_buttons {
    display: block !important;
}

h3.mod_quiz-section-heading {
    font-size: initial;
    text-align: left;
    margin-bottom: 8px !important;
}

#page-course-edit .fcontainer .form-control-static {
    display: none;
}

.cmid-19552 .activity-navigation,
.cmid-19551 .activity-navigation {
    display: none;
}

#page-course-edit .form-control-static {
    display: none;
}

#page-my-index .block_v7_user_info + .block_html > .card-body.p-3 {
    background: var(--bs-white) !important;
}

#page-my-index .block_v7_user_info + .block_html.card {
    box-shadow: none !important;
    border-width: medium !important;
    border-style: none !important;
    border-color: currentcolor !important;
    border-image: none !important;
}

#page-blocks-configurable_reports-viewreport .generaltable th.header {
    background-color: var(--bs-brand-primary) !important;
    border-bottom-width: 2px;
}

.navbar li.message_popover {
    display: none;
}

#page-mod-quiz-attempt9999 .multichoice .answer div:nth-of-type(4) ~ div {
    display: none !important;
}

.errorbox .errorcode {
    display: none;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    height: auto !important;
}

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: rgb(236, 236, 236);
    border-radius: 10px;
}

::-webkit-scrollbar-thumb {
    background: rgb(204, 204, 204);
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgb(170, 170, 170);
}

#page-wrapper {
    flex-grow: 1;
}

#nav-drawer,
nav.navbar .drawer-toggle {
    background-color: var(--bs-brand-primary);
}

.btn-basic {
    color: var(--bs-white);
    margin-bottom: 1.5rem;
    background-color: rgb(128, 0, 255);
    border-color: rgb(128, 0, 255);
    border-radius: 4px;
}

.btn-highlight {
    font-size: 1.1rem;
    margin-top: 1rem;
    padding: 0.5rem 2.5rem;
}

.btn-basic:hover,
.btn-basic:focus {
    color: white;
    background: var(--bs-brand-secondary);
    border-color: var(--bs-brand-secondary);
}

.pagelayout-incourse #mod_quiz_navblock .qn_buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 8px;
    flex-wrap: wrap;
}

.pagelayout-incourse #mod_quiz_navblock h5 + .card-text {
    text-align: center;
}

.card.card-color-blue {
    background: var(--bs-brand-primary);
    color: var(--bs-white);
    border: 0px;
}

.card-color-blue .card-title,
.card-color-blue ul li {
    color: var(--bs-white);
}

.card-color-blue .card-title {
    font-size: 1.85rem;
    font-weight: 500;
}

.card-color-blue ul li a {
    color: inherit;
}

.top-section-iframe {
    width: 100%;
    height: 250px;
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: none;
    max-width: 444px;
}

.blog-iframe {
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: none;
}

.card-color-blue {
    font-size: 1.05rem;
}

.performanceinfo {
    display: none;
}

.section .label .contentwithoutlink,
.path-site li.activity > div,
.section .activity.modtype_label.label {
    padding: 0px !important;
}

.modtype_page#module-5816,
.modtype_book#module-5817,
.usertour,
.pagelayout-standard .mform #id_filtersection,
.pagelayout-standard .mform ~ .nav-tabs .nav-link[title="Users"] {
    display: none;
}

.small-box-1 svg,
.small-box-2 svg,
.small-box-3 svg,
.small-box-4 svg {
    right: 0px !important;
    left: unset !important;
}

#page-my-index .small-box {
    color: var(--bs-white);
    border-radius: 6px;
}

#page-my-index .small-box h3 {
    white-space: normal;
}

#page-my-index .userinfos .col-md-3 {
    margin-bottom: 1.5rem;
}

#page-my-index .userinfos .small-box {
    margin-bottom: 0px;
    height: 100%;
}

#page-my-index .small-box > .inner {
    min-height: 151px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 16px 8px;
}

.small-box > .inner h3 {
    color: inherit;
}

.small-box .line {
    background: transparent;
    position: absolute;
    z-index: 1;
    top: 50%;
    transform: translateY(-50%);
    right: 0px;
    opacity: 0.5;
}

.average-score,
.average-progress {
    color: rgb(0, 0, 0);
    letter-spacing: -3px;
}

.average-score {
    font-size: 4rem;
}

.average-progress {
    font-size: 3rem;
}

.average-score-wrap .icon {
    font-size: 4rem;
    display: inline-table;
}

.average-progress-wrap .icon {
    font-size: 2rem;
    display: inline-table;
    color: rgb(115, 186, 90);
    transform: rotate(-90deg);
}

.average-progress-wrap .icon-down {
    color: rgb(242, 7, 7);
}

.progress-wrap {
    justify-content: space-evenly;
    height: 100%;
}

.radialbox-label {
    position: absolute;
    width: 100%;
    text-align: center;
    font-size: 14px;
    top: 75%;
}

.col-md-25 {
    flex: 0 0 20%;
    max-width: 20%;
}

.footer__social {
    gap: 8px;
}

.footer__item {
    color: var(--bs-white);
    padding: 4px 8px;
}

.footer__item a {
    color: var(--bs-white);
}

.footer__item-highlighted {
    border: 1px solid rgb(255, 255, 255);
}

#site-news-forum article {
    display: contents;
}

[data-key="calendar"] {
    display: none !important;
}

[data-key="contentbank"] {
    display: none !important;
}

.text-desc {
    font-size: 20px;
    font-weight: bold;
}

.sub-text {
    font-size: 40px;
}

.block_enrolmenttimer .content .timerNumChar {
    display: none;
}

.block_enrolmenttimer .content .text-wrapper .text-desc {
    font-size: 1.9em;
    margin-right: 200px;
    display: inline-flex;
    text-transform: capitalize;
    color: rgb(16, 104, 141);
}

.block_enrolmenttimer .content .text-wrapper .sub-text {
    font-size: 1em;
}

.block_enrolmenttimer .content p {
    margin-right: 8px;
    display: inline-flex;
}

.block_enrolmenttimer .content p {
    font-size: 1.2em;
    margin-right: 8px;
    display: inline-flex;
    text-transform: capitalize;
}

.d-inline {
    display: none;
}

.block_enrolmenttimer .card-text .visual-counter,
.block_enrolmenttimer .card-text hr,
.block_enrolmenttimer .card-title {
    display: none !important;
}

.block_enrolmenttimer .card-text .text-desc .days {
    margin-right: 8px;
}

.block_enrolmenttimer .card-text .text-wrapper,
.block_enrolmenttimer .card-text {
    margin-top: 0px !important;
}

li.r1 {
    display: none;
}

#exampleModal1 .modal-content {
    width: 50%;
    margin: 0px auto;
}

.card--accordion .card-header {
    background-color: var(--bs-brand-primary);
}

.card-link--accordion[data-toggle="collapse"].collapsed .fa::before {
    transform: rotate(45deg);
}

.card-link--accordion[data-toggle="collapse"] .fa::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-style: solid;
    border-color: white;
    border-image: none;
    border-width: 0px 2px 2px 0px;
    transform: rotate(225deg);
    transition: transform 0.3s ease-in-out;
}

.card-link--accordion {
    color: var(--bs-white);
    display: block;
    font-size: 17px;
    padding-right: 16px;
    text-decoration: none !important;
}

.card-link--accordion:hover {
    color: var(--bs-white);
    text-decoration: underline !important;
}

.icon--accordion {
    position: absolute;
    right: 10px;
    top: 18px;
    font-size: 24px;
}

.pagelayout-mydashboard section {
    border-top: 2px solid rgb(16, 104, 141);
}

.pagelayout-mydashboard h5.card-title {
    font-size: 1.3rem;
    font-weight: bold;
}

button.btn.btn-outline-info.rounded {
    display: none;
}

@media (max-width: 1199.98px) {
    .col-md-25 {
        flex: 0 0 200px;
        max-width: 200px;
    }

}

@media (max-width: 767.98px) {
    .forumpost {
        width: 100%;
        margin-right: 0px;
    }

    .progress-wrap {
        flex-direction: row !important;
    }

    .average-score-wrap {
        margin-right: 0.5rem;
    }

    .average-score-wrap .icon {
        font-size: 3rem;
    }

    .average-score {
        font-size: 3rem;
    }

    .average-progress {
        font-size: 2rem;
    }

    .row--domain-breakdown {
        justify-content: center;
    }

    .pagelayout-mydashboard .dropdown-toggle {
        white-space: normal;
    }

}

@media (max-width: 575.98px) {
    #page.container-fluid {
        padding: 2rem 1rem;
    }

    .drawer-open-left #page.container-fluid {
        padding-left: 2rem;
    }

    .card-link--accordion {
        font-size: unset;
    }

    .card-color-blue .card-title {
        font-size: 1.5rem;
        font-weight: bold;
    }

    .footer {
        flex-wrap: wrap;
    }

    .footer__social,
    .footer__copyright {
        flex-basis: 100%;
    }

    .footer__social {
        justify-content: center;
        flex-wrap: wrap;
        margin-bottom: 8px;
    }

    .footer__copyright {
        text-align: center;
    }

}

#page-header .logo img {
    display: none;
}

.small-box > .inner h3 {
    text-align: center;
}

#page-my-index .userinfos .small-box p {
    min-height: 44px;
    font-size: 16px;
    text-align: center;
}

#page-my-index .userinfos .small-box h3 {
    font-size: 2rem;
    font-weight: 600;
    white-space: normal;
}

.small-box > .inner .dropdown-wrapper {
    cursor: pointer;
    position: absolute;
    right: 10px;
    bottom: 10px;
    font-size: 15px;
}

#page-header + h2 {
    margin-bottom: 1rem;
}

.radialbox-label {
    font-size: 13px;
}

@media (max-width: 1199.98px) {
    #exampleModal1 .modal-content {
        width: unset;
    }

}

nav.navbar .logo img {
    padding: 8px 0px;
}

.course__expiry,
.course__extend {
    text-align: center;
    display: flex;
}

.course__expiry p,
.course__extend p {
    margin-bottom: 0px;
}

@media (min-width: 768px) {
    .course__expiry b,
    .course__extend b {
        display: none;
    }

    .course-listitem .coursename {
        margin-top: 0.25rem;
        text-decoration: none;
        background: var(--bs-brand-primary);
        border: 1px solid transparent;
    }

    .course-listitem:hover .coursemenubtn:focus-within .icon {
        color: rgb(52, 58, 64);
    }

    .course-listitem .coursename .icon {
    }

    .course-listitem .btn-primary {
        background: var(--bs-brand-primary);
        border: 1px solid transparent;
        transition: none;
    }

    .course-listitem:hover .coursename,
    .course-listitem:hover .btn-primary {
        background: transparent;
        border: 1px solid var(--bs-white);
        color: var(--bs-white) !important;
    }

    .course-listitem:hover .coursemenubtn:hover {
        background: var(--bs-white);
        color: var(--bs-brand-primary);
    }

    .course__expiry,
    .course__extend {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

}

.course__dates,
.course-listitem .categoryname {
    display: none;
}

#nav-drawer .list-group .list-group-item:hover {
    background: unset;
}

#nav-drawer .list-group .list-group-item:hover > a {
    background: rgb(38, 198, 218);
}

.course-listitem:hover {
    background-color: var(--bs-brand-primary);
    color: var(--bs-white);
}

.block_myoverview #my-courses::before {
    content: " ";
    display: block;
    height: 130px;
    margin-top: -130px;
}

.course__expiry,
.course__extend,
.course__extend-item {
    text-align: center;
    display: flex;
}

.course__expiry p,
.course__extend p,
.course__extend-item p {
    margin-bottom: 0px;
}

.course__extend-item .btn:not(:last-child) {
    margin-right: 0.5rem;
}

@media (min-width: 768px) {
    .course__expiry b,
    .course__extend b,
    .course__extend-item b {
        display: none;
    }

    .course-listitem a.coursename {
        padding: 8px 16px;
        margin-top: 0.25rem;
        display: inline-block;
    }

    .course-listitem a.coursename:active,
    .course-listitem a.coursename:focus {
        box-shadow: rgba(52, 38, 77, 0.3) 0px 0px 0px 0.2rem;
    }

    .course-listitem:hover .coursemenubtn:hover {
        background: var(--bs-white);
        color: rgb(45, 48, 120);
    }

    .course__expiry,
    .course__extend,
    .course__extend-item {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .course__extend-item {
        flex-direction: row;
    }

}

@media (max-width: 767.98px) {
    .courseitem-header {
        display: none;
    }

    .course__expiry p,
    .course__extend p {
        margin-right: 0.5rem;
    }

    .course__extend-item .btn:not(:last-child) {
        margin-right: 0.5rem;
    }

    .course__dates,
    .course-listitem .categoryname {
        display: none;
    }

    nav.navbar ul.navbar-nav li > a,
    nav.navbar ul.navbar-nav .nav-item > a {
        margin: 8px;
    }

    .course-listitem a.coursename {
        padding: 8px 16px;
        border: 1px solid rgb(222, 226, 230);
        display: inline-block;
    }

    .navbar-light .navbar-nav .nav-link i {
        height: 70px;
        line-height: 70px;
    }

    #page-my-index .userinfos .col-md-3 {
        display: flex;
    }

    #page-my-index .userinfos .small-box {
        display: flex;
        height: unset;
        width: 100%;
    }

    #page-mod-quiz-attempt iframe[name="us-entrypoint-buttonV2"] {
        display: none !important;
        visibility: hidden;
    }

}

#page-course-edit div#fitem_id_customfield_board_text_font {
    display: none;
}

.block-header[title="Job Widget block"] {
    display: none;
}

.drawer.drawer-left .list-group a.home {
    display: none !important;
}

.drawer.drawer-left .list-group a.mycourses {
    display: none !important;
}

.align__center {
    align-self: center !important;
}

li.course-listitem {
    cursor: pointer;
}

.dropdown-menu-left .nav-item a.dropdown-item {
    color: black !important;
}

#dashboard_selector .select__wrapper {
    margin: 8px;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .block_v7_mycourse .course-listitem .coursename {
        padding-left: 40px !important;
    }

}

.block_remuiblck .block-body-wrapper .block-header-wrapper {
    margin-bottom: unset !important;
}

#sortable1 .panel-heading {
    display: none;
}

.dropdownmoremenu .dropdown-toggle.nav-link {
    background: unset !important;
}

#page-my-index .list-group {
    border-radius: unset !important;
    margin-inline-start: unset !important;
}

#page-my-index .list-group > :first-child {
    border-top-color: transparent !important;
}

#page-my-index .userinfos .dropdown-toggle {
    margin-right: 8px;
}

#page-my-index #coursecategorylist {
    appearance: none !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"white\"><path d=\"M7 10l5 5 5-5H7z\"/></svg>") !important;
    background-position: calc(100% - 15px) center !important;
    background-repeat: no-repeat !important;
    background-size: 20px auto !important;
    color: white !important;
}

#page-my-index #coursecategorylist:hover {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"black\"><path d=\"M7 10l5 5 5-5H7z\"/></svg>") !important;
    color: black !important;
}

#page-my-index #dashboarddd {
    padding-left: 8px;
    margin-right: 16px;
}

@media (min-width: 1023px) and (max-width: 1115px) {
    .navbar-brand.logo,
    .navbar-brand .navbar-brand-logo {
        height: calc(18px);
    }

    .navbar-nav .usermenu-wrapper {
        gap: unset !important;
    }

}

@media (max-width: 767.98px) {
    .block-v7_mycourse .course-listitem .course_name {
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    .block-v7_mycourse .course__expiry,
    .course__extend,
    .course__extend-item {
        padding-left: 10%;
        text-align: center;
        display: flex;
    }

}

.que.multichoice .answer .answernumber {
    min-width: 0.5em;
}

.header-maxwidth {
    max-width: 100%;
    margin: 0px auto;
}

#page-mod-quiz-attempt .drawer.drawer-right.show {
    display: none;
}

@media (min-width: 1024px) {
    #page-mod-quiz-attempt #page.drawers.show-drawer-right {
        margin-right: 0px;
    }

}

#page-mod-quiz-mod #id_reviewoptionshdr .fitem {
    min-height: 2rem !important;
}

#page-mod-quiz-review span.aftergapfeedback {
    display: none;
}

.generaltable thead sup {
    padding: 0px 0px 0px 4px !important;
    font-size: 100% !important;
}

.form-autocomplete-downarrow {
    margin-left: 178px !important;
    margin-top: -35px !important;
}

.navbar .primary-navigation .nav-link.active::before,
.navbar .primary-navigation .dropdown-toggle.active::before,
.navbar #usernavigation .nav-link.active::before,
.navbar #usernavigation .dropdown-toggle.active::before {
    border-bottom: 3px solid var(--bs-brand-primary) !important;
}

.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
    padding: 8px;
}

.datepicker {
    border: 2px solid var(--bs-brand-primary);
}

.datepicker table tr td.today,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today:hover {
    background-color: var(--bs-brand-primary);
    border-color: var(--bs-brand-primary);
    color: var(--bs-white);
}

.edw-tabs-navigation .nav-tabs .nav-item .nav-link.active::before {
    border-bottom: 3px solid var(--bs-brand-primary);
}

a:not(.nav-link):hover {
    color: var(--bs-brand-secondary);
    text-decoration-line: underline;
    text-decoration-thickness: initial;
    text-decoration-style: initial;
    text-decoration-color: var(--bs-brand-primary) !important;
}

span.edw-icon.edw-icon-Rating-stars_Active {
    color: var(--bs-brand-secondary) !important;
}

span.edw-icon.edw-icon-Rating-stars_Active:hover {
    color: var(--bs-white) !important;
}

.edw-course-img-wrapper [data-region="favourite-icon"] .edw-icon-Rating-stars_Active {
    font-size: 16px;
    color: var(--bs-white) !important;
    background-color: var(--bs-brand-secondary) !important;
}

span.edw-icon.edw-icon-Search {
    color: var(--bs-brand-secondary);
}

body.limitedwidth .edw-course-list-container .edw-course-list .edw-list-body .edw-card-design-ft .progress-data-wrapper .progress .progress-bar {
    background-color: var(--bs-brand-secondary);
}

.block-myoverview [data-region="filter"] .all-filter-wrapper .nav-search-sort-selector .edw-search-form-wrapper .input-group-prepend {
    border: 1px solid var(--bs-brand-primary);
}

.block-myoverview [data-region="filter"] .all-filter-wrapper .nav-search-sort-selector .dropdown .dropdown-toggle {
    color: var(--bs-white);
    background-color: var(--bs-brand-primary);
    border: 1px solid rgb(213, 221, 234);
    padding: 8px 8px;
}

.block-myoverview [data-region="filter"] .all-filter-wrapper .nav-search-sort-selector .edw-search-form-wrapper .input-group-prepend .form-control,
.block-myoverview [data-region="filter"] .all-filter-wrapper .nav-search-sort-selector .edw-search-form-wrapper .input-group-prepend #page-course-edit #id_courseformathdrcontainer #fitem_id_format .dropdown-toggle,
#page-course-edit #id_courseformathdrcontainer #fitem_id_format .block-myoverview [data-region="filter"] .all-filter-wrapper .nav-search-sort-selector .edw-search-form-wrapper .input-group-prepend .dropdown-toggle,
.activity-item .activity-dates {
    color: var(--bs-brand-primary);
}

.courseanalytics-wrapper .quiz-overview-body #course-stats .each-stats-wrapper {
    padding: 32px;
    color: var(--bs-white);
    border: 1px solid var(--bs-brand-primary);
    border-radius: 8px;
    background-color: var(--bs-brand-primary);
}

.dropdown-menu.show {
    border: 0.1px solid;
}

.btn-outline-secondary,
.btn-outline-primary,
select#coursecategorylist,
.btn-warning {
    background: var(--bs-brand-primary);
    color: var(--bs-white);
    border-color: var(--bs-brand-primary);
}

#theme_remui-drawers-courseindex .drawercontent #courseindex #courseindex-content .courseindex .courseindex-section .courseindex-section-title {
    color: var(--bs-white) !important;
    background: var(--bs-brand-primary) !important;
    border: 1px solid var(--bs-brand-primary) !important;
}

.moodlehelpbtn {
    display: none !important;
}

.course-listitem:hover,
.course-listitem:hover .progress-text,
.course-listitem:hover .progress-text *,
.course-listitem:hover span.small-info-regular,
.course-listitem:hover span.progress {
    color: white !important;
}

#page-course-view-topics .secondary-navigation a.nav-link {
    color: var(--bs-brand-secondary);
}

.icon {
    color: var(--bs-brand-secondary) !important;
}

.navbar .primary-navigation .nav-link:hover::before,
.edw-tabs-navigation .nav-tabs .nav-item .nav-link:hover::before {
    content: "";
    position: absolute;
    left: 0px;
    width: 100%;
    border-bottom: 3px solid var(--bs-brand-primary);
}

.navbar .primary-navigation .nav-link:hover::before {
    top: 61px;
}

.edw-tabs-navigation .nav-tabs .nav-item .nav-link:hover::before {
    visibility: visible;
    bottom: -15px;
}

select#coursecategorylist {
    padding: 8px;
}

.edw-tabs-navigation .nav-tabs .nav-item .nav-link.active,
.edw-tabs-navigation .nav-tabs .nav-item .nav-link:hover {
    color: var(--bs-brand-secondary) !important;
}

table#reporttable th {
    color: white;
}

table.question-bank-table {
    width: 100% !important;
}

.activityiconcontainer.content:not(.isbranded) .activityicon:not(.nofilter),
.activityiconcontainer.content:not(.isbranded) .icon:not(.nofilter) {
    filter: invert(53%) sepia(63%) saturate(2337%) hue-rotate(328deg) brightness(118%) contrast(101%);
}

.activityiconcontainer.communication:not(.isbranded) .activityicon:not(.nofilter),
.activityiconcontainer.communication:not(.isbranded) .icon:not(.nofilter) {
    filter: invert(72%) sepia(83%) saturate(3909%) hue-rotate(121deg) brightness(99%) contrast(101%);
}

.activityiconcontainer.assessment:not(.isbranded) .activityicon:not(.nofilter),
.activityiconcontainer.assessment:not(.isbranded) .icon:not(.nofilter) {
    filter: invert(8%) sepia(95%) saturate(7453%) hue-rotate(271deg) brightness(117%) contrast(122%);
}

.nav-link:focus {
    box-shadow: none !important;
}

.pagelayout-mydashboard .block .block-header-wrapper .block-header {
    font-weight: normal !important;
}

.footer-mainsection-wrapper ~ div {
    display: none;
}

div.welcome_msg {
    padding-top: 16px;
}

.cmid-20256 div[role="main"] {
    background: rgb(249, 242, 255) !important;
}

.page-mycourses header#page-header {
    display: none;
}

canvas#analysischart {
    height: 400px !important;
}

div#analysis-chart-area {
    display: block !important;
}

.pagelayout-mydashboard #region-top-blocks.has-blocks {
    margin-bottom: 2px !important;
}

.pagelayout-course .header-enrolbtn-wrapper .btn-enrolpage.disabled {
    display: none !important;
}

.pagelayout-course .header-enrolbtn-wrapper .btn-enrolpage {
    display: none !important;
}

.pagelayout-course .header-enrolbtn-wrapper .small-btn-text {
    display: none !important;
}

.navbar .usermenu-wrapper .usermenu-container .usermenu #user-menu-toggle {
    box-shadow: none !important;
}

.pagelayout-course .drawer-right-toggle {
    display: none !important;
}

.pagelayout-mycourses .drawer-right-toggle {
    display: none !important;
}

.pagelayout-admin .drawer-right-toggle {
    display: none !important;
}

.pagelayout-mydashboard .drawer-right-toggle {
    display: none !important;
}

@media (max-width: 1199.98px) {
    .block-v7_mycourse .summaryimage.card-img.dashboard-list-img {
        height: 4rem;
        width: 4rem;
    }

    .course-listitem a.coursename {
        padding: 8px 16px;
    }

}

@media (max-width: 767.98px) {
    .course-listitem:hover a.coursename {
        color: white !important;
    }

}

.path-mod-quiz #mod_quiz_navblock h3.mod_quiz-section-heading {
    display: block;
    width: 100%;
    font-weight: 500;
}

#nav-notification-popover-container {
    display: none !important;
}

#page-mod-quiz-edit ul.slots li.section .content {
    background-color: rgb(249, 242, 255) !important;
}

.bg-primary,
.maincalendar .calendarmonth td.today .day-number-circle {
    background-color: rgb(16, 0, 46) !important;
}

div.im-controls button.submit {
    background-color: rgb(16, 0, 46);
    color: rgb(255, 255, 255);
    border-color: rgb(16, 0, 46);
}

div.im-controls button.submit:hover {
    background-color: rgb(255, 255, 255);
    color: rgb(16, 0, 46);
    border-color: rgb(16, 0, 46);
}

div.im-controls button.submit:focus {
    background-color: rgb(255, 255, 255);
    color: rgb(16, 0, 46);
    border-color: rgb(16, 0, 46);
}

#page.drawers.show-drawer-right {
    background: rgb(255, 255, 255) !important;
}

#nav-message-popover-container {
    display: none !important;
}

.usermenu a[href$="preferences.php"] {
    display: none !important;
}

@media (max-width: 767.98px) {
    #page-footer .footer-container .footer-mainsection-wrapper .footerdata .footer-section-wrapper#footer-column-2,
    #page-footer .footer-container .footer-mainsection-wrapper .footerdata .footer-section-wrapper#footer-column-3,
    #page-footer .footer-container .footer-mainsection-wrapper .footerdata .footer-section-wrapper#footer-column-4,
    #page-footer .footer-container .footer-content-popover,
    #page-footer .footer-container hr {
        display: none;
    }

}

@media (min-width: 576px) {
    body.focusmode #wdm-courseheader .title a,
    body.focusmode .navbar.fm-navbar .nav-link {
        color: var(--bs-brand-secondary) !important;
    }

}

#question_table {
    max-height: none !important;
}

.content .formulation input[type="radio"]:focus::after {
    box-shadow: rgba(0, 81, 249, 0.5) 0px 0px 0px 0.2rem;
}

.content .formulation input[type="checkbox"]:focus::after {
    box-shadow: rgba(0, 81, 249, 0.5) 0px 0px 0px 0.2rem;
}

.content .formulation .accesshide {
    display: none;
}

.btn.btn-primary:not(#focusmodebutton):not([data-toggler="drawers"]):focus,
.btn.btn-secondary:not(#focusmodebutton):active,
.btn.btn-primary:not(#focusmodebutton):not([data-toggler="drawers"]):focus-visible,
.btn.btn.btn-secondary:not(#focusmodebutton):focus-within {
    border: 2px solid purple !important;
    background-color: white !important;
    color: rgb(16, 0, 46) !important;
    outline: none !important;
    box-shadow: rgba(128, 0, 255, 0.25) 0px 0px 0px 0.2rem !important;
}

#focusmodebutton.btn-primary:hover .btn-floating-text {
    color: rgb(16, 0, 46) !important;
}

#focusmodebutton.btn-danger .btn-floating-text,
#focusmodebutton.btn-danger:hover .btn-floating-text {
    color: rgb(255, 255, 255) !important;
}

.btn.btn-primary,
.btn.btn-secondary {
    color: rgb(255, 255, 255) !important;
    background-color: rgb(16, 0, 46) !important;
}

.btn.btn-primary:hover,
.btn.btn-secondary:hover {
    background-color: white !important;
    color: rgb(16, 0, 46) !important;
    text-decoration: underline !important;
}

.que h2.no {
    margin: 0px;
    font-size: 0.8em;
    line-height: 1;
}

.que span.qno {
    font-size: 1em;
}

:focus-visible {
    outline: 2px solid var(--bs-brand-secondary) !important;
    outline-offset: 2px !important;
    border-radius: 4px !important;
}

#gotop.btn.btn-primary:focus-visible {
    outline: 2px solid var(--bs-brand-secondary) !important;
    outline-offset: 2px !important;
    border-radius: 4px !important;
    z-index: 1000 !important;
    position: relative !important;
    color: rgb(255, 255, 255) !important;
    background-color: rgb(16, 0, 46) !important;
}

a.coursename:focus,
a.coursename:focus-visible {
    outline: 2px solid var(--bs-brand-secondary) !important;
    outline-offset: 2px !important;
    border-radius: 4px !important;
    display: inline-block !important;
    padding: 2px !important;
    background-color: rgb(255, 255, 255) !important;
    position: relative !important;
    z-index: 1000 !important;
}

#id_customfield_include_course_in_course_analytics {
    display: none !important;
}

label[for="id_customfield_include_course_in_course_analytics"] {
    display: none !important;
}

input[name="customfield_include_course_in_course_analytics"] {
    display: none !important;
}

.que.multichoice .answer .answernumber {
    min-width: 1em !important;
    text-indent: -0.2em !important;
}

.path-mod-quiz .quizinfo .gradingmethod,
.path-mod-quiz .gradingmethod {
    display: none !important;
}

a.btn-link.ms-3.mt-n1 {
    font-weight: 400;
    color: rgb(128, 0, 255);
    background-color: rgb(255, 255, 255);
    border: 1px solid rgb(128, 0, 255);
    border-radius: 5px;
    padding: 8px 16px;
    font-size: 0.875rem;
    text-decoration: none;
    transition: 0.2s ease-in-out;
}

a.btn-link.ms-3.mt-n1:hover,
a.btn-link.ms-3.mt-n1:focus {
    color: rgb(0, 0, 0) !important;
    background-color: rgb(255, 255, 255) !important;
    border-color: rgb(0, 0, 0) !important;
    text-decoration: none !important;
}

.small-box {
    position: relative;
}

.small-box .dropdown-wrapper {
    position: absolute;
    right: 10px;
    bottom: 10px;
}

.small-box .dropdown-toggle {
    background: transparent;
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: none;
    color: rgb(255, 255, 255);
    cursor: pointer;
}

.list-group-item.courseitem-header {
    padding: 16px 24px !important;
    background: rgb(255, 255, 255) !important;
    border: 1px solid rgba(0, 0, 0, 0.125) !important;
    border-radius: 0px !important;
    box-shadow: none !important;
}

.badge.rounded-pill.bg-success.icon-no-margin {
    color: rgb(21, 87, 36) !important;
    background-color: rgb(212, 237, 218) !important;
    border: 1px solid rgb(195, 230, 203) !important;
}

.badge.rounded-pill.bg-danger.icon-no-margin {
    color: rgb(114, 28, 36) !important;
    background-color: rgb(248, 215, 218) !important;
    border: 1px solid rgb(245, 198, 203) !important;
}

body.focusmode #wdm-courseheader .progress .progress-text {
    display: none !important;
}

.sub-nav {
    padding: 32px 24px !important;
    & #wdm-courseheader .progress, & #wdm-courseheader .progress-text { display: none !important; }
}

body.focusmode #courseActivities .nav-link {
}

/* core gives focused plain links a tinted background (strong purple with this theme) and dark text;
   the :focus-visible outline is the focus indicator, so links keep their own colours */
.aalink:focus,
.aalink.focus,
a.autolink:focus,
a.autolink.focus,
a:not([class]):focus,
a:not([class]).focus,
.arrow_link:focus,
.arrow_link.focus,
.activityinstance > a:focus,
.activityinstance > a.focus {
    box-shadow: none !important;
    background-color: transparent !important;
    color: var(--bs-link-color) !important;
}

.que p:empty {
    display: none !important;
    margin: 0px !important;
    padding: 0px !important;
}

.que p + br {
    display: none !important;
}

.focus-mode-active-info {
    display: none !important;
}

.questionflagsaveform .que .info,
#page-mod-quiz-attempt .que .info,
#page-mod-quiz-review .que .info {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.questionflagsaveform .que .content,
#page-mod-quiz-attempt .que .content,
#page-mod-quiz-review .que .content {
    margin: 0px;
}

.questionflagsaveform .que .info .state,
.questionflagsaveform .que .info .grade,
.questionflagsaveform .que .info .badge,
#page-mod-quiz-attempt .que .info .state,
#page-mod-quiz-attempt .que .info .grade,
#page-mod-quiz-attempt .que .info .badge {
    display: none !important;
}

.btn-icon.icons-collapse-expand,
.btn.btn-icon,
#page-calendar-view .btn-icon.cal_courses_flt {
    color: inherit !important;
    background: none !important;
    border-width: medium !important;
    border-style: none !important;
    border-color: currentcolor !important;
    border-image: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    border-radius: 0px !important;
    cursor: pointer !important;
}

.btn-icon.icons-collapse-expand:hover {
    outline: none !important;
    background: none !important;
}

a.btn.btn-primary.btn-sm.d-flex.align-items-center:hover,
a#next-activity-link:hover,
a#prev-activity-link:hover {
    text-decoration: transparent !important;
}

.generaltable.quizsummaryofattempt.boxaligncenter {
    display: none;
}

.block .block-cards .btn.btn-link.btn-icon,
#page-calendar-view .block .block-cards .btn-link.btn-icon.cal_courses_flt {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px;
    transition: background-color 0.2s;
    background-color: rgb(245, 249, 253) !important;
    border-radius: 50% !important;
    padding: 8px !important;
}

.block .block-cards .btn.btn-link.btn-icon:hover {
    background-color: rgb(242, 242, 242) !important;
}

#gotop .btn-floating-text {
    font-size: 0px !important;
}

#gotop .btn-floating-text::after {
    content: "Go to Top";
    color: inherit;
    font-size: 12px !important;
}

button#gotop.btn-primary:hover .edw-icon,
button#gotop.btn-primary:hover .btn-floating-text::after {
    color: rgb(22, 21, 21) !important;
}

body.focusmode .qtext,
body.focusmode .qtext *,
body.focusmode .answer,
body.focusmode .answer * {
    font-size: 15px !important;
    line-height: 1.6 !important;
}

.navbar [data-key="recentcourses"] .dropdown-menu {
    min-width: 300px;
    max-width: 100vw;
    box-sizing: border-box;
    width: auto !important;
}

#page-mod-quiz-attempt #theme_remui-drawers-blocks.drawer.drawer-right {
    right: 0px;
    transform: translateX(100%);
    transition: transform 0.3s;
}

#page-mod-quiz-attempt #theme_remui-drawers-blocks.drawer.drawer-right.show {
    display: block !important;
    transform: translateX(0px);
}

#page-mod-quiz-attempt #page.drawers {
    transition: margin-right 0.3s;
}

#page-mod-quiz-attempt #page.drawers.show-drawer-right {
    margin-right: var(--drawer-width, 320px);
}

#exam_user_info .small-box-1 .btn {
    width: 30%;
}

@media (max-width: 768px) {
    #exam_user_info .small-box-1 .btn {
        width: 100% !important;
    }

}

#page-mod-quiz-attempt #quiz-timer-wrapper {
    position: static !important;
}

#page-mod-quiz-review .que .info,
#page-mod-quiz-attempt .que .info {
    align-items: center;
}

.que .info > * {
    margin-left: 0.5em;
    margin-right: 0.5em;
}

.que .info > div {
    margin-top: 0px;
}

.que .info .question-feedback-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 0px;
}

.que .info .question-feedback-link a {
    text-decoration: none;
}

.que .info .questionflag {
    display: inline-flex;
    align-items: center;
}

@media (max-width: 768px) {
    .questionflag a.aabtn {
        position: relative;
        display: inline-flex;
        align-items: center;
        white-space: nowrap;
        font-size: 0px !important;
    }

    .questionflag a.aabtn::after {
        content: "Flag";
        font-size: 11px;
        font-family: inherit;
        color: inherit;
        margin-left: 4px;
        display: inline-block;
    }

    .questionflag a.aabtn img {
        vertical-align: middle;
    }

    .question-feedback-link a {
        font-size: 0px;
    }

    .question-feedback-link a::after {
        content: "Feedback";
        font-size: 11px;
        margin-left: 4px;
    }

    .question-feedback-link .fa-comments {
        font-size: 11px;
    }

    .que .info .editquestion a {
        font-size: 0px !important;
    }

    .que .info .editquestion a::after {
        content: "Edit";
        font-size: 11px;
    }

    .que .info .editquestion a i {
        font-size: 11px !important;
    }

}

body.ff-lti-user .primary-navigation li[title="My Courses"],
body.ff-lti-user .primary-navigation li[title="My courses"],
body.ff-lti-user .primary-navigation li[title="Additional Resources"],
body.ff-lti-user .primary-navigation li[data-key="myhome"],
body.ff-lti-user li[data-key="recentcourses"],
body.ff-lti-user .navbar .navbar-brand,
body.ff-lti-user .dashboard-bar-wrapper .page-header-image,
body.ff-lti-user #user-action-menu a[href*="user/profile.php"],
body.ff-lti-user #user-action-menu a[href*="triad_cecertificates"],
body.ff-lti-user #user-action-menu a[href*="user/preferences.php"],
body.ff-lti-user #user-action-menu a[href*="login/logout.php"],
body.ff-lti-user #user-action-menu .dropdown-divider {
    display: none !important;
}

@media (max-width: 768px) {
    .question-feedback-link a {
        position: relative;
        display: inline-flex;
        align-items: center;
        white-space: nowrap;
        font-size: 0px !important;
    }

    .question-feedback-link a::after {
        content: "Feedback";
        font-size: 11px;
        font-family: inherit;
        color: inherit;
        display: inline-block;
    }

}

/* TRIAD-6155: UX cleanup. */

/* the search and dark-mode toggles are hidden above, which left their dividers behind */
#usernavigation .preset-nav-group:not(:has(> :not(.simplesearchform, .nav-darkmode))),
#usernavigation .preset-nav-group:not(:has(> :not(.simplesearchform, .nav-darkmode))) + .divider,
#usernavigation .preset-nav-group:not(:has(> :not(.simplesearchform, .nav-darkmode))) + .usermenu-wrapper > .divider {
    display: none !important;
}

/* buttons land on the 8px grid: 40px, small 32px, floating 48px */
.btn {
    padding-top: 8px;
    padding-bottom: 8px;
    line-height: 22px;
}

.btn-sm,
.btn-group-sm > .btn {
    padding: 4px 8px;
}

.btn-floating {
    padding-top: 12px;
    padding-bottom: 12px;
}

#page-footer .footer-container .floating-buttons-wrapper .btn-floating {
    margin-top: 8px;
}

#page .block_edwiserratingreview #reviewarea .progress-wrapper .progress {
    margin-right: 32px;
}

#page .block_edwiserratingreview #reviewarea .ratings-block-wrapper {
    margin-bottom: 32px;
}

#page-footer:has(.section-footer-design-1) .footer-mainsection-wrapper .footerdata .footer-section-wrapper:not(:last-child) {
    padding-right: 16px;
}

#page-course-view-topics .collapse-all-menu,
.single-section-page .collapse-all-menu {
    margin-right: 8px;
}

/* the last paragraph's margin stacked on the summary wrapper's, leaving a 48px gap under section summaries */
.course-section .summarytext .no-overflow > :last-child {
    margin-bottom: 0;
}

.tertiary-navigation .navitem,
.tertiary-navigation .navitem-divider {
    margin-bottom: 24px;
}

/* the theme caps the tab bar at 830px for limited-width pages, but the content here is widened to full width */
.edw-tabs-navigation.secondary-navigation {
    max-width: 100%;
}

/* core quiz spacing is in em, which lands off the grid; these are the px equivalents */
.que {
    margin-bottom: 24px;
}

.que .info {
    padding: 8px;
    margin-bottom: 24px;
}

.que .qtext {
    margin-bottom: 24px;
}

.que .ablock {
    margin: 8px 0 4px;
}

.que p {
    margin-bottom: 8px;
}

.path-mod-quiz .othernav {
    margin: 8px 0;
}

.path-mod-quiz #mod_quiz_navblock .qnbutton {
    margin: 0 8px 8px 0;
}

.path-mod-quiz #mod_quiz_navblock h3.mod_quiz-section-heading {
    padding-top: 8px;
}

/* 4px between the question header icons and their text */
.que .info .questionflag .questionflagimage {
    padding-right: 0;
    margin-right: 4px;
}

.que .info .editquestion a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.que .info .editquestion .icon {
    width: auto;
    margin-right: 0;
}

/* with a drawer open the 5% side margin got narrower than the fixed drawer toggle, so the breadcrumb ran into it */
@media (min-width: 768px) {
    .pagelayout-standard #page.drawers .main-inner,
    body.limitedwidth #page.drawers .main-inner {
        max-width: min(90%, calc(100% - 112px));
    }
}

/* the theme's custom CSS makes these thumbnails 5rem round, but on phones the card stretched them to 200px tall */
.block-myoverview .edw-course-list .dashboard-list-img {
    height: 5rem !important;
}

@media (max-width: 767.98px) {
    .block-myoverview .edw-course-list .edw-course-img-wrapper {
        padding: 24px 24px 0;
    }

    /* the sort menu and search box sat side by side and ran past the card */
    .block-myoverview [data-region="filter"] .nav-search-sort-selector {
        flex-wrap: wrap;
        gap: 8px;
        width: 100%;
    }

    .block-myoverview [data-region="filter"] .nav-search-sort-selector .simplesearchform {
        flex: 1 1 100%;
    }
}

/* on phones the stacked side margins and paddings left content about 60% of the screen */
@media (max-width: 767.98px) {
    .pagelayout-standard #page.drawers .main-inner,
    body.limitedwidth #page.drawers .main-inner {
        max-width: 100%;
    }

    .main-area-bg:not(.pagelayout-login) div[role="main"] {
        padding: 16px;
    }

    .que .formulation {
        padding: 16px;
    }
}

/* dashboard course list: the whole row opens the course (the name link stretches over it),
   and the actions menu sits above that link as a clear round button */
.block_v7_mycourse .course-listitem {
    position: relative;
}

.block_v7_mycourse .course-listitem .course-actions {
    position: relative;
    z-index: 2;
}

.block_v7_mycourse .course-listitem .coursemenubtn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px !important;
    height: 40px !important;
    padding: 0;
    border: 1px solid rgba(128, 0, 255, 0.3) !important;
    border-radius: 50%;
    background: var(--bs-white) !important;
    color: var(--bs-brand-secondary) !important;
    box-shadow: 0 1px 2px rgba(16, 0, 46, 0.08);
}

.block_v7_mycourse .course-listitem .coursemenubtn .icon {
    margin: 0;
    color: inherit !important;
}

.block_v7_mycourse .course-listitem .coursemenubtn:hover,
.block_v7_mycourse .course-listitem .coursemenubtn[aria-expanded="true"] {
    background: var(--bs-brand-secondary) !important;
    border-color: var(--bs-brand-secondary) !important;
    color: var(--bs-white) !important;
}

/* dashboard stat tiles: icon, value and label in a row, with the action on the right */
.userinfos .row {
    row-gap: 16px;
}

.userinfos .ip-stat {
    display: flex;
    align-items: center;
    gap: 16px;
    height: 100%;
    padding: 24px;
    border-radius: 12px;
    background: var(--bs-brand-primary);
    color: var(--bs-white);
}

.userinfos .ip-stat__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.12);
    color: rgb(217, 184, 255);
    font-size: 20px;
}

.userinfos .ip-stat__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.userinfos .ip-stat__value {
    color: var(--bs-white);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
}

.userinfos .ip-stat__label {
    color: rgba(255, 255, 255, 0.75);
    font-size: 14px;
}

.userinfos .ip-stat__action {
    flex: none;
    border: 1px solid rgba(255, 255, 255, 0.6);
    background: transparent;
    color: var(--bs-white);
}

.userinfos .ip-stat__action:hover,
.userinfos .ip-stat__action:focus-visible {
    background: var(--bs-white);
    color: var(--bs-brand-primary);
}

/* CE dashboard licenses: a heading row with the add action, then the license cards */
.ip-licenses__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.ip-licenses__title {
    margin: 0;
    color: var(--bs-brand-primary);
    font-size: 1.25rem;
    font-weight: 700;
}

.ip-licenses__add {
    border: 1px solid rgba(128, 0, 255, 0.4);
    background: var(--bs-white);
    color: var(--bs-brand-secondary);
}

.ip-licenses__add:hover,
.ip-licenses__add:focus-visible {
    border-color: var(--bs-brand-secondary);
    background: var(--bs-brand-secondary);
    color: var(--bs-white);
}

/* report table row menus: keep each action on one line (positioned by local_ip_siteui/table_menus) */
.reportbuilder-report .table-dynamic tbody .dropdown-menu .dropdown-item {
    white-space: nowrap;
}

/* profile Courses tab: compact rows (image, name, progress, button) that open the course anywhere
   on the row, paged six at a time by local_ip_siteui/profile_courses */
#page-user-profile .profile-cards-wrapper {
    gap: 8px;
}

#page-user-profile .profile-cards-wrapper .course-card {
    position: relative;
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) 240px auto;
    align-items: center;
    gap: 16px 24px;
    margin: 0 !important;
    padding: 16px !important;
    border: 1px solid rgb(229, 229, 235) !important;
    border-radius: 12px !important;
    background: var(--bs-white) !important;
    box-shadow: none !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

#page-user-profile .profile-cards-wrapper .course-card[hidden] {
    display: none !important;
}

#page-user-profile .profile-cards-wrapper .course-card:hover,
#page-user-profile .profile-cards-wrapper .course-card:focus-within {
    border-color: rgba(128, 0, 255, 0.4) !important;
    box-shadow: 0 4px 16px rgba(128, 0, 255, 0.1) !important;
}

#page-user-profile .profile-cards-wrapper .course-card .edw-list-body,
#page-user-profile .profile-cards-wrapper .course-card .edw-list-body > .d-flex,
#page-user-profile .profile-cards-wrapper .course-card .edw-card-design-ft {
    display: contents !important;
}

#page-user-profile .profile-cards-wrapper .course-card .edw-course-img-wrapper,
#page-user-profile .profile-cards-wrapper .course-card .card-img {
    width: 96px !important;
    height: 64px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 8px !important;
}

#page-user-profile .profile-cards-wrapper .course-card .edw-card-design-hd {
    gap: 4px !important;
    min-width: 0;
}

#page-user-profile .profile-cards-wrapper .course-card .categoryname {
    align-self: flex-start;
    padding: 0 !important;
    background: none !important;
    color: rgb(107, 107, 128) !important;
    font-size: 12px;
}

#page-user-profile .profile-cards-wrapper .course-card .coursename {
    padding: 0 !important;
    color: var(--bs-brand-primary) !important;
    font-size: 15px;
    font-weight: 600;
}

/* the course name link covers the row; the instructor link and the button stay on top */
#page-user-profile .profile-cards-wrapper .course-card .coursename::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

#page-user-profile .profile-cards-wrapper .course-card .instructor-info-wrapper a,
#page-user-profile .profile-cards-wrapper .course-card .view-course-btn {
    position: relative;
    z-index: 2;
}

#page-user-profile .profile-cards-wrapper .course-card .progress-data-wrapper {
    gap: 4px !important;
    width: 100%;
}

#page-user-profile .profile-cards-wrapper .course-card .progress-data-wrapper .progress {
    width: 100% !important;
}

#page-user-profile .profile-cards-wrapper .course-card .progress-data-wrapper,
#page-user-profile .profile-cards-wrapper .course-card .progress-data-wrapper * {
    color: var(--bs-body-color) !important;
    font-size: 13px;
}

#page-user-profile .profile-cards-wrapper .course-card .view-course-btn {
    align-self: center !important;
    margin: 0 !important;
}

@media (max-width: 767.98px) {
    #page-user-profile .profile-cards-wrapper .course-card {
        grid-template-columns: 64px minmax(0, 1fr);
    }

    #page-user-profile .profile-cards-wrapper .course-card .edw-course-img-wrapper,
    #page-user-profile .profile-cards-wrapper .course-card .card-img {
        width: 64px !important;
        height: 48px !important;
    }

    #page-user-profile .profile-cards-wrapper .course-card .progress-data-wrapper {
        grid-column: 1 / -1;
    }

    #page-user-profile .profile-cards-wrapper .course-card .view-course-btn {
        grid-column: 1 / -1;
        justify-self: end;
    }
}

#page-user-profile .profile-courses-pager {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 16px;
    margin-top: 16px;
}

#page-user-profile .profile-courses-pager .pagination {
    margin: 0;
}

/* course page: activities as compact cards, the icon in a tinted tile, completion and certificate
   buttons side by side, and the access restriction as a quiet note */
.course-content ul.section > li.activity {
    margin-bottom: 8px;
}

.course-content li.activity > .activity-item {
    padding: 16px 24px !important;
    border: 1px solid rgb(229, 229, 235) !important;
    border-radius: 12px !important;
    background: var(--bs-white);
    box-shadow: none !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.course-content li.activity > .activity-item:hover {
    border-color: rgba(128, 0, 255, 0.35) !important;
    box-shadow: 0 4px 16px rgba(128, 0, 255, 0.08) !important;
}

.course-content li.activity .activity-grid {
    row-gap: 0;
    align-items: center;
}

.course-content li.activity .activityiconcontainer {
    width: 40px !important;
    height: 40px !important;
    margin-right: 16px !important;
    border-radius: 10px !important;
    background-color: rgba(128, 0, 255, 0.06) !important;
}

.course-content li.activity .activityiconcontainer .activityicon {
    width: 24px !important;
    height: 24px !important;
}

.course-content li.activity .activityname .instancename {
    font-size: 15px;
    font-weight: 600;
}

.course-content li.activity .activity-completion {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    align-self: center !important;
}

/* the completion menu stays on its own line at the end; extra buttons (certificates) sit together below it */
.course-content li.activity .activity-completion:has(> .btn) {
    flex-wrap: wrap;
    min-width: max-content;
}

.course-content li.activity .activity-completion:has(> .btn) > .activity-information {
    display: flex;
    flex-basis: 100%;
    justify-content: flex-end;
}

.course-content li.activity .activity-completion > .btn {
    margin: 0 !important;
    padding: 4px 16px !important;
    font-size: 13px;
    white-space: nowrap;
}

.course-content li.activity .activity-availability {
    margin-top: 8px !important;
}

.course-content li.activity .activity-availability .availabilityinfo,
.course-content li.activity .activity-availability > div,
.course-content li.activity .availabilityinfo.isrestricted {
    border-radius: 8px !important;
    background-color: rgb(247, 243, 252) !important;
    color: var(--bs-body-color) !important;
    font-size: 13px;
}

@media (max-width: 767.98px) {
    .course-content li.activity .activity-completion {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

/* activities with no title row (labels, folders shown inline): content and the completion menu
   share the first row instead of leaving an empty band above the content */
body:not(.editing) .course-content li.activity .activity-grid:not(:has(> .activity-name-area)) {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "altcontent completion"
        "afterlink afterlink"
        "availability availability";
    column-gap: 16px;
}

body:not(.editing) .course-content li.activity .activity-grid:not(:has(> .activity-name-area)) > .activity-completion {
    align-self: start !important;
}

@media (max-width: 575.98px) {
    body:not(.editing) .course-content li.activity .activity-grid:not(:has(> .activity-name-area)) {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "altcontent"
            "completion"
            "afterlink"
            "availability";
        row-gap: 8px;
    }

    body:not(.editing) .course-content li.activity .activity-grid:not(:has(> .activity-name-area)) > .activity-completion {
        justify-content: flex-start;
    }
}

/* folder shown inline: the folder name as a header with the download button beside it,
   then the files as a clean list */
.course-content li.activity.modtype_folder .description-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    column-gap: 16px;
}

.course-content li.activity.modtype_folder .description-inner > .container-fluid {
    grid-column: 2;
    grid-row: 1;
    padding: 0;
}

.course-content li.activity.modtype_folder .description-inner > .box {
    grid-column: 1;
    grid-row: 1;
    padding: 0 !important;
    margin: 0;
}

.course-content li.activity.modtype_folder .description-inner .btn {
    padding: 4px 16px !important;
    border: 1px solid rgba(128, 0, 255, 0.4) !important;
    background: var(--bs-white) !important;
    color: var(--bs-brand-secondary) !important;
    font-size: 13px;
    white-space: nowrap;
}

.course-content li.activity.modtype_folder .description-inner .btn:hover,
.course-content li.activity.modtype_folder .description-inner .btn:focus-visible {
    border-color: var(--bs-brand-secondary) !important;
    background: var(--bs-brand-secondary) !important;
    color: var(--bs-white) !important;
    text-decoration: none !important;
}

.course-content li.activity.modtype_folder .foldertree,
.course-content li.activity.modtype_folder .foldertree ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.course-content li.activity.modtype_folder .foldertree > li > p {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 8px;
    color: var(--bs-brand-primary);
    font-size: 15px;
    font-weight: 600;
}

.course-content li.activity.modtype_folder .foldertree > li > p .icon {
    box-sizing: content-box;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 10px;
    border-radius: 10px;
    background: rgba(128, 0, 255, 0.06);
}

.course-content li.activity.modtype_folder .foldertree > li > ul {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 4px 16px;
}

.course-content li.activity.modtype_folder .foldertree ul ul {
    padding-left: 16px;
}

.course-content li.activity.modtype_folder .foldertree > li > ul p {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 8px 12px;
    border-radius: 8px;
}

.course-content li.activity.modtype_folder .foldertree > li > ul p:hover,
.course-content li.activity.modtype_folder .foldertree > li > ul p:focus-within {
    background: rgb(247, 243, 252);
}

.course-content li.activity.modtype_folder .foldertree > li > ul a {
    text-decoration: none;
}

.course-content li.activity.modtype_folder .foldertree > li > ul .icon {
    margin: 0;
}

@media (max-width: 575.98px) {
    .course-content li.activity.modtype_folder .description-inner {
        grid-template-columns: minmax(0, 1fr);
    }

    .course-content li.activity.modtype_folder .description-inner > .container-fluid {
        grid-column: 1;
        grid-row: 2;
        margin-top: 8px;
    }
}

/* icons on primary buttons follow the button text: white, and navy on the white hover state
   (the global .icon rule above would otherwise keep them purple on navy) */
.btn-primary .icon,
.btn-primary .edw-icon {
    color: var(--bs-white) !important;
}

.btn-primary:hover .icon,
.btn-primary:hover .edw-icon {
    color: var(--bs-brand-primary) !important;
}

/* drawer toggles: a 40px square with the icon centred */
.drawer-toggles .drawer-toggler .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
}

.drawer-toggles .drawer-toggler .btn .edw-icon {
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    font-size: 20px !important;
    line-height: 1;
}

/* dashboard course list: search and "starred first" sit in the filter row; ten per page
   with the pager under the list (block_v7_mycourse/list_tools) */
.block_v7_mycourse [data-region="filter"] {
    flex-wrap: nowrap !important;
    gap: 8px 16px;
    margin-bottom: 8px;
}

.block_v7_mycourse [data-region="filter"] > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* the search fills the space between the filter menu and the starred switch */
.block_v7_mycourse .v7-courselist-search {
    flex: 1 1 auto;
    min-width: 0;
}

@media (max-width: 767.98px) {
    .block_v7_mycourse [data-region="filter"] {
        flex-wrap: wrap !important;
    }

    .block_v7_mycourse .v7-courselist-search {
        flex-basis: 100%;
        order: 3;
    }
}

.block_v7_mycourse .v7-courselist-search .form-control {
    height: 40px;
    padding: 8px 12px 8px 36px;
    border: 1px solid rgb(213, 213, 223);
    border-radius: 8px;
    background: var(--bs-white) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='%236b6b80'><path d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.868-3.834zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/></svg>") no-repeat 12px center;
}

.block_v7_mycourse .v7-courselist-search .form-control:focus {
    border-color: var(--bs-brand-secondary);
    box-shadow: 0 0 0 3px rgba(128, 0, 255, 0.15);
}

.block_v7_mycourse .v7-courselist-starred {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding-left: 0;
}

.block_v7_mycourse .v7-courselist-starred .form-check-input {
    float: none;
    margin: 0;
    cursor: pointer;
}

.block_v7_mycourse .v7-courselist-starred .form-check-input:checked {
    border-color: var(--bs-brand-secondary);
    background-color: var(--bs-brand-secondary);
}

.block_v7_mycourse .v7-courselist-starred .form-check-label {
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
}

.block_v7_mycourse .v7-courselist-pager {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
}

.block_v7_mycourse .v7-courselist-pager[hidden] {
    display: none;
}

.block_v7_mycourse .v7-courselist-pager > span {
    color: rgb(107, 107, 128);
    font-size: 13px;
}

.block_v7_mycourse .v7-courselist-pager .pagination {
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 0;
}

.block_v7_mycourse .v7-courselist-pager .page-link {
    min-width: 40px;
    height: 40px;
    margin: 0 !important;
    padding: 0 12px;
    border: 1px solid rgb(213, 213, 223) !important;
    border-radius: 8px !important;
    background: var(--bs-white) !important;
    color: var(--bs-brand-primary) !important;
    font-size: 14px;
    font-weight: 600;
    line-height: 38px;
    text-align: center;
}

.block_v7_mycourse .v7-courselist-pager .page-link:hover,
.block_v7_mycourse .v7-courselist-pager .page-link:focus-visible {
    border-color: var(--bs-brand-secondary) !important;
    color: var(--bs-brand-secondary) !important;
}

.block_v7_mycourse .v7-courselist-pager .page-item.active .page-link {
    border-color: var(--bs-brand-primary) !important;
    background: var(--bs-brand-primary) !important;
    color: var(--bs-white) !important;
}

.block_v7_mycourse .v7-courselist-pager .page-item.disabled .page-link {
    border-color: rgb(229, 229, 235) !important;
    color: rgb(180, 180, 192) !important;
    cursor: default;
}

.block_v7_mycourse .v7-courselist-empty {
    margin: 16px 0 0;
    color: rgb(107, 107, 128);
}

/* the block loads every course at once, so its own paging bar has nothing to page */
.block_v7_mycourse [data-region="courses-view"] [data-region="paging-control-container"] {
    display: none !important;
}

/* review page: the question bar sits above the question like on the attempt page, and
   keeps the result and mark visible */
#page-mod-quiz-review .que .info {
    flex-wrap: wrap;
    gap: 4px 16px;
    float: none;
    margin-right: 0;
}

#page-mod-quiz-review .que .info .state,
#page-mod-quiz-review .que .info .grade {
    margin: 0;
    color: var(--bs-body-color);
    font-size: 13px;
}
