.module-load-status { width: 100%; padding: 16px; display: flex; align-items: center; gap: 10px; }
.module-load-spinner { width: 20px; height: 20px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: module-loading .8s linear infinite; }
@keyframes module-loading { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .module-load-spinner { animation: none; } }

.lenssonsdescr {
    font-size: 12pt !important;
    height: 2em;
    text-overflow: ellipsis;
    display: block;
    overflow: hidden;
}
.modules-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 20px;
}
.modules-toolbar input#module-search {
    flex: 1 1 260px;
    min-width: 200px;
    padding: 10px 14px;
    border: 1px solid hsla(0, 0%, 100%, .3);
    border-radius: 6px;
    background: rgba(23, 23, 28, .6);
    color: inherit;
    font-size: 14px;
}
.accordeon > li > span em.module-counter {
    display: block;
    font-style: normal;
    font-size: 12px;
    opacity: .7;
}
.modules__grid__item.search-hit {
    border-color: var(--category-active, #f5c518);
}
.accordeon > li.search-module-hidden,
.modules__grid__item.search-lesson-hidden,
.accordeon > li.filter-hidden,
.modules__grid__item.filter-hidden {
    display: none !important;
}
.modules-toolbar .btn.active {
    outline: 2px solid var(--category-active, #f5c518);
}
